@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Space+Mono:wght@400;700&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--cs-bg:#0a0b10;--cs-bg-surface:#111318;--cs-bg-overlay:rgba(255,255,255,0.04);--cs-bg-card:#111111;--cs-bg-code:#0d0d0d;--cs-text:#f0ede6;--cs-text-bright:#f0f0f0;--cs-text-prose:#d4d4d4;--cs-muted:#8a8680;--cs-dim:#44413b;--cs-border:rgba(255,255,255,0.10);--cs-border-dim:rgba(255,255,255,0.05);--cs-border-data:#222222;--cs-border-dark:#1a1a1a;--cs-cyan:#00D4FF;--cs-coral:#FF5757;--cs-amber:#E8E048;--cs-purple:#B388FF;--cs-lime:#06D6A0;--cs-link:#007BFF;--cs-accent-0:var(--cs-cyan);--cs-accent-1:var(--cs-coral);--cs-accent-2:var(--cs-amber);--cs-accent-3:var(--cs-purple);--cs-accent-4:var(--cs-lime);--cs-data-warm:#E8594F;--cs-data-cold:#4A90D9;--cs-data-gold:#F5A623;--cs-data-green:#69f0ae;--cs-data-gradient:linear-gradient(90deg,#E8594F,#F5A623,#4A90D9);--cs-font-sans:"Inter",system-ui,sans-serif;--cs-font-serif:"Playfair Display",Georgia,serif;--cs-font-mono:"Space Mono","SF Mono","Fira Code","Consolas",monospace;--cs-font-prose:"Georgia","Times New Roman",serif;--cs-text-xs:0.625rem;--cs-text-sm:0.75rem;--cs-text-base:0.9375rem;--cs-text-md:1rem;--cs-text-lg:1.125rem;--cs-text-xl:1.25rem;--cs-text-2xl:1.5rem;--cs-text-3xl:1.875rem;--cs-text-4xl:2.25rem;--cs-text-5xl:3rem;--cs-text-data-xs:0.65rem;--cs-text-data-sm:0.72rem;--cs-text-data-base:0.82rem;--cs-text-data-md:0.9rem;--cs-text-data-lg:1rem;--cs-text-essay-body:19px;--cs-text-essay-title:2.8rem;--cs-text-essay-sub:1.15rem;--cs-text-essay-head:0.75rem;--cs-text-datahdr:2.2rem;--cs-leading-tight:1.2;--cs-leading-snug:1.4;--cs-leading-base:1.6;--cs-leading-relaxed:1.75;--cs-tracking-tight:-0.02em;--cs-tracking-normal:0;--cs-tracking-wide:0.05em;--cs-tracking-widest:0.15em;--cs-tracking-ultra:0.3em;--cs-space-1:0.25rem;--cs-space-2:0.5rem;--cs-space-3:0.75rem;--cs-space-4:1rem;--cs-space-6:1.5rem;--cs-space-8:2rem;--cs-space-12:3rem;--cs-space-16:4rem;--cs-space-24:6rem;--cs-radius-sm:0.25rem;--cs-radius-md:0.5rem;--cs-radius-lg:1rem;--cs-radius-xl:1.5rem;--cs-radius-2xl:2rem;--cs-radius-3xl:3rem;--cs-radius-full:9999px;--cs-shadow-sm:0 1px 4px rgba(0,0,0,0.4);--cs-shadow-md:0 4px 20px rgba(0,0,0,0.5);--cs-shadow-xl:0 20px 60px rgba(0,0,0,0.6);--cs-shadow-glow-cyan:0 0 24px rgba(0,212,255,0.2);--cs-shadow-glow-coral:0 0 24px rgba(255,87,87,0.2);--cs-shadow-glow-violet:0 0 24px rgba(179,136,255,0.2);--cs-shadow-tooltip:0 4px 20px rgba(0,0,0,0.6);--cs-shadow-modal:0 8px 40px rgba(0,0,0,0.8)}.cs-body{font-family:var(--cs-font-sans);background-color:var(--cs-bg);color:var(--cs-text);font-size:var(--cs-text-base);line-height:var(--cs-leading-base);overflow-x:hidden}.cs-h1{font-size:var(--cs-text-5xl);text-transform:uppercase;text-align:center}.cs-h1,.cs-h2{font-family:var(--cs-font-sans);font-weight:400;letter-spacing:var(--cs-tracking-normal);color:var(--cs-text)}.cs-h2{font-size:var(--cs-text-2xl)}.cs-h3{font-size:var(--cs-text-lg);font-weight:700;color:var(--cs-text)}.cs-h3,.cs-h4-muted{font-family:var(--cs-font-sans)}.cs-h4-muted{font-size:var(--cs-text-sm);font-weight:600;color:var(--cs-muted);text-transform:uppercase;letter-spacing:var(--cs-tracking-widest)}.cs-section-header{font-size:var(--cs-text-lg);font-weight:700;color:var(--cs-text);text-transform:lowercase;letter-spacing:var(--cs-tracking-wide)}.cs-kicker,.cs-section-header{font-family:var(--cs-font-sans)}.cs-kicker{font-size:var(--cs-text-xs);font-weight:900;letter-spacing:var(--cs-tracking-widest);text-transform:uppercase}.cs-body-text{font-size:var(--cs-text-base);line-height:var(--cs-leading-base);color:var(--cs-text)}.cs-body-text,.cs-description{font-family:var(--cs-font-sans)}.cs-description{font-size:var(--cs-text-xs);font-style:italic;color:var(--cs-muted);line-height:var(--cs-leading-relaxed)}.cs-display{font-weight:700;letter-spacing:var(--cs-tracking-tight);line-height:var(--cs-leading-tight)}.cs-display,.cs-display-italic{font-family:var(--cs-font-serif)}.cs-display-italic{font-style:italic;font-weight:400}.cs-mono{font-family:var(--cs-font-mono);font-size:var(--cs-text-base)}.cs-link{color:var(--cs-link);text-decoration:none}.cs-link:hover{text-decoration:underline}.cs-bracket-cta{color:var(--cs-link);font-family:var(--cs-font-sans);font-size:var(--cs-text-base)}.cs-bracket-cta:hover{text-decoration:underline}.cs-dash{color:var(--cs-dim);-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.cs-wip-tag{color:var(--cs-amber);font-size:var(--cs-text-sm);margin-left:.5rem}.mode-data{background:var(--cs-bg);color:var(--cs-text);font-size:15px;line-height:1.6}.cs-datahdr-title,.mode-data{font-family:var(--cs-font-mono)}.cs-datahdr-title{font-size:var(--cs-text-datahdr);font-weight:700;letter-spacing:-.5px;background:var(--cs-data-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cs-data-section-head{font-size:var(--cs-text-essay-head);letter-spacing:.15em;color:var(--cs-data-warm);padding-bottom:.5rem;border-bottom:1px solid var(--cs-border-dark)}.cs-data-label,.cs-data-section-head{font-family:var(--cs-font-mono);font-weight:600;text-transform:uppercase}.cs-data-label{font-size:var(--cs-text-data-xs);letter-spacing:.08em;color:var(--cs-muted)}.cs-datum-warm{color:var(--cs-data-warm);background:rgba(232,89,79,.1)}.cs-datum-cold,.cs-datum-warm{padding:.1em .3em;border-radius:3px;font-weight:600;font-family:var(--cs-font-mono);font-size:.85em}.cs-datum-cold{color:var(--cs-data-cold);background:rgba(74,144,217,.1)}.cs-datum-neutral{color:var(--cs-data-gold);background:rgba(245,166,35,.1)}.cs-datum-green,.cs-datum-neutral{padding:.1em .3em;border-radius:3px;font-weight:600;font-family:var(--cs-font-mono);font-size:.85em}.cs-datum-green{color:var(--cs-data-green);background:rgba(105,240,174,.08)}.cs-stat-card{background:var(--cs-bg-card);border:1px solid var(--cs-border-data);border-radius:var(--cs-radius-md);padding:1.2rem}.cs-stat-card .label{color:var(--cs-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem;font-family:var(--cs-font-mono)}.cs-stat-card .value{font-size:1.8rem;font-weight:700;line-height:1.2;font-family:var(--cs-font-mono)}.cs-code{background:var(--cs-bg-code);border:1px solid var(--cs-border-dark);border-radius:var(--cs-radius-md);padding:1.2rem 1.5rem;line-height:1.7;color:#c8c8c8;overflow-x:auto}.cs-code,.cs-data-tab{font-family:var(--cs-font-mono);font-size:var(--cs-text-data-base)}.cs-data-tab{font-weight:600;letter-spacing:.03em;color:var(--cs-muted);background:transparent;border:none;border-bottom:2px solid transparent;padding:.75rem 1.2rem;cursor:pointer;transition:color .2s,border-color .2s}.cs-data-tab:hover{color:var(--cs-text)}.cs-data-tab.active{color:var(--cs-data-warm);border-bottom-color:var(--cs-data-warm)}.cs-data-toggle{background:var(--cs-bg-card);border:1px solid #333;color:var(--cs-muted);padding:.35rem .8rem;border-radius:var(--cs-radius-sm);font-family:var(--cs-font-mono);font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s}.cs-data-toggle:hover{border-color:#555;color:#ccc}.cs-data-toggle.active{background:var(--cs-data-warm);border-color:var(--cs-data-warm);color:#fff}.cs-data-cta{font-family:var(--cs-font-mono);font-size:.82rem;color:var(--cs-data-warm);text-decoration:none;letter-spacing:.05em;padding:.7rem 1.6rem;border:1px solid var(--cs-data-warm);border-radius:var(--cs-radius-sm);transition:all .2s;display:inline-block;background:transparent;cursor:pointer}.cs-data-cta:hover{background:var(--cs-data-warm);color:#000}.cs-essay-body{font-size:var(--cs-text-essay-body);line-height:1.75;color:var(--cs-text-prose)}.cs-essay-body,.cs-essay-title{font-family:var(--cs-font-prose)}.cs-essay-title{font-size:var(--cs-text-essay-title);font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--cs-text-bright)}.cs-essay-subtitle{font-family:var(--cs-font-prose);font-size:var(--cs-text-essay-sub);font-style:italic;color:var(--cs-muted)}.cs-essay-byline{font-family:var(--cs-font-mono);font-size:var(--cs-text-data-sm);letter-spacing:.05em;color:#666}:root{--app-bg:#f7eddd;--app-bg-surface:#fffaf0;--app-bg-card:#f1e5d1;--app-bg-scrim:rgba(42,33,26,0.32);--app-ink:#2a211a;--app-ink-bright:#150f0a;--app-muted:#857057;--app-dim:#e2d2b8;--app-border:#dcc9aa;--app-accent-0:#0d7a84;--app-accent-1:#cf4429;--app-accent-2:#ad7614;--app-accent-3:#6a49ae;--app-accent-4:#3a8757;--app-water:#e3ded0;--app-land:#fdf8ec;--app-coast:#c9b596;--app-metro:#e8c89a;--app-today:#c2571e;--app-good:#3a8757;--app-warn:#c2571e}*{box-sizing:border-box}body,html{margin:0;padding:0;-webkit-font-smoothing:antialiased}body,body.mode-data,html{background:var(--app-bg);color:var(--app-ink)}body.mode-data{font-family:var(--cs-font-mono);font-size:var(--cs-text-data-base);line-height:var(--cs-leading-base);min-height:100dvh;position:relative}.cs-shell{max-width:780px;margin:0 auto;padding:var(--cs-space-4) var(--cs-space-4) var(--cs-space-16)}.cs-title-pop{display:inline-block;margin:var(--cs-space-2) 0 var(--cs-space-4);font-size:var(--cs-text-xl);font-weight:700;letter-spacing:var(--cs-tracking-wide);text-transform:lowercase;background:linear-gradient(90deg,var(--app-accent-1),var(--app-accent-2),var(--app-accent-0));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.cs-nav{display:flex;gap:var(--cs-space-2);align-items:center;margin-bottom:var(--cs-space-4)}.cs-nav-pill{padding:var(--cs-space-2) var(--cs-space-4);border:1.5px solid var(--app-border);border-radius:var(--cs-radius-full);color:var(--app-muted);text-decoration:none;font-size:var(--cs-text-data-sm);letter-spacing:var(--cs-tracking-wide);transition:transform .15s,background .15s,color .15s}.cs-nav-pill:active{transform:scale(.96)}.cs-nav-pill.active{color:var(--app-bg-surface);background:var(--app-accent-1);border-color:var(--app-accent-1)}.cs-nav-pill.active.purple{background:var(--app-accent-3);border-color:var(--app-accent-3)}.cs-nav-pill.active.lime{background:var(--app-accent-4);border-color:var(--app-accent-4)}.cs-nav-pill.active.teal{background:var(--app-accent-0);border-color:var(--app-accent-0)}.cs-nav{flex-wrap:wrap}.cs-login-hero{position:relative;overflow:hidden;margin-top:var(--cs-space-8);padding:var(--cs-space-12) var(--cs-space-6) var(--cs-space-8);border-radius:var(--cs-radius-2xl);background:linear-gradient(170deg,color-mix(in srgb,var(--app-accent-2) 18%,var(--app-bg-surface)),var(--app-bg-surface) 65%);border:1.5px solid var(--app-border)}.cs-login-title{position:relative;margin:0;font-size:var(--cs-text-3xl);font-weight:700;letter-spacing:var(--cs-tracking-tight);text-transform:lowercase;background:linear-gradient(90deg,var(--app-accent-1),var(--app-accent-2),var(--app-accent-0));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.cs-login-sub{position:relative;margin:var(--cs-space-2) 0 0}.cs-welcome{position:relative;overflow:hidden;margin-top:var(--cs-space-4);padding:var(--cs-space-8) var(--cs-space-6) var(--cs-space-6);border:1.5px solid var(--app-border);border-radius:var(--cs-radius-2xl);background:linear-gradient(170deg,color-mix(in srgb,var(--app-accent-2) 16%,var(--app-bg-surface)),var(--app-bg-surface) 60%)}.cs-welcome-sun{position:absolute;top:-70px;right:-30px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--app-accent-1) 50%,transparent),color-mix(in srgb,var(--app-accent-2) 30%,transparent) 55%,transparent 72%);pointer-events:none}.cs-welcome-title{position:relative;margin:0 0 var(--cs-space-2);font-size:var(--cs-text-xl);font-weight:700;letter-spacing:var(--cs-tracking-wide);text-transform:lowercase;color:var(--app-accent-1)}.cs-welcome-note{position:relative;margin:0 0 var(--cs-space-6);max-width:46ch;font-size:var(--cs-text-data-md);line-height:var(--cs-leading-relaxed);color:var(--app-ink);white-space:pre-wrap}.cs-nav-spacer{flex:1 1}.cs-panel{border:1.5px solid var(--app-border);border-radius:var(--cs-radius-xl);padding:var(--cs-space-6);margin-top:var(--cs-space-6)}.cs-card,.cs-panel{background:var(--app-bg-surface)}.cs-card{border:1.5px solid var(--app-border);border-left:5px solid var(--card-accent,var(--app-accent-0));border-radius:var(--cs-radius-lg);padding:var(--cs-space-4);margin-top:var(--cs-space-4)}.cs-card.open{box-shadow:0 2px 10px rgba(42,33,26,.08)}.cs-card-head{display:flex;justify-content:space-between;gap:var(--cs-space-3);align-items:baseline;cursor:pointer}.cs-card-title{color:var(--card-accent,var(--app-accent-0));font-size:var(--cs-text-data-lg);font-weight:700}.cs-btn{display:inline-block;padding:var(--cs-space-2) var(--cs-space-4);background:var(--app-bg-surface);border:1.5px solid var(--app-border);border-radius:var(--cs-radius-full);color:var(--app-ink);font-family:var(--cs-font-mono);font-size:var(--cs-text-data-sm);cursor:pointer;transition:transform .12s,background .15s}.cs-btn:active{transform:scale(.95)}.cs-btn:disabled{opacity:.4;cursor:default}.cs-btn.glow{background:var(--app-accent-1);border-color:var(--app-accent-1);color:var(--app-bg-surface);font-weight:700}.cs-btn.warm{border-color:var(--app-warn);color:var(--app-warn)}.cs-btn.quiet{background:none;border-color:transparent;color:var(--app-muted)}.cs-btn-block{display:block;width:100%;padding:var(--cs-space-4);font-size:var(--cs-text-data-md)}.cs-details{margin-top:var(--cs-space-6)}.cs-details summary{cursor:pointer;color:var(--app-muted);font-size:var(--cs-text-data-sm);list-style:none}.cs-details summary::-webkit-details-marker{display:none}.cs-details summary:before{content:"▸ "}.cs-details[open] summary:before{content:"▾ "}.cs-field{display:block;width:100%;margin-top:var(--cs-space-2);padding:var(--cs-space-3);background:var(--app-bg-surface);color:var(--app-ink);border:1.5px solid var(--app-border);border-radius:var(--cs-radius-md);font-family:var(--cs-font-mono);font-size:max(var(--cs-text-data-md),16px)}.cs-field:focus{outline:none;border-color:var(--app-accent-2);box-shadow:0 0 0 3px color-mix(in srgb,var(--app-accent-2) 22%,transparent)}.cs-field.inline{display:inline-block;width:auto;margin:0;padding:var(--cs-space-1) var(--cs-space-2)}.cs-form-label{display:block;margin-top:var(--cs-space-4);color:var(--app-muted);font-size:var(--cs-text-data-xs);letter-spacing:var(--cs-tracking-wide);text-transform:lowercase}.cs-error-note{margin-top:var(--cs-space-4);color:var(--app-warn)}.cs-error-note,.cs-quiet{font-size:var(--cs-text-data-sm)}.cs-chip,.cs-quiet{color:var(--app-muted)}.cs-chip{display:inline-block;padding:2px var(--cs-space-2);border:1.5px solid var(--app-border);border-radius:var(--cs-radius-full);font-size:var(--cs-text-data-xs);margin:2px 4px 2px 0}.cs-chip.tap{cursor:pointer;background:none;font-family:inherit;padding:5px var(--cs-space-2)}.cs-chip.tap:hover{color:var(--app-ink);border-color:var(--app-ink)}.cs-chip.tap.on{color:var(--app-accent-3);border-color:var(--app-accent-3);background:color-mix(in srgb,var(--app-accent-3) 12%,transparent);font-weight:700}.cs-fit{position:relative;display:inline-block;min-width:46px;padding:2px 6px;border-radius:var(--cs-radius-full);background:var(--app-dim);overflow:hidden}.cs-fit-bar{position:absolute;inset:0 auto 0 0;opacity:.28}.cs-fit-num{position:relative;font-weight:700;font-size:var(--cs-text-data-xs)}.cs-fit-rows{margin-top:var(--cs-space-2)}.cs-fit-row{display:flex;align-items:center;justify-content:space-between;gap:var(--cs-space-3);padding:5px 0;border-bottom:1px solid var(--app-dim)}.cs-fit-row:last-child{border-bottom:none}.cs-fit-label{font-size:var(--cs-text-data-sm);color:var(--app-muted)}.cs-fit-dots{display:flex;gap:6px;flex-shrink:0}.cs-fit-dot{width:28px;height:28px;padding:0;border:1.5px solid var(--app-border);border-radius:var(--cs-radius-full);background:none;cursor:pointer}.cs-fit-dot.on{border-color:transparent}.cs-tl{display:flex;margin-top:var(--cs-space-4);border:1.5px solid var(--app-border);border-radius:var(--cs-radius-xl);overflow:hidden}.cs-tl,.cs-tl-names{background:var(--app-bg-surface)}.cs-tl-names{flex:0 0 88px;border-right:1.5px solid var(--app-border);z-index:2}.cs-tl-name{display:flex;align-items:flex-start;padding:var(--cs-space-4) var(--cs-space-2) 0;width:100%;background:none;border:none;border-bottom:1px solid var(--app-dim);font-family:var(--cs-font-mono);font-size:var(--cs-text-data-sm);font-weight:700;text-align:left;cursor:pointer;overflow:hidden}.cs-tl-scroll{flex:1 1;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.cs-tl-axis,.cs-tl-canvas{position:relative}.cs-tl-axis{border-bottom:1.5px solid var(--app-border)}.cs-tl-month{position:absolute;top:6px;color:var(--app-ink-bright);font-size:var(--cs-text-data-xs);font-weight:700;letter-spacing:var(--cs-tracking-wide)}.cs-tl-tick{position:absolute;bottom:0;width:1px;height:8px;background:var(--app-dim)}.cs-tl-load{position:absolute;bottom:10px;height:13px;line-height:13px;text-align:center;overflow:hidden;white-space:nowrap;border-radius:var(--cs-radius-full);background:color-mix(in srgb,var(--app-accent-0) 22%,var(--app-bg-surface));color:var(--app-ink);font-size:9px;font-weight:700;letter-spacing:.02em}.cs-tl-load.over{background:color-mix(in srgb,var(--app-warn) 26%,var(--app-bg-surface));color:var(--app-warn)}.cs-tl-lane{position:relative;border-bottom:1px solid var(--app-dim)}.cs-tl-bar{position:absolute;top:8px;height:40px;background:color-mix(in srgb,var(--bar-accent,var(--app-accent-0)) 16%,var(--app-bg-surface));border:2px solid var(--bar-accent,var(--app-accent-0));border-radius:var(--cs-radius-full);overflow:hidden;cursor:-webkit-grab;cursor:grab;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-x pan-y;transition:box-shadow .2s,transform .12s}.cs-tl-bar.dragging{cursor:-webkit-grabbing;cursor:grabbing;box-shadow:0 4px 14px rgba(42,33,26,.18);z-index:3}.cs-tl-bar.violated{border-style:dashed;border-color:var(--app-warn)}.cs-tl-bar-fill{position:absolute;inset:0 auto 0 0;opacity:.3;background:var(--bar-accent,var(--app-accent-0));pointer-events:none}.cs-tl-bar-label{position:relative;display:flex;gap:var(--cs-space-2);align-items:center;height:100%;padding:0 var(--cs-space-6);font-size:var(--cs-text-data-xs);color:var(--app-ink-bright);pointer-events:none;white-space:nowrap}.cs-tl-chip{color:color-mix(in srgb,var(--app-ink) 70%,transparent)}.cs-tl-count{color:var(--app-ink-bright);font-weight:700}.cs-tl-handle{position:absolute;top:0;bottom:0;width:22px;touch-action:none;cursor:ew-resize}.cs-tl-handle.start{left:0;border-left:3px solid;opacity:.45}.cs-tl-handle.end{right:0;border-right:3px solid;opacity:.45}.cs-tl-mod{position:absolute;height:12px;border:1.5px solid var(--bar-accent,var(--app-accent-0));border-radius:var(--cs-radius-full);overflow:hidden;font-size:9px;line-height:9px;padding:0 var(--cs-space-2);color:var(--app-muted);background:var(--app-bg-surface);white-space:nowrap}.cs-tl-mod.done{background:var(--bar-accent,var(--app-accent-0));color:var(--app-bg-surface);font-weight:700}.cs-tl-deadline{top:4px;bottom:4px;width:0;border-left:2px dashed var(--bar-accent,var(--app-warn));opacity:.85}.cs-tl-band,.cs-tl-deadline{position:absolute;pointer-events:none}.cs-tl-band{border-left:2px dashed;border-right:2px dashed;background:color-mix(in srgb,var(--band-accent,var(--app-accent-0)) 7%,transparent)}.cs-tl-band-label{position:absolute;top:-20px;left:4px;font-size:var(--cs-text-data-xs);font-weight:700;letter-spacing:var(--cs-tracking-wide);white-space:nowrap}.cs-tl-busy{background:color-mix(in srgb,var(--app-warn) 9%,transparent);border-left:1px solid color-mix(in srgb,var(--app-warn) 35%,transparent);border-right:1px solid color-mix(in srgb,var(--app-warn) 35%,transparent)}.cs-tl-busy,.cs-tl-marker{position:absolute;pointer-events:none}.cs-tl-marker{width:0;border-left:2px dotted var(--marker-accent,var(--app-accent-1));opacity:.9}.cs-tl-marker-label{position:absolute;top:2px;left:5px;font-size:var(--cs-text-data-xs);font-weight:700;letter-spacing:var(--cs-tracking-wide);white-space:nowrap}.cs-tl-today{position:absolute;top:0;width:2px;background:var(--app-today);z-index:1;pointer-events:none}.cs-tl-today-label{position:absolute;top:24px;left:5px;color:var(--app-today);font-weight:700;font-size:var(--cs-text-data-xs)}.cs-tl-note{display:flex;justify-content:space-between;gap:var(--cs-space-4);align-items:baseline;margin:var(--cs-space-3) 0 0;padding:var(--cs-space-3) var(--cs-space-4);background:color-mix(in srgb,var(--app-warn) 8%,var(--app-bg-surface));border:1.5px solid var(--app-warn);border-radius:var(--cs-radius-lg);color:var(--app-warn);font-size:var(--cs-text-data-sm)}.cs-sheet-scrim{position:fixed;inset:0;background:var(--app-bg-scrim);z-index:9}.cs-sheet{position:fixed;left:0;right:0;bottom:0;z-index:10;background:var(--app-bg-surface);border-top:4px solid var(--sheet-accent,var(--app-accent-0));border-radius:var(--cs-radius-2xl) var(--cs-radius-2xl) 0 0;padding:var(--cs-space-6) var(--cs-space-6) var(--cs-space-8);box-shadow:0 -6px 24px rgba(42,33,26,.16);animation:cs-sheet-up .18s ease-out}@keyframes cs-sheet-up{0%{transform:translateY(30%);opacity:.5}to{transform:translateY(0);opacity:1}}.cs-sheet-title{color:var(--sheet-accent,var(--app-accent-0));font-size:var(--cs-text-data-lg);font-weight:700;margin-bottom:var(--cs-space-2)}.cs-sheet-actions{flex-wrap:wrap;margin-top:var(--cs-space-4)}.cs-sheet-actions,.cs-sheet-dates{display:flex;gap:var(--cs-space-3)}.cs-sheet-dates{margin-top:var(--cs-space-3)}.cs-sheet-date{flex:1 1;min-width:0}.cs-cover-row{display:flex;gap:var(--cs-space-3);align-items:baseline;padding:var(--cs-space-2) 0;border-bottom:1px solid var(--app-dim);font-size:var(--cs-text-data-sm)}.cs-cover-dot{flex:0 0 auto;font-weight:700}.cs-cover-dot.satisfied{color:var(--app-good)}.cs-cover-dot.scheduled{color:var(--app-accent-0)}.cs-cover-dot.missing{color:var(--app-muted)}.cs-mod-row{display:flex;gap:var(--cs-space-3);align-items:center;padding:var(--cs-space-2) 0;border-bottom:1px solid var(--app-dim)}.cs-mod-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--app-accent-4)}.cs-todo-add{display:flex;gap:var(--cs-space-2);align-items:center;flex-wrap:wrap}.cs-todo-text.done{color:color-mix(in srgb,var(--app-ink) 65%,transparent);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb,var(--app-ink) 45%,transparent);text-decoration-color:color-mix(in srgb,var(--app-ink) 45%,transparent)}.cs-todo-when{display:block;color:var(--app-muted);font-size:var(--cs-text-data-xs)}.cs-todo-when.overdue{color:var(--app-warn);font-weight:700}.cs-table-wrap{margin-top:var(--cs-space-4);overflow-x:auto;border:1.5px solid var(--app-border);border-radius:var(--cs-radius-lg);background:var(--app-bg-surface);padding:var(--cs-space-3)}.cs-table{width:100%;border-collapse:collapse;font-size:var(--cs-text-data-sm)}.cs-table th{text-align:left;padding:var(--cs-space-2);border-bottom:2px solid var(--app-border);color:var(--app-muted);font-weight:700;white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cs-table th:hover{color:var(--app-ink)}.cs-table td{padding:var(--cs-space-2);border-bottom:1px solid var(--app-dim);vertical-align:top}.cs-table tr:last-child td{border-bottom:none}.cs-sort{margin-left:4px;color:var(--app-accent-1)}.cs-table input[type=checkbox]{width:20px;height:20px;accent-color:var(--app-accent-4)}.cs-cal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--cs-space-3)}.cs-cal-title{font-weight:700;color:var(--app-ink-bright)}.cs-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:2px;gap:2px;margin-top:var(--cs-space-3)}.cs-cal-dow{color:var(--app-muted);font-size:var(--cs-text-data-xs);text-align:center;padding-bottom:2px}.cs-cal-cell{min-height:62px;padding:2px;border:1px solid var(--app-dim);border-radius:var(--cs-radius-sm);background:var(--app-bg-surface);overflow:hidden}.cs-cal-cell.out{background:var(--app-bg-card);opacity:.55}.cs-cal-cell.today{border-color:var(--app-today);border-width:2px}.cs-cal-num{display:block;font-size:10px;color:var(--app-muted);text-align:right}.cs-cal-item{display:block;width:100%;margin-top:2px;padding:1px 3px;border:none;border-radius:var(--cs-radius-sm);background:color-mix(in srgb,var(--app-accent-0) 20%,var(--app-bg-surface));color:var(--app-ink);font-family:var(--cs-font-mono);font-size:9px;line-height:1.25;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-cal-item.done{background:color-mix(in srgb,var(--app-good) 22%,var(--app-bg-surface));text-decoration:line-through;color:color-mix(in srgb,var(--app-ink) 65%,transparent)}.cs-dep-row{display:flex;gap:var(--cs-space-2);align-items:center;padding:var(--cs-space-2) 0;border-bottom:1px solid var(--app-dim)}.cs-dep-sentence{flex:1 1;line-height:1.9}.cs-dep-add{display:flex;gap:var(--cs-space-2);align-items:center;margin-top:var(--cs-space-3)}.cs-heat-pill{flex:0 0 auto;min-width:58px;text-align:center;padding:2px var(--cs-space-2);border-radius:var(--cs-radius-full);font-weight:700;font-size:var(--cs-text-data-xs);background:color-mix(in srgb,var(--app-warn) calc(var(--heat, 0) * 55%),color-mix(in srgb,var(--app-accent-4) 30%,var(--app-bg-surface)));color:var(--app-ink)}.cs-matrix-wrap{max-height:62vh;overflow:auto}.cs-matrix{font-size:var(--cs-text-data-xs);border-collapse:separate;border-spacing:0}.cs-matrix td,.cs-matrix th{padding:3px 5px;white-space:nowrap}.cs-matrix thead th{top:0;z-index:2;cursor:default}.cs-matrix thead th,.cs-matrix-corner,.cs-matrix-row-head{position:-webkit-sticky;position:sticky;background:var(--app-bg-surface)}.cs-matrix-corner,.cs-matrix-row-head{left:0;z-index:1;text-align:left!important;border-right:1.5px solid var(--app-border)}.cs-matrix-corner{z-index:3}.cs-matrix-row-head{cursor:pointer}.cs-matrix-row-head.active{color:var(--app-accent-1)}.cs-matrix-cell{text-align:center;background:color-mix(in srgb,var(--app-warn) calc(var(--heat, 0) * 48%),var(--app-bg-surface))}.cs-matrix-self{text-align:center;color:var(--app-dim)}.cs-map{margin-top:var(--cs-space-4);border:1.5px solid var(--app-border);border-radius:var(--cs-radius-lg);background:var(--app-bg-surface);padding:var(--cs-space-3)}.cs-map svg{width:100%;max-width:780px;margin:0 auto;height:clamp(300px,52vh,520px);display:block;border-radius:var(--cs-radius-md);background:var(--app-water);cursor:-webkit-grab;cursor:grab;touch-action:none}.cs-map svg.grabbing{cursor:-webkit-grabbing;cursor:grabbing}.cs-map-controls{display:flex;gap:var(--cs-space-2);align-items:center;margin-bottom:var(--cs-space-2)}.cs-map-dot{cursor:pointer}.cs-map-label{font-size:9px;font-weight:700;fill:var(--app-ink);stroke:var(--app-land);stroke-width:2.5px;stroke-linejoin:round}.cs-map-label,.cs-map-place{font-family:var(--cs-font-mono);pointer-events:none;paint-order:stroke}.cs-map-place{font-size:8px;fill:var(--app-muted);stroke:var(--app-land);stroke-width:2px}.cs-map-home{font-family:var(--cs-font-mono);font-size:9px;font-weight:700;fill:var(--app-ink);pointer-events:none;paint-order:stroke;stroke:var(--app-land);stroke-width:2.5px;stroke-linejoin:round}.cs-shell.wide{max-width:1180px}.cs-wip-tag{display:inline-block;padding:1px var(--cs-space-2);border:1.5px solid var(--app-accent-2);border-radius:var(--cs-radius-sm);color:var(--app-accent-2);background:none;font-size:var(--cs-text-data-xs);font-weight:700}.cs-sticky-catcher{position:absolute;inset:0;min-height:100%;z-index:40;cursor:crosshair;background:color-mix(in srgb,var(--app-accent-2) 5%,transparent)}.cs-sticky{position:absolute;z-index:41;width:min(210px,62vw);padding:var(--cs-space-2);background:color-mix(in srgb,var(--sticky-accent,var(--app-accent-2)) 16%,var(--app-bg-surface));border:1.5px solid var(--sticky-accent,var(--app-accent-2));border-radius:var(--cs-radius-lg);box-shadow:0 6px 18px rgb(0 0 0/.12);font-size:var(--cs-text-data-sm)}.cs-sticky.done{opacity:.55}.cs-sticky.done .cs-sticky-read,.cs-sticky.done .cs-sticky-text{text-decoration:line-through}.cs-sticky-read{margin:0;white-space:pre-wrap;word-break:break-word}.cs-sticky-text{width:100%;border:none;background:none;color:inherit;font:inherit;resize:vertical}.cs-sticky-text:focus{outline:none}.cs-sticky-actions{display:flex;justify-content:flex-end;gap:4px}.cs-sticky-btn{min-width:34px;min-height:34px;border:none;background:none;color:var(--app-muted);font:inherit;cursor:pointer}.cs-sticky-bar{position:fixed;right:var(--cs-space-3);bottom:var(--cs-space-3);z-index:42;display:flex;gap:6px;align-items:center}.cs-sticky-toggle{min-height:44px;box-shadow:0 4px 14px rgb(0 0 0/.18);background:var(--app-bg-surface)}.cs-sticky-hint{position:fixed;left:50%;bottom:var(--cs-space-3);transform:translateX(-50%);z-index:42;margin:0;padding:6px var(--cs-space-3);border-radius:var(--cs-radius-full);background:var(--app-bg-surface);border:1.5px solid var(--app-border);color:var(--app-muted);font-size:var(--cs-text-data-xs);pointer-events:none}.cs-strength{height:6px;margin-top:var(--cs-space-2);border-radius:var(--cs-radius-full);background:var(--app-dim);overflow:hidden}.cs-strength-fill{height:100%;background:var(--app-accent-4)}.cs-flashcard{display:flex;flex-direction:column;gap:var(--cs-space-2);align-items:center;justify-content:center;width:100%;min-height:190px;margin-top:var(--cs-space-3);padding:var(--cs-space-5);border:2px solid var(--app-border);border-radius:var(--cs-radius-xl);background:var(--app-bg-surface);color:inherit;font:inherit;text-align:center;cursor:pointer}.cs-flashcard-side{font-size:var(--cs-text-data-xs);letter-spacing:var(--cs-tracking-wide);color:var(--app-muted)}.cs-flashcard-text{font-size:var(--cs-text-lg,1.15rem);font-weight:700;white-space:pre-wrap;word-break:break-word}.cs-grade-row{display:flex;gap:8px;margin-top:var(--cs-space-3)}.cs-grade{flex:1 1;min-height:46px}.cs-grade.no-idea{border-color:var(--app-warn);color:var(--app-warn)}.cs-grade.close{border-color:var(--app-accent-2);color:var(--app-accent-2)}.cs-grade.got-it{border-color:var(--app-accent-4);color:var(--app-accent-4)}.cs-card-row{display:flex;gap:8px;align-items:flex-start;padding:var(--cs-space-3) 0;border-bottom:1px solid var(--app-dim)}