:root{--auto-semi:#22c55e;--auto-semi-text:#86efac;--auto-full:#38bdf8;--auto-full-text:#7dd3fc;--wood-deep:#1a120c;--wood-dark:#22180f;--wood:#2b1f17;--wood-raised:#3a2a1e;--wood-hover:#4a3624;--wood-edge:#5e4630;--wood-edge-2:#7a5c38;--gold:#b08a48;--gold-bright:#f2cf7a;--bronze:#8a6a2e;--bronze-hover:#a47e38;--frame-outline:#4a3220;--corner:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 1 11 6 6 11 1 6Z' fill='%232b1f17' stroke='%23c9a45c' stroke-width='1.6'/%3E%3C/svg%3E");--panel:#2b1f17f0;--panel-edge:#b08a4899;--text:#ece4d0;--muted:#a89f8a;--accent:#fbbf24;--hp:#3fbf5a;--wear-up:#4ade80;--wear-down:#f87171;--exp:#c084fc;--edge-top:max(12px, env(safe-area-inset-top));--edge-right:max(12px, env(safe-area-inset-right));--edge-bottom:max(12px, env(safe-area-inset-bottom));--edge-left:max(12px, env(safe-area-inset-left));--frame-x:0px;--battle-edge-right:calc(var(--edge-right) + var(--frame-x));--battle-edge-left:calc(var(--edge-left) + var(--frame-x));color:var(--text);font-family:system-ui,Noto Sans Thai,sans-serif}@media (aspect-ratio>=16/9) and (width>=1100px){:root{--frame-x:max(0px, (100vw - 100vh * 16 / 9) / 2)}}*{box-sizing:border-box;scrollbar-color:var(--wood-edge-2) var(--wood-deep)}html,body{background:var(--wood-deep);overscroll-behavior:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;height:100%;margin:0;overflow:hidden}.chat-log,input,textarea{-webkit-user-select:text;user-select:text}#game{touch-action:none;position:fixed;inset:0}.rotate{z-index:1000;background:var(--wood-deep);color:var(--text);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;font-size:18px;display:flex;position:fixed;inset:0}.rotate-icon{font-size:56px;transform:rotate(90deg)}[hidden]{display:none!important}button{font:inherit;color:var(--text);background:var(--wood-raised);border:1px solid var(--wood-edge);cursor:pointer;border-radius:6px;padding:8px 14px;transition:background-color .15s,border-color .15s}button:hover:not(:disabled){background:var(--wood-hover);border-color:var(--gold)}.hud,.quest-tracker,.minimap,.panel,.window-card,.dialogue,.battle-panel,.modal-card,.player-menu,.party-invite,.toast,.chat{outline:1px solid var(--frame-outline);outline-offset:2px}.chat:before,.quest-tracker:before,.minimap:before,.dialogue:before,.battle-panel:before{content:"";pointer-events:none;background:var(--corner) left top / 12px no-repeat, var(--corner) right top / 12px no-repeat, var(--corner) left bottom / 12px no-repeat, var(--corner) right bottom / 12px no-repeat;position:absolute;inset:-7px}button:disabled{opacity:.4;cursor:default}button[aria-pressed=true]{outline:2px solid var(--accent)}small{color:var(--muted);font-size:.8em}.hud-column{top:var(--edge-top);left:var(--edge-left);max-height:calc(100vh - var(--edge-top) - var(--edge-bottom) - 8px - var(--chat-height,0px));flex-direction:column;gap:8px;display:flex;position:fixed}.hud{background:var(--panel);border:2px solid var(--gold);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:6px;width:250px;min-height:0;padding:10px 12px;font-size:13px;overflow-y:auto}.hud-title{justify-content:space-between;margin-bottom:6px;display:flex}.hud-name{font-weight:600}.hud-level{color:var(--accent)}.bar{grid-template-columns:30px 1fr 74px;align-items:center;gap:6px;margin:3px 0;display:grid}.bar-label{color:var(--muted);font-size:11px}.bar-track{background:#00000080;border-radius:4px;height:8px;overflow:hidden}.bar-fill{height:100%;transition:width .2s}.bar-fill.hp{background:var(--hp)}.bar-fill.exp{background:var(--exp)}.bar-text{text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.hud-beast{color:var(--muted);margin-top:6px;font-size:12px}:root{--battle-row:30px}.battle-panel{right:var(--battle-edge-right);bottom:var(--edge-bottom);width:min(300px, calc(50vw - var(--battle-edge-right)));height:calc(5 * var(--battle-row) + 20px);box-sizing:border-box;background:var(--panel);border:2px solid var(--gold);border-radius:6px;flex-direction:column;padding:8px 10px;display:flex;position:fixed}.battle-top{top:var(--edge-top);max-width:calc(100vw - 2 * var(--battle-edge-left) - 120px);background:var(--panel);border:1.5px solid var(--gold);white-space:nowrap;border-radius:999px;align-items:center;gap:12px;padding:4px 16px;font-size:13px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.battle-prompt{text-overflow:ellipsis;font-weight:600;overflow:hidden}.battle-timer{color:var(--accent);font-variant-numeric:tabular-nums}.battle-timer:empty{display:none}.battle-auto{top:var(--edge-top);right:var(--battle-edge-right);white-space:nowrap;border-radius:999px;min-height:36px;padding:0 12px;font-size:13px;position:fixed}.battle-auto.on{border-color:var(--auto-full);color:var(--auto-full-text);box-shadow:0 0 0 2px color-mix(in srgb, var(--auto-full) 35%, transparent)}.battle-auto.semi{border-color:var(--auto-semi);color:var(--auto-semi-text);box-shadow:0 0 0 2px color-mix(in srgb, var(--auto-semi) 35%, transparent)}.battle-actions{flex:1;grid-template-rows:repeat(4,1fr);grid-template-columns:1fr 1fr;grid-auto-flow:column;column-gap:6px;min-height:0;display:grid}.battle-log{min-height:0;color:var(--muted);flex-direction:column;flex:1;justify-content:flex-end;gap:2px;font-size:13px;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 1.4em);mask-image:linear-gradient(#0000,#000 1.4em)}.battle-panel:not([data-mode=commands]) .battle-actions,.battle-panel:not([data-mode=log]) .battle-log{display:none}.modal{background:#0a060399;place-items:center;display:grid;position:fixed;inset:0}.modal-card{background:var(--wood);border:2px solid var(--gold);border-radius:8px;gap:12px;width:min(380px,100vw - 32px);padding:20px;display:grid}.result-tower{gap:8px;display:grid}.modal-card h1,.modal-card h2{margin:0}.subtitle{color:var(--muted);margin:0}.modal-card label{gap:4px;display:grid}.modal-card input[type=text],.modal-card input:not([type]){font:inherit;border:1px solid var(--wood-edge);background:var(--wood-dark);color:var(--text);border-radius:6px;padding:8px}fieldset{border:1px solid var(--wood-edge);border-radius:8px;grid-template-columns:1fr 1fr;gap:6px;display:grid}.element{grid-auto-flow:column;align-items:center;gap:6px;display:flex!important}.element.earth{color:#e0b070}.element.water{color:#7db4ff}.element.fire{color:#ff8a75}.element.wind{color:#6fdca5}.error{color:#fca5a5;min-height:1.2em;margin:0}.success{color:#86efac;margin:0}.stack{gap:8px;display:grid}.row{flex-wrap:wrap;gap:8px;display:flex}.row>input{flex:120px}.modal-card.wide{width:min(520px,100vw - 32px);max-height:calc(100vh - 32px);overflow-y:auto}.modal-card h3{margin:4px 0 0;font-size:15px}.modal-card input[type=password],.row>input{font:inherit;border:1px solid var(--wood-edge);background:var(--wood-dark);color:var(--text);border-radius:6px;padding:8px}button.primary{color:#fff8e6;background:var(--bronze);border-color:var(--gold)}button.primary:hover:not(:disabled){background:var(--bronze-hover)}button.link{color:var(--muted);background:0 0;border:none;justify-self:start;padding:0}.hero-list{color:var(--muted);gap:8px;display:grid}.hero-card{background:var(--wood-raised);border-left:4px solid var(--accent);color:var(--text);border-radius:6px;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px;display:grid}#select .modal-card.wide,#create .modal-card.wide{width:min(860px,100vw - 32px);max-height:calc(100vh - 32px);overflow-y:auto}.element-cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.element-warning{color:#fcd34d;grid-column:1/-1;margin:0;font-size:13px}.modal-card label.element-card{border:1px solid var(--wood-edge);border-top:4px solid var(--element);background:var(--wood-raised);cursor:pointer;border-radius:6px;flex-direction:column;gap:6px;padding:8px;font-size:12px;display:flex}.element-card:has(input:checked){outline:2px solid var(--element)}.element-head{flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;display:flex}.element-role{color:var(--muted);font-size:12px}.element-pattern{margin:0;font-style:italic}.element-pros,.element-cons{margin:0;padding:0;list-style:none}.element-pros{color:#86efac}.element-cons{color:#fca5a5}.element-matchups{color:var(--muted)}.starter-picks{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px;display:grid}.modal-card label.starter-pick{background:var(--wood-raised);border-radius:6px;grid-template-columns:auto 1fr;column-gap:6px;padding:6px;display:grid}.starter-pick small{color:var(--muted);grid-column:2}#create-starters legend{grid-column:1/-1}.battle-actions button,.battle-submenu button{text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:1px solid #0000;border-radius:4px;min-height:0;padding:0 6px 0 20px;font-size:14px;position:relative;overflow:hidden}.battle-actions button:hover:not(:disabled),.battle-submenu button:hover:not(:disabled){background:var(--wood-hover);border-color:#0000}.battle-actions button.cursor:before,.battle-submenu button.cursor:before{content:"▶";color:var(--accent);position:absolute;left:4px}.battle-actions button[aria-pressed=true],.battle-submenu button[aria-pressed=true]{color:var(--accent);outline:none}.battle-submenu{flex-direction:column;flex:1;min-height:0;padding-right:36px;display:flex;overflow-y:auto}.battle-submenu button{height:var(--battle-row);flex:none}.battle-back{width:32px;height:30px;min-height:0;padding:0;font-size:16px;position:absolute;top:6px;right:6px}.battle-actions button[aria-disabled=true],.battle-submenu button[aria-disabled=true]{opacity:.4}.battle-aim{flex-direction:column;flex:1;gap:4px;min-height:0;padding-right:36px;font-size:13px;display:flex}.battle-hint{max-height:2lh;color:var(--accent);flex:none;overflow:hidden}.battle-targets{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.battle-targets button{height:var(--battle-row);text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;flex:none;align-items:center;gap:8px;min-height:0;padding:0 6px;font-size:14px;display:flex}.battle-targets button.cursor:before{content:"▶";color:var(--accent)}.battle-targets button[aria-pressed=true]{color:var(--accent);border-color:var(--gold);outline:none}.battle-targets .target-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.battle-targets .bar-track{flex:none;width:56px;display:block}.battle-targets .bar-fill{display:block}.battle-submenu,.battle-targets{overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}.battle-name{box-sizing:border-box;background:var(--panel);border:2px solid var(--gold);width:170px;height:24px;color:var(--accent);white-space:nowrap;text-overflow:ellipsis;border-bottom:none;border-radius:6px 6px 0 0;padding:2px 12px;font-size:13px;font-weight:600;line-height:20px;position:absolute;bottom:100%;left:12px;overflow:hidden}.battle-name:empty{visibility:hidden}.battle-own{left:var(--battle-edge-left);bottom:var(--edge-bottom);box-sizing:border-box;background:var(--panel);border:2px solid var(--gold);border-radius:6px;grid-template-columns:minmax(0,1fr);gap:6px;width:190px;padding:6px 10px;font-size:12px;display:grid;position:fixed}.battle-own:empty{display:none}.own-unit-name{font-variant-numeric:tabular-nums;justify-content:space-between;gap:6px;display:flex}.own-unit-name>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.own-unit.acting .own-unit-name>span:first-child:before{content:"▶ ";color:var(--accent)}.own-unit.down{opacity:.5}.own-unit .bar-track,.own-unit .bar-fill{display:block}.own-unit .bar-track{margin-top:2px}.turn-bar{left:var(--battle-edge-left);top:var(--edge-top);max-height:calc(100vh - var(--edge-top) - var(--edge-bottom) - 140px);box-sizing:border-box;background:var(--panel);border:2px solid var(--gold);border-radius:6px;flex-direction:column;align-items:center;gap:3px;padding:4px;display:flex;position:fixed;overflow:hidden}.turn-head{color:var(--muted);text-align:center;width:40px;font-size:10px;line-height:12px}.turn-head+.turn-list{margin-bottom:2px}.turn-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.turn-list.next .turn-slot{opacity:.8}.turn-slot{box-sizing:border-box;background:var(--wood-deep);border:2px solid #c25a4e;border-radius:6px;width:36px;height:36px;transition:opacity .2s,transform .2s;position:relative}.turn-slot[data-side=allies]{border-color:#4fae6a}.turn-slot.own{border-color:var(--gold-bright)}.turn-face{width:100%;height:100%;color:var(--wood-deep);background-position:top;background-size:cover;border-radius:4px;place-items:center;font-size:15px;font-weight:700;display:grid}.turn-slot[data-side=enemies] .turn-face{transform:scaleX(-1)}.turn-slot[data-side=enemies] .turn-face:not([style*=url]){transform:none}.turn-slot.acted{opacity:.35;filter:grayscale(.8)}.turn-slot.current{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent);animation:.9s ease-in-out infinite alternate turn-current;transform:scale(1.08)}@keyframes turn-current{to{box-shadow:0 0 6px 3px var(--accent)}}.turn-warn{color:#ffd23f;background:#2a1a10;border:1.5px solid #ffd23f;border-radius:50%;place-items:center;width:17px;height:17px;font-size:11px;line-height:1;display:grid;position:absolute;top:-7px;right:-7px}.turn-slot.warned{border-color:#ffd23f}.turn-bar[data-compact] .turn-slot{width:32px;height:32px}.turn-slot.round-start{margin-top:5px}.turn-slot.round-start:before{content:"";border-top:2px solid var(--gold);position:absolute;top:-6px;left:0;right:0}@media (prefers-reduced-motion:reduce){.turn-slot{transition:none}.turn-slot.current{animation:none;transform:none}}.dialogue{background:var(--panel);border:2px solid var(--gold);z-index:12;border-radius:6px;gap:8px;width:min(480px,100vw - 32px);padding:12px 14px;display:grid;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.dialogue-portrait{aspect-ratio:2/3;z-index:12;pointer-events:none;filter:drop-shadow(0 4px 8px #0000008c);width:clamp(0px,50vw - 256px,200px);position:fixed;bottom:0;right:calc(50% + 248px)}.dialogue-head{align-items:baseline;gap:8px;display:flex}.dialogue-head .dialogue-close{align-self:flex-start;margin-left:auto;padding:0}.panel-close,.window-close,.dialogue-close{min-width:44px;min-height:44px}.joystick{pointer-events:none;border:2px solid var(--panel-edge);z-index:15;background:#1a120c73;border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:fixed}.joystick-knob{pointer-events:none;background:#f1f5f98c;border-radius:50%;width:52px;height:52px}.zen-toggle{right:var(--edge-right);bottom:var(--edge-bottom);background:var(--panel);opacity:.75;border-radius:50%;width:44px;height:44px;padding:0;position:fixed}.zen-toggle[aria-pressed=true]{opacity:.45;outline:none}.dialogue-text{white-space:pre-line;color:var(--text);margin:0}.hud-menu{top:var(--edge-top);right:calc(var(--edge-right) + 12px + var(--minimap-width,0px));max-width:calc(100vw - var(--edge-left) - var(--edge-right) - 274px - var(--minimap-width,0px));z-index:10;flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex;position:fixed}.hud-menu button,button.hud-auto{color:#d8c9a8;background:#2b1f17e6;border:1px solid #8a6a38;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:58px;min-height:58px;padding:5px 2px 4px;display:flex;position:relative}.hud-menu button:hover:not(:disabled),button.hud-auto:hover:not(:disabled){background:#4a3624;border-color:#e0b860}button.hud-auto{right:var(--edge-right);z-index:10;position:fixed;top:60%}button.hud-recall{top:calc(60% - 66px)}#hud-recall .menu-glyph{image-rendering:pixelated;background-image:url(/ui/icon-recall.svg)}button.hud-recall:disabled{opacity:.45;cursor:default}button.hud-recall.casting{border-color:#7fd4ff;box-shadow:0 0 10px #7fd4ff}.recall-bar{z-index:30;pointer-events:none;color:#fff;text-align:center;text-shadow:0 1px 2px #000;background:#0d1a2bd9;border:1px solid #7fd4ff;border-radius:4px;width:min(240px,60vw);height:20px;font-size:12px;line-height:18px;position:fixed;top:62%;left:50%;overflow:hidden;transform:translate(-50%)}.recall-bar-fill{transform-origin:0;animation:recall-fill var(--recall-ms,5s) linear forwards;background:linear-gradient(90deg,#2a7fc9,#9be3ff);position:absolute;inset:0}.recall-bar[hidden] .recall-bar-fill{animation:none}.recall-bar-text{position:relative}@keyframes recall-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.menu-glyph{font-size:24px;line-height:1}.menu-label{white-space:nowrap;font-size:11px;line-height:1.2}.hud-menu .badge{position:absolute;top:-6px;right:-6px}.hud-menu #hud-settings{position:absolute;top:calc(100% + 8px);right:0}@keyframes menu-item-out{to{opacity:0;transform:translate(28px)scale(.5)}}@keyframes menu-item-in{0%{opacity:0;transform:translate(28px)scale(.5)}}.hud-menu.folding .menu-item{animation:menu-item-out .18s ease-in calc(var(--i,0) * 30ms) both}.hud-menu.opening .menu-item{animation:menu-item-in .22s ease-out calc(var(--i,0) * 30ms) both}@keyframes menu-item-fade-out{to{opacity:0}}@keyframes menu-item-fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.hud-menu.folding .menu-item{animation-name:menu-item-fade-out}.hud-menu.opening .menu-item{animation-name:menu-item-fade-in}}.hud-menu.folded .menu-item,.hud-menu:not(.folded) #hud-menu-badge{display:none}.badge{background:var(--accent);min-width:1.5em;color:var(--wood-deep);border-radius:9px;padding:0 5px;font-size:.8em;font-weight:700;display:inline-block}.panel{top:var(--edge-top);right:var(--edge-right);bottom:var(--edge-bottom);width:min(420px, calc(100vw - var(--edge-left) - var(--edge-right)));background:var(--panel);border:2px solid var(--gold);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20;border-radius:6px;padding:12px 16px 16px;animation:.2s cubic-bezier(.2,.8,.3,1) panel-in;position:fixed;overflow-y:auto}@keyframes panel-in{0%{opacity:0;transform:translate(24px)}}@media (prefers-reduced-motion:reduce){.panel{animation-name:window-fade-in}}.panel.wide{width:min(760px,100vw - 24px)}.panel-head{align-items:center;gap:12px;display:flex}.panel-head h2{flex:1;margin:0;font-size:1.15em}.panel h3{color:var(--muted);margin:14px 0 6px;font-size:.95em}.panel-close{padding:4px 10px}.tabs{flex-wrap:wrap;gap:6px;margin:10px 0}.tab{padding:4px 10px;font-size:.85em}.tab.active{outline:2px solid var(--accent)}.unit-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:8px;display:flex}.fielding{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:8px 0;display:flex}.fielding .hint{flex-basis:100%}.fielded-tag{color:var(--accent)}.formation-shapes{flex-wrap:wrap;gap:6px;margin:0 0 8px}.formation-gap{height:64px}.formation-movers{flex-wrap:wrap;gap:6px;margin:6px 0 10px}.formation-stage{border:1px solid var(--panel-edge);border-radius:8px;grid-template-columns:64px 64px 1fr;justify-content:center;gap:4px 8px;padding:8px 10px;display:grid}.formation-head{text-align:center;color:var(--muted)}.formation-foe{color:#b8401d;grid-area:1/3/span 4;align-self:center;font-weight:700}.formation-line{grid-column:1/span 2;grid-template-columns:64px 64px;gap:8px;display:grid}.formation-line[data-col="1"]{transform:translate(4px)}.formation-line[data-col="3"]{transform:translate(-4px)}.formation-cell{border:1px dashed var(--panel-edge);background:#3a2a1e1f;border-radius:8px;place-items:end center;height:64px;padding:2px;display:grid;position:relative}.formation-cell.taken{border-style:solid}.formation-cell.mine,.formation-cell.mine:disabled{opacity:1;border-color:var(--accent);box-shadow:0 0 8px #fbbf2499}.formation-figure{object-fit:contain;max-width:100%;height:54px;image-rendering:pixelated;font-weight:700;display:block}.formation-mark{color:var(--accent);font-size:.7em;font-weight:800;position:absolute;top:1px;left:4px}ol.roster{gap:6px;margin:0;padding:0;list-style:none;display:grid}.roster-row{border:1px solid var(--panel-edge);border-radius:8px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:2px 8px;padding:6px 8px;display:grid}.roster-row.fielded{border-color:var(--accent)}.roster-face{grid-row:1/span 2;place-items:center;height:44px;display:grid}.roster-face .formation-figure{height:40px}.roster-text{flex-direction:column;min-width:0;display:flex}.roster-row .fielding{margin:0}.points{color:var(--accent);font-weight:600}.auto-stats{margin:6px 0}.auto-stats label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.auto-stats .hint{margin:2px 0 0}.element-tag{text-transform:capitalize;background:var(--wood-hover);border-radius:6px;padding:0 6px;font-size:.8em}.element-tag.earth{background:#8b5e34}.element-tag.water{background:#1d6fb8}.element-tag.fire{background:#b8401d}.element-tag.wind{background:#2f8f5b}table.stats{border-collapse:collapse;width:100%}table.stats+.champion-talent{padding:6px 6px 0}table.stats th{text-align:left;color:var(--muted);font-weight:500}table.stats td,table.stats th{border-bottom:1px solid var(--panel-edge);padding:4px 6px}button.plus{padding:2px 10px;font-weight:700}ol.slots{gap:4px;margin:0;padding:0;list-style:none;display:grid}.slot{border:1px solid var(--panel-edge);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;display:flex}.slot.signature{border-color:var(--accent)}.equip-sheet{grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);align-items:stretch;gap:6px;display:grid}.equip-side{grid-template-rows:repeat(3,auto);align-content:start;gap:6px;margin:0;padding:0;list-style:none;display:grid}.worn{align-items:center;gap:6px;min-width:0;display:flex}.equip-side.right .worn{text-align:right;flex-direction:row-reverse}.worn-icon{background:var(--win-bg-2);border:1px solid var(--win-edge-2);border-radius:8px;flex:none;place-items:center;width:44px;height:44px;display:grid;position:relative}button.worn-icon{cursor:pointer;min-height:0;padding:0}.worn{cursor:pointer}.worn:hover .worn-icon,.worn.picking .worn-icon{border-color:var(--accent)}.worn.picking .worn-icon{outline:2px solid var(--accent)}.worn-icon[data-grade=fine]{box-shadow:inset 0 0 0 2px #4ade80}.worn-icon[data-grade=rare]{box-shadow:inset 0 0 0 2px #60a5fa}.worn-icon[data-grade=legendary]{box-shadow:inset 0 0 0 2px #facc15}.worn-icon.empty{opacity:.45;filter:grayscale();border-style:dashed;font-size:20px}.worn-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.equip-side.right .worn-text{align-items:flex-end}.worn-slot{color:var(--muted);font-size:.72em}.worn-name{text-shadow:0 0 2px #1a120ce6,0 1px 1px #1a120ce6;overflow-wrap:anywhere;font-size:.85em;font-weight:600}.worn-none{color:var(--muted)}.worn-text button.link{padding:0;font-size:.75em}.equip-figure{border:1px solid var(--panel-edge);background:radial-gradient(40px 8px at 50% calc(100% - 12px),#00000040,#0000);border-radius:8px;place-items:end center;min-height:150px;padding-bottom:10px;display:grid}.equip-figure img{object-fit:contain;object-position:bottom;max-width:100%;height:130px;image-rendering:pixelated;display:block}.auto-wear{cursor:pointer;align-items:center;gap:6px;margin:0 0 6px;display:flex}.wear-picker{border:1px solid var(--accent);border-radius:8px;margin-top:8px;padding:6px 8px}.wear-head{flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin-bottom:6px;display:flex}.wear-against{min-width:0;color:var(--muted);flex:1;font-size:.85em}.wear-head button.link{padding:0;font-size:.8em}.wear-list{gap:6px;max-height:230px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.wear-option{align-items:center;gap:8px;min-width:0;display:flex}.wear-text{flex:1;min-width:0;line-height:1.25}.wear-change{flex-wrap:wrap;gap:0 8px;font-size:.8em;font-weight:600;display:flex}.wear-up{color:var(--wear-up)}.wear-down{color:var(--wear-down)}.wear-same{color:var(--muted);font-weight:400}.wear-button{flex:none;min-height:0;padding:4px 8px;font-size:.85em}.wear-locked{margin:6px 0 0}.tome-mark{border:1px solid var(--accent);color:var(--accent);white-space:nowrap;border-radius:999px;margin-left:6px;padding:0 6px;font-size:.78em}.tome-warning{color:#f59e0b;margin-top:3px;font-weight:600;display:block}.slot button{padding:3px 10px;font-size:.85em}button.danger{background:#b91c1c}button.link{color:var(--muted);background:0 0;border:none;padding:2px 4px;text-decoration:underline}.hint{color:var(--muted);font-size:.9em}.tree{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:10px;display:grid}.tree-rows{background:color-mix(in srgb, var(--element) 16%, var(--wood-deep));border:1px solid color-mix(in srgb, var(--element) 50%, transparent);border-radius:10px;gap:5px;padding:6px;display:grid}.tree-row{background:color-mix(in srgb, var(--element) 8%, var(--wood-dark));border:1px solid color-mix(in srgb, var(--element) 35%, var(--wood-edge-2));border-radius:8px;grid-template-columns:3.2em minmax(0,1fr);align-items:start;gap:6px;padding:4px;display:grid}.tree-level{text-align:center;white-space:nowrap;color:#fde68a;background:color-mix(in srgb, var(--element) 55%, var(--wood-dark));border:1px solid var(--gold);border-radius:5px;padding:3px 2px;font-size:.78em;font-weight:700}.tree-row.locked{background:var(--wood-dark)}.tree-row.locked .tree-level{filter:grayscale();opacity:.6}.tree-boxes{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.tree-node{text-align:center;background:var(--wood-deep);border:2px solid var(--wood-edge-2);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:8px;flex-direction:column;flex:0 calc(33.3333% - 4px);align-items:center;gap:3px;min-width:6.5em;padding:6px 4px 5px;font-size:.8em;line-height:1.2;display:flex;position:relative}.tree-node:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tree-kind{color:var(--element);font-size:.85em;position:absolute;top:3px;right:5px}.tree-glyph{width:40px;height:40px;color:var(--element);background:var(--wood-dark);border-radius:4px;place-items:center;font-size:20px;display:grid;box-shadow:0 0 0 1px #0000008c}.tree-text{flex-direction:column;align-items:center;min-width:0;max-width:100%;display:flex}.tree-name{overflow-wrap:anywhere;font-weight:600}.tree-th{color:var(--muted);font-size:.9em}.tree-line{color:color-mix(in srgb, var(--element) 35%, var(--muted));font-size:.85em}.tree-node .rank-pips{flex-wrap:wrap;justify-content:center;gap:1px}.tree-node .pip{width:5px;height:5px}.tree-node .rank-count{margin-left:3px}.tree-wait{white-space:nowrap;color:var(--muted);font-size:.9em}.tree-node.owned{background:color-mix(in srgb, var(--element) 45%, var(--wood-deep));border-color:color-mix(in srgb, var(--element) 70%, #fde68a)}.tree-node.owned .tree-kind{color:#fde68a}.tree-node.maxed{border-color:var(--gold-bright)}.tree-node.buyable{box-shadow:0 0 0 2px #fbbf2473}.tree-node.locked{color:var(--muted);border-style:dashed}.tree-node.locked .tree-kind,.tree-node.locked .tree-glyph{opacity:.6}.tree-node.selected{outline:2px solid var(--text);outline-offset:1px}.tree-detail{background:var(--wood-deep);border:1px solid var(--wood-edge-2);border-left:4px solid color-mix(in srgb, var(--element) 60%, var(--wood-edge-2));border-radius:8px;gap:3px;padding:6px 8px;display:grid;position:sticky;top:0}.tree-detail.owned{background:color-mix(in srgb, var(--element) 16%, var(--wood-deep));border-left-color:var(--element)}.tree-detail.maxed{border-color:var(--gold)}.rank-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;display:flex}.rank-pips{align-items:center;gap:2px;display:inline-flex}.pip{border:1px solid var(--wood-edge-2);background:var(--wood-dark);border-radius:50%;width:8px;height:8px}.pip.on{background:var(--accent);border-color:var(--gold-bright)}.rank-count{color:var(--gold-bright);margin-left:4px;font-size:.85em}.tree-meta,.rank-level{color:var(--muted);font-size:.8em}.rank-level.too-low{opacity:.6}.rank-next{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.rank-next button.plus{padding:3px 10px;font-size:.85em}.rank-extras{color:var(--muted);margin:0;padding:0;font-size:.8em;list-style:none}.rank-extra.owned{color:#fde68a}.tree-detail>button.equip{justify-self:start;padding:3px 10px;font-size:.85em}@media (width<=520px){.tree{grid-template-columns:minmax(0,1fr)}}body.short-screen .tree{grid-template-columns:minmax(0,1fr);gap:6px}body.short-screen .tree-node{padding:4px 3px 3px;font-size:.74em}body.short-screen .tree-detail{font-size:.9em;position:static}.tree.preview{background:color-mix(in srgb, var(--element) 12%, var(--wood-deep));border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 8px;padding:4px 6px}.tree-names{margin:0;padding:0;line-height:1.25;list-style:none}.tree-side{color:color-mix(in srgb, var(--element) 55%, var(--text));font-size:.85em;font-weight:700;display:block}.tree.preview .tree-names li{text-indent:-1em;padding-left:1em}.tree-list.passive{grid-column:1/-1}.tree-names.passive{border-top:1px dashed color-mix(in srgb, var(--element) 45%, var(--wood-edge-2));color:var(--muted);padding-top:3px}.lock{color:var(--muted);font-size:.82em}.tomes{gap:6px;display:grid}.tome{border:1px solid var(--panel-edge);border-radius:8px;gap:2px;padding:6px 8px;display:grid}.tome button{justify-self:start}.picker{z-index:30;background:#0a060399;place-items:center;display:grid;position:fixed;inset:0}.picker-card{background:var(--wood);border:2px solid var(--gold);border-radius:8px;width:min(380px,100vw - 32px);padding:14px}.toast{background:var(--panel);border:1px solid var(--gold);z-index:40;pointer-events:none;border-radius:6px;max-width:calc(100vw - 32px);padding:8px 16px;position:fixed;top:max(84px,14vh);left:50%;transform:translate(-50%)}.reconnecting{z-index:45;color:var(--text);background:#0a0603b3;justify-content:center;align-items:center;font-size:18px;display:flex;position:fixed;inset:0}.loading-screen{z-index:950;color:#e8dcc4;text-align:center;background:#1a120c;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:16px;animation:.2s ease-out .15s both loading-in;display:flex;position:fixed;inset:0}.loading-screen[hidden]{display:none}.loading-screen.leaving{opacity:0;pointer-events:none;transition:opacity .25s ease-in;animation:none}@keyframes loading-in{0%{opacity:0}to{opacity:1}}.loading-name{color:#f0c85a;font-size:22px}.loading-bar{background:#00000073;border:2px solid #8a6a2f;border-radius:4px;width:min(420px,100%);height:14px;overflow:hidden}.loading-fill{background:#e0b040;width:0;height:100%;transition:width .2s linear}.loading-text{font-size:14px}.toast.ok{border-color:#3fbf5a}.toast.bad{border-color:#ef4444}.skill-icon{vertical-align:middle;border-radius:4px;flex:none;box-shadow:0 0 0 1px #0000008c}.battle-submenu button .skill-icon{margin:-2px 6px 0 0}.battle-item-icon{vertical-align:middle;text-align:center;width:24px;height:24px;margin:-2px 6px 0 0;line-height:24px;display:inline-block}.slot .skill-icon,.tome small .skill-icon{margin-right:6px}.tree-node.locked .skill-icon{filter:grayscale(.85)brightness(.7)}.rank-head .skill-icon+strong{flex:1}.skin-list{flex-wrap:wrap;gap:8px;display:flex}.skin-card{flex-direction:column;align-items:center;gap:2px;min-width:88px;padding:6px;display:flex}.skin-card small{color:inherit}.skin-card.worn{outline:2px solid var(--accent,gold)}.skin-figure{height:72px;image-rendering:pixelated}.skin-ware{align-items:center;gap:8px;display:flex}#hub-page{padding:0}#hub-page .hub-card{border-radius:0;width:100%;max-width:none;height:100%;max-height:none;margin:0}.hub-tabs{flex:1;margin:0;display:flex}.hub-body{flex-direction:column;flex:1;gap:14px;min-height:0;margin-top:10px;display:flex;overflow-y:auto}.hub-soon{opacity:.8;margin:auto;font-size:1.2em}.pass-head{grid-template-columns:auto 1fr auto;align-items:center;gap:8px 14px;display:grid}.pass-title{align-items:baseline;gap:10px;display:flex}.pass-title strong{color:var(--gold);font-size:1.3em}.pass-locked{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 12px;display:flex}.pass-bar{border:1px solid var(--bronze);background:#0000004d;border-radius:5px;height:10px;display:block;overflow:hidden}.pass-bar-fill{background:var(--gold);height:100%;display:block}.pass-missions h3{margin:0 0 6px;font-size:1em}.pass-mission{grid-template-columns:minmax(120px,220px) 1fr 44px 36px;align-items:center;gap:10px;padding:3px 0;display:grid}.pass-mission.done{opacity:.65}.pass-points{color:var(--gold);text-align:right}.pass-track{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.pass-level{min-height:104px;color:inherit;text-align:center;border:1px solid var(--bronze);box-shadow:none;filter:none;background:#80808024;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:16px 4px 6px;font-size:.8em;line-height:1.2;display:flex;position:relative}.pass-level:disabled{color:inherit;opacity:1;cursor:default;background:#80808024}.pass-level-number{font-weight:700;position:absolute;top:3px;left:6px}.pass-level .skin-figure{max-height:52px}.pass-reward-icon{justify-content:center;align-items:center;width:40px;height:40px;font-size:26px;display:flex}.pass-reward-icon .item-pic{object-fit:contain;width:100%;height:100%}.pass-level.ready{outline:2px solid var(--gold);cursor:pointer;background:#d6aa3c59}.pass-level.claimed:disabled{opacity:.5}@media (width<=560px){.pass-head{grid-template-columns:1fr}.pass-mission{grid-template-columns:1fr 44px 36px}.pass-mission .pass-bar{display:none}}.hud-gold{color:var(--accent);margin-top:2px;font-size:.85em}:root{--win-bg:var(--wood-dark);--win-bg-2:var(--wood);--win-edge:var(--wood-edge);--win-edge-2:var(--wood-edge-2);--win-title:var(--gold-bright);--win-muted:var(--muted);--win-faint:#7d7363;--win-gold:#fde047;--win-amber:#fbbf24}.window{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a060399;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.window[hidden]{display:none}@keyframes window-fade-in{0%{opacity:0}}@keyframes window-card-in{0%{opacity:0;transform:translateY(14px)}}.window{animation:.16s ease-out window-fade-in}.window-card{animation:.22s cubic-bezier(.2,.8,.3,1) window-card-in}@media (prefers-reduced-motion:reduce){.window-card{animation-name:window-fade-in}}.window-card{background:linear-gradient(180deg, var(--win-bg-2), var(--win-bg));border:2px solid var(--gold);width:100%;max-height:90vh;color:var(--text);border-radius:8px;flex-direction:column;padding:14px 16px;font-family:Segoe UI,system-ui,sans-serif;display:flex;position:relative;overflow-y:auto;box-shadow:0 18px 50px #0000008c}.inv-card{max-width:780px;box-shadow:0 18px 50px #0000008c,0 0 24px #f2cf7a1f}.shop-card{max-width:620px}.storage-card{max-width:1040px}.inn-card{max-width:960px}.inn-respec{padding:8px 12px}.respec-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.reset-row{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0}.window-head{border-bottom:1px solid var(--win-edge);align-items:center;gap:10px;margin-bottom:10px;padding-bottom:10px;display:flex}.window-icon{background:var(--win-bg);border:1px solid var(--gold);border-radius:8px;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.window-titles{flex:1;min-width:0}.window-titles h2{color:var(--win-title);margin:0;font-size:18px}.shop-card .window-titles h2{color:#facc15}.window-titles small{color:var(--win-muted);font-size:12px}.window-sub{color:var(--win-muted);margin:2px 0 0;font-size:12px}.window-close{color:#fff;background:#7f1d1d;border-color:#b45309}.window-close:hover:not(:disabled){border-color:var(--gold-bright);background:#991b1b}.window-foot{justify-content:flex-end;margin-top:12px;display:flex}.window-foot .done{background:var(--bronze);border-color:var(--gold-bright);color:#fff8e6;font-weight:600;box-shadow:0 0 12px #f2cf7a4d}.window-foot .done:hover:not(:disabled){background:var(--bronze-hover)}.gold-pill{color:var(--win-gold);background:#fde04714;border:1px solid #d4af37;border-radius:20px;padding:4px 12px;font-weight:700}.count-pill{color:var(--win-title);border:1px solid var(--win-edge-2);border-radius:10px;margin-left:auto;padding:1px 8px;font-size:12px}.empty-note{color:var(--win-muted);text-align:center;grid-column:1/-1;margin:18px 0}.hand-on-note{color:#f59e0b;grid-column:1/-1;margin:4px 0;font-weight:600}.window-card input[type=number]{color:var(--text);background:var(--wood-deep);border:1px solid var(--win-edge-2);border-radius:6px;padding:4px 6px}.slot-grid{background:var(--wood-deep);border:1px solid var(--wood-edge);border-radius:6px;gap:8px;padding:8px;display:grid}.slot-grid.cols-4{grid-template-columns:repeat(4,1fr)}.slot-grid.cols-5{grid-template-columns:repeat(5,1fr)}.slot-grid.scroll{max-height:380px;overflow-y:auto}.item-slot{aspect-ratio:1;background:var(--win-bg-2);border:1px solid var(--win-edge-2);border-radius:8px;place-items:center;min-width:0;min-height:52px;padding:0;transition:transform .1s;display:grid;position:relative}.item-slot:hover:not(:disabled){border-color:var(--win-title);transform:translateY(-1px)}.item-slot[data-grade=fine]{box-shadow:inset 0 0 0 2px #4ade80}.item-slot[data-grade=rare]{box-shadow:inset 0 0 0 2px #60a5fa}.item-slot[data-grade=legendary]{box-shadow:inset 0 0 0 2px #facc15}.item-slot.selected{border-color:var(--win-amber);box-shadow:0 0 10px #fbbf248c}.item-slot.empty,.item-slot.empty:disabled{opacity:.6;cursor:default;background:#3a2a1e59;border-style:dashed}.slot-icon{font-size:26px;line-height:1}.slot-icon:has(.item-pic){width:86%;height:86%}.item-pic{object-fit:contain;width:100%;height:100%;display:block}.ware-icon .item-pic,.icon-box .item-pic{width:90%;height:90%}.slot-qty{color:#facc15;background:#1a120cd9;border-radius:4px;padding:0 3px;font-size:10px;font-weight:700;position:absolute;bottom:2px;right:3px}.slot-plus{color:#fb923c;background:#1a120cd9;border-radius:4px;padding:0 3px;font-size:10px;font-weight:800;position:absolute;top:2px;right:3px}.slot-dot{border-radius:50%;width:6px;height:6px;position:absolute;top:4px;left:4px}.item-slot.consumable .slot-dot{background:#4ade80}.item-slot.equipment .slot-dot{background:#fbbf24}.item-slot.material .slot-dot{background:#c084fc}.slot-no{color:var(--win-faint);font-size:9px;position:absolute;top:2px;right:4px}@media (width<=720px){.window{padding:8px}.window-card{max-height:96vh;padding:10px}}.window-card button.act{color:#fff;text-align:left;background:var(--bronze);border-color:var(--gold);width:100%;margin-top:6px;padding:8px 10px}.window-card button.act:disabled{opacity:.45}button.act.warp{background:#7c3aed;border-color:#7c3aed}button.act.wear-hero,button.act.deposit{background:#2563eb;border-color:#2563eb}button.act.wear-beast{background:#d97706;border-color:#d97706}button.act.withdraw,button.act.collect{background:#059669;border-color:#059669}button.act.drop{color:#fca5a5;background:0 0;border:1px solid #ef4444}button.act.drop.confirm{color:#fff;background:#b91c1c}.inv-body{grid-template-columns:360px 1fr;gap:14px;display:grid}.cat-tabs{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.cat-tab{padding:4px 8px;font-size:12px}.cat-tab.active{color:var(--win-title);border-color:var(--win-title)}.caption{color:var(--win-muted);margin:4px 0;font-size:11px}.gold-bar{border:1px solid #d4af37;border-radius:8px;justify-content:space-between;align-items:center;margin-top:8px;padding:8px 12px;display:flex}.gold-bar strong{color:var(--win-gold);text-shadow:0 0 8px #fde04780}.inspector{background:var(--win-bg);border:1px solid var(--win-edge);border-radius:8px;padding:12px}.inspector-empty{height:100%;min-height:220px;color:var(--win-muted);place-items:center;display:grid}.big-icon{font-size:48px}.inspector-top{align-items:center;gap:10px;display:flex}.icon-box{background:var(--win-bg-2);border:1px solid var(--win-title);border-radius:8px;flex:none;place-items:center;width:48px;height:48px;font-size:28px;display:grid}.inspector-top>div{display:grid}.item-name{font-size:15px}.badges{gap:4px;margin-top:4px;display:flex}.badge{border:1px solid;border-radius:6px;padding:1px 6px;font-size:11px}.badge.consumable{color:#4ade80}.badge.equipment{color:#fbbf24}.badge.material{color:#c084fc}.item-desc{color:var(--text);background:var(--win-bg-2);border-radius:6px;margin:10px 0 6px;padding:8px;font-size:13px}.item-meta{color:var(--win-muted);justify-content:space-between;font-size:12px;display:flex}.action-title,.mid-box h4{color:var(--win-title);margin:12px 0 2px;font-size:13px}.shop-tabs{grid-template-columns:1fr 1fr;margin-bottom:8px;display:grid}.shop-tab{background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0}.shop-tab.active{color:var(--win-title);border-bottom-color:var(--win-title)}.shop-list{grid-auto-rows:max-content;gap:6px;max-height:50vh;display:grid;overflow-y:auto}.shop-filter{z-index:1;background:var(--win-bg);padding-bottom:4px;position:sticky;top:0}.ware-card{text-align:left;background:var(--win-bg-2);border:1px solid var(--win-edge);align-items:center;gap:10px;padding:8px;display:flex}.ware-card.selected{border-color:var(--win-amber);background:#2563eb2e}.ware-icon{background:var(--win-bg);border-radius:8px;flex:none;place-items:center;width:40px;height:40px;font-size:22px;display:grid}.ware-text,.ware-price{display:grid}.ware-text{flex:1;min-width:0}.ware-text strong{font-size:13px}.ware-text small,.ware-price small{color:var(--win-muted);font-size:11px}.ware-price{text-align:right}.ware-price strong{color:#facc15}.shop-foot{margin-top:10px}.exchange-picks{flex-wrap:wrap;gap:6px;display:flex}.exchange-pick.active{color:var(--win-title);border-color:var(--win-title)}.exchange-cost{color:#facc15;margin:8px 0}.tower-line{margin:4px 0}.tower-summary{border:1px solid var(--win-amber);border-radius:6px;gap:2px;margin-bottom:8px;padding:8px;display:grid}.tower-cards{gap:6px;display:grid}.foot-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.qty-picker{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.qty-input{width:70px}.qty-quick.active{border-color:var(--win-title)}.total{color:#facc15}.window-card button.confirm{color:#fff;width:100%;margin-top:8px;padding:10px;font-weight:700}button.confirm.buy{background:linear-gradient(90deg, var(--bronze), var(--bronze-hover));border-color:var(--gold-bright)}button.confirm.sell,button.confirm.gold{background:linear-gradient(90deg,#d97706,#b45309)}button.confirm:disabled{opacity:.5}.sell-warning{color:#f59e0b;margin:8px 0 0;font-weight:600}.storage-body{grid-template-columns:1fr 220px 1fr;gap:12px;display:grid}.col-head{align-items:center;gap:6px;margin-bottom:6px;font-weight:600;display:flex}.gold-line{color:var(--win-gold);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:13px;display:flex}.gold-btn{color:#111;background:#f59e0b;border-color:#f59e0b}.page-row{justify-content:center;gap:6px;margin-top:6px;display:flex}.page-btn{min-width:32px;margin:0}.page-btn.active{color:#111;background:var(--win-title);border-color:var(--win-title)}.mid-box{text-align:center;background:var(--win-bg);border:1px solid var(--win-edge);border-radius:8px;justify-items:center;gap:6px;padding:10px;display:grid}.mid-box small,.mid-label{color:var(--win-muted);font-size:12px}.gold-dialog{background:#0a06038c;place-items:center;display:grid;position:fixed;inset:0}.gold-dialog[hidden]{display:none}.dialog-card .foot-row{flex-wrap:nowrap;margin-top:8px}.dialog-card .foot-row>*{flex:1;margin:0}.dialog-card{background:var(--win-bg);border:2px solid #f59e0b;border-radius:10px;width:280px;padding:14px}.inn-body{grid-template-columns:1fr 1fr;gap:12px;display:grid}.inn-col{background:var(--win-bg);border:1px solid var(--win-edge);border-radius:8px;min-height:400px;padding:10px}.hint-bar{color:var(--win-muted);border-left:3px solid var(--win-title);background:#38bdf80f;margin:0 0 8px;padding:6px 8px;font-size:12px}.beast-list{gap:6px;max-height:380px;display:grid;overflow-y:auto}.beast-card{background:var(--win-bg-2);border-radius:8px;align-items:center;gap:10px;padding:8px;display:flex}.beast-avatar{border:2px solid;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:22px;display:grid}.beast-info{flex:1;gap:2px;min-width:0;display:grid}.beast-name{align-items:center;gap:6px;display:flex}.beast-badge{color:#fff;background:var(--win-edge-2);border-radius:6px;padding:0 6px;font-size:11px}.beast-badge.main{background:#059669}.beast-badge.rested{background:#0284c7}.beast-info small{color:var(--win-muted)}.beast-card button.act{white-space:nowrap;width:auto;margin:0}.beast-card.greyed{opacity:.55}.beast-info .inn-refusal{color:#f59e0b;font-weight:600}.mini-bar{align-items:center;gap:6px;font-size:11px;display:flex}.mini-bar.hp .mini-text{color:#34d399}.mini-track{background:var(--win-bg);border-radius:3px;width:44px;height:5px;overflow:hidden}.mini-fill{height:100%;display:block}.mini-fill.hp{background:#10b981}@media (width<=720px){.inv-body,.storage-body,.inn-body{grid-template-columns:1fr}.inn-col{min-height:0}}.hud-collapse{margin-left:auto;padding:0 8px;line-height:1.4}.hud.collapsed #hud-body{display:none}.hud-title{align-items:center;gap:8px}.chat{left:var(--edge-left);bottom:var(--edge-bottom);--wood-text:#d8c9a8;width:max-content;min-width:min(390px,100vw - 24px);max-width:calc(100vw - 24px);color:var(--text);background:var(--panel);border:2px solid var(--gold);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;border-radius:6px;flex-direction:column;font-size:13px;display:flex;position:fixed}body:has(#dialogue:not([hidden])) .chat,body:has(#shop-panel:not([hidden])) .chat,body:has(#smith-panel:not([hidden])) .chat,body:has(#alchemy-panel:not([hidden])) .chat,body:has(#warp-panel:not([hidden])) .chat,body:has(#bag-panel:not([hidden])) .chat,body:has(#exchange-panel:not([hidden])) .chat,body:has(#tower-panel:not([hidden])) .chat,body:has(#storage-panel:not([hidden])) .chat,body:has(#inn-panel:not([hidden])) .chat,body:has(#market-panel:not([hidden])) .chat{display:none}.chat button{color:var(--wood-text);border-radius:4px}.chat-head{align-items:center;gap:6px;padding:6px 8px 0;display:flex}.chat-tabs{flex-wrap:nowrap;flex:1;gap:8px;min-width:0;overflow-x:auto}.chat-tabs.more-after{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}.chat-tabs.more-before{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 28px),#0000)}.chat-tabs.more-before.more-after{-webkit-mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000)}.chat-tabs button{white-space:nowrap;flex:none;padding:2px 8px;font-size:12px}.chat-tabs button.active,.chat .chat-channel{color:var(--gold-bright);background:#4a3420}.chat-tabs button.active{border-color:#e0b860}.chat .chat-channel{border-color:var(--gold)}.chat-toggle{padding:0 8px}.chat-log,.chat-form{contain:inline-size}.chat-log{border-top:1px solid var(--wood-edge);word-break:break-word;height:150px;margin:6px 8px 0;padding:4px 0;line-height:1.45;overflow-y:auto}.chat.collapsed .chat-log,.chat.collapsed .chat-form{display:none}.chat-line .time,.chat-line .channel{color:#8f8a7a;margin-right:4px}.chat-line .sender{color:#9be7ff;margin-right:4px;font-weight:600}.chat-line .sender.self{color:var(--gold-bright)}.chat-line.world .channel{color:#c084fc}.chat-line.system{color:#fca5a5}.chat-form{gap:6px;padding:6px 8px 8px}.chat-channel{white-space:nowrap;padding:4px 8px;font-size:12px}.chat-input{flex:1;min-width:0}.chat .chat-input{color:#ece4d0;border-color:var(--wood-edge);background:#22180f;border-radius:4px}.chat .chat-input::placeholder{color:#8f8a7a}.minimap{top:var(--edge-top);right:var(--edge-right);background:var(--panel);border:2px solid var(--gold);z-index:10;border-radius:6px;padding:6px;font-size:12px;position:fixed}.minimap-head{justify-content:space-between;align-items:center;gap:4px;margin-bottom:4px;display:flex}.minimap-big{padding:0 6px;font-size:12px}.minimap-zoom,.map-zoom{align-items:center;gap:3px;margin-left:auto;display:flex}.minimap-zoom button{padding:0 5px}.minimap-zoom span{text-align:center;min-width:24px;color:var(--muted)}.minimap canvas{cursor:pointer;image-rendering:pixelated;display:block}.minimap.collapsed canvas,.minimap.collapsed .minimap-zoom{display:none}.minimap-map{width:200px;margin-top:4px;padding:3px 6px;font-size:12px;line-height:1.35;display:block}.map-card{width:min(96vw,1180px);max-width:none;height:90vh;overflow:hidden}.map-zoom span{text-align:center;min-width:32px;color:var(--win-muted)}.map-stage{flex:1;place-items:center;min-height:0;display:grid}.map-stage canvas{cursor:grab;touch-action:none;image-rendering:pixelated;display:block}.map-stage canvas:active{cursor:grabbing}.map-legend{color:var(--win-muted);flex-wrap:wrap;justify-content:center;gap:4px 14px;padding-top:8px;font-size:12px;display:flex}.map-legend i{border-radius:50%;width:9px;height:9px;margin-right:5px;display:inline-block}#hud-auto-settings .menu-glyph{position:relative}#hud-auto-settings .menu-glyph:after{content:"⚙";color:#f3d27a;text-shadow:0 0 2px #000,0 0 2px #000;font-size:18px;line-height:1;position:absolute;bottom:-4px;right:-4px}button.hud-auto.semi{border-color:var(--auto-semi);color:var(--auto-semi-text)}button.hud-auto.semi .menu-glyph{filter:drop-shadow(0 0 3px var(--auto-semi)) drop-shadow(0 0 6px var(--auto-semi))}button.hud-auto.on .menu-glyph{filter:drop-shadow(0 0 3px var(--auto-full)) drop-shadow(0 0 6px var(--auto-full))}.hud-auto.on{border-color:var(--auto-full);color:var(--auto-full-text)}.hud-auto.stopped{color:#fbbf24;border-color:#f59e0b}.auto-form{grid-template-columns:1fr auto;align-items:center;gap:8px 12px;margin-top:8px;display:grid}.auto-form input[type=number]{width:5.5em}.auto-skills{gap:8px;margin-top:10px;display:grid}.auto-tabs{flex-wrap:wrap;gap:6px;display:flex}.auto-tab{opacity:.55;border-radius:8px;min-height:36px;padding:0 14px}.auto-tab.on{opacity:1;box-shadow:0 0 0 2px #f3d27a}.auto-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.auto-card{background:#fffaeb73;border:1px solid #5c3a1a59;border-radius:10px;grid-template-columns:auto auto 1fr;align-items:center;gap:6px 8px;padding:8px;display:grid}.auto-card.off .auto-card-name,.auto-card.off .skill-icon{opacity:.5}.auto-card.picking{cursor:pointer;border-style:dashed}.auto-card-no{color:#93c5fd;background:#172554;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:600;display:grid}.auto-card-name{overflow-wrap:anywhere;min-width:0}.auto-card-tags{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.auto-tag{border:none;border-radius:8px;align-items:center;min-height:32px;padding:0 12px;display:inline-flex}.auto-tag.use{color:#4ade80;background:#14301c}.auto-tag.opener{color:#fbbf24;background:#3b2a0a}.auto-tag.aim{color:#93c5fd;background:#1e2a44}.auto-tag.aim.self{color:#d8b4fe;background:#2e1a3f}.auto-tag.off{color:#a3a3a3;background:#262626}.auto-skills-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.auto-skills-foot .hint{margin:0}.auto-reorder{flex:none;min-height:36px;padding:0 14px}.settings-group{margin-top:14px}.panel h3.settings-group-title{border-bottom:1px solid var(--gold);margin:0 0 8px;padding-bottom:4px;font-size:.95em}.settings-rows{grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:center;gap:8px 12px;display:grid}.settings-label{line-height:1.25;display:block}.settings-label small{color:var(--muted);display:block}.settings-rows select,.settings-rows>button{width:100%;min-width:0}.settings-rows input[type=checkbox]{width:20px;height:20px;accent-color:var(--gold);justify-self:end;margin:0}.settings-sound{align-items:center;gap:6px;min-width:0;display:flex}.settings-sound input[type=range]{min-width:0;accent-color:var(--gold);touch-action:pan-y;flex:1;margin:0}.settings-sound button{flex:none;width:34px;min-width:34px;height:34px;min-height:34px;padding:0}.settings-sound output{text-align:right;font-variant-numeric:tabular-nums;flex:none;width:2.2em;font-size:.85em}.settings-sound button[aria-pressed=true]{opacity:.7;outline:none}.settings-sound.is-silent input[type=range],.settings-sound.is-silent output{opacity:.5}.settings-now{grid-column:1/-1;margin:-4px 0 0}.settings-leave{width:100%;margin-top:12px}.quest-tracker{box-sizing:border-box;background:var(--panel);border:2px solid var(--gold);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:6px;flex:none;gap:2px;width:250px;padding:8px 12px;font-size:13px;display:grid;position:relative}.quest-chapter,.quest-level{opacity:.75;font-size:11px}.quest-title{color:var(--accent);font-weight:700}.quest-fold{z-index:1;padding:0 8px;line-height:1.4;position:absolute;top:6px;right:8px}.quest-chapter,.quest-title{padding-right:30px}.quest-tracker.folded .quest-chapter,.quest-tracker.folded .quest-objective,.quest-tracker.folded .quest-level{display:none}.quest-tracker.folded .quest-title{white-space:nowrap;text-overflow:ellipsis;padding-right:66px;overflow:hidden}.quest-auto{margin-top:4px}.quest-auto-glyph{margin-right:6px}.quest-auto.on{background:var(--gold);color:#241a0c;border-color:var(--gold)}.quest-auto-status{color:var(--accent);margin-top:2px;font-size:11px}.quest-tracker.folded .quest-auto{z-index:1;margin:0;padding:0 6px;line-height:1.4;position:absolute;top:6px;right:40px}.quest-tracker.folded .quest-auto-glyph{margin:0}.quest-tracker.folded #quest-auto-label,.quest-tracker.folded .quest-auto-status{display:none}.quest-card{max-width:560px}.story-chapters{gap:8px;padding:8px 0;display:grid}.story-chapter{border:1px solid var(--win-edge);border-left:3px solid var(--win-faint);background:#1a120c99;border-radius:8px;padding:8px 10px}.story-chapter.done{border-left-color:#22c55e}.story-chapter.current{border-left-color:var(--win-title)}.story-chapter.upcoming{opacity:.6}.story-level,.story-objective{color:var(--win-muted);display:block}.story-quests{margin:6px 0 0;padding-left:4px;list-style:none}.story-quest{margin-top:4px}.story-quest[data-state=current]{color:var(--win-amber);font-weight:600}.story-ending{color:var(--win-gold);border:1px solid var(--win-amber);border-radius:8px;margin:4px 0 8px;padding:8px 10px}.story-ending button{margin-top:6px;display:block}.quest-tabs{gap:6px;padding-top:8px;display:flex}.quest-tab{color:var(--win-muted);border:1px solid var(--win-edge);cursor:pointer;background:#1a120c99;border-radius:6px;padding:4px 10px}.quest-tab.active{color:var(--win-title);border-color:var(--win-title)}.codex-maps{gap:8px;padding:8px 0;display:grid}.codex-map{border:1px solid var(--win-edge);background:#1a120c99;border-radius:8px;padding:8px 10px}.codex-champions{grid-template-columns:repeat(3,1fr);gap:6px;margin:6px 0;padding:0;list-style:none;display:grid}.codex-entry{text-align:center;border:1px solid var(--win-edge);border-radius:6px;justify-items:center;gap:2px;padding:6px 4px;display:grid}.codex-entry.unknown{opacity:.55}.codex-entry.captured{border-color:#22c55e}.codex-entry small{color:var(--win-muted)}.codex-look.silhouette{filter:brightness(0);font-size:1.4em}.codex-reward{color:var(--win-gold);margin:0}.codex-reward.received{color:#22c55e}.ending-card{max-width:480px}.ending-text{padding:12px 4px;line-height:1.5}.ending-choices{justify-content:center;gap:8px;padding-bottom:8px}.chat-line.party .channel{color:#4ade80}.chat-line.whisper,.chat-line.whisper .channel{color:#f9a8d4}.party-members{flex-direction:column;gap:10px;margin:10px 0;display:flex}.party-member{border:1px solid var(--panel-edge);border-radius:8px;padding:8px 10px}.party-member.self{border-color:var(--accent)}.party-member-head{align-items:center;gap:6px;margin-bottom:4px;display:flex}.party-mark{min-width:1.2em}.party-dot{border-radius:50%;width:8px;height:8px}.party-dot.on{background:#4ade80}.party-dot.off{background:var(--muted)}.party-level,.party-element{color:var(--muted);font-size:.85em}.party-manage,.party-actions{gap:6px;margin-top:6px}.player-menu{background:var(--panel);border:2px solid var(--gold);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:22;border-radius:6px;width:220px;padding:8px 10px;position:fixed}.player-menu-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.player-menu-head strong{flex:1}.player-menu-close{padding:0 8px}.player-menu-invite{width:100%;padding:6px}.channel-menu{gap:4px;max-height:min(240px,100vh - 16px);display:grid;overflow-y:auto}.channel-row{text-align:left;font-variant-numeric:tabular-nums;width:100%;padding:6px}.channel-row[aria-current=true]{outline:2px solid var(--accent)}.channel-row[aria-disabled=true]{opacity:.4}.channel-row[aria-disabled=true]:hover{background:var(--wood-raised)}.party-invite{background:var(--panel);border:2px solid var(--accent);z-index:30;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px 12px;width:min(400px,100vw - 24px);padding:10px 14px;display:flex;position:fixed;top:72px;left:50%;transform:translate(-50%)}.party-invite-text{flex:1;margin:0}.party-invite-time{color:var(--accent);font-weight:700}.party-invite .row{gap:8px;width:100%}.party-member.away{opacity:.6}.party-away{color:#fca5a5;font-size:.8em}.friends-card{max-width:560px}.friends-find{gap:8px;margin-bottom:10px;display:flex}.friends-find[hidden]{display:none}.friends-find input{min-width:0;color:var(--text);background:var(--wood-deep);border:1px solid var(--win-edge-2);border-radius:6px;flex:1;padding:4px 8px}.friends-status{margin:0 0 8px;font-weight:600}.friends-status.ok{color:#4ade80}.friends-status.bad{color:#fca5a5}.friends-section{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.friends-heading{color:var(--win-title);margin:0;font-size:14px}.friends-row{background:var(--win-bg);border:1px solid var(--win-edge);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:6px 10px;display:flex}.friends-request{border-color:var(--gold)}.friends-friend.away{opacity:.6}.friends-dot{border-radius:50%;width:8px;height:8px}.friends-dot.on{background:#4ade80}.friends-dot.off{background:var(--muted)}.friends-level,.friends-element,.friends-asks,.friends-where{color:var(--muted);font-size:.85em}.friends-buttons{gap:6px;margin-left:auto;display:flex}:where(.theme-journal,.theme-pixel,.theme-starry) :is(#hud-hub,#hud-friends,#hud-formation) .menu-glyph{text-align:center;color:inherit;font-size:28px;line-height:44px}.map-tabs{padding:0 0 6px}.continent-page{flex-direction:column;flex:1;min-height:0;display:flex}.continent-stage{flex:1;place-items:safe center;min-height:0;display:grid;overflow:auto}.continent-svg{width:100%;max-height:100%}.continent-link{stroke:#64748b;stroke-width:2px}.continent-link.gate{stroke-dasharray:6 5}.continent-map rect{stroke-width:1.5px}.continent-map.wild rect{fill:#0f3b33;stroke:#2dd4bf}.continent-map.town rect{fill:#2e2a5a;stroke:#a78bfa}.continent-map.mine rect{fill:#4a3214;stroke:#d6a35c}.continent-map.gate rect{fill:#1e293b;stroke:#94a3b8;stroke-dasharray:6 4}.continent-map.here rect{stroke:#3fbf5a;stroke-width:4px}.continent-name{fill:#f1f5f9;font-size:15px;font-weight:600}.continent-name.long{font-size:13px}.continent-band{fill:#cbd5e1;font-size:12px}.continent-pin{fill:#3fbf5a;font-size:13px;font-weight:600}.continent-legend-box{border:1.5px solid;border-radius:3px;width:12px;height:9px;margin-right:5px;display:inline-block}.continent-legend-box.wild{background:#0f3b33;border-color:#2dd4bf}.continent-legend-box.town{background:#2e2a5a;border-color:#a78bfa}.continent-legend-box.mine{background:#4a3214;border-color:#d6a35c}.continent-legend-box.gate{background:#1e293b;border-style:dashed;border-color:#94a3b8}.continent-legend-box.here{border-width:3px;border-color:#3fbf5a}.continent-column{fill:#0f0c1473;stroke:#4b4452;stroke-width:1px}.continent-column-head{fill:#d8cfe0;font-size:14px;font-weight:700}.continent-floor{fill:#b9aec4;font-size:11px;font-weight:600}.continent-map.dungeon rect{fill:#2b2531;stroke:#a3909f}.continent-map.dungeon.here rect{stroke:#3fbf5a}.continent-legend-box.dungeon{background:#2b2531;border-color:#a3909f}.continent-svg.pictured{min-height:460px}.continent-picture{clip-path:inset(0 round 10px)}.continent-svg.pictured .continent-map:not(.dungeon) rect{fill-opacity:.84}.continent-svg.pictured .continent-pin{paint-order:stroke;stroke:#0b1020;stroke-width:3px}.champion-picks{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.champion-picks legend,.champion-note{grid-column:1/-1}.champion-note{color:var(--muted);margin:0;font-size:13px}.modal-card label.champion-card{border:1px solid var(--wood-edge);border-top:4px solid var(--element);background:var(--wood-raised);cursor:pointer;border-radius:6px;flex-direction:column;align-items:stretch;gap:6px;padding:8px;font-size:12px;display:flex}.champion-card:has(input:checked){outline:2px solid var(--element)}.champion-card .element-head{flex-wrap:nowrap}.champion-name{flex:1;min-width:0}.champion-name span{display:inline-block}.champion-card .element-head small{white-space:nowrap}.champion-skills{color:#fcd34d;margin:0;padding:0;list-style:none}.champion-stats{color:var(--muted)}.create-steps{counter-reset:create-step;gap:4px;margin:0;padding:0;list-style:none;display:flex}.create-steps li{border-bottom:3px solid var(--wood-edge);color:var(--muted);text-align:center;counter-increment:create-step;flex:1;padding:4px 6px;font-size:12px}.create-steps li:before{content:counter(create-step) ". "}.create-steps li.done,.create-steps li[aria-current=step]{border-bottom-color:var(--accent);color:var(--text)}.create-steps li[aria-current=step]{background:var(--wood-raised);border-radius:4px 4px 0 0;font-weight:700}#create-finish{grid-template-columns:1fr}.create-summary{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;display:grid}.create-summary dt{color:var(--muted)}.create-summary dd{margin:0}canvas.create-figure{width:100%;height:140px;display:block}div.create-figure{box-sizing:border-box;background:radial-gradient(20px 6px at 50% calc(100% - 24px),#0000004d 90%,#0000) no-repeat;justify-content:center;align-items:flex-end;height:140px;padding-bottom:24px;display:flex}div.create-figure img{height:80px;image-rendering:pixelated}.modal-card .element-card.locked{border:1px solid var(--wood-edge);border-top:4px solid var(--element);background:var(--wood-raised);cursor:not-allowed;border-radius:6px;flex-direction:column;gap:6px;padding:8px;font-size:12px;display:flex}canvas.create-stage{border:1px solid var(--wood-edge);background:#1c1f2e;border-radius:6px;grid-column:1/-1;width:100%;height:260px;display:block}.trade-card{max-width:900px}.trade-body,.trade-bag-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.trade-bag-row{margin-top:12px}.trade-offer{background:var(--win-bg);border:1px solid var(--win-edge);border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.trade-items{flex-direction:column;gap:4px;min-height:60px;display:flex}.trade-item{align-items:center;gap:8px;display:flex}.trade-item-name{flex:1}.trade-item.greyed{opacity:.55}.trade-refusal{color:#f59e0b;font-weight:600}.trade-vanguard{flex-direction:column;gap:6px;margin-top:12px;display:flex}.trade-champions{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:6px;max-height:260px;display:grid;overflow-y:auto}.trade-items .champion-card{background:var(--win-bg-2)}.trade-lock{color:var(--win-muted);margin-left:auto}.trade-lock.on{color:#facc15;font-weight:700}.trade-gold{width:120px}.item-slot.offered{outline:2px dashed #facc15}.trade-foot{flex-direction:column;align-items:stretch}.trade-foot .foot-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.trade-hint{margin:0;font-size:12px}.trade-request{top:140px}@media (width<=720px){.trade-body,.trade-bag-row{grid-template-columns:1fr}}.stall-card{max-width:900px}.stall-body{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stall-pick-col{flex-direction:column;gap:8px;display:flex}.item-slot.listed{outline:2px dashed #facc15}.stall-price,.stall-sign{width:140px}.stall-sign{flex:1;min-width:0}.stall-sign-row{align-items:center;gap:8px;display:flex}.stall-listings{flex-direction:column;gap:8px;max-height:60vh;display:flex;overflow-y:auto}.stall-listing{background:var(--win-bg);border:1px solid var(--win-edge);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px;display:flex}.stall-listing.greyed{opacity:.55}.stall-listing .trade-item-name{flex:1;min-width:140px}.stall-price-tag{color:#facc15;font-weight:700}.stall-buy{align-items:center;gap:8px;display:flex}.stall-listings .champion-card{background:var(--win-bg)}.stall-button{margin-right:auto}.trade-foot .foot-row.stall-foot-row{grid-template-columns:repeat(2,1fr)}@media (width<=720px){.stall-body{grid-template-columns:1fr}}.market-card{max-width:920px}.market-tabs{grid-template-columns:repeat(3,1fr)}.market-body{flex-direction:column;gap:8px;display:flex}.market-search{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.market-name{flex:1;min-width:160px}.market-level{width:90px}.market-kinds{flex-wrap:wrap}.market-listings{flex-direction:column;gap:8px;max-height:46vh;display:flex;overflow-y:auto}.market-listings .champion-card{background:var(--win-bg)}.market-seller{color:var(--win-muted);display:block}.market-buy{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.market-pager{justify-content:center;align-items:center;gap:8px;display:flex}.market-sell{grid-template-columns:1fr 1fr;gap:12px;display:grid}.market-mine-row{flex-wrap:wrap}.market-entry.expired{border-left:3px solid var(--win-muted)}.market-expired{white-space:nowrap}@media (width<=720px){.market-sell{grid-template-columns:1fr}}.champion-card{background:var(--win-bg-2);border-radius:8px;align-items:center;gap:10px;padding:8px;display:flex}.champion-info{flex:1;gap:2px;min-width:0;display:grid}.champion-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.champion-level,.champion-element{color:#fff;background:var(--win-edge-2);border-radius:6px;padding:0 6px;font-size:11px}.champion-info small{color:var(--win-muted)}.champion-card.greyed{opacity:.55}.champion-info .champion-refusal{color:#f59e0b;font-weight:600}.champion-talent{flex-wrap:wrap;align-items:baseline;gap:0 8px;display:flex}.champion-talent small{color:var(--win-muted);white-space:nowrap}.champion-talent .talent-head{font-weight:600}.champion-card button{white-space:nowrap;width:auto;margin:0}.login{--login-gold:var(--gold-bright);--login-panel:var(--panel);--login-edge:var(--panel-edge);--login-text:var(--text);--login-muted:var(--muted);--login-link:var(--accent);color:var(--login-text);background:#0b120d;position:fixed;inset:0;overflow:hidden auto}.login-splash{pointer-events:none;position:fixed;inset:0;overflow:hidden}.login-video{object-fit:cover;object-position:25% center;width:100%;height:100%;position:absolute;inset:0}.login-phase{z-index:10000;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.login-splash:after{content:"";background:radial-gradient(at 35% 45%,#0000 50%,#03060480 100%),linear-gradient(90deg,#0000 45%,#04080c8c 100%);position:absolute;inset:0}.login-side{gap:18px;width:min(380px,100vw - 32px);margin:7vh max(16px,6vw) 96px auto;display:grid;position:relative}.login-logo{text-align:center;letter-spacing:.02em;color:#0000;filter:drop-shadow(0 2px #3b2208)drop-shadow(0 0 2px #1a0e02)drop-shadow(0 6px 14px #000000b3);background:linear-gradient(#fff6d8 0%,#f2cf7a 38%,#b07a2c 62%,#f0c76a 100%);-webkit-background-clip:text;background-clip:text;margin:0 0 1vh;font:900 clamp(44px,6vw,76px)/1 Georgia,Times New Roman,serif}.login-panel{background:var(--login-panel);border:2px solid var(--login-edge);box-shadow:0 0 0 1px var(--frame-outline), 0 12px 30px #0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:8px;margin:0;padding:0 0 18px}.login-head{color:var(--login-gold);border-bottom:1px solid var(--login-edge);background:linear-gradient(#ffffff0d,#0000);margin:0 0 14px;padding:10px 16px;font-size:17px;font-weight:600}.login-fields{gap:12px;padding:0 24px;display:grid}.login-fields>label{color:var(--login-text);gap:5px;font-size:14px;display:grid}.login-fields input:not([type=checkbox]){font:inherit;border:1px solid var(--wood-edge);background:var(--wood-dark);color:var(--text);border-radius:6px;padding:7px 9px}.login-fields input:not([type=checkbox]):focus{outline:2px solid var(--login-gold);outline-offset:0}.login-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.login-check{color:var(--login-muted);cursor:pointer;align-items:center;gap:7px;font-size:13px;display:inline-flex}.login-check input{accent-color:var(--login-gold);width:15px;height:15px;margin:0}#auth .login-go{margin-left:auto;padding:7px 22px}.login-link{border-top:1px solid var(--login-edge);color:var(--login-text);margin:4px 0 0;padding-top:12px;font-size:14px}#auth .link{font:inherit;color:var(--login-link);cursor:pointer;background:0 0;border:0;padding:0}#auth .link:hover{text-decoration:underline}.login-panel .subtitle{color:var(--login-muted);margin:0;padding:0 24px}.login-panel .error{min-height:0;margin:10px 24px 0}.login-panel .error:empty{display:none}#auth .login-guest{width:100%;padding:11px 16px;font-size:16px}.login-options{right:max(16px,2vw);bottom:max(14px, env(safe-area-inset-bottom));text-shadow:0 1px 3px #000;justify-items:end;gap:7px;display:grid;position:absolute}#auth .login-options .link{justify-self:end;width:auto}.login-options .login-check,#auth .login-options .link{color:#f4ecd8}@media (height<=640px){.login-side{gap:10px;margin-top:12px;margin-bottom:16px}.login-logo{font-size:38px}.login-head{margin-bottom:8px;padding:6px 16px}.login-fields{gap:8px}.login-options{width:min(380px,100vw - 32px);margin:0 max(16px,6vw) 24px auto;position:relative;bottom:auto;right:auto}}@media (width<=720px){.login-side{margin:4vh auto 16px}.login-options{justify-items:center;width:min(380px,100vw - 32px);margin:0 auto 24px;position:relative;bottom:auto;right:auto}#auth .login-options .link{justify-self:center}}body.short-screen .hud-column{max-height:calc(100vh - var(--edge-top) - var(--edge-bottom))}body.short-screen .hud-column:has(.hud.expanded){z-index:16}body.short-screen .hud:not(.expanded){cursor:pointer;width:210px;padding:6px 10px}body.short-screen .hud:not(.expanded) .hud-title button,body.short-screen .hud:not(.expanded) .bar-exp,body.short-screen .hud:not(.expanded) #hud-body>:not(.bar):not(.hud-beast){display:none!important}body.short-screen .quest-tracker{gap:0;width:210px;padding:4px 46px 4px 10px;font-size:12px;line-height:1.25}body.short-screen .quest-chapter,body.short-screen .quest-level,body.short-screen .quest-fold,body.short-screen .quest-auto-status,body.short-screen #quest-auto-label{display:none}body.short-screen .quest-tracker .quest-title{white-space:nowrap;text-overflow:ellipsis;padding-right:0;overflow:hidden}body.short-screen .quest-tracker .quest-objective{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}body.short-screen .quest-tracker .quest-auto{width:36px;min-height:36px;margin:0;padding:0;line-height:1;position:absolute;top:50%;right:8px;transform:translateY(-50%)}body.short-screen .quest-tracker .quest-auto-glyph{margin:0;font-size:18px}body.short-screen .hud:not(.expanded) .hud-beast{margin-top:2px}body.short-screen .hud-menu{max-width:calc(100vw - var(--edge-left) - var(--edge-right) - 234px - var(--minimap-width,0px));flex-wrap:nowrap;gap:2px}body.short-screen.dialogue-open .hud-menu{display:none}body.short-screen .hud-menu button{flex:0 48px;width:auto;min-width:0;min-height:48px;padding:0}body.short-screen .hud-menu #hud-bag{order:1}body.short-screen .hud-menu #hud-character{order:2}body.short-screen .hud-menu #hud-skills{order:3}body.short-screen .hud-menu #hud-quests{order:4}body.short-screen .hud-menu #hud-menu-fold{order:5}body.short-screen .hud-menu :is(#hud-hub,#hud-formation,#hud-auto-settings,#hud-party,#hud-friends,#hud-settings){order:7}body.short-screen .hud-menu:not(.more-open) :is(#hud-hub,#hud-formation,#hud-auto-settings,#hud-party,#hud-friends,#hud-settings){display:none}body.short-screen .hud-menu #hud-settings{position:relative;top:auto;right:auto}body.short-screen .hud-menu:not(.more-open) #hud-menu-badge{display:inline-block}body.short-screen .hud-menu:not(.more-open) #hud-menu-badge[hidden]{display:none}body.short-screen .hud-menu.more-open{box-sizing:content-box;z-index:17;background:#241810e6;border:1px solid #8a6a38;border-radius:8px;flex-wrap:wrap;width:298px;max-width:none;padding:4px}body.short-screen .hud-menu.more-open:after{content:"";flex-basis:100%;order:6;height:0}body.short-screen button.hud-auto{width:48px;min-height:48px;padding:0}body.short-screen button.hud-recall{top:calc(60% - 56px)}body.short-screen .menu-glyph{text-align:center;width:32px;height:32px;line-height:32px}body.short-screen .hud-menu :is(#hud-hub,#hud-friends,#hud-formation) .menu-glyph{font-size:22px;line-height:32px}body.short-screen .menu-label{font-size:10px}body.short-screen .minimap-head{margin-bottom:2px}body.short-screen .minimap-big,body.short-screen .minimap .chat-toggle{min-height:32px}body.short-screen .minimap-map{width:170px;min-height:0;margin-top:2px;padding:2px 4px;font-size:11px;line-height:1.25}.hud-menu-mark{display:none}body.short-screen .hud:not(.expanded) .hud-menu-mark{color:var(--muted);margin-left:auto;font-size:16px;line-height:1;display:inline}body.short-screen .panel,body.short-screen .panel.wide{border:none;border-radius:0;width:100vw;padding-top:0;scroll-padding-top:72px;inset:0}body.short-screen .panel-head{z-index:1;background:var(--wood);padding:6px 0;position:sticky;top:0}body.short-screen .window{padding:0}body.short-screen .window-card{border:none;border-radius:0;width:100vw;max-width:none;height:100%;max-height:100%;padding-top:0}body.short-screen .window-head{z-index:1;background:var(--win-bg-2);padding-top:8px;position:sticky;top:0}body.short-screen .shop-filter{flex-wrap:nowrap;overflow-x:auto}body.short-screen .shop-filter button{flex:none}body.touch-mode .chat{min-width:min(390px,100vw - 320px);max-width:calc(100vw - 320px);font-size:16px;left:50%;transform:translate(-50%)}body.touch-mode .chat-tabs button,body.touch-mode .chat-channel{font-size:14px}body.touch-mode.dialogue-open .chat{display:none}body.touch-mode .toast{top:12px}body.short-screen .toast{top:calc(var(--edge-top) + 54px);width:max-content;max-width:calc(100vw - 2 * var(--edge-left) - 2 * 216px);font-size:12px;line-height:1.3}.chat-icon{display:none}body.short-screen .chat.collapsed{cursor:pointer;width:auto;min-width:0}body.short-screen .chat.collapsed .chat-tabs,body.short-screen .chat.collapsed .chat-toggle{display:none}body.short-screen .chat.collapsed .chat-icon{font-size:20px;line-height:1;display:inline}body.short-screen .chat.collapsed .chat-head{padding:8px 12px}body.short-screen .chat:not(.collapsed){z-index:25;width:min(560px,100vw - 24px);max-width:calc(100vw - 24px)}body.short-screen .chat:not(.collapsed) .chat-log{height:40vh}body.short-screen .tutorial-card{width:min(340px,100vw - 24px);padding:6px 10px}body.short-screen .tutorial-th{font-size:13px;line-height:1.35}body.short-screen .tutorial-en{display:none}body.short-screen .tutorial-buttons{margin-top:2px}body.short-screen .tutorial-card button{min-height:28px}body.short-screen #create .modal-card.wide,body.short-screen #select .modal-card.wide{width:calc(100vw - 2 * var(--edge-left));gap:6px;max-height:calc(100vh - 8px)}body.short-screen #create-form{gap:6px}body.short-screen #create h2{margin:0;font-size:16px}body.short-screen .create-steps li{padding:1px 4px;font-size:11px}body.short-screen #create fieldset{padding:4px 8px 8px}body.short-screen .element-cards,body.short-screen .champion-picks{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}body.short-screen canvas.create-figure,body.short-screen div.create-figure{height:72px}body.short-screen div.create-figure{padding-bottom:8px}body.short-screen div.create-figure img{height:56px}body.short-screen canvas.create-stage{height:110px}body.short-screen #create .modal-card.wide{flex-direction:column;height:calc(100vh - 8px);display:flex;overflow:hidden}body.short-screen #create-form{flex-direction:column;flex:1;min-height:0;display:flex}body.short-screen #create-form>.create-step{flex:1;min-height:0;overflow-y:auto}body.short-screen #create-form>.row{flex:none;justify-content:flex-end}body.short-screen #create-error:empty{display:none}:where(.theme-journal) body.short-screen :is(.hud,.quest-tracker,.minimap,.toast){border-width:8px}body.short-screen .hud:not(.expanded){width:170px;padding:2px 6px;font-size:11px}body.short-screen .hud:not(.expanded) .hud-title{margin-bottom:0}body.short-screen .hud:not(.expanded) .bar{grid-template-columns:18px 1fr 52px;gap:4px;margin:1px 0}body.short-screen .hud:not(.expanded) .bar-label,body.short-screen .hud:not(.expanded) .bar-text,body.short-screen .hud:not(.expanded) .hud-beast{font-size:10px}body.short-screen .hud:not(.expanded) .bar-track{height:6px}body.short-screen .hud:not(.expanded) .hud-beast{margin-top:0;line-height:1.3}body.short-screen .quest-tracker{align-content:center;width:170px;min-height:30px;padding:2px 34px 2px 6px;font-size:11px}body.short-screen .quest-tracker:has(.quest-objective:not(:empty)) .quest-title{display:none}body.short-screen .quest-tracker .quest-objective{-webkit-line-clamp:1}body.short-screen .quest-tracker .quest-auto{width:30px;height:30px;min-height:30px;right:2px}body.short-screen .quest-tracker .quest-auto-glyph{font-size:15px}body.short-screen .minimap-map{white-space:nowrap;text-overflow:ellipsis;width:140px;overflow:hidden}body.short-screen .minimap-map :is(.map-en,.map-band){display:none}body.short-screen .minimap-big,body.short-screen .minimap .chat-toggle{min-height:28px;font-size:11px}body.short-screen .chat.collapsed{border:1px solid var(--gold);background:var(--panel);opacity:.85;border-image:;border-radius:50%;width:44px;min-width:0;height:44px;padding:0}body.short-screen .chat.collapsed .chat-head{justify-content:center;height:100%;padding:0}body.short-screen .chat.collapsed .chat-icon{font-size:18px}body.short-screen .battle-panel{width:min(430px, calc(100vw - 2 * var(--battle-edge-right) - 200px));height:calc(20px + 2 * var(--battle-row) + 20px)}body.short-screen .battle-top{background:0 0;border:none;border-radius:0;max-width:none;padding:0 40px 2px 4px;font-size:12px;line-height:18px;position:static;transform:none}body.short-screen .battle-actions{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(4,1fr);grid-auto-flow:row;column-gap:2px}body.short-screen .battle-actions button,body.short-screen .battle-submenu button{padding-left:16px;font-size:13px}body.short-screen .battle-submenu{grid-template-columns:1fr 1fr;grid-auto-rows:var(--battle-row);align-content:start;display:grid}body.short-screen .battle-hint{white-space:nowrap;text-overflow:ellipsis;max-height:1lh;font-size:12px}body.short-screen .battle-targets{grid-template-columns:1fr 1fr;grid-auto-rows:var(--battle-row);align-content:start;display:grid}body.short-screen .battle-targets button{font-size:13px}body.touch-mode{--battle-row:36px}body.touch-mode .battle-actions button,body.touch-mode .battle-submenu button,body.touch-mode .battle-targets button,body.touch-mode .battle-back{min-height:0}.install-hint{z-index:50;background:var(--panel);border:1px solid var(--accent);border-radius:10px;align-items:center;gap:12px;width:min(460px,100vw - 24px);padding:10px 14px;display:flex;position:fixed;top:12px;left:50%;transform:translate(-50%)}.install-hint p{flex:1;margin:0;font-size:13px}body.touch-mode button,body.touch-mode select,body.touch-mode input:not([type=checkbox]):not([type=radio]){min-height:44px}body.touch-mode input[type=checkbox],body.touch-mode input[type=radio]{width:24px;height:24px}.tutorial-ring{z-index:900;pointer-events:none;border:3px solid #f2cf7a;border-radius:10px;position:fixed;box-shadow:0 0 0 9999px #0805026b,0 0 16px 4px #f2cf7ad9}.tutorial-ring:after{content:"";border:4px solid #fff3c9;border-radius:14px;animation:.6s ease-in-out infinite alternate tutorial-blink;position:absolute;inset:-8px;box-shadow:0 0 14px 4px #fff3c9e6}.tutorial-ring.soft{box-shadow:0 0 0 9999px #08050233,0 0 16px 4px #f2cf7ad9}@keyframes tutorial-blink{to{opacity:.08}}.tutorial-arrow{z-index:902;pointer-events:none;filter:drop-shadow(0 0 6px #f2cf7ae6);width:44px;height:44px;position:fixed}.tutorial-arrow[data-side=below]{rotate:180deg}.tutorial-arrow[data-side=left]{rotate:-90deg}.tutorial-arrow[data-side=right]{rotate:90deg}.tutorial-arrow svg{animation:.45s ease-in infinite alternate tutorial-bounce;display:block}@keyframes tutorial-bounce{0%{transform:translateY(-10px)}to{transform:translateY(0)}}.tutorial-card{z-index:901;color:#f6ecd6;background:#241810;border:2px solid #f2cf7a;border-radius:8px;width:min(320px,100vw - 24px);padding:10px 12px;position:fixed;box-shadow:0 6px 18px #0009}.tutorial-card p{margin:0}.tutorial-th{font-size:15px;line-height:1.45}.tutorial-en{opacity:.72;margin-top:3px;font-size:12px;line-height:1.35}.tutorial-buttons{justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.tutorial-card .tutorial-ok{color:#241810;white-space:nowrap;background:#f2cf7a;border:none;border-radius:4px;padding:5px 12px;font-weight:600}.tutorial-card .tutorial-ok.quiet{color:#f6ecd6;opacity:.75;background:0 0;order:1;padding:4px 2px;font-size:12px;font-weight:400;text-decoration:underline}.tutorial-card .tutorial-skip{box-shadow:none;color:#f6ecd6;opacity:.75;white-space:nowrap;background:0 0;border:none;padding:4px 2px;font-size:12px;text-decoration:underline}body.auto-lesson #battle-auto,body.auto-lesson #quest-auto,body.auto-lesson #hud-auto{filter:grayscale();opacity:.6}body.auto-lesson #battle-auto:after,body.auto-lesson #quest-auto:after,body.auto-lesson #hud-auto:after{content:" 🔒"}@media (prefers-reduced-motion:reduce){.tutorial-ring:after,.tutorial-arrow svg{animation:none}}@media (height<=420px){.tutorial-card{width:min(280px,100vw - 24px);padding:7px 9px}.tutorial-th{font-size:13px}.tutorial-en{display:none}.tutorial-buttons{margin-top:4px}}:root:where(.theme-pixel){--wood-deep:#10102a;--wood-dark:#1a1838;--wood:#232042;--wood-raised:#2e2a56;--wood-hover:#3a3470;--wood-edge:#5b4f9a;--wood-edge-2:#7d6fd0;--gold:#f2e9d8;--gold-bright:#ffb15e;--bronze:#ffb15e;--bronze-hover:#ffc27e;--frame-outline:transparent;--panel:#232042f7;--panel-edge:#7d6fd0b3;--text:#f2e9d8;--muted:#a9a2c8;--accent:#ffb15e;--pixel-shadow:#10102a}:where(.theme-pixel) .hud,:where(.theme-pixel) .quest-tracker,:where(.theme-pixel) .minimap,:where(.theme-pixel) .panel,:where(.theme-pixel) .window-card,:where(.theme-pixel) .dialogue,:where(.theme-pixel) .modal-card,:where(.theme-pixel) .player-menu,:where(.theme-pixel) .party-invite,:where(.theme-pixel) .toast,:where(.theme-pixel) .chat{box-shadow:none;background-color:var(--panel);image-rendering:pixelated;background-clip:padding-box;border-style:solid;border-width:12px 16px 16px 12px;border-image:url(/ui/frame-card.png) 6 8 8 6;border-radius:0;outline:none}:where(.theme-pixel) .hud,:where(.theme-pixel) .quest-tracker{padding:0 2px}:where(.theme-pixel) .minimap{padding:0}:where(.theme-pixel) .panel{padding:2px 6px 6px}:where(.theme-pixel) .window-card{padding:4px 6px}:where(.theme-pixel) .dialogue{padding:2px 4px}:where(.theme-pixel) .modal-card{padding:8px}:where(.theme-pixel) .player-menu{padding:0 2px}:where(.theme-pixel) .party-invite{padding:0 4px}:where(.theme-pixel) .toast{padding:0 6px}:where(.theme-pixel) .chat:before,:where(.theme-pixel) .quest-tracker:before,:where(.theme-pixel) .minimap:before,:where(.theme-pixel) .dialogue:before,:where(.theme-pixel) .battle-panel:before{content:none}:where(.theme-pixel) .battle-panel{border:2px solid var(--gold);box-shadow:inset 0 0 0 2px var(--wood-edge), 4px 4px 0 var(--pixel-shadow);background:var(--panel);border-radius:0;outline:none}:where(.theme-pixel) button{color:var(--text);background:var(--wood-raised);border:2px solid var(--gold);box-shadow:inset 0 0 0 1px var(--wood-edge), 2px 2px 0 var(--pixel-shadow);border-radius:0}:where(.theme-pixel) button:hover:not(:disabled){color:var(--wood);background:var(--gold-bright);border-color:var(--gold)}:where(.theme-pixel) button:active:not(:disabled){box-shadow:inset 0 0 0 1px var(--wood-edge);transform:translate(1px,1px)}:where(.theme-pixel) button.primary,:where(.theme-pixel) .window-foot .done,:where(.theme-pixel) .window-card button.act,:where(.theme-pixel) button.confirm.buy{color:var(--wood);background:var(--gold-bright);box-shadow:inset 0 2px 0 #ffd9a8, inset 0 -2px 0 #e08a2e, 2px 2px 0 var(--pixel-shadow);font-weight:600}:where(.theme-pixel) button.primary:hover:not(:disabled),:where(.theme-pixel) .window-foot .done:hover:not(:disabled),:where(.theme-pixel) .window-card button.act:hover:not(:disabled),:where(.theme-pixel) button.confirm.buy:hover:not(:disabled){background:#ffc27e}:where(.theme-pixel) button.link{box-shadow:none}:where(.theme-pixel) .window-close{color:#fff;background:#a33a3a}:where(.theme-pixel) .hud-menu button,:where(.theme-pixel) button.hud-auto{box-shadow:none;color:var(--text);text-shadow:1px 0 var(--pixel-shadow), -1px 0 var(--pixel-shadow), 0 1px var(--pixel-shadow), 0 -1px var(--pixel-shadow);background:0 0;border:none}:where(.theme-pixel) .hud-menu button:hover:not(:disabled),:where(.theme-pixel) button.hud-auto:hover:not(:disabled){color:var(--gold-bright);background:0 0}:where(.theme-pixel) .hud-menu button:hover:not(:disabled) .menu-glyph,:where(.theme-pixel) button.hud-auto:hover:not(:disabled) .menu-glyph{transform:translateY(-2px)}:where(.theme-pixel) .menu-glyph{color:#0000;image-rendering:auto;width:44px;height:44px;filter:drop-shadow(1px 0 0 var(--pixel-shadow)) drop-shadow(-1px 0 0 var(--pixel-shadow)) drop-shadow(0 1px 0 var(--pixel-shadow)) drop-shadow(0 -1px 0 var(--pixel-shadow));background:50%/contain no-repeat;font-size:0;display:block}:where(.theme-pixel) #hud-character .menu-glyph{background-image:url(/ui/icon-character.png)}:where(.theme-pixel) #hud-bag .menu-glyph{background-image:url(/ui/icon-bag.png)}:where(.theme-pixel) #hud-skills .menu-glyph{background-image:url(/ui/icon-skills.png)}:where(.theme-pixel) #hud-quests .menu-glyph{background-image:url(/ui/icon-quests.png)}:where(.theme-pixel) #hud-party .menu-glyph{background-image:url(/ui/icon-party.png)}:where(.theme-pixel) #hud-auto .menu-glyph,:where(.theme-pixel) #hud-auto-settings .menu-glyph{background-image:url(/ui/icon-auto.png)}:where(.theme-pixel) #hud-settings .menu-glyph{background-image:url(/ui/icon-settings.png)}:where(.theme-pixel) #hud-menu-fold .menu-glyph{background-image:url(/ui/icon-menu.png)}:where(.theme-pixel) .chat{--wood-text:var(--text)}:where(.theme-pixel) .chat-tabs button.active,:where(.theme-pixel) .chat .chat-channel{color:var(--wood);background:var(--gold-bright)}:where(.theme-pixel) .chat .chat-input{background:var(--wood-deep);border-radius:0}:root:where(.theme-starry){--starry-ink:#05070b;--wood-deep:#0b1018;--wood-dark:#101823;--wood:#16202d;--wood-raised:#1f2c3d;--wood-hover:#2a3a50;--wood-edge:#6f6658;--wood-edge-2:#9f8a72;--gold:#ece8e0;--gold-bright:#e0a64e;--bronze:#c99a4b;--bronze-hover:#ddb062;--frame-outline:transparent;--panel:#101823f7;--panel-edge:#b4a18973;--text:#ece8de;--muted:#a6a9ad;--accent:#e0a64e}:where(.theme-starry) .hud,:where(.theme-starry) .quest-tracker,:where(.theme-starry) .minimap,:where(.theme-starry) .panel,:where(.theme-starry) .window-card,:where(.theme-starry) .dialogue,:where(.theme-starry) .modal-card,:where(.theme-starry) .player-menu,:where(.theme-starry) .party-invite,:where(.theme-starry) .toast,:where(.theme-starry) .chat{box-shadow:none;background:url(/ui/starry-field.png) repeat, var(--panel);background-clip:padding-box;border-style:solid;border-width:14px;border-image:url(/ui/starry-frame.png) 14 round;border-radius:0;outline:none}:where(.theme-starry) .hud,:where(.theme-starry) .quest-tracker,:where(.theme-starry) .player-menu{padding:0 2px}:where(.theme-starry) .minimap{padding:0}:where(.theme-starry) .panel{padding:2px 6px 6px}:where(.theme-starry) .window-card{padding:4px 6px}:where(.theme-starry) .dialogue{padding:2px 4px}:where(.theme-starry) .modal-card{padding:8px}:where(.theme-starry) .party-invite{padding:0 4px}:where(.theme-starry) .toast{padding:0 6px}:where(.theme-starry) .chat:before,:where(.theme-starry) .quest-tracker:before,:where(.theme-starry) .minimap:before,:where(.theme-starry) .dialogue:before{content:"";width:33px;height:36px;box-shadow:none;background:url(/ui/starry-star.png) no-repeat;inset:-20px auto auto -17px;transform:none}:where(.theme-starry) .battle-panel{border:2px solid var(--gold);box-shadow:inset 0 0 0 2px var(--wood-edge-2), 0 0 0 2px var(--starry-ink);background:url(/ui/starry-field.png) repeat, var(--panel);border-radius:4px;outline:none}:where(.theme-starry) .battle-panel:before{content:"";background:url(/ui/starry-star.png) no-repeat;width:33px;height:36px;inset:-22px auto auto -19px}:where(.theme-starry) button{color:var(--text);background:var(--wood-raised);border:2px solid var(--gold);box-shadow:inset 0 0 0 1px var(--wood-edge-2), 0 0 0 1px var(--starry-ink);border-radius:4px}:where(.theme-starry) button:hover:not(:disabled){background:var(--wood-hover);border-color:var(--gold-bright);box-shadow:inset 0 0 0 1px var(--bronze), 0 0 0 1px var(--starry-ink), 0 0 8px #e0a64e73}:where(.theme-starry) button:active:not(:disabled){background:var(--wood-dark);transform:translateY(1px)}:where(.theme-starry) button.primary,:where(.theme-starry) .window-foot .done,:where(.theme-starry) .window-card button.act,:where(.theme-starry) button.confirm.buy{color:#fff3dc;background:var(--wood-hover);border-color:var(--gold-bright);box-shadow:inset 0 0 0 1px var(--bronze), 0 0 0 1px var(--starry-ink), 0 0 6px #e0a64e59;font-weight:600}:where(.theme-starry) button.link{box-shadow:none}:where(.theme-starry) .window-close{color:#fff;background:#7a2e2e}:where(.theme-starry) .hud-menu button,:where(.theme-starry) button.hud-auto{box-shadow:none;color:var(--text);text-shadow:1px 0 var(--starry-ink), -1px 0 var(--starry-ink), 0 1px var(--starry-ink), 0 -1px var(--starry-ink);background:0 0;border:none}:where(.theme-starry) .hud-menu button:hover:not(:disabled),:where(.theme-starry) button.hud-auto:hover:not(:disabled){box-shadow:none;color:var(--gold-bright);background:0 0}:where(.theme-starry) .hud-menu button:hover:not(:disabled) .menu-glyph,:where(.theme-starry) button.hud-auto:hover:not(:disabled) .menu-glyph{transform:translateY(-2px)}:where(.theme-starry) .menu-glyph{color:#0000;background:50%/contain no-repeat;width:44px;height:44px;font-size:0;display:block}:where(.theme-starry) #hud-character .menu-glyph{background-image:url(/ui/starry-icon-character.png)}:where(.theme-starry) #hud-bag .menu-glyph{background-image:url(/ui/starry-icon-bag.png)}:where(.theme-starry) #hud-skills .menu-glyph{background-image:url(/ui/starry-icon-skills.png)}:where(.theme-starry) #hud-quests .menu-glyph{background-image:url(/ui/starry-icon-quests.png)}:where(.theme-starry) #hud-party .menu-glyph{background-image:url(/ui/starry-icon-party.png)}:where(.theme-starry) #hud-auto .menu-glyph,:where(.theme-starry) #hud-auto-settings .menu-glyph{background-image:url(/ui/starry-icon-auto.png)}:where(.theme-starry) #hud-settings .menu-glyph{background-image:url(/ui/starry-icon-settings.png)}:where(.theme-starry) #hud-menu-fold .menu-glyph{background-image:url(/ui/starry-icon-menu.png)}:where(.theme-starry) .chat{--wood-text:var(--text)}:where(.theme-starry) .chat-tabs button.active,:where(.theme-starry) .chat .chat-channel{color:var(--gold-bright);background:var(--wood-dark);border-color:var(--gold-bright)}:where(.theme-starry) .chat .chat-input{background:#05070b99}:root:where(.theme-journal){--journal-ink:#2a1608;--journal-leather:#7a4a2e;--journal-leather-dark:#3a2312;--wood-deep:#e6d2a8;--wood-dark:#efdfbd;--wood:#f6e8cb;--wood-raised:#ecd9b2;--wood-hover:#e2cb9c;--wood-edge:#b08a5a;--wood-edge-2:#8a6238;--gold:#6b4226;--gold-bright:#b8741a;--bronze:#c9973a;--bronze-hover:#ddb050;--frame-outline:transparent;--panel:#f6e8cbfa;--panel-edge:#6b422666;--text:#3a2614;--muted:#7a5c40;--accent:#9a4a14;--wear-up:#1f7a34;--wear-down:#b3261e;--win-title:#7a2e10;--win-gold:#8a5a10;--win-amber:#a8600f;--win-faint:#9a8466}:where(.theme-journal) .hud,:where(.theme-journal) .quest-tracker,:where(.theme-journal) .minimap,:where(.theme-journal) .panel,:where(.theme-journal) .window-card,:where(.theme-journal) .dialogue,:where(.theme-journal) .modal-card,:where(.theme-journal) .player-menu,:where(.theme-journal) .party-invite,:where(.theme-journal) .toast,:where(.theme-journal) .chat{box-shadow:none;background:url(/ui/journal-paper.png) repeat, var(--panel);color:var(--text);background-clip:padding-box;border-style:solid;border-width:16px;border-image:url(/ui/journal-frame.png) 22 round;border-radius:0;outline:none}:where(.theme-journal) .hud,:where(.theme-journal) .quest-tracker,:where(.theme-journal) .player-menu{padding:0 2px}:where(.theme-journal) .minimap{padding:0}:where(.theme-journal) .panel{padding:2px 6px 6px}:where(.theme-journal) .window-card{padding:4px 6px}:where(.theme-journal) .dialogue{padding:2px 4px}:where(.theme-journal) .modal-card{padding:8px}:where(.theme-journal) .party-invite{padding:0 4px}:where(.theme-journal) .toast{padding:0 6px}:where(.theme-journal) .chat:before,:where(.theme-journal) .quest-tracker:before,:where(.theme-journal) .minimap:before,:where(.theme-journal) .dialogue:before,:where(.theme-journal) .battle-panel:before{content:none}:where(.theme-journal) .battle-panel{border:3px solid var(--journal-leather-dark);box-shadow:inset 0 0 0 3px var(--journal-leather), inset 0 0 0 4px var(--bronze);background:url(/ui/journal-paper.png) repeat, var(--panel);color:var(--text);border-radius:6px;outline:none}:where(.theme-journal) .battle-actions button,:where(.theme-journal) .battle-submenu button,:where(.theme-journal) .battle-targets button{color:var(--text);box-shadow:none}:where(.theme-journal) button{color:#f6ead0;background:var(--journal-leather);border:2px solid var(--journal-leather-dark);border-radius:4px;box-shadow:inset 0 0 0 1px #a8683e}:where(.theme-journal) button:hover:not(:disabled){border-color:var(--journal-leather-dark);box-shadow:inset 0 0 0 1px var(--bronze);background:#9a5e36}:where(.theme-journal) button:active:not(:disabled){background:#5e3820;transform:translateY(1px)}:where(.theme-journal) .ware-card{color:var(--text)}:where(.theme-journal) .ware-card:hover:not(:disabled){background:#eed9b0}:where(.theme-journal) button.primary,:where(.theme-journal) .window-foot .done,:where(.theme-journal) .window-card button.act,:where(.theme-journal) button.confirm.buy{color:#fff3dc;box-shadow:none;text-shadow:0 1px 0 var(--journal-ink);background:0 0;border-style:solid;border-width:12px;border-image:url(/ui/journal-button.png) 22 fill round;border-radius:0;padding:0 8px;font-weight:600}:where(.theme-journal) button.primary:hover:not(:disabled),:where(.theme-journal) .window-foot .done:hover:not(:disabled),:where(.theme-journal) .window-card button.act:hover:not(:disabled),:where(.theme-journal) button.confirm.buy:hover:not(:disabled){box-shadow:none;background:0 0;border-image-source:url(/ui/journal-button-hover.png)}:where(.theme-journal) button.primary:active:not(:disabled),:where(.theme-journal) .window-foot .done:active:not(:disabled),:where(.theme-journal) .window-card button.act:active:not(:disabled),:where(.theme-journal) button.confirm.buy:active:not(:disabled){background:0 0;border-image-source:url(/ui/journal-button-pressed.png)}:where(.theme-journal) button.link{color:var(--accent);box-shadow:none;background:0 0;border:none}:where(.theme-journal) .window-close{color:#fff;background:#8a2e1e}:where(.theme-journal) input,:where(.theme-journal) select,:where(.theme-journal) textarea{color:var(--text);background-color:var(--wood-dark);border-color:var(--wood-edge)}:where(.theme-journal) .hud-menu button,:where(.theme-journal) button.hud-auto{box-shadow:none;color:#f6ead0;text-shadow:1px 0 var(--journal-ink), -1px 0 var(--journal-ink), 0 1px var(--journal-ink), 0 -1px var(--journal-ink);background:0 0;border:none}:where(.theme-journal) .hud-menu button:hover:not(:disabled),:where(.theme-journal) button.hud-auto:hover:not(:disabled){box-shadow:none;color:#ffd27a;background:0 0}:where(.theme-journal) .hud-menu button:hover:not(:disabled) .menu-glyph,:where(.theme-journal) button.hud-auto:hover:not(:disabled) .menu-glyph{transform:translateY(-2px)}:where(.theme-journal) .menu-glyph{color:#0000;background:50%/contain no-repeat;width:44px;height:44px;font-size:0;display:block}:where(.theme-journal) #hud-character .menu-glyph{background-image:url(/ui/journal-icon-character.png)}:where(.theme-journal) #hud-bag .menu-glyph{background-image:url(/ui/journal-icon-bag.png)}:where(.theme-journal) #hud-skills .menu-glyph{background-image:url(/ui/journal-icon-skills.png)}:where(.theme-journal) #hud-quests .menu-glyph{background-image:url(/ui/journal-icon-quests.png)}:where(.theme-journal) #hud-party .menu-glyph{background-image:url(/ui/journal-icon-party.png)}:where(.theme-journal) #hud-auto .menu-glyph,:where(.theme-journal) #hud-auto-settings .menu-glyph{background-image:url(/ui/journal-icon-auto.png)}:where(.theme-journal) #hud-settings .menu-glyph{background-image:url(/ui/journal-icon-settings.png)}:where(.theme-journal) #hud-menu-fold .menu-glyph{background-image:url(/ui/journal-icon-menu.png)}:where(.theme-journal) .chat{--wood-text:#f6ead0}:where(.theme-journal) .chat-tabs button.active,:where(.theme-journal) .chat .chat-channel{color:#fff3dc;border-color:var(--bronze);background:#9a5e36}:where(.theme-journal) .chat .chat-input{color:var(--text);background:var(--wood-dark)}:where(.theme-journal) .chat .chat-input::placeholder{color:var(--muted)}:where(.theme-journal) .chat-line .time,:where(.theme-journal) .chat-line .channel{color:#8a7458}:where(.theme-journal) .chat-line .sender{color:#1f5f8a}:where(.theme-journal) .chat-line .sender.self{color:var(--accent)}:where(.theme-journal) .chat-line.world .channel{color:#6b3fa0}:where(.theme-journal) .chat-line.party .channel{color:#2f7a3a}:where(.theme-journal) .chat-line.whisper,:where(.theme-journal) .chat-line.whisper .channel{color:#a3326e}:where(.theme-journal) .chat-line.system{color:#a8321f}:where(.theme-journal) .element.earth{color:#8a5a1a}:where(.theme-journal) .element.water{color:#2a5ea8}:where(.theme-journal) .element.fire{color:#b8401f}:where(.theme-journal) .element.wind{color:#2f7a4a}:where(.theme-journal) .error,:where(.theme-journal) .element-cons,:where(.theme-journal) .party-away,:where(.theme-journal) button.act.drop{color:#a8321f}:where(.theme-journal) .success,:where(.theme-journal) .element-pros{color:#2f7a3a}:where(.theme-journal) .element-warning,:where(.theme-journal) .champion-skills,:where(.theme-journal) .champion-info .champion-refusal,:where(.theme-journal) .tome-warning,:where(.theme-journal) .trade-refusal,:where(.theme-journal) .hand-on-note{color:#a8600f}:where(.theme-journal) .stall-price-tag,:where(.theme-journal) .ware-price strong,:where(.theme-journal) .exchange-cost,:where(.theme-journal) .trade-lock.on{color:#8a5a10}:where(.theme-journal) .tree-node.owned .tree-kind,:where(.theme-journal) .rank-extra.owned{color:#5a2e08}:where(.theme-journal) .badge.consumable{color:#2f7a3a}:where(.theme-journal) .badge.equipment{color:#8a5a10}:where(.theme-journal) .badge.material{color:#6b3fa0}:where(.theme-journal) .story-chapter,:where(.theme-journal) .quest-tab,:where(.theme-journal) .codex-map{background:#78502814}:where(.theme-journal) .cat-tab.active,:where(.theme-journal) .shop-tab.active,:where(.theme-journal) .exchange-pick.active,:where(.theme-journal) .qty-quick.active,:where(.theme-journal) .page-btn.active,:where(.theme-journal) .tab.active,:where(.theme-journal) .battle-actions button[aria-pressed=true],:where(.theme-journal) .battle-submenu button[aria-pressed=true],:where(.theme-journal) .battle-targets button[aria-pressed=true]{color:#ffe3a8;border-color:var(--bronze);background:#9a5e36}
