@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.table{display:table}.table\!{display:table!important}}:root{color-scheme:light;--bg:#f1f5fc;--card:#fff;--card-alt:#f6f8fd;--ink:#142647;--muted:#4d607b;--border:#dce5f2;--accent:#1b57cb;--accent-text:#1749a9;--soft:#eaf1ff;--green:#0f795e;--mint:#85edcb;--nav:#102346;--shadow:0 10px 35px #1834610a;font-family:Inter,ui-sans-serif,system-ui,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg:#10192b;--card:#17253c;--card-alt:#1c2d47;--ink:#edf4ff;--muted:#afc0d9;--border:#304464;--accent:#3269d4;--accent-text:#aac8ff;--soft:#21385e;--green:#89e6c5;--shadow:0 10px 35px #0002}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#10192b;--card:#17253c;--card-alt:#1c2d47;--ink:#edf4ff;--muted:#afc0d9;--border:#304464;--accent:#3269d4;--accent-text:#aac8ff;--soft:#21385e;--green:#89e6c5;--shadow:0 10px 35px #0002}}:root[data-accent=green]{--accent:#126d55}:root[data-accent=violet]{--accent:#6347b4}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);min-width:300px;margin:0;line-height:1.5}h1,h2,h3,p{margin:0}h1{letter-spacing:-.055em;font-size:clamp(1.9rem,4vw,3rem);font-weight:780;line-height:1.12}h2{letter-spacing:-.03em;font-size:1.28rem;font-weight:750}h3{margin-top:.75rem;font-size:1rem;font-weight:700}p{overflow-wrap:anywhere}button,input,select,textarea{font:inherit}button{border:1px solid var(--border);background:var(--card);min-height:42px;color:var(--ink);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:.42rem;padding:.48rem .8rem;font-size:.86rem;font-weight:650;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}button:hover{background:var(--soft);border-color:var(--accent)}button:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:default}button[aria-pressed=true]{background:var(--soft);color:var(--accent-text);border-color:var(--accent)}:focus-visible{outline-offset:3px;outline:3px solid #669aff}main:focus{outline:none}a{color:var(--accent-text);text-decoration:underline}small{color:var(--muted);font-size:.79rem}label{gap:.3rem;min-width:0;font-size:.86rem;font-weight:650;display:grid}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;color:var(--ink);background:var(--card-alt);border:1px solid var(--border);border-radius:9px;min-height:42px;padding:.6rem .68rem;font-size:1rem}input[type=checkbox]{accent-color:var(--accent);flex:none;width:1.05rem;height:1.05rem}textarea{resize:vertical;min-height:76px}form{gap:.85rem;margin-top:.85rem;display:grid}form>button{justify-self:start}fieldset{border:1px solid var(--border);border-radius:10px;padding:.65rem}legend{padding:0 .3rem;font-size:.83rem;font-weight:650}.primary{color:#fff;background:var(--accent);border-color:var(--accent);min-height:44px}.primary:hover{color:#fff;background:var(--accent);filter:brightness(1.12)}.danger{color:#b3294b}[data-theme=dark] .danger{color:#ff97ad}.full{width:100%}.muted{color:var(--muted)}.eyebrow{color:var(--accent-text);letter-spacing:.12em;text-transform:uppercase;font-size:.69rem;font-weight:800;display:inline-block}.brand{letter-spacing:.04em;white-space:nowrap;align-items:center;gap:.72rem;font-size:.91rem;font-weight:800;display:flex}.brand strong{color:inherit}.brand small{letter-spacing:.1em;color:inherit;opacity:.78;margin-top:.12rem;font-size:.52rem;display:block}.brand-icon,.tile-icon,.avatar{flex:none;place-items:center;display:grid}.brand-icon{width:39px;height:39px;color:var(--mint);background:#234c86;border-radius:12px}.app{min-height:100vh}.skip{z-index:10;background:var(--card);padding:.5rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip:focus{transform:none}.sidebar{display:none}.workspace{width:100%;min-width:0}.topbar{border-bottom:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;min-height:61px;padding:.7rem 1rem;display:flex}.top-label{align-items:center;gap:.55rem;font-size:.86rem;font-weight:750;display:flex}.top-label svg{color:var(--accent-text)}.avatar{background:var(--soft);width:39px;height:39px;min-height:39px;color:var(--accent-text);border-radius:50%;padding:0;font-weight:800}.icon-button{width:41px;padding:0}.content{max-width:1510px;padding:1.05rem 1rem calc(6rem + env(safe-area-inset-bottom));gap:1rem;margin:auto;display:grid}.greeting,.page-title{flex-direction:column;align-items:flex-start;gap:.7rem;display:flex}.page-title{gap:.3rem}.greeting h1,.page-title h1{margin:.24rem 0}.greeting p,.page-title p{color:var(--muted)}.hero{isolation:isolate;color:#fff;background:linear-gradient(120deg,#122548,#183f79 62%,#185a91);border-radius:20px;padding:1.18rem;position:relative;overflow:hidden;box-shadow:0 14px 36px #16376c36}.hero .eyebrow,.hero small{color:#bde3f4}.hero h2{font-size:clamp(1.6rem,4vw,2.35rem)}.hero p{color:#d4e3f6;margin:.14rem 0 .8rem}.hero button{color:#fff;background:#ffffff14;border-color:#ffffff45;margin-top:.75rem}.hero-mark{color:#84ddf3;opacity:.15;z-index:-1;position:absolute;bottom:0;right:0;transform:rotate(-9deg)}.hero-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem;margin:.75rem 0;display:grid}.hero-values div{gap:.1rem;display:grid}.hero-values strong{font-size:clamp(1.04rem,3vw,1.55rem);line-height:1.2}.progress{background:var(--border);border-radius:999px;height:7px;margin:.38rem 0;overflow:hidden}.progress span{background:var(--accent);border-radius:inherit;height:100%;animation:.65s ease-out fill;display:block}.hero .progress{background:#ffffff30;max-width:510px}.hero .progress span{background:var(--mint)}@keyframes fill{0%{transform-origin:0;transform:scaleX(0)}}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.metric{text-align:left;min-width:0;box-shadow:var(--shadow);border-radius:16px;place-content:start stretch;justify-items:start;gap:.32rem;padding:.76rem;display:grid}.metric>*{overflow-wrap:anywhere;max-width:100%}.metric-label{color:var(--muted);font-size:.83rem}.metric strong,.large{letter-spacing:-.04em;font-size:clamp(1.35rem,3vw,1.72rem);font-weight:790;line-height:1.15}.metric .progress{width:100%}.tile-icon{background:var(--soft);width:35px;height:35px;color:var(--accent-text);border-radius:11px}.metric-exercise .tile-icon,.metric-habits .tile-icon{color:#0b694f;background:#d8f8ee}.panel{background:var(--card);border:1px solid var(--border);min-width:0;box-shadow:var(--shadow);border-radius:18px;padding:1rem}.panel>p,.panel>h3,.panel>ul,.panel>.actions,.panel>.segments,.panel>.legal{margin-top:.7rem}.panel>ul:not(.records){padding-left:1.2rem;list-style:outside}.split,.dashboard-grid,.fields{gap:.85rem;min-width:0;display:grid}.section-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem;display:flex}.segments,.actions,.day-picker{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.segments button{min-height:36px;padding:.35rem .59rem}.inline-label{align-items:center;gap:.5rem;margin:.65rem 0;display:flex}.inline-label select,.inline-label input{width:auto;max-width:75%}.empty{text-align:center;min-height:115px;color:var(--muted);background:var(--card-alt);border:1px dashed var(--border);border-radius:13px;align-content:center;justify-items:center;gap:.5rem;margin-top:.7rem;padding:.9rem;display:grid}.chart{margin-top:.6rem}.chart svg{width:100%;max-height:245px;display:block}.gridline{stroke:var(--border)}.area{fill:var(--soft)}.line{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.dot{fill:var(--accent);stroke:var(--card);stroke-width:1.5px;cursor:crosshair}.chart-caption{color:var(--muted);justify-content:space-between;gap:.3rem;font-size:.76rem;display:flex}.records{margin:.7rem 0 0;padding:0;list-style:none;display:grid}.records li{border-bottom:1px solid var(--border);overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.55rem;min-width:0;padding:.64rem 0;display:flex}.records li:last-child{border-bottom:0}.records li small{display:block}.records li button{min-height:36px;font-size:.77rem}.records.compact li{flex-wrap:nowrap}.check{align-items:center;gap:.5rem;display:flex}.feedback{background:var(--soft);color:var(--accent-text);border-radius:9px;margin-top:.6rem;padding:.58rem .68rem}.feedback.error{color:#861635;background:#fce7eb}.nutrition{flex-wrap:wrap;gap:.5rem;margin:.5rem 0;display:flex}.nutrition div{background:var(--card-alt);border-radius:8px;padding:.5rem .6rem}.nutrition dt{color:var(--muted);font-size:.7rem}.nutrition dd{margin:0;font-weight:720}.food-search{border-top:1px solid var(--border);padding-top:.7rem}.comparison{gap:.45rem;margin-top:.6rem;display:grid}.comparison div{background:var(--card-alt);border-radius:10px;padding:.65rem}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.7rem;display:grid}.photo-grid img{object-fit:contain;background:var(--card-alt);border-radius:10px;width:100%;max-height:400px}.photo-grid figcaption{font-size:.82rem}.habit-days,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.22rem;margin:.65rem 0;display:grid}.habit-days button,.calendar-grid button{place-items:center;gap:0;min-width:0;padding:.22rem .05rem;font-size:.69rem;display:grid}.habit-days small,.calendar-grid small{font-size:.58rem}.calendar-grid i{background:var(--accent);border-radius:50%;width:5px;height:5px}.mobile-nav{z-index:3;padding:.38rem .28rem calc(.38rem + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--card);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -8px 28px #14264813}.mobile-nav button{border-color:#0000;justify-items:center;gap:.13rem;min-height:46px;padding:.27rem .12rem;font-size:.65rem;display:grid}.mobile-nav [aria-current],.more-nav [aria-current]{background:var(--soft);color:var(--accent-text)}.more-nav{z-index:3;right:.65rem;bottom:calc(66px + env(safe-area-inset-bottom));background:var(--card);box-shadow:var(--shadow);border:1px solid var(--border);border-radius:13px;gap:.25rem;padding:.6rem;display:grid;position:fixed}.more-nav button{justify-content:flex-start}.auth-layout{min-height:100dvh;display:grid}.auth-art{display:none}.auth-body{align-content:center;justify-items:center;min-width:0;padding:1.5rem 1.15rem;display:grid}.auth-mobile,.auth-form{width:min(100%,440px)}.auth-mobile{margin-bottom:1.6rem}.auth-form h1{margin:.3rem 0}.auth-links{margin-top:.75rem}.legal{color:var(--muted);margin-top:.85rem;font-size:.82rem}.legal summary{cursor:pointer;font-weight:700}.legal p{margin-top:.36rem}.onboarding,.loading{gap:1rem;width:min(100% - 2rem,680px);margin:5vh auto 2rem;display:grid}.onboarding h1{margin:.33rem 0 .6rem}.onboarding .panel>button{margin-top:.8rem}.skeleton{background:linear-gradient(100deg,var(--card-alt),var(--card),var(--card-alt));background-size:200% 100%;border-radius:15px;height:74px;animation:1.4s linear infinite skeleton}@keyframes skeleton{to{background-position:200% 0}}@media(min-width:620px){.content,.topbar{padding-left:1.45rem;padding-right:1.45rem}.fields,.comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.greeting{flex-direction:row;justify-content:space-between;align-items:end}.hero{padding:1.55rem}.hero-values{grid-template-columns:repeat(4,minmax(0,1fr));max-width:600px}.panel{padding:1.25rem}}@media(min-width:900px){.app{grid-template-columns:235px minmax(0,1fr);display:grid}.sidebar{background:var(--nav);color:#f2f6ff;flex-direction:column;gap:1rem;height:100dvh;padding:1.35rem .88rem .85rem;display:flex;position:sticky;top:0;overflow:auto}.sidebar>.brand{padding:0 .35rem}.nav-label{color:#a2b7d8;letter-spacing:.13em;margin:.3rem .55rem 0;font-size:.67rem;font-weight:800}.sidebar nav{gap:.19rem;display:grid}.sidebar nav button,.side-footer button{color:#c8d8ef;background:0 0;border-color:#0000;justify-content:flex-start;min-height:39px}.sidebar nav button:hover,.sidebar nav [aria-current]{color:#fff;background:#244575}.sidebar nav [aria-current]{border-color:#375b8f}.sidebar nav svg{color:#97c5f3}.side-footer{overflow-wrap:anywhere;border-top:1px solid #314a71;align-items:center;gap:.55rem;margin-top:auto;padding:.55rem;display:flex}.side-footer strong{font-size:.83rem}.side-footer button{color:#c8d8ef;min-height:25px;padding:0;display:block}.mobile-nav,.more-nav,.mobile-logout,.mobile-feedback{display:none}.content{padding:1.5rem 1.5rem 2.25rem}.topbar{min-height:68px}.auth-layout{grid-template-columns:1fr 1fr}.auth-mobile{display:none}.auth-art{color:#fff;background:radial-gradient(at 77% 60%,#2372a0,#163b70 37%,#102346 76%);flex-direction:column;justify-content:space-between;padding:clamp(2rem,5vw,5.5rem);display:flex}.auth-art h1{margin:.6rem 0;font-size:clamp(3rem,6.2vw,6.5rem)}.auth-art p{color:#d3e4fa;max-width:350px}.auth-art .eyebrow,.auth-note{color:var(--mint)}.auth-note{letter-spacing:.14em;font-size:.7rem}.split{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}}@media(min-width:1250px){.metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.hero{padding:1.8rem}.hero-mark{bottom:12%;right:7%}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{.print-hidden,.sidebar,.topbar,.mobile-nav,.more-nav,.page-title,.report-print button,.report-print label,.skip{display:none!important}.app,.content{padding:0;display:block}.report-print{box-shadow:none;color:#111;background:#fff;border:0}body{background:#fff}}
