:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f8edda;background:#101f27;font-synthesis:none;--gold:#f4d09a;--amber:#dc9953;--cream:#f5e8cd;--ink:#172c31;--teal:#356b6a;--muted:#b5c0ba;--line:#ffffff26}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;border:1px solid var(--line);border-radius:7px;background:#1d343b;padding:11px 16px;font-weight:650;transition:transform .15s,box-shadow .15s,border-color .15s}button:hover:not(:disabled){border-color:#e4c694;transform:translateY(-2px)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #8bdbc6;outline-offset:4px}.gold{background:linear-gradient(#f6dcaa,#e7b779);color:#34291d;border:1px solid #ffe6b3;box-shadow:0 4px 0 #6a4b2e,0 5px 20px #0003;text-shadow:0 1px #fff5}.gold:hover:not(:disabled){box-shadow:0 5px 0 #6a4b2e,0 8px 25px #0005}.quiet{background:transparent}.small{font-size:11px;padding:8px 11px}.text-btn{border:0;background:none;text-decoration:underline;text-underline-offset:4px;padding:5px;font-size:12px}a{color:inherit;text-underline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400}h1{font-size:clamp(48px,5.3vw,80px);letter-spacing:-2px;line-height:1.03}h2{font-size:38px;letter-spacing:-.8px}h3{font-size:25px}.kicker{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}.muted{color:var(--muted)}.topbar{height:63px;padding:0 30px;display:flex;gap:15px;align-items:center;justify-content:space-between;position:relative;z-index:3;background:#10222b;border-bottom:1px solid #ffffff13}.wordmark{font:19px Georgia,serif;letter-spacing:1px;display:flex;align-items:center;gap:12px}.wordmark .crest{width:26px;height:32px;border:1px solid var(--gold);border-radius:50% 50% 40% 40%;display:inline-grid;place-items:center;font-size:17px;color:var(--gold);box-shadow:0 0 16px #f5bf6033}.top-actions{display:flex;gap:9px;align-items:center}.status{font-size:11px;color:#d4dccf;letter-spacing:1px}.chip{display:inline-flex;align-items:center;gap:6px;font-size:10px;padding:7px 10px;border:1px solid #e7c28555;border-radius:30px;color:#f8d6a7;background:#152b31b3}.lab{max-width:1600px;margin:auto}.labhero{height:min(650px,67vh);min-height:450px;position:relative;isolation:isolate;overflow:hidden}.labhero .world{position:absolute;inset:0;width:100%;height:100%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#081c27dd,#12242b66 48%,transparent 70%),linear-gradient(0deg,#10222bff,transparent 45%)}.hero-copy{position:relative;z-index:2;padding:65px 7%;max-width:770px}.hero-copy h1{margin:19px 0}.hero-copy p{font-size:16px;line-height:1.7;max-width:460px;color:#e4e3d5}.hero-copy .actions{margin-top:27px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.hero-caption{position:absolute;bottom:24px;right:32px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#ecdfc9;z-index:2}.story-selector{padding:0 5% 30px;margin-top:-20px;position:relative;z-index:3}.selector-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:15px}.selector-head p{font-size:12px;color:#b5c7c6}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.story-card{display:grid;grid-template-columns:36% 1fr;padding:0;text-align:left;border:1px solid #667171;border-radius:9px;overflow:hidden;background:#1c3139;min-height:125px}.story-card.active{border:2px solid #e6c28e;box-shadow:0 0 25px #e4b96615}.story-card .thumbnail{background-size:cover;background-position:center;min-height:125px}.story-card .story-caption{padding:17px}.story-card h3{font-size:23px}.story-card p{font-size:11px;color:#b6c4bf;line-height:1.5;margin-top:7px}.story-card span{font-size:9px;color:#f6d59f;text-transform:uppercase;letter-spacing:1px}.lab-foot{display:flex;justify-content:space-between;gap:25px;padding:5px 5% 35px;font-size:12px;color:#b9c8c2;line-height:1.6}.lab-foot a{color:#e6c89c}.join-form{display:flex;gap:8px;align-items:center}.join-form input{width:110px;text-transform:uppercase;letter-spacing:2px}.field{background:#0f2027;border:1px solid #72827a;color:#f8e7c9;border-radius:6px;padding:11px}.chapterbar{height:60px;display:flex;justify-content:space-between;align-items:center;padding:10px 30px;background:#172c31;gap:25px}.chapter-name{display:flex;gap:16px;align-items:center}.chapter-number{font:32px Georgia;color:var(--gold)}.chapter-name h2{font-size:22px;letter-spacing:0}.chapter-name .kicker{font-size:9px;margin-bottom:3px}.bells{display:flex;gap:6px}.bell{height:7px;width:21px;border-radius:7px;background:#60716b66}.bell.done{background:#a8c2a0}.bell.current{background:#f5c580;box-shadow:0 0 13px #fac9808c}.game-wrap{max-width:1700px;margin:auto}.stage{position:relative;height:clamp(320px,46vh,570px);overflow:hidden;background:#1b3336;isolation:isolate}.stage .world{width:100%;height:100%;display:block}.scene-shade{position:absolute;inset:0;background:linear-gradient(0deg,#12262b99,transparent 28%);pointer-events:none}.hud{position:absolute;top:17px;left:24px;right:24px;display:flex;justify-content:space-between;gap:16px;pointer-events:none}.goals{display:flex;gap:9px}.goal{display:flex;align-items:center;gap:10px;min-width:142px;padding:10px 14px;background:#10282ce8;border:1px solid #edcf9f55;border-radius:8px;box-shadow:0 4px 14px #0003}.goal-icon{font-size:22px;opacity:.8;color:#cfb47f}.goal.lit{border-color:#ffe4a4;background:#624c26dd;box-shadow:0 0 22px #f6bd5b2e}.goal.lit .goal-icon{color:#ffe5a6}.goal strong{display:block;font-size:11px;font-weight:650}.goal small{display:block;font-size:9px;color:#d1c9b5;margin-top:3px}.goal-bar{height:3px;background:#81907844;margin-top:6px;border-radius:3px}.goal-bar i{height:100%;display:block;background:#e9c585}.treasury{display:flex;gap:20px;background:#0d252ddd;padding:10px 18px;border:1px solid #88a39e77;border-radius:8px;text-align:right;font-variant-numeric:tabular-nums}.treasury b{font:24px Georgia;display:block}.treasury span{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#d0d6c5}.scene-bottom{position:absolute;bottom:18px;left:24px;right:24px;display:flex;align-items:end;justify-content:space-between;gap:25px;pointer-events:none}.speech{background:#f2e2bcf5;color:#3b3b2f;max-width:475px;padding:13px 20px 13px 66px;border-radius:9px;box-shadow:0 4px 30px #0004;position:relative;line-height:1.45;min-height:64px}.speech .portrait{position:absolute;left:8px;bottom:0;width:54px;height:77px;overflow:hidden;background-image:url('/assets/workers.webp');background-size:420% auto;background-position:0% 5%}.speech b{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:3px;color:#7c5b31}.speech p{font:15px Georgia;line-height:1.4}.stage-stats{display:flex;gap:18px;background:#10252cdd;padding:12px 18px;border-radius:7px}.stage-stats b{font:25px Georgia;color:#fae1ab}.stage-stats span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#b7c6c0;margin-top:4px}.decision-dock{padding:20px 28px 22px;background:linear-gradient(#20373c,#142930);border-top:1px solid #e5c88e55;position:relative;z-index:2}.decision-header{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:15px}.decision-header h3{font-size:26px}.decision-header p{font-size:12px;color:#bbc9bf;margin-top:5px}.turn-control{display:flex;align-items:center;gap:15px}.votes{font-size:11px;color:#b6c5be;text-align:right}.votes b{font-size:22px;color:#f4d4a0;display:block;font-variant-numeric:tabular-nums}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.plan{border:1px solid #ccb98566;padding:0;text-align:left;border-radius:9px;background:#f1e4c9;color:#263b3b;overflow:hidden;box-shadow:0 5px 0 #091b20,0 8px 16px #0002;position:relative;transition:transform .18s,box-shadow .18s;min-width:0}.plan:hover:not(:disabled){transform:translateY(-5px);box-shadow:0 7px 0 #091b20,0 12px 24px #0005;border-color:#ffddb2}.plan.selected{border:2px solid #ffe0a0;transform:translateY(-5px);box-shadow:0 0 0 2px #b8945555,0 9px 0 #091b20,0 0 26px #ffd68b30}.plan-art{height:94px;background-image:url('/assets/lantern-cards.webp');background-size:300% auto;background-position-y:45%;position:relative}.plan-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102c3a22,transparent)}.plan[data-choice="pace"] .plan-art{background-position-x:0%}.plan[data-choice="rush"] .plan-art{background-position-x:50%}.plan[data-choice="apprentice"] .plan-art{background-position-x:100%;background-position-y:27%}.card-num{position:absolute;top:8px;left:10px;border:1px solid #eed1a57a;border-radius:50%;height:22px;width:22px;display:grid;place-items:center;color:#ffefcd;background:#173234b3;font-size:10px}.selected-mark{position:absolute;top:9px;right:10px;z-index:1;background:#f5d391;color:#463522;border-radius:30px;font-size:9px;padding:5px 10px;text-transform:uppercase;letter-spacing:.8px}.plan-body{padding:11px 17px 13px}.plan h3{font-size:22px;color:#263d3b;line-height:1.15}.plan .flavor{color:#6d7366;font-size:11px;line-height:1.4;margin-top:4px;min-height:16px}.effects{display:flex;gap:12px;border-top:1px solid #85927244;padding-top:9px;margin-top:9px;font-size:10px;color:#4e645e;flex-wrap:wrap}.effects b{color:#2a433c;font-size:13px}.pledge{font-size:10px;color:#9daaa5;line-height:1.5;margin-top:17px;display:flex;gap:12px;align-items:center;justify-content:space-between}.mini-controls{display:flex;gap:9px;align-items:center}.selected-note{display:none}.mobile-commit{display:none}.live-receipt{font-size:11px;color:#ffe0a4}.overlay{position:fixed;inset:0;z-index:20;background:#081a22b8;display:grid;place-items:center;padding:24px;backdrop-filter:blur(6px)}.paper{background:#f4e9d0;color:#2c4240;border:1px solid #f5d9a6;border-radius:12px;box-shadow:0 24px 100px #0008;padding:36px;max-width:720px;width:100%;position:relative}.paper .kicker{color:#997145}.paper h2{font-size:40px;margin:10px 0 15px}.paper p{font-size:15px;line-height:1.7;color:#5c6c5e}.paper .actions{margin-top:25px}.paper .quiet{color:#3d5148;border-color:#859b88}.paper .close{position:absolute;right:15px;top:12px;color:#41614f;font-size:18px;border:0;background:transparent}.instruction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:23px 0}.instruction{border-top:2px solid #ab8951;padding-top:13px}.instruction b{font:26px Georgia;display:block;margin-bottom:8px}.instruction p{font-size:12px;line-height:1.55}.intro-scene{position:relative;min-height:calc(100vh - 63px);display:grid;place-items:center;padding:40px}.intro-scene .world{position:absolute;inset:0;width:100%;height:100%}.intro-scene:after{content:'';position:absolute;inset:0;background:#0a202b70;pointer-events:none}.intro-content{position:relative;z-index:2;display:grid;grid-template-columns:1fr 380px;gap:45px;max-width:1100px;align-items:center}.welcome{padding:35px;background:#112a30e8;border:1px solid #ebca9366;border-radius:12px}.welcome h1{font-size:55px;margin:13px 0 20px}.welcome p{font-size:15px;color:#e4ded0;line-height:1.7}.join-sign{background:#f1e4c9;color:#314944;padding:30px;border-radius:12px;box-shadow:0 5px 0 #544130}.join-sign .kicker{color:#887342}.join-sign .code{font:46px Georgia;letter-spacing:5px;margin:16px 0}.join-sign p{font-size:13px;line-height:1.6}.join-sign a{display:block;font-size:12px;overflow-wrap:anywhere;margin:15px 0}.join-sign .gold{display:block;width:100%;margin-top:20px}.pledge-list{display:grid;gap:12px;margin:22px 0}.pledge-row{display:flex;gap:12px;align-items:center;padding-bottom:12px;border-bottom:1px solid #eadcbd22}.pledge-row b{font:26px Georgia;color:#f2ce91}.pledge-row span{font-size:13px;color:#d6decd}.council-banner{text-align:center;padding:18px 30px 0;background:#20373c}.council-banner h2{font-size:32px;margin-top:8px}.council-banner p{font-size:13px;line-height:1.5;color:#bfcbc0;margin:8px auto;max-width:680px}.council .plan-art{background-image:url('/assets/lantern-world.webp');background-size:250% auto;height:130px}.council .plan[data-choice="keepers"] .plan-art{background-image:url('/assets/lantern-cards.webp');background-size:300% auto;background-position:100% 15%}.council .plan[data-choice="press"] .plan-art{background-image:url('/assets/lantern-cards.webp');background-size:300% auto;background-position:50% 40%}.council .plan[data-choice="academy"] .plan-art{background-image:url('/assets/lantern-cards.webp');background-size:300% auto;background-position:100% 40%}.resolution{position:fixed;inset:0;z-index:12;pointer-events:none;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#0a202744,transparent 60%);animation:enter .3s ease}.resolution .seal{text-align:center;background:#152f35ee;border:1px solid #f3d196b3;box-shadow:0 10px 60px #0006;border-radius:14px;padding:24px 45px;max-width:540px}.seal b{font:44px Georgia;color:#ffe1a6}.seal p{font-size:13px;color:#d6e0cf;margin-top:8px}.ending{position:relative;min-height:calc(100vh - 63px);display:grid;place-items:center;padding:50px 25px}.ending .world{position:absolute;inset:0;width:100%;height:100%}.ending:after{content:'';position:absolute;inset:0;background:#09202c70;pointer-events:none}.ending-card{position:relative;z-index:2;text-align:center;max-width:760px;padding:42px;background:#102b33eb;border:1px solid #e7c38c77;border-radius:14px;box-shadow:0 20px 100px #0005}.ending-card h1{font-size:54px;margin:20px 0}.ending-card p{line-height:1.7;color:#ccd7c8}.stars{font-size:35px;letter-spacing:14px;color:#ffda8f;text-shadow:0 0 28px #f2a34288}.result-metrics{display:flex;justify-content:center;gap:35px;margin:25px 0}.result-metrics b{font:35px Georgia;display:block;color:#f8d39d}.result-metrics span{font-size:10px;color:#b6c7bc;display:block;margin-top:5px}.ending-card .actions{justify-content:center}.reveal-shell{max-width:1280px;margin:0 auto;padding:35px 30px 50px}.reveal-shell h1{font-size:49px;margin:12px 0}.reveal-shell .lead{font:21px/1.5 Georgia;color:#d6daca;max-width:900px}.reveal-tabs{display:flex;gap:8px;margin:25px 0;flex-wrap:wrap}.reveal-tabs .active{background:#eac692;color:#293d39}.mapping{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:27px 0}.mapcard{border:1px solid #d3b47a66;background:#203a3c;padding:20px;border-radius:10px}.mapcard .story{font:23px Georgia;color:#e8c891;margin-bottom:10px}.mapcard .arrow{color:#7caaa0;font-size:20px;margin-right:10px}.mapcard span{font-size:13px}.timeline-card{border:1px solid #dbc29344;border-radius:12px;background:#1c353b;padding:25px;margin:25px 0}.timeline-card input[type=range]{width:100%;accent-color:#e1b568;margin:20px 0}.timeline-card .details{display:flex;justify-content:space-between;font-size:14px;gap:15px;color:#c4d1c4}.timeline-card canvas{width:100%;margin-top:15px}.table-wrap{overflow:auto;border:1px solid #ccbb9744;border-radius:10px;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:13px}th{text-transform:uppercase;font-size:9px;letter-spacing:1px;text-align:left;color:#c3cdbd}td,th{padding:15px;border-bottom:1px solid #738d8233}td b{font-size:13px}td p{font-size:11px;line-height:1.5;color:#aebfb5;margin-top:5px;max-width:500px}.comparison-note{padding:15px 20px;border-left:3px solid #d1ac6a;color:#d3d8c5;background:#1d383c;line-height:1.6;font-size:13px}.reveal-quote{margin-top:30px;background:#efdfb9;padding:30px;border-radius:10px;color:#345046}.reveal-quote h2{font-size:31px}.reveal-quote p{font-size:14px;line-height:1.6;margin-top:12px}.reveal-quote a{color:#315746}.technical{font-size:11px;color:#9cafaa;line-height:1.6;margin:20px 0}details{font-size:12px;line-height:1.6;margin-top:15px}summary{cursor:pointer;color:#d5c195}.backstage{display:flex;gap:8px;align-items:center;margin-top:22px;flex-wrap:wrap}#toast{position:fixed;top:76px;left:50%;transform:translateX(-50%);max-width:90vw;padding:11px 20px;background:#f2dfb5;color:#34443c;border:1px solid #e4bb78;border-radius:8px;z-index:50;font-size:13px;box-shadow:0 7px 25px #0005;display:none;pointer-events:none}.offline{color:#ffba89}.phone-summary{display:none}.join-page{min-height:100vh;background:linear-gradient(#0f2733aa,#0f2733f0),url('/assets/lantern-world.webp') center/cover;display:grid;place-items:center;padding:25px}.join-page .join-sign{max-width:430px}.join-page h1{font-size:42px;margin:15px 0 20px}.join-page .join-form{margin-top:25px}.join-page input{flex:1;width:120px}.join-page .gold{margin:0}.history-list{display:grid;gap:7px;margin-top:14px}.history-row{display:grid;grid-template-columns:35px 1fr 1fr;gap:14px;padding:10px;border-bottom:1px solid #879d8544;font-size:12px}.timer{font-variant-numeric:tabular-nums;color:#f4d295}.rendering{font-size:11px;color:#b6c2b0}.experiment-label{display:inline-block;color:#ecd4a6;border:1px solid #ccaf7644;border-radius:4px;font-size:9px;padding:4px 7px;margin-top:13px}.reminder{background:#a176332e;border-left:2px solid #e3b56c;padding:10px 15px;font-size:12px;color:#e0d5bc;line-height:1.5}.transition-in{animation:enter .5s ease}@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:900px) and (max-height:850px){.topbar{height:48px;padding:0 23px}.chapterbar{height:49px;padding:8px 24px}.chapter-number{font-size:27px}.chapter-name h2{font-size:19px}.stage{height:calc(100vh - 383px);min-height:265px}.hud{top:12px;left:18px;right:18px}.goal{padding:8px 10px;min-width:130px}.treasury{padding:8px 13px}.scene-bottom{left:18px;right:18px;bottom:12px}.speech{padding:10px 14px 10px 56px;max-width:440px;min-height:50px}.speech p{font-size:13px}.speech .portrait{width:46px;height:62px}.stage-stats{padding:9px 13px}.decision-dock{padding:13px 24px 14px}.decision-header{margin-bottom:10px}.decision-header h3{font-size:23px}.plan-art{height:61px}.plan-body{padding:8px 14px 10px}.plan h3{font-size:20px}.plan .flavor{font-size:10px}.effects{padding-top:6px;margin-top:6px;gap:10px}.pledge{margin-top:13px}.labhero{min-height:410px;height:57vh}.hero-copy{padding:35px 6%}.hero-copy h1{font-size:59px}.story-card{min-height:106px}.story-card .thumbnail{min-height:106px}.story-card .story-caption{padding:12px}.story-card h3{font-size:20px}}
@media(max-width:1000px){.story-card{grid-template-columns:1fr}.story-card .thumbnail{height:120px;min-height:120px}.intro-content{grid-template-columns:1fr 320px;gap:22px}.goal{min-width:110px}.goals{gap:6px}.goal strong{font-size:10px}.hud{gap:10px}.treasury{gap:12px}.effects{gap:8px}.stage-stats{gap:12px}.speech{max-width:380px}}
@media(max-width:760px){.topbar{height:55px;padding:0 16px}.wordmark{font-size:16px}.top-actions{gap:5px}.desktop{display:none!important}.topbar .status{font-size:9px}.labhero{height:520px;min-height:0}.hero-copy{padding:45px 25px}.hero-copy h1{font-size:55px;max-width:370px}.hero-copy p{font-size:14px;max-width:320px}.hero-shade{background:linear-gradient(90deg,#0a1d2ed9,#10222b66),linear-gradient(0deg,#10222b,transparent 65%)}.hero-caption{font-size:8px;right:20px;bottom:15px}.story-selector{padding:15px 20px;margin:0}.selector-head{display:block}.selector-head p{margin-top:6px}.story-grid{gap:10px}.story-card .thumbnail{height:80px;min-height:80px}.story-card .story-caption{padding:10px}.story-card h3{font-size:17px}.story-card p{font-size:10px}.story-card span{font-size:8px}.lab-foot{flex-direction:column;padding:10px 20px 30px;gap:20px}.intro-scene{padding:25px 18px}.intro-content{grid-template-columns:1fr;max-width:570px}.welcome{padding:26px}.welcome h1{font-size:44px}.welcome p{font-size:13px}.join-sign{padding:23px}.chapterbar{padding:10px 16px;height:59px;gap:10px}.chapter-name{gap:10px}.chapter-name h2{font-size:17px}.chapter-number{font-size:26px}.bells{gap:3px}.bell{width:10px;height:5px}.stage{height:280px;min-height:0}.hud{top:10px;left:10px;right:10px}.goals{gap:5px}.goal{padding:7px 8px;min-width:0;gap:5px}.goal-icon{font-size:14px}.goal strong{font-size:9px}.goal small{font-size:8px}.goal-bar{margin-top:4px}.treasury{display:none}.scene-bottom{left:10px;right:10px;bottom:10px}.speech{max-width:100%;padding:9px 12px 9px 50px;min-height:50px}.speech p{font-size:12px}.speech b{font-size:8px}.speech .portrait{height:60px;width:42px}.stage-stats{display:none}.phone-summary{display:flex;justify-content:space-between;padding:11px 18px;background:#122d33;border-top:1px solid #d4b67a66}.phone-summary b{font:23px Georgia;color:#f0ce92}.phone-summary span{display:block;font-size:9px;color:#adbcad}.decision-dock{padding:17px 16px}.decision-header{margin-bottom:14px;align-items:start}.decision-header h3{font-size:24px}.decision-header p{font-size:11px;line-height:1.5;max-width:280px}.turn-control>.gold{display:none}.turn-control{gap:5px}.votes b{font-size:21px}.cards{grid-template-columns:1fr;gap:12px}.plan{display:grid;grid-template-columns:104px 1fr;min-height:135px}.plan-art{height:100%;background-size:auto 100%;background-position:0 center!important}.plan[data-choice="pace"] .plan-art{background-position:0 center!important}.plan[data-choice="rush"] .plan-art{background-position:50% center!important}.plan[data-choice="apprentice"] .plan-art{background-position:100% center!important}.plan.selected{transform:translateY(-2px)}.plan-body{padding:13px}.plan h3{font-size:22px}.plan .flavor{font-size:11px}.effects{font-size:10px;gap:8px}.card-num{left:6px;top:6px}.selected-mark{right:6px;top:7px;font-size:8px;padding:4px 7px}.mobile-commit{display:block;width:100%;margin:19px 0 4px;padding:14px}.pledge{align-items:start;gap:8px;flex-direction:column;margin-top:18px}.mini-controls{flex-wrap:wrap}.paper{padding:27px 22px;max-height:90vh;overflow:auto}.paper h2{font-size:32px}.instruction-grid{grid-template-columns:1fr;gap:12px}.instruction b{font-size:22px}.instruction p{font-size:12px}.ending{padding:25px 15px}.ending-card{padding:30px 22px}.ending-card h1{font-size:38px}.result-metrics{gap:20px}.result-metrics b{font-size:28px}.result-metrics span{font-size:9px}.reveal-shell{padding:26px 17px}.reveal-shell h1{font-size:37px}.reveal-shell .lead{font-size:18px}.mapping{grid-template-columns:1fr 1fr;gap:10px}.mapcard{padding:14px}.mapcard .story{font-size:20px}.mapcard span{font-size:11px}.timeline-card{padding:15px}.timeline-card .details{flex-direction:column;font-size:12px}.timeline-card canvas{min-width:500px}.timeline-scroll{overflow:auto}.reveal-quote{padding:23px}.reveal-quote h2{font-size:25px}.council-banner{padding:18px 20px 3px}.council-banner h2{font-size:28px}.council .plan-art{height:100%;min-height:130px;background-size:auto 100%}.resolution .seal{padding:20px 25px;margin:20px}.seal b{font-size:35px}.council .stage{height:230px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep the council and its decision together on a shared Zoom screen. */
.council .stage{height:clamp(200px,28vh,300px)}.council .plan-art{height:87px}.council-banner{padding:14px 25px 5px}.council-banner h2{font-size:29px;margin-top:4px}.council-banner p{margin:6px auto}.scroll-hint{display:none;font-size:11px;color:#ddc598;margin-top:20px}
@media(min-width:900px) and (max-height:850px){.council .stage{height:190px;min-height:190px}.council .plan-art{height:55px}.council-banner h2{font-size:25px}.council-banner p{font-size:11px}.council-banner{padding:10px 25px 0}.council-banner .kicker{font-size:8px}.council .speech{display:none}.council .decision-header h3{font-size:22px}.council .plan .flavor{min-height:28px}.council .pledge{margin-top:10px}.stage{height:calc(100vh - 403px)}}
@media(max-width:760px){.wordmark{white-space:nowrap;font-size:15px;gap:8px}.topbar .status{display:none}.topbar{padding:0 12px}.top-actions{gap:4px}.top-actions .small{font-size:10px;padding:8px}.council .plan-art{height:100%}.council .stage{height:235px}.scroll-hint{display:block}.stage .goals{width:100%;justify-content:space-between}.goal{flex:1}.goal-icon{display:none}}
/* Language can change mid-shift without moving or resetting the game. */
.language-switch{display:inline-flex;gap:0;border:1px solid var(--line);border-radius:7px;overflow:hidden;flex-shrink:0}
.language-switch .small{border:0;border-radius:0;padding:8px 9px}
.language-switch [aria-pressed="true"]{background:var(--cream);color:var(--ink)}
:lang(ru) .plan h3{line-height:1.12}
:lang(ru) .effects{line-height:1.4}
:lang(ru) .result-metrics span{line-height:1.4}
@media(max-width:760px){.topbar{height:auto;min-height:63px;gap:8px;padding:8px 12px}.top-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end}.language-switch .small{padding:7px 6px}.wordmark{flex-shrink:0}:lang(ru) .wordmark{font-size:14px;letter-spacing:0}:lang(ru) .plan h3{font-size:21px}:lang(ru) .phone-summary span{font-size:8px}}
@media(max-width:360px){.topbar .wordmark{font-size:13px;gap:5px}.topbar .top-actions>.small{font-size:9px;padding:6px}.topbar .crest{width:22px}.language-switch .small{font-size:9px;padding:6px 5px}}
@media(max-width:760px){:lang(ru) .chapterbar{height:auto;min-height:76px}:lang(ru) .chapter-name{min-width:0}:lang(ru) .chapterbar .kicker{font-size:8px;letter-spacing:1px}:lang(ru) .chapterbar h2{font-size:20px;line-height:1.15}:lang(ru) .chapterbar .bells{flex-shrink:0}}
/* A shift is a small scene; speech belongs to the people inside it. */
.scene-bottom .speech{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.scene-bottom{bottom:48px;justify-content:flex-end}.stage-stats{padding:7px 12px;background:#10252cc9}.stage-stats b{font-size:21px}.stage-stats span{font-size:8px}.shift-receipt{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:8px 0 12px;margin-bottom:10px;border-bottom:1px solid #e3cba333;font-size:11px;color:#c6d1bd}.shift-receipt b{color:#f0d49c;margin-right:14px}.shift-receipt span{line-height:1.6}.receipt-actions{display:flex;gap:7px;align-items:center;flex-shrink:0}.receipt-actions .small{font-size:10px;padding:6px 9px}.receipt-actions .text-btn{font-size:10px}.replay-stage{height:360px!important;min-height:0!important;border:1px solid #e4c18a55;border-radius:9px;margin:15px 0}.timeline-card .replay-stage canvas{margin:0;min-width:0}.accounting{background:#1c353b;border:1px solid #dbc29344;padding:18px 22px;border-radius:10px;margin:25px 0}.accounting summary{font-size:16px}.accounting p{margin-top:12px;color:#d6dccb}.accounting table{font-variant-numeric:tabular-nums}.learning-insights{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.insight{padding:23px;border:1px solid #d4b68066;background:#203a3c;border-radius:10px}.insight h3{font-size:25px;color:#eed29d}.insight p{font-size:14px;line-height:1.6;margin-top:13px;color:#dae1d1}.insight .question{color:#a7d9c7;font:17px/1.5 Georgia}.insight .limit{font-size:11px;color:#aabbaf}.pace-reason{color:#775338;font-size:11px;line-height:1.5;margin:8px 0 0}
@media(min-width:900px) and (max-height:850px){.stage{height:calc(100vh - 440px);min-height:295px}.shift-receipt{padding:4px 0 8px;margin-bottom:8px;font-size:10px}.council .stage{height:235px;min-height:235px}.council .shift-receipt{display:none}.council .stage-stats{display:none}.plan-art{height:57px}.decision-header h3{font-size:21px}}
@media(max-width:760px){.stage{height:335px}.shift-receipt{flex-direction:column;align-items:flex-start;gap:8px}.shift-receipt b{display:block;margin-bottom:4px}.receipt-actions{width:100%;justify-content:space-between}.replay-stage{height:340px!important}.learning-insights{grid-template-columns:1fr}.insight{padding:20px}.insight h3{font-size:24px}.timeline-card .details{margin-top:12px}.council .stage{height:285px}.accounting{padding:15px}.scene-bottom{display:none}}

@media(min-width:761px){.plan{display:flex;flex-direction:column}.plan-art{width:100%;flex-shrink:0}.insight strong{display:block;margin-top:12px;color:#a7d9c7;font:17px/1.5 Georgia}.insight .technical{font-size:11px;color:#aabbaf}}

/* The receipt now names the winning plan and the money it cost. Overspend must read as an event. */
.shift-receipt em{font-style:normal;font-weight:700;color:var(--gold);margin-right:10px}
.shift-receipt.over-budget{border-left:3px solid var(--amber)}
.shift-receipt.over-budget span{color:#f0b985}

/* On phones .plan-art forces background-position:0 center !important, and the overrides that
   follow it cover only pace/rush/apprentice. The three COUNCIL cards therefore all rendered the
   same left crop - one picture, three times, at the game's one structural decision.
   Higher specificity + !important so these beat the mobile reset. */
@media(max-width:760px){
  .council .plan[data-choice="keepers"] .plan-art{background-position:100% 15%!important}
  .council .plan[data-choice="press"] .plan-art{background-position:50% 40%!important}
  .council .plan[data-choice="academy"] .plan-art{background-position:100% 40%!important}
}
