:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#070b14;--bg-elevated:#0d1422db;--border:#78a0dc38;--border-strong:#8cbeff73;--text:#e8f0ff;--text-dim:#93a6c4;--accent:#4cc9f0;--accent-strong:#7ae7ff;--good:#80ed99;--warn:#ffd166;--bad:#ff6b81;--radius:12px;--shadow:0 10px 30px #00000073;--font:"Segoe UI", system-ui, -apple-system, sans-serif;--mono:"Cascadia Mono", "Consolas", monospace}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);margin:0;padding:0;font-size:14px;overflow:hidden}#app{position:fixed;inset:0}#app canvas{width:100%;height:100%;display:block}#ui{pointer-events:none;grid-template-rows:minmax(0,auto) 1fr minmax(0,auto);grid-template-columns:minmax(0,auto) 1fr minmax(0,auto);align-items:start;gap:14px;padding:14px;display:grid;position:fixed;inset:0}.ui-top-left{scrollbar-width:thin;flex-direction:column;grid-area:1/1;align-items:flex-start;gap:12px;max-height:calc(100vh - 178px);display:flex;overflow-y:auto}.ui-top-right{scrollbar-width:thin;flex-direction:column;grid-area:1/3;align-items:flex-end;gap:12px;max-height:calc(100vh - 178px);display:flex;overflow-y:auto}.ui-bottom-left{flex-direction:column;grid-area:3/1;align-items:flex-start;gap:12px;display:flex}.ui-center{z-index:29;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex;position:fixed;inset:0}.ui-center>.panel{scrollbar-width:thin;flex:0 auto;max-width:min(520px,100vw - 64px);min-height:0;max-height:calc(100vh - 96px);overflow-y:auto}.ui-bottom-right{flex-direction:column;grid-area:3/3;align-items:flex-end;gap:12px;display:flex}.panel{pointer-events:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:340px;padding:10px 12px}.panel-title{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px;font-size:11px}.row{flex-wrap:wrap;align-items:center;gap:8px;line-height:1.6;display:flex}.row+.row{margin-top:4px}.kv{font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;display:flex}.kv>span:last-child{color:var(--accent-strong);font-family:var(--mono)}.badge{border:1px solid var(--border);color:var(--text-dim);border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:12px;display:inline-flex}.badge.is-on{color:var(--good);border-color:#80ed9980}.badge.is-off{color:var(--bad);border-color:#ff6b8180}.badge.is-warn{color:var(--warn);border-color:#ffd16680}.motion-readout{align-items:baseline;gap:8px;font-size:20px;font-weight:600;display:flex}.motion-readout .glyph{font-size:22px}.motion-readout .confidence{color:var(--text-dim);font-size:12px;font-weight:400}kbd{font-family:var(--mono);border:1px solid var(--border-strong);color:var(--text);background:#ffffff0f;border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-size:11px}button{font:inherit;color:var(--text);border:1px solid var(--border-strong);cursor:pointer;pointer-events:auto;background:#4cc9f024;border-radius:8px;padding:5px 11px}button:hover{background:#4cc9f042}button:disabled{opacity:.45;cursor:not-allowed}button.is-active{border-color:var(--accent-strong);background:#4cc9f057}input[type=range]{width:100%;accent-color:var(--accent)}label.field{color:var(--text-dim);pointer-events:auto;flex-direction:column;gap:2px;font-size:12px;display:flex}label.field>span.value{color:var(--accent-strong);font-family:var(--mono)}.toast-stack{z-index:20;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}.toast{background:var(--bg-elevated);border:1px solid var(--border-strong);box-shadow:var(--shadow);border-radius:999px;padding:7px 16px;animation:.18s ease-out toast-in}.toast.is-bad{color:var(--bad);border-color:#ff6b8199}.toast.is-good{color:var(--good);border-color:#80ed9999}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.vision-hint{color:var(--text-dim);font-size:12px}.vision-hint button{margin-top:6px}.loading-overlay{z-index:50;pointer-events:auto;background:radial-gradient(circle at 50% 40%,#12203a 0%,#070b14 70%);place-items:center;display:grid;position:fixed;inset:0}.loading-card{border:1px solid var(--border-strong);background:var(--bg-elevated);width:min(420px,90vw);box-shadow:var(--shadow);text-align:center;border-radius:16px;padding:26px 30px}.loading-title{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-strong);margin-bottom:10px;font-size:26px;font-weight:700}.loading-message{margin-bottom:14px;font-size:15px}.loading-track{background:#ffffff14;border-radius:999px;height:10px;overflow:hidden}.loading-fill{background:var(--accent-strong);border-radius:999px;width:0;height:100%;transition:width .2s}.loading-percent{color:var(--text-dim);margin:6px 0 12px;font-size:12px}.loading-hint{color:var(--text-dim);font-size:12px}.game-hud{min-width:216px}.panel.game-hud{zoom:1.18;min-width:268px}.panel:not(.game-hud){zoom:1.12}.panel.game-hud:not(.game-stats){zoom:1.28}.game-help-panel{max-width:520px}.game-help-steps{color:var(--text-dim);flex-direction:column;gap:7px;margin:8px 0 0;padding-left:20px;font-size:13px;line-height:1.35;display:flex}.game-help-steps strong{color:var(--text)}.game-help-say{border-top:1px solid var(--border);color:var(--text-dim);margin-top:10px;padding-top:8px;font-size:12px;line-height:1.6}.media-gate{z-index:40;background:#070b14e0;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.media-gate-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);max-width:520px;box-shadow:var(--shadow);color:var(--text-dim);padding:22px 26px;font-size:13px;line-height:1.45}.media-gate-title{color:var(--text);margin-bottom:8px;font-size:16px;font-weight:600}.media-gate-reason{color:var(--warn);font-size:12px}.media-gate-steps{flex-direction:column;gap:6px;margin:10px 0 14px;padding-left:20px;display:flex}.media-gate-retry{border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);font:inherit;cursor:pointer;background:0 0;padding:8px 18px;font-weight:600}.media-gate-retry:hover{background:#4cc9f01f}.game-overlay,.game-offline{pointer-events:none;z-index:5;position:absolute}.game-overlay[hidden],.game-offline[hidden],.game-error[hidden]{display:none!important}.game-overlay{background:radial-gradient(circle at 50% 45%,#070b1459,#070b14d9);justify-content:center;align-items:center;display:flex;inset:0}.game-overlay-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);box-shadow:var(--shadow);color:var(--text-dim);letter-spacing:.04em;flex-direction:column;align-items:center;gap:12px;padding:18px 26px;display:flex}.game-spinner{border:3px solid #4cc9f040;border-top-color:var(--accent);border-radius:50%;width:26px;height:26px;animation:.9s linear infinite game-spin}@keyframes game-spin{to{transform:rotate(360deg)}}.game-offline{background:var(--bg-elevated);box-shadow:var(--shadow);color:var(--text-dim);border:1px solid #ff6b8173;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:12px;display:flex;top:14px;left:50%;transform:translate(-50%)}.conf-track{background:#78a0dc2e;border-radius:999px;height:5px;margin-top:6px;overflow:hidden}.conf-fill{background:linear-gradient(90deg, var(--accent), var(--accent-strong));border-radius:999px;width:0;height:100%;transition:width .12s linear}.conf-fill.is-low{background:linear-gradient(90deg, #ffd16699, var(--warn))}.game-error{color:var(--bad);overflow-wrap:anywhere;border-top:1px solid #ff6b8159;margin-top:8px;padding-top:6px;font-size:12px}.health-track{background:#78a0dc2e;border-radius:999px;height:9px;margin-top:6px;overflow:hidden}.health-fill{background:linear-gradient(90deg,#58d68d,#80ed99);border-radius:999px;width:0;height:100%;transition:width .14s linear,background .2s linear}.health-fill.is-mid{background:linear-gradient(90deg,#f0b429,#ffd166)}.health-fill.is-low{background:linear-gradient(90deg,#e6455a,#ff6b7a)}.mana-track{background:#78a0dc2e;border-radius:999px;height:7px;margin-top:6px;overflow:hidden}.mana-fill{background:linear-gradient(90deg,#6d6bff,#b388ff);border-radius:999px;width:0;height:100%;transition:width .14s linear,background .2s linear,opacity .2s linear}.mana-fill.is-empty{opacity:.55;background:linear-gradient(90deg,#7882a080,#96a0be80)}.food-track,.water-track{background:#a0825a2e;border-radius:999px;height:7px;margin-top:6px;overflow:hidden}.water-track{background:#5aa0d22e}.food-fill{background:linear-gradient(90deg,#c9782e,#f0b54d);border-radius:999px;width:0;height:100%;transition:width .24s linear,background .2s linear}.water-fill{background:linear-gradient(90deg,#2f87c9,#6fd3f0);border-radius:999px;width:0;height:100%;transition:width .24s linear,background .2s linear}.food-fill.is-low,.water-fill.is-low{background:linear-gradient(90deg,#b3261e,#e8594f)}.ammo-text{color:var(--warn);font-variant-numeric:tabular-nums;margin-right:8px}.ammo-text.is-reloading{color:var(--accent-strong)}.game-hurt{z-index:4;pointer-events:none;opacity:0;background:radial-gradient(circle,#ff283c00 45%,#ff283c8c 100%);transition:opacity .2s ease-out;position:absolute;inset:0}.game-hurt.is-on{opacity:1;transition:opacity 40ms linear}.game-block{z-index:4;pointer-events:none;opacity:0;background:radial-gradient(circle,#3cf0ff00 38%,#3cf0ff6b 100%);transition:opacity .22s ease-out;position:absolute;inset:0}.game-block.is-on{opacity:1;transition:opacity 40ms linear}.game-block-label{z-index:5;color:#9ff5ff;letter-spacing:.12em;text-transform:uppercase;pointer-events:none;opacity:0;background:#07141ab8;border:1px solid #5af5ff99;border-radius:999px;padding:4px 14px;font-size:13px;transition:opacity .18s ease-out;position:absolute;top:22%;left:50%;transform:translate(-50%)}.game-block-label.is-on{opacity:1;transition:opacity 60ms linear}.game-block-label[hidden]{display:none!important}.game-down{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.game-down[hidden]{display:none!important}.game-down-card{border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;background:#070b14b8;border:1px solid #ff6b8180;flex-direction:column;align-items:center;gap:4px;padding:14px 24px;display:flex}.game-down-title{letter-spacing:.08em;text-transform:uppercase;color:var(--bad);font-size:15px}.game-down-text{color:var(--text-dim);font-size:13px}.game-arena-countdown{z-index:7;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.game-arena-countdown[hidden]{display:none!important}.game-arena-countdown-card{text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#070e18d1;border:1px solid #8fffe08c;border-radius:18px;min-width:min(280px,100vw - 36px);padding:18px 28px 20px;box-shadow:0 0 32px #27d8c03d}.game-arena-countdown-title{color:var(--text-dim);letter-spacing:.12em;text-transform:uppercase;font-size:13px;font-weight:700}.game-arena-countdown-value{color:var(--accent);font-variant-numeric:tabular-nums;text-shadow:0 0 24px #27d8c066;margin:2px 0;font-size:clamp(68px,12vw,112px);font-weight:800;line-height:1}.game-arena-countdown-detail{color:var(--text);font-size:15px;font-weight:600}.inv-equip{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.inv-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.inv-slot{border:1px dashed var(--border);min-height:64px;color:var(--text-dim);font:inherit;text-align:center;cursor:pointer;background:#ffffff08;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:4px 3px;font-size:10px;transition:border-color .1s linear,background .1s linear,color .1s linear;display:flex}.inv-slot:disabled{cursor:default;opacity:.75}.inv-slot:not(:disabled):hover{border-color:var(--accent-strong);color:var(--text);background:#4cc9f01a}.inv-slot.is-filled{border-style:solid;border-color:var(--border-strong);color:var(--text)}.inv-slot.is-tiered{border-color:var(--tier-color);box-shadow:inset 0 0 0 1px var(--tier-color)}.inv-grade{color:var(--tier-color,var(--text-dim));font-size:10px;line-height:1.4}.inv-bag-slot{min-height:56px}.inv-slot-name{text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);font-size:9px}.inv-kind{font-size:20px;line-height:1}.inv-label{overflow-wrap:anywhere}.inv-backpack-title{margin-top:10px}.inv-count{color:var(--text-dim);font-size:11px;font-weight:400}.game-item-detail{border:1px solid var(--border);background:#ffffff08;border-radius:8px;margin-top:8px;padding:8px 10px;font-size:11px;line-height:1.5}.game-item-detail[hidden]{display:none!important}.game-item-detail-head{color:var(--text);margin-bottom:2px;font-size:12px}.game-item-detail-stats{color:var(--accent-strong)}.game-item-detail-desc{color:var(--text-dim)}.game-item-detail-price{color:var(--warn)}.game-hint{color:var(--text-dim);margin-top:8px;font-size:11px}.game-hint.is-warn{color:var(--warn)}.game-inventory[hidden]{display:none!important}.progress-note{color:var(--text-dim);font-size:12px}.element-selected{color:var(--accent-strong);font-size:12px;font-weight:400}.element-bar{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.element-bar:empty{display:none}.element-chip{border:1px solid var(--border);min-width:58px;color:var(--text-dim);font:inherit;cursor:pointer;background:#ffffff08;border-radius:9px;flex-direction:column;align-items:center;gap:1px;padding:5px 6px 4px;font-size:10px;transition:border-color .12s linear,box-shadow .12s linear,color .12s linear;display:flex;position:relative}.element-chip:hover{color:var(--text);border-color:var(--element-color,var(--border-strong))}.element-chip.is-selected{color:var(--text);border-color:var(--element-color,var(--accent-strong));box-shadow:0 0 0 1px var(--element-color,var(--accent-strong)) inset, 0 0 10px -2px var(--element-color,var(--accent-strong))}.element-key{color:var(--text-dim);font-size:9px;position:absolute;top:3px;left:5px}.element-icon{font-size:17px;line-height:1}.element-label{overflow-wrap:anywhere;max-width:72px}.element-level{color:var(--accent-strong);font-size:9px}.element-level.is-cast{color:var(--text-dim)}.element-ladders{flex-direction:column;gap:6px;margin-top:8px;display:flex}.element-ladder{border:1px solid var(--border);border-left:2px solid var(--element-color,var(--border-strong));background:#ffffff05;border-radius:9px;padding:4px 7px 5px}.element-ladder.is-selected{border-color:var(--element-color,var(--border-strong));background:#ffffff0d}.element-ladder-head{color:var(--text);align-items:baseline;gap:5px;font-size:11px;display:flex}.element-ladder-name{font-weight:600}.element-ladder-level{color:var(--text-dim);margin-left:auto;font-size:10px}.element-ladder-steps{flex-direction:column;gap:1px;margin:3px 0 0;padding:0;list-style:none;display:flex}.element-step{color:var(--text-dim);flex-wrap:wrap;align-items:baseline;gap:5px;font-size:11px;display:flex}.element-step.is-unlocked{color:var(--text)}.element-step.is-locked{opacity:.72}.element-step.is-current{color:var(--good)}.element-step-mark{flex:none;width:12px}.element-step-cost{color:var(--accent-strong);white-space:nowrap;font-size:10px}.element-step-mana-warning{color:var(--accent-strong);flex-basis:100%;font-size:10px}.element-step-note{color:var(--text-dim);white-space:nowrap;margin-left:auto;font-size:10px}.element-step.is-current .element-step-note{color:var(--good)}.game-craft{min-width:min(360px,100%)}.game-craft[hidden]{display:none!important}.game-craft>.panel-title{font-size:13px}.craft-level{color:var(--accent-strong);font-weight:400;font-family:var(--mono);letter-spacing:.02em;overflow-wrap:anywhere;margin-top:2px;font-size:.85em;display:block}.craft-xp{background:#ffffff0f;border-radius:999px;height:6px;margin:6px 0 8px;overflow:hidden}.craft-xp-fill{background:var(--accent-strong);height:100%;transition:width .3s}.craft-page{flex-direction:column;gap:6px;display:flex}.game-craft .panel-page.craft-page{scrollbar-width:thin;flex:auto;min-height:0;padding-right:2px;overflow-y:auto}.craft-list{flex-direction:column;flex:none;gap:5px;display:flex}.craft-row .shop-item-name{font-weight:600}.craft-row .shop-item-detail{display:flex}.craft-resources{flex:none;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;margin:0 0 10px;display:grid}.craft-resource{border:1px solid var(--border-strong);background:#ffffff0a;border-radius:10px;align-items:center;gap:6px;min-width:0;padding:6px 8px;font-size:12px;display:flex}.craft-resource-icon{flex:none}.craft-resource-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);flex:auto;overflow:hidden}.craft-resource-count{font-family:var(--mono);color:var(--accent-strong);font-weight:600}.craft-actions{gap:8px;display:flex}.craft-actions>button{flex:1 1 0}.game-shop{min-width:300px}.game-shop[hidden]{display:none!important}.shop-gold{float:right;color:var(--warn);align-items:center;gap:8px;font-weight:400;display:inline-flex}.gold-balance{color:var(--warn);font-variant-numeric:tabular-nums;align-items:center;gap:5px;display:inline-flex}.gold-icon{line-height:1}.shop-tabs{flex-wrap:wrap;gap:4px;margin:6px 0 8px;display:flex}.shop-tab{border:1px solid var(--border);color:var(--text-dim);font:inherit;cursor:pointer;background:#ffffff08;border-radius:999px;padding:4px 8px;font-size:11px}.shop-tab:hover{color:var(--text)}.shop-tab.is-active{color:var(--text);border-color:var(--accent-strong);background:#4cc9f029}.shop-list,.shop-sell{scrollbar-width:thin;flex-direction:column;gap:5px;max-height:240px;display:flex;overflow-y:auto}.shop-item{border:1px solid var(--border);background:#ffffff05;border-radius:8px;flex-direction:column;display:flex}.shop-item:hover{border-color:var(--border-strong)}.shop-item-head{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:7px 8px;display:flex}.shop-item-head:hover{background:#ffffff0d}.shop-item-icon{font-size:18px;line-height:1}.shop-item-name{color:var(--text);flex:1;min-width:0;font-size:12px}.shop-item-price{color:var(--warn);white-space:nowrap;font-size:12px}.shop-item-head[data-disabled=true] .shop-item-price{color:var(--bad)}.shop-item-caret{color:var(--text-dim)}.shop-item-detail{flex-direction:column;gap:4px;padding:0 8px 8px 34px;display:none}.shop-item.is-open .shop-item-detail{display:flex}.shop-item-stats{color:var(--accent-strong);flex-direction:column;font-size:10px;display:flex}.shop-item-desc{color:var(--text-dim);overflow-wrap:anywhere;font-size:10px}.shop-buy,.shop-sell-button{border:1px solid var(--border-strong);color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;background:#4cc9f024;border-radius:8px;align-self:flex-start;margin-top:2px;padding:5px 9px;font-size:11px}.shop-buy:disabled{opacity:.45;cursor:not-allowed}.shop-buy:not(:disabled):hover,.shop-sell-button:hover{background:#4cc9f042}.shop-sell-item{background:#ffffff08}.shop-sell-title{margin-top:10px}.game-menu{z-index:6;pointer-events:auto;background:radial-gradient(circle at 50% 45%,#070b1459,#070b14d1);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.game-menu[hidden]{display:none!important}.game-menu-card{min-width:268px;max-height:calc(100% - 24px);padding:16px 18px 14px;animation:.14s ease-out game-menu-in;overflow-y:auto}.game-menu-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.game-menu-item{color:var(--text-dim);cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:7px 10px;transition:background .1s linear,color .1s linear,border-color .1s linear;display:flex}.game-menu-item:hover{color:var(--text);background:#ffffff0a}.game-menu-item.is-selected{color:var(--text);border-color:var(--border-strong);background:#4cc9f029}.game-menu-glyph{width:12px;color:var(--accent-strong);opacity:0;font-size:11px}.game-menu-item.is-selected .game-menu-glyph{opacity:1}.game-menu-label{flex:1}.game-menu-value{color:var(--accent-strong);font-size:11px}.game-menu-item.is-toggled .game-menu-label:after{content:" · visible";color:var(--accent-strong);font-size:11px}.game-menu-hint{border-top:1px solid var(--border);color:var(--text-dim);margin-top:12px;padding-top:10px;font-size:11px;line-height:1.9}.game-menu-stats{border-top:1px solid var(--border);flex-direction:column;gap:3px;margin-top:12px;padding-top:10px;display:flex}.game-menu-stats[hidden]{display:none}.game-menu-stats-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);margin-bottom:4px;font-size:12px;font-weight:600}.game-menu-stat-row{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.game-menu-stat-label{color:var(--text-dim);font-size:13px}.game-menu-stat-value{font-variant-numeric:tabular-nums;color:var(--text);font-size:17px}.game-menu-stats-note{color:var(--text-dim);opacity:.75;margin-top:6px;font-size:10px;line-height:1.6}@keyframes game-menu-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:none}}.game-farewell{z-index:30;pointer-events:auto;background:radial-gradient(circle at 50% 45%,#070b148c,#070b14eb);padding:18px;display:flex;position:fixed;inset:0;overflow-y:auto}.game-farewell[hidden]{display:none!important}.game-farewell-card{width:min(420px,100%);margin:auto;padding:18px 20px 16px;animation:.14s ease-out game-menu-in}.game-farewell-note{color:var(--text-dim);margin:6px 0 12px;font-size:13px;line-height:1.5}.game-farewell-lines{border-top:1px solid var(--border);flex-direction:column;gap:3px;padding-top:10px;display:flex}.game-farewell-row{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.game-farewell-label{color:var(--text-dim);font-size:13px}.game-farewell-value{font-variant-numeric:tabular-nums;color:var(--text);font-size:17px}.game-farewell-fine{color:var(--text-dim);opacity:.75;margin-top:8px;font-size:10px;line-height:1.6}.game-farewell-go{width:100%;font:inherit;color:var(--text);border:1px solid var(--border-strong);cursor:pointer;background:#78a0dc2e;border-radius:8px;margin-top:14px;padding:10px 14px;font-size:14px}.game-farewell-go:hover,.game-farewell-go:focus-visible{background:#78a0dc4d;outline:none}.game-chat{width:260px}.game-chat-line{align-items:center;gap:8px;display:flex}.game-chat-tag{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);font-size:11px}.game-chat-input{min-width:0;font:inherit;color:var(--text);border:1px solid var(--border-strong);background:#ffffff0f;border-radius:8px;flex:1;padding:4px 8px;font-size:12px}.game-chat-input:focus{border-color:var(--accent-strong);outline:none;box-shadow:0 0 0 2px #4cc9f040}.game-chat-hint{color:var(--text-dim);margin-top:6px;font-size:11px}.game-chat.is-open .game-chat-hint{color:var(--accent-strong)}.trait-group-icon{font-size:15px;line-height:1}.trait-group-name{flex:1;min-width:0}.trait-group-level{font-family:var(--mono);color:var(--accent-strong);white-space:nowrap;font-size:11px}.trait-group-sub{color:var(--text-dim);opacity:.85;margin:3px 2px 0;font-size:11px}.trait-group-body,.trait-group:not(.is-open) .trait-group-sub{display:none}.trait-group.is-open .trait-group-body{margin-top:6px;display:block}.skill-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.skill-label{color:var(--text);font-size:13px}.skill-level{font-family:var(--mono);color:var(--accent-strong);font-size:12px}.skill-track{background:#78a0dc2e;border-radius:999px;height:7px;margin-top:5px;overflow:hidden}.skill-fill{background:linear-gradient(90deg, var(--accent), var(--accent-strong));border-radius:999px;width:0;height:100%;transition:width .16s linear,background .2s linear}.skill-fill.is-max{background:linear-gradient(90deg, #f0b429, var(--warn))}.skill-foot{color:var(--text-dim);justify-content:space-between;align-items:baseline;gap:10px;margin-top:4px;font-size:11px;display:flex}.skill-uses{font-variant-numeric:tabular-nums;white-space:nowrap}.skill-hint{color:var(--text-dim);opacity:.85;font-size:11px}.progress-sheet .kv+.kv{margin-top:2px}.is-hidden{display:none!important}.vital-meta{color:var(--text-dim);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;margin-top:8px;font-size:12px;display:flex}.vital-meta>span{white-space:nowrap}.vital-meta b{color:var(--text);font-weight:600}.war-strip{color:var(--text-dim);border-top:1px solid #96a5c840;align-items:baseline;gap:8px;margin-top:8px;padding-top:6px;font-size:12px;display:flex}.war-badge{letter-spacing:.06em;font-weight:700}.war-badge.is-red{color:#e4534f}.war-badge.is-blue{color:#4f8fe4}.war-score{color:var(--text);font-weight:600}.war-strip.is-carrying .war-score{color:#fbbf24}.war-strip.is-carrying .war-clock:after{content:" · llevas la bandera"}.game-stats .panel-title{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.voice-mode{letter-spacing:.02em;text-transform:none;color:var(--text-dim);white-space:nowrap;font-size:11px}.voice-mode.is-on{color:var(--good)}.game-inventory,.game-shop,.game-skills,.game-social-panel,.game-map-panel{font-size:14px}.game-social-panel{min-width:min(380px,100%)}.game-map-panel{min-width:min(420px,100%)}.game-missions-panel{min-width:min(340px,100%)}.missions-card{gap:8px;display:grid}.missions-card h3{margin:0}.initiation-card{max-width:580px;margin-bottom:18px}.initiation-objectives{gap:8px;margin:0;padding:0;list-style:none;display:grid}.initiation-objective{border:1px solid #0000;justify-content:space-between;gap:12px;padding:8px;font-size:13px;display:flex}.initiation-objective.is-current{border-color:var(--accent-strong);border-radius:6px}.initiation-objective.is-done strong{color:var(--accent-strong)}.initiation-howto{margin:0;font-size:13px;line-height:1.5}.missions-reward,.missions-status{margin:0;font-size:13px}.missions-days{gap:6px;display:flex}.missions-dot{border:2px solid var(--accent-strong);opacity:.4;border-radius:50%;width:22px;height:22px}.missions-dot.is-done{background:var(--accent-strong);opacity:1}.map-zoom{float:right;font-family:var(--mono);color:var(--accent-strong);font-size:11px}.game-inventory,.game-shop{min-width:min(360px,100%)}.game-skills{min-width:min(340px,100%)}.game-inventory>.panel-title,.game-shop>.panel-title,.game-skills>.panel-title{font-size:13px}.inv-slot{min-height:74px;font-size:12px}.inv-bag-slot{min-height:64px;position:relative}.inv-hands{gap:4px;margin-top:4px;display:flex}.inv-hands[hidden]{display:none}.inv-hand{border:1px solid var(--border-strong);color:var(--text-dim);cursor:pointer;background:#00000040;border-radius:4px;flex:1;padding:2px 4px;font-size:10px;line-height:1.2}.inv-hand:hover{color:var(--text);border-color:var(--accent)}.inv-slot-name{font-size:11px}.inv-kind{font-size:22px}.inv-count{font-size:12px}.game-item-detail{font-size:13px}.game-item-detail-head{font-size:14px}.game-hint{font-size:12px}.element-chip{min-width:68px;padding:6px 7px 5px;font-size:12px}.element-key,.element-level{font-size:10px}.element-label{max-width:92px;font-size:12px}.shop-tab{font-size:12px}.shop-item-name,.shop-item-price{font-size:14px}.shop-item-stats,.shop-item-desc{font-size:12px}.shop-buy,.shop-sell-button{font-size:13px}.trait-group-name{font-size:15px}.trait-group-level,.trait-group-sub{font-size:12px}.skill-label{font-size:14px}.skill-level,.skill-hint{font-size:12px}[data-verb].is-selected{outline:3px solid var(--accent);outline-offset:-4px}.game-panel-screen .inv-card .inv-slot.is-selected{box-shadow:none;border-color:#0000;outline:none}.game-panel-screen .inv-card:has(.inv-slot.is-selected){border:3px solid var(--accent);box-shadow:none}.voice-hint{border-top:1px solid var(--border);margin-top:10px;padding-top:8px}.game-guide{min-width:min(340px,100%);font-size:15px}.game-guide .panel-title{font-size:13px}.guide-section+.guide-section{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.guide-heading{color:var(--text);cursor:pointer;margin:0 0 6px;font-size:15px;font-weight:600}.guide-section[open] .guide-heading{color:var(--accent-strong)}.guide-subheading{color:var(--text-dim);font-size:13px;font-weight:500}.guide-section:not([open]) .guide-heading{margin-bottom:0}.guide-say{color:var(--text-dim);margin-left:8px;font-size:12px;font-weight:400}.guide-note{color:var(--text-dim);margin:0 0 8px;font-size:13px;line-height:1.5}.guide-inside{color:var(--text);margin-top:10px}.guide-row{flex-wrap:wrap;align-items:baseline;gap:6px;line-height:1.5;display:flex}.guide-row+.guide-row{margin-top:4px}.guide-key{color:var(--accent-strong);font-weight:600}.guide-tag{color:var(--text-dim);font-size:12px}.guide-words{color:var(--text-dim);font-size:13px}.guide-more{margin-top:8px}.guide-more>summary{cursor:pointer;color:var(--text-dim)}.guide-more .guide-row{margin-top:4px;padding-left:8px}.guide-branch{border-left:2px solid var(--line);margin-top:8px;padding-left:10px}.guide-branch>summary{cursor:pointer;font-size:16px;font-weight:600;line-height:1.5}.guide-branch-body{flex-direction:column;gap:6px;margin:6px 0 10px;display:flex}.guide-spell{padding-left:8px}.guide-spell>summary{cursor:pointer;font-size:15px;line-height:1.5}.guide-spell-body{color:var(--text-dim);margin:4px 0 8px;font-size:14px;line-height:1.55}.guide-passive{color:var(--text-dim);font-size:14px;line-height:1.5}.game-diagnostics .row{margin-bottom:4px}.guide-camera{margin-top:10px}.social-card{border:1px solid var(--border-strong);background:#00000038;border-radius:8px;margin-bottom:8px;padding:8px 10px}.social-name{color:var(--text);font-size:14px;font-weight:600}.social-detail{color:var(--text-dim);margin-top:2px;font-size:12px}.social-member{color:var(--text);margin-top:3px;font-size:12px}.social-rows{flex-direction:column;gap:6px;display:flex}.social-row{text-align:left;border:1px solid var(--border-strong);color:var(--text);cursor:pointer;background:#00000047;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;display:flex}.social-row:hover:not(:disabled){border-color:var(--accent);background:#ffffff0f}.social-row:disabled{opacity:.5;cursor:default}.social-row.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px #7dd3fc59}.social-row-label{font-size:14px;font-weight:600}.social-row-hint{color:var(--text-dim);font-size:12px}.social-hint{color:var(--text-dim);margin-top:8px;font-size:12px;line-height:1.35}.account-character-elo,.account-character-asedio{color:var(--text-dim);margin-top:4px;font-size:12px;display:block}.account-character-lock{color:#fca5a5;background:#f871712e;border:1px solid #f8717180;border-radius:4px;margin-top:4px;padding:2px 6px;font-size:12px;font-weight:600;display:inline-block}.map-canvas{border:1px solid var(--border-strong);background:#0a0d11;border-radius:10px;width:100%;max-width:420px;height:auto;margin:0 auto;display:block;box-shadow:inset 0 0 18px #0000008c}.map-legend{color:var(--text-dim);flex-wrap:wrap;gap:5px 12px;margin-top:10px;font-size:12px;display:flex}.map-legend-item{align-items:center;gap:5px;display:inline-flex}.map-legend-dot{background:currentColor;border-radius:50%;width:9px;height:9px}.map-legend-dot[data-shape=arrow]{clip-path:polygon(50% 0,100% 100%,50% 76%,0 100%);border-radius:0}.map-legend-dot[data-shape=ring]{background:0 0;border:2px solid}.map-legend-dot[data-shape=square]{border-radius:2px}.map-legend-dot[data-shape=diamond]{border-radius:1px;transform:rotate(45deg)}.map-legend-dot[data-shape=pennant]{clip-path:polygon(0 0,100% 22%,0 44%,0 100%,24% 100%,24% 0);border-radius:0}.land-panel{z-index:15;color:#fff;background:#142033e8;border:1px solid #7597ad;border-radius:.5rem;max-width:min(24rem,90vw);padding:.6rem;position:absolute;top:4rem;right:1rem}.land-panel button,.land-panel input,.land-panel select{margin:.2rem;padding:.4rem}.land-panel p{margin:.4rem 0;font-size:.8rem}.land-panel input{width:5rem}.land-panel button:disabled{opacity:.55;cursor:not-allowed}.game-panel-screen,.panel.game-hud.game-panel-screen,.panel:not(.game-hud).game-panel-screen{z-index:24;zoom:1;overscroll-behavior:contain;pointer-events:auto;border:1px solid var(--border-strong);width:auto;min-width:0;max-width:none;height:auto;max-height:none;color:var(--text);background:#101a2bf5;border-radius:18px;flex-direction:column;margin:0;padding:0 clamp(14px,2vw,28px) 16px;font-size:clamp(15px,1.1vw,18px);line-height:1.3;display:flex;position:fixed;inset:clamp(8px,2vw,28px);overflow:hidden;box-shadow:0 16px 72px #000a}.game-panel-screen[hidden],.game-panel-screen.is-hidden{display:none!important}.panel.game-hud.game-panel-screen.game-missions-panel{font-size:clamp(17px,1.3vw,21px)}.game-missions-panel .missions-layout{overscroll-behavior:contain;flex:auto;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start;gap:clamp(16px,2vw,28px);min-height:0;padding:8px 4px 20px;display:grid;overflow-y:auto}.game-missions-panel .missions-card{border:1px solid var(--border-strong);background:#0003;border-radius:12px;gap:14px;min-width:0;max-width:none;margin:0;padding:clamp(16px,1.5vw,24px)}.game-missions-panel .missions-card h3{font-size:1.25em;line-height:1.3}.game-missions-panel :is(.initiation-objective,.initiation-howto,.missions-reward,.missions-status,.social-hint){font-size:1em;line-height:1.5}.game-missions-panel .initiation-objectives{gap:10px}.game-missions-panel .initiation-objective{background:#ffffff0a;border-radius:8px;padding:12px}.game-missions-panel .initiation-objective strong{flex-shrink:0}.game-missions-panel .social-hint{margin:0}.game-missions-panel .missions-days{flex-wrap:wrap;gap:10px}.game-missions-panel .missions-dot{width:28px;height:28px}@media (max-width:850px){.game-missions-panel .missions-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:480px){.game-missions-panel .initiation-objective{flex-wrap:wrap;gap:4px 12px}}.game-panel-screen>.panel-title{display:none}.game-panel-screen>.shop-gold{text-align:right;color:var(--warn);flex:none;justify-content:flex-end}.panel-screen-header{z-index:2;border-bottom:1px solid var(--border-strong);background:#101a2b;flex:none;justify-content:space-between;align-items:center;gap:20px;margin-bottom:8px;padding:10px 0;display:flex}.panel-screen-header h2{margin:0;font-size:clamp(22px,2vw,30px);line-height:1.2}.game-panel-screen :is(button,input,select,textarea,summary){font-size:inherit;min-height:36px}.game-panel-screen :is(button,summary,input,select,textarea):focus-visible{outline:3px solid var(--accent-strong);outline-offset:4px}.game-panel-screen :is(.panel-title,.game-item-detail-head,.guide-heading,.trait-group-name,.social-row-label,.shop-item-name){font-size:1.2em;line-height:1.4}.game-panel-screen :is(.game-hint,.voice-hint,.guide-note,.guide-words,.guide-tag,.guide-say,.guide-subheading,.inv-slot-name,.inv-count,.skill-hint,.skill-level,.trait-group-sub,.trait-group-level,.progress-note,.social-hint,.social-row-hint,.shop-item-desc,.shop-item-stats,.element-label,.element-level,.element-key,.ladder-note,.ladder-detail,.ladder-level,.game-item-detail,.map-legend,.game-help-steps,.game-help-say){font-size:1em;line-height:1.6}.panel-intro{max-width:76ch;color:var(--text-dim);margin:0 0 10px}.panel-empty{border:1px dashed var(--border-strong);color:var(--text-dim);background:#ffffff06;border-radius:12px;margin:8px 0;padding:12px}.panel-empty[hidden]{display:none}.panel-card-grid,.game-panel-screen .inv-grid,.game-panel-screen .shop-list,.game-panel-screen .shop-sell,.game-panel-screen .element-ladders{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));align-items:start;gap:10px;display:grid}.panel-card{border:1px solid var(--border-strong);background:#ffffff06;border-radius:14px;min-width:0;padding:10px}.game-panel-screen .inv-equip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:10px}.game-panel-screen .inventory-layout{overscroll-behavior:contain;flex:auto;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:16px;min-height:0;display:grid;overflow:auto}.game-panel-screen .inventory-section{border:1px solid var(--border-strong);background:#ffffff05;border-radius:14px;min-width:0;padding:12px}.game-panel-screen .inventory-section-title{border-bottom:1px solid var(--border);color:var(--text);justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 10px;padding-bottom:8px;font-size:1.15em;display:flex}.game-panel-screen .inventory-section-hint{color:var(--text-dim);margin-top:8px;font-size:.85em}.game-panel-screen .inv-slot{gap:4px;min-height:96px;padding:8px;font-size:1em}.game-panel-screen .inv-kind{font-size:32px}.game-panel-screen .inv-card{padding:0;overflow:hidden}.game-panel-screen .inv-card .inv-slot{border-radius:12px;width:100%}.game-panel-screen .inv-card.is-empty{opacity:.65}.game-panel-screen .inv-card.is-empty .inv-slot{min-height:96px}.game-panel-screen .inv-category{color:var(--accent-strong);font-size:.9em}.game-panel-screen .inv-quantity{color:var(--text-dim);font-size:.9em}.game-panel-screen .inv-card-stats{color:var(--text-dim);font-size:.9em;line-height:1.5}.game-panel-screen .inv-primary-action{color:var(--accent-strong);margin-top:8px;font-weight:700}.game-panel-screen .inv-hands{gap:12px;padding:12px}.game-panel-screen .inv-hand{padding:10px;font-size:1em}.game-panel-screen .game-item-detail{margin-top:10px;padding:12px}.game-panel-screen .panel-subtabs{flex:none;gap:8px;margin:0 0 10px;display:flex}.game-panel-screen .panel-subtab{border:1px solid var(--border-strong);min-height:36px;color:var(--text-dim);cursor:pointer;background:#ffffff08;border-radius:999px;padding:6px 14px}.game-panel-screen .panel-subtab.is-active{border-color:var(--accent-strong);color:var(--text);background:#4cc9f022}.game-panel-screen .panel-page{flex:auto;min-height:0;overflow:hidden}.game-panel-screen .panel-page[hidden]{display:none!important}.game-panel-screen .voice-hint{margin-top:6px;padding-top:4px}.game-panel-screen .panel-page>:is(h2,h3){margin:4px 0 8px;font-size:1.1em}.game-panel-screen .panel-card p{margin:0 0 6px}.game-panel-screen .panel-card button{min-height:32px;padding:5px 8px}.game-panel-screen .panel-page :is(.shop-list,.shop-sell,.element-ladders){align-content:start}.game-panel-screen .progress-levels{flex-direction:column;flex:auto;gap:12px;min-height:0;display:flex}.game-panel-screen .trait-group-tabs{flex:none;grid-template-rows:repeat(2,minmax(48px,auto));grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:2px;display:grid}.game-panel-screen .trait-group-tab{border:1px solid var(--border-strong);width:100%;min-width:0;min-height:48px;color:var(--text-dim);white-space:normal;cursor:pointer;background:#ffffff08;border-radius:12px;align-items:center;gap:8px;padding:7px 12px;display:flex;position:relative}.game-panel-screen .trait-group-name{overflow-wrap:anywhere}.game-panel-screen .trait-group-tab.is-active{border-color:var(--accent-strong);color:var(--text);background:#4cc9f022}.game-panel-screen .trait-group-tab:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}.game-panel-screen .trait-group-tab .trait-group-level{background:#4cc9f015;border-radius:999px;padding:3px 7px}.game-panel-screen .trait-group-panels{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.game-panel-screen .trait-group{box-sizing:border-box;border:1px solid var(--border-strong);background:#ffffff05;border-radius:14px;min-height:100%;padding:16px}.game-panel-screen .trait-group-panel-title{color:var(--text);margin:0 0 4px;font-size:1.3em}.game-panel-screen .trait-group-sub{color:var(--text-dim);margin:0 0 14px}.game-panel-screen .trait-group.is-open .trait-group-body{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;align-items:start;gap:12px;min-width:0;display:grid}.game-panel-screen .progress-spells{flex-direction:column;display:flex}.game-panel-screen .progress-spells .element-ladders{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.game-panel-screen .progress-professions{overscroll-behavior:contain;flex-direction:column;gap:12px;min-height:0;padding:4px 6px 10px 0;display:flex;overflow-y:auto}.game-panel-screen .profession-intro{color:var(--text-dim);margin:0}.game-panel-screen .profession-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));align-content:start;gap:12px;display:grid}.game-panel-screen .profession-card{border:1px solid var(--border-strong);background:linear-gradient(155deg,#17263bcf,#0b1320d9);border-radius:14px;min-width:0;padding:16px}.game-panel-screen .profession-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.game-panel-screen .profession-head h3{min-width:0;margin:0;font-size:1.1em}.game-panel-screen .profession-level{border:1px solid var(--border);color:var(--accent-strong);font-family:var(--mono);white-space:nowrap;background:#4cc9f015;border-radius:999px;flex:none;padding:4px 8px;font-size:.85em}.game-panel-screen .profession-track{background:#7890b52e;border-radius:999px;height:10px;margin:12px 0 7px;overflow:hidden}.game-panel-screen .profession-fill{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-strong));width:0;height:100%;transition:width .16s linear}.game-panel-screen .profession-fill.is-max{background:linear-gradient(90deg, #f0b429, var(--warn))}.game-panel-screen .profession-detail{min-height:2.6em;color:var(--text-dim);font-family:var(--mono);font-size:.82em}.game-panel-screen .profession-benefit{color:var(--good);margin-top:10px;font-weight:600}.game-panel-screen .profession-description{color:var(--text-dim);margin:8px 0 0;font-size:.9em}.game-panel-screen .profession-craft-methods{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:8px;margin-top:12px;display:grid}.game-panel-screen .profession-craft-method{border:1px solid var(--border);background:#080f1b7a;border-radius:10px;min-width:0;padding:9px 10px}.game-panel-screen .profession-craft-method-head{justify-content:space-between;align-items:center;gap:8px;font-size:.88em;display:flex}.game-panel-screen .profession-craft-method .profession-track{height:7px;margin:8px 0 5px}.game-panel-screen .profession-craft-method .profession-detail{min-height:0;font-size:.75em}.game-panel-screen .recipe-tree{background:radial-gradient(at 15% 0,#4cc9f019,#0000 48%),linear-gradient(145deg,#111d2de8,#0a1019e8);border:1px solid #4cc9f044;border-radius:16px;flex-direction:column;gap:12px;padding:14px;display:flex}.game-panel-screen .recipe-tree-heading h3{margin:0;font-size:1.2em}.game-panel-screen .recipe-tree-heading p{max-width:80ch;color:var(--text-dim);margin:5px 0 0;font-size:.9em;line-height:1.45}.game-panel-screen .recipe-tree-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.game-panel-screen .recipe-tree-filters{flex-wrap:wrap;gap:6px;display:flex}.game-panel-screen .recipe-tree-filter{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:#0b1421c9;border-radius:999px;padding:6px 10px}.game-panel-screen .recipe-tree-filter[aria-pressed=true]{border-color:var(--accent-strong);color:var(--text);background:#4cc9f01c}.game-panel-screen .recipe-tree-station{color:var(--text-dim);align-items:center;gap:7px;font-size:.85em;display:flex}.game-panel-screen .recipe-tree-station select{border:1px solid var(--border);min-width:160px;color:var(--text);font:inherit;background:#080e18;border-radius:9px;padding:7px 9px}.game-panel-screen .recipe-tree-search{border:1px solid var(--border);min-width:160px;max-width:300px;color:var(--text);font:inherit;background:#080e18;border-radius:10px;flex:210px;padding:8px 11px}.game-panel-screen .recipe-tree-legend{color:var(--text-dim);flex-wrap:wrap;gap:6px 14px;font-size:.78em;display:flex}.game-panel-screen .recipe-tree-legend-item{align-items:center;gap:6px;display:inline-flex}.game-panel-screen .recipe-tree-legend-item i{background:var(--good);border-radius:50%;width:8px;height:8px}.game-panel-screen .recipe-tree-legend-item i.is-early{background:var(--warn)}.game-panel-screen .recipe-tree-legend-item i.is-locked{background:#fa6a7a}.game-panel-screen .recipe-tree-levels{flex-direction:column;gap:8px;display:flex}.game-panel-screen .recipe-level{border:1px solid var(--border);background:#09111dcc;border-radius:12px;overflow:hidden}.game-panel-screen .recipe-level[hidden]{display:none}.game-panel-screen .recipe-level>summary{cursor:pointer;background:linear-gradient(90deg,#4cc9f016,#0000);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;list-style-position:inside;display:flex}.game-panel-screen .recipe-level>summary::marker{color:var(--accent-strong)}.game-panel-screen .recipe-level-title{color:var(--text);font-weight:700}.game-panel-screen .recipe-level-count{color:var(--text-dim);font:.78em var(--mono)}.game-panel-screen .recipe-level-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));align-items:start;gap:8px;padding:8px;display:grid}.game-panel-screen .recipe-node-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.game-panel-screen .recipe-node{background:linear-gradient(130deg,#17263b80,#111c2b80);border:1px solid #7890b52b;border-radius:10px;min-width:0;padding:9px;transition:border-color .18s,box-shadow .18s}.game-panel-screen .recipe-node.is-highlighted{border-color:var(--accent-strong);box-shadow:0 0 0 2px #4cc9f044,0 0 22px #4cc9f02b}.game-panel-screen .recipe-node-tier,.game-panel-screen .recipe-node-status{border:1px solid var(--recipe-tier-color,var(--border));min-width:0;color:var(--recipe-tier-color,var(--text-dim));border-radius:999px;padding:3px 7px;font-size:.72em}.game-panel-screen .recipe-node-tier.is-material{color:#b8c8de;border-color:#9bb4d34a}.game-panel-screen .recipe-node-status{color:var(--good);text-align:right;background:#64dc9b12;border-color:#64dc9b40}.game-panel-screen .recipe-node-status.is-risky,.game-panel-screen .recipe-node-status.is-early-safe{color:var(--warn);background:#f2b84b10;border-color:#f2b84b55}.game-panel-screen .recipe-node-status.is-locked{color:#ff98a3;background:#fa6a7a10;border-color:#fa6a7a55}.game-panel-screen .recipe-flow{align-items:center;gap:8px;margin:9px 0;display:flex}.game-panel-screen .recipe-ingredients{flex-wrap:wrap;flex:auto;gap:5px;min-width:0;display:flex}.game-panel-screen .recipe-ingredient{max-width:100%;color:var(--text-dim);white-space:normal;background:#060c14a8;border:1px solid #7890b52c;border-radius:7px;padding:4px 7px;font-size:.75em;line-height:1.25}.game-panel-screen button.recipe-ingredient{color:var(--accent-strong);cursor:pointer}.game-panel-screen button.recipe-ingredient:hover{border-color:var(--accent-strong);background:#4cc9f018}.game-panel-screen .recipe-flow-arrow{color:var(--accent-strong);flex:none;font-size:1.2em}.game-panel-screen .recipe-flow-output{max-width:45%;color:var(--text);background:#4cc9f014;border:1px solid #4cc9f04d;border-radius:8px;flex:none;align-items:center;gap:4px;padding:5px 7px;font-size:.78em;display:flex}.game-panel-screen .recipe-flow-name{overflow-wrap:anywhere}.game-panel-screen .recipe-flow-count{color:var(--accent-strong);font:.82em var(--mono)}.game-panel-screen .recipe-node-requirements{flex-wrap:wrap;gap:5px;display:flex}.game-panel-screen .recipe-requirement{color:var(--text-dim);background:#7890b51a;border-radius:6px;padding:3px 6px;font-size:.7em}.game-panel-screen .guide-section[open]{box-sizing:border-box;width:100%;display:block}.game-panel-screen .guide-rows{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));align-content:start;gap:8px 12px;width:100%;min-width:0;display:grid}.game-panel-screen :is(.shop-tabs,.progress-tabs,.element-bar){flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.game-panel-screen :is(.shop-tab,.progress-tab,.element-chip){min-height:34px;padding:5px 12px}.game-panel-screen .shop-item{border-radius:10px;padding:8px}.game-panel-screen .shop-item-head{flex-wrap:wrap;gap:8px;padding:8px}.game-panel-screen .shop-item-icon{font-size:30px}.game-panel-screen .shop-item-price{font-size:1em}.game-panel-screen .shop-item-detail{padding:8px}.game-panel-screen :is(.shop-buy,.shop-sell-button){width:100%;margin-top:6px;padding:6px 10px;font-size:1em}.game-panel-screen .shop-sell-title{margin-top:8px}.game-panel-screen .shop-gold{font-size:1em}.game-panel-screen .shop-sell>.game-hint{grid-column:1/-1}.game-panel-screen .guide-sections{overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;padding:2px 6px 12px 0;overflow-y:auto}.game-panel-screen .guide-section{border:1px solid var(--border-strong);background:#ffffff04;border-radius:10px;min-width:0;min-height:0;margin:0 0 8px;padding:10px}.game-panel-screen .guide-section[open]{border-color:var(--accent-strong);background:#ffffff07}.game-panel-screen .guide-heading{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:4px;list-style:none;display:flex}.game-panel-screen .guide-heading::-webkit-details-marker{display:none}.game-panel-screen .guide-heading-label{overflow-wrap:anywhere;min-width:0}.game-panel-screen .guide-section>.guide-note{width:100%;max-width:none;margin:8px 0}.game-panel-screen .guide-rows>*{min-width:0}.game-panel-screen .guide-rows>.guide-row{border:1px solid var(--border);border-left:3px solid var(--accent-strong);overflow-wrap:anywhere;background:#ffffff05;border-radius:8px;gap:6px 8px;min-width:0;margin:0;padding:8px 10px}.game-panel-screen .guide-rows>.guide-row:last-child{border-bottom:1px solid var(--border)}.game-panel-screen .guide-rows>.guide-branch{border:1px solid var(--border);background:#ffffff05;border-radius:8px;min-width:0;margin:0;padding:8px}.game-panel-screen :is(.guide-branch>summary,.guide-spell>summary,.guide-spell-body){padding:5px;font-size:1em}.game-panel-screen .guide-branch{margin:6px 0}.game-panel-screen .guide-section{scroll-margin-top:100px}.game-panel-screen .game-diagnostics{border:1px solid var(--border);background:#ffffff05;border-radius:10px;min-width:0;padding:12px}.game-panel-screen .game-diagnostics .kv{border-bottom:1px solid #ffffff12;flex-wrap:wrap;gap:4px 12px;padding:6px 0}.game-panel-screen .game-diagnostics .kv>span{overflow-wrap:anywhere;min-width:0}.game-panel-screen .game-diagnostics .kv>span:last-child{text-align:right}.game-panel-screen .trait-group{min-width:0;margin:0}.game-panel-screen .trait-group.is-open{border-color:var(--accent-strong)}.game-panel-screen .trait-group-icon{font-size:24px}.game-panel-screen .skill-row{border:1px solid var(--border-strong);background:linear-gradient(155deg,#17263bcf,#0b1320d9);border-radius:12px;min-width:0;margin:0;padding:14px;box-shadow:inset 0 1px #ffffff0a}.game-panel-screen .skill-head{align-items:flex-start;gap:8px;min-height:38px}.game-panel-screen .skill-label{flex:auto;min-width:0;font-size:1.05em;font-weight:650;line-height:1.25}.game-panel-screen .skill-level{border:1px solid var(--border);white-space:nowrap;background:#4cc9f015;border-radius:999px;flex:none;padding:3px 7px;font-size:.82em}.game-panel-screen .skill-track{height:8px;margin-top:10px}.game-panel-screen .skill-foot{flex-wrap:wrap;align-items:flex-start;margin:8px 0 12px;font-size:.82em}.game-panel-screen .skill-detail{overflow-wrap:anywhere;flex:120px;min-width:0}.game-panel-screen .skill-uses{border:1px solid var(--border);background:#ffffff06;border-radius:999px;padding:2px 7px}.game-panel-screen .skill-hint{opacity:1;background:#ffffff06;border-radius:8px;padding:8px 9px;font-size:.84em;line-height:1.35}.game-panel-screen .skill-hint+.skill-hint{margin-top:6px}.game-panel-screen .skill-gain{border-left:2px solid var(--accent)}.game-panel-screen .skill-effect{border-left:2px solid var(--good)}.game-panel-screen .element-icon{font-size:28px}.game-panel-screen .element-key{position:static}.game-panel-screen .element-label{max-width:none}.game-panel-screen .element-ladder{padding:10px}.game-panel-screen :is(.element-selected,.element-ladder-head,.element-ladder-level,.element-step,.element-step-cost,.element-step-note,.element-step-mana-warning){font-size:1em}.game-panel-screen .element-step{flex-wrap:wrap;gap:6px;padding:6px 0}.game-panel-screen .element-step-mark{width:24px}.game-panel-screen .element-step-note{white-space:normal;margin-left:0}.game-panel-screen .skill-label{font-size:1em}.game-panel-screen .progress-sheet{overscroll-behavior:contain;flex:auto;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));align-content:start;gap:12px;min-height:0;display:grid;overflow-y:auto}.game-panel-screen .progress-sheet .progress-stat{border:1px solid var(--border-strong);border-left:3px solid var(--accent-strong);background:#ffffff06;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:12px 16px;font-size:1em;display:flex}.game-panel-screen .progress-stat-label{color:var(--text-dim)}.game-panel-screen .progress-stat-value{color:var(--text);font-family:var(--mono);text-align:right;font-size:1.2em;font-weight:700}.panel.game-hud.game-panel-screen.game-help-panel{font-size:clamp(19px,1.87vw,27.5px);overflow-y:auto}.game-panel-screen.game-help-panel .panel-screen-header h2{font-size:clamp(48px,4.5vw,69px)}.game-panel-screen.game-help-panel .game-help-steps{gap:.35em}.game-panel-screen.game-help-panel .game-help-say{margin-top:.8em;padding-top:.6em}.game-panel-screen.game-help-panel .social-hint{margin-top:.6em}.game-panel-screen.game-guide{font-size:clamp(16px,1.15vw,19px);overflow:hidden}.game-panel-screen.game-guide>.guide-note{flex:none}.game-panel-screen.game-guide .guide-section{padding:12px}.game-panel-screen.game-guide .guide-rows{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}.game-panel-screen .social-row{gap:4px;padding:10px}.game-panel-screen .social-rows{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));align-content:start;display:grid}.game-panel-screen .map-canvas{width:min(50vw,65vh,680px);max-width:680px}@media (max-width:700px){.game-panel-screen,.panel.game-hud.game-panel-screen,.panel:not(.game-hud).game-panel-screen{border-radius:12px;padding:0 12px 12px;font-size:15px;inset:6px}.panel-screen-header{gap:8px;padding:8px 0}.panel-screen-close{padding:6px 10px;font-size:15px}.game-panel-screen .inv-equip{grid-template-columns:repeat(3,minmax(0,1fr))}.game-panel-screen .inventory-layout{grid-template-columns:minmax(0,1fr)}.game-panel-screen .inventory-section{padding:10px}.game-panel-screen .inv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-panel-screen .inv-slot{padding:14px 8px}.game-panel-screen .trait-group{padding:12px}.game-panel-screen .trait-group-tab{justify-content:center;padding:6px}.game-panel-screen .trait-group-tab .trait-group-name{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.game-panel-screen .trait-group-tab .trait-group-level{padding:1px 3px;font-size:9px;position:absolute;bottom:1px;right:1px}.game-panel-screen .trait-group.is-open .trait-group-body{grid-template-columns:repeat(2,minmax(0,1fr))}.game-panel-screen .inv-hands{flex-wrap:wrap}.game-panel-screen .inv-count{display:block}.game-panel-screen .guide-section{padding:14px}.game-panel-screen.game-guide .guide-rows,.game-panel-screen .progress-sheet{grid-template-columns:1fr}}@media (max-width:520px){.game-panel-screen .trait-group.is-open .trait-group-body{grid-template-columns:1fr}}@media (max-width:420px){.game-panel-screen .inv-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.game-panel-screen .inv-slot{min-height:68px;padding:5px}.game-panel-screen .inv-kind{font-size:22px}.game-panel-screen .guide-say{margin-left:0;display:block}.panel-screen-header h2{font-size:24px}}@media (prefers-reduced-motion:reduce){.game-panel-screen{scroll-behavior:auto}.game-panel-screen *{transition:none;animation:none}}.account-screen{z-index:40;pointer-events:auto;background:radial-gradient(circle at 50% 35%,#12203a 0%,#070b14 72%);flex-direction:column;justify-content:center;gap:8px;margin:0 0 14px;padding:18px 0 0;display:flex;position:fixed;inset:0;overflow:hidden}.account-language{background:#ffffff0a;border:1px solid #0000;border-radius:8px;width:38px;min-width:38px;padding:5px 4px}.account-language-picker{justify-content:center;gap:10px;margin:0 0 14px;display:flex}.account-language-picker[hidden]{display:none!important}.account-language-flag{border-radius:2px;width:30px;height:20px;display:block;overflow:hidden}.account-language.is-active{border-color:var(--accent-strong);background:#4cc9f02e;box-shadow:0 0 0 2px #4cc9f024}.account-screen[hidden]{display:none!important}.account-card{width:min(440px,100%);max-width:440px;max-height:100%;margin:auto;padding:22px 24px 20px;overflow-y:auto}.account-card.is-creating-character{background:linear-gradient(140deg,#162332,#101523 60%,#191b30);width:min(1180px,100vw - 24px);max-width:1180px;padding:20px 28px}.account-brand{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-strong);text-align:center;justify-content:center;align-items:center;gap:10px;margin:-8px 0 8px;font-size:24px;font-weight:700;display:flex}.account-brand-icon{filter:drop-shadow(0 0 10px #4cc9f073);flex:none;width:40px;height:40px}.account-subtitle{color:var(--text-dim);text-align:center;margin:2px 0 18px;font-size:12px}.account-view[hidden],.account-field[hidden],.account-create[hidden],.account-error[hidden],.account-user-row[hidden],.account-characters[hidden],.account-actions[hidden],.account-field-error:empty{display:none!important}.account-footer{border-top:1px solid var(--border);width:100%;color:var(--text-dim);background:#080d18eb;flex-wrap:wrap;flex:none;justify-content:center;align-items:center;gap:4px 18px;padding:10px 18px 12px;font-size:11.5px;line-height:1.5;display:flex}.account-footer-links{flex-wrap:wrap;align-items:center;gap:4px 18px;display:flex}.account-footer-links a{color:var(--text-dim);border-bottom:1px solid #0000;text-decoration:none}.account-footer-links a:hover,.account-footer-links a:focus-visible{color:var(--accent-strong);border-bottom-color:currentColor}.account-legal-consent{border:1px solid var(--border-strong);color:var(--text);background:#4cc9f012;border-radius:8px;align-items:flex-start;gap:9px;margin:0 0 12px;padding:10px;font-size:12px;line-height:1.45;display:flex}.account-legal-consent[hidden]{display:none!important}.account-legal-consent input{width:16px;height:16px;accent-color:var(--accent-strong);flex:none;margin:1px 0 0}.account-legal-consent label{cursor:pointer}.account-section-title{color:var(--text);margin-bottom:10px;font-size:13px}.account-verification-copy{color:var(--text-dim);margin:0 0 12px;font-size:13px;line-height:1.5}.account-verification-status{color:var(--text-dim);margin:8px 0 12px;font-size:12px}.account-verification-status.is-error{color:var(--bad)}.account-verification-status[hidden]{display:none}.account-tabs{gap:6px;margin-bottom:14px;display:flex}.account-tab{border:1px solid var(--border);color:var(--text-dim);background:#ffffff0a;flex:1;padding:7px 10px}.account-tab.is-active{border-color:var(--border-strong);color:var(--text);background:#4cc9f02e}.account-field{color:var(--text-dim);flex-direction:column;gap:4px;margin-bottom:12px;font-size:12px;display:flex}.account-input{font:inherit;color:var(--text);border:1px solid var(--border-strong);background:#ffffff0f;border-radius:8px;padding:7px 10px;font-size:14px}.account-input:focus{border-color:var(--accent-strong);outline:none;box-shadow:0 0 0 2px #4cc9f040}.account-field-error{color:var(--bad);font-size:11px}.account-error{color:var(--bad);background:#ff6b811a;border:1px solid #ff6b8180;border-radius:8px;margin:4px 0 12px;padding:7px 10px;font-size:12px}.account-primary{border-color:var(--accent-strong);background:#4cc9f047;width:100%;padding:9px;font-size:14px}.account-secondary{border-color:var(--border);color:var(--text-dim);background:#ffffff0d;padding:7px 12px}.account-secondary.is-active{color:var(--text);border-color:var(--border-strong);background:#4cc9f033}.account-sep{border-top:1px solid var(--border);text-align:center;color:var(--text-dim);pointer-events:none;margin:16px 0 12px;font-size:11px}.account-guest-row{gap:8px;display:flex}.account-guest-row .account-input{flex:1;min-width:0}.account-user-row{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.account-user{color:var(--accent-strong);font-size:13px}.account-characters{scrollbar-width:thin;flex-direction:column;gap:6px;max-height:220px;margin:0 0 12px;padding:0;list-style:none;display:flex;overflow-y:auto}.account-character{border:1px solid var(--border);cursor:pointer;background:#ffffff08;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;transition:background .1s linear,border-color .1s linear;display:flex}.account-character:hover{background:#ffffff0f}.account-character.is-selected{border-color:var(--border-strong);background:#4cc9f029}.account-character-color{border:1px solid #ffffff59;border-radius:50%;flex:none;width:14px;height:14px}.account-character-info{flex-direction:column;display:flex}.account-character-name{color:var(--text)}.account-character-meta{color:var(--text-dim);font-size:11px}.account-character-progress{background:#ffffff1f;border-radius:2px;width:100%;max-width:190px;height:4px;margin-top:5px;overflow:hidden}.account-character-progress-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .2s ease-out}.account-empty{color:var(--text-dim);padding:12px 4px;font-size:12px}.account-actions{flex-wrap:wrap;gap:8px;display:flex}.account-actions .account-primary{flex:1;min-width:120px}.account-create{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.account-card.is-creating-character .account-create{border-top:0;margin-top:0;padding-top:8px}.account-create-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);align-items:stretch;gap:32px;display:grid}.account-create-fields{min-width:0}.account-preview{border:1px solid var(--border);background:radial-gradient(at 50% 80%,#284356 0%,#0000 65%),linear-gradient(160deg,#1d2b3d,#0d1421 65%,#23263a);border-radius:18px;height:clamp(340px,49vh,540px);min-height:340px;overflow:hidden}.account-preview-panel{align-self:start;min-width:0;position:sticky;top:0}.account-preview-title{margin:0 0 10px;font-size:20px}.account-preview-controls{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px;display:flex}.account-preview-note{color:var(--text-dim);font-size:12px;line-height:1.5}.account-preview-settings{border:1px solid var(--border);color:var(--text-dim);border-radius:10px;margin-top:12px;padding:10px 12px;font-size:12px}.account-preview-settings summary{cursor:pointer}.account-preview-settings[open] summary{margin-bottom:14px}.account-preview-settings .account-input{max-width:100%}.account-quality-slider{width:100%;accent-color:var(--accent-strong)}.account-create :is(button,input):focus-visible{outline:3px solid var(--accent-strong);outline-offset:3px}.account-preview canvas{width:100%;height:100%;display:block}.account-choices{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.account-swatch{border:2px solid #0000;border-radius:50%;width:36px;height:36px;padding:0}.account-swatch.is-active{border-color:var(--text);box-shadow:0 0 0 2px #4cc9f080}.account-swatch.is-active:after{content:"✓";color:#fff;text-shadow:0 1px 3px #000,0 0 3px #000;font-size:20px}.account-choice{border-color:var(--border);min-height:36px;color:var(--text-dim);background:#ffffff0d;padding:7px 12px;font-size:13px}.account-choice.is-active{color:var(--text);border-color:var(--border-strong);background:#4cc9f038}.account-create-options .account-field{margin-bottom:18px}.account-create-options .account-choices{gap:6px}.account-field-hint{color:var(--text-dim);font-size:12px;line-height:1.5}.account-field-hint:empty{display:none}.account-studio-eyebrow{color:#a3d8d1;letter-spacing:.2em;margin-bottom:10px;font-size:10px;font-weight:700}.account-studio-title{letter-spacing:-.045em;margin:0;font-size:clamp(28px,4vw,42px)}.account-studio-intro{color:var(--text-dim);margin:6px 0 28px;line-height:1.5}.account-studio-presets{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.account-studio-preset{text-align:left;min-height:62px;color:var(--text);padding:20px 8px 10px;position:relative;overflow:hidden}.account-studio-preset:before{content:"";background:linear-gradient(100deg, var(--preset-base) 65%, var(--preset-accent) 65%);height:5px;position:absolute;inset:0 0 auto}.account-studio-tools{justify-content:flex-end;gap:8px;margin:12px 0 24px;display:flex}.account-studio-tabs{border:1px solid var(--border);background:#080f1c80;border-radius:12px;gap:4px;margin-bottom:22px;padding:5px;display:flex}.account-studio-tabs .account-choice{border-radius:8px;flex:1;padding-inline:8px}.account-studio-panel{min-height:290px}.account-studio-panel[hidden]{display:none}.account-choice-color:before{background:var(--choice-color);content:"";vertical-align:-2px;border:1px solid #ffffff50;border-radius:50%;width:14px;height:14px;margin-right:7px;display:inline-block}.account-preview-section{color:var(--text-dim);margin:20px 0 8px;font-size:12px;font-weight:600}.account-preview-section+.account-preview-controls{justify-content:flex-start}.account-create-fields>.account-actions{border-top:1px solid var(--border);background:#101523f5;margin-top:12px;padding:16px 0;position:sticky;bottom:-20px}@media (max-width:620px){.account-card.is-creating-character{padding:12px}}@media (max-width:760px){.account-create-layout{grid-template-columns:1fr}.account-preview{justify-self:center;width:100%;height:340px;min-height:300px}.account-preview-panel{position:static}}.vision-panel{max-width:320px}.vision-panel.is-construction-hidden{display:none!important}.vision-preview-host{margin-bottom:8px;position:relative}.vision-preview-host.is-hidden{display:none}.vision-preview{border:1px solid var(--border);background:#05070d;border-radius:8px;position:relative;overflow:hidden}.vision-preview.is-mirrored{transform:scaleX(-1)}.vision-video{width:100%;height:auto;display:block}.vision-skeleton{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.vision-skeleton.is-standalone{border:1px solid var(--border);background:#040810bf;border-radius:8px;margin-bottom:8px;position:static}.vision-timeline-note{color:var(--text-dim);font-size:12px}.vision-head{justify-content:space-between}.vision-warning{color:var(--warn);margin-bottom:6px;font-size:12px}.vision-warning.is-hidden{display:none}.vision-calibration{border:1px solid var(--border-strong);background:#4cc9f014;border-radius:8px;margin-bottom:8px;padding:8px 10px}.vision-calibration.is-hidden{display:none}.vision-calibration-message{color:var(--text);margin-bottom:6px;font-size:13px}.vision-calibration-message.is-warning{color:var(--warn);font-weight:600}.vision-calibration .vision-bar-fill{transition:width .12s linear}.vision-gesture{color:var(--text-dim);font-size:12px}.vision-gesture.is-fire{color:var(--good);font-weight:600}.vision-gesture.is-recording{color:var(--bad);font-weight:600}.vision-meter{color:var(--text-dim);grid-template-columns:74px 1fr 40px;align-items:center;gap:6px;margin-top:4px;font-size:12px;display:grid}.vision-meter .value{font-family:var(--mono);color:var(--accent-strong);text-align:right}.vision-bar{background:#ffffff14;border-radius:999px;height:8px;position:relative;overflow:hidden}.vision-bar-fill{background:linear-gradient(90deg, #4cc9f0b3, var(--accent-strong));border-radius:999px;width:0;height:100%;transition:width 90ms linear}.vision-scores{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:3px 12px;display:grid}.vision-score-row{color:var(--text-dim);grid-template-columns:auto minmax(0,1fr) 34px;align-items:center;gap:6px;font-size:11px;display:grid}.vision-score-label{white-space:nowrap}.vision-score-row .value{font-family:var(--mono);text-align:right}.vision-section{border-top:1px solid var(--border);margin-top:10px;padding-top:8px;font-size:12px}.vision-section>summary{cursor:pointer;color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px}.vision-section button{padding:4px 8px;font-size:11px}.vision-train-buttons{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:4px;display:grid}.vision-train-buttons button{overflow-wrap:anywhere;line-height:1.25}.vision-hint-text,.vision-features .kv{color:var(--text-dim);font-size:11px}.vision-file{color:var(--text-dim);max-width:100%;font-size:11px}.voice-panel{max-width:320px}.voice-panel .row+.row{margin-top:2px}.voice-panel .vision-meter{margin:1px 0}.voice-details{margin-top:4px}.voice-details summary{color:var(--text-dim,#9fb0c8);cursor:pointer;font-size:11px}.voice-panel .vision-meter.is-wide{grid-template-columns:74px 1fr 46px}.vision-bar-fill.is-loud{background:linear-gradient(90deg,#2f9e6a,#6ee7a8)}.vision-bar-fill.is-partial{background:linear-gradient(90deg,#9e7a2f,#e7c86e)}.voice-transcript,.voice-action{font-variant-numeric:tabular-nums;color:var(--text-dim,#9fb0c8)}.voice-transcript{word-break:break-word;font-style:italic}.voice-action.is-fire{color:var(--accent,#7ee0c0);font-weight:600}.voice-words{flex-wrap:wrap;gap:4px;display:flex}.voice-word{border:1px solid var(--border,#23324a);white-space:nowrap;background:#ffffff0a;border-radius:999px;padding:2px 6px;font-size:11px}.first-run-tutorial{z-index:30;width:min(520px,100vw - 32px);color:var(--text);pointer-events:auto;background:#09121be6;border:1px solid #85eadb8c;border-radius:12px;padding:14px 18px;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #00000057}.first-run-tutorial[hidden]{display:none}.first-run-progress{color:#93eee1;letter-spacing:.12em;font-size:10px;font-weight:700}.first-run-tutorial h2{margin:5px 0;font-size:17px}.first-run-tutorial p{color:var(--text-dim);margin:0;font-size:13px;line-height:1.4}@media (max-width:640px){.first-run-tutorial{padding:10px 12px;bottom:8px}}.land-panel.construction-editor{z-index:35;pointer-events:none;width:auto;max-width:none;box-shadow:none;background:0 0;border:0;padding:0;position:fixed;inset:6vh 3vw}.land-panel.construction-editor>button{display:none}body:has(.construction-editor) .game-stats{display:none}.construction-editor>div{pointer-events:auto;background:#0c1620f5;border:2px solid #79d8cc;border-radius:1rem;width:min(36vw,520px);max-height:86vh;padding:1.5rem;font-size:clamp(1rem,1.3vw,1.3rem);line-height:1.5;position:absolute;top:0;right:0;overflow:auto;box-shadow:0 12px 48px #0009}.construction-editor h2{margin-top:0;font-size:1.6rem}.land-panel.construction-editor p{font-size:inherit}.land-panel.construction-editor button,.land-panel.construction-editor select,.land-panel.construction-editor input[type=number]{min-height:48px;font-size:inherit;margin:.35rem .15rem;padding:.6rem}.construction-editor select{max-width:100%}.land-material-stock{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.4rem;margin:.5rem 0;display:grid}.land-material-stock>span{background:#79d8cc14;border:1px solid #42616f;border-radius:.45rem;padding:.4rem .55rem;font-size:.82em;line-height:1.25}.construction-plan-actions{flex-wrap:wrap;gap:.5rem;display:flex}.construction-editor label{padding:.8rem 0;display:block}@media (max-width:760px){.land-panel.construction-editor{inset:2vh 2vw}.construction-editor>div{width:min(58vw,440px);max-height:92vh;padding:.75rem}}
