.share-result{--share-paper:#ece4d0;--share-ink:#171714;--share-muted:#5d594f;--share-border:#2c2a24;--share-accent:#d95e32;--share-accent-dark:#a93e1f;--share-panel:#ffffff47;border:2px solid var(--share-border);background:linear-gradient(#00000006 1px, transparent 1px), var(--share-paper);color:var(--share-ink);background-size:100% 24px;margin-top:1.5rem;padding:clamp(1rem,3vw,1.5rem);position:relative;overflow:hidden;box-shadow:5px 6px #0000002e}.share-result>*{z-index:1;position:relative}.share-result__stamp{border:2px solid var(--share-accent-dark);color:var(--share-accent-dark);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.85rem;padding:.25rem .5rem;font-size:.72rem;font-weight:900;display:inline-block;transform:rotate(-2deg)}.share-result__eyebrow{color:var(--share-muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .3rem;font-size:.78rem;font-weight:800}.share-result h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.75rem,7vw,2.5rem);line-height:.98}.share-result__strapline{max-width:38rem;color:var(--share-muted);margin:.7rem 0 0;font-size:.98rem;line-height:1.45}.share-result__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:1.15rem 0;display:grid}.share-result__stat{background:var(--share-panel);border:1px solid #2c2a2473;min-width:0;padding:.8rem}.share-result__stat dt{color:var(--share-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.2rem;font-size:.72rem;font-weight:800}.share-result__stat dd{margin:0;font-size:clamp(1.4rem,7vw,2rem);font-weight:900;line-height:1}.share-result__challenge{border-left:4px solid var(--share-accent);gap:.2rem;margin:1rem 0;padding-left:.85rem;display:grid}.share-result__challenge span{color:var(--share-muted);font-size:.92rem;line-height:1.4}.share-result__primary{border:2px solid var(--share-border);background:var(--share-accent);color:#fff8ed;width:100%;min-height:56px;box-shadow:3px 3px 0 var(--share-border);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:0;margin-top:.25rem;padding:.95rem 1rem;font-size:1.08rem;font-weight:900}.share-result__primary:hover{background:var(--share-accent-dark)}.share-result__primary:active{box-shadow:1px 1px 0 var(--share-border);transform:translate(2px,2px)}.share-result__primary:focus-visible{outline:3px solid var(--share-ink);outline-offset:4px}.share-result__hint{color:var(--share-muted);text-align:center;margin:.7rem 0 0;font-size:.78rem;line-height:1.4}.share-status{border:1px dashed var(--share-border);text-align:center;background:#ffffff59;margin:.85rem 0 0;padding:.7rem .8rem;font-size:.88rem;font-weight:800}@media (width>=560px){.share-result__stats{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=380px){.share-result{margin-top:1rem;padding:.9rem;box-shadow:3px 4px #00000029}.share-result h3{font-size:1.7rem}.share-result__stats{gap:.5rem}.share-result__stat{padding:.7rem}.share-result__stat dd{font-size:1.45rem}}@media (prefers-reduced-motion:reduce){.share-result__stamp,.share-result__primary,.share-result__primary:active{transform:none}}:root{color:#17263b;font-synthesis:none;background:#0d1b2b;font-family:Courier Prime,monospace}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% 0,#23384b,#0b1827 58%);min-width:320px;min-height:100vh;margin:0}button{font:inherit;color:inherit}button:focus-visible{outline-offset:2px;outline:3px solid #19a59d}.app{min-height:100vh;padding-bottom:91px}header{color:#f5efd9;background:#111f30;border-bottom:5px solid #e4aa35;align-items:center;gap:14px;height:72px;padding:8px 22px;display:flex;box-shadow:0 4px 20px #0008}h1{text-transform:uppercase;letter-spacing:1px;margin:0;font:800 26px/1 Barlow Condensed}.eyebrow{color:#e4aa35;letter-spacing:1.5px;margin:0 0 4px;font:700 9px/1 Courier Prime}.hatch{background:#202f3d;border:4px solid #8ea1a8;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;box-shadow:inset 0 0 0 4px #111}.hatch b{color:#fff;background:#d75b54;border-radius:50%;padding:2px 7px}.stats{align-items:center;gap:9px;margin-left:auto;display:flex}.stats>span{letter-spacing:1px;border-left:1px solid #566472;padding:0 9px;font:700 11px/1.5 Barlow Condensed}.stats b{font-size:16px;display:block}.stats .supply b{color:#61cec4}.stats .integrity b{color:#e36d62;letter-spacing:0}.stats button,.help button,.result button{cursor:pointer;background:#eee6cf;border:0;border-bottom:3px solid #a99e83;padding:7px 10px;font-size:11px;font-weight:700}main{grid-template-columns:minmax(250px,1fr) minmax(440px,1.55fr) minmax(280px,1.1fr);gap:14px;max-width:1440px;margin:auto;padding:16px;display:grid}.panel{background:#ede5ce;border:1px solid #bdb399;padding:13px;position:relative;box-shadow:5px 7px #06101ba6}.panel:before{content:"";pointer-events:none;border:1px solid #d5cdb7;position:absolute;inset:4px}.panel-title{letter-spacing:1.2px;border-bottom:2px solid #17263b;margin-bottom:10px;padding-bottom:7px;font:800 14px Barlow Condensed}.panel-title span{color:#f6eeca;background:#17263b;margin-right:6px;padding:3px 6px}.disaster{text-align:left;cursor:pointer;background:#f8f1dc;border:1px solid #aa9f84;border-left:5px solid #e4aa35;width:100%;margin-bottom:10px;padding:10px;transition:all .15s;box-shadow:2px 2px #bdb296}.disaster:hover,.disaster:focus{border-left-color:#159b94;transform:translate(3px)}.disaster.lethal{border-left-color:#d75b54}.disaster-head{gap:9px;display:flex}.disaster-head b{text-transform:uppercase;font:800 18px Barlow Condensed}.disaster-head small{margin-top:3px;font-size:10px;line-height:1.25;display:block}.icon{background:#e4aa35;border-radius:50%;flex:none;place-items:center;width:37px;height:37px;display:grid}.icon i{background:#17263b;border-radius:60% 40%;width:15px;height:18px;display:block;transform:rotate(45deg)}.icon.meteor i{border-radius:50%;box-shadow:-8px -5px 0 -3px #17263b}.icon.clip i{background:0 0;border:3px solid #17263b;border-radius:0}.icon.eye i{background:0 0;border:3px solid #17263b;border-radius:80% 0}.calls{gap:6px;margin:9px 0;display:flex}.calls span,.scrap span{color:#fff;text-align:center;background:#17263b;min-width:35px;padding:5px;font:700 15px Barlow Condensed}.calls span.old,.scrap span.old{background:#777;text-decoration:line-through}.calls i{font:7px Courier Prime;display:block}.effect{text-transform:uppercase;font-size:9px;line-height:1.4}.effect strong{color:#087c75}.effect em{color:#fff;background:#d75b54;padding:2px;font-style:normal}.chosen{text-align:center;border:1px dashed #81775e;padding:15px}.chosen .stamp{color:#c8453f;border:3px solid #c8453f;padding:4px;font:700 12px Barlow Condensed;position:absolute;transform:rotate(-8deg)}.chosen .icon{margin:auto}.chosen h2{margin:7px;font:800 21px Barlow Condensed}.chosen p{font-size:11px}.chosen .calls{justify-content:center}.log{border-top:1px dashed #8e846e;margin-top:13px;padding-top:8px}.log h3{margin:0 0 7px;font:800 12px Barlow Condensed}.log p{border-left:2px solid #e4aa35;margin:4px 0;padding-left:8px;font-size:9px}.board-wrap{align-self:start;position:relative}.board-head{color:#f4ecd6;letter-spacing:1px;justify-content:space-between;margin:2px 2px 8px;font:800 13px Barlow Condensed;display:flex}.board-head b{color:#e4aa35}.board{background:#d6cdb5 linear-gradient(#00000005 1px,#0000 1px) 0 0/100% 9px;border:1px solid #8f876f;grid-template-columns:repeat(5,1fr);gap:6px;padding:10px;display:grid;transform:rotate(-.25deg);box-shadow:7px 8px #050e18}.board button{aspect-ratio:1;cursor:default;background:#f6efd9;border:1px solid #a49a80;font:800 clamp(24px,3vw,42px) Barlow Condensed;position:relative;overflow:hidden}.board button:disabled{color:#17263b}.board button:not(:disabled){cursor:pointer;box-shadow:inset 0 0 0 4px #1aa89d}.board button.nearly:after{content:"ONE AWAY";color:#8a5b00;font:700 7px Courier Prime;position:absolute;top:3px;left:3px}.board button.marked{background:#eadcae}.board button.marked>i{color:#c34e49;opacity:.76;font:800 55px/1 Barlow Condensed;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)rotate(-12deg)}.board button.preview{background:#79d0c8;animation:.8s infinite alternate pulse}.board button.claimed{box-shadow:inset 0 0 0 4px #148e87}.board button small{color:#087c75;background:#f8efd7dd;border:1px solid;padding:1px;font:800 7px Barlow Condensed;position:absolute;bottom:2px;left:50%;transform:translate(-50%)rotate(-3deg)}.legend{color:#e8e0cc;justify-content:center;gap:15px;margin-top:10px;font-size:9px;display:flex}.dot{width:10px;height:10px;margin-right:4px;display:inline-block}.dot.near{border:2px solid #dca72c}.dot.mark{background:#d75b54}.dot.prev{background:#59c1b7}.flash{color:#fff;z-index:4;background:#148e87;border:5px double #fff;padding:12px 20px;font:800 24px Barlow Condensed;animation:1.2s both pop;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(-4deg)}.resident{border-bottom:1px dashed #938870;gap:9px;min-height:100px;padding:8px 0;display:flex}.resident>div:last-child{flex:1}.resident h3{text-transform:uppercase;margin:0;font:800 16px Barlow Condensed}.resident p{margin:2px 0 5px;font-size:9px;font-style:italic}.resident b,.resident em,.resident small{font-size:9px;display:block}.resident em{color:#b2403c;font-weight:700}.resident button,.repairs button,.candidate button,footer button,.recruit>button{color:#fff;cursor:pointer;background:#17263b;border:0;margin-top:5px;padding:5px 9px;font:800 10px Barlow Condensed}.resident button:disabled,.repairs button:disabled{opacity:.42}.resident.empty{color:#827863;border:1px dashed #a79c82;justify-content:center;align-items:center}.portrait{background:#d8ad59;border:3px solid #17263b;flex:none;width:53px;height:65px;position:relative;overflow:hidden}.portrait .head{background:#e9b78b;border:2px solid #17263b;border-radius:50%;width:29px;height:31px;position:absolute;top:8px;left:10px}.portrait .body{background:#1e887f;border-radius:50% 50% 0 0;width:46px;height:35px;position:absolute;top:39px;left:1px}.portrait.conspiracy .head:after{content:"";border-bottom:16px solid #d75b54;border-left:13px solid #0000;border-right:13px solid #0000;position:absolute;top:-9px;left:0}.portrait.traveller{background:#5ca8b0}.portrait.traveller .head:after{content:"⌁";color:#17263b;font-size:29px;position:absolute;top:-11px}.portrait.raccoon .head{background:#76838a}.portrait.raccoon .head:after{content:"••";color:#fff;text-align:center;background:#17263b;border-radius:50%;width:22px;position:absolute;top:8px;left:2px}.portrait.raccoon .body{background:#79888c}.portrait.influencer{background:#df7064}.portrait.influencer .head:after{content:"☆";position:absolute;top:3px;left:5px}.portrait.influencer .body{background:#e5ab34}.scrap,.repairs{background:#d8cfb7;margin-top:9px;padding:8px;transform:rotate(.5deg)}.scrap>b,.repairs>b{font:800 11px Barlow Condensed}.scrap div{gap:4px;margin:5px 0;display:flex}.scrap small{font-size:8px}.repairs{grid-template-columns:1fr auto;gap:3px;display:grid}.repairs div span{color:#fff;background:#d75b54;margin:2px;padding:2px 4px;display:inline-block}.repairs div span.used{opacity:.2}.repairs button{grid-column:1/-1;margin:0}footer{color:#f4ecd7;z-index:10;background:#111f30;border-top:5px solid #e4aa35;justify-content:space-between;align-items:center;gap:20px;min-height:74px;padding:10px 22px;display:flex;position:fixed;bottom:0;left:0;right:0}.instruction{font:800 16px Barlow Condensed}.upkeep{align-items:center;gap:15px;font-size:10px;display:flex}.upkeep b{color:#e4aa35;font-size:20px}.upkeep button{color:#17263b;background:#e4aa35;padding:10px 17px;font-size:13px}.recruit{z-index:15;width:min(620px,90vw);position:fixed;bottom:85px;left:50%;transform:translate(-50%)}.candidate{border-bottom:1px dashed #91866e;align-items:center;gap:12px;padding:8px;display:flex}.candidate h3{margin:0;font:800 17px Barlow Condensed}.candidate p{margin:2px 0;font-size:9px}.candidate button{margin-left:auto}.replace{background:#f4ecd8;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;padding:14px;display:flex;position:absolute;inset:15px;box-shadow:0 3px 20px #0008}.overlay{z-index:30;background:#06101bd9;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.help,.result{width:min(560px,95vw);max-height:85vh;padding:25px;overflow:auto}.close{float:right}.help h2,.result h2{text-transform:uppercase;font:800 28px Barlow Condensed}.help h3{margin-bottom:0;font:800 17px Barlow Condensed}.help p{font-size:12px;line-height:1.5}.result{text-align:center}.big-stamp{border:5px double;padding:7px 12px;font:800 25px Barlow Condensed;display:inline-block;transform:rotate(-3deg)}.big-stamp.win{color:#087c75}.big-stamp.loss{color:#c24843}.result blockquote{font-size:12px}.result button{color:#fff;background:#17263b;border:0;margin:5px}@keyframes pulse{to{box-shadow:inset 0 0 0 5px #fff}}@keyframes pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}20%{opacity:1;transform:translate(-50%,-50%)scale(1.1)rotate(-4deg)}80%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=1050px){header{flex-wrap:wrap;height:auto}.stats{justify-content:center;width:100%;margin:0}main{grid-template-columns:1fr 1.4fr}.residents{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.residents .panel-title{grid-column:1/-1}.scrap,.repairs{margin:0}.app{padding-bottom:115px}}@media (width<=720px){header{padding:10px}.stats{justify-content:flex-start;overflow-x:auto}.stats .integrity{min-width:130px}main{flex-direction:column;padding:10px;display:flex}.board-wrap{order:-1}.board{gap:3px;padding:6px}.board button{font-size:27px}.residents{display:block}footer{flex-direction:column;align-items:stretch;position:static}.upkeep{flex-wrap:wrap}.app{padding-bottom:0}.recruit{position:fixed;bottom:10px}.legend{flex-wrap:wrap}}.schedule{text-align:right;color:#f3c65d;letter-spacing:.5px;max-width:1440px;margin:8px auto -7px;padding:0 18px;font:700 10px monospace}.stats .resource{min-width:92px;position:relative}.stats .resource>i{color:#e4aa35;font-style:normal}.stats .resource>b{font-size:22px}.stats .integrity{min-width:155px}.stats .integrity>small{gap:2px;margin-top:2px;display:flex}.stats .integrity>small i{background:#65717c;flex:1;height:5px}.stats .integrity>small i.full{background:#e36d62}.stats .tonight{min-width:140px}.stats .tonight small{color:#d8cfb7;font-size:7px;display:block}.stats .danger{color:#fff;background:#5b2428}.effect small{color:#263a4d;margin-top:3px;display:block}.resident{min-height:122px}.resident-rule{font-weight:700;line-height:1.25;font-size:10px!important;font-style:normal!important}.resident .flavour,.candidate .flavour{opacity:.68;margin-top:5px!important;font-size:8px!important}.resident-state{color:#fff;text-transform:uppercase;background:#717b80;width:max-content;margin:4px 0 2px;padding:2px 5px;font-weight:700;display:inline-block!important}.resident-state.ready,.resident-state.available{background:#087c75}.resident-state.used-this-round,.resident-state.triggered-this-round{background:#9b7020}.upkeep em{color:#ff8c83;margin-top:3px;font-style:normal;font-weight:700;display:block}.shortfall{border:2px solid #d75b54;padding:5px}.lethal-action{color:#fff!important;background:#d75b54!important}.candidate>div:nth-child(2){flex:1}.candidate b,.candidate small{font-size:9px;display:block}.candidate .resident-rule{margin:2px 0}.candidate .flavour{margin-bottom:0}.candidate .portrait{width:48px}.recruit .skip{background:#615d53;margin-top:9px;display:block}.replace{align-content:center}.replace>button{flex-direction:column;gap:2px;display:flex}.replace>button strong{color:#f0bd4c;font-size:9px}.arrival{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.arrival span{font-size:9px}.arrival strong{font:800 16px sans-serif}.upkeep span:nth-child(2) b{color:#fff;font-size:13px}@media (width<=1280px){header{padding-left:12px;padding-right:12px}h1{font-size:22px}.stats{gap:4px}.stats>span{padding:0 5px}.stats .resource{min-width:80px}.stats .integrity{min-width:135px}.stats .tonight{min-width:120px}main{gap:9px;padding:10px}.resident{min-height:112px}}@media (width<=720px){.schedule{text-align:center;margin:7px 0 0}.stats .tonight{min-width:145px}.candidate{align-items:flex-start}.candidate button{white-space:nowrap}.replace{max-height:75vh;position:fixed;inset:auto 10px 10px;overflow:auto}}.app{padding-bottom:1rem}.panel{border-width:1px;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px #00000024,inset 0 2px #ffffff2e}.disaster{border-radius:14px;margin-bottom:.8rem;transition:transform .12s,box-shadow .12s,border-color .12s}.disaster:hover,.disaster:focus-visible{transform:translateY(-2px);box-shadow:0 8px 18px #00000024}.resident{border-radius:14px;margin-bottom:.7rem}.scrap,.repairs,.log{border-radius:14px}.board-wrap{border-radius:18px}.board button{border-radius:8px}button{min-height:44px}.resident button,.repairs button,.candidate>button,.skip{border-radius:10px;padding:.75rem 1rem;font-weight:800}.resident button:not(:disabled),.repairs button:not(:disabled),.candidate>button{box-shadow:0 3px #0000004d}.resident button:not(:disabled):active,.repairs button:not(:disabled):active,.candidate>button:active{transform:translateY(2px);box-shadow:0 1px #0000004d}.action-dock{z-index:20;background:linear-gradient(145deg,#232723fa,#121412fa);border:1px solid #ffffff26;border-radius:18px;gap:.75rem;width:min(1180px,100% - 1.5rem);margin:1rem auto;padding:.85rem;display:grid;position:relative;box-shadow:0 14px 34px #0000004d,inset 0 1px #ffffff14}.action-dock__guidance{flex-wrap:wrap;align-items:center;gap:.7rem;min-width:0;display:flex}.action-dock__label{letter-spacing:.1em;background:#ffffff1a;border-radius:6px;flex:none;padding:.32rem .5rem;font-size:.68rem;font-weight:900}.action-dock__instruction{flex:1;min-width:0;font-size:.95rem;line-height:1.3}.action-dock__cancel{border-radius:8px}.round-action{border-top:1px solid #ffffff1f;grid-template-columns:minmax(0,1fr) minmax(220px,330px);gap:.8rem;padding-top:.8rem;display:grid}.round-action__summary{align-content:center;gap:.18rem;min-width:0;display:grid}.round-action__eyebrow{letter-spacing:.1em;opacity:.7;font-size:.68rem;font-weight:900}.round-action__summary strong{font-size:1.25rem}.round-action__summary span{opacity:.82;font-size:.82rem}.round-action__summary em{color:#ffad8d;font-size:.82rem;font-style:normal;font-weight:800}.end-round-button{color:#fff9ed;text-align:left;cursor:pointer;background:linear-gradient(#e57642,#c74d25);border:2px solid #171714;border-radius:12px;gap:.1rem;width:100%;min-height:66px;padding:.75rem 1rem;transition:transform .1s,box-shadow .1s;display:grid;box-shadow:0 5px #171714,0 10px 18px #00000038}.end-round-button:hover{filter:brightness(1.08)}.end-round-button:active{transform:translateY(3px);box-shadow:0 2px #171714,0 5px 12px #00000040}.end-round-button__small{letter-spacing:.12em;opacity:.8;font-size:.65rem;font-weight:900}.end-round-button__main{font-size:1.15rem;font-weight:950}.end-round-button.lethal-action{background:linear-gradient(#c8392f,#8d211b)}@media (width<=700px){body{overflow-x:hidden}.app{width:100%;min-width:0}header{gap:.6rem}header .stats{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}main{flex-direction:column;gap:.85rem;padding-left:.65rem;padding-right:.65rem;display:flex}.panel,.board-wrap{width:100%;min-width:0}.board{gap:4px}.board button{aspect-ratio:1;min-width:0;padding:.2rem}.disaster{width:100%;padding:.85rem}.resident{padding:.75rem}.action-dock{z-index:100;border-radius:16px;width:calc(100% - .75rem);margin:.75rem auto .4rem;padding:.75rem;position:sticky;bottom:0}.action-dock__guidance{gap:.45rem}.action-dock__label{font-size:.62rem}.action-dock__instruction{flex-basis:100%;font-size:.86rem}.round-action{grid-template-columns:1fr}.round-action__summary{grid-template-columns:auto 1fr;column-gap:.5rem;display:grid}.round-action__eyebrow{grid-column:1/-1}.round-action__summary strong{font-size:1.05rem}.round-action__summary span,.round-action__summary em{grid-column:1/-1}.end-round-button{border-radius:12px;min-height:64px}.end-round-button__main{font-size:1.15rem}}@media (width<=380px){main{padding-left:.45rem;padding-right:.45rem}.action-dock{width:calc(100% - .4rem);padding:.65rem}.panel{border-radius:14px}.disaster,.resident,.scrap,.repairs,.log{border-radius:11px}.end-round-button{min-height:68px}}
