:root{--bg: #e5f2f0;--surface: #f4fbfa;--surface-2: #d5e8e5;--text: #0e2a28;--dim: #1b4a46;--line: #b7d0cc;--accent: #0e5c56;--on-accent: #f4fbfa;--warn: #9a4b00;--surface-elevated: var(--surface);--text-on-accent: var(--on-accent);--muted: var(--dim);--border: var(--line);color-scheme:light}[data-theme=dark]{--bg: #062421;--surface: #0e2e2b;--surface-2: #143e3a;--text: #e5f4f2;--dim: #c5e0db;--line: #1e4e49;--accent: #8ed4cb;--on-accent: #062421;--warn: #f2b36b;color-scheme:dark}.mark-dark,[data-theme=dark] .mark-light{display:none}[data-theme=dark] .mark-dark{display:block}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg);color:var(--text)}body{font-family:Manrope,system-ui,sans-serif;font-size:16px;line-height:1.45}button,input,select{font:inherit;font-size:16px;color:var(--text)}button{cursor:pointer}p,h1,h2,h3{margin:0}a{color:var(--accent)}:focus-visible{outline:3px solid var(--text);outline-offset:2px}.app-shell{background:var(--bg);color:var(--text);min-height:100dvh}.app-shell.is-thread{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.topbar{position:sticky;top:0;z-index:20;min-height:64px;padding:6px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;color:var(--text);text-decoration:none;font-weight:800}.mark{height:48px;width:48px}.wordmark{font-size:16px;font-weight:800;white-space:nowrap}.tools{display:flex;align-items:center;gap:8px}.lab-toggle,.theme-toggle,.pill,.send,.go,.sheet-close,.icon-button{min-height:44px;min-width:44px;padding:0 12px;border-radius:999px;font-weight:800}.lab-toggle{border:0;background:var(--accent);color:var(--on-accent)}.theme-toggle{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-weight:700}.rail-label{flex:1 1 auto;min-width:0;text-align:left}.queued-badge{flex:none;margin-left:auto;min-height:32px;display:inline-flex;align-items:center;padding:0 10px;font-size:14px;border-radius:999px;border:1px solid var(--warn);color:var(--warn);font-weight:800;background:var(--surface)}.workspace{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:var(--bg)}.thread-column{min-height:0;flex:1 1 auto;display:flex;flex-direction:column;background:var(--bg);position:relative}.rail{min-height:44px;width:100%;display:flex;align-items:center;gap:8px;padding:0 12px;border:0;border-bottom:1px solid var(--line);background:var(--surface-2);color:var(--text);text-align:left;font-weight:800}.rail svg{flex:0 0 auto}.lab-panel{display:none;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:8px 10px}.lab-open .lab-panel{display:block;position:absolute;z-index:15;top:52px;left:10px;right:10px;box-shadow:0 8px 18px #0624212e}.lab-open .lab-panel:before{content:"";position:absolute;top:-8px;right:92px;border-width:0 8px 8px;border-style:solid;border-color:transparent transparent var(--line)}.now{font-size:16px;line-height:1.35}.range{display:flex;align-items:center;gap:8px;min-height:44px}.range input{flex:1 1 auto;min-width:0;height:44px;accent-color:var(--accent)}.lab-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.switch{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-weight:700}.switch[aria-checked=false]{border-style:dashed}.go{border:0;background:var(--accent);color:var(--on-accent)}.ghost{min-height:44px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-weight:700}.lab-note,.hint,.phase,.only-you,.threshold,.ops-note,.page-intro,.page-updated{font-size:16px;line-height:1.4}.only-you,.ops-note,.lab-note,.threshold{color:var(--dim)}.hint,.phase{font-weight:700}.chips{display:flex;flex-wrap:wrap;gap:8px;padding:8px 10px 0}.chips button{min-height:44px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-weight:600}.chips button[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:800}.explain{padding:6px 12px 0;color:var(--text);font-size:16px}.thread-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding:6px 12px 8px}.thread-title{font-size:20px;line-height:1.2;font-weight:800}.msg{margin-top:8px}.msg-name{font-size:16px;font-weight:800;line-height:1.2}.msg-body{font-size:16px;line-height:1.35}.msg-user .msg-body{background:var(--surface-2);border-radius:8px;padding:6px 8px;font-weight:600}.card,.ask,.reminder,.chip-row{margin-top:8px;background:var(--surface);border:1px solid var(--accent);border-radius:12px;padding:8px 10px 10px}.notice{margin-top:8px;color:var(--dim)}.is-highlight{outline:3px solid var(--accent);border-radius:8px}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.actions button,.ask button,.chip-btn{min-height:44px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-weight:700}.chip-btn{background:var(--surface-2);font-weight:800}.field{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-weight:700}.field input,.field select,.composer input{min-height:44px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--text);padding:0 14px}.composer input::placeholder{color:var(--dim);opacity:1}.dock{padding:8px 10px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line)}.composer{display:flex;gap:8px;align-items:center}.composer input{flex:1 1 auto;min-width:0}.send{border:0;background:var(--accent);color:var(--on-accent)}.send:disabled,.ghost:disabled,.go:disabled{opacity:.55}.ops-column{display:none}.ops-board{padding:8px 12px 16px;background:var(--bg)}.metric{background:var(--surface);border-radius:12px;padding:8px 10px;margin-top:8px}.metric-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.metric-label,.section-title{font-weight:800;font-size:16px}.section-title{font-size:20px;margin-top:16px}.metric-num{font-size:22px;font-weight:800;line-height:1.1}.frac,.meaning{color:var(--dim);font-size:16px}.is-warn{color:var(--warn);font-weight:800}.missed-row,.form-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.missed-row p{flex:1 1 180px;font-size:16px}.parse-table{width:100%;border-collapse:collapse;table-layout:fixed;margin-top:8px}.parse-table th,.parse-table td{text-align:left;vertical-align:top;padding:6px 4px;border-bottom:1px solid var(--line);font-size:16px;word-break:break-word}.site-footer{background:var(--surface);border-top:1px solid var(--line);padding:4px 12px calc(8px + env(safe-area-inset-bottom))}.app-shell.is-thread .footer-grid p{margin:0}.footer-grid{display:grid;grid-template-columns:1fr;gap:12px}.footer-grid h2{font-size:16px;font-weight:800}.footer-links{display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;margin:8px 0 0;padding:0}.nav-link{min-height:44px;display:inline-flex;align-items:center;color:var(--dim);text-decoration:none;font-weight:700}.nav-link.is-active{color:var(--text);text-decoration:underline;text-underline-offset:3px}.crumb{padding:8px 12px 0;font-size:16px}.crumb ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.crumb a{min-height:44px;display:inline-flex;align-items:center;color:var(--text);font-weight:700}.doc{padding:0 12px 32px;background:var(--bg)}.doc h1{font-size:28px;line-height:1.2;font-weight:800;margin-top:8px}.doc h2{font-size:20px;margin-top:20px;font-weight:800}.doc p,.doc li{font-size:16px;line-height:1.45;margin-top:8px;overflow-wrap:anywhere}.doc a{color:var(--accent);font-weight:700;overflow-wrap:anywhere}.sheet-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#06242166;display:flex;align-items:flex-end}.sheet{width:100%;max-height:80dvh;overflow:auto;background:var(--surface);color:var(--text);border-radius:16px 16px 0 0;padding:12px 12px calc(16px + env(safe-area-inset-bottom))}.sheet li{margin-top:8px;font-size:16px}.banner-error{margin:8px 12px;padding:8px 10px;border:1px solid var(--warn);border-radius:12px;color:var(--text);background:var(--surface)}@media (min-width: 768px){.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.mark{height:56px;width:56px}.topbar{min-height:72px}}@media (min-width: 1024px){.app-shell.is-thread .workspace{display:grid;grid-template-columns:minmax(0,480px) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.thread-column{grid-column:1;grid-row:1 / span 2;max-width:480px;border-right:1px solid var(--line)}.lab-panel,.lab-open .lab-panel{display:block;position:static;grid-column:2;grid-row:1;z-index:1;margin:12px 12px 0;box-shadow:none}.lab-open .lab-panel:before,.lab-panel:before{content:none}.ops-column{display:block;grid-column:2;grid-row:2;min-height:0;overflow:auto;background:var(--bg)}}@media (min-width: 1280px){.mark{height:72px;width:72px}.topbar{min-height:88px;padding:8px 24px}.doc h1{font-size:32px}}@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto}}@media (max-width: 1023px){.app-shell.is-thread .footer-grid{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}.app-shell.is-thread .footer-grid h2,.app-shell.is-thread .footer-grid>div>p{display:none}.app-shell.is-thread .footer-links{margin:0}.app-shell.is-thread .site-footer{padding-top:0}}.scenario .hint{padding:2px 12px 0;margin:0}.crumb ol{align-items:center}.crumb li{display:inline-flex;align-items:center;min-height:44px}@media (max-width: 639px){.parse-table,.parse-table tbody,.parse-table tr,.parse-table td{display:block;width:100%}.parse-table thead{display:none}.parse-table tr{border:1px solid var(--line);border-radius:12px;padding:8px 12px;margin:0 0 8px;background:var(--surface)}.parse-table td{padding:2px 0;border:0;overflow-wrap:anywhere}.parse-table td:before{content:attr(data-label) ": ";font-weight:700;color:var(--dim)}}.header-nav{display:none;gap:4px;margin-left:12px;margin-right:auto}.header-nav .nav-link{padding:0 10px;border-radius:999px}.header-nav .nav-link:hover{background:var(--surface-2);color:var(--text)}.header-nav .nav-link.is-active{background:var(--surface-2);text-decoration:none;font-weight:800}@media (min-width: 640px){.header-nav{display:flex}}
