.gf-plans-wrap{padding:20px;max-width:980px;margin:0 auto}.gf-plans-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.gf-plans-title{font-size:1.5rem;font-weight:800;color:var(--groupfit-black,#0f172a);margin:0}html[data-theme=dark] .gf-plans-title{color:#f1f5f9}.gf-plans-sub{font-size:.9rem;color:var(--groupfit-grey,#64748b);margin:2px 0 0}html[data-theme=dark] .gf-plans-sub{color:#94a3b8}.gf-plans-back{background:none;border:none;color:var(--groupfit-grey,#64748b);cursor:pointer;font-size:.9rem;padding:0;margin-bottom:10px}html[data-theme=dark] .gf-plans-back{color:#94a3b8}.gf-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:var(--gf-radius-md,12px);padding:16px;margin-bottom:14px}html[data-theme=dark] .gf-card{background:#1e293b;border-color:hsla(0,0%,100%,.08)}.gf-client-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:var(--gf-radius-md,12px);padding:14px 16px;margin-bottom:10px;text-decoration:none;color:inherit;transition:border-color .15s ease}.gf-client-card:hover{border-color:var(--groupfit-secondary,#1f2937)}html[data-theme=dark] .gf-client-card{background:#1e293b;border-color:hsla(0,0%,100%,.08)}.gf-client-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#e2e8f0;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;color:#475569}html[data-theme=dark] .gf-client-avatar{background:#334155;color:#cbd5e1}.gf-client-name{font-weight:700;color:var(--groupfit-black,#0f172a)}html[data-theme=dark] .gf-client-name{color:#f1f5f9}.gf-client-meta{font-size:.82rem;color:var(--groupfit-grey,#64748b)}html[data-theme=dark] .gf-client-meta{color:#94a3b8}.gf-btn{padding:9px 16px;border-radius:var(--gf-radius-sm,8px);border:none;background:var(--groupfit-secondary,#1f2937);color:#fff;font-weight:600;font-size:.9rem;cursor:pointer}.gf-btn:hover{background:var(--groupfit-secondary-hover,#111827)}.gf-btn:disabled{opacity:.6;cursor:not-allowed}.gf-btn--ghost{background:transparent;border:1px solid rgba(15,23,42,.18);color:var(--groupfit-black,#0f172a)}.gf-btn--ghost:hover{background:rgba(15,23,42,.04)}html[data-theme=dark] .gf-btn--ghost{border-color:hsla(0,0%,100%,.2);color:#e2e8f0}html[data-theme=dark] .gf-btn--ghost:hover{background:hsla(0,0%,100%,.06)}.gf-btn--danger{background:transparent;border:1px solid var(--groupfit-error,#dc2626);color:var(--groupfit-error,#dc2626)}.gf-btn--sm{padding:6px 12px;font-size:.82rem}.gf-input,.gf-select,.gf-textarea{padding:9px 10px;width:100%;border-radius:var(--gf-radius-sm,8px);border:1px solid rgba(15,23,42,.18);background:#fff;color:var(--groupfit-black,#0f172a);font-size:.9rem}.gf-textarea{min-height:70px;resize:vertical}html[data-theme=dark] .gf-input,html[data-theme=dark] .gf-select,html[data-theme=dark] .gf-textarea{background:#0f172a;border-color:hsla(0,0%,100%,.15);color:#e2e8f0}.gf-input::placeholder,.gf-textarea::placeholder{color:#64748b;opacity:1}html[data-theme=dark] .gf-input::placeholder,html[data-theme=dark] .gf-textarea::placeholder{color:#aeb9c9;opacity:1}.gf-field{margin-bottom:12px}.gf-field__label{display:block;margin-bottom:4px;font-size:.82rem;font-weight:600;color:var(--groupfit-grey-dark,#475569)}html[data-theme=dark] .gf-field__label{color:#cbd5e1}.gf-tabs{display:flex;gap:6px;border-bottom:1px solid rgba(15,23,42,.1);margin-bottom:16px}html[data-theme=dark] .gf-tabs{border-color:hsla(0,0%,100%,.1)}.gf-tab{padding:9px 14px;background:none;border:none;border-bottom:2px solid transparent;color:var(--groupfit-grey,#64748b);font-weight:600;cursor:pointer}.gf-tab--active{color:var(--groupfit-secondary,#1f2937);border-bottom-color:var(--groupfit-secondary,#1f2937)}html[data-theme=dark] .gf-tab--active{color:#f1f5f9;border-bottom-color:#f1f5f9}.gf-plan-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid rgba(15,23,42,.06)}.gf-plan-row:last-child{border-bottom:none}html[data-theme=dark] .gf-plan-row{border-color:hsla(0,0%,100%,.06)}.gf-pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.gf-pill--draft{background:#fef3c7;color:#92400e}.gf-pill--assigned{background:#dcfce7;color:#166534}.gf-pill--archived{background:#e2e8f0;color:#475569}.gf-muted{color:var(--groupfit-grey,#64748b);font-size:.85rem}html[data-theme=dark] .gf-muted{color:#94a3b8}.gf-empty{text-align:center;padding:32px 16px;color:var(--groupfit-grey,#64748b)}.gf-error{background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.3);color:var(--groupfit-error,#dc2626);padding:10px 12px;border-radius:8px;margin-bottom:12px;font-size:.88rem}.gf-item-grid{grid-template-columns:.8fr 1.4fr .55fr 1.05fr .7fr .7fr 76px;grid-gap:8px}.gf-item-grid,.gf-meal-grid{display:grid;gap:8px;align-items:end;margin-bottom:10px}.gf-meal-grid{grid-template-columns:1.2fr 1.5fr .8fr .85fr .85fr .85fr auto;grid-gap:8px}.gf-meal-grid>*{min-width:0}.gf-meal-totals{align-items:center;font-weight:700;padding-top:8px;border-top:1px solid rgba(15,23,42,.1)}.gf-meal-totals span{font-size:.85rem}html[data-theme=dark] .gf-meal-totals{border-color:hsla(0,0%,100%,.12)}.gf-item-head{margin-bottom:4px;align-items:center}.gf-item-head span{font-size:.78rem;font-weight:600;color:var(--groupfit-grey-dark,#475569)}html[data-theme=dark] .gf-item-head span{color:#cbd5e1}@media (max-width:640px){.gf-item-grid,.gf-meal-grid{grid-template-columns:1fr 1fr}.gf-item-head{display:none}}.gf-row-actions{display:flex;gap:8px;flex-wrap:wrap}.gf-log-table{width:100%;border-collapse:collapse;font-size:.85rem}.gf-log-table td,.gf-log-table th{text-align:left;padding:6px 8px;border-bottom:1px solid rgba(15,23,42,.08);color:var(--groupfit-black,#0f172a)}html[data-theme=dark] .gf-log-table td,html[data-theme=dark] .gf-log-table th{border-color:hsla(0,0%,100%,.08);color:#e2e8f0}.gf-log-table th{color:var(--groupfit-grey,#64748b);font-weight:600}.gf-mood-row{display:flex;gap:8px;flex-wrap:wrap}.gf-mood{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1 1;min-width:56px;padding:10px 6px;background:#f8fafc;border:1px solid rgba(15,23,42,.12);border-radius:var(--gf-radius-sm,8px);cursor:pointer;transition:border-color .12s,background .12s}.gf-mood:hover{border-color:rgba(15,23,42,.28)}.gf-mood--on{border-color:var(--groupfit-secondary,#1f2937);background:rgba(31,41,55,.06)}.gf-mood__emoji{font-size:1.5rem;line-height:1}.gf-mood__label{font-size:.72rem;color:var(--groupfit-grey,#64748b)}html[data-theme=dark] .gf-mood{background:#0f172a;border-color:hsla(0,0%,100%,.12)}html[data-theme=dark] .gf-mood:hover{border-color:hsla(0,0%,100%,.28)}html[data-theme=dark] .gf-mood--on{border-color:#93c5fd;background:rgba(147,197,253,.12)}html[data-theme=dark] .gf-mood__label{color:#94a3b8}.gf-log-day{border-top:1px solid rgba(15,23,42,.08);padding:10px 0}.gf-log-day:first-of-type{border-top:none}html[data-theme=dark] .gf-log-day{border-color:hsla(0,0%,100%,.08)}.gf-log-day__head{justify-content:space-between;width:100%;background:none;border:none;padding:4px 0;cursor:pointer;font-weight:700;color:inherit}.gf-log-day__date,.gf-log-day__head{display:flex;align-items:center}.gf-log-day__mood{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--groupfit-grey,#64748b)}.gf-log-day__mood svg{flex-shrink:0}html[data-theme=dark] .gf-log-day__mood{color:#cbd5e1}.gf-log-day__note{margin:6px 0 10px;padding:8px 10px;background:#f8fafc;border-radius:var(--gf-radius-sm,8px);font-style:italic;color:#334155}html[data-theme=dark] .gf-log-day__note{background:#0f172a;color:#cbd5e1}.gf-metric-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.gf-metric-grid .gf-field{margin-bottom:0}@media (max-width:640px){.gf-metric-grid{grid-template-columns:repeat(2,1fr)}}.gf-trainer-head{display:flex;align-items:center;gap:12px;width:100%;margin:14px 0 8px;padding:4px 0;background:none;border:none;cursor:pointer;color:inherit;text-align:left}.gf-trainer-head__chev{font-size:.9rem}.gf-chart-tip{background:#fff;border:1px solid rgba(15,23,42,.1);border-radius:10px;padding:8px 10px;box-shadow:0 6px 20px rgba(15,23,42,.12);font-size:.8rem}html[data-theme=dark] .gf-chart-tip{background:#1e293b;border-color:hsla(0,0%,100%,.12);box-shadow:0 6px 20px rgba(0,0,0,.4)}.gf-chart-tip__date{font-weight:700;margin-bottom:4px;color:#0f172a}html[data-theme=dark] .gf-chart-tip__date{color:#f1f5f9}.gf-chart-tip__row{display:flex;align-items:center;gap:6px}.gf-chart-tip__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.gf-chart-tip__name{color:var(--groupfit-grey,#64748b)}html[data-theme=dark] .gf-chart-tip__name{color:#94a3b8}.gf-chart-tip__val{margin-left:auto;font-weight:700;color:#0f172a}html[data-theme=dark] .gf-chart-tip__val{color:#e2e8f0}.gf-chart-legend{display:flex;gap:14px;margin-bottom:6px}.gf-chart-legend__item{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--groupfit-grey,#64748b)}html[data-theme=dark] .gf-chart-legend__item{color:#94a3b8}.gf-chart-legend__sw{width:14px;height:3px;border-radius:2px}.gf-metric-chart{margin-top:16px}.gf-metric-chart__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.gf-stat{display:inline-flex;align-items:baseline;gap:8px}.gf-stat__val{font-weight:800;font-size:1.05rem;color:#0f172a}html[data-theme=dark] .gf-stat__val{color:#f1f5f9}.gf-stat__delta{font-size:.74rem;font-weight:700;padding:2px 7px;border-radius:999px}.gf-stat__delta--up{color:#b91c1c;background:rgba(220,38,38,.1)}.gf-stat__delta--down{color:#15803d;background:rgba(22,163,74,.12)}.gf-stat__delta--flat{color:#64748b;background:rgba(100,116,139,.12)}.gf-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.gf-cal-title{font-weight:800;font-size:1.05rem}.gf-cal-nav{width:34px;height:34px;border-radius:8px;background:none;border:1px solid rgba(15,23,42,.14);cursor:pointer;font-size:1.1rem;color:inherit}.gf-cal-nav:hover{background:rgba(15,23,42,.04)}html[data-theme=dark] .gf-cal-nav{border-color:hsla(0,0%,100%,.16)}html[data-theme=dark] .gf-cal-nav:hover{background:hsla(0,0%,100%,.06)}.gf-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.gf-cal-dow{margin-bottom:4px}.gf-cal-dowcell{text-align:center;font-size:.72rem;font-weight:700;color:var(--groupfit-grey,#64748b);padding:2px 0}.gf-cal-cell{position:relative;aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:9px;border:1px solid transparent;background:#f8fafc;cursor:pointer;font-size:.82rem;color:#0f172a}.gf-cal-cell--empty{background:transparent;cursor:default}.gf-cal-cell--workout{background:rgba(37,99,235,.1);font-weight:700}.gf-cal-cell--sel{border-color:var(--groupfit-secondary,#1f2937)}html[data-theme=dark] .gf-cal-cell{background:#0f172a;color:#e2e8f0}html[data-theme=dark] .gf-cal-cell--workout{background:rgba(59,130,246,.22)}html[data-theme=dark] .gf-cal-cell--sel{border-color:#93c5fd}.gf-cal-num{line-height:1}.gf-cal-dots{display:flex;gap:2px;height:6px;align-items:center}.gf-cal-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.gf-cal-dot--w{background:#2563eb}.gf-cal-dot--n{background:#16a34a}.gf-cal-dot--m{background:#9333ea}.gf-cal-legend{display:flex;gap:14px;margin-top:10px;font-size:.76rem;color:var(--groupfit-grey,#64748b)}.gf-cal-legend span{display:inline-flex;align-items:center;gap:5px}.gf-cal-detail{margin-top:14px;padding-top:12px;border-top:1px solid rgba(15,23,42,.08)}html[data-theme=dark] .gf-cal-detail{border-color:hsla(0,0%,100%,.08)}.gf-cal-detail__date{font-weight:800;margin-bottom:8px}.gf-cal-detail__sec{display:flex;gap:10px;margin-bottom:6px;font-size:.88rem}.gf-cal-detail__label{flex-shrink:0;width:76px;font-weight:700;color:var(--groupfit-grey,#64748b)}.gf-cal-tag{margin-left:8px;font-size:.72rem;font-weight:700;padding:1px 7px;border-radius:999px}.gf-cal-tag--ok{color:#15803d;background:rgba(22,163,74,.12)}.gf-cal-tag--over{color:#b91c1c;background:rgba(220,38,38,.1)}.gf-cal-metrics{display:flex;flex-wrap:wrap;gap:6px}.gf-cal-chip{font-size:.78rem;font-weight:600;padding:2px 8px;border-radius:999px;background:rgba(15,23,42,.06)}html[data-theme=dark] .gf-cal-chip{background:hsla(0,0%,100%,.08)}.gf-cal-detail__note{margin-top:6px;font-style:italic;color:#334155}html[data-theme=dark] .gf-cal-detail__note{color:#cbd5e1}.gf-nut-split{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:720px){.gf-nut-split{grid-template-columns:1fr}}.gf-tile-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:14px}@media (max-width:720px){.gf-tile-grid{grid-template-columns:1fr}}.gf-tile{display:flex;flex-direction:column;gap:6px;text-align:left;background:#fff;border:1px solid rgba(15,23,42,.1);border-radius:var(--gf-radius-md,12px);padding:14px;cursor:pointer;color:inherit;transition:border-color .12s,box-shadow .12s}.gf-tile:hover{border-color:rgba(15,23,42,.24)}.gf-tile--active{border-color:var(--groupfit-secondary,#1f2937);box-shadow:0 2px 10px rgba(15,23,42,.08)}html[data-theme=dark] .gf-tile{background:#1e293b;border-color:hsla(0,0%,100%,.1)}html[data-theme=dark] .gf-tile:hover{border-color:hsla(0,0%,100%,.26)}html[data-theme=dark] .gf-tile--active{border-color:#93c5fd}.gf-tile__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.gf-tile__title{font-weight:800;font-size:.95rem}.gf-tile__when{font-size:.78rem}html[data-theme=dark] .gf-tile__when{color:#94a3b8}.gf-tile__body{font-size:.88rem;min-height:1.2em}.gf-tile__metrics{display:flex;flex-wrap:wrap;gap:8px}.gf-tile__cta{margin-top:2px}.gf-tile__badge{font-size:.74rem;font-weight:800;padding:2px 8px;border-radius:999px}.gf-tile__badge--up{color:#b91c1c;background:rgba(220,38,38,.1)}.gf-tile__badge--down{color:#15803d;background:rgba(22,163,74,.12)}.gf-tile__badge--flat{color:#64748b;background:rgba(100,116,139,.12)}.gf-analysis-section{margin-top:4px}.gf-tag-trainer{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;padding:2px 8px;border-radius:999px;color:#1d4ed8;background:rgba(37,99,235,.12)}html[data-theme=dark] .gf-tag-trainer{color:#93c5fd;background:rgba(59,130,246,.18)}.gf-tile{gap:0;padding:16px}.gf-tile__head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.gf-tile__icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;font-size:1rem;background:rgba(15,23,42,.06)}html[data-theme=dark] .gf-tile__icon{background:hsla(0,0%,100%,.08)}.gf-tile--workout .gf-tile__icon{background:rgba(37,99,235,.12);color:#2563eb}.gf-tile--nutrition .gf-tile__icon{background:rgba(22,163,74,.12);color:#16a34a}.gf-tile--body .gf-tile__icon{background:rgba(147,51,234,.12);color:#9333ea}.gf-tile__title{font-weight:700;font-size:.9rem;color:var(--groupfit-grey-dark,#475569)}html[data-theme=dark] .gf-tile__title{color:#cbd5e1}.gf-tile__head .gf-tile__badge{margin-left:auto}.gf-tile__primary{display:flex;align-items:baseline;gap:6px;margin-bottom:8px}.gf-tile__primary--empty{opacity:.5}.gf-tile__num{font-size:1.9rem;font-weight:800;line-height:1;color:var(--groupfit-black,#0f172a)}html[data-theme=dark] .gf-tile__num{color:#f8fafc}.gf-tile__unit{font-size:.85rem;font-weight:600;color:var(--groupfit-grey,#64748b)}.gf-tile__chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.gf-tile__chip{display:inline-flex;align-items:baseline;gap:4px;padding:3px 9px;border-radius:999px;background:rgba(15,23,42,.05);font-size:.78rem}html[data-theme=dark] .gf-tile__chip{background:hsla(0,0%,100%,.07)}.gf-tile__chip-k{font-weight:700;color:var(--groupfit-grey,#64748b)}.gf-tile__chip-v{font-weight:700;color:var(--groupfit-black,#0f172a)}html[data-theme=dark] .gf-tile__chip-v{color:#e2e8f0}.gf-tile__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid rgba(15,23,42,.07)}html[data-theme=dark] .gf-tile__foot{border-color:hsla(0,0%,100%,.08)}.gf-tile__when{font-size:.76rem;color:var(--groupfit-grey,#64748b)}.gf-tile__cta{font-size:.76rem;font-weight:700;color:var(--groupfit-secondary,#1f2937);margin-top:0}html[data-theme=dark] .gf-tile__cta{color:#93c5fd}.gf-locked-note{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:14px;border-radius:10px;font-size:.86rem;font-weight:600;color:#1d4ed8;background:rgba(37,99,235,.08);border:1px solid rgba(37,99,235,.2)}html[data-theme=dark] .gf-locked-note{color:#bfdbfe;background:rgba(59,130,246,.14);border-color:rgba(59,130,246,.3)}.gf-hist-trainer{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1rem;margin:10px 0 8px}.gf-hist-card{margin-bottom:10px}.gf-hist-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}.gf-hist-date{font-weight:700}.gf-hist-body{margin-bottom:8px}.gf-hist-ex{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:.86rem;border-bottom:1px solid rgba(15,23,42,.05)}.gf-hist-ex:last-child{border-bottom:none}html[data-theme=dark] .gf-hist-ex{border-color:hsla(0,0%,100%,.06)}.gf-hist-ex__name{font-weight:600}.gf-hist-note{margin-top:6px;font-style:italic;color:#334155;font-size:.86rem}html[data-theme=dark] .gf-hist-note{color:#cbd5e1}.gf-meal__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.gf-meal__title{font-weight:800;font-size:1.05rem}.gf-meal__desc{margin-top:2px}.gf-meal__targets{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:10px 0 8px}.gf-meal__kcal{font-size:1rem}.gf-meal__kcal strong{font-size:1.15rem}.gf-meal__bar{height:6px;border-radius:999px;background:rgba(15,23,42,.08);overflow:hidden;margin-bottom:12px}html[data-theme=dark] .gf-meal__bar{background:hsla(0,0%,100%,.1)}.gf-meal__bar-fill{height:100%;border-radius:999px;background:#16a34a;transition:width .2s ease}.gf-meal__bar-fill--over{background:#dc2626}.gf-meal__foods{display:flex;flex-direction:column;gap:6px}.gf-food-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:10px;background:#f8fafc}html[data-theme=dark] .gf-food-row{background:#0f172a}.gf-food-row__main{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1}.gf-food-row__name{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gf-food-row__macros{font-size:.74rem}.gf-food-row__kcal{font-weight:700;font-size:.86rem;flex-shrink:0}.gf-food-row__del{flex-shrink:0;width:26px;height:26px;border-radius:7px;border:none;background:rgba(15,23,42,.06);color:var(--groupfit-grey,#64748b);cursor:pointer;font-size:.8rem}.gf-food-row__del:hover{background:rgba(220,38,38,.12);color:#dc2626}html[data-theme=dark] .gf-food-row__del{background:hsla(0,0%,100%,.08)}.gf-share-row{display:flex;flex-wrap:wrap;gap:8px}.gf-share-chip{padding:7px 12px;border-radius:999px;border:1px solid rgba(15,23,42,.18);background:transparent;color:inherit;font-size:.84rem;font-weight:600;cursor:pointer}.gf-share-chip--on{border-color:var(--groupfit-secondary,#1f2937);background:rgba(31,41,55,.08)}html[data-theme=dark] .gf-share-chip{border-color:hsla(0,0%,100%,.18)}html[data-theme=dark] .gf-share-chip--on{border-color:#93c5fd;background:rgba(147,197,253,.14)}.gf-selflog-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-bottom:18px}@media (max-width:560px){.gf-selflog-grid{grid-template-columns:1fr}}.gf-selflog{display:flex;align-items:center;gap:12px;padding:16px;border-radius:var(--gf-radius-md,12px);border:1px dashed rgba(15,23,42,.22);background:rgba(15,23,42,.02);cursor:pointer;text-align:left;color:inherit;text-decoration:none}.gf-selflog:hover{border-color:var(--groupfit-secondary,#1f2937);background:rgba(15,23,42,.04)}html[data-theme=dark] .gf-selflog{border-color:hsla(0,0%,100%,.2);background:hsla(0,0%,100%,.03)}.gf-selflog__icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;flex-shrink:0}.gf-selflog__icon,.gf-selflog__icon--workout{background:rgba(37,99,235,.1);color:#2563eb}.gf-selflog__icon--nutrition{background:rgba(22,163,74,.1);color:#16a34a}.gf-selflog__title{font-weight:800}.gf-selflog__sub{font-size:.8rem;color:var(--groupfit-grey,#64748b)}.gf-selflog__sub,.gf-selflog__title{display:block}.gf-cardio-row{display:grid;grid-template-columns:1.3fr .7fr .7fr .55fr .7fr auto;grid-gap:8px;gap:8px;align-items:center;margin-bottom:8px}.gf-cardio-row>*{min-width:0}.gf-btn--danger:hover{background:rgba(220,38,38,.08)}html[data-theme=dark] .gf-btn--danger{border-color:#f87171;color:#f87171}html[data-theme=dark] .gf-btn--danger:hover{background:hsla(0,91%,71%,.14)}.gf-search{position:relative;display:flex;align-items:center;margin-bottom:14px}.gf-search__icon{position:absolute;left:12px;color:var(--groupfit-grey,#64748b);pointer-events:none}.gf-search__input{width:100%;padding:10px 36px 10px 38px;border-radius:999px;border:1px solid rgba(15,23,42,.16);background:#fff;color:var(--groupfit-black,#0f172a);font-size:.9rem}.gf-search__input::placeholder{color:#94a3b8}.gf-search__input:focus{outline:none;border-color:var(--groupfit-secondary,#1f2937)}.gf-search__input::-webkit-search-cancel-button{display:none}html[data-theme=dark] .gf-search__input{background:#0f172a;border-color:hsla(0,0%,100%,.15);color:#e2e8f0}html[data-theme=dark] .gf-search__input:focus{border-color:#93c5fd}.gf-search__clear{position:absolute;right:10px;width:22px;height:22px;border-radius:50%;border:none;background:rgba(15,23,42,.08);color:var(--groupfit-grey,#64748b);cursor:pointer;font-size:.7rem;line-height:1}.gf-search__clear:hover{background:rgba(15,23,42,.16)}html[data-theme=dark] .gf-search__clear{background:hsla(0,0%,100%,.1)}.gf-select,select.gf-input{-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;background-size:14px;cursor:pointer}.gf-select::-ms-expand,select.gf-input::-ms-expand{display:none}html[data-theme=dark] .gf-select,html[data-theme=dark] select.gf-input{background-color:#0f172a;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;background-size:14px}.gf-select:focus,select.gf-input:focus{outline:none;border-color:var(--groupfit-secondary,#1f2937)}html[data-theme=dark] .gf-select:focus,html[data-theme=dark] select.gf-input:focus{border-color:#93c5fd}html[data-theme=dark] .gf-select option,html[data-theme=dark] select.gf-input option{background:#0f172a;color:#e2e8f0}.gf-rec-stats{display:flex;gap:10px;margin-bottom:10px}.gf-rec-stat{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border-radius:14px;background:#f5f6fb;border:1px solid #e7e9f4}html[data-theme=dark] .gf-rec-stat{background:rgba(148,163,184,.08);border-color:rgba(148,163,184,.18)}.gf-rec-stat__num{font-size:1.5rem;font-weight:800;color:#1f2937;line-height:1.1}html[data-theme=dark] .gf-rec-stat__num{color:#f1f5f9}.gf-rec-stat__label{font-size:.75rem;color:#6b7280;text-align:center}html[data-theme=dark] .gf-rec-stat__label{color:#94a3b8}.gf-rec-h{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin:12px 0 4px}html[data-theme=dark] .gf-rec-h{color:#94a3b8}.gf-rec-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #f0f1f7}html[data-theme=dark] .gf-rec-row{border-bottom-color:rgba(148,163,184,.12)}.gf-rec-row:last-child{border-bottom:none}.gf-rec-row__name{color:#374151}html[data-theme=dark] .gf-rec-row__name{color:#e2e8f0}.gf-rec-row__val{font-weight:700;color:#1f2937;white-space:nowrap}html[data-theme=dark] .gf-rec-row__val{color:#f1f5f9}.gf-goal-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px;padding:10px;border-radius:12px;background:#f5f6fb;border:1px solid #e7e9f4}html[data-theme=dark] .gf-goal-form{background:rgba(148,163,184,.08);border-color:rgba(148,163,184,.18)}.gf-goal-form .gf-select{flex:1 1 140px}.gf-goal-form .gf-input{flex:0 1 110px}.gf-goal{padding:10px 0;border-bottom:1px solid #f0f1f7}html[data-theme=dark] .gf-goal{border-bottom-color:rgba(148,163,184,.12)}.gf-goal:last-child{border-bottom:none}.gf-goal__top{display:flex;align-items:center;gap:8px;margin-bottom:6px}.gf-goal__label{font-weight:600;color:#374151}html[data-theme=dark] .gf-goal__label{color:#e2e8f0}.gf-goal__val{margin-left:auto;font-size:.85rem;color:#6b7280;white-space:nowrap}html[data-theme=dark] .gf-goal__val{color:#94a3b8}.gf-goal__del{border:none;background:transparent;color:#9ca3af;cursor:pointer;font-size:.85rem;padding:2px 4px;line-height:1}.gf-goal__del:hover{color:#e21b22}.gf-goal__bar{height:8px;border-radius:999px;background:#e7e9f4;overflow:hidden}html[data-theme=dark] .gf-goal__bar{background:rgba(148,163,184,.2)}.gf-goal__fill{height:100%;border-radius:999px;background:#339;transition:width .3s ease}.gf-goal__fill--done{background:#16a34a}.gf-feedback{margin:10px 0;padding:10px 12px;border-radius:12px;background:#f5f6fb;border:1px solid #e7e9f4}html[data-theme=dark] .gf-feedback{background:rgba(148,163,184,.08);border-color:rgba(148,163,184,.18)}.gf-feedback--read{background:rgba(37,99,235,.06);border-color:rgba(37,99,235,.16)}html[data-theme=dark] .gf-feedback--read{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.22)}.gf-feedback__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.gf-feedback__label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#1d4ed8}html[data-theme=dark] .gf-feedback__label{color:#93c5fd}.gf-feedback__text{margin-top:4px;color:#374151;white-space:pre-wrap}html[data-theme=dark] .gf-feedback__text{color:#e2e8f0}.gf-overview-summary{display:flex;gap:10px;margin-bottom:12px}.gf-overview-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 4px;border-bottom:1px solid #f0f1f7;text-decoration:none;color:inherit}html[data-theme=dark] .gf-overview-row{border-bottom-color:rgba(148,163,184,.12)}.gf-overview-row:last-child{border-bottom:none}.gf-overview-row__main{display:flex;align-items:center;gap:12px;min-width:0}.gf-overview-row__stats{display:flex;align-items:center;gap:6px;flex-shrink:0}.gf-overview-pill{font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:999px;color:#374151;background:#f0f1f7;white-space:nowrap}html[data-theme=dark] .gf-overview-pill{color:#e2e8f0;background:rgba(148,163,184,.16)}.gf-overview-pill--warn{color:#b45309;background:rgba(245,158,11,.14)}html[data-theme=dark] .gf-overview-pill--warn{color:#fbbf24;background:rgba(245,158,11,.18)}.gf-overload{margin:4px 0 14px;padding:12px;border-radius:12px;background:#f5f6fb;border:1px solid #e7e9f4}html[data-theme=dark] .gf-overload{background:rgba(148,163,184,.08);border-color:rgba(148,163,184,.18)}.gf-overload__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.gf-overload__list{margin-top:10px;display:grid;grid-gap:6px;gap:6px}.gf-overload__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:10px;background:#fff;border:1px solid #e7e9f4}html[data-theme=dark] .gf-overload__row{background:rgba(15,23,42,.4);border-color:rgba(148,163,184,.18)}.gf-ex-icon{display:inline-flex;align-items:center;gap:6px}.gf-ex-icon svg{color:var(--groupfit-secondary,#475569)}html[data-theme=dark] .gf-ex-icon svg{color:#93c5fd}.gf-mood-chip{display:inline-flex;align-items:center}.gf-mood__emoji{display:flex;justify-content:center;align-items:center}.gf-locked-note svg{flex-shrink:0}.gf-goal-form{align-items:flex-end}.gf-goal-form .gf-field{flex:1 1 150px;margin-bottom:0}.gf-goal-form__save{flex:0 0 auto;height:40px}.gf-cardio-head{margin-bottom:4px}.gf-cardio-head span{font-size:.78rem;font-weight:600;color:var(--groupfit-grey-dark,#475569)}html[data-theme=dark] .gf-cardio-head span{color:#cbd5e1}@media (max-width:640px){.gf-cardio-head{display:none}}.gf-weekgrid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.gf-weekgrid__day{flex:1 1 110px;min-width:100px;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;border:1px solid #e7e9f4;background:#f5f6fb;cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease}html[data-theme=dark] .gf-weekgrid__day{background:rgba(148,163,184,.08);border-color:rgba(148,163,184,.18)}.gf-weekgrid__day--on{border-color:var(--groupfit-secondary,#339);background:rgba(51,51,153,.08)}html[data-theme=dark] .gf-weekgrid__day--on{border-color:#93c5fd;background:rgba(59,130,246,.14)}.gf-weekgrid__name{font-weight:700;color:#1f2937}html[data-theme=dark] .gf-weekgrid__name{color:#f1f5f9}.gf-weekgrid__count{font-size:.75rem;color:#6b7280}html[data-theme=dark] .gf-weekgrid__count{color:#94a3b8}.gf-row-icons{display:flex;gap:6px;align-items:center}.gf-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:8px;border:1px solid rgba(15,23,42,.18);background:#fff;color:#334155;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.gf-icon-btn:hover{border-color:var(--groupfit-secondary,#339);color:var(--groupfit-secondary,#339);background:rgba(51,51,153,.06)}.gf-icon-btn:disabled{opacity:.4;cursor:not-allowed}.gf-icon-btn--danger:hover{border-color:#dc2626;color:#dc2626;background:rgba(220,38,38,.07)}html[data-theme=dark] .gf-icon-btn{background:#0f172a;border-color:hsla(0,0%,100%,.15);color:#e2e8f0}html[data-theme=dark] .gf-icon-btn:hover{border-color:#93c5fd;color:#93c5fd;background:rgba(59,130,246,.12)}html[data-theme=dark] .gf-icon-btn--danger:hover{border-color:#f87171;color:#f87171;background:hsla(0,91%,71%,.14)}.gf-combo{position:relative;min-width:0}.gf-combo__input{width:100%}.gf-combo__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;max-height:260px;overflow-y:auto;border-radius:10px;border:1px solid rgba(15,23,42,.18);background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.16);padding:4px}html[data-theme=dark] .gf-combo__menu{background:#111c30;border-color:hsla(0,0%,100%,.15);box-shadow:0 12px 28px rgba(0,0,0,.5)}.gf-combo__group{position:-webkit-sticky;position:sticky;top:0;background:inherit;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#6b7280;padding:6px 8px 2px}html[data-theme=dark] .gf-combo__group{color:#94a3b8}.gf-combo__opt{display:block;width:100%;text-align:left;border:none;background:none;cursor:pointer;padding:8px 10px;border-radius:8px;font-size:.9rem;color:#1f2937}.gf-combo__opt:hover{background:rgba(51,51,153,.08)}.gf-combo__opt--on{background:rgba(51,51,153,.12);font-weight:700}html[data-theme=dark] .gf-combo__opt{color:#e2e8f0}html[data-theme=dark] .gf-combo__opt:hover{background:rgba(59,130,246,.16)}html[data-theme=dark] .gf-combo__opt--on{background:rgba(59,130,246,.22)}.gf-combo__empty{padding:10px;color:#6b7280;font-size:.88rem}html[data-theme=dark] .gf-combo__empty{color:#94a3b8}.gf-combo__input{padding-right:30px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}.gf-combo__input,html[data-theme=dark] .gf-combo__input{background-repeat:no-repeat;background-position:right 10px center;background-size:13px}html[data-theme=dark] .gf-combo__input{background-color:#0f172a;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}.gf-combo__opt--custom{font-weight:700;color:var(--groupfit-secondary,#339)}html[data-theme=dark] .gf-combo__opt--custom{color:#93c5fd}