:root{--nav-height: 72px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--sunset: #E8603C;--sunset-dim: #C84A2A;--sunset-hover: #F47552;--sunset-glow: rgba(232, 96, 60, .15);--sunset-intense: rgba(232, 96, 60, .4);--sage-deep: #3A4D35;--sage-moss: #5E7B5C;--sage-leaf: #7A9A6E;--sage-highlight: #A8C491;--marigold: #E8C547;--bg: #14120F;--bg-pure: #0F0D0A;--surface: #1E1A15;--surface-alt: #252019;--surface-elevated: #2A2520;--text: #EDE4D3;--text-secondary: #B8A88F;--text-light: #7A6B58;--border: #3D3530;--border-light: #2E2822;--cream-bg: #F5EFE4;--cream-text: #2C1F14;--cream-secondary: #5C4A3A;--cream-muted: #8A7A66;--cream-border: #C9B99A;--font-heading: "Fraunces", "Georgia", serif;--font-body: "General Sans", "Space Grotesk", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, monospace;--hero-size: clamp(2.8rem, 6.5vw + .8rem, 5.6rem);--h1-size: clamp(2.5rem, 5vw, 4.5rem);--h2-size: clamp(1.75rem, 3.5vw, 3rem);--h3-size: clamp(1.25rem, 2vw, 1.75rem);--body-size: 1.0625rem;--small-size: .875rem;--caption-size: .75rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--space-4xl: 9rem;--section-pad: clamp(5rem, 10vw, 8rem);--spring: cubic-bezier(.22, 1, .36, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--duration: .6s;color-scheme:dark}[data-theme=light]{--bg: #F5EFE4;--bg-pure: #EDE4D3;--surface: #E2D6BE;--surface-alt: #D8C9A5;--surface-elevated: #CFBFA0;--text: #2C1F14;--text-secondary: #5C4A3A;--text-light: #8A7A66;--border: #C9B99A;--border-light: #D8C9A5;--cream-bg: #14120F;--cream-text: #EDE4D3;--cream-secondary: #B8A88F;--cream-muted: #7A6B58;--cream-border: #3D3530;color-scheme:light}.eyebrow{font-family:var(--font-mono);font-size:var(--caption-size);letter-spacing:.12em;text-transform:uppercase;color:var(--text-light);margin:0}.shippie-icon{border-radius:0;aspect-ratio:1;flex-shrink:0}:focus-visible{outline:2px solid var(--sunset);outline-offset:2px}.skip-link{position:absolute;top:0;left:0;z-index:10000;padding:var(--space-md, 1rem);background:var(--sunset);color:var(--bg-pure, #14120F);font-family:var(--font-body);font-weight:700;text-decoration:none;transform:translateY(-100%);transition:transform .1s ease}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);outline:2px solid var(--text);outline-offset:-4px}:root{color-scheme:dark;--bg: #14120F;--fg: #EDE4D3;--muted: #B8A88F;--line: #3D3530;--accent: #5E7B5C;--gold: #E8C547}*{box-sizing:border-box}html,body,#root{min-height:100vh;margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body)}main{width:min(100%,520px);margin:0 auto;padding:24px 20px 40px}header{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px 16px;border-bottom:1px solid var(--line);padding-bottom:18px}.eyebrow{grid-column:1 / -1;margin:0;color:var(--gold)}h1{margin:0;font-family:var(--font-heading);font-size:40px;font-weight:650;line-height:.98;letter-spacing:0}header p:not(.eyebrow){margin:8px 0 0;color:var(--muted);font-size:14px}button{min-height:38px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--fg);font:inherit;cursor:pointer}button.primary{border-color:var(--accent);background:var(--accent);color:var(--fg)}.modes{display:grid;grid-template-columns:repeat(3,1fr);margin:20px 0;border:1px solid var(--line)}.modes button{border:0;border-right:1px solid var(--line);text-transform:capitalize}.modes button:last-child{border-right:0}.modes .active{color:var(--gold);background:#e8c54714}.ritual{display:grid;gap:18px;justify-items:center;padding:20px 0 24px}.ring{--progress: 0;width:min(72vw,280px);aspect-ratio:1;display:grid;place-items:center;background:conic-gradient(var(--gold) calc(var(--progress) * 1turn),var(--surface-alt) 0),var(--surface-alt);border:1px solid var(--line)}.ring>div{width:74%;height:74%;display:grid;place-items:center;align-content:center;background:var(--bg);border:1px solid var(--line)}.ring strong{font-size:44px;line-height:1;font-variant-numeric:tabular-nums}.ring small{margin-top:8px;color:var(--muted);text-transform:uppercase;font-family:var(--font-mono);font-size:11px}.actions{display:flex;gap:8px}.actions button,.mood-panel button{padding:0 16px}.mood-panel{width:100%;display:grid;gap:12px}label{display:grid;gap:8px;color:var(--muted);font-size:13px}input[type=range]{width:100%;accent-color:var(--gold)}textarea{width:100%;border-radius:0;border:1px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;padding:10px 12px;resize:vertical}.summary{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin:8px 0 22px}.summary div{padding:12px;border-right:1px solid var(--line)}.summary div:last-child{border-right:0}.summary strong{display:block;color:var(--gold);font-size:24px}.summary span{color:var(--muted);font-size:12px}h2{margin:0 0 10px;color:var(--muted);font-size:12px;text-transform:uppercase;font-family:var(--font-mono)}ul{list-style:none;display:grid;gap:0;padding:0;margin:0;border-top:1px solid var(--line)}li{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}li strong{text-transform:capitalize}li small,.empty{color:var(--muted)}@media(max-width:430px){header{grid-template-columns:1fr}header button{justify-self:start;padding:0 12px}.summary{grid-template-columns:repeat(2,1fr)}.summary div:nth-child(2){border-right:0}.summary div:nth-child(-n+2){border-bottom:1px solid var(--line)}}:root{--font-display: var(--font-heading, "Fraunces", "Iowan Old Style", Georgia, serif)}.eyebrow{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.quiet-numeric{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.018em;line-height:.95;font-size:clamp(2.8rem,9vw,5.6rem);color:var(--gold)}.quiet-numeric .unit{font-size:.45em;font-weight:600;color:var(--muted);vertical-align:.35em;margin-left:.2em}.session-code{font-family:var(--font-mono);font-style:italic;font-weight:500;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.page-hero h1{font-family:var(--font-display);font-weight:700;font-size:clamp(2.4rem,7vw,4.7rem);line-height:.95;letter-spacing:-.022em}.page-hero h1 em{font-style:italic;font-weight:600;color:var(--gold)}
