:root{--bg:#eceee4;--surface:#fbfaf3;--surface-2:#f2efe1;--ink:#2a2b3a;--muted:#646873;--line:#d8d4c2;--arcane:#6c48ad;--arcane-ink:#ffffff;--gold:#b5832a;--moss:#557f4b;--ember:#c4573a;--steel:#4b6fb0;--f-display:"Kurale", Georgia, "Times New Roman", serif;--f-body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#15161d;--surface:#1e202b;--surface-2:#262836;--ink:#ebe8dc;--muted:#a3a6b2;--line:#33364a;--arcane:#b597ef;--arcane-ink:#1a1230;--gold:#e1b14f;--moss:#8fbf7f;--ember:#ec8a6c;--steel:#8fb0ec;color-scheme:dark}}:root[data-theme=dark]{--bg:#15161d;--surface:#1e202b;--surface-2:#262836;--ink:#ebe8dc;--muted:#a3a6b2;--line:#33364a;--arcane:#b597ef;--arcane-ink:#1a1230;--gold:#e1b14f;--moss:#8fbf7f;--ember:#ec8a6c;--steel:#8fb0ec;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--f-body)}.wrap{max-width:1280px;margin:0 auto;padding-inline:clamp(16px,3vw,32px);padding-block:26px 48px;display:grid;gap:24px}.eyebrow{margin:0 0 6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}h1{margin:0;font:400 clamp(36px,6vw,62px)/1 var(--f-display);text-wrap:balance}.lead{max-width:70ch;margin:10px 0 0;color:var(--muted)}h2{margin:0;font:400 22px/1.2 var(--f-display)}svg.i{width:1em;height:1em;flex:none;vertical-align:-.15em}.table{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start}@media(max-width:980px){.table{grid-template-columns:minmax(0,1fr)}}.scene{position:relative;aspect-ratio:4/3;max-width:100%;border-radius:20px;overflow:hidden;background:#cfdfe5;border:1px solid var(--line);touch-action:manipulation}@media(min-width:981px){.scene{position:sticky;top:calc(env(safe-area-inset-top,0px) + 16px)}}#gl,#gl canvas{width:100%;height:100%;display:block}#gl canvas{cursor:default}.hud{position:absolute;left:12px;top:12px;pointer-events:none;font:800 13px/1.25 var(--f-body);color:#24414f;background:#ffffffdb;padding:7px 12px;border-radius:12px;box-shadow:0 4px 14px #24414f26;font-variant-numeric:tabular-nums}.hud span{display:block;font-weight:700;opacity:.75;font-size:12px}.die{position:absolute;left:50%;top:14px;transform:translate(-50%);pointer-events:none;font:400 26px/1 var(--f-display);color:#fff;background:#6c48ad;padding:9px 16px 8px;border-radius:14px;box-shadow:0 8px 24px #3c1e6e59;text-align:center;white-space:nowrap}.die small{display:block;font:800 11px/1.2 var(--f-body);letter-spacing:.04em;opacity:.9;margin-top:3px}.die.crit{background:#b5832a}.die.fail{background:#7d5b55}.die.pop{animation:pop .45s cubic-bezier(.2,1.6,.4,1)}@keyframes pop{0%{transform:translate(-50%) scale(.4)}to{transform:translate(-50%) scale(1)}}.hint{position:absolute;right:12px;top:12px;max-width:210px;pointer-events:none;font:700 12px/1.35 var(--f-body);color:#24414f;background:#ffffffb8;padding:6px 10px;border-radius:10px}.fallback{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:#24414f;font:800 15px var(--f-body);text-align:center;padding:20px}.card{position:absolute;left:12px;bottom:12px;right:12px;max-width:360px;display:grid;gap:6px;font-family:var(--f-body);color:#21323b;background:#fffdf5f5;border-radius:16px;padding:13px 15px;box-shadow:0 12px 34px #1e283c40}.card .k{font:800 12px/1.2 var(--f-body);color:#6c48ad;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.card .k .coins{display:inline-flex;gap:1px;color:#b5832a}.card h3{margin:0;font:400 21px/1.15 var(--f-display);text-wrap:balance;overflow-wrap:anywhere}.card dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:2px 10px;font-size:13px}.card dt{color:#6a6f78}.card dd{margin:0;min-width:0;overflow-wrap:anywhere}.card .riddle{margin:0;font:400 16px/1.35 var(--f-display);color:#3b3350}.card .btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.card button,.card a{font:800 13px/1 var(--f-body);cursor:pointer;text-decoration:none;border:0;border-radius:999px;padding:8px 13px;background:#6c48ad;color:#fff;display:inline-flex;gap:6px;align-items:center}.card .alt{background:#ece6d6;color:#21323b}.card .shield{background:#e3ebf6;color:#2b4a7c}.card .shield:disabled{opacity:.45;cursor:not-allowed}.card .timer{color:#c4573a;font-weight:800}.loadout{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:14px}.loadout header{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.lvl{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:right}.xp{height:7px;border-radius:99px;background:var(--surface-2);overflow:hidden;margin-top:5px;width:130px}.xp i{display:block;height:100%;background:var(--gold);width:0;transition:width .6s}.label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}.classes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.cls{display:grid;justify-items:center;gap:3px;padding:9px 4px 8px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;font:800 12px/1.1 var(--f-body);min-width:0}.cls svg{width:26px;height:26px}.cls[aria-pressed=true]{border-color:var(--c);box-shadow:inset 0 0 0 1px var(--c);background:var(--surface-2)}.cls[aria-pressed=true] svg{color:var(--c)}.cls-hint{margin:-6px 0 0;font-size:12.5px;color:var(--muted)}.slot{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start}.slot-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);border:1px dashed var(--line);color:var(--muted)}.slot-ico svg{width:24px;height:24px}.slot.filled .slot-ico{border-style:solid;color:var(--arcane);border-color:var(--arcane)}.slot-body{display:grid;gap:6px;min-width:0}.slot-title{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.slot-title b{font:400 17px/1.1 var(--f-display)}.slot-title span{font-size:12px;color:var(--muted);text-align:right;overflow-wrap:anywhere}.coins{display:flex;gap:6px;flex-wrap:wrap}.coin{display:grid;justify-items:center;gap:2px;padding:6px 7px 5px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--muted);cursor:pointer;font:700 11px/1.1 var(--f-body);min-width:62px}.coin svg{width:20px;height:20px}.coin small{font-weight:600;font-size:10.5px;font-variant-numeric:tabular-nums}.coin[aria-pressed=true]{color:var(--ink);border-color:var(--gold);background:var(--surface-2)}.coin[aria-pressed=true] svg{color:var(--gold)}.coin[data-t="1"] svg{--c:#b07040}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--muted);cursor:pointer;font:700 12.5px/1 var(--f-body)}.chip[aria-pressed=true]{color:var(--arcane-ink);background:var(--arcane);border-color:var(--arcane)}.pick{display:grid;min-width:0}.pick select{font:600 13px var(--f-body);padding:6px 8px;border-radius:9px;border:1px solid var(--line);background:var(--bg);color:var(--ink);width:100%;max-width:100%;min-width:0}.x{font:700 12px/1 var(--f-body);border:0;background:none;color:var(--muted);cursor:pointer;padding:6px 4px;text-decoration:underline}.toggle{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.toggle input{margin-top:3px;accent-color:var(--arcane)}.toggle small{display:block;color:var(--muted);font-size:12px}.seg{display:inline-grid;grid-auto-flow:column;border:1px solid var(--line);border-radius:10px;overflow:hidden}.seg button{font:800 12.5px/1 var(--f-body);padding:8px 12px;border:0;background:var(--bg);color:var(--muted);cursor:pointer}.seg button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.roster{display:flex;flex-wrap:wrap;gap:6px}.member{display:inline-flex;gap:5px;align-items:center;font-size:12.5px;padding:5px 9px;border-radius:999px;background:var(--surface-2)}.member svg{color:var(--steel)}.member.used svg{opacity:.3}.rollbar{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.rollrow{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.roll{display:inline-flex;gap:9px;align-items:center;font:400 19px/1 var(--f-display);padding:12px 18px;border-radius:14px;border:0;background:var(--arcane);color:var(--arcane-ink);cursor:pointer}.roll svg{width:22px;height:22px}.roll:disabled{opacity:.45;cursor:not-allowed}.gems{display:inline-flex;gap:4px;align-items:center;font-size:12.5px;color:var(--muted)}.gems svg{width:16px;height:16px;color:var(--arcane)}.gems svg.spent{opacity:.22}.ghost{font:700 12.5px/1 var(--f-body);padding:8px 11px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.status{margin:0;color:var(--muted);font-size:13.5px;min-height:1.5em}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--arcane);outline-offset:2px}.board{display:grid;gap:12px}.quests{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:14px}.quest{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:6px 16px;padding:16px 16px 14px;display:grid;gap:8px;min-width:0}.quest:before{content:"";position:absolute;top:-6px;left:50%;width:12px;height:12px;border-radius:50%;background:var(--ember);transform:translate(-50%);box-shadow:0 2px #0003}.quest .from{margin:0;font-size:12px;color:var(--muted);font-weight:700}.quest p{margin:0}.quest .txt{font:400 16.5px/1.4 var(--f-display)}.quest .row{display:flex;justify-content:space-between;align-items:center;gap:8px}.quest .reward{font-size:12px;color:var(--gold);font-weight:800;font-variant-numeric:tabular-nums}.quest.done{opacity:.6}.quest.done:after{content:"Выполнено";position:absolute;right:12px;top:12px;transform:rotate(-7deg);border:2px solid var(--moss);color:var(--moss);font:800 11px/1 var(--f-body);letter-spacing:.08em;text-transform:uppercase;padding:4px 6px;border-radius:4px}footer{color:var(--muted);font-size:13px;max-width:92ch}footer p{margin:0 0 6px}@media(max-width:560px){.card{left:8px;right:8px;bottom:8px;padding:10px 12px;gap:4px}.card h3{font-size:17px}.card dl{font-size:12px}.card dt:nth-of-type(n+4),.card dd:nth-of-type(n+4){display:none}.card button,.card a{padding:6px 10px;font-size:12px}.hint{display:none}.hud{font-size:12px;left:8px;top:8px}.die{font-size:20px;top:8px;left:auto;right:8px;transform:none}.die.pop{animation:none}.coin{min-width:0;flex:1}}
