@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-cyrillic-ext-wght-normal.d1990364.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-cyrillic-wght-normal.2ffcac4f.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-greek-wght-normal.6b69666c.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-vietnamese-wght-normal.383b32a0.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-latin-ext-wght-normal.f5cc7610.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-latin-wght-normal.fedf4c92.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{color-scheme:light;--ink-900:#101014;--ink-700:#3a3a42;--ink-500:#5f5f6a;--ink-400:#6a6a74;--ink-200:#9a9aa4;--ink-100:#ececf0;--ink-50:#f5f5f7;--accent-50:#fff0f5;--accent-100:#ffdce7;--accent-200:#ffb8ce;--accent-300:#ff85ab;--accent-400:#f53d77;--accent-500:#e4004f;--accent-600:#c40044;--accent-700:#a00038;--accent-800:#78002a;--color-accent:var(--accent-500);--color-accent-soft:var(--accent-50);--color-accent-line:var(--accent-100);--color-on-accent:#ffffff;--color-accent-text:var(--accent-600);--color-background:#ffffff;--color-surface:#ffffff;--color-surface-muted:var(--ink-50);--color-surface-sunken:#f0f0f3;--color-text:var(--ink-900);--color-text-strong:var(--ink-900);--color-text-muted:var(--ink-500);--color-text-subtle:var(--ink-400);--color-border:var(--ink-100);--color-border-strong:#dcdce3;--color-focus:var(--accent-500);--color-danger:#c4102b;--color-danger-soft:#fff1f1;--color-warning:#8a5a00;--color-warning-soft:#fff8e8;--color-brand:var(--color-accent);--color-brand-soft:var(--color-accent-soft);--color-brand-text:var(--color-accent-text);--semantic-calendar-neutral:#f2f2f5;--semantic-calendar-green:#e6f2e4;--semantic-calendar-yellow:#fdf0d5;--semantic-calendar-red:#fce0e0;--semantic-calendar-prediction:#c9c9d2;--semantic-lab-in-range:var(--ink-500);--semantic-lab-out-of-range:var(--color-danger);--semantic-lab-unknown:var(--ink-400);--chart-line:var(--ink-400);--chart-area:rgba(106,106,116,0.1);--chart-point:var(--ink-500);--trend-closer:#0b7355;--trend-closer-line:#12a67b;--trend-closer-soft:#e8f7f1;--trend-further:#a8480b;--trend-further-line:#d9730d;--trend-further-soft:#fdf1e4;--trend-flat:var(--ink-400);--trend-flat-soft:var(--ink-50);--provenance-manual:#2050a8;--provenance-manual-soft:#e9effb;--provenance-rules:#5b3fa8;--provenance-rules-soft:#f0ebfb;--provenance-ai:#8a5308;--provenance-ai-soft:#fcf1e3;--provenance-document:#0b6e80;--provenance-document-soft:#e3f3f6;--provenance-import:#1b7a4b;--provenance-import-soft:#e7f6ed;--font-family:"Manrope Variable",ui-sans-serif,system-ui,"Segoe UI",sans-serif;--font-size-body:16px;--font-size-small:14px;--font-size-caption:13px;--font-size-h1:32px;--font-size-h2:22px;--font-size-h3:17px;--font-size-display:48px;--font-weight-display:300;--line-height-body:1.55;--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:600;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--tap:48px;--radius-sm:12px;--radius-md:20px;--radius-lg:28px;--radius-pill:999px;--elevation-subtle:0 1px 2px rgba(16,16,20,0.04);--elevation-card:0 1px 2px rgba(16,16,20,0.04),0 8px 24px rgba(16,16,20,0.05);--elevation-floating:0 2px 6px rgba(16,16,20,0.06),0 20px 48px rgba(16,16,20,0.12);--motion-fast:120ms;--motion-base:200ms;--ease:cubic-bezier(0.22,1,0.36,1)}:root[data-accent=apple]{--accent-50:#f2fbec;--accent-100:#e0f6d2;--accent-200:#c2eda9;--accent-300:#9ee178;--accent-400:#6fc84f;--accent-500:#54cc3c;--accent-600:#3fa82c;--accent-700:#28761d;--accent-800:#1f5c17;--color-accent:var(--accent-500);--color-on-accent:var(--ink-900);--color-accent-text:var(--accent-700);--color-focus:var(--accent-700)}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--color-background:#0d0d10;--color-surface:#16161b;--color-surface-muted:#1c1c22;--color-surface-sunken:#232329;--color-text:#f4f4f7;--color-text-strong:#ffffff;--color-text-muted:#a8a8b4;--color-text-subtle:#8e8e9a;--color-border:#26262d;--color-border-strong:#34343d;--color-accent:#ff5c8a;--color-accent-soft:#2a0f19;--color-accent-line:#3a1622;--color-on-accent:#0d0d10;--color-accent-text:#ff85ab;--color-focus:#ff5c8a;--color-danger:#ff8a80;--color-danger-soft:#2a1414;--color-warning:#e0b268;--color-warning-soft:#262013;--semantic-calendar-neutral:#22222a;--semantic-calendar-green:#1c2a1e;--semantic-calendar-yellow:#2e2617;--semantic-calendar-red:#2e1c1c;--semantic-calendar-prediction:#45454f;--semantic-lab-in-range:#a8a8b4;--semantic-lab-out-of-range:#ff8a80;--semantic-lab-unknown:#8e8e9a;--chart-line:#8e8e9a;--chart-area:rgba(168,168,180,0.12);--chart-point:#a8a8b4;--trend-closer:#3ed9a6;--trend-closer-line:#3ed9a6;--trend-closer-soft:#12271f;--trend-further:#ffa457;--trend-further-line:#ffa457;--trend-further-soft:#2a1d12;--trend-flat:#8e8e9a;--trend-flat-soft:#1c1c22;--provenance-manual:#8fb6e8;--provenance-manual-soft:#141b26;--provenance-rules:#b9a2f0;--provenance-rules-soft:#1b1728;--provenance-ai:#e0ae6a;--provenance-ai-soft:#241c10;--provenance-document:#5fc0d0;--provenance-document-soft:#0f1f23;--provenance-import:#6fcb92;--provenance-import-soft:#101f17;--elevation-card:0 1px 2px rgba(0,0,0,0.5);--elevation-floating:0 20px 48px rgba(0,0,0,0.6)}:root[data-accent=apple]{--color-accent:#7ede62;--color-on-accent:#0d0d10;--color-accent-text:#9ee178;--color-focus:#7ede62}}*,:after,:before{box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);font-synthesis-weight:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{margin:0;font-weight:var(--font-weight-bold);line-height:1.18;letter-spacing:-.025em;text-wrap:balance}h1{font-size:var(--font-size-h1);letter-spacing:-.035em}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3);letter-spacing:-.015em}p{margin:0;text-wrap:pretty}a{color:var(--color-accent-text);text-decoration-thickness:1px;text-underline-offset:3px}.display,.event-row__time,.event-row__value,.metric-card__value,table{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.display{font-size:var(--font-size-display);font-weight:var(--font-weight-display);letter-spacing:-.04em;line-height:1.05}.display__unit{font-size:var(--font-size-body);font-weight:var(--font-weight-regular);color:var(--color-text-muted);letter-spacing:0}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.skeleton{background:var(--color-surface-sunken);border-radius:var(--radius-sm);animation:skeleton-breathe 1.6s ease-in-out infinite}@keyframes skeleton-breathe{0%,to{opacity:1}50%{opacity:.5}}.skeleton--line{height:14px}.skeleton--title{height:28px}.skeleton--pill{height:var(--tap);border-radius:var(--radius-pill)}.skeleton--cell{min-height:var(--tap)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:244px minmax(0,1fr)}.shell,.shell__nav{background:var(--color-background)}.shell__nav{display:flex;flex-direction:column;gap:2px;padding:var(--space-6) var(--space-3);position:-webkit-sticky;position:sticky;top:0;height:100vh;height:100dvh;overflow-y:auto}.shell__brand{display:flex;align-items:center;gap:var(--space-2);font-size:19px;font-weight:var(--font-weight-bold);letter-spacing:-.03em;color:var(--color-text);text-decoration:none;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-6)}.shell__brand:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--color-accent);flex:none}.shell__link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-muted);text-decoration:none;font-size:15px;font-weight:var(--font-weight-medium);transition:background var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease)}.shell__link:hover{background:var(--color-surface-muted);color:var(--color-text)}.shell__link[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent-text);font-weight:var(--font-weight-bold)}.shell__main{padding:var(--space-8) var(--space-8) var(--space-12);max-width:860px;width:100%;margin:0 auto}.shell__main:focus{outline:none}.shell__footer{margin-top:auto;padding:var(--space-6) var(--space-3) 0;display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--font-size-caption);color:var(--color-text-subtle)}@media (max-width:767px){.shell{grid-template-columns:minmax(0,1fr)}.shell__nav{position:fixed;inset:auto 0 0 0;height:auto;flex-direction:row;justify-content:space-around;gap:0;padding:var(--space-1) var(--space-2);padding-bottom:max(var(--space-1),env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:color-mix(in srgb,var(--color-background) 88%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);z-index:20;overflow:visible}.shell__brand,.shell__footer{display:none}.shell__link{flex-direction:column;justify-content:center;gap:3px;min-width:var(--tap);padding:var(--space-2) var(--space-1);font-size:11px;font-weight:var(--font-weight-medium);letter-spacing:-.01em;text-align:center;line-height:1.15;background:transparent}.shell__link[aria-current=page]{background:transparent;color:var(--color-accent-text)}.shell__main{padding:var(--space-6) var(--space-4) calc(var(--tap) + var(--space-12))}}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.stack--tight{gap:var(--space-2)}.stack--loose{gap:var(--space-8)}.row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.grow{flex:1 1 auto;min-width:0}.card{background:var(--color-surface);border:none;border-radius:var(--radius-md);padding:var(--space-6);box-shadow:var(--elevation-card)}.card--primary{padding:var(--space-8) var(--space-6);border-radius:var(--radius-lg);position:relative;overflow:hidden}.card--primary:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--color-accent)}.card--quiet{background:var(--color-surface-muted);box-shadow:none}.section-title{font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);letter-spacing:.02em}.muted,.section-title,.subtle{color:var(--color-text-muted)}.subtle{font-size:var(--font-size-small)}.caption{color:var(--color-text-subtle);font-size:var(--font-size-caption)}.field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.row>.field{flex:1 1 200px}.field__label{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.field__hint{color:var(--color-text-subtle)}.field__error,.field__hint{font-size:var(--font-size-caption)}.field__error{color:var(--color-danger);font-weight:var(--font-weight-medium)}.input,.select,.textarea{width:100%;min-height:var(--tap);padding:var(--space-3) var(--space-4);font:inherit;font-size:var(--font-size-body);color:var(--color-text);background:var(--color-surface-muted);border:1px solid transparent;border-radius:var(--radius-sm);transition:background var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.input:hover,.select:hover,.textarea:hover{background:var(--color-surface-sunken)}.input:focus,.select:focus,.textarea:focus{outline:none;background:var(--color-surface);border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-soft)}.textarea{min-height:120px;resize:vertical;line-height:var(--line-height-body)}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:calc(var(--space-4) + 22px);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1.5 1.75 6 6.25l4.5-4.5' stroke='%235f5f6a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;background-size:12px 8px;text-overflow:ellipsis;accent-color:var(--color-accent)}.select option{background:var(--color-surface);color:var(--color-text);padding:var(--space-2) var(--space-3)}.select option:checked{background:var(--color-accent-soft);color:var(--color-accent-text);font-weight:var(--font-weight-medium)}@media (prefers-color-scheme:dark){.select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1.5 1.75 6 6.25l4.5-4.5' stroke='%23a8a8b4' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--color-danger)}.checkbox{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap)}.checkbox input,input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:var(--color-accent);flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-6);font:inherit;font-size:15px;font-weight:var(--font-weight-bold);letter-spacing:-.01em;color:var(--color-on-accent);background:var(--color-accent);border:1px solid transparent;border-radius:var(--radius-pill);cursor:pointer;text-decoration:none;transition:background var(--motion-fast) var(--ease),transform var(--motion-fast) var(--ease),box-shadow var(--motion-base) var(--ease)}.button:hover:not(:disabled){background:var(--accent-600);box-shadow:0 6px 18px color-mix(in srgb,var(--color-accent) 26%,transparent)}:root[data-accent=apple] .button:hover:not(:disabled){background:var(--accent-400)}.button:active:not(:disabled){transform:scale(.985)}.button:disabled{opacity:.4;cursor:not-allowed}.button--secondary{color:var(--color-text);background:var(--color-surface);border-color:var(--color-border-strong)}.button--secondary:hover:not(:disabled){background:var(--color-surface-muted);box-shadow:none}.button--ghost{color:var(--color-text-muted);background:transparent;border-color:transparent;padding:0 var(--space-4)}.button--ghost:hover:not(:disabled){background:var(--color-surface-muted);color:var(--color-text);box-shadow:none}.button--danger{color:var(--color-danger);background:transparent;border-color:currentColor}.button--danger:hover:not(:disabled){background:var(--color-danger-soft);box-shadow:none}.button--full{width:100%}.quick-action{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);text-decoration:none;font-size:var(--font-size-small);font-weight:var(--font-weight-medium);cursor:pointer;transition:border-color var(--motion-fast) var(--ease),background var(--motion-fast) var(--ease)}.quick-action:hover{border-color:var(--color-accent);color:var(--color-accent-text)}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--color-surface-muted);border:none;color:var(--color-text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);white-space:nowrap}.badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.badge--manual{color:var(--provenance-manual);background:var(--provenance-manual-soft)}.badge--rules{color:var(--provenance-rules);background:var(--provenance-rules-soft)}.badge--document{color:var(--provenance-document);background:var(--provenance-document-soft)}.badge--import{color:var(--provenance-import);background:var(--provenance-import-soft)}.badge--ai{color:var(--provenance-ai);background:var(--provenance-ai-soft)}.badge--unreviewed{background:transparent;box-shadow:inset 0 0 0 1px var(--color-border-strong);color:var(--color-text-subtle)}.badge--unreviewed .badge__dot{background:transparent;box-shadow:inset 0 0 0 1.5px currentColor}.badge--reviewed{color:var(--ink-700);background:var(--color-surface-muted);font-weight:var(--font-weight-medium)}.event-row{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.event-row:last-child{border-bottom:none;padding-bottom:0}.event-row__time{color:var(--color-text-subtle);font-size:var(--font-size-small);width:52px;flex:none}.event-row__time--recorded{color:var(--color-text-muted);font-style:italic}.event-row__body{display:flex;align-items:baseline;gap:var(--space-2);flex:1 1 auto;min-width:0;flex-wrap:wrap}.event-row__name{color:var(--color-text-muted)}.event-row__value{font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.event-row__badges{display:flex;gap:var(--space-2);flex:none;flex-wrap:wrap;justify-content:flex-end}@media (max-width:599px){.event-row{flex-wrap:wrap;row-gap:var(--space-2)}.event-row__badges{flex-basis:100%;justify-content:flex-start}.event-row__badges .badge{font-size:var(--font-size-caption);padding:2px var(--space-2)}}.hero{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8) var(--space-6) var(--space-6);border-radius:var(--radius-lg);background:linear-gradient(168deg,var(--color-accent-soft) 0,var(--color-surface) 62%);box-shadow:var(--elevation-card)}.hero__glow{position:absolute;top:-140px;right:-80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,var(--color-accent-line) 0,transparent 70%);opacity:.7;z-index:-1;pointer-events:none}.hero__head{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.hero__badge{display:inline-flex;align-items:center;gap:6px;padding:5px var(--space-3);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);letter-spacing:.01em}.hero__badge--off{background:var(--color-surface);color:var(--color-text);box-shadow:inset 0 0 0 1.5px var(--color-accent-line)}.hero__badge--off svg{color:var(--color-accent)}.hero__title{margin:0;font-size:clamp(var(--font-size-h2),4.4vw,var(--font-size-h1));letter-spacing:-.02em;line-height:1.15}.hero__lead{margin:0;max-width:58ch;color:var(--color-text-muted)}.hero__field,.hero__lead{font-size:var(--font-size-body)}.hero__field{min-height:108px;padding:var(--space-4);line-height:var(--line-height-body);background:var(--color-surface);border-radius:var(--radius-sm);resize:vertical}.hero__examples{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.hero__examples-label{color:var(--color-text-subtle);font-size:var(--font-size-caption)}.hero__example{display:inline-flex;align-items:center;min-height:var(--tap);border:1px dashed var(--color-border-strong);background:transparent;color:var(--color-text-muted);border-radius:var(--radius-pill);padding:0 var(--space-4);font:inherit;font-size:var(--font-size-small);cursor:pointer;transition:border-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease)}.hero__example:hover{border-color:var(--color-accent);color:var(--color-accent-text)}.hero__save{gap:var(--space-2)}.hero__steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin:var(--space-2) 0 0;padding:var(--space-4) 0 0;border-top:1px solid var(--color-accent-line);list-style:none}.hero__step{display:flex;align-items:flex-start;gap:var(--space-3)}.hero__step-number{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--color-accent);color:var(--color-on-accent);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hero__step-body{display:flex;flex-direction:column;gap:2px;font-size:var(--font-size-small)}.hero__step-hint{color:var(--color-text-muted)}.hero__value{margin:0;font-size:var(--font-size-small);color:var(--color-text)}.hero__footnote{margin:0;font-size:var(--font-size-caption);color:var(--color-text-muted)}@media (max-width:599px){.hero{padding:var(--space-6) var(--space-4)}}.day-nav{display:flex;align-items:center;gap:var(--space-2)}.day-nav__step{flex:none;padding-left:var(--space-3);padding-right:var(--space-3)}.day-nav__date{flex:1 1 auto;min-width:0;margin:0;text-align:center;font-size:clamp(var(--font-size-h3),5.2vw,var(--font-size-h1))}.day-group{display:flex;flex-direction:column;gap:var(--space-1)}.day-group__title{position:-webkit-sticky;position:sticky;top:0;z-index:1;padding:var(--space-3) 0;background:var(--color-background);font-size:var(--font-size-small);font-weight:var(--font-weight-bold);letter-spacing:-.01em;color:var(--color-text-muted)}.metric-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4);border:none;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--elevation-card);min-height:104px}.metric-card__value{font-size:26px;font-weight:var(--font-weight-display);letter-spacing:-.035em;line-height:1.2}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:var(--space-3)}.chart-grid,.grid-cards{display:grid;gap:var(--space-3)}.chart-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:var(--space-3)}.chart-grid h2{font-size:var(--font-size-h3);margin:0}.chart-grid .display{font-size:var(--font-size-h1)}.notice{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-muted);border:none;color:var(--color-text);font-size:var(--font-size-small)}.notice--error{background:var(--color-danger-soft);color:var(--color-danger);font-weight:var(--font-weight-medium)}.auth-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:var(--space-6) var(--space-4);background:var(--color-background)}.auth-card{width:100%;max-width:400px}.form-page{max-width:760px;margin:0 auto;padding:var(--space-8) var(--space-4) var(--space-12)}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:5px;gap:5px}.calendar__row{display:contents}.calendar__weekday{padding:var(--space-1) 0;text-align:center;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-text-subtle)}.day-cell{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:var(--tap);padding:var(--space-2) 2px;border-radius:var(--radius-sm);border:1.5px solid transparent;background:var(--semantic-calendar-neutral);color:var(--color-text);text-decoration:none;font-size:var(--font-size-small);overflow:hidden;transition:transform var(--motion-fast) var(--ease)}.day-cell:hover{transform:scale(1.04)}.day-cell--outside{opacity:.6}.day-cell--today{border-color:var(--color-accent);font-weight:var(--font-weight-bold)}.day-cell--green{background:var(--semantic-calendar-green)}.day-cell--yellow{background:var(--semantic-calendar-yellow)}.day-cell--red{background:var(--semantic-calendar-red)}.day-cell__number{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.day-cell__stripe{position:absolute;left:0;right:0;bottom:0;height:4px;background:#c4102b}.day-cell__markers{display:flex;gap:3px;flex-wrap:wrap;justify-content:center}.marker{width:5px;height:5px;border-radius:50%;background:var(--color-text-subtle)}.marker--menstruation{background:#c4102b}.marker--spotting{background:#e08b8b}.marker--sexual{background:#7a5ba8}.marker--symptom{background:#c08430}.marker--measurement{background:#2f6b8f}.marker--medication{background:#1f6b5e}.marker--note{background:var(--color-text-subtle)}.marker--prediction{background:transparent;border:1px dashed var(--semantic-calendar-prediction)}.day-cell__conflict{position:absolute;top:2px;right:4px;font-size:10px;color:var(--color-warning)}.legend{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--font-size-caption);color:var(--color-text-muted)}.legend__item{display:inline-flex;align-items:center;gap:var(--space-1)}.legend__swatch{width:12px;height:12px;border-radius:4px;flex:none}.legend__swatch--neutral{background:var(--semantic-calendar-neutral)}.legend__swatch--green{background:var(--semantic-calendar-green)}.legend__swatch--yellow{background:var(--semantic-calendar-yellow)}.legend__swatch--red{background:var(--semantic-calendar-red)}.legend__swatch--prediction{background:repeating-linear-gradient(45deg,var(--semantic-calendar-prediction) 0 3px,transparent 3px 6px)}.chip-group{display:flex;flex-wrap:wrap}.chip,.chip-group{gap:var(--space-2)}.chip{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;font-size:var(--font-size-small);-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:border-color var(--motion-fast) var(--ease),background var(--motion-fast) var(--ease)}.chip:hover{border-color:var(--color-border-strong)}.chip:has(input:checked){background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent-text);font-weight:var(--font-weight-medium)}.chip input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.chip{position:relative}.chip:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}table{width:100%;border-collapse:collapse;font-size:var(--font-size-small)}th{font-weight:var(--font-weight-medium);color:var(--color-text-subtle);font-size:var(--font-size-caption)}td,th{padding:var(--space-3) var(--space-3) var(--space-3) 0;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:baseline}tbody tr:last-child td,tbody tr:last-child th{border-bottom:none}details.more>summary{cursor:pointer;min-height:var(--tap);display:flex;align-items:center;color:var(--color-accent-text);font-size:var(--font-size-small);font-weight:var(--font-weight-medium)}blockquote{border-left:2px solid var(--color-accent-line);padding-left:var(--space-4);color:var(--color-text-muted)}code{font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,monospace;font-size:.92em}.present{min-height:100vh;min-height:100dvh;background:var(--color-background);padding:var(--space-6) var(--space-4)}.present__bar{display:flex;justify-content:flex-end;gap:var(--space-2);margin-bottom:var(--space-6)}.present__page{max-width:52rem;margin:0 auto}@media print{.present__bar,.shell__nav,.skip-link{display:none}.present,.present__page,.shell__main{padding:0;max-width:none}body{background:#fff;color:#000}.card{page-break-inside:avoid;break-inside:avoid;box-shadow:none;border:1px solid #ddd}thead{display:table-header-group}tr{page-break-inside:avoid;break-inside:avoid}}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:var(--space-3) var(--space-4);background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-focus);border-radius:0 0 var(--radius-sm) 0;font-weight:var(--font-weight-medium)}.skip-link:focus{left:0}.trend{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-pill);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);white-space:nowrap;color:var(--trend-flat);background:var(--trend-flat-soft)}.trend--closer{color:var(--trend-closer);background:var(--trend-closer-soft)}.trend--further{color:var(--trend-further);background:var(--trend-further-soft)}.trend__arrow{font-size:11px;line-height:1}.empty-routes{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.empty-route{display:flex;flex-direction:column;gap:2px;min-height:var(--tap);justify-content:center;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-text);text-decoration:none;transition:background var(--motion-fast) var(--ease)}.empty-route:hover{background:var(--color-surface-sunken)}.empty-route__label{font-weight:var(--font-weight-medium);color:var(--color-accent-text)}.empty-route__hint{font-size:var(--font-size-caption);color:var(--color-text-muted)}.summary{display:flex;flex-direction:column;gap:var(--space-1)}.card--glance{padding:var(--space-3) var(--space-4)}.summary__line{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;color:inherit;text-decoration:none;border-bottom:1px solid var(--color-border)}.summary__line:last-child{border-bottom:none}.summary__line:focus-visible .summary__value,.summary__line:hover .summary__value{text-decoration:underline}.summary__label{flex:0 0 auto;min-width:9rem;color:var(--color-text-muted);font-size:var(--font-size-small)}.summary__value{flex:1 1 auto;font-weight:var(--font-weight-medium)}.summary__value .marker{display:inline-block;vertical-align:middle;margin-right:2px}.summary__due{color:var(--color-text-muted);font-weight:400}.summary__due--past{color:var(--color-danger);font-weight:400}.summary__metrics{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);padding-top:var(--space-2)}.summary__metric{display:flex;flex-direction:column;gap:2px;color:inherit;text-decoration:none}.summary__metric-name{color:var(--color-text-muted);font-size:var(--font-size-small)}.summary__metric-value{font-size:20px;font-weight:var(--font-weight-display);line-height:1.1}.summary__metric-date{color:var(--color-text-muted);font-size:12px}@media (max-width:520px){.summary__line{flex-direction:column;gap:2px}.summary__label{min-width:0}}.greeting{gap:var(--space-4)}.greeting,.greeting__head{display:flex;flex-direction:column}.greeting__head{gap:2px}.greeting__title{margin:0;font-size:clamp(26px,4.6vw,34px);line-height:1.15;letter-spacing:-.02em}.greeting__date{margin:0;color:var(--color-text-muted);font-size:var(--font-size-small);text-transform:lowercase}.week{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:var(--space-1);gap:var(--space-1);margin:0;padding:0;list-style:none}.week__day{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2) 2px var(--space-2);border-radius:var(--radius-sm);color:inherit;text-decoration:none;background:var(--color-surface);box-shadow:var(--elevation-card);transition:transform .12s ease,box-shadow .12s ease}.week__day:focus-visible,.week__day:hover{transform:translateY(-1px);box-shadow:var(--elevation-floating)}.week__day--quiet{background:var(--color-surface-muted);box-shadow:none}.week__day--yellow{background:var(--semantic-calendar-yellow);box-shadow:none}.week__day--green{background:var(--semantic-calendar-green);box-shadow:none}.week__day--red{background:var(--semantic-calendar-red);box-shadow:none}.week__day--today{box-shadow:inset 0 0 0 1.5px var(--color-accent)}.week__day--today:not([class*=week__day--yellow]):not([class*=week__day--green]):not([class*=week__day--red]){background:var(--color-accent-soft)}.week__day--shown:not(.week__day--today){box-shadow:inset 0 0 0 1.5px var(--color-border-strong)}.week__weekday{color:var(--color-text-muted);font-size:11px;text-transform:lowercase}.week__number{font-size:17px;font-weight:var(--font-weight-display);line-height:1}.week__marks{display:flex;gap:3px;min-height:5px}@media (prefers-reduced-motion:reduce){.week__day{transition:none}.week__day:focus-visible,.week__day:hover{transform:none}}.library__group>summary{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;cursor:pointer;color:var(--color-text-muted);font-size:var(--font-size-small);list-style:none}.library__group>summary::-webkit-details-marker{display:none}.library__group>summary:before{content:"›";display:inline-block;transition:transform .12s ease;color:var(--color-text-subtle)}.library__group[open]>summary:before{transform:rotate(90deg)}.library__count{margin-left:auto;color:var(--color-text-subtle);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.library__group>summary:before{transition:none}}.prep-list{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:var(--space-2);color:var(--color-text)}.prep-list--plain{list-style:none;padding-left:0}.shell__profile{display:inline-flex;align-items:baseline;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-pill);text-decoration:none;color:var(--color-text);font-size:var(--font-size-small)}.shell__profile:hover{background:var(--color-surface-muted)}.shell__profile-name{font-weight:var(--font-weight-medium)}.shell__profile-change{color:var(--color-text-subtle);font-size:var(--font-size-caption)}.profiles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.profiles__row{flex-wrap:wrap}.profiles__name,.profiles__row{display:flex;align-items:center;gap:var(--space-2)}.profiles__name{flex:1 1 auto}.shell__switcher{margin-bottom:var(--space-4)}.shell__switcher>summary{cursor:pointer;list-style:none;width:-moz-fit-content;width:fit-content}.shell__switcher>summary::-webkit-details-marker{display:none}.shell__switcher-list{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.shell__switcher-list .button{display:inline-flex;align-items:center;gap:var(--space-2)}.summary__prepare{font-size:var(--font-size-caption);color:var(--color-accent-text);white-space:nowrap}