@import url('/assets/cf-resources/a0b99353e90abc2736cdef9d26c481922382489ccfa7e6bdb4efbee007437293.css');
:root{--bg:#101622;--panel:#19212d;--line:#303c4a;--text:#f2efe7;--muted:#9aa8b7;--gold:#f6c86c;--cyan:#7bdcc9}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 40% 15%,#26354544,transparent 65%),var(--bg);color:var(--text);font-family:'Space Grotesk','Noto Sans SC',sans-serif;font-size:14px}button{font:inherit;cursor:pointer;border:0;color:inherit;transition:background .15s,transform .15s}button:active{transform:translateY(1px)}button:focus-visible,canvas:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}button:disabled{cursor:default;opacity:.5}.app{max-width:1260px;margin:auto;padding:0 38px}header{height:97px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:28px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--text);font-size:23px;font-weight:700;letter-spacing:1px}.logo{display:grid;place-items:center;width:44px;height:48px;color:var(--gold);font-size:39px}.brand small{display:block;font-size:9px;font-weight:500;color:var(--muted);letter-spacing:2px;margin-top:3px}.top-actions{display:flex;gap:9px;align-items:center}.save{color:#7aaf9b;font-size:11px;margin-right:10px}.icon{background:transparent;border:1px solid var(--line);border-radius:7px;padding:8px 11px;font-size:12px}.icon:hover{background:#293644}main{display:grid;grid-template-columns:minmax(0,1fr) 302px;gap:25px;align-items:start}.machine{background:#192330;border:1px solid #354451;border-radius:15px;padding:20px 22px 19px;box-shadow:0 15px 65px #0004}.machine-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.eyebrow{font-size:9px;letter-spacing:2.7px;color:var(--cyan);font-weight:600}h1{font-size:20px;letter-spacing:1px;margin:5px 0 0;font-weight:600}.wave-pill{border:1px solid #766142;background:#3d3428;color:#f5d99e;padding:7px 11px;border-radius:30px;font-size:11px;white-space:nowrap}.boss{display:flex;gap:12px;margin-bottom:15px;background:#121b26;border:1px solid #303c49;padding:12px;border-radius:9px}.boss-icon{color:#eea688;background:#4c3431;border-radius:7px;width:41px;display:grid;place-items:center;font-size:29px}.boss-info{flex:1}.boss-info>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:12px}.boss-info span{color:#c3a49a;font-family:'Space Grotesk';font-size:11px}.bar{height:5px;background:#303741;border-radius:9px;overflow:hidden;margin:8px 0}.bar i{display:block;background:#e99c83;height:100%;width:100%;transition:width .25s}.boss small{font-size:9px;color:var(--muted)}.board-wrap{position:relative;background:#101a25;border:1px solid #3c4b58;border-radius:11px;overflow:hidden}canvas{display:block;width:100%;height:auto;touch-action:none}.board-note{position:absolute;top:9px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:1px;color:#80939c;pointer-events:none}.board-note span{font-size:8px;border:1px solid #445565;border-radius:3px;padding:1px 3px;margin-left:6px}#toast{position:absolute;top:46%;left:5%;width:90%;text-align:center;font-size:13px;color:#ffe8af;text-shadow:0 2px 7px #000;pointer-events:none;opacity:0;transition:opacity .2s}.controls{display:flex;gap:11px;margin-top:15px}.primary,.secondary{padding:14px 16px;border-radius:8px;font-weight:600;display:flex;justify-content:center;gap:14px;align-items:center}.primary{color:#352b18;background:var(--gold);flex:1;box-shadow:0 3px 0 #ab8544}.primary:hover{background:#ffda8c}.primary span{font-weight:400;opacity:.7;font-size:11px}.secondary{background:#293e43;border:1px solid #477576;color:var(--cyan);font-size:12px}.secondary span{font-size:10px;opacity:.7}.panel{background:linear-gradient(125deg,#1c2632,#18202b);border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:17px}.section-label{font-size:12px;letter-spacing:1px;font-weight:600;display:flex;justify-content:space-between}.section-label>span{color:#8da0b1;font-size:10px}.marble-count{display:flex;align-items:center;gap:12px;margin:20px 0 13px}.marble-orb{width:31px;height:31px;background:radial-gradient(circle at 32% 25%,#fff,#8bead9 20%,#3ca191 60%,#174b51);box-shadow:0 0 20px #7ce5ce22;border-radius:50%}.marble-count strong{font-size:42px;font-weight:500;line-height:1}.marble-count small{color:var(--muted);font-size:12px;align-self:end;margin-bottom:5px}.regen{color:var(--cyan);font-size:10px}.regen>i{height:3px;display:block;background:#354249;border-radius:5px;margin-top:10px}.regen b{display:block;height:100%;background:var(--cyan)}.resource>p{font-size:10px;color:var(--muted);margin:12px 0 21px}.stats{display:flex;padding-top:17px;border-top:1px solid var(--line);justify-content:space-between}.stats>div{display:flex;flex-direction:column;gap:5px}.stats strong{font-size:18px;font-weight:500}.stats span{color:var(--muted);font-size:9px}.xp-label{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:20px}.xpbar{margin-top:9px;height:4px}.xpbar i{background:var(--gold);width:0}.empty-build{text-align:center;padding:18px 0 9px}.empty-build>span{color:#8a7d63;font-size:34px}.empty-build p{font-size:12px;color:#c6cec9;margin:10px 0}.empty-build small{font-size:10px;color:#8494a3;line-height:1.9}.skill-row{display:flex;align-items:center;gap:10px;padding-top:12px;font-size:11px}.skill-row>span{display:grid;place-items:center;color:var(--gold);background:#36372f;width:28px;height:28px;border-radius:7px;font-size:20px}.skill-row b{flex:1;font-weight:500}.skill-row small{color:#9eafa9}.choice-button{width:100%;background:var(--gold);color:#342a17;border-radius:6px;padding:10px;margin-top:15px}.echo>p{color:#bac3cb;font-size:11px;line-height:1.85;margin:17px 0}.rule{display:flex;gap:10px;margin-top:16px}.rule>span{color:var(--gold);font-size:22px}.rule b{display:block;font-size:11px;font-weight:500;margin:2px 0 5px}.rule small{font-size:10px;color:var(--muted);line-height:1.8;display:block}.footer{display:flex;justify-content:space-between;font-size:9px;color:#6d8191;margin:20px 1px}.footer button{background:none;font-size:9px;color:#8594a2;padding:0}dialog{color:var(--text);background:#1b2633;border:1px solid #5d716e;border-radius:18px;padding:32px;max-width:880px;width:calc(100% - 32px);box-shadow:0 20px 100px #000a}dialog::backdrop{background:#060d18cc;backdrop-filter:blur(7px)}.modal-heading{text-align:center}.modal-heading h2{font-size:27px;margin:9px 0}.modal-heading p,.modal-foot{color:var(--muted);font-size:12px}.modal-foot{text-align:center;margin-bottom:0;font-size:10px}#cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0}.upgrade-card{text-align:left;background:#24313e;border:1px solid #526062;padding:22px 20px;border-radius:10px;min-height:230px;display:flex;flex-direction:column}.upgrade-card:hover{background:#32433f;border-color:var(--gold);transform:translateY(-3px)}.upgrade-card .glyph{font-size:36px;color:var(--gold);margin-bottom:15px}.upgrade-card small{color:var(--cyan);font-size:10px}.upgrade-card h3{font-size:18px;margin:8px 0}.upgrade-card p{font-size:12px;line-height:1.9;color:#b7c3cc;margin:0}.upgrade-card footer{margin-top:auto;padding-top:20px;font-size:10px;color:var(--gold)}#helpModal{max-width:570px}#helpModal h2{font-size:24px}#helpModal li{padding-left:6px;margin:15px 0;color:var(--gold)}#helpModal p{font-size:12px;line-height:1.8;color:#becad1}#helpModal .local-note{font-size:10px;color:#8fa2af}#helpModal .primary{width:100%;margin-top:20px}#paused{position:absolute;inset:0;background:#0a1428aa;backdrop-filter:blur(4px);display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:25px}#paused[hidden]{display:none}#paused small{font-size:12px;margin-top:12px;color:var(--muted)}@media(min-width:1450px){.app{max-width:1190px}main{grid-template-columns:minmax(0,1fr) 302px}}@media(max-width:850px){.app{padding:0 18px}main{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.machine{padding:14px}.panel{padding:16px}.save{display:none}.controls{gap:7px}.primary,.secondary{padding:12px 7px;gap:6px;font-size:11px}}@media(max-width:680px){.app{padding:0 12px}header{height:75px;margin-bottom:14px}.brand{font-size:18px;gap:5px}.brand small{font-size:7px;letter-spacing:1.3px}.logo{font-size:31px;width:32px}.icon{padding:7px;font-size:10px}.top-actions{gap:5px}main{display:flex;flex-direction:column;gap:15px}.machine{width:100%;padding:12px;border-radius:12px}.machine-top{margin-bottom:11px}h1{font-size:17px}.eyebrow{font-size:8px}.boss{padding:9px;margin-bottom:10px}.board-note{font-size:8px}.controls{position:sticky;bottom:8px;z-index:2}.primary,.secondary{font-size:12px;padding:13px 8px}.primary span{font-size:10px}aside{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel{margin:0;padding:14px}.echo,.footer{grid-column:1/-1}.marble-count{gap:8px}.marble-count strong{font-size:34px}.stats strong{font-size:15px}.resource>p{font-size:9px}.section-label{font-size:11px}.empty-build{padding:7px 0}.empty-build small{font-size:9px}.echo{display:none}.footer{margin:2px 0 20px}.skill-row{gap:6px;font-size:10px}.skill-row>span{width:23px;height:23px}.modal-heading h2{font-size:22px}dialog{padding:22px 17px}#cards{grid-template-columns:1fr;gap:10px;margin:18px 0}.upgrade-card{min-height:0;display:grid;grid-template-columns:40px 1fr;column-gap:12px;padding:14px}.upgrade-card .glyph{grid-row:1/5;margin:0;font-size:30px}.upgrade-card small,.upgrade-card h3,.upgrade-card p,.upgrade-card footer{grid-column:2}.upgrade-card h3{font-size:16px;margin:5px 0}.upgrade-card footer{padding-top:8px}.upgrade-card p{font-size:11px;line-height:1.6}#helpModal h2{font-size:20px}}
/* Keep the complete cabinet visible on common laptop viewports. */
@media(min-width:851px){.app{width:min(1160px,calc((100dvh - 410px)*.9 + 430px));min-width:740px;padding:0 28px}header{height:76px;margin-bottom:16px}main{grid-template-columns:minmax(0,1fr) 280px;gap:20px}.machine{padding:15px 16px}.machine-top{margin-bottom:12px}h1{font-size:18px}.boss{padding:9px;margin-bottom:11px}.controls{margin-top:11px}.primary,.secondary{padding:12px 8px;gap:7px;font-size:11px}.primary span{font-size:10px}.panel{padding:17px;margin-bottom:13px}.save{font-size:9px;margin-right:0}.brand{font-size:20px}.top-actions{gap:6px}.icon{font-size:10px;padding:7px}.resource>p{margin-bottom:16px}}
/* Resonance edition: original illustrated encounters and readable arcade feedback. */
:root{--stage:#61e8ff;--stage-alt:#8c6aff;--bg:#080e20;--gold:#ffd178;--cyan:#82eaff;--line:#343958;--panel:#131c32}body{background:radial-gradient(ellipse at 15% 10%,#164a7138,transparent 45%),radial-gradient(ellipse at 85% 50%,#7236b02e,transparent 50%),#080e20}.machine{background:linear-gradient(140deg,#202a45,#0d142a 65%);border-color:#4e527c;box-shadow:0 0 0 4px #ffffff03,0 20px 80px #0006,0 0 35px #785aea14}.machine-top h1{letter-spacing:1px}.machine-top .eyebrow{color:var(--stage)}.boss{position:relative;min-height:154px;gap:5px;background:radial-gradient(ellipse at 15% 60%,#48417566,transparent 65%),linear-gradient(120deg,#101a36,#0d1127);border:1px solid #655981;border-radius:11px;overflow:hidden;padding:9px 10px 10px 0}.boss:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px);opacity:.02}.boss-portrait{width:140px;flex-shrink:0;align-self:center;transition:filter .1s}.boss-portrait svg{display:block;width:100%;height:130px}.boss-body{transform-origin:110px 100px;animation:breathe 3.2s ease-in-out infinite}.boss-orbit{transform-origin:110px 100px;animation:orbit 19s linear infinite}.boss-info{min-width:0;position:relative;padding:8px 0 0}.boss-info>strong{font-size:16px;display:block;margin:6px 0 9px;color:#fbf2ff}.boss-kicker{font-size:8px!important;letter-spacing:1px;color:var(--stage);display:flex;justify-content:space-between;gap:7px}.boss-kicker span{font-size:8px;color:var(--stage)}.hp-numbers{display:flex;justify-content:space-between;gap:8px;font-size:9px}.hp-numbers span{font-size:8px;color:#ac9bbc}.hp-numbers b{color:#fff0db;font-weight:600}.boss-bar{height:10px;background:#3e263e;margin:5px 0 7px;border:1px solid #6b425c;border-radius:3px}.boss-bar i{background:linear-gradient(90deg,#e86783,#ffab80);box-shadow:0 0 12px #ff8e90}.boss-info small{font-size:8px;line-height:1.5;display:block;color:#c5b8cb}.break-row{display:flex;justify-content:space-between;font-size:8px;color:#899ac3;margin-top:9px}.break-row b{color:var(--stage)}.breakbar{height:3px;margin:4px 0}.breakbar i{background:var(--stage);width:0;box-shadow:0 0 9px var(--stage)}.boss.enraged{border-color:#fa718d}.boss.enraged .boss-body{animation:breathe 1.2s ease-in-out infinite}.boss.exposed{border-color:#90ffdf;box-shadow:inset 0 0 20px #5ffff51c}.boss.exposed .boss-bar i{background:linear-gradient(90deg,#77d9c7,#c0ffe5)}#bossDamage{position:absolute;right:15px;top:26px;color:#fff4cf;font-size:24px;font-weight:800;text-shadow:0 0 10px #ff648a,2px 2px 0 #622e52;pointer-events:none;opacity:0;transition:opacity .15s}.panel{background:linear-gradient(120deg,#192440,#11192d);border-color:#343a5a}.run-status{padding:15px}.chain-flow{display:flex;gap:8px;justify-content:space-between;align-items:center;margin:14px 0;color:#cbd8f5;font-size:10px}.chain-flow b{color:#616e9e}.coin-legend{display:flex;gap:9px;flex-wrap:wrap;font-size:9px;margin-top:11px}.gold{color:#ffd178}.spark{color:#8de7ff}.bomb{color:#ffa184}.gem{color:#d9a3ff}.rust{color:#91a0b9}#feverStatus{color:#8594ba;font-size:9px;line-height:1.6}.fever #feverStatus{color:#ffd178}.fever .machine{box-shadow:0 0 35px #ffbd5a35}.fever .board-wrap{border-color:#e0b56d}.board-wrap{background:#0b1429;border-color:#535888;box-shadow:inset 0 0 25px #222855}.board-note{color:#aac8e5}#victoryFlash{position:absolute;inset:35% 0 auto;text-align:center;pointer-events:none;color:#fff0c9;font-size:23px;font-weight:800;letter-spacing:5px;text-shadow:0 0 25px #ff9a74;opacity:0;transition:opacity .3s;background:linear-gradient(90deg,transparent,#172340dd,transparent);padding:20px 0}.primary{background:linear-gradient(100deg,#ffe4a0,#f5b85f);box-shadow:0 3px 0 #96622f,0 0 16px #e5a65320}.secondary{background:#263452;border-color:#6774a1;color:#bcdbff}.choice-button{background:linear-gradient(90deg,#9978f3,#67cce9);color:#07172a;font-weight:700;box-shadow:0 0 16px #a68aff40;animation:claim 2s ease-in-out infinite}.skill-row>span{background:#31385b;color:#b2c4ff}.upgrade-card{background:radial-gradient(ellipse at 50% 0,#4f417150,transparent 65%),#1a2440;border-color:#5f6087}.upgrade-card:hover{background:#2b3251;border-color:#b5bdff}.upgrade-card footer{color:#b6d6ff}.wave-pill{background:#393452;border-color:#79698a;color:#e7d2f3}.bar.xpbar i{background:linear-gradient(90deg,#8e75d4,#82dcef)}@keyframes breathe{50%{transform:translateY(-4px)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes claim{50%{box-shadow:0 0 25px #a68aff77}}.low-fx *{animation:none!important;scroll-behavior:auto!important}.low-fx #victoryFlash{transition:none}.low-fx .boss-portrait{filter:none!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(min-width:851px){.app{width:min(1210px,calc((100dvh - 380px)*.9 + 560px));min-width:860px}main{grid-template-columns:minmax(0,1fr) 290px}.board-wrap canvas{width:auto;max-width:100%;height:min(calc(100dvh - 420px),570px);margin:auto}.boss{min-height:139px}.boss-portrait{width:130px}.boss-portrait svg{height:125px}.boss-info>strong{font-size:15px}.resource .marble-count{margin:14px 0 10px}.marble-count strong{font-size:34px}.resource .stats{padding-top:12px}.echo{display:none}.save{display:none}}@media(max-width:850px){.boss-portrait{width:110px}.boss-portrait svg{height:120px}.boss-info>strong{font-size:14px}.boss{min-height:145px}.top-actions{gap:4px}.icon{font-size:9px;padding:6px}}@media(max-width:680px){.run-status{grid-column:1/-1;order:-1}.chain-flow{margin:10px 0}.coin-legend{margin-top:6px}.boss-portrait{width:126px}.boss-portrait svg{height:132px}.boss-info>strong{font-size:16px}.boss{padding:4px 8px 5px 0;min-height:145px}.brand small{font-size:6px}.brand{font-size:16px}.logo{width:22px;font-size:26px}.icon{padding:6px 5px;font-size:9px}.top-actions{gap:3px}.resource,.build{min-width:0}.run-status .section-label{font-size:12px}.coin-legend{font-size:10px}.chain-flow{justify-content:flex-start;gap:15px}#victoryFlash{font-size:19px;letter-spacing:2px}.skill-row{font-size:9px}}

.last-chain{font-size:9px;color:#b8b0da;margin-top:8px;line-height:1.5}

.quick-upgrade{position:absolute;right:12px;top:12px;z-index:2;border:1px solid #9debff;background:#564781ed;color:#fff;padding:7px 10px;border-radius:6px;font-size:10px;box-shadow:0 0 15px #96afff66}.quick-upgrade[hidden]{display:none}
.adventure-stage{position:relative;margin:16px 0 0;border:1px solid #395965;border-radius:14px;overflow:hidden;background:#132331}.adventure-stage canvas{display:block;width:100%;height:auto}.journey-hud{display:flex;justify-content:space-between;padding:10px 15px;font-size:12px;color:#a8d5d0;background:#0d1c27}.enemy-info{padding:15px 3px 20px}.enemy-info>div:first-child{display:flex;justify-content:space-between;font-size:14px;margin-bottom:9px}.enemy-meta{display:flex;gap:10px;font-size:10px;margin:8px 0;color:#a8b9c8}.enemy-meta span:first-child{margin-right:auto}.machine-tools{display:flex;align-items:center;gap:12px;margin-top:15px;font-size:11px;color:#94acb7}.save-actions button,.save-slot button,.file-button,.confirm-actions button{border:1px solid #46566e;border-radius:8px;background:#1b293c;color:#d6e9eb;padding:10px;cursor:pointer}.machine-tools #autoLabel{margin-left:auto}.prominent{border-color:#72cfbb!important;color:#a3f5d9!important}.save-heading{display:flex;justify-content:space-between;align-items:center}.save-slot{display:flex;gap:9px;align-items:center;padding:16px 0;border-bottom:1px solid #354254}.save-slot span{flex:1;font-size:12px}.save-actions,.confirm-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}#saveStatus{color:#ace8d0;font-size:13px}#confirmModal{max-width:430px}#confirmText{line-height:1.8;color:#b7c6d3}.top-actions{flex-wrap:wrap}.enemy-info .bar{height:8px;background:#28364b;border-radius:6px;overflow:hidden}.enemy-info .bar i{display:block;height:100%;background:var(--stage,#80ddc4);transition:width .15s}.enemy-info .breakbar{height:3px}@media(max-width:650px){header{align-items:flex-start;gap:15px;flex-wrap:wrap}.top-actions{gap:5px}.top-actions .icon{padding:8px;font-size:11px}.save{display:none}.save-slot{flex-wrap:wrap}.save-slot span{flex-basis:100%}.enemy-meta{flex-wrap:wrap}.machine-tools{flex-wrap:wrap}.machine-tools #autoLabel{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
