:root{color-scheme:dark;--bg:#06271d;--panel:#123e30;--lime:#afd34d;--cream:#eff2d8;--muted:#b8cdb7;--line:#466440}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 0,#28583f,transparent 55%),var(--bg);color:var(--cream);font:17px/1.5 system-ui,sans-serif}a{color:inherit}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit;border:1px solid var(--line);background:#173e30;border-radius:16px;padding:14px 20px;min-height:48px}button:hover{border-color:var(--lime);background:#28523b}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid white;outline-offset:4px}button[aria-pressed=true]{background:var(--lime);color:#09271c;border-color:#e0efa4}.primary{background:var(--lime);color:#102d20;border:0;font-weight:800;display:inline-flex;justify-content:center;align-items:center;text-decoration:none;border-radius:100px;padding:16px 26px;min-height:52px}.primary:hover{background:#c8e879;color:#09271c}.secondary{background:transparent}.site-header{display:flex;justify-content:space-between;align-items:center;padding:18px 5%;border-bottom:1px solid var(--line);background:#06231ce8}.site-header img{width:180px;height:auto;display:block}.site-header nav{display:flex;gap:26px;font-weight:700}.site-header nav a{text-decoration:none}.notice{background:#173c2b;text-align:center;padding:12px;font-size:14px}.notice a{margin-left:12px}main{max-width:1400px;margin:auto;padding:44px 5%}h1{font-size:clamp(38px,5.5vw,76px);line-height:1.02;letter-spacing:-.04em;margin:16px 0 24px;font-weight:900}h2{font-size:clamp(24px,3vw,38px);line-height:1.15;margin:12px 0}h3{font-size:22px;margin:10px 0}p{margin:12px 0}small,.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:800;color:var(--muted)}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center;padding-bottom:40px}.hero p{max-width:640px}.accent{color:var(--lime)}.passport{border:1px solid var(--line);border-radius:28px;padding:30px;background:linear-gradient(140deg,#315c40,#103c2c);transform:rotate(2deg)}.passport .seal{width:100px;height:100px;margin:15px auto}.progress-track{height:8px;border-radius:8px;background:#304e3a;overflow:hidden;margin:18px 0}.progress-track>span{display:block;height:100%;background:var(--lime)}.chapter{margin:28px 0;padding:28px;border:1px solid var(--line);border-radius:28px;background:#0b3126}.chapter-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.pills{display:flex;gap:12px;flex-wrap:wrap}.pill{display:inline-block;border:1px solid var(--line);border-radius:40px;padding:5px 12px;font-size:13px;color:var(--muted)}.missions{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.mission{padding:26px;border-radius:22px;background:linear-gradient(145deg,#244d37,#153e30);border:1px solid var(--line)}.mission .art{height:100px;width:100px;color:var(--lime);margin:8px 0}.mission p{color:var(--muted)}.mission .primary{margin-top:16px}.upcoming{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.upcoming section{padding:24px;border-radius:20px;border:1px dashed var(--line)}.bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:26px;flex-wrap:wrap}.board{display:grid;grid-template-columns:.8fr 1.2fr;gap:26px}.panel{padding:clamp(20px,3vw,38px);background:var(--panel);border:1px solid var(--line);border-radius:28px;min-width:0}.badge-view{display:grid;place-items:center;min-height:340px;background:radial-gradient(ellipse,#3c644433,transparent);text-align:center}.medal{width:220px;height:220px;border:3px solid currentColor;border-radius:50%;padding:38px;box-shadow:0 0 0 12px #ffffff08,0 0 0 28px #ffffff04}.medal svg{width:100%;height:100%}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 28px}.choices svg{height:40px;width:40px;display:block;margin:0 auto 6px}.colors{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 24px}.colors span{width:25px;height:25px;border-radius:50%;display:inline-block;vertical-align:middle;margin-right:8px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;align-items:center}.signal{padding:28px;text-align:center;border:1px solid var(--line);border-radius:24px;background:#092b23}.wave{height:85px;display:flex;gap:8px;align-items:center;justify-content:center;margin:20px 0}.wave i{width:12px;border-radius:10px;background:var(--lime)}.rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.rooms button{padding:20px 10px}.rooms svg{display:block;width:70px;height:70px;margin:0 auto 12px}.room-preview{font-size:12px;color:var(--muted)}.rooms button[aria-pressed=true] .room-preview{color:#234627}.dots{display:flex;justify-content:center;gap:8px;margin:18px 0;flex-wrap:wrap}.dots button{min-width:42px;padding:8px;border-radius:50%;font-size:14px}.muted{color:var(--muted)}.result{text-align:center;max-width:760px;margin:auto}.result .seal{width:110px;height:110px;margin:24px auto;color:var(--lime)}.result strong.big{font-size:70px;color:var(--lime);display:block}.result .actions{justify-content:center}.feedback{min-height:28px;color:var(--lime);font-weight:700}#status{position:sticky;bottom:8px;max-width:900px;margin:0 auto;padding:0 18px;background:#06271df2;z-index:2}#status:not(:empty){padding:14px 20px;border:1px solid var(--lime);border-radius:16px}footer{font-size:13px;color:var(--muted);text-align:center;padding:35px 20px;border-top:1px solid var(--line)}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#123e30;padding:14px;z-index:10}.loading{opacity:.6;pointer-events:none}summary{cursor:pointer;padding:12px 0}svg{max-width:100%}@media(max-width:760px){.site-header{padding:14px 20px;gap:18px;flex-wrap:wrap}.site-header img{width:145px}.site-header nav{font-size:13px;gap:16px;flex-wrap:wrap}.hero,.board{grid-template-columns:1fr}.hero{gap:25px}.passport{transform:none}.missions,.upcoming{grid-template-columns:1fr}main{padding:28px 18px}.chapter{padding:20px}.chapter-head{align-items:flex-start;flex-direction:column}.badge-view{min-height:240px}.medal{width:165px;height:165px;padding:25px}.rooms{gap:8px}.rooms button{font-size:14px;padding:14px 6px}.rooms svg{width:48px;height:48px}.room-preview{font-size:10px}.actions .primary{width:100%}.bar{font-size:14px}.signal{padding:20px 12px}h1{font-size:44px}.panel{padding:20px}.colors button{padding:12px}.passport .seal{height:65px;width:65px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Live announcements remain in normal flow; never cover touch controls. */
#status{position:static;max-width:900px;margin:0 auto 18px;z-index:auto}
.postcard-stage{position:relative;min-height:510px;overflow:hidden;color:#294b35;background:linear-gradient(#c9dfcf 65%,#a5bd80 65%);border:10px solid #edf0d5;box-shadow:0 14px 25px #00190e55}
.postcard-stage.tone-1{background:linear-gradient(#e5c995 65%,#afbb7d 65%)}.postcard-stage.tone-2{background:linear-gradient(#12313b 65%,#35583b 65%);color:#e5ead0}
.postcard-sky{position:absolute;width:28%;right:6%;top:3%;color:#bd902e}.tone-2 .postcard-sky{color:#e5ead0}.postcard-place{position:absolute;width:60%;left:2%;top:20%}.postcard-aroma{position:absolute;width:34%;right:4%;top:43%;background:#f0f0dccc;border-radius:50%;padding:6px}.postcard-caption{position:absolute;bottom:0;left:0;right:0;background:#edf0d5;color:#153c2a;padding:24px}.postcard-caption small{color:#476239}.postcard-caption h2{font-size:28px}.postcard-caption p{font-size:15px}.postcard-tabs{display:flex;flex-wrap:wrap;gap:8px}.postcard-tabs button{font-size:14px;padding:10px}.motif-choices svg{height:78px;width:98px}.route-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:start}.route-map{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;isolation:isolate;background:#17382d;border-radius:16px;padding:0;overflow:hidden}.map-cell{border-radius:0;aspect-ratio:1;min-height:0;padding:4px;position:relative;border:3px solid #17382d;background:#28513d;opacity:1!important;display:flex;flex-direction:column;align-items:center;justify-content:center}.map-cell span{font-size:24px;position:relative;z-index:2;line-height:1.1}.map-cell small{color:inherit;font-size:10px;letter-spacing:0;z-index:2}.map-cell:not(:disabled){background:#658843;border:3px solid #d1e580;color:#fff}.map-cell.trail{background:#b6d77c;color:#133723}.map-cell.player{background:#eff0d3;color:#133723;box-shadow:inset 0 0 0 5px #afd34d}.route-line{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.route-line polyline{fill:none;stroke:#163923;stroke-opacity:.35;stroke-width:12;stroke-linecap:round;stroke-linejoin:round}.route-map .map-cell:focus-visible{outline-offset:-5px;z-index:3}.route-practice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:30px 0}.route-practice button{font-size:40px;display:flex;flex-direction:column;align-items:center}.route-practice small{font-size:10px;color:inherit}.route-practice .player{background:var(--lime);color:#102c20;opacity:1}.path-comparison{text-align:left;font-size:15px;line-height:1.8;padding-left:24px}
@media(max-width:760px){.postcard-stage{min-height:380px}.postcard-caption{padding:14px}.postcard-caption h2{font-size:24px}.route-layout{grid-template-columns:1fr}.route-map-panel{padding:14px}.map-cell span{font-size:20px}.map-cell small{font-size:8px}.postcard-tabs button{font-size:12px;padding:8px}.route-practice button{padding:12px 4px}.route-practice{gap:6px}}
.postcard-aroma{color:#294b35}.postcard-souvenir{background:#eff2d8;color:#173e30;border-radius:18px;padding:24px;margin:24px auto;max-width:480px}.postcard-souvenir>div{display:flex;gap:12px;justify-content:center}.postcard-souvenir svg{width:28%;height:90px}.postcard-souvenir small{color:#476239}.map-cell.trail:not(.player) small:not(:first-child){font-size:9px}
.studio-head,.studio-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.rhythm-studio{background:linear-gradient(145deg,#244e3c,#092d23);box-shadow:0 16px 40px #001e1455}.beat-numbers,.beat-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}.beat-numbers{text-align:center;color:var(--muted);margin:28px 0 8px}.beat-row{margin-bottom:26px}.beat-pad{min-height:58px;aspect-ratio:1.35;padding:5px;border-radius:12px;background:#08281f;box-shadow:inset 0 -5px 0 #00170f55;font-size:25px}.beat-pad.on{background:var(--lime);color:#123621;border-color:#d0ed87}.beat-pad.playing{outline:4px solid #fff2ae;outline-offset:-4px;transform:translateY(-2px)}.instrument-label{display:flex;justify-content:space-between;font-size:15px;margin:10px 0}.instrument-label span{font-style:italic;color:var(--muted)}.studio-footer{border-top:1px solid var(--line);padding-top:20px}.studio-footer label{display:block;margin-bottom:8px}.studio-footer select{max-width:100%;background:#062a20;color:var(--cream);border:1px solid var(--line);border-radius:12px;min-height:48px;padding:10px;font:inherit}.studio-footer .actions{margin:0}.mini-sequence{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.mini-sequence i{aspect-ratio:1;background:#082a21;border:1px solid var(--line);border-radius:5px}.mini-sequence i.on{background:var(--lime)}.rhythm-souvenir{max-width:460px;margin:24px auto;padding:24px;border-radius:22px;border:1px solid var(--line);background:#0d3024}.inspection-order{border-left:5px solid var(--lime);background:#234c35;padding:20px 26px;margin:24px 0}.inspection-order h2{font-size:clamp(23px,3vw,34px)}.inspection-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}.parcel-scene{position:relative;min-height:440px;overflow:hidden;border:12px solid #86643b;border-radius:22px;background:linear-gradient(135deg,#dab47a,#be985f);color:#342b1b;box-shadow:inset 0 0 35px #6a491f33,0 18px 20px #001c1633}.parcel-tape{position:absolute;top:0;bottom:0;left:44%;width:13%;background:#ecce98b3;border-inline:2px dashed #907448}.parcel-code{position:relative;z-index:1;padding:24px;font:800 14px/1.5 monospace;letter-spacing:.13em}.parcel-seal{position:absolute;top:24%;left:6%;width:32%;height:155px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:#edf1d7;color:#214b35;border:3px dashed #3e6850;padding:12px;box-shadow:0 5px 8px #47301444}.parcel-seal svg{width:65px;height:65px}.parcel-seal strong{font-size:14px}.clue-cover{font-size:44px;font-weight:900}.parcel-label{position:absolute;top:27%;right:5%;width:47%;min-height:140px;transform:rotate(-4deg);background:#f4edcf;color:#2a3f2c;border:1px solid #b2a77d;display:flex;flex-direction:column;gap:14px;align-items:center}.parcel-label small{color:#4c6243}.barcode{width:85%;height:22px;background:repeating-linear-gradient(90deg,#294b35 0 2px,transparent 2px 5px,#294b35 5px 9px,transparent 9px 12px)}.parcel-label:hover,.parcel-seal:hover{background:#fff9df;color:#214b35}.parcel-stamp{position:absolute;bottom:30px;left:15%;right:15%;text-align:center;border:4px double #325c40;color:#325c40;transform:rotate(-9deg);padding:12px;font-size:28px;font-weight:900;letter-spacing:.08em;background:#f7edc544}.parcel-stamp.hidden{visibility:hidden}.evidence-checks{list-style:none;padding:0;line-height:2}.stamp-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.stamp-actions button{font-weight:900;min-height:70px}.evidence-review{text-align:left;padding-left:22px;font-size:15px}.evidence-review li{margin:18px 0;padding-bottom:14px;border-bottom:1px solid var(--line)}
@media(max-width:760px){.beat-numbers,.beat-row{gap:5px}.beat-pad{min-height:36px;border-radius:7px;font-size:18px;aspect-ratio:1}.rhythm-studio{padding:15px}.studio-head{gap:8px}.studio-footer{gap:16px}.studio-footer .actions{gap:8px}.studio-footer button{font-size:14px;padding:12px}.inspection-layout{grid-template-columns:1fr}.parcel-scene{min-height:350px;border-width:8px}.parcel-code{padding:16px}.parcel-seal{width:35%;left:4%;height:125px;padding:8px}.parcel-seal svg{height:48px;width:48px}.parcel-label{right:3%;width:50%;font-size:14px;padding:12px;min-height:120px}.parcel-stamp{font-size:23px;bottom:30px}.inspection-order{padding:15px}.stamp-actions{gap:8px}.stamp-actions button{padding:10px;font-size:15px}.rhythm-souvenir{padding:18px}}
.parcel-stamp{bottom:45px;transform:rotate(-6deg)}
@media(max-width:360px){main h1{font-size:34px}.beat-numbers,.beat-row{gap:4px}.beat-pad{min-height:32px}.parcel-seal strong{font-size:12px}.parcel-label{font-size:12px}}
.perspective-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}.library-scene{position:relative;min-height:540px;border:10px solid #758571;border-radius:24px;background:repeating-linear-gradient(0deg,#dadbc1 0 53px,#cbccb2 53px 56px);color:#163b2b;padding:22px}.library-sign{text-align:center;letter-spacing:.18em;font-weight:900;background:#1d4634;color:#e4ebc8;padding:14px;border-radius:9px}.library-door{width:46%;height:215px;margin:20px auto 16px;background:#6b8366;border:10px solid #304f3a;position:relative;border-radius:70px 70px 0 0;display:grid;place-items:center}.library-door i{width:8px;height:25px;position:absolute;right:9px;top:65%;background:#eddb9d;border-radius:3px}.door-window{text-align:center;background:#e3e5ca;padding:10px;font-size:14px;font-weight:900;transform:rotate(-5deg)}.door-window small{font-size:8px;color:#234730;letter-spacing:.04em}.clue-shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.clue-shelf button{padding:10px;color:#214331;background:#edf0d3;border:2px solid #547653;font-size:13px;min-height:115px}.clue-shelf button span{display:block;font-size:32px}.clue-shelf button[aria-expanded=true]{background:#c4dc92}.confidence-label{display:block;font-weight:700;margin:28px 0 12px}.confidence-label output{color:var(--lime)}#confidence{width:100%;min-height:44px;accent-color:var(--lime)}.range-ends{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted);margin:8px 0 28px}.perspective-comparison{display:flex;justify-content:center;gap:20px;align-items:center;margin:28px 0;padding:25px;background:#224c36;border-radius:20px}.perspective-comparison strong{display:block;font-size:44px;color:var(--lime)}.packing-order{border-left:5px solid var(--lime);background:#234c35;padding:20px 26px;margin:24px 0}.packing-order h2{font-size:clamp(24px,3vw,36px)}.packing-layout{display:grid;grid-template-columns:.8fr 1.5fr;gap:24px;align-items:start}.bag-panel{background:linear-gradient(#254c37,#0c3023)}.bag-handle{width:110px;height:40px;border:12px solid #b7cc92;border-bottom:0;border-radius:40px 40px 0 0;margin:auto}.bag-body{border:4px solid #94b576;border-radius:50px 50px 26px 26px;background:#345e40;padding:26px 20px;text-align:center;box-shadow:inset 0 -12px 0 #1e442f}.capacity-slots{display:flex;justify-content:center;gap:7px;margin-top:24px}.capacity-slots span{width:34px;height:34px;display:grid;place-items:center;background:#173827;border:1px solid #839e6a;border-radius:6px}.capacity-slots .filled{background:var(--lime);color:#153d26;font-weight:900}.packed-items{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;min-height:165px}.packed-items>p{grid-column:1/-1}.packed-items button{padding:10px 5px;background:#e9edce;color:#1f492f;font-size:12px}.packed-items svg{height:50px;display:block;margin:auto}.packing-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.packing-items button{padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:7px}.packing-items svg{height:72px;width:65px}.packing-items strong{font-size:14px}.packing-items small{font-size:10px;letter-spacing:0;color:inherit}.packing-items button[aria-pressed=true]{box-shadow:inset 0 -5px 0 #7aa72d}
@media(max-width:900px){.packing-items{grid-template-columns:repeat(2,minmax(0,1fr))}.perspective-layout,.packing-layout{grid-template-columns:1fr}.library-scene{min-height:490px}.clue-shelf button{min-height:108px}.bag-body{max-width:360px;margin:auto}.bag-panel>p{text-align:center}}
@media(max-width:420px){.library-scene{padding:14px;border-width:7px;min-height:490px}.library-door{width:58%}.clue-shelf{gap:5px}.clue-shelf button{padding:7px 4px;font-size:11px}.perspective-comparison{gap:10px;padding:16px}.perspective-comparison small{font-size:9px;letter-spacing:.05em}.perspective-comparison strong{font-size:34px}.packing-order{padding:16px}.packing-items{gap:8px}.packing-items strong{font-size:13px}}
/* Chapter five: touch-first agreement board and resource table. */
.agreement-tasks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.agreement-tasks button{display:grid;gap:10px;text-align:left}.agreement-tasks svg{width:65px;height:65px}.agreement-tasks [aria-pressed=true]{background:#afd34d;color:#08392b}.agreement-board,.agreement-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.agreement-board>button{display:flex;flex-direction:column;gap:18px;min-height:230px;text-align:left;border-style:dashed}.agreement-notes{display:grid;gap:10px;flex:1}.agreement-notes>span{padding:14px;background:#e5e8cd;color:#123d30;border-radius:3px 16px 16px 3px;box-shadow:3px 4px 0 #0003}.resource-bank{text-align:center;padding:20px}.token{display:inline-block;font-size:42px;color:#afd34d;margin:0 5px}.token.spent{opacity:.15}.resource-targets{display:grid;grid-template-columns:1fr 1fr;gap:24px}.resource-targets article{background:#ffffff08;border:1px solid #afd34d66;border-radius:28px;padding:28px;text-align:center}.resource-icon svg{width:85px;height:85px;color:#c7d99b}.token-meter{min-height:40px;font-size:30px;letter-spacing:5px}.token-meter .filled{color:#afd34d}.resource-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin:20px 0}.resource-controls button{min-width:54px;min-height:54px;font-size:24px}.resource-controls output{font-size:32px;font-weight:700}.agreement-summary article{padding:18px;border:1px solid #afd34d66;border-radius:18px}.agreement-summary h2{font-size:26px}
@media(max-width:760px){.agreement-tasks{grid-template-columns:1fr 1fr}.agreement-board,.agreement-summary,.resource-targets{grid-template-columns:1fr}.agreement-board>button{min-height:140px}.resource-targets article{padding:18px}.resource-bank{padding:10px}.token{font-size:30px;margin:0 3px}}
.agreement-tasks [aria-pressed=true] small{color:#17432b}
/* Chapter six: conversation bubbles and a touch/keyboard sorting desk. */
.conversation-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:24px;align-items:start}.conversation-guide .seal{width:90px;height:90px}.conversation-guide h2{font-size:30px}.chat-panel{background:#0e4f2d}.chat-heading{display:flex;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}.chat-heading small{display:block;font-size:10px;margin-top:8px;letter-spacing:.09em}.chat-avatar{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:#bdd48e;color:#153829;font-size:35px;flex-shrink:0}.chat-history{display:flex;flex-direction:column;gap:20px;padding:28px 0}.chat-message{padding:20px 24px;max-width:85%;border-radius:22px;position:relative;text-align:left}.chat-message p{margin:8px 0 0}.chat-message small{font-size:10px;color:inherit;opacity:.85;letter-spacing:.07em}.chat-message.theirs{align-self:flex-start;background:#e6eacb;color:#17392e;border-bottom-left-radius:3px}.chat-message.yours{align-self:flex-end;background:#365940;color:#f4f3de;border-bottom-right-radius:3px}.chat-composer{border-top:1px solid var(--line);padding-top:18px}.chat-composer h2{font-size:27px}.chat-replies{display:grid;gap:10px}.chat-replies button{text-align:left;display:flex;justify-content:space-between;gap:16px;background:#193d2e}.chat-replies button:hover{background:#afd34d;color:#12392a}.chat-back{margin-top:18px;background:transparent;font-size:14px}.chat-result{display:flex;flex-direction:column;gap:18px;max-width:650px;margin:30px auto}.observation-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:24px;align-items:start}.observation-reference{position:sticky;top:20px}.observation-scene{margin:20px 0}.observation-scene svg{width:100%;height:auto;border-radius:20px;display:block}.scene-description{font-size:15px;line-height:1.7;background:#fff1;padding:18px;border-radius:14px}.observation-work h2{font-size:28px}.observation-notes{display:grid;gap:10px;margin:20px 0 26px}.observation-notes button{display:flex;gap:14px;text-align:left;background:#e7e8cd;color:#203e2e;border-radius:3px 16px 16px 3px;padding:16px;align-items:flex-start}.observation-notes button[aria-pressed=true]{background:#afd34d;outline:3px solid #dcecb3;outline-offset:2px}.observation-notes small{display:block;color:#32583c;letter-spacing:.03em;font-size:11px;margin-top:8px}.note-number{border-bottom:2px solid #568044;font-weight:800;font-size:13px;padding:4px 0}.observation-trays{display:grid;grid-template-columns:1fr 1fr;gap:14px}.observation-trays button{display:flex;flex-direction:column;align-items:center;gap:12px;border:2px dashed #a4be77;padding:20px 10px;min-height:150px;background:#244d36;box-shadow:inset 0 -8px 0 #123526}.observation-trays svg{width:42px;height:42px}.observation-trays small{font-size:10px;color:inherit;letter-spacing:.02em}.review-trays{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:28px 0}.review-trays>section{padding:22px;background:#092d23;border:1px dashed var(--lime);border-radius:22px}.review-trays button{display:block;text-align:left;width:100%;margin:12px 0;background:#e7e8cd;color:#1b422e}.season-finale{margin-top:40px;background:radial-gradient(ellipse at top,#345834,#0a3024);border:2px solid var(--lime)}
@media(max-width:900px){.conversation-layout,.observation-layout{grid-template-columns:1fr}.conversation-guide .seal{display:none}.observation-reference{position:static}}
@media(max-width:600px){.chat-message{max-width:96%;padding:16px}.chat-heading{gap:10px}.chat-avatar{width:42px;height:42px}.chat-panel{padding:18px}.chat-replies button{padding:15px;font-size:15px}.review-trays{grid-template-columns:1fr}.observation-trays{gap:10px}.observation-trays button{padding:14px 6px;font-size:14px}.observation-notes button{padding:14px 12px;font-size:15px}.scene-description{padding:14px;font-size:14px}}
.observation-deck{background:#edf0d4;color:#23442f;padding:30px 24px;border-radius:3px 24px 24px 3px;box-shadow:5px 6px 0 #92a96e66;margin:24px 0;min-height:220px;display:flex;flex-direction:column;justify-content:center}.observation-deck .eyebrow{color:#46633d;font-size:12px}.observation-deck p{font-size:clamp(22px,2vw,29px);font-weight:750;line-height:1.4;margin:20px 0}.observation-deck .pill{align-self:flex-start;color:#23442f;border-color:#5c784d}.observation-notes{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.observation-notes button{justify-content:center;align-items:center;border-radius:9px;min-height:44px;padding:12px 3px;font-size:14px}.chat-history{max-height:540px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#afd34d #12372b;scrollbar-width:thin}.observation-work .feedback{font-size:15px}
.journey-panel{padding:clamp(18px,4vw,40px);border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,#204f39,#092d24);margin:32px 0 48px}.journey-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.journey-steps li>a,.journey-steps li>div{display:flex;gap:14px;align-items:center;padding:18px;border:1px solid #809c6866;border-radius:16px;min-height:110px;height:100%;text-decoration:none;background:#06291f77}.journey-number{font-weight:800;font-size:22px;color:#bada6f;flex-shrink:0}.journey-steps strong{display:block;font-size:17px;line-height:1.4}.journey-steps small{display:block;color:#c7d5bb;margin-top:8px;font-size:12px;line-height:1.5}.journey-steps .state-complete>a{background:#afcf4520}.journey-steps .state-resume>a{border:2px solid #cce995;background:#315d38}.journey-steps a:hover{background:#3c5f3b;border-color:#c9e587}.journey-steps a:focus-visible{outline:3px solid #dfefb2;outline-offset:3px}.journey-steps .state-scheduled>div,.journey-steps .state-expired>div{border-style:dashed}.mission-status{padding:14px 0;border-top:1px solid var(--line);color:#d6ddc7;font-weight:700}.journey-panel details{padding:16px 0;border-top:1px solid var(--line)}.journey-panel summary{cursor:pointer;font-weight:700}@media(max-width:1000px){.journey-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.journey-steps{grid-template-columns:1fr}.journey-steps li>a,.journey-steps li>div{min-height:80px;padding:14px}.journey-panel .chapter-head{align-items:flex-start}.journey-panel h2{font-size:32px}}
.completion-celebration{position:relative;overflow:hidden;padding:32px 20px;margin-bottom:30px;border:1px solid #adce57;border-radius:24px;background:radial-gradient(at top,#527b39,#0b392b 70%)}.celebration-score{display:block;font-size:clamp(32px,6vw,64px);color:#ceef8e;margin:20px 0}.celebration-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.celebration-actions>*{min-height:48px}.celebration-confetti{pointer-events:none;position:absolute;left:var(--x);top:0;width:8px;height:14px;background:#c9eb7d;opacity:0;animation:confetti-drop 1.3s var(--delay) ease-out}.celebrate-now .celebration-score{animation:score-pop .7s ease-out}@keyframes score-pop{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes confetti-drop{0%{opacity:1;transform:translateY(-20px) rotate(0)}100%{opacity:0;transform:translateY(320px) rotate(230deg)}}@media(prefers-reduced-motion:reduce){.celebration-confetti,.celebrate-now .celebration-score{animation:none}}@media(max-width:600px){.celebration-actions>*{width:100%;padding:14px}.completion-celebration{padding:24px 14px}.completion-celebration h2{font-size:28px}}
.resource-review{text-align:left;margin:32px 0}.resource-review>article{border-top:1px solid #728c5b;padding:20px 0}.resource-outcomes{display:grid;grid-template-columns:1fr 1fr;gap:16px}.resource-outcomes section{padding:18px;border:1px solid #7f9c60;border-radius:16px;background:#214c39}.resource-outcomes .needs-review{border-color:#e7c27c;background:#49432b}.resource-outcomes p{font-size:16px;margin:10px 0}.resource-dots{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.resource-dots span{display:grid;place-items:center;width:34px;height:34px;border:2px solid #cee29f;border-radius:50%;font-size:22px}.resource-dots .filled{background:#c5db82;color:#244731}.resource-dots .empty{border-style:dashed;color:#efcf93}@media(max-width:600px){.resource-outcomes{grid-template-columns:1fr}.resource-review h3{font-size:22px}}
.reel-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none;text-align:left;margin:24px 0}.reel-steps li{display:grid;gap:8px;padding:18px;border:1px solid #728c5b;border-radius:14px;background:#214c39}.reel-steps span{font-size:16px;line-height:1.5}.rhythm-reel progress{width:100%;height:18px;accent-color:#b2d64c;margin:12px 0}.rhythm-reel progress[hidden]{display:none}@media(max-width:600px){.reel-steps{grid-template-columns:1fr}}
.context-progress{font-size:15px;font-weight:700;background:#edf0d3;padding:12px;border-radius:10px}.context-takeaway{text-align:left;margin:30px 0}.context-bars{display:grid;gap:18px;padding:22px;background:#214c39;border-radius:18px}.context-bars>div{display:grid;grid-template-columns:1fr auto;gap:10px}.context-bars strong{color:#d0e58e}.context-scale{grid-column:1/-1;height:16px;background:#092d22;border-radius:12px;overflow:hidden;border:1px solid #8baf76}.context-scale i{display:block;height:100%;background:#b4d653}.context-bars>div:first-child i{background:#a9cebd}.context-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.context-timeline article{padding:20px;border:1px solid #829b65;border-radius:16px;background:#214c39}.context-timeline span{font-size:36px;color:#d9dfa7}.context-timeline h3{font-size:20px}.context-timeline p{font-size:16px}@media(max-width:650px){.context-timeline{grid-template-columns:1fr}}
.evidence-proof{display:grid;gap:10px;margin:20px 0}.evidence-proof article{padding:14px;border:1px solid #86ac79;border-radius:12px;background:#214a38}.evidence-proof .contradicts{border-color:#e6c087;background:#48412c}.evidence-proof p{margin:8px 0 0;font-size:16px}.evidence-reason{border-left:4px solid #b4d653;padding:12px 16px;background:#173f30}
.comparison-summary{padding:16px;border:1px solid #9db580;border-radius:14px;margin:20px 0;text-align:left;background:#214a38}.comparison-summary p{margin:0 0 12px}.comparison-summary button{min-height:44px}
.route-step-track{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;list-style:none;padding:0;margin:16px 0}.route-step-track li{display:grid;place-items:center;min-height:28px;border:1px solid #819c66;border-radius:8px;color:#dbe5c8;font-size:13px}.route-step-track .walked{background:#c5df77;color:#143d2c;border-color:#c5df77}
.map-cell .route-number{display:grid;place-items:center;width:1.65em;height:1.65em;border-radius:50%;background:#dcecb9;box-shadow:0 2px 0 #45693833;font-weight:800}.map-cell.player .route-number{background:#143e2d;color:#f3f1d5}.map-cell.player small{font-weight:900;letter-spacing:.04em}.map-cell:not(:disabled)>span{font-size:30px;font-weight:800}.map-cell.player>span{animation:route-arrive .22s ease-out}@keyframes route-arrive{from{transform:scale(.8)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.map-cell.player>span{animation:none}}
