:root{--paper:#f2f2f2;--sheet:#fbfbfb;--ink:#1a1a1a;--muted:#5c5c5c;--line:#e0e0e0;--accent:#1a1a1a;--on-accent:#fafafa;--yellow:#ffc21a;--yellow-soft:#fff4d1;--on-yellow:#1a1a1a;--ok:#1f7a3d;--ok-soft:#e2f3e7;--bad:#c4282f;--bad-soft:#fde5e4;--band:#161616;--band-card:#232323;--band-line:#3a3a3a;--on-band:#f2f2f2;--on-band-muted:#a8a8a8;--k-c:#b02a6a;--k-c-bg:#fbe3ee;--k-b:#1f7a3d;--k-b-bg:#e2f3e7;--k-t:#1a1a1a;--k-t-bg:#ffd24d;--k-w:#c4282f;--k-w-bg:#fde5e4;--st-258:#1a1a1a;--st-307:#e0662a;--st-11:#c4282f;--st-147:#b02a6a;--font-ui:"Graphik", "Graphik Web", "Hanken Grotesk", "Helvetica Neue", Arial, system-ui, sans-serif;--font-read:"Tiempos Text", "TiemposText", "Source Serif 4", Georgia, serif;--font-fine:"Tiempos Fine", "TiemposFine", "Newsreader", "Source Serif 4", Georgia, serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--accent-hover:#333;--r:14px;--shadow:0 1px 0 #0000000a, 0 8px 24px #0000000f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#121212;--sheet:#1c1c1c;--ink:#ececec;--muted:#a3a3a3;--line:#333;--accent:#ececec;--accent-hover:#d4d4d4;--on-accent:#121212;--yellow:#f2b50f;--yellow-soft:#26241d;--on-yellow:#121212;--ok:#5fcf83;--ok-soft:#173322;--bad:#f2716b;--bad-soft:#3d1c1c;--band:#0b0b0b;--band-card:#1c1c1c;--band-line:#333;--on-band:#ececec;--on-band-muted:#a3a3a3;--k-c:#f084b8;--k-c-bg:#3d1a2c;--k-b:#5fcf83;--k-b-bg:#173322;--k-t:#121212;--k-t-bg:#f2b50f;--k-w:#f2716b;--k-w-bg:#3d1c1c;--st-258:#ececec;--st-307:#f08a52;--st-11:#f2716b;--st-147:#f084b8;--shadow:0 1px 0 #0000004d, 0 8px 24px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#121212;--sheet:#1c1c1c;--ink:#ececec;--muted:#a3a3a3;--line:#333;--accent:#ececec;--accent-hover:#d4d4d4;--on-accent:#121212;--yellow:#f2b50f;--yellow-soft:#26241d;--on-yellow:#121212;--ok:#5fcf83;--ok-soft:#173322;--bad:#f2716b;--bad-soft:#3d1c1c;--band:#0b0b0b;--band-card:#1c1c1c;--band-line:#333;--on-band:#ececec;--on-band-muted:#a3a3a3;--k-c:#f084b8;--k-c-bg:#3d1a2c;--k-b:#5fcf83;--k-b-bg:#173322;--k-t:#121212;--k-t-bg:#f2b50f;--k-w:#f2716b;--k-w-bg:#3d1c1c;--st-258:#ececec;--st-307:#f08a52;--st-11:#f2716b;--st-147:#f084b8;--shadow:0 1px 0 #0000004d, 0 8px 24px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--font-ui);-webkit-font-smoothing:antialiased}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}::placeholder{color:var(--muted)}:focus-visible{outline:3px solid var(--yellow);outline-offset:2px;border-radius:6px}h1,h2,h3,h4{font-family:var(--font-ui);letter-spacing:-.02em;margin:0}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.eyebrow{font:500 .72rem var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.topbar{z-index:40;background:var(--band);color:var(--on-band);position:sticky;top:0}.topbar-in{align-items:center;gap:28px;max-width:1240px;height:64px;margin:0 auto;padding:0 24px;display:flex}.logo{font:800 1.35rem var(--font-ui);letter-spacing:-.03em;align-items:center;gap:10px;text-decoration:none;display:flex}.logo-mark{background:var(--yellow);width:38px;height:44px;-webkit-mask:url(/logo-mask.png) 50%/contain no-repeat;mask:url(/logo-mask.png) 50%/contain no-repeat}.nav{gap:4px;display:flex}.nav a{color:var(--on-band-muted);border-radius:999px;padding:8px 12px;font-size:.95rem;font-weight:600;text-decoration:none}.nav a:hover{color:var(--on-band)}.nav a.active{color:var(--band);background:var(--on-band)}.topbar .spacer{flex:1}.xp-pill{align-items:center;gap:10px;font-size:.85rem;text-decoration:none;display:flex}.xp-pill .lvl{background:var(--yellow);color:var(--on-yellow);border-radius:999px;padding:3px 10px;font-weight:800}.xp-pill .bar{background:var(--band-line);border-radius:3px;width:110px;height:6px;overflow:hidden}.xp-pill .bar span{background:var(--yellow);height:100%;display:block}.streak{font-weight:700}.page{max-width:1240px;margin:0 auto;padding:40px 24px 80px}.card{background:var(--sheet);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.pad{padding:24px}.grid{gap:20px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.btn{border:1.5px solid var(--ink);background:var(--sheet);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-size:.95rem;font-weight:700;text-decoration:none;transition:transform 80ms;display:inline-flex}.btn:hover:not(:disabled){background:var(--yellow-soft)}.btn:active:not(:disabled){transform:translateY(1px)}.btn.primary{background:var(--ink);color:var(--on-accent)}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.yellow{background:var(--yellow);border-color:var(--yellow);color:var(--on-yellow)}.btn.ghost{border-color:var(--line)}.btn.sm{padding:5px 12px;font-size:.85rem}.btn:disabled{opacity:.45;cursor:not-allowed}.hero{background:var(--band);color:var(--on-band)}.hero-in{grid-template-columns:1.3fr 1fr;align-items:center;gap:48px;max-width:1240px;margin:0 auto;padding:72px 24px 88px;display:grid}.hero h1{letter-spacing:-.04em;font-size:clamp(2.6rem,6vw,5rem);font-weight:800;line-height:.98}h1 em,h2 em{font-family:var(--font-fine);letter-spacing:-.01em;font-style:italic;font-weight:300}.hero h1 em{background:var(--yellow);color:var(--on-yellow);padding:0 .12em}.hero p.lede{font:400 1.25rem/1.5 var(--font-read);color:var(--on-band);max-width:36ch;margin:22px 0 30px}.hero .stat-row{color:var(--on-band-muted);gap:28px;margin-top:34px;font-size:.9rem;display:flex}.hero .stat-row b{color:var(--on-band);font-size:1.6rem;display:block}.hero-card{background:var(--band-card);border:1px solid var(--band-line);border-radius:var(--r);padding:22px}.hero-card .q{font:400 1.05rem/1.55 var(--font-read)}.section-h{justify-content:space-between;align-items:end;gap:16px;margin:8px 0 20px;display:flex}.section-h h2{font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:800}.paths{grid-template-columns:repeat(3,1fr)}.path-card{flex-direction:column;gap:12px;min-height:340px;padding:26px;text-decoration:none;display:flex;position:relative;overflow:hidden}.path-card .band{height:8px;position:absolute;inset:0 0 auto}.path-card h3{font-size:1.6rem;font-weight:800}.path-card p{font:400 1rem/1.55 var(--font-read);margin:0}.path-card ul{color:var(--muted);margin:0;padding-left:1.1em;font-size:.92rem}.path-card .foot{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.path-card.locked{background:var(--paper)}.tag{font:600 .75rem var(--font-ui);background:var(--paper);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.tag.live{background:var(--ok-soft);color:var(--ok);border-color:#0000}.tag.soon{background:var(--yellow-soft);border-color:#0000}.path-head{grid-template-columns:1.5fr 1fr;align-items:start;gap:28px;margin-bottom:34px;display:grid}.path-head h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;line-height:1}.path-head p{font:400 1.15rem/1.6 var(--font-read)}.map{gap:16px;display:grid;position:relative}.map:before{content:"";background:repeating-linear-gradient(var(--line) 0 8px, transparent 8px 14px);width:3px;position:absolute;top:30px;bottom:30px;left:31px}.mod{grid-template-columns:64px 1fr auto;align-items:center;gap:20px;padding:20px 24px 20px 0;text-decoration:none;display:grid;position:relative}.mod .node{width:64px;height:64px;font:800 1.3rem var(--font-ui);background:var(--sheet);border:3px solid var(--line);z-index:1;border-radius:50%;place-items:center;display:grid}.mod.done .node{background:var(--ink);color:var(--yellow);border-color:var(--ink)}.mod.open .node{background:var(--yellow);border-color:var(--ink)}.mod.locked{opacity:.55}.mod h3{font-size:1.25rem;font-weight:800}.mod .case{font:italic 400 1rem var(--font-read);color:var(--muted)}.mod .meta{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.mod.boss .node{border-radius:16px}.lesson{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:28px;display:grid}.stepper{flex-direction:column;gap:4px;display:flex;position:sticky;top:88px}.step{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:28px 1fr;align-items:center;gap:10px;padding:9px 10px;font-weight:600;display:grid}.step:hover{background:var(--sheet)}.step.on{background:var(--sheet);box-shadow:inset 3px 0 0 var(--ink)}.step .dot{border:2px solid var(--line);background:var(--sheet);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.75rem;display:grid}.step.done .dot{background:var(--ink);border-color:var(--ink);color:var(--yellow)}.step small{color:var(--muted);font-size:.76rem;font-weight:500;display:block}.lesson-main{flex-direction:column;gap:20px;display:flex}.lesson-title h1{letter-spacing:-.035em;font-size:clamp(2rem,4.4vw,3rem);font-weight:800;line-height:1.02}.stage-h{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.stage-h h2{font-size:1.5rem;font-weight:800}.read{font:400 1.08rem/1.7 var(--font-read);max-width:70ch}.read p{margin:0 0 .9em}.read ul,.read ol{margin:0 0 .9em;padding-left:1.3em}.read li{margin:.25em 0}.read code,.ic{font:.85em var(--font-mono);background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:1px 5px}.read strong{font-weight:600}.read h4{font:800 1.05rem var(--font-ui);margin:1.2em 0 .4em}.k{font-family:var(--font-ui);white-space:nowrap;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;padding:0 4px;font-size:.94em;font-weight:700}.k-c{color:var(--k-c);background:var(--k-c-bg)}.k-b{color:var(--k-b);background:var(--k-b-bg)}.k-t{color:var(--k-t);background:var(--k-t-bg)}.k-w{color:var(--k-w);background:var(--k-w-bg)}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;font-size:.8rem;display:flex}.legend .k{font-size:.78rem}.casefile{border:2px solid var(--ink);background:var(--sheet);border-radius:var(--r);overflow:hidden}.casefile-h{background:var(--band);color:var(--on-band);justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;display:flex}.casefile-h b{font-size:1.05rem}.casefile .stamp{font:700 .7rem var(--font-mono);letter-spacing:.14em;border:2px solid var(--yellow);color:var(--yellow);border-radius:4px;padding:3px 8px;transform:rotate(-2deg)}.casefile-b{grid-template-columns:1.4fr 1fr;gap:24px;padding:22px;display:grid}.objectives{background:var(--yellow-soft);border-radius:10px;padding:14px 18px}.objectives ol{margin:6px 0 0;padding-left:1.2em;font-size:.95rem}.evidence{flex-wrap:wrap;gap:8px;display:flex}.ev{border:1.5px dashed var(--line);color:var(--muted);border-radius:8px;padding:6px 10px;font-size:.8rem;font-weight:600}.ev.got{border:1.5px solid var(--ink);color:var(--ink);background:var(--yellow-soft)}.segment{border-left:4px solid var(--ink);margin-bottom:26px;padding:4px 0 4px 20px}.segment h3{margin-bottom:10px;font-size:1.2rem;font-weight:800}.check{background:var(--paper);border-radius:12px;margin-top:10px;padding:16px 18px}.check .q{margin-bottom:10px;font-weight:700}.opts{gap:8px;display:grid}.opt{text-align:left;background:var(--sheet);border:1.5px solid var(--line);cursor:pointer;border-radius:10px;padding:10px 14px;font-size:.95rem}.opt:hover:not(:disabled){border-color:var(--ink)}.opt.right{border-color:var(--ok);background:var(--ok-soft)}.opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.feedback{margin-top:10px;font-size:.95rem}.feedback.good{color:var(--ok)}.feedback.bad{color:var(--bad)}.lab{border:1px solid var(--line);border-radius:var(--r);background:var(--sheet);padding:22px}.lab+.lab{margin-top:18px}.lab-h{justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px;display:flex}.lab-h h3{font-size:1.15rem;font-weight:800}.lab-h p{color:var(--muted);margin:4px 0 0;font-size:.92rem}.dnd-hint{font:500 .72rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;display:inline-flex}.drag{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:var(--sheet);border:1.5px solid var(--ink);box-shadow:0 2px 0 var(--ink);border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-size:.93rem;display:flex}.drag:active{cursor:grabbing}.drag.dragging{opacity:.35}.drag.overlay{transform:rotate(-1.5deg);box-shadow:0 14px 30px #00000038}.drag .grip{font:700 .9rem var(--font-mono);color:var(--muted);letter-spacing:-2px}.drag.right{border-color:var(--ok);box-shadow:0 2px 0 var(--ok);background:var(--ok-soft)}.drag.wrong{border-color:var(--bad);box-shadow:0 2px 0 var(--bad);background:var(--bad-soft)}.drag .num{font:700 .75rem var(--font-mono);background:var(--ink);color:var(--on-accent);border-radius:6px;padding:2px 6px}.sortlist{flex-direction:column;gap:8px;display:flex}.buckets{gap:14px;display:grid}.bucket{border:2px dashed var(--line);border-radius:12px;flex-direction:column;gap:8px;min-height:120px;padding:12px;transition:background .12s,border-color .12s;display:flex}.bucket.over{border-color:var(--ink);background:var(--yellow-soft)}.bucket-h{justify-content:space-between;font-size:.9rem;font-weight:800;display:flex}.tray{background:var(--paper);border-radius:12px;flex-wrap:wrap;gap:8px;min-height:60px;padding:12px;display:flex}.tray.over{background:var(--yellow-soft)}.meter{background:var(--paper);border-radius:5px;height:10px;overflow:hidden}.meter span{background:var(--ink);height:100%;transition:width .25s;display:block}.meter.full span{background:var(--bad)}table.t{border-collapse:collapse;width:100%;font-size:.88rem}table.t th,table.t td{text-align:left;border-bottom:1px solid var(--line);padding:7px 10px}table.t th{font:600 .72rem var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.scroll-x{overflow-x:auto}.chat{flex-direction:column;gap:14px;display:flex}.bubble{max-width:92%}.bubble.me{background:var(--ink);color:var(--on-accent);white-space:pre-wrap;border-radius:16px 16px 4px;align-self:flex-end;padding:10px 14px}.bubble.prof{align-self:flex-start}.who{font:700 .8rem var(--font-ui);align-items:center;gap:8px;margin-bottom:6px;display:flex}.avatar{background:var(--yellow);border:1.5px solid var(--ink);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.8rem;font-weight:800;display:grid}.composer{border:1.5px solid var(--ink);background:var(--sheet);border-radius:14px;align-items:end;gap:10px;padding:8px 8px 8px 14px;display:flex}.composer textarea{resize:none;font:inherit;background:0 0;border:0;outline:none;flex:1;min-height:24px;max-height:160px;padding:6px 0}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px dashed var(--line);background:var(--sheet);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:.85rem}.chip:hover{border-color:var(--ink);border-style:solid}.thinking{color:var(--muted);font-style:italic}.tool-ev{font:.8rem var(--font-mono);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 12px}.tool-ev summary{cursor:pointer}.tool-ev pre{white-space:pre-wrap;word-break:break-word;max-height:220px;margin:8px 0 0;overflow:auto}.tool-ev .lbl{font-weight:700}.tool-ev.call .lbl{color:var(--k-c)}.tool-ev.res .lbl{color:var(--ok)}.tool-ev.err .lbl{color:var(--bad)}.prof-fab{z-index:50;background:var(--yellow);border:2px solid var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:10px 18px 10px 10px;font-weight:800;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 10px 24px #0003}.drawer{z-index:60;background:var(--sheet);border-left:2px solid var(--ink);flex-direction:column;width:min(460px,100vw);display:flex;position:fixed;top:64px;bottom:0;right:0;box-shadow:-16px 0 40px #0000001f}.drawer-h{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.drawer-b{flex:1;padding:18px 20px;overflow-y:auto}.drawer-f{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding:14px 20px 18px;display:flex}.toasts{z-index:80;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:78px;left:50%;transform:translate(-50%)}.toast{background:var(--band);color:var(--on-band);border-radius:999px;align-items:center;gap:10px;padding:10px 18px;font-weight:700;animation:.35s cubic-bezier(.2,1.6,.4,1) pop,3.2s forwards fade;display:flex;box-shadow:0 10px 30px #00000040}.toast .plus{background:var(--yellow);color:var(--on-yellow);border-radius:999px;padding:1px 9px}.toast.badge .plus{background:var(--on-band)}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes fade{0%,80%{opacity:1}to{opacity:0;transform:translateY(-8px)}}.badges{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.badge-c{text-align:center;border:1.5px solid var(--line);background:var(--sheet);border-radius:12px;padding:16px 12px}.badge-c .ico{filter:grayscale();opacity:.35;font-size:2rem}.badge-c.got{border-color:var(--ink);background:var(--yellow-soft)}.badge-c.got .ico{filter:none;opacity:1}.badge-c b{margin-top:6px;font-size:.9rem;display:block}.badge-c small{color:var(--muted);font-size:.76rem}.levels{gap:6px;display:flex}.levels div{text-align:center;background:var(--paper);color:var(--muted);border-radius:8px;flex:1;padding:8px 4px;font-size:.72rem;font-weight:600}.levels div.on{background:var(--ink);color:var(--yellow)}.score-big{font:800 3rem/1 var(--font-ui);letter-spacing:-.04em}.banner{border-radius:12px;padding:12px 16px;font-size:.92rem}.banner.warn{background:var(--yellow-soft);border:1px solid var(--yellow)}.banner.err{background:var(--bad-soft);color:var(--bad)}.grade{border:1.5px solid var(--ink);background:var(--sheet);border-radius:12px;padding:16px 18px}.grade .pts{font:800 1.6rem var(--font-ui)}textarea.answer{border:1.5px solid var(--ink);width:100%;min-height:130px;font:400 1rem/1.55 var(--font-read);resize:vertical;background:var(--sheet);border-radius:12px;padding:12px 14px}input.field,select.field{border:1.5px solid var(--ink);font:inherit;background:var(--sheet);border-radius:10px;width:100%;padding:9px 12px}label.lbl{margin-bottom:6px;font-size:.9rem;font-weight:700;display:block}.svgbox{background:var(--paper);border-radius:12px;width:100%}.footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:28px 24px;font-size:.85rem}@media (width<=960px){.hero-in,.path-head,.casefile-b,.paths,.lesson{grid-template-columns:1fr}.stepper{flex-direction:row;position:static;overflow-x:auto}.step{min-width:150px}.nav a{padding:8px}.xp-pill .bar{display:none}.vdb-grid{grid-template-columns:1fr!important}}input[type=range]{accent-color:var(--ink)}.hero h1 em{-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em}.theme-btn{border:1px solid var(--band-line);color:var(--on-band);cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:600}.theme-btn:hover{border-color:var(--on-band-muted)}.avatar,.prof-fab{color:var(--on-yellow)}.step.done .dot,.mod.done .node{color:var(--on-accent)}.dossier{border:2px solid var(--ink);border-radius:var(--r);background:var(--sheet);overflow:hidden}.dossier-h{cursor:pointer;background:var(--band);color:var(--on-band);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;list-style:none;display:flex}.dossier-h::-webkit-details-marker{display:none}.dossier-h b{font-size:1.15rem;display:block}.dossier-h:after{content:"▾";margin-left:8px}.dossier:not([open]) .dossier-h:after{content:"▸"}.deadline{font:600 .8rem var(--font-mono);background:var(--yellow);color:var(--on-yellow);white-space:nowrap;border-radius:999px;padding:4px 10px}.dossier-b{grid-template-columns:1.15fr 1fr;gap:26px;padding:22px;display:grid}.stakes{background:var(--k-w-bg);border-radius:10px;padding:12px 16px}.stakes .read{font-size:.98rem}.timeline{border-left:3px solid var(--line);flex-direction:column;gap:10px;margin:0;padding:0 0 0 14px;list-style:none;display:flex}.timeline li{grid-template-columns:118px 1fr;gap:10px;font-size:.9rem;display:grid;position:relative}.timeline li:before{content:"";background:var(--line);border:2px solid var(--sheet);border-radius:50%;width:11px;height:11px;position:absolute;top:4px;left:-21px}.timeline li.case:before{background:var(--yellow)}.timeline li.done:before{background:var(--ok)}.timeline li.now:before{background:var(--ink);box-shadow:0 0 0 4px var(--yellow)}.timeline li.now{font-weight:600}.timeline .when{font:500 .76rem var(--font-mono);color:var(--muted);padding-top:2px}.timeline a.tag{text-decoration:none}.cast{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;display:grid}.person-card{border:1px solid var(--line);background:var(--paper);border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:.9rem;display:flex}.avatar.person{background:var(--band);color:var(--on-band);border-color:var(--band);flex:none;width:32px;height:32px;font-size:.72rem}.scene{background:var(--yellow-soft);border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.hook{border-left:4px solid var(--yellow);background:var(--sheet);box-shadow:var(--shadow);border-radius:0 12px 12px 0;align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.hook .read{font-size:1.12rem;font-style:italic}.deliverable{border:1.5px dashed var(--ink);border-radius:12px;padding:12px 14px}.missions{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:12px 14px}.mission{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:10px;padding:5px 0;font-size:.9rem;font-weight:600;display:flex}.mission:last-child{border-bottom:0}.mission small{color:var(--muted);font-size:.76rem;font-weight:400;display:block}.mission b{color:var(--ok);white-space:nowrap}.coldcall{border:1.5px solid var(--ink);background:var(--yellow-soft);border-radius:12px;flex-direction:column;gap:8px;margin-top:12px;padding:12px 14px;display:flex}@media (width<=960px){.dossier-b,.timeline li{grid-template-columns:1fr}}.avatar.bot{width:30px;height:30px;font-size:0;position:relative}.avatar.bot:before{content:"";background:var(--on-yellow);position:absolute;inset:3px 5px 4px;-webkit-mask:url(/otto-mask.png) 50%/contain no-repeat;mask:url(/otto-mask.png) 50%/contain no-repeat}.prof-fab .avatar.bot,.hook .avatar.bot{width:36px;height:36px}.drawer-h .avatar.bot{width:40px;height:40px}.modal-bg{z-index:90;background:#00000073;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{flex-direction:column;gap:12px;width:min(560px,100%);max-height:calc(100vh - 40px);padding:24px;display:flex;overflow-y:auto}.theme-btn.connected{border-color:var(--ok);color:var(--on-band)}
