: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}}
