:root{--ink: #0b0b10;--panel: #262338;--panel-2: #312d48;--text: #fff8ec;--dim: #b9b2d6;--green: #3ee06f;--red: #ff4b3e;--rad: #8cff4f;--amber: #ffbe3d;--cyan: #3ff0ff;--pink: #ff6fbf;--purple: #a463ff;--body: "Nunito", system-ui, sans-serif;--display: "Lilita One", "Bungee", sans-serif;--pop: 0 4px 0 var(--ink)}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#120e0b;color:var(--text);font:700 13px var(--body);overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:none;overscroll-behavior:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{filter:grayscale(.8) brightness(.7);cursor:not-allowed}img{-webkit-user-drag:none}#world{position:fixed;top:0;right:0;bottom:0;left:0}#world canvas{display:block}.labels{position:absolute;top:0;right:0;bottom:0;left:0}.flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;pointer-events:none;z-index:2}.panel{background:var(--panel);border:3px solid var(--ink);border-radius:16px;box-shadow:var(--pop),inset 0 2px #ffffff14}.btn{border:3px solid var(--ink);border-radius:12px;box-shadow:0 4px 0 var(--ink),inset 0 -4px #0000002e,inset 0 2px #fff5;padding:7px 14px;font:15px var(--display);letter-spacing:.02em;text-shadow:0 2px 0 #0006;transition:transform .06s;color:#fff}.btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--ink),inset 0 -2px #0000002e}.btn-green{background:var(--green)}.btn-pink{background:var(--pink)}.btn-amber{background:var(--amber);color:#3a2400;text-shadow:none}.btn-red{background:var(--red)}.btn-dark{background:var(--panel-2)}.up{color:var(--green)}.down{color:var(--red)}.room-label{font:14px var(--display);color:#fff;background:var(--ink);padding:2px 10px 3px;border-radius:0 0 10px;pointer-events:none;letter-spacing:.04em}.room-label.dark{background:var(--red)}.dweller-tag{font:12px var(--display);color:#fff;background:#0b0b10d0;padding:1px 7px 2px;border-radius:8px;white-space:nowrap;letter-spacing:.03em;pointer-events:none}.dweller-tag.sel{background:var(--rad);color:var(--ink)}.dweller-tag.hurt{background:var(--red)}.sign{font:22px var(--display);color:var(--rad);-webkit-text-stroke:1.5px var(--ink);text-shadow:0 3px 0 var(--ink);pointer-events:none}.cell-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;width:92px;height:78px;border-radius:18px;border:3px solid var(--ink);background:#ffbe3dee;color:#3a2400;box-shadow:var(--pop);transition:transform .08s}.cell-btn b{font:36px/.9 var(--display)}.cell-btn span{font:13px var(--display);letter-spacing:.08em}.cell-btn:hover{transform:translateY(-3px) scale(1.05);background:var(--rad)}.room-label.empty{background:var(--amber);color:#3a2400}.dig-btn{padding:12px 22px;border-radius:16px;border:3px solid var(--ink);background:var(--amber);color:#3a2400;font:17px var(--display);box-shadow:var(--pop)}.dig-btn:hover{filter:brightness(1.1)}.popup{font:20px var(--display);color:#fff;-webkit-text-stroke:1px var(--ink);text-shadow:0 3px 0 var(--ink);pointer-events:none;white-space:nowrap}#ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:5}.ui>*{pointer-events:auto}.topbar{position:absolute;top:10px;left:12px;right:12px;display:flex;gap:10px;align-items:center;pointer-events:none}.topbar>*{pointer-events:auto}.brand{font:34px var(--display);color:var(--rad);-webkit-text-stroke:2px var(--ink);text-shadow:0 4px 0 var(--ink);padding:0 4px;transform:rotate(-4deg)}button.brand{background:none;border:none;cursor:pointer;transition:transform .12s}button.brand:hover{transform:rotate(-4deg) scale(1.08)}.brand-wrap{position:relative}.brand-confirm{position:absolute;top:46px;left:0;z-index:20;width:250px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:var(--panel);border:3px solid var(--ink);border-radius:12px;padding:8px 10px;box-shadow:var(--pop);font-size:12px}.brand-confirm .btn{flex:1;font-size:13px;padding:4px 8px}.res-row{display:flex;gap:8px;flex-wrap:wrap}.ticker{position:relative;overflow:hidden;display:flex;align-items:center;gap:8px;background:var(--panel);border:3px solid var(--ink);border-radius:999px;padding:3px 14px 3px 3px;box-shadow:var(--pop);min-width:128px}.t-fill{position:absolute;left:0;bottom:0;height:4px;background:#ffffff30}.t-icon{width:36px;height:36px;border-radius:50%;border:3px solid var(--ink);display:grid;place-items:center;font-size:18px;flex:none;box-shadow:inset 0 -3px #0003,inset 0 2px #fff6}.t-ramen{background:var(--amber)}.t-water{background:var(--cyan)}.t-power{background:var(--rad)}.t-copium{background:var(--pink)}.t-rads{background:#ffe14d}.t-main{display:grid;line-height:1.05}.t-val{font:20px var(--display)}.t-val small{font:800 11px var(--body);color:var(--dim)}.t-rate{font-size:11px;font-weight:900}.ticker.low{background:#4a3214}.ticker.empty{background:#6a1414;animation:shakeX .5s infinite}.clock{margin-left:auto;height:48px;display:flex;align-items:center;gap:8px;background:var(--panel);border:3px solid var(--ink);border-radius:999px;box-shadow:var(--pop);padding:3px 6px 3px 3px;min-width:150px}.clock.counting{background:#3a1620}.t-bomb{background:var(--red);color:#fff;animation:pulseScale 1s infinite}.t-day{background:var(--purple);font-size:16px}.tminus{color:#ff7a6e}.daybar{display:block;width:96px;height:6px;background:var(--ink);margin-top:3px;border-radius:4px;overflow:hidden}.skip{margin-left:4px;height:32px;background:var(--red);border:2px solid var(--ink);border-radius:999px;padding:0 12px;font:13px var(--display);letter-spacing:.04em;box-shadow:0 2px 0 var(--ink)}.dock-btn.recruit{background:var(--green);color:var(--ink)}.badge.cost{background:#fff8ec}.daybar{display:block;width:90px;height:8px;background:var(--ink);margin-top:3px;border-radius:6px;overflow:hidden}.daybar span{display:block;height:100%;background:var(--rad)}.speed{display:flex;gap:4px}.speed button{height:44px;min-width:44px;background:var(--panel-2);border:3px solid var(--ink);border-radius:12px;box-shadow:0 3px 0 var(--ink);padding:0 10px;font:15px var(--display)}.speed button.on{background:var(--rad);color:var(--ink)}.vibe{flex:1 1 360px;max-width:520px;min-width:300px;height:48px;display:flex;align-items:center;gap:8px;background:var(--panel);border:3px solid var(--ink);border-radius:999px;box-shadow:var(--pop);padding:0 4px 0 14px}.v-end{flex:none;font:11px/.95 var(--display);letter-spacing:.03em;text-align:center}.v-end.over{color:var(--red)}.v-end.back{color:var(--green)}.v-mid{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.vibe-zone{font:900 9px var(--body);color:var(--dim);letter-spacing:.08em;white-space:nowrap}.vibe-track{position:relative;width:100%;height:14px;border-radius:10px;border:2px solid var(--ink);background:linear-gradient(90deg,#ff4b3e,#8a2a22 26%,#3a3552 32.5%,#3a3552 67.5%,#1f7a3f 74%,#3ee06f)}.vibe-sweet{position:absolute;left:32.5%;width:35%;top:1px;bottom:1px;border:2px dashed #fff8;border-radius:6px}.vibe-needle{position:absolute;top:-5px;width:10px;height:20px;margin-left:-5px;background:#fff;border:2px solid var(--ink);border-radius:5px;transition:left .1s linear;box-shadow:0 2px 0 var(--ink)}.cope{flex:none;height:36px;padding:0 12px;font-size:14px;border-radius:999px;box-shadow:0 3px 0 var(--ink),inset 0 -3px #0000002e,inset 0 2px #fff5}.zone-cooked .vibe-zone{color:var(--red);animation:shakeX .4s infinite}.zone-manic .vibe-zone{color:var(--green);animation:shakeX .4s infinite}.zone-balanced .vibe-zone{color:var(--cyan)}.zone-cooked,.zone-manic{border-color:var(--ink);animation:alarm .8s infinite}.toasts{position:absolute;top:76px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none!important;width:min(520px,50vw)}.toast{background:var(--panel);border:3px solid var(--ink);border-radius:12px;box-shadow:var(--pop);padding:7px 14px;font-size:13px;text-align:center;animation:toastIn .3s cubic-bezier(.2,1.6,.4,1) both,toastOut .5s 4.4s forwards}.toast-good{background:#1d4a2c}.toast-bad{background:#5a1a18}.hatch{position:absolute;left:14px;bottom:14px;display:flex;align-items:flex-end;gap:4px;cursor:pointer;z-index:3}.prep-on .hatch,.prep-on .dock{bottom:64px}.hatch-bot{position:relative;width:118px;flex:none;animation:hover 3s ease-in-out infinite;filter:drop-shadow(0 5px 0 var(--ink)) drop-shadow(0 0 18px #3ff0ff55)}.mood-angry .hatch-bot{filter:drop-shadow(0 5px 0 var(--ink)) drop-shadow(0 0 22px #ff4b3e88);animation:hover 3s ease-in-out infinite,shakeX .2s infinite}.mood-panic .hatch-bot{animation:hover 1s ease-in-out infinite,shakeX .12s infinite}.mood-dead .hatch-bot{filter:drop-shadow(0 5px 0 var(--ink)) grayscale(.6);animation:none;transform:rotate(-8deg) translateY(6px)}.mood-sleep .hatch-bot{animation-duration:5s}.hatch-img{display:block;width:100%;height:auto}.hatch-img.g0{animation:glitchA .35s steps(2)}.hatch-img.g1{animation:glitchB .35s steps(2)}.hatch-scan{position:absolute;left:22%;right:20%;top:18%;height:46%;border-radius:10px;background:repeating-linear-gradient(0deg,#0000 0,#0000 3px,#0002 3px,#0002 4px);pointer-events:none;mix-blend-mode:multiply}.hatch-bubble{position:relative;max-width:330px;margin:0 0 64px 2px;background:#fff8ec;color:var(--ink);border:3px solid var(--ink);border-radius:18px 18px 18px 4px;padding:8px 14px 10px;box-shadow:var(--pop);animation:bubbleIn .35s cubic-bezier(.2,1.6,.4,1);transform-origin:bottom left}.hatch-bubble:before{content:"";position:absolute;left:-16px;bottom:10px;border:9px solid transparent;border-right:14px solid var(--ink)}.hatch-bubble:after{content:"";position:absolute;left:-9px;bottom:13px;border:6px solid transparent;border-right:10px solid #fff8ec}.hatch-name{font:14px var(--display);color:#0a8a96;letter-spacing:.05em;display:flex;gap:8px;align-items:baseline}.hatch-name span{font:900 10px var(--body);color:#9a93b8;letter-spacing:0}.hatch-bubble p{margin:2px 0 0;font:800 14px/1.35 var(--body)}.caret{color:#0a8a96;animation:blink .6s infinite;margin-left:1px}.chyron{position:absolute;left:0;right:0;bottom:0;height:50px;display:flex;align-items:stretch;background:#0b0b10;border-top:4px solid var(--red);box-shadow:0 -4px 0 var(--ink);pointer-events:none!important;z-index:2}.chyron-tag{flex:none;display:flex;align-items:center;gap:8px;padding:0 18px 0 16px;background:var(--red);color:#fff;font:22px var(--display);letter-spacing:.06em;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%)}.chyron-tag .dot{width:11px;height:11px;border-radius:50%;background:#fff;animation:blink 1s infinite}.chyron-clock{flex:none;display:flex;flex-direction:column;justify-content:center;background:#ffe14d;color:var(--ink);font:900 10px var(--body);letter-spacing:.12em;clip-path:polygon(14px 0,100% 0,calc(100% - 14px) 100%,0 100%);margin-left:-10px;padding:0 16px 0 24px}.chyron-clock b{font:20px var(--display);letter-spacing:.02em;line-height:1}.chyron-track{flex:1;overflow:hidden;display:flex;align-items:center}.chyron-scroll{display:flex;white-space:nowrap;animation:ticker 70s linear infinite}.chyron-scroll span{font:19px var(--display);color:#fff;letter-spacing:.02em;padding-left:26px}.chyron-scroll i{font-style:normal;color:var(--amber);padding-left:26px}.dock{position:absolute;right:12px;bottom:12px;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none!important}.dock>*{pointer-events:auto}.dock-row{display:flex;gap:8px}.dock-btn{position:relative;display:flex;flex-direction:column;align-items:center;gap:0;width:84px;padding:6px 4px 7px;background:var(--panel);border:3px solid var(--ink);border-radius:16px;box-shadow:var(--pop);font:13px var(--display);letter-spacing:.03em;transition:transform .06s}.dock-btn:hover{transform:translateY(-2px)}.dock-btn.on{background:var(--purple)}.dock-ico{font-size:24px;line-height:1.1}.badge{position:absolute;top:-9px;right:-6px;background:var(--amber);color:#3a2400;border:2px solid var(--ink);border-radius:999px;padding:0 6px;font:12px var(--display)}.badge.warn{top:auto;bottom:-10px;right:auto;background:var(--red);color:#fff;animation:pulseScale 1s infinite;white-space:nowrap}.drawer{width:330px;max-height:58vh;overflow:auto;padding:10px;animation:pop .2s ease-out}.drawer-title{font:20px var(--display);margin-bottom:4px}.drawer-hint{color:var(--dim);font-size:12px;margin-bottom:8px}.r-row{display:grid;grid-template-columns:40px 1fr 56px;gap:10px;align-items:center;padding:5px 6px;border-radius:12px;cursor:pointer;border:2px solid transparent}.r-row:hover{background:#ffffff12}.r-row.sel{background:#8cff4f22;border-color:var(--rad)}.r-row.idle .r-where{color:var(--amber)}.r-row.dead{opacity:.45;cursor:default}.r-row.expedition{opacity:.7}.face{width:40px;height:40px;border-radius:50%;border:3px solid var(--ink);background-size:170% auto;background-position:50% 4%;background-repeat:no-repeat;background-color:#4a4468}.r-text{display:grid}.r-name{font:15px var(--display)}.r-where{color:var(--dim);font-size:11px;font-weight:900}.hp{height:10px;background:var(--ink);border-radius:5px;overflow:hidden;border:2px solid var(--ink)}.hp span{display:block;height:100%;border-radius:3px}.f{background:var(--panel-2);border:2px solid var(--ink);border-radius:8px;font:15px var(--display);padding:2px 10px;box-shadow:0 2px 0 var(--ink)}.bag{background:var(--panel-2);border:2px solid var(--ink);border-radius:12px;padding:7px 10px;margin-bottom:6px;display:grid}.bag b{font:15px var(--display);color:var(--amber)}.bag small{color:var(--dim);font-size:12px}.log-line{font-size:12px;line-height:1.35;padding:3px 0;border-bottom:1px dashed #ffffff14}.log-good{color:var(--green)}.log-bad{color:#ff8a80}.dcard{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:12px;padding:10px 12px;width:min(820px,60vw);animation:slideUp .25s cubic-bezier(.2,1.4,.4,1)}.dc-portrait{flex:none;width:92px;height:120px;border-radius:14px;border:3px solid var(--ink);background-size:140% auto;background-position:50% 4%;background-repeat:no-repeat;background-color:#4a4468}.dc-main{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.dc-head{display:flex;align-items:baseline;gap:8px}.dc-head b{font:22px var(--display)}.dc-head span{color:var(--dim);font-size:12px}.x{margin-left:auto;background:var(--red);border:2px solid var(--ink);border-radius:8px;width:28px;height:28px;font:14px var(--display);box-shadow:0 2px 0 var(--ink);flex:none}.dc-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;text-align:center}.dc-stats div{background:var(--panel-2);border:2px solid var(--ink);border-radius:10px;padding:2px}.dc-stats span{display:block;font-size:10px;color:var(--dim);font-weight:900}.dc-stats b{font:20px var(--display)}.dc-traits{display:flex;gap:12px;font-size:12px;flex-wrap:wrap}.dc-hint{color:var(--dim);font-size:11px}.dc-exp{flex:none;width:230px;display:flex;flex-direction:column;gap:5px}.dc-exp b{font:13px var(--display);color:var(--amber)}.dc-exp .btn{text-align:left;font-size:13px;padding:5px 10px}.dc-exp small{display:block;font:800 11px var(--body);opacity:.85;text-shadow:none}.prep{position:absolute;top:66px;left:50%;transform:translate(-50%);width:min(600px,38vw);padding:8px 12px;display:flex;flex-direction:column;gap:7px;background:#3a1620}.prep-news{font:15px var(--display);color:var(--amber);letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live{background:var(--red);color:#fff;border:2px solid var(--ink);border-radius:6px;padding:0 6px;font-size:12px;margin-right:4px;animation:blink 1s infinite}.prep-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.prep-price{font:13px var(--display);color:var(--dim)}.prep-price b{color:var(--red);font-size:18px}.prep-tip{color:var(--dim);font-size:11px}.raid{position:absolute;top:140px;left:50%;transform:translate(-50%);width:420px;background:#5a1414;padding:10px 14px;text-align:center;animation:raidPulse .8s infinite}.raid b{font:22px var(--display);color:#fff;-webkit-text-stroke:1px var(--ink)}.raid-track{height:16px;background:var(--ink);border-radius:8px;margin:6px 0 4px;overflow:hidden;border:2px solid var(--ink)}.raid-track span{display:block;height:100%;background:var(--red);transition:width .2s}.drop-text{position:absolute;top:38%;left:0;right:0;text-align:center;font:80px var(--display);color:var(--amber);-webkit-text-stroke:3px var(--ink);text-shadow:0 8px 0 var(--ink);animation:slam .5s cubic-bezier(.2,1.6,.4,1) both,shakeX .15s .5s infinite;pointer-events:none!important}.modal-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0b10b0;display:grid;place-items:center;z-index:10}.modal{position:relative;background:var(--panel);border:4px solid var(--ink);border-radius:22px;padding:20px;width:min(560px,92vw);box-shadow:0 8px 0 var(--ink);animation:pop .25s cubic-bezier(.2,1.6,.4,1)}.modal-title{font:26px var(--display);color:var(--rad);-webkit-text-stroke:1px var(--ink);margin-bottom:12px}.build{width:min(780px,94vw)}.build-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.build-grid button{text-align:left;background:var(--panel-2);border:3px solid var(--ink);border-radius:14px;padding:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 0 var(--ink);transition:transform .06s}.build-grid button:hover:not(:disabled){transform:translateY(-3px)}.build-thumb{height:76px;background-size:cover;background-position:center;border-bottom:3px solid var(--ink)}.build-body{padding:7px 9px 9px;display:flex;flex-direction:column;gap:3px}.build-grid b{font:15px var(--display);letter-spacing:.02em}.build-grid small{color:var(--dim);font-size:11px;line-height:1.3}.build-grid span{font:15px var(--display);color:var(--amber)}.build-tip{color:var(--dim);font-size:12px;margin-top:12px}.card{background:#fff8ec;color:var(--ink);width:min(600px,92vw);padding-top:24px}.card-face{position:absolute;right:18px;top:-70px;width:110px;height:150px;background-size:contain;background-repeat:no-repeat;background-position:bottom center;filter:drop-shadow(0 4px 0 var(--ink));animation:bob 1.4s ease-in-out infinite}.card-day{font:13px var(--display);color:#fff;background:var(--red);border:2px solid var(--ink);display:inline-block;padding:2px 10px;border-radius:8px;transform:rotate(-2deg)}.card-title{font:36px var(--display);margin:8px 120px 6px 0;line-height:1.02}.card-body{font-size:17px;line-height:1.4;margin:0 0 16px;font-weight:800}.card-opts{display:flex;flex-direction:column;gap:10px}.card-opts .btn{text-align:left;font-size:17px}.card-opts small{display:block;font:800 12px var(--body);opacity:.9;text-shadow:none}.card-result{font-size:16px;line-height:1.4;font-weight:800;background:#e6f9ff;border:3px solid var(--ink);border-radius:14px;padding:10px 12px}.card-ok{width:100%;margin-top:6px;font-size:20px}.end{text-align:center}.end-kicker{font:13px var(--display);color:var(--dim);letter-spacing:.15em}.end-title{font:48px var(--display);color:var(--rad);-webkit-text-stroke:2px var(--ink);text-shadow:0 5px 0 var(--ink);margin:6px 0}.end-score{font:56px var(--display);color:var(--amber);-webkit-text-stroke:2px var(--ink);text-shadow:0 5px 0 var(--ink);margin:6px 0 12px}.end table{width:100%;border-collapse:collapse;margin-bottom:12px;font-size:13px}.end td{padding:4px 6px;border-bottom:2px dashed #ffffff22;text-align:left}.end td:last-child{text-align:right;font-family:var(--display)}.end-stats{color:var(--dim);font-size:12px;margin-bottom:14px}.room-bg{background:#0b0b10cc;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.room-pop{width:min(1320px,94vw,(100vh - 230px) * 2.333 + 36px);background:var(--panel);border:4px solid var(--ink);border-radius:24px;box-shadow:0 10px 0 var(--ink),0 30px 80px #000a;padding:14px;display:flex;flex-direction:column;gap:12px;transform-origin:center}.rp-head{display:flex;align-items:center;gap:16px;padding:0 4px}.rp-title{font:32px var(--display);line-height:1}.rp-size{font-size:18px;color:var(--amber);margin-left:8px}.rp-sub{color:var(--dim);font-size:13px;margin-top:2px}.rp-output{margin-left:auto;background:var(--panel-2);border:3px solid var(--ink);border-radius:999px;padding:6px 16px;font:17px var(--display);color:var(--green);box-shadow:0 3px 0 var(--ink);white-space:nowrap}.rp-output.off{color:var(--red)}.x.big{width:40px;height:40px;font-size:18px;border-radius:12px;border-width:3px;box-shadow:0 3px 0 var(--ink)}.rp-stage{position:relative;width:100%;aspect-ratio:1400 / 600;background-size:cover;background-position:center;border:4px solid var(--ink);border-radius:16px;overflow:hidden}.rp-stage.unpowered{filter:brightness(.35) saturate(.5)}.rp-dark{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:64px var(--display);color:var(--red);-webkit-text-stroke:2px var(--ink);z-index:3;animation:blink 1s infinite}.hotspot{position:absolute;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;border:3px solid var(--ink);background:#fff8ecee;box-shadow:0 4px 0 var(--ink);display:grid;place-items:center;z-index:2;transition:transform .12s}.hotspot:after{content:"";position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;border-radius:50%;border:3px solid #fff8ec;animation:ping 1.8s ease-out infinite;pointer-events:none}.hotspot:hover{transform:translate(-50%,-50%) scale(1.15) rotate(-6deg)}.hotspot:active{transform:translate(-50%,-50%) scale(.9)}.hotspot.cooling{background:#6a6580cc;filter:grayscale(1)}.hotspot.cooling:after{display:none}.hs-mark{width:18px;height:18px;border-radius:50%;background:var(--amber);border:3px solid var(--ink);box-shadow:inset 0 -3px #0003}.hotspot:hover .hs-mark{background:var(--rad)}.hs-label{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);white-space:nowrap;background:var(--ink);color:#fff;font:14px var(--display);padding:3px 10px;border-radius:8px;opacity:0;transition:opacity .12s;pointer-events:none}.hotspot:hover .hs-label{opacity:1}.rp-worker{position:absolute;bottom:5%;height:40%;transform:translate(-50%);transition:left 2.4s cubic-bezier(.45,.05,.55,.95);cursor:pointer;z-index:1;display:flex;flex-direction:column;align-items:center}.rp-worker img{height:100%;width:auto;filter:drop-shadow(0 6px 0 #0006);animation:waddle .5s ease-in-out infinite alternate;transform-origin:bottom center}.rp-name{font:14px var(--display);background:var(--ink);color:#fff;padding:1px 8px;border-radius:8px;margin-bottom:4px;white-space:nowrap}.reaction.below{transform:translate(-50%)}.reaction{position:absolute;transform:translate(-50%,-100%);width:max-content;max-width:min(400px,46%);background:#fff8ec;color:var(--ink);border:3px solid var(--ink);border-radius:16px;box-shadow:var(--pop);padding:9px 14px 10px;font:800 15px/1.35 var(--body);z-index:4;animation:bubbleIn .3s cubic-bezier(.2,1.6,.4,1),toastOut .5s 3.3s forwards;pointer-events:none}.burst{position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:24px;animation:burst .6s ease-out}.rp-slots{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:0 4px}.rp-slots-title{font:16px var(--display);margin-right:4px}.rp-slots-title small{font:900 11px var(--body);color:var(--dim)}.slot{display:flex;align-items:center;gap:8px;background:var(--panel-2);border:3px solid var(--ink);border-radius:14px;padding:5px 8px;box-shadow:0 3px 0 var(--ink);min-width:180px}.slot-text{display:grid;line-height:1.1}.slot-text b{font:15px var(--display)}.slot-text small,.slot.empty small{color:var(--dim);font-size:11px;font-weight:900}.slot-x{margin-left:auto;background:var(--red);border:2px solid var(--ink);border-radius:8px;width:26px;height:26px;font:12px var(--display)}.slot.empty{border-style:dashed;background:#ffffff08;color:var(--amber);font:14px var(--display);justify-content:center;gap:6px;height:52px}.slot.empty:hover:not(:disabled){background:#ffbe3d22}@keyframes ping{0%{transform:scale(.8);opacity:.9}to{transform:scale(1.5);opacity:0}}@keyframes waddle{0%{transform:rotate(-2deg)}to{transform:rotate(2deg) translateY(-2%)}}@keyframes burst{0%{transform:translateY(-50%) scale(2.4) rotate(-20deg);opacity:0}}.r-common{--rar: #b9b2d6}.r-rare{--rar: #3ff0ff}.r-legendary{--rar: #ffbe3d}.bag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.bag-tile{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 6px 7px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--rar) 30%,transparent),var(--panel-2) 70%);border:3px solid var(--ink);border-radius:14px;box-shadow:0 3px 0 var(--ink),inset 0 0 0 2px color-mix(in srgb,var(--rar) 60%,transparent);transition:transform .1s}.bag-tile:hover{transform:translateY(-3px) rotate(-2deg)}.bag-tile img{width:72px;height:72px;filter:drop-shadow(0 4px 0 #0008)}.bag-tile span{font:11px/1.1 var(--display);text-align:center;letter-spacing:.02em}.bag-reveal-bg{background:#0b0b10b8}.bag-reveal{position:relative;width:420px;padding:26px 24px 20px;text-align:center;background:var(--panel);border:4px solid var(--ink);border-radius:26px;box-shadow:0 8px 0 var(--ink),0 0 60px color-mix(in srgb,var(--rar) 55%,transparent);overflow:hidden;animation:pop .45s cubic-bezier(.2,1.6,.4,1)}.rays{position:absolute;left:50%;top:42%;width:900px;height:900px;margin:-450px 0 0 -450px;background:repeating-conic-gradient(color-mix(in srgb,var(--rar) 28%,transparent) 0 10deg,transparent 10deg 20deg);animation:spin 12s linear infinite;pointer-events:none}.bag-reveal>*:not(.rays){position:relative}.br-kicker{font:14px var(--display);letter-spacing:.14em;color:var(--rar)}.br-item{width:200px;height:200px;margin:6px auto 2px;display:block;filter:drop-shadow(0 8px 0 #000a);animation:itemDrop .7s cubic-bezier(.2,1.6,.4,1) both,floaty 2.4s .7s ease-in-out infinite}.br-name{font:28px var(--display);line-height:1.05}.br-desc{color:var(--dim);font-size:14px;margin:6px 0 14px}.br-row{display:flex;gap:10px;justify-content:center}.bag-inspect{position:relative;width:min(760px,92vw);display:flex;gap:20px;align-items:center;padding:22px}.bi-x{position:absolute;top:12px;right:12px;z-index:2}.bi-stage{position:relative;flex:none;width:300px;height:300px;display:grid;place-items:center;border-radius:22px;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--rar) 35%,transparent),#00000040 70%);border:3px solid var(--ink);cursor:grab}.bi-glow{position:absolute;top:20%;right:20%;bottom:20%;left:20%;border-radius:50%;background:color-mix(in srgb,var(--rar) 40%,transparent);filter:blur(30px);animation:pulseScale 2.4s infinite}.bi-item{position:relative;width:250px;height:250px;filter:drop-shadow(0 12px 0 #000a);transition:transform .12s ease-out}.bi-item.jiggle{animation:jiggle .5s}.bi-item.gone{opacity:.2;filter:grayscale(1)}.bi-body{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.rarity{align-self:flex-start;font:12px var(--display);letter-spacing:.12em;background:var(--rar);color:var(--ink);border:2px solid var(--ink);border-radius:8px;padding:1px 9px}.bi-name{font:30px/1.02 var(--display)}.bi-desc{font-size:15px;color:var(--green)}.bi-flavor{font-size:14px;color:var(--dim);font-style:italic}.bi-result{font:800 15px/1.35 var(--body);background:#fff8ec;color:var(--ink);border:3px solid var(--ink);border-radius:14px;padding:9px 12px;animation:bubbleIn .3s cubic-bezier(.2,1.6,.4,1)}.bi-act{margin-top:4px;font-size:18px;align-self:flex-start}.bi-act small{font:800 12px var(--body);text-shadow:none;opacity:.85}.bag-reveal.legend{width:460px}.legend-sprite{width:auto;height:260px}.legend-arch{font:16px var(--display);color:var(--amber);letter-spacing:.06em}.face.r-rare{box-shadow:0 0 0 2px var(--rar)}.face.r-legendary{box-shadow:0 0 0 2px var(--rar),0 0 12px var(--rar)}.dc-head .rarity{align-self:center}@keyframes spin{to{transform:rotate(360deg)}}@keyframes itemDrop{0%{transform:translateY(-120px) scale(.3) rotate(-30deg);opacity:0}}@keyframes floaty{50%{transform:translateY(-8px) rotate(3deg)}}@keyframes jiggle{20%{rotate:-12deg;scale:1.1}45%{rotate:9deg}70%{rotate:-5deg}to{rotate:0deg;scale:1}}.cinematic{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#000;overflow:hidden;pointer-events:auto}.cine-shake{position:absolute;top:-40px;right:-40px;bottom:-40px;left:-40px}.cine-img{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center 60%;transform-origin:50% 40%;will-change:transform}.cine-blast{opacity:0}.cine-sky{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 30%,#fff3,#000a 70%);opacity:0}.cine-ring,.cine-ring2{position:absolute;left:50%;top:32%;width:40vw;height:40vw;margin:-20vw 0 0 -20vw;border-radius:50%;border:18px solid #fff8dc;box-shadow:0 0 60px 20px #fc6,inset 0 0 60px 10px #fc6;opacity:0;mix-blend-mode:screen}.cine-ring2{border-width:8px;border-color:#ffb347}.cine-debris{position:absolute;left:50%;top:34%}.shard{position:absolute;width:22px;height:14px;background:#1b1410;border:3px solid var(--ink);clip-path:polygon(0 30%,60% 0,100% 55%,40% 100%);opacity:0}.shard.s1{width:30px;height:20px;background:#6a4a2c}.shard.s2{width:14px;height:14px;background:#ff9a2e;border-radius:50%;clip-path:none;box-shadow:0 0 14px #ffb347}.shard.s3{width:40px;height:12px;background:#4a4f58}.cine-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fffdf0;opacity:0;pointer-events:none}.cine-white{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;opacity:0;pointer-events:none}.cinematic .cine-title{position:absolute;left:0;right:0;bottom:14%;text-align:center;font:86px var(--display);color:var(--amber);-webkit-text-stroke:3px var(--ink);text-shadow:0 8px 0 var(--ink);opacity:0}.cinematic .skip-cine{position:absolute;right:24px;bottom:24px;z-index:2}.title{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:auto;overflow:hidden;background:#120e0b}.title-art{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background:url(/art/title.webp) center 35% / cover no-repeat;animation:kenburns 30s ease-in-out infinite alternate}.title-fade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#0000 40%,#0b0b10e8 88%)}.title-logo{position:absolute;top:7vh;left:0;right:0;text-align:center}.tl-word{font:clamp(72px,12vw,170px)/.9 var(--display);color:var(--rad);-webkit-text-stroke:4px var(--ink);text-shadow:0 10px 0 var(--ink),0 0 60px #8cff4f66;transform:rotate(-3deg);animation:floaty 4s ease-in-out infinite}.tl-tag{margin-top:14px;font:22px var(--display);color:#fff8ec;-webkit-text-stroke:1px var(--ink);text-shadow:0 3px 0 var(--ink);letter-spacing:.03em}.title-bar{position:absolute;left:50%;bottom:28px;transform:translate(-50%);width:min(900px,94vw);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:stretch;padding:8px;background:#19162acc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:3px solid var(--ink);border-radius:16px;box-shadow:var(--pop)}.tb-difficulty{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:0 6px;min-width:0}.tb-difficulty .tp-label{margin-bottom:4px}.tb-head{display:flex;align-items:center}.tb-info{display:flex;align-items:baseline;gap:8px;font-size:11px;white-space:nowrap}.tb-info b{font:13px var(--display);color:var(--text);letter-spacing:.02em}.tb-side{display:flex;gap:8px}.tb-side .btn{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1;min-width:98px;padding:6px 10px;font-size:14px}.tb-side .btn small{font:900 10px var(--body);opacity:.85;text-shadow:none}.tb-side .tp-sound{min-width:46px;padding:6px}.tp-label{font:10px var(--display);color:var(--dim);letter-spacing:.14em}.defcons{display:flex;gap:5px}.defcon{width:34px;height:34px;border:3px solid var(--ink);border-radius:9px;font:17px var(--display);box-shadow:0 3px 0 var(--ink);color:#fff;padding:0}.defcon.d5{background:#3a7bd5}.defcon.d4{background:#2bb673}.defcon.d3{background:#e0b21a;color:#3a2400}.defcon.d2{background:#ff7a1a}.defcon.d1{background:#e2382b}.defcon.on{outline:3px solid #fff8ec;outline-offset:1px}.defcon:disabled{background:var(--panel-2);filter:none}.defcon .lock{transform:scale(.8)}.tp-mult{color:var(--amber);font-weight:900}.tp-play{font-size:22px;padding:0 16px}.title-foot{position:absolute;left:0;right:0;bottom:8px;text-align:center;color:#fff8ecaa;font-size:11px;text-shadow:0 1px 2px #000}.vault{width:min(620px,92vw)}.vault .rf,.end-rewards .rf{background:var(--amber);color:#3a2400;border:2px solid var(--ink);border-radius:999px;padding:1px 10px;font:16px var(--display);-webkit-text-stroke:0;margin-left:8px}.vault-sub{color:var(--dim);font-size:13px;margin:-6px 0 12px}.vault-row{display:flex;align-items:center;gap:12px;justify-content:space-between;background:var(--panel-2);border:2px solid var(--ink);border-radius:14px;padding:9px 12px;margin-bottom:8px}.vault-row.owned{border-color:var(--green)}.vault-row b{font:17px var(--display);display:block}.vault-row b small{font:900 11px var(--body);color:var(--amber)}.vault-row span{color:var(--dim);font-size:12px}.vault-row .btn{flex:none;min-width:96px}@keyframes kenburns{to{transform:scale(1.08) translate(-1%,1%)}}.end-rewards{display:flex;gap:8px;justify-content:center;margin:-4px 0 12px;flex-wrap:wrap}.end-rewards .best,.end-rewards .unlock{font:14px var(--display);border:2px solid var(--ink);border-radius:999px;padding:2px 10px}.end-rewards .best{background:var(--cyan);color:var(--ink)}.end-rewards .unlock{background:var(--red);color:#fff;animation:pulseScale 1s infinite}.end-row{display:flex;gap:10px}.end-row .btn{flex:1;font-size:18px}.audit{background:#fff8ec;color:var(--ink);width:min(560px,92vw);padding-top:26px}.audit-agent{position:absolute;right:14px;top:-92px;height:170px;filter:drop-shadow(0 5px 0 var(--ink));animation:bob 1.6s ease-in-out infinite}.audit-sub{font-weight:800;font-size:14px;color:#555;margin:-2px 120px 10px 0}.audit-progress{display:flex;gap:6px;margin-bottom:12px}.audit-progress span{flex:1;height:10px;border:2px solid var(--ink);border-radius:6px;background:#ddd5c4}.audit-progress span.ok{background:var(--green)}.audit-progress span.bad{background:var(--red)}.audit-progress span.now{background:var(--amber);animation:blink .6s infinite}.audit-form{background:#fff;border:3px solid var(--ink);border-radius:12px;padding:12px 14px;box-shadow:4px 4px 0 var(--ink);transform:rotate(-1deg);animation:pop .25s cubic-bezier(.2,1.6,.4,1);margin-bottom:14px}.af-title{font:14px var(--display);color:#a33;letter-spacing:.08em}.af-claim{font:800 19px/1.3 var(--body);margin:6px 0 10px}.af-timer{height:8px;background:#eee;border-radius:4px;overflow:hidden}.af-timer span{display:block;height:100%;background:var(--red);transition:width .1s linear}.audit-btns{display:flex;gap:10px}.audit-btns .btn{flex:1;font-size:20px}.audit-btns small{font:900 11px var(--body);opacity:.8;text-shadow:none;margin-left:6px}.rocket-bar{display:flex;align-items:center;gap:12px;padding:0 4px}.rocket-bar>span{font:17px var(--display);white-space:nowrap}.rocket-track{flex:1;height:16px;background:var(--ink);border:2px solid var(--ink);border-radius:8px;overflow:hidden}.rocket-track span{display:block;height:100%;background:linear-gradient(90deg,var(--amber),var(--red))}@media (max-width: 1560px){.ticker{min-width:0;padding-right:10px}.t-val small{display:none}.vibe{min-width:230px}.v-end{display:none}.brand{font-size:28px}}@keyframes shakeX{25%{transform:translate(-2px)}75%{transform:translate(2px)}}@keyframes pulseScale{50%{transform:scale(1.06)}}@keyframes raidPulse{50%{transform:translate(-50%) scale(1.04)}0%,to{transform:translate(-50%) scale(1)}}@keyframes pop{0%{transform:scale(.85);opacity:0}}@keyframes slam{0%{transform:scale(3);opacity:0}}@keyframes slideUp{0%{transform:translate(-50%,40px);opacity:0}}@keyframes toastIn{0%{transform:translateY(-14px) scale(.9);opacity:0}}@keyframes toastOut{to{opacity:0;transform:translateY(-8px)}}@keyframes blink{50%{opacity:.4}}@keyframes bob{50%{transform:translateY(-6px)}}@keyframes hover{50%{transform:translateY(-6px) rotate(-1.5deg)}}@keyframes glitchA{0%{transform:translate(-4px) skew(8deg);filter:hue-rotate(90deg)}50%{transform:translate(3px)}to{transform:none}}@keyframes glitchB{0%{transform:translate(4px) skew(-8deg);filter:hue-rotate(-90deg)}50%{transform:translate(-3px)}to{transform:none}}@keyframes bubbleIn{0%{transform:scale(.6) rotate(-4deg);opacity:0}}@keyframes ticker{to{transform:translate(-50%)}}@keyframes alarm{50%{box-shadow:0 4px 0 var(--ink),0 0 22px var(--red)}}.ico{display:inline-block;object-fit:contain;vertical-align:middle;filter:drop-shadow(0 1px 0 #0008)}.ico.inline{margin:-3px 1px 0}.t-icon .ico{filter:none}.dock-ico{display:grid;place-items:center;height:36px}.pause-bars{display:inline-flex;gap:4px}.pause-bars i{width:5px;height:15px;background:currentColor;border-radius:2px}.defcon .lock{display:inline-block;width:16px;height:13px;border:3px solid #fff8ec;border-radius:3px;position:relative;top:4px}.defcon .lock:before{content:"";position:absolute;left:1px;top:-12px;width:8px;height:9px;border:3px solid #fff8ec;border-bottom:0;border-radius:7px 7px 0 0}.t-day{font:20px var(--display);color:#fff}.dc-traits b,.br-desc b{font:11px var(--display);letter-spacing:.08em;margin-right:4px}.speed button .ico{width:24px;height:24px}@media (max-width: 900px){.title-bar{grid-template-columns:1fr;bottom:26px;gap:8px}.tb-head{justify-content:space-between}.tp-play{font-size:24px;padding:12px}.tb-side .btn{flex:1;min-width:0}.tb-side .tp-sound{flex:0 0 52px}.tl-tag{font-size:15px;padding:0 16px}}.phone-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:auto;display:grid;place-items:center;padding:20px;background:url(/art/title.webp) 30% center / cover no-repeat,#120e0b}.phone-gate:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0b10c8}.pg-card{position:relative;width:min(420px,100%);background:#fff8ec;color:var(--ink);border:4px solid var(--ink);border-radius:22px;box-shadow:0 8px 0 var(--ink);padding:70px 20px 18px;text-align:center;animation:pop .35s cubic-bezier(.2,1.6,.4,1)}.pg-hatch{position:absolute;left:50%;top:-64px;width:120px;transform:translate(-50%);filter:drop-shadow(0 5px 0 var(--ink));animation:hover 3s ease-in-out infinite}.pg-kicker{font:12px var(--display);color:#0a8a96;letter-spacing:.12em}.pg-title{font:30px/1 var(--display);margin:6px 0 10px}.pg-card p{font:800 15px/1.4 var(--body);margin:0 0 10px}.pg-dim{color:#666}.pg-btn{width:100%;font-size:18px;margin-top:4px}.pg-foot{font:12px var(--display);color:#a33;letter-spacing:.06em;margin-top:12px}.pg-anyway{margin-top:6px;background:none;border:none;color:#888;font:700 12px var(--body);text-decoration:underline}.nowrap{white-space:nowrap}.tp-play{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05}.tp-play small{font:900 11px var(--body);opacity:.85;text-shadow:none}.btn-deed{background:linear-gradient(#4b4566,#312d48)}.btn-deed.t1{background:linear-gradient(#8a6a48,#5e452c)}.btn-deed.t2{background:linear-gradient(#5a7d8f,#36515e)}.btn-deed.t3{background:linear-gradient(#4f8a4f,#2f5a30)}.btn-deed.t4{background:linear-gradient(#ffd46b,#c9901c);color:#3a2400;text-shadow:none}.deed{width:min(640px,94vw);max-height:92vh;overflow-y:auto}.deed .modal-title{display:flex;align-items:center;gap:10px}.deed-tier{font:15px var(--display);-webkit-text-stroke:0;color:var(--ink);background:var(--dim);border:2px solid var(--ink);border-radius:999px;padding:1px 12px}.deed-tier.t1{background:#d9a877}.deed-tier.t2{background:#8fd0ea}.deed-tier.t3{background:var(--green)}.deed-tier.t4{background:var(--amber);box-shadow:0 0 12px var(--amber)}.deed-connect{display:flex;gap:10px;margin-bottom:12px}.deed-connect .btn{flex:1;font-size:18px;padding:10px}.deed-warn,.deed-who{display:flex;align-items:center;gap:10px;background:var(--panel-2);border:2px solid var(--ink);border-radius:14px;padding:8px 12px;margin-bottom:10px}.deed-warn{border-color:var(--amber);color:var(--amber);justify-content:space-between}.deed-who span{color:var(--dim);font-family:ui-monospace,monospace}.deed-who b{font:20px var(--display);flex:1}.deed-ladder{display:grid;gap:4px;margin-bottom:12px}.deed-rung{display:grid;grid-template-columns:92px 72px 1fr;align-items:center;gap:10px;padding:6px 10px;border:2px solid #ffffff14;border-radius:10px;color:var(--dim);font-size:12px}.deed-rung b{font:15px var(--display);color:var(--text);letter-spacing:.04em}.deed-rung .deed-need{font-family:var(--display);color:var(--amber)}.deed-rung.past{opacity:.55}.deed-rung.on{background:var(--panel-2);border-color:var(--green);color:var(--text);box-shadow:inset 4px 0 0 var(--green)}.deed-rung.t4 b{color:var(--amber)}button.deed-rung{width:100%;text-align:left;background:none;font:inherit;cursor:default}button.deed-rung:disabled{opacity:1}button.deed-rung.past:disabled{opacity:.55}button.deed-rung.pick{cursor:pointer}button.deed-rung.pick:not(.on):hover{border-color:#8cff4f88;background:#ffffff08}.deed-yours{color:var(--amber);font-style:normal}.deed-section{background:var(--panel-2);border:2px solid var(--ink);border-radius:14px;padding:10px 12px;margin-bottom:10px}.deed-h{font:16px var(--display);letter-spacing:.04em;margin-bottom:8px}.deed-h small{font:800 11px var(--body);color:var(--dim);letter-spacing:0;margin-left:6px}.deed-tickets{display:flex;gap:8px;align-items:stretch}.deed-free{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:96px;background:var(--panel);border:2px solid var(--ink);border-radius:10px;padding:6px 8px}.deed-free b{font:20px var(--display)}.deed-free.ready b{color:var(--green)}.deed-free span{font-size:11px;color:var(--dim)}.deed-buy{display:flex;flex-direction:column;gap:6px;flex:1}.deed-note{color:var(--dim);font-size:12px;margin-top:8px}.deed-note b{color:var(--amber)}.deed-bags{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.deed-bag{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px;font-size:11px;line-height:1.15;text-align:center;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--rar) 25%,transparent),var(--panel) 70%);border:3px solid var(--ink);border-radius:12px}.deed-bag img{width:54px;height:54px;object-fit:contain}.deed-bag.on{border-color:var(--green);box-shadow:0 0 0 2px var(--green)}.deed-bag.on:after{content:"EQUIPPED";position:absolute;top:-9px;font:10px var(--display);background:var(--green);color:var(--ink);border:2px solid var(--ink);border-radius:6px;padding:0 5px}.deed-bag i{position:absolute;top:4px;right:6px;font:normal 12px var(--display);color:var(--amber)}.deed-status{display:flex;justify-content:space-between;gap:10px;background:#0b0b1066;border:2px dashed var(--cyan);border-radius:10px;padding:7px 10px;margin-bottom:10px;color:var(--cyan)}.deed-status.err{border-color:var(--red);color:#ffb3ad}.deed-status a{color:var(--cyan)}.end-tent{display:flex;align-items:center;gap:12px;text-align:left;background:var(--panel-2);border:2px solid var(--amber);border-radius:14px;padding:10px 12px;margin-bottom:12px;font-size:13px}.end-tent b{color:var(--amber)}.end-tent .btn{flex:none}.forge-panel{text-align:left;background:var(--panel-2);border:2px solid var(--ink);border-radius:14px;padding:10px 12px;margin-bottom:12px}.forge-list{display:grid;gap:6px;max-height:190px;overflow-y:auto}.forge-row{display:flex;align-items:center;gap:10px;background:var(--panel);border:2px solid var(--ink);border-radius:10px;padding:4px 8px;box-shadow:inset 4px 0 0 var(--rar)}.forge-row img{width:38px;height:38px;object-fit:contain}.forge-row div{flex:1;display:flex;flex-direction:column}.forge-row b{font:14px var(--display)}.forge-row span{font-size:11px;color:var(--dim)}.forge-row span:first-letter{text-transform:uppercase}.forge-row .btn{font-size:13px;padding:5px 10px}body.silo .brand{color:var(--amber);text-shadow:0 4px 0 var(--ink),0 0 18px #ffbe3d99}.modal.end{max-height:94vh;overflow-y:auto}.forge-row em{color:var(--red);font-style:normal;text-transform:none}.verdict{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 10px;border-radius:12px;padding:7px 10px;margin:-4px 0 12px;font-size:13px}.verdict.pending{color:var(--cyan);border:2px dashed var(--cyan)}.verdict.err{color:#ffb3ad;border:2px dashed var(--red)}.verdict.ok{background:var(--panel-2);border:2px solid var(--green)}.verdict-badge{font:13px var(--display);letter-spacing:.08em;background:var(--green);color:var(--ink);border:2px solid var(--ink);border-radius:8px;padding:0 8px}.verdict-shatter{flex-basis:100%;color:var(--red);font-family:var(--display);letter-spacing:.02em}.seed-wait{position:absolute;top:74px;left:50%;transform:translate(-50%);z-index:6;font:14px var(--display);letter-spacing:.04em;color:var(--cyan);background:var(--panel);border:3px solid var(--ink);border-radius:999px;padding:5px 14px;box-shadow:var(--pop);animation:pulseScale 1s infinite}.daily{width:min(620px,94vw);max-height:92vh;overflow-y:auto}.daily-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.daily-head .vault-sub{margin:-6px 0 10px;max-width:300px}.daily-pot{flex:none;display:flex;flex-direction:column;align-items:flex-end;background:var(--panel-2);border:3px solid var(--ink);border-radius:14px;padding:6px 14px 7px;box-shadow:inset 0 0 0 2px #ffbe3d55}.daily-pot span{font:11px var(--display);letter-spacing:.1em;color:var(--dim)}.daily-pot b{font:34px/1 var(--display);color:var(--amber);-webkit-text-stroke:1px var(--ink);text-shadow:0 3px 0 var(--ink)}.daily-pot small{font-size:11px;color:var(--dim)}.daily-prizes{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}.daily-prize{display:flex;justify-content:space-between;align-items:baseline;background:var(--panel-2);border:2px solid var(--ink);border-radius:10px;padding:5px 10px}.daily-prize span{font:13px var(--display);letter-spacing:.06em;color:var(--rank)}.daily-prize b{font:17px var(--display)}.daily-note{grid-column:1 / -1;color:var(--dim);font-size:11px}.rank-1{--rank: #ffbe3d}.rank-2{--rank: #d8dcef}.rank-3{--rank: #e0915a}.board{display:grid;gap:4px;margin-bottom:10px}.board-row{display:grid;grid-template-columns:30px 104px 1fr auto;align-items:center;gap:10px;background:var(--panel-2);border:2px solid var(--ink);border-radius:10px;padding:5px 10px}.board-row .board-rank{font:16px var(--display);color:var(--rank, var(--dim));text-align:center}.board-row.rank-1,.board-row.rank-2,.board-row.rank-3{box-shadow:inset 4px 0 0 var(--rank)}.board-row.me{border-color:var(--green);background:color-mix(in srgb,var(--green) 14%,var(--panel-2))}.board-who{font-family:ui-monospace,monospace;font-size:12px}.board-row.me .board-who{font:14px var(--display);color:var(--green);letter-spacing:.06em}.board-end{color:var(--dim);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-score{font:17px var(--display)}.board-gap{text-align:center;color:var(--dim);line-height:.6}.board-empty{color:var(--dim);text-align:center;padding:14px;border:2px dashed #ffffff22;border-radius:12px;margin-bottom:10px}.board-empty.err{color:#ffb3ad;border-color:var(--red)}.daily-yesterday{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--dim);background:#0b0b1055;border-radius:10px;padding:7px 10px;margin-bottom:10px}.daily-yesterday a{color:var(--cyan)}.daily-end{text-align:left;margin-bottom:12px}.daily-entry{font-size:12px;color:var(--dim);margin:-4px 0 10px;max-width:300px}.daily-entry b{color:var(--amber)}.raid-hint{font:11px var(--display);letter-spacing:.06em;color:var(--amber);margin-top:3px;animation:pulseScale 1.2s infinite}.smash-pop{position:fixed;z-index:30;pointer-events:none;transform:translate(-50%,-50%);font:22px var(--display);color:#fff;-webkit-text-stroke:2px var(--ink);text-shadow:0 3px 0 var(--ink)}.smash-pop.crit{color:var(--amber);font-size:30px}.revive-bg{background:#1a0606d0}.revive{width:min(440px,92vw);text-align:center}.revive-sub{color:var(--dim);font-size:13px;margin:2px 0 10px}.revive-sub b{color:var(--text)}.revive-face{width:110px;height:130px;margin:0 auto 6px;background:center bottom / contain no-repeat;filter:grayscale(1) brightness(.8)}.revive-key{width:112px;height:112px;margin:2px auto 8px;display:grid;place-items:center;font:72px var(--display);color:var(--ink);background:linear-gradient(#fffaf0,#d9d2c3);border:4px solid var(--ink);border-radius:18px;box-shadow:0 9px 0 var(--ink),inset 0 -6px #0002;transition:transform .04s,box-shadow .04s}.revive-key.down{transform:translateY(6px);box-shadow:0 3px 0 var(--ink),inset 0 -6px #0002}.revive-count{font:18px var(--display);color:var(--dim)}.revive-count b{font-size:34px;color:var(--text)}.revive-bar{height:16px;border:3px solid var(--ink);border-radius:999px;background:var(--panel-2);overflow:hidden;margin:6px 0}.revive-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--rad));transition:width .08s}.revive-tip{color:var(--dim);font-size:11px;margin-top:6px}.card-result.win{color:var(--green)}.dc-chips{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 2px}.trait-chip{display:flex;flex-direction:column;font:12px var(--display);letter-spacing:.03em;border:2px solid var(--ink);border-radius:8px;padding:2px 8px}.trait-chip small{font:700 10px var(--body);letter-spacing:0;opacity:.85}.trait-chip.good{background:color-mix(in srgb,var(--green) 25%,var(--panel-2));color:#c8ffd6}.trait-chip.bad{background:color-mix(in srgb,var(--red) 22%,var(--panel-2));color:#ffc9c4}.mod-bar,.radio-bar{display:flex;align-items:center;gap:10px;background:var(--panel-2);border:2px solid var(--ink);border-radius:12px;padding:7px 10px;margin-top:8px}.mod-bar.installed{border-color:var(--amber)}.mod-tag,.radio-title{font:12px var(--display);letter-spacing:.1em;background:var(--amber);color:var(--ink);border:2px solid var(--ink);border-radius:6px;padding:1px 6px}.radio-title{background:var(--red);color:#fff;animation:pulseScale 1.6s infinite}.mod-body{flex:1;display:flex;flex-direction:column}.mod-body b{font:15px var(--display)}.mod-body small{color:var(--dim);font-size:11px}.mod-on{font:13px var(--display);color:var(--amber);letter-spacing:.05em}.radio-st{flex:1;display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--panel);border:2px solid var(--ink);border-radius:10px;padding:5px 8px}.radio-st b{font:14px var(--display)}.radio-st small{color:var(--dim);font-size:10px;line-height:1.2}.radio-st.on{border-color:var(--green);box-shadow:inset 0 0 0 2px #3ee06f55}.raid-fire{margin-top:6px;font-size:14px;padding:4px 12px}.clock-tags{display:flex;flex-direction:column;gap:2px;margin-right:4px}.mutator-tag{display:block;font:10px var(--display);letter-spacing:.06em;color:var(--amber);background:var(--ink);border-radius:6px;padding:1px 6px;white-space:nowrap}.title-mutator{position:absolute;top:16px;right:16px;z-index:3;display:flex;flex-direction:column;align-items:stretch;width:250px;text-align:left;background:#0b0b10c8;border:3px solid var(--ink);border-radius:14px;padding:9px 14px 10px;box-shadow:var(--pop)}.title-mutator span{font:10px var(--display);letter-spacing:.14em;color:var(--dim);text-transform:uppercase}.title-mutator b{font:20px/1.1 var(--display);color:var(--amber);margin:1px 0 3px}.title-mutator small{font-size:12px;line-height:1.35;color:#cfc8e6;text-wrap:pretty}.raid-sell{margin-top:6px;font-size:12px;padding:4px 10px}.btn.armed{background:var(--red);color:#fff;animation:pulseScale .6s infinite}.rug-bar{border-color:var(--red)}.rug-bar .mod-tag{background:var(--red);color:#fff}body.drip-goldhatch .hatch-img{filter:sepia(1) saturate(3.2) hue-rotate(-12deg) brightness(1.08) drop-shadow(0 0 10px #ffbe3d88)}.drip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.drip-card{display:flex;flex-direction:column;gap:4px;background:var(--panel);border:2px solid var(--ink);border-radius:12px;padding:7px}.drip-card.on{border-color:var(--green)}.drip-card b{font:14px var(--display)}.drip-card small{color:var(--dim);font-size:10px;line-height:1.25;flex:1}.drip-card .btn{font-size:12px;padding:4px 8px}.drip-thumb{height:96px;border:2px solid var(--ink);border-radius:8px;background:center / cover no-repeat var(--panel-2);display:grid;place-items:center;overflow:hidden}.drip-thumb.hatchy img{height:50px;filter:sepia(1) saturate(3.2) hue-rotate(-12deg) brightness(1.08)}.swatch-gold{background:repeating-linear-gradient(45deg,#ffd36b 0,#ffd36b 12px,#e2a92b 12px,#e2a92b 24px)}.swatch-rgb{background:linear-gradient(90deg,#ff3b3b,#ffbe3d,#3ee06f,#3ff0ff,#a463ff,#ff6fbf);animation:rgbspin 3s linear infinite;background-size:200% 100%}@keyframes rgbspin{to{background-position:200% 0}}.title-weather{margin-top:8px;padding-top:8px;border-top:2px dashed #ffffff22;display:flex;flex-direction:column;align-items:stretch}.wx-bull b,.mutator-tag.wx-bull{color:var(--green)}.wx-winter b,.mutator-tag.wx-winter{color:var(--cyan)}.wx-calm b{color:var(--dim)}.t-candles{flex:none;margin-left:2px;opacity:.95}.t-candles .up line,.t-candles .up rect{stroke:var(--green);fill:var(--green)}.t-candles .down line,.t-candles .down rect{stroke:var(--red);fill:var(--red)}.t-candles line{stroke-width:1}.toast-order{font-family:ui-monospace,Cascadia Mono,monospace;font-size:12px;letter-spacing:.02em;border-left:5px solid var(--green)}.order-sub{color:var(--dim);font-size:12px;margin:-6px 0 10px;font-family:ui-monospace,monospace}.crt{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;pointer-events:none;background:repeating-linear-gradient(to bottom,#0000 0,#0000 2px,#0002 2px,#0002 3px),radial-gradient(ellipse at center,#0000 60%,#0000005a);animation:crtflicker 6s infinite steps(1);mix-blend-mode:multiply}@keyframes crtflicker{0%,to{opacity:1}47%{opacity:.93}48%{opacity:1}81%{opacity:.96}}body.no-crt .crt{display:none}body:not(.no-crt) .crt-panic~#world canvas,body:not(.no-crt) #world:has(~#ui .crt-panic) canvas{filter:drop-shadow(2px 0 0 #ff3b3b66) drop-shadow(-2px 0 0 #3ff0ff66)}body:not(.no-crt) .crt-panic .crt{animation-duration:.4s}.link-btn{background:none;border:none;padding:0;color:var(--amber);font:inherit;text-decoration:underline dotted;cursor:pointer}.dweller-tag.on-surface{background:var(--amber);color:var(--ink);font-size:11px;white-space:nowrap}.end-share{margin:-6px auto 12px;display:block;font-size:16px}.pnl{width:min(760px,94vw)}.pnl-img{width:100%;border:3px solid var(--ink);border-radius:12px;display:block;margin-bottom:10px}.pnl-btns{display:flex;gap:8px}.pnl-btns .btn{flex:1;text-align:center;text-decoration:none;font-size:16px}.btn.disabled{pointer-events:none;filter:grayscale(.8) brightness(.7)}.save-codes{background:var(--panel-2);border:2px solid var(--ink);border-radius:14px;padding:10px 12px;margin:4px 0 10px}.save-row{display:flex;gap:8px}.save-row .btn{flex:none;font-size:13px;padding:6px 10px}.save-input{flex:1;min-width:0;background:var(--panel);border:2px solid var(--ink);border-radius:10px;color:var(--text);font:12px ui-monospace,monospace;padding:0 10px;user-select:text;-webkit-user-select:text}.save-msg{margin-top:6px;font-size:12px;color:var(--green)}.save-msg.err{color:#ffb3ad}.sync-row{align-items:center;flex-wrap:wrap}.sync-note{font-size:12px;line-height:1.4;color:var(--dim);flex:1;min-width:180px}.sync-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);vertical-align:1px;box-shadow:0 0 6px var(--green)}.sync-dot.syncing{background:var(--amber);box-shadow:0 0 6px var(--amber)}.sync-dot.error{background:#ff4b3e;box-shadow:0 0 6px #ff4b3e}.wasteland-tease{position:absolute;top:16px;left:16px;z-index:3;display:flex;align-items:center;gap:10px;text-align:left;color:var(--text);background:#0b0b10c8;border:3px solid var(--ink);border-radius:14px;padding:8px 12px;box-shadow:var(--pop)}.wasteland-tease b{display:block;font:18px var(--display);letter-spacing:.04em;color:var(--red)}.wasteland-tease small{font-size:11px;color:var(--dim)}.doom-clock{display:block;flex:none;filter:drop-shadow(0 0 8px #ff4b3e55)}.wasteland-tease .doom-clock{animation:pulseScale 2s infinite}.doom-sec{transform-box:view-box;transform-origin:20px 20px;animation:doomTick 10s steps(10,end) infinite}@keyframes doomTick{0%{transform:rotate(-66deg)}to{transform:rotate(-6deg)}}.wasteland{width:min(520px,92vw);text-align:center}.wasteland>.doom-clock{margin:0 auto 4px}.wl-clock-cap{font:13px var(--display);letter-spacing:.12em;color:var(--red);margin-bottom:4px}.wl-list{text-align:left;padding-left:18px;margin:4px 0 10px;color:var(--dim);font-size:13px}.wl-list li{margin-bottom:6px}.wl-list b{color:var(--text)}@media (max-width: 1500px){.t-candles{display:none}}.build-cap{display:block;font-style:normal;font-size:11px;color:var(--amber);margin-top:2px}.brand-confirm span{flex-basis:100%}.htp-btn{margin-top:14px;font-size:16px;padding:6px 18px;pointer-events:auto}.htp-btn.fresh{animation:pulseScale 1.4s infinite;background:var(--amber);color:var(--ink);text-shadow:none}.guide{width:min(980px,95vw);height:min(680px,90vh);display:flex;flex-direction:column;padding:16px 18px}.guide-head{display:flex;align-items:center;gap:12px}.guide-head .modal-title{margin:0}.guide-full{margin-left:auto;color:var(--amber);font-size:12px}.guide-body{flex:1;min-height:0;display:flex;gap:14px;margin-top:10px}.guide-tabs{flex:none;width:168px;display:flex;flex-direction:column;gap:6px}.guide-tabs button{text-align:left;font:15px var(--display);letter-spacing:.04em;color:var(--dim);background:var(--panel-2);border:2px solid var(--ink);border-radius:10px;padding:8px 10px}.guide-tabs button.on{color:var(--ink);background:var(--rad);box-shadow:0 3px 0 var(--ink)}.guide-page{flex:1;min-height:0;overflow-y:auto;padding-right:6px;animation:pop .2s ease-out}.guide-page h2{font:30px var(--display);color:var(--rad);-webkit-text-stroke:1px var(--ink);margin:0 0 4px}.guide-intro{color:var(--dim);margin:0 0 12px;font-size:14px}.guide-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.guide-card{position:relative;background:var(--panel-2);border:3px solid var(--ink);border-radius:14px;padding:10px 12px;box-shadow:0 3px 0 var(--ink)}.guide-card b{display:block;font:18px var(--display);margin-bottom:4px}.guide-card p{margin:0;font-size:13px;line-height:1.4;color:#e9e3f7}.guide-art{display:block;height:96px;margin:-4px -6px 8px;border-radius:8px;border:2px solid var(--ink);background:center / cover no-repeat #0b0b10}.guide-faq{display:grid;gap:8px}.guide-q{background:var(--panel-2);border:2px solid var(--ink);border-radius:12px;padding:10px 12px}.guide-q b{font:17px var(--display)}.guide-q p{margin:4px 0 0;font-size:13px;color:#e9e3f7;line-height:1.4}.guide-art.fit{background-size:contain;background-color:#1a1626}.tutorial{position:absolute;left:132px;bottom:78px;z-index:9;width:min(400px,60vw);background:#fff8ec;color:var(--ink);border:4px solid var(--ink);border-radius:18px 18px 18px 4px;padding:10px 14px 12px;box-shadow:0 6px 0 var(--ink);animation:bubbleIn .35s cubic-bezier(.2,1.6,.4,1);transform-origin:bottom left}.tutorial.at-top{border-radius:18px;transform-origin:top left}.tutorial.slid{border-radius:18px}.tut-kicker{font:11px var(--display);letter-spacing:.1em;color:#7a6a9a}.tut-title{display:block;font:22px var(--display);margin:2px 0 4px}.tutorial p{margin:0 0 8px;font-size:14px;line-height:1.4}.tut-row{display:flex;align-items:center;gap:10px;justify-content:flex-end}.tut-row .btn{font-size:16px;padding:5px 16px}.tut-skip{margin-right:auto;background:none;border:none;color:#7a6a9a;font:12px var(--body);text-decoration:underline dotted}.tut-wait{font:12px var(--display);letter-spacing:.06em;color:#b8541c}.tut-target{outline:4px solid var(--rad)!important;outline-offset:3px;animation:tutPulse .9s ease-in-out infinite!important;position:relative;z-index:8}@keyframes tutPulse{50%{outline-color:var(--amber);outline-offset:7px}}.guide-tut{font-size:13px;padding:4px 12px;margin-left:8px}.revive .card-title{margin:8px 0 6px}
