:root{
  --bg:#f6f7fb;--surface:#fff;--surface-soft:#fafbfe;--surface-strong:#f0f2f8;
  --text:#171925;--muted:#71758a;--muted-2:#9a9eb1;--line:#e8eaf1;--line-strong:#dfe2eb;
  --primary:#635bff;--primary-2:#7d73ff;--primary-soft:#efedff;--primary-ink:#4f46d8;
  --blue:#3183ff;--blue-soft:#eaf3ff;--mint:#1eaf83;--mint-soft:#e8f8f3;--amber:#e49a22;--amber-soft:#fff6e3;
  --danger:#e65360;--danger-soft:#fff0f2;--success:#23996f;--success-soft:#eaf8f2;
  --shadow-xs:0 1px 2px rgba(28,31,44,.04);--shadow-sm:0 8px 24px rgba(32,36,54,.06);--shadow-lg:0 24px 70px rgba(32,36,54,.15);
  --radius:16px;--radius-sm:10px;--sidebar-w:242px;--topbar-h:60px;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-size:16px}body{margin:0;background:radial-gradient(circle at 75% -15%,rgba(99,91,255,.07),transparent 30%),var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}::selection{background:#d9d5ff;color:#2d276f}
@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}

/* Shell */
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);background:rgba(252,252,254,.9);border-right:1px solid var(--line);backdrop-filter:blur(18px);z-index:30;padding:18px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 18px}.brand-mark{width:32px;height:32px;border-radius:10px;background:linear-gradient(145deg,#776eff,#554ced);box-shadow:0 8px 18px rgba(99,91,255,.22);display:grid;place-items:center;color:#fff;font-weight:800;font-size:14px}.brand-copy{display:flex;align-items:baseline;gap:4px}.brand-copy strong{font-size:14px;letter-spacing:-.02em}.brand-copy small{font-size:11px;color:var(--muted)}.nav{display:grid;gap:3px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#a1a5b7;font-weight:700;padding:17px 10px 6px}.nav-item{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 10px;border-radius:9px;color:#616579;font-size:12px;font-weight:550;transition:.15s ease}.nav-item:hover{background:#f0f1f6;color:#2e3140}.nav-item.active{background:var(--primary-soft);color:var(--primary-ink)}.nav-icon{width:18px;text-align:center;font-size:14px;opacity:.85}.sidebar-bottom{margin-top:auto;display:grid;gap:3px;padding-top:14px;border-top:1px solid var(--line)}
.main-shell{margin-left:var(--sidebar-w);min-height:100vh}.topbar{position:sticky;top:0;z-index:20;height:var(--topbar-h);display:flex;align-items:center;padding:0 28px;border-bottom:1px solid rgba(229,231,239,.85);background:rgba(247,248,251,.82);backdrop-filter:blur(20px)}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.breadcrumb b{font-weight:400;color:#b3b6c5}.breadcrumb strong{color:#353849;font-weight:600}.top-actions{margin-left:auto;display:flex;align-items:center;gap:9px}.top-link{font-size:11px;color:#686c80;padding:7px 10px;border-radius:8px}.top-link:hover{background:#eceef4}.avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(145deg,#ebe9ff,#d7d3ff);color:#524ac7;display:grid;place-items:center;font-size:11px;font-weight:800;border:1px solid #dcd8ff}.content{max-width:1560px;margin:0 auto;padding:34px 34px 72px}.mobile-menu{display:none}

/* Typography / buttons */
.eyebrow{font-size:10px;color:var(--primary-ink);font-weight:750;text-transform:uppercase;letter-spacing:.105em;margin-bottom:8px}.page-header,.calendar-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.page-header h1,.calendar-page-head h1{margin:0;color:#1d2030;font-size:28px;line-height:1.12;letter-spacing:-.035em;font-weight:720}.page-header p,.calendar-page-head p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.6;max-width:660px}.page-actions{display:flex;align-items:center;gap:8px}.btn{border:0;border-radius:9px;min-height:36px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:650;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:linear-gradient(180deg,#7067ff,#5f56f1);color:#fff;box-shadow:0 7px 18px rgba(99,91,255,.18)}.btn.primary:hover{box-shadow:0 10px 22px rgba(99,91,255,.24)}.btn.ghost{background:#fff;color:#55596d;border:1px solid var(--line-strong);box-shadow:var(--shadow-xs)}.btn.ghost:hover{background:#fafaff}.btn.tiny{min-height:30px;padding:0 10px;font-size:10px}.btn.big{min-height:44px;padding:0 20px;font-size:12px}.icon-button{width:34px;height:34px;border-radius:9px;border:1px solid var(--line-strong);background:#fff;color:#65697d;display:grid;place-items:center;font-size:18px;line-height:1}.icon-button.soft{width:30px;height:30px;border-color:var(--line);background:#fafbfe}.subtle-link,.row-action{font-size:10px;font-weight:650;color:#6961d7}.subtle-link:hover,.row-action:hover{color:var(--primary)}

/* Calendar home */
.pulse-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.pulse-card{min-height:112px;padding:17px 18px;background:linear-gradient(180deg,#fff,#fbfbfe);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-xs);position:relative;overflow:hidden}.pulse-card:after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;right:-38px;top:-38px;background:rgba(99,91,255,.06)}.pulse-card.accent-blue:after{background:rgba(49,131,255,.07)}.pulse-card.accent-mint:after{background:rgba(30,175,131,.08)}.pulse-card.accent-violet:after{background:rgba(125,115,255,.08)}.pulse-label{display:block;font-size:10px;color:var(--muted);font-weight:600;margin-bottom:9px}.pulse-card strong{display:block;font-size:24px;letter-spacing:-.04em;line-height:1;color:#222536}.pulse-card strong small{font-size:11px;color:#8b8fa1;font-weight:600;letter-spacing:0}.pulse-caption{display:block;margin-top:10px;font-size:9px;color:#9699aa}.calendar-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm);overflow:hidden}.calendar-toolbar{min-height:68px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.calendar-title-group{display:flex;align-items:center;gap:15px}.calendar-title-group h2{font-size:16px;letter-spacing:-.02em;margin:0}.calendar-nav{display:flex;gap:5px;align-items:center}.calendar-legend{display:flex;align-items:center;gap:15px;font-size:9px;color:#9295a5}.calendar-legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.legend-dot.planned{background:#a9a5ff}.legend-dot.done{background:#4ec19c}.calendar-scroll{overflow:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(135px,1fr));min-width:945px}.weekday-head{height:34px;display:flex;align-items:center;padding:0 11px;border-right:1px solid #f0f1f5;border-bottom:1px solid var(--line);background:#fafbfc;color:#9a9daf;font-size:9px;letter-spacing:.08em;font-weight:750}.weekday-head:nth-child(7){border-right:0}.calendar-day{min-height:142px;padding:9px 8px 8px;border-right:1px solid #eef0f5;border-bottom:1px solid #eef0f5;position:relative;background:#fff;transition:background .15s ease}.calendar-day:nth-child(7n){border-right:0}.calendar-day:hover{background:#fcfcff}.calendar-day.outside{background:#fafbfc}.calendar-day.outside .day-number{color:#c1c4d0}.calendar-day.today{background:linear-gradient(180deg,#fbfaff,#fff 42%)}.calendar-day.today:before{content:"";position:absolute;left:0;top:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary),#8b83ff)}.day-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.day-number{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;font-size:10px;font-weight:700;color:#55596a}.calendar-day.today .day-number{background:var(--primary);color:#fff;box-shadow:0 5px 12px rgba(99,91,255,.2)}.today-label{font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:#736be0;font-weight:750}.day-events{display:grid;gap:5px}.cal-event{--event:#766ef2;display:flex;align-items:center;gap:5px;padding:7px 7px 7px 9px;border-radius:9px;background:color-mix(in srgb,var(--event) 7%,#fff);border:1px solid color-mix(in srgb,var(--event) 15%,#edf0f5);position:relative;overflow:hidden}.cal-event:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--event)}.cal-event[data-category="Aeróbico"]{--event:#3f8cf4}.cal-event[data-category="Força"]{--event:#805be8}.cal-event[data-category="Luta"]{--event:#e26c4e}.cal-event[data-category="Mobilidade"]{--event:#24a982}.cal-event[data-category="Outro"]{--event:#7d8497}.cal-event.is-done{background:color-mix(in srgb,#28a77f 6%,#fff);border-color:#d9eee7}.cal-event.is-done:before{background:#35ac87}.event-copy{min-width:0;flex:1;display:grid;gap:2px}.event-copy strong{font-size:9.5px;color:#373a4b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:680}.event-copy span{font-size:8px;color:#9a9dae;white-space:nowrap}.event-action{border:0;border-radius:7px;background:#fff;color:var(--event);border:1px solid color-mix(in srgb,var(--event) 22%,#eceef4);font-size:8px;font-weight:750;padding:5px 6px;white-space:nowrap;box-shadow:0 1px 2px rgba(30,34,50,.03)}.event-action:hover{background:color-mix(in srgb,var(--event) 6%,#fff)}.event-action.done{color:#228463;border-color:#cfe9df;background:#fff}.event-action.future{background:transparent;border:0;color:#a7aab9;padding:3px}.day-add{position:absolute;right:6px;bottom:5px;width:23px;height:23px;border:0;border-radius:7px;background:transparent;color:#b4b7c5;font-size:15px;opacity:0;transition:.15s ease}.calendar-day:hover .day-add,.day-add:focus{opacity:1}.day-add:hover{background:#f0efff;color:var(--primary)}
.below-calendar-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.insight-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 17px;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;box-shadow:var(--shadow-xs)}.insight-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-weight:800}.insight-icon.mint{background:var(--mint-soft);color:var(--mint)}.insight-card div>span{font-size:9px;color:#9699a8;text-transform:uppercase;letter-spacing:.07em;font-weight:700}.insight-card strong{display:block;font-size:17px;margin-top:2px;color:#303343}.insight-card p{margin:3px 0 0;color:#8c90a1;font-size:9px}.insight-card>a{font-size:9px;color:#6961d7;font-weight:700}

/* Quick check-in dialog */
.checkin-dialog{width:min(470px,calc(100vw - 28px));border:0;padding:0;border-radius:20px;background:#fff;color:var(--text);box-shadow:var(--shadow-lg);overflow:hidden}.checkin-dialog::backdrop{background:rgba(31,33,45,.24);backdrop-filter:blur(6px)}.checkin-dialog[open]{animation:dialogIn .18s cubic-bezier(.2,.8,.2,1)}@keyframes dialogIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}.dialog-shell{margin:0}.dialog-handle{display:none}.dialog-head{padding:20px 20px 16px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;border-bottom:1px solid var(--line)}.dialog-symbol{width:36px;height:36px;border-radius:11px;background:linear-gradient(145deg,#7770ff,#5d54ed);color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 18px rgba(99,91,255,.2)}.dialog-head span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#8c90a1;font-weight:750}.dialog-head h2{margin:2px 0 2px;font-size:18px;letter-spacing:-.025em}.dialog-head p{margin:0;color:#8d91a1;font-size:10px}.dialog-close{border:0;background:#f3f4f7;color:#8d90a0;border-radius:9px;width:30px;height:30px;font-size:19px}.dialog-body{padding:18px 20px 8px}.quick-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.quick-summary>div{padding:13px 14px;border-radius:12px;background:#f8f9fc;border:1px solid #eef0f5}.quick-summary span{display:block;font-size:9px;color:#9195a6;margin-bottom:4px}.quick-summary strong{font-size:18px;color:#303343;display:flex;align-items:baseline}.quick-summary input{width:58px;border:0;background:transparent;padding:0;color:#303343;font-weight:750;font-size:18px;outline:0}.quick-summary small{font-size:9px;color:#9a9dad;margin-left:3px}.quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px 20px}.activity-select-wrap.is-hidden{display:none}.toast{position:fixed;right:24px;bottom:24px;z-index:80;padding:11px 14px;background:#242735;color:#fff;border-radius:11px;box-shadow:0 18px 45px rgba(30,33,46,.2);font-size:11px;font-weight:600;opacity:0;transform:translateY(8px);pointer-events:none;transition:.18s ease}.toast.show{opacity:1;transform:none}.toast.error{background:#b63e4a}

/* Shared panels / metrics */
.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.metric-card,.panel,.table-panel,.list-panel,.form-panel,.measurement-hero,.import-panel,.ocr-banner{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-xs)}.metric-card{padding:16px}.metric-top{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.metric-icon{color:#9b96ff}.metric-value{font-size:24px;font-weight:730;letter-spacing:-.04em;margin-top:9px}.metric-value small{font-size:10px;color:#9a9dad;margin-left:3px}.metric-foot{font-size:9px;color:#979aaa;margin-top:8px}.delta.good{color:var(--success)}.dashboard-grid,.report-grid,.measurement-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.panel{padding:17px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.panel-head h2{margin:2px 0 0;font-size:15px;letter-spacing:-.02em}.panel-kicker{font-size:9px;color:#999cad;text-transform:uppercase;letter-spacing:.07em;font-weight:700}.panel-note{font-size:10px;color:#898d9e;line-height:1.5}.balance-number{font-size:32px;font-weight:750;letter-spacing:-.045em}.balance-number span{color:var(--success)}.balance-number small{font-size:11px;color:#989bab}.balance-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.balance-stats>div{background:#f8f9fc;border-radius:10px;padding:10px}.balance-stats span{display:block;font-size:9px;color:#9498aa}.balance-stats strong{font-size:12px}.balance-bar{height:7px;border-radius:99px;background:#eef0f5;overflow:hidden;margin:13px 0}.balance-bar span{display:block;height:100%;background:linear-gradient(90deg,#7d73ff,#34b78e)}.task-list,.activity-feed,.detail-list{display:grid}.task-row,.feed-row{display:flex;align-items:center;gap:10px;min-height:44px;border-top:1px solid #eff0f4}.task-row:first-child,.feed-row:first-child{border-top:0}.task-state{width:22px;height:22px;border-radius:7px;background:#f2f2f8;color:#8a8d9e;display:grid;place-items:center;font-size:9px}.task-state.done{background:var(--success-soft);color:var(--success)}.task-copy,.feed-copy{display:grid;gap:2px}.task-copy strong,.feed-copy strong{font-size:10px;color:#46495a}.task-copy span,.feed-copy span{font-size:9px;color:#9a9dad}.feed-dot,.category-dot,.macro-dot{width:7px;height:7px;border-radius:50%;background:#776ef3;flex:0 0 auto}.empty,.empty-state{color:#9a9dae;font-size:10px;text-align:center}.empty-state{padding:50px 20px;background:#fff;border:1px solid var(--line);border-radius:14px}.empty-state h2{font-size:16px;color:#3d4050;margin:12px 0 5px}.empty-state p{margin:0 auto 16px;max-width:460px;line-height:1.6}.empty-icon.large{font-size:28px;color:#9a95ff}

/* Lists / tables */
.list-panel{overflow:hidden}.list-header,.activity-item{display:grid;grid-template-columns:minmax(220px,1.6fr) 110px 130px minmax(300px,1.3fr) 56px;gap:12px;align-items:center}.list-header{height:38px;padding:0 14px;background:#fafbfc;border-bottom:1px solid var(--line);font-size:9px;color:#a0a3b3;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.activity-item{min-height:66px;padding:9px 14px;border-bottom:1px solid #eff0f4;font-size:10px;color:#777b8d}.activity-item:last-child{border-bottom:0}.activity-item:hover{background:#fcfcfe}.activity-item.inactive{opacity:.55}.activity-main{display:flex;align-items:center;gap:10px}.activity-main>div{display:grid;gap:3px}.activity-main strong{font-size:11px;color:#3c3f50}.activity-main span{font-size:9px;color:#999cad}.cell-unit{font-size:8px;color:#a3a6b5}.weekday-form{display:flex;align-items:center;gap:4px}.day-chip{width:26px;height:26px;border-radius:8px;border:1px solid var(--line);background:#fafbfc;color:#a0a3b1;display:grid;place-items:center;font-size:9px;font-weight:700;cursor:pointer}.day-chip input{display:none}.day-chip.selected{background:var(--primary-soft);border-color:#d8d4ff;color:var(--primary-ink)}.save-icon{width:27px;height:27px;border-radius:8px;border:0;background:#f0f1f6;color:#6d7183}.table-panel{overflow:hidden}.data-table{width:100%;border-collapse:collapse}.data-table th{height:38px;background:#fafbfc;color:#9ca0b0;font-size:9px;text-transform:uppercase;letter-spacing:.06em;text-align:left;font-weight:700;padding:0 14px;border-bottom:1px solid var(--line)}.data-table td{height:50px;padding:7px 14px;border-bottom:1px solid #eff0f4;color:#74788a;font-size:10px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fcfcfe}.data-table strong{color:#424657;font-weight:650}.mono{font-variant-numeric:tabular-nums;color:#888c9d!important}.name-cell,.food-name{display:flex;align-items:center;gap:9px}.status-chip{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:99px;background:#f2f3f7;color:#737789;font-size:9px}.status-chip.success{background:var(--success-soft);color:var(--success)}

/* Toolbar / food */
.toolbar,.date-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:13px}.search-box{min-width:260px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line-strong);border-radius:9px;padding:0 10px}.search-box input{height:34px;border:0;background:transparent;outline:0;width:100%;font-size:10px;color:var(--text)}.toolbar-count{margin-left:auto;color:#999cad;font-size:9px}.date-picker{height:34px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;color:#64687a;padding:0 9px;font-size:10px}.date-label{margin-left:auto;color:#888c9d;font-size:10px}.food-icon{width:26px;height:26px;border-radius:8px;background:var(--primary-soft);display:grid;place-items:center;color:var(--primary);font-size:10px}.macro-dot.protein{background:#6b67f1}.macro-dot.carbs{background:#e8a135}.macro-dot.fat{background:#e46c7a}.nutrition-metrics{margin-top:0}

/* Forms */
.form-panel{max-width:940px;padding:22px}.smart-form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:grid;gap:7px}.field.span-2{grid-column:1/-1}.field>label{font-size:10px;color:#666a7d;font-weight:650}.field>label small{color:#a5a8b7;font-weight:500}.input{width:100%;min-height:39px;background:#fff;border:1px solid var(--line-strong);border-radius:9px;color:#292c3b;padding:8px 10px;outline:none;transition:.15s ease;box-shadow:0 1px 1px rgba(28,31,44,.02)}.input:hover{border-color:#d4d7e2}.input:focus{border-color:#918aff;box-shadow:0 0 0 3px rgba(99,91,255,.09)}textarea.input{min-height:96px;resize:vertical}select.input{appearance:auto}.error{color:var(--danger);font-size:9px}.form-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:16px}.toggle-line{display:flex!important;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);background:#fafbfc;padding:12px 13px;border-radius:10px}.toggle-line>span{display:flex;flex-direction:column;gap:3px}.toggle-line strong{font-size:10px;color:#4e5263}.toggle-line small{font-size:9px;color:#9598a8}.toggle-input{accent-color:var(--primary)}

/* Measurements / reports */
.measurement-hero{display:grid;grid-template-columns:1.35fr repeat(4,1fr);overflow:hidden;margin-bottom:16px}.measurement-main,.measurement-stat{padding:18px;border-right:1px solid var(--line)}.measurement-stat:last-child{border-right:0}.measurement-main strong{font-size:31px;letter-spacing:-.04em}.measurement-main strong small{font-size:11px;color:#9296a7}.measurement-main p{margin:5px 0 0;color:#979aaa;font-size:9px}.measurement-stat strong{font-size:14px}.formula{display:grid;gap:3px}.formula>div{display:flex;gap:11px;padding:10px 0;border-top:1px solid #eff0f4}.formula>div:first-child{border-top:0}.formula>div>span{width:22px;height:22px;border-radius:7px;background:#f2f2fa;color:#726ada;font-size:9px;display:grid;place-items:center}.formula p{margin:0;color:#848899;font-size:10px;line-height:1.5}.formula strong{color:#4b4f60;font-weight:650}.mini-list{display:grid}.mini-list>div{display:grid;grid-template-columns:52px 1fr 65px 75px;gap:8px;align-items:center;min-height:38px;border-top:1px solid #eff0f4;font-size:9px;color:#888c9e}.mini-list>div:first-child{border-top:0}.mini-list strong{color:#4e5263}.table-title{padding:14px;border-bottom:1px solid var(--line)}.import-panel{padding:22px;max-width:920px}.upload-dropzone{border:1px dashed #d8dbe6;border-radius:14px;background:linear-gradient(180deg,#fcfcfe,#f8f9fc);min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;gap:12px}.upload-mark{width:44px;height:44px;border-radius:12px;background:var(--primary-soft);display:grid;place-items:center;color:var(--primary);font-size:20px}.upload-dropzone strong{font-size:12px;color:#474b5c}.upload-dropzone p{max-width:520px;margin:5px 0 0;color:#9296a7;font-size:10px;line-height:1.55}.file-input{font-size:10px;color:#85899a}.file-input::file-selector-button{border:1px solid var(--line-strong);background:#fff;color:#626678;border-radius:8px;padding:8px 11px;margin-right:10px;cursor:pointer}.import-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.import-notes>div{display:flex;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.import-notes>div>span{width:22px;height:22px;border-radius:7px;background:var(--primary-soft);display:grid;place-items:center;color:var(--primary);font-size:9px}.import-notes p{margin:0;color:#85899a;font-size:9px;line-height:1.45}.import-notes strong{color:#5b5f70}.ocr-banner{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:18px;padding:16px 18px;margin-bottom:16px}.ocr-score{border-right:1px solid var(--line)}.ocr-score>span{display:block;color:#9599aa;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.ocr-score>strong{font-size:28px;letter-spacing:-.03em}.ocr-score small{font-size:10px;color:#999dad}.ocr-banner>div:last-child strong{font-size:11px}.ocr-banner p{margin:5px 0 0;color:#868a9b;font-size:9px;line-height:1.5}.wide-form{max-width:none}.measurement-form-grid{grid-template-columns:repeat(3,1fr)}.detail-list>div{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:38px;border-top:1px solid #eff0f4;padding:7px 0}.detail-list>div:first-child{border-top:0}.detail-list span{font-size:9px;color:#898d9e}.detail-list strong{font-size:10px;color:#505465;text-align:right}.detail-note{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.detail-note span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#979aaa}.detail-note p{font-size:10px;color:#74788a;line-height:1.55}.measurement-summary-grid,.weekly-body-card{margin-bottom:16px}.report-body-grid{grid-template-columns:repeat(4,1fr)}

/* Flash + Login */
.flash-stack{position:fixed;right:20px;top:70px;z-index:70;display:grid;gap:7px}.flash{min-width:260px;max-width:420px;padding:11px 13px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:9px;color:#5d6172;font-size:10px}.flash-dot{width:7px;height:7px;border-radius:50%;background:#a1a4b4}.flash.success .flash-dot{background:var(--success)}.flash.danger .flash-dot{background:var(--danger)}.login-shell{min-height:100vh;background:radial-gradient(circle at 50% 0%,rgba(99,91,255,.10),transparent 34%),#f7f8fb;display:grid;place-items:center;padding:24px}.login-layout{width:min(390px,100%)}.login-brand{display:flex;align-items:center;gap:9px;justify-content:center;margin-bottom:20px;color:#535769;font-size:11px}.login-card{border:1px solid var(--line);background:rgba(255,255,255,.92);border-radius:18px;padding:27px;box-shadow:0 30px 80px rgba(45,49,68,.10)}.login-card h1{font-size:22px;letter-spacing:-.035em;margin:8px 0 6px}.login-card>p{margin:0 0 21px;color:#8b8fa0;font-size:10px;line-height:1.5}.form-stack{display:grid;gap:14px}.login-footer{text-align:center;margin-top:17px;color:#a4a7b5;font-size:9px}.logo-tile{width:25px;height:25px;border-radius:8px;background:linear-gradient(145deg,#776eff,#554ced);color:#fff;display:grid;place-items:center;font-weight:800}

/* Responsive */
@container (max-width:900px){.calendar-day{min-height:130px}}
@media(max-width:1180px){.pulse-row,.metrics-grid{grid-template-columns:1fr 1fr}.dashboard-grid,.report-grid,.measurement-detail-grid{grid-template-columns:1fr}.measurement-hero{grid-template-columns:1.2fr 1fr 1fr}.measurement-stat:nth-child(4),.measurement-stat:nth-child(5){border-top:1px solid var(--line)}.list-header{display:none}.activity-item{grid-template-columns:minmax(220px,1fr) 100px 120px;position:relative}.weekday-form{grid-column:1/-1;padding-bottom:10px}.activity-item>.row-action{position:absolute;right:16px;top:16px}.below-calendar-grid{grid-template-columns:1fr}}
@media(max-width:860px){:root{--sidebar-w:238px}.sidebar{transform:translateX(-100%);transition:transform .2s ease;box-shadow:20px 0 50px rgba(38,42,59,.13)}.sidebar.open{transform:translateX(0)}.main-shell{margin-left:0}.mobile-menu{display:grid}.content{padding:26px 17px 60px}.page-header,.calendar-page-head{align-items:flex-start;flex-direction:column}.page-actions{width:100%;flex-wrap:wrap}.calendar-scroll{margin:0 -1px}.measurement-hero{grid-template-columns:1fr 1fr}.measurement-main{grid-column:1/-1;border-bottom:1px solid var(--line)}.form-grid{grid-template-columns:1fr}.field.span-2{grid-column:auto}.table-panel{overflow:auto}.data-table{min-width:760px}.measurement-form-grid{grid-template-columns:1fr 1fr}.import-notes{grid-template-columns:1fr}.report-body-grid{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.content{padding:22px 11px 50px}.topbar{padding:0 11px}.breadcrumb span,.breadcrumb b{display:none}.calendar-page-head h1,.page-header h1{font-size:24px}.pulse-row,.metrics-grid{grid-template-columns:1fr 1fr;gap:8px}.pulse-card{min-height:100px;padding:14px}.pulse-card strong{font-size:21px}.page-actions .btn{flex:1}.calendar-card{border-radius:14px}.calendar-toolbar{align-items:flex-start;gap:10px}.calendar-legend{display:none}.below-calendar-grid{grid-template-columns:1fr}.insight-card{grid-template-columns:auto 1fr}.insight-card>a{grid-column:2}.measurement-hero{grid-template-columns:1fr}.measurement-main,.measurement-stat{border-right:0;border-bottom:1px solid var(--line)}.measurement-stat:last-child{border-bottom:0}.toolbar{align-items:stretch;flex-wrap:wrap}.search-box{width:100%;min-width:0}.toolbar-count{margin-left:0}.form-panel{padding:15px}.quick-fields,.measurement-form-grid,.report-body-grid{grid-template-columns:1fr}.checkin-dialog{width:100%;max-width:none;margin:auto 0 0;border-radius:20px 20px 0 0}.checkin-dialog::backdrop{background:rgba(31,33,45,.28)}.dialog-handle{display:block;width:38px;height:4px;border-radius:99px;background:#d8dae3;margin:9px auto 0}.dialog-head{padding-top:12px}.toast{left:12px;right:12px;bottom:12px;text-align:center}}
.body-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.body-grid>div{padding:11px 12px;border-radius:10px;background:#f8f9fc;border:1px solid #f0f1f5}.body-grid span{display:block;font-size:9px;color:#9699aa;margin-bottom:4px}.body-grid strong{font-size:12px;color:#45495a}.fine-print{font-size:9px;color:#989bac;line-height:1.55}.table-empty{padding:34px 10px}.narrow{max-width:940px}
.btn.full{width:100%}.metric-card.accent{background:linear-gradient(180deg,#fff,#f8f7ff)}.food-name>div{display:grid;gap:2px}.food-name>div>span{font-size:8.5px;color:#9b9eae}.upload-control{margin:6px 0 2px}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:99px;background:var(--primary-soft);color:var(--primary-ink);font-size:9px;font-weight:700}.small{font-size:9px}.body-panel{padding:16px}
.activity-editor{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}.activity-editor-main{display:grid;gap:12px}.editor-section{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px;box-shadow:var(--shadow-xs)}.section-copy{display:flex;gap:12px;align-items:flex-start;margin-bottom:17px}.section-copy>span{width:28px;height:28px;border-radius:9px;background:var(--primary-soft);color:var(--primary-ink);display:grid;place-items:center;font-size:9px;font-weight:800}.section-copy h2{margin:0;font-size:14px;letter-spacing:-.02em}.section-copy p{margin:4px 0 0;color:#9296a7;font-size:9.5px;line-height:1.45}.editor-fields{display:grid;gap:13px}.editor-fields.two-col{grid-template-columns:1fr 1fr}.editor-fields.three-col{grid-template-columns:1fr 1fr 1fr}.session-preview{grid-column:span 2;padding:12px 13px;border-radius:11px;background:linear-gradient(135deg,#f7f6ff,#fbfbfe);border:1px solid #eceaff;display:flex;align-items:center;gap:10px}.session-preview>span{font-size:9px;color:#85899b}.session-preview strong{font-size:17px;color:#5148d0;margin-left:auto}.session-preview strong small{font-size:9px;color:#989bad}.session-preview p{font-size:8px;color:#a2a5b3;margin:0}.week-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.week-option{min-height:64px;border:1px solid var(--line);border-radius:11px;background:#fafbfc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:.15s ease}.week-option:hover{border-color:#d5d2ff;background:#fbfaff}.week-option input{display:none}.week-option span{font-size:10px;font-weight:800;color:#737789;text-transform:uppercase}.week-option small{font-size:8px;color:#a1a4b3}.week-option.selected{background:var(--primary-soft);border-color:#d8d3ff;box-shadow:inset 0 0 0 1px rgba(99,91,255,.04)}.week-option.selected span{color:var(--primary-ink)}.week-option.selected small{color:#827be4}.editor-side{position:relative}.sticky-save-card{position:sticky;top:82px;background:linear-gradient(180deg,#fff,#fafaff);border:1px solid var(--line);border-radius:15px;padding:20px;box-shadow:var(--shadow-sm)}.save-orb{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#756cff,#5950e9);color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 9px 20px rgba(99,91,255,.2)}.sticky-save-card h3{margin:15px 0 6px;font-size:15px;letter-spacing:-.02em}.sticky-save-card p{margin:0 0 16px;color:#85899b;font-size:10px;line-height:1.55}.sticky-save-card .btn+.btn{margin-top:7px}.compact-section{margin-bottom:0}@media(max-width:1050px){.activity-editor{grid-template-columns:1fr}.editor-side{order:-1}.sticky-save-card{position:static;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.sticky-save-card h3{margin:0}.sticky-save-card p{grid-column:2;margin:2px 0 0}.sticky-save-card .btn{grid-row:1/3;grid-column:3}.sticky-save-card .btn+.btn{display:none}.editor-fields.three-col{grid-template-columns:1fr 1fr}.session-preview{grid-column:1/-1}}@media(max-width:650px){.editor-fields.two-col,.editor-fields.three-col{grid-template-columns:1fr}.field.span-2{grid-column:auto}.week-picker{grid-template-columns:repeat(4,1fr)}.sticky-save-card{grid-template-columns:auto 1fr}.sticky-save-card .btn{grid-row:auto;grid-column:1/-1}.sticky-save-card p{grid-column:2}}
