:root{--ink:#29213e;--muted:#665a78;--violet:#6040aa;--violet-dark:#493078;--lilac:#f5f1fc;--paper:#fffdf9;--mint:#aee3d1;--mint-ink:#286051;--butter:#f5da88;--coral:#db826f;--line:#ddd3e9;--radius:22px;font-family:'Avenir Next',Avenir,'Trebuchet MS',sans-serif;color:var(--ink);background:var(--lilac);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:var(--violet-dark);text-underline-offset:4px}button,a,select,input{outline-offset:4px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--violet);box-shadow:0 0 0 6px #fff}button{touch-action:manipulation}button svg{pointer-events:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}h1{line-height:1.03}p{line-height:1.65}button{border:0}::selection{background:#e3d49d;color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:20px;top:-100px;padding:12px;background:white;z-index:100}.skip:focus{top:12px}
.site-header{min-height:106px;padding:22px clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #e7deef}.brand{display:flex;gap:11px;align-items:center;background:none;text-align:left;font-size:23px;font-weight:800;letter-spacing:-1.2px;padding:4px;line-height:1.1;min-height:52px}.brand-sun{font-size:45px;font-weight:400;line-height:1;color:var(--violet);display:block}.brand-sub{display:block;font-size:14px;letter-spacing:2.15px;padding-top:8px;font-weight:700}.site-header nav{display:flex;gap:10px;align-items:center}.nav-button{background:none;min-height:44px;padding:10px 17px;font-size:14px;font-weight:600;border-radius:30px}.nav-button:hover{background:#e9e0f5}.settings-button{border:1px solid #c9badc}.settings-button span{font-size:19px;margin-right:5px}.site-footer{margin:28px clamp(20px,4vw,64px) 0;padding:24px 0;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:14px;color:var(--muted);align-items:center}.site-footer>span:last-child{display:flex;align-items:center;gap:23px}.text-button{background:none;color:var(--violet-dark);text-decoration:underline;text-underline-offset:4px;padding:12px 0;min-height:44px}.site-footer a{display:inline-flex;align-items:center;min-height:44px}
.hero{max-width:1500px;margin:auto;padding:59px 4vw 29px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.9fr 1.35fr;gap:0;align-items:center}.eyebrow{font-size:14px;font-weight:800;letter-spacing:2.2px;line-height:1.65;text-transform:uppercase;display:flex;align-items:center;gap:10px;margin-bottom:23px}.eyebrow:before{content:'';width:23px;height:2px;background:var(--violet);display:inline-block}.hero h1{font-size:clamp(64px,7.5vw,116px);font-weight:800;letter-spacing:-7px;margin:0 0 22px}.hero h1 .tilt{display:inline-block;position:relative;color:var(--violet)}.hero h1 .tilt:after{content:'';position:absolute;bottom:0;left:2px;width:99%;height:11px;background:var(--butter);transform:rotate(-2deg);z-index:-1}.hero-copy{position:relative;z-index:1;padding-left:10px}.hero-copy>p{font-size:16px;max-width:405px;color:var(--muted);margin:0 0 26px}.hero-tagline{font-size:22px;font-weight:600;letter-spacing:-.65px;max-width:390px;line-height:1.35;margin-bottom:16px}.hero-art{width:112%;margin-left:-9%;position:relative}.hero-art svg{width:100%;display:block;filter:drop-shadow(0 26px 19px #6f4b9220)}.art-sticker{position:absolute;right:11%;top:-2%;background:#fffaf0;border-radius:50%;width:93px;height:93px;display:grid;place-content:center;text-align:center;transform:rotate(10deg);font-size:14px;line-height:1.55;letter-spacing:1.3px;font-weight:800;border:1px solid #e2d6bd;box-shadow:4px 6px 0 #e5d7ef}.art-sticker strong{font-size:29px;line-height:1}.button-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.button{display:inline-flex;gap:18px;align-items:center;justify-content:center;border-radius:11px;padding:14px 22px;min-height:49px;font-size:14px;font-weight:700;background:var(--violet);color:white;border:1px solid var(--violet)}.button:hover{background:var(--violet-dark)}.button span[aria-hidden]{font-size:20px}.button.secondary{background:transparent;color:var(--violet-dark);border-color:#cab9db}.button.secondary:hover{background:#e9dff2}.button.mint{background:var(--mint);border-color:var(--mint);color:var(--ink)}.button.mint:hover{background:#9dd7c4}.button.butter{background:var(--butter);border-color:var(--butter);color:var(--ink)}.button.small{min-height:44px;padding:10px 15px}.comfort-row{font-size:14px;color:var(--muted);margin-top:22px;display:flex;gap:16px;flex-wrap:wrap}.comfort-row span:before{content:'✓';color:var(--mint-ink);margin-right:5px;font-size:14px}.small-note{font-size:14px;color:var(--muted);line-height:1.6}.neighbourhood-preview{margin:45px 10px 0;border-top:1px solid var(--line);padding-top:24px}.section-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px;font-size:14px}.section-caption h2{font-size:14px;letter-spacing:1.8px;text-transform:uppercase;margin:0}.section-caption span{color:var(--muted)}.mission-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.mission-teaser{text-align:left;background:none;padding:10px 10px 12px;border-radius:12px;min-height:97px;display:grid;grid-template-columns:37px 1fr;align-items:start;gap:11px}.mission-teaser:hover{background:#e9e1f3}.mission-number{width:35px;height:45px;background:#e7dcf0;display:grid;place-content:center;border-radius:18px 18px 5px 5px;font-size:14px;font-weight:800;color:var(--violet)}.mission-teaser strong{display:block;font-size:14px;line-height:1.4;margin-bottom:6px;letter-spacing:-.2px}.mission-teaser small{font-size:14px;color:var(--muted);line-height:1.5}.complete-dot{color:var(--mint-ink);font-weight:800}.save-notice{margin:14px 0 0;color:var(--mint-ink);font-size:14px}.error-notice{color:#8c322a}
.game{max-width:1600px;margin:auto;padding:28px 4vw 20px}.game-topline{display:flex;justify-content:space-between;gap:16px;align-items:center}.game .eyebrow{margin-bottom:8px}.game-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:22px}.game-head h1{font-size:38px;margin:3px 0 9px;letter-spacing:-1.8px}.game-story{max-width:740px;font-size:14px;color:var(--muted);line-height:1.65;margin:0}.mission-pagination{display:flex;gap:6px;flex-shrink:0}.mission-pagination button{width:37px;min-height:44px;border-radius:9px;border:1px solid var(--line);background:transparent;font-size:14px;font-weight:700}.mission-pagination button.current{background:var(--violet);color:white;border-color:var(--violet)}.mission-pagination button.done{background:#d9eadf}.play-grid{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:22px;align-items:start}.board-column{min-width:0}.board-toolbar{display:flex;gap:15px;align-items:center;justify-content:space-between;margin-bottom:10px;min-height:42px}.stats{display:flex;align-items:center;gap:18px;font-size:14px}.stat strong{font-size:18px;margin-right:4px;letter-spacing:-.6px}.stat{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px}.stat.over strong{color:#a23d31}.stats .divider{height:23px;width:1px;background:var(--line)}.segmented{display:inline-flex;padding:3px;border:1px solid #d9cce7;border-radius:8px;gap:2px;flex-shrink:0}.segmented button{background:none;border-radius:5px;min-height:36px;padding:8px 12px;font-size:14px;font-weight:700}.segmented button[aria-pressed=true]{background:var(--paper);box-shadow:0 1px 5px #44256714}.map-wrap{position:relative;background:linear-gradient(145deg,#f2eaf9,#ebe0f4);border-radius:26px;border:1px solid #e1d4ed;overflow:hidden;isolation:isolate}.map-wrap>svg{width:100%;display:block}.node-button{position:absolute;transform:translate(-50%,-5%);background:#fffcf6eF;box-shadow:0 4px 7px #644a7d10;min-height:44px;border:1px solid #d4c3e3;border-radius:7px;text-align:center;font-size:14px;font-weight:700;padding:6px 10px;white-space:nowrap;line-height:1.3}.node-button small{display:block;font-size:14px;font-weight:500;color:var(--muted);margin-top:3px}.node-button.selected{border:2px solid var(--violet);background:#fff3ce}.node-button.crowded{border-color:#b85d4c}.node-button .badge{display:inline-grid;place-content:center;background:#e9dcf2;width:16px;height:16px;border-radius:50%;margin-right:3px;font-size:14px}.map-caption{position:absolute;left:18px;top:17px;font-size:14px;letter-spacing:1.65px;color:#796489;font-weight:700;text-transform:uppercase}.map-legend{display:flex;gap:12px;align-items:center;font-size:14px;color:var(--muted);padding:10px 3px 8px;flex-wrap:wrap}.map-legend i{display:inline-block;width:17px;height:0;border-top:2px solid #7758a9;margin-right:4px;vertical-align:middle}.map-legend .dashed{border-top-style:dashed;border-color:#9c8cab}.map-legend .end{margin-left:auto}.map-legend button{padding:5px;background:none;color:var(--violet-dark);text-decoration:underline;min-height:32px}.phase-banner{background:#fff4cf;border:1px solid #e7d8b2;border-radius:12px;padding:12px 16px;font-size:14px;line-height:1.6;margin-bottom:12px;display:flex;gap:16px;align-items:center;justify-content:space-between}.phase-banner p{margin:0;max-width:620px}.phase-banner .segmented{background:#fffaf0}.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:6px}.person{border:1px solid var(--line);border-radius:13px;background:#fcf9ff;padding:11px;min-width:0;position:relative}.person.focused{border-color:var(--violet);box-shadow:0 0 0 1px var(--violet)}.person-top{background:none;padding:0;text-align:left;display:flex;align-items:center;gap:7px;min-height:37px;width:100%;font-size:14px;font-weight:700}.avatar{width:27px;height:32px;border-radius:15px 15px 7px 7px;color:white;display:inline-grid;place-content:center;font-size:14px;flex-shrink:0;box-shadow:0 3px 0 #38244220}.person-status{margin-left:auto;font-size:14px;white-space:nowrap;font-weight:600}.person-status.open{color:var(--mint-ink)}.person-status.waiting{color:#8b4f36}.person-goal{font-size:14px;color:var(--muted);line-height:1.4;margin:7px 0 10px;min-height:28px}.person select{width:100%;border:1px solid #d4c5e0;border-radius:6px;background:#fffdfb;color:var(--ink);font-size:14px;padding:9px 5px;min-height:42px}.route-error{font-size:14px;line-height:1.4;color:#8e4b37;margin:7px 0 0}.planning-panel{background:var(--paper);border:1px solid #e1d8e9;border-radius:18px;overflow:hidden;margin-top:1px;min-height:400px;display:flex;flex-direction:column;box-shadow:0 6px 0 #e8def1}.planning-top{padding:17px 20px;border-bottom:1px solid #e7dfed;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase}.planning-top .text-button{text-transform:none;letter-spacing:0;font-size:14px;padding:0;min-height:28px}.planning-body{padding:20px;flex:1;min-height:242px}.planning-body h2{font-size:21px;margin:0 0 10px;line-height:1.2}.planning-body p{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:13px}.planning-body .mini-kicker{display:block;font-size:14px;letter-spacing:1.6px;color:#725b8b;text-transform:uppercase;margin-bottom:9px;font-weight:700}.planning-body ul{padding-left:16px;margin:8px 0 14px;font-size:14px;line-height:1.7;color:var(--muted)}.planning-body .button{width:100%;margin-top:6px}.planning-body .fact{border-top:1px dashed #dacde6;padding:9px 0;margin:0;font-size:14px}.planning-body .fact strong{color:var(--ink)}.preview-metrics{display:flex;gap:10px;margin:14px 0}.preview-metrics span{padding:10px;background:#f0e9f7;border-radius:8px;flex:1;font-size:14px;line-height:1.5}.preview-metrics strong{font-size:18px;color:var(--ink);display:block;letter-spacing:-.5px}.planning-bottom{border-top:1px solid #e9e0ee;padding:16px 19px;background:#f8f3fc}.planning-bottom>.button{width:100%;padding:14px 10px}.plan-tools{display:flex;justify-content:space-between;gap:4px;margin-top:7px}.plan-tools button{background:none;min-height:40px;padding:8px;font-size:14px;color:var(--violet-dark)}.plan-summary{font-size:14px;margin:9px 0 0;color:var(--muted);line-height:1.6}.tip-box{margin-top:17px;padding:14px 17px;background:#e8e0f4;border-radius:13px;font-size:14px;color:#5a4870;line-height:1.65}.tip-box strong{display:block;color:var(--ink);margin-bottom:3px;font-size:14px}.tip-box p{margin:0;line-height:1.6}.hint-button{min-height:35px;margin-top:7px;padding:6px 0;background:none;text-decoration:underline;color:var(--violet-dark);font-size:14px}.cooperative-banner{margin:14px 0 0;background:#e4efe5;border-radius:12px;padding:12px 17px;font-size:14px;line-height:1.6}.cooperative-banner strong{margin-right:7px}.change-tray{margin-top:27px;border-top:1px solid var(--line);padding-top:21px}.change-tray .section-caption{margin-bottom:15px}.card-hand{display:grid;grid-template-columns:repeat(var(--cards,5),minmax(0,1fr));gap:11px}.change-card{text-align:left;position:relative;background:#fffdf8;border:1px solid #d8c9e6;border-radius:12px;padding:16px 13px 12px;box-shadow:0 4px 0 #e3d7ee;min-height:180px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.change-card:before{content:'';position:absolute;left:0;top:0;width:100%;height:4px;background:#c2aad9}.change-card:hover{border-color:var(--violet);box-shadow:0 5px 0 #d6c2e5}.change-card.active{border:2px solid var(--violet);padding:15px 12px 11px;background:#f0e7f9}.change-card.active:before{background:var(--violet)}.change-card.previewed{outline:2px dashed #ba9cd8;outline-offset:3px}.card-top{display:flex;align-items:center;justify-content:space-between;gap:5px}.card-icon{font-size:20px;color:var(--violet);line-height:1}.token-cost{font-size:14px;font-weight:800;border-radius:15px;background:#f7e8b8;padding:5px 7px}.change-card strong{font-size:14px;line-height:1.35;letter-spacing:-.2px}.change-card small{font-size:14px;line-height:1.5;color:var(--muted)}.card-bottom{font-size:14px;margin-top:auto;padding-top:7px;border-top:1px dashed #dacde4;color:var(--violet-dark);display:flex;justify-content:space-between;gap:4px}.budget-note{font-size:14px;color:var(--muted);margin:15px 0 0;line-height:1.6}.trial-result{margin-top:20px;padding:19px 22px;border:1px solid #d8c8df;background:#fffcf6;border-radius:16px}.trial-result h2{font-size:19px;margin-bottom:8px}.trial-result p,.trial-result li{font-size:14px;line-height:1.7;color:var(--muted)}.trial-result ul{margin-bottom:0;padding-left:18px}.trial-result .result-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.trial-result .result-top p{margin:0}.node-list{padding:17px;background:#efe7f6;border:1px solid #e1d4ed;border-radius:20px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.node-list article{background:#fffcf9;border:1px solid #dfd1e9;border-radius:12px;padding:15px}.node-list article:last-child{grid-column:1/-1}.node-list h3{font-size:14px;margin-bottom:6px}.node-list p{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:6px}.node-list button{background:none;text-decoration:underline;color:var(--violet-dark);padding:9px 0;font-size:14px;min-height:36px}.node-capacity{font-weight:700;color:var(--ink)}
dialog{color:var(--ink);border:1px solid #d9c9e5;background:#fffcf8;border-radius:23px;padding:35px;width:min(620px,calc(100vw - 30px));max-height:90vh;box-shadow:0 30px 120px #36204630}dialog::backdrop{background:#32224166;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:13px;top:10px;width:42px;height:42px;border-radius:50%;background:transparent;font-size:27px;color:var(--muted)}.dialog-close:hover{background:#e9e0f2}dialog .eyebrow{margin-top:4px;margin-bottom:14px}dialog h2{font-size:34px;line-height:1.1;margin-bottom:15px;padding-right:15px}dialog p{color:var(--muted);font-size:14px}dialog h3{font-size:17px;margin:21px 0 8px}.how-steps{list-style:none;padding:0;counter-reset:steps}.how-steps li{counter-increment:steps;position:relative;margin:18px 0 22px;padding-left:45px;font-size:14px;line-height:1.7;color:var(--muted)}.how-steps li:before{content:counter(steps);position:absolute;left:0;top:0;display:grid;place-content:center;background:#e6daf1;color:var(--violet);font-weight:800;border-radius:50%;width:30px;height:30px}.how-steps strong{color:var(--ink);display:block;font-size:14px}.dialog-note{background:#f0e7f8;padding:15px 17px;border-radius:11px;font-size:14px;line-height:1.7;margin:20px 0}.settings-list{display:flex;flex-direction:column;gap:12px;margin:22px 0}.setting{display:flex;align-items:flex-start;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.setting input{width:20px;height:20px;accent-color:var(--violet);flex-shrink:0;margin:2px 0 0}.setting strong{font-size:14px}.setting small{display:block;font-size:14px;color:var(--muted);line-height:1.6;margin-top:3px}.mission-menu{display:flex;flex-direction:column;gap:9px;margin-top:23px}.mission-menu button{display:flex;align-items:center;text-align:left;background:#f1e9f8;border:1px solid #e0d2ea;border-radius:12px;gap:14px;padding:14px;min-height:70px}.mission-menu button:hover{background:#e7daf2}.mission-menu strong{font-size:14px;display:block}.mission-menu small{display:block;font-size:14px;color:var(--muted);margin-top:5px}.mission-menu .menu-arrow{margin-left:auto}.success-art{height:145px;margin:-16px 0 4px;overflow:hidden}.success-art svg{width:330px;display:block;margin:-20px auto 0}.success-highlight{font-size:21px;font-weight:600;letter-spacing:-.7px;line-height:1.4;color:var(--ink);margin:18px 0}.outcome-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;margin:18px 0}.outcome-grid div{padding:13px 10px;background:#efe6f7;border-radius:10px;font-size:14px;line-height:1.5;text-align:center}.outcome-grid strong{display:block;font-size:23px;letter-spacing:-1px}.reflection{border-top:1px solid var(--line);padding-top:17px;margin-top:21px}.reflection .small-note{font-size:14px;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px}.reflection p{font-size:14px;color:var(--ink);margin-bottom:23px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:100;background:var(--ink);color:white;padding:14px 24px;border-radius:11px;font-size:14px;box-shadow:0 8px 30px #37294424;max-width:calc(100% - 30px);text-align:center}.noscript{padding:30px}.motion .map-wrap>svg{transition:filter .5s ease}.motion .change-card{transition:transform .15s ease,box-shadow .15s ease}.motion .change-card:hover{transform:translateY(-3px)}
.report{max-width:1050px;margin:auto;padding:60px 25px}.report h1{font-size:61px;max-width:780px;letter-spacing:-3.5px;margin-bottom:20px}.report .lead{font-size:20px;max-width:720px;line-height:1.6}.report section{margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}.report h2{font-size:30px;margin-bottom:16px}.report h3{font-size:19px}.report p,.report li{font-size:14px;line-height:1.8}.report table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.7}.report th{text-align:left;background:#e7dcf2;font-size:14px;letter-spacing:.3px}.report td,.report th{padding:13px 15px;border:1px solid #d9cde4;vertical-align:top}.report .source-list{padding-left:20px}.report .source-list li{margin-bottom:20px}.report .source-list span{display:block;color:var(--muted);font-size:14px}.report-callout{padding:23px;background:#e4eee7;border-radius:15px;margin:25px 0}.report .mini-pitch{font-size:28px;font-weight:700;line-height:1.4;letter-spacing:-.8px}.table-scroll{overflow:auto}.report-nav{display:flex;gap:14px;margin-top:25px;flex-wrap:wrap}
@media(min-width:1500px){.play-grid{grid-template-columns:minmax(0,1fr) 330px}.planning-panel{min-height:460px}.planning-body{padding:25px;min-height:300px}.game{padding-left:5vw;padding-right:5vw}.card-hand{gap:16px}.change-card{min-height:185px;padding:18px}}
@media(max-width:1100px){.hero{padding-top:40px}.hero h1{letter-spacing:-5px}.hero-copy>p{font-size:14px}.hero-tagline{font-size:20px}.play-grid{grid-template-columns:minmax(0,1fr) 270px;gap:15px}.game{padding:25px 3vw}.stats{gap:10px}.stat strong{font-size:16px}.node-button{font-size:14px;padding:5px 7px}.node-button small{font-size:14px}.card-hand{grid-template-columns:repeat(4,1fr)}.change-card{min-height:156px}.person{padding:9px}.person-top{gap:4px;font-size:14px}.avatar{width:23px;height:29px}.person-status{font-size:14px}.person select{font-size:14px}.person-goal{font-size:14px;min-height:38px}.planning-body{padding:17px}.planning-top{padding:14px 17px}.planning-body h2{font-size:19px}.mission-strip{gap:6px}.mission-teaser{grid-template-columns:30px 1fr;gap:8px}.mission-number{width:28px;height:39px}.mission-teaser strong{font-size:14px}.mission-teaser small{font-size:14px}}
@media(max-width:800px){.site-header{padding:15px 20px;min-height:89px}.brand{font-size:20px}.brand-sun{font-size:36px}.brand-sub{font-size:14px;letter-spacing:1.3px}.site-header nav{gap:2px}.nav-button{font-size:14px;padding:9px}.nav-button:first-child{display:none}.hero{padding:40px 20px 20px}.hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:66px;letter-spacing:-4px}.eyebrow{font-size:14px;letter-spacing:1.5px}.hero-copy{padding:0}.hero-copy>p{font-size:14px}.hero-tagline{font-size:17px}.hero-art{width:136%;margin-left:-24%}.art-sticker{width:75px;height:75px;font-size:14px;right:13%;top:-10%}.art-sticker strong{font-size:23px}.hero .button{padding:12px 15px;font-size:14px}.comfort-row{gap:10px;font-size:14px}.neighbourhood-preview{margin:35px 0 0}.mission-strip{grid-template-columns:repeat(5,1fr)}.mission-teaser{display:block;padding:8px}.mission-number{margin-bottom:11px}.section-caption span{font-size:14px}.game-head h1{font-size:32px}.game-story{font-size:14px}.play-grid{grid-template-columns:1fr}.planning-panel{margin-top:12px;min-height:0;display:grid;grid-template-columns:1fr 240px;position:relative}.planning-top{grid-column:1/-1}.planning-body{min-height:180px;padding:20px}.planning-bottom{display:flex;flex-direction:column;justify-content:center;border-top:0;border-left:1px solid var(--line)}.tip-box{margin-top:12px}.tip-box strong{display:inline;margin-right:7px}.tip-box p{display:inline}.hint-button{margin-left:8px}.board-toolbar{margin-bottom:9px}.stats{gap:18px;font-size:14px}.stat strong{font-size:22px}.people-grid{gap:10px}.person{padding:11px}.person-top{font-size:14px}.avatar{width:28px;height:34px}.person-goal{font-size:14px;min-height:30px}.person-status{font-size:14px}.person select{font-size:14px}.node-button{font-size:14px;padding:6px 11px}.node-button small{font-size:14px}.card-hand{grid-template-columns:repeat(4,1fr)}.game .eyebrow{font-size:14px}.site-footer{margin:25px 20px 0;font-size:14px;flex-direction:column;align-items:flex-start;gap:6px}.site-footer>span:last-child{gap:16px}.report h1{font-size:49px}.report{padding-top:40px}.report .lead{font-size:18px}}
@media(max-width:560px){.site-header{padding:13px 15px;gap:10px}.brand{font-size:19px;gap:7px}.brand-sun{font-size:31px}.brand-sub{font-size:14px;letter-spacing:1.1px}.site-header nav .nav-button{font-size:14px;padding:8px}.settings-button{border:0}.settings-button span{display:none}.hero{padding-top:31px}.hero-grid{display:flex;flex-direction:column;align-items:stretch}.hero-copy{max-width:100%}.hero h1{font-size:82px;letter-spacing:-5px;margin-bottom:19px}.hero .eyebrow{font-size:14px;margin-bottom:20px}.hero-tagline{font-size:21px;max-width:350px}.hero-copy>p{font-size:14px;max-width:350px;margin-bottom:20px}.hero .button{font-size:14px;min-height:49px;padding:13px 20px}.hero-art{width:114%;margin-left:-8%;margin-top:28px;margin-bottom:0}.art-sticker{top:-2%;right:8%;height:76px;width:76px}.comfort-row{font-size:14px;margin-top:17px;gap:13px}.neighbourhood-preview{margin-top:22px}.section-caption h2{font-size:14px;letter-spacing:1px}.section-caption{align-items:flex-start}.mission-strip{grid-template-columns:1fr 1fr;gap:6px}.mission-teaser{display:grid;grid-template-columns:33px 1fr;gap:9px;min-height:86px;padding:10px 5px}.mission-teaser strong{font-size:14px}.mission-teaser small{font-size:14px}.mission-number{width:29px;height:40px}.mission-teaser:last-child{grid-column:1/-1;max-width:210px}.game{padding:22px 15px 10px}.game-head{display:block;margin-bottom:18px}.game-head h1{font-size:31px;letter-spacing:-1.4px}.game-story{font-size:14px;line-height:1.65}.mission-pagination{margin-top:13px;gap:7px}.mission-pagination button{width:39px;min-height:36px}.stats{gap:10px;font-size:14px}.stat strong{font-size:19px}.stats .divider{height:22px}.segmented button{padding:7px 10px;min-height:35px;font-size:14px}.board-toolbar{gap:8px}.map-wrap{border-radius:17px;overflow:visible;padding:0;margin-bottom:12px;aspect-ratio:960/580}.map-wrap>svg{border-radius:17px;width:100%;overflow:visible}.map-caption{font-size:14px;letter-spacing:1px;top:10px;left:12px}.node-button{font-size:14px;padding:4px 5px;min-height:44px;white-space:normal;min-width:64px;max-width:92px;line-height:1.2}.node-button small{font-size:14px;margin-top:3px}.node-button .badge{font-size:14px;width:13px;height:13px;margin-right:2px}.map-legend{gap:8px;padding-top:5px;font-size:14px}.map-legend .end{margin-left:0}.people-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:7px}.person-goal{min-height:28px;font-size:14px;margin-top:5px}.person-top{font-size:14px}.person select{min-height:44px;font-size:14px}.person-status{font-size:14px}.planning-panel{grid-template-columns:1fr;margin-top:10px;border-radius:14px}.planning-body{min-height:0;padding:18px}.planning-body h2{font-size:23px}.planning-body p{font-size:14px}.planning-body ul,.planning-body .fact{font-size:14px}.planning-bottom{border-left:0;border-top:1px solid var(--line);padding:14px 18px}.planning-bottom>.button{min-height:48px}.planning-top{padding:14px 18px}.plan-tools{margin-top:4px}.plan-summary{margin-top:0}.tip-box{font-size:14px}.tip-box p{display:block;margin-top:3px}.tip-box strong{font-size:14px}.hint-button{margin-left:0;font-size:14px}.card-hand{grid-template-columns:repeat(2,1fr);gap:12px}.change-card{padding:16px;min-height:180px}.change-card strong{font-size:14px}.change-card small{font-size:14px}.card-bottom{font-size:14px}.change-card.active{padding:15px}.change-tray{margin-top:25px}.game .eyebrow{font-size:14px}.phase-banner{display:block;font-size:14px}.phase-banner .segmented{margin-top:10px}.node-list{grid-template-columns:1fr;padding:12px}.node-list article:last-child{grid-column:auto}.node-list p{font-size:14px}dialog{padding:28px 23px;border-radius:18px}dialog h2{font-size:30px}dialog p{font-size:14px}.dialog-note{font-size:14px}.outcome-grid{gap:6px}.outcome-grid div{font-size:14px}.outcome-grid strong{font-size:21px}.success-art{height:127px}.success-art svg{width:290px}.report h1{font-size:44px;letter-spacing:-2.4px}.report .lead{font-size:17px}.report h2{font-size:26px}.report{padding:36px 20px}.report td,.report th{min-width:145px;padding:10px;font-size:14px}.report .mini-pitch{font-size:23px}.site-footer>span:last-child{display:block}.site-footer>span:last-child a{margin-left:15px}}
@media(min-width:561px) and (max-width:800px){.hero-grid{grid-template-columns:1.12fr .95fr;gap:8px}.hero-art{width:120%;margin-left:-12%}.hero-copy>p{max-width:315px}}
@media(max-width:560px){.hero h1{font-size:clamp(56px,18.3vw,74px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header nav,.site-footer,.report-nav{display:none}.report{max-width:100%;padding:0}.report h1{font-size:36px}.report section{break-inside:avoid;margin-top:25px}.report table{font-size:14px}.report a{color:inherit}body{background:white}.report p,.report li{font-size:14px}.report .source-list li{margin-bottom:10px}}
