.sb-workspace{width:100%;color:var(--text)}.sb-story{padding:18px 20px;margin:12px 0 18px;border-left:3px solid var(--accent,#d5a85c);background:var(--surface,#292a33);border-radius:0 10px 10px 0}.sb-story h3{margin:8px 0;font-family:Georgia,serif;font-size:22px}.sb-story p{max-width:75ch;line-height:1.65;margin:8px 0}.sb-story span{font-size:12px;color:var(--accent-text)}.sb-boss-dialogue p{font-style:italic}.sb-ending{border:1px solid var(--border,#8884);border-left:3px solid var(--accent,#d5a85c)}.sb-tutorial{padding:16px 0;border-bottom:1px solid var(--border,#8884)}.sb-tutorial h3{margin:6px 0}.sb-tutorial p{font-size:14px;line-height:1.5;margin:8px 0}.sb-tutorial span{font-size:12px;color:var(--accent-text)}.sb-combo{position:absolute;top:40%;left:6%;color:#fff0cf;background:#18202be8;padding:6px 10px;border-radius:6px;font-size:clamp(10px,1.3vw,14px);pointer-events:none}.sb-results{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 20px;margin:0;max-width:440px}.sb-results dt{font-size:12px}.sb-results dd{margin:2px 0;font-weight:700}.sb-overlay:has(.sb-results){position:relative;min-height:250px}.sb-arena:has(.sb-results)>canvas,.sb-arena:has(.sb-results)>.sb-fight-hud,.sb-arena:has(.sb-results)>.sb-fullscreen{display:none}.sb-loadout{position:absolute;top:5%;left:4%;right:4%;display:grid;gap:6px;color:#fff0cf;font-size:clamp(10px,1.2vw,14px);padding:10px;background:#18202be8;border-radius:8px;pointer-events:none}.sb-loadout span{font-size:.9em}.sb-challenge{border-top:1px solid var(--border,#8884);margin-top:24px;padding-top:12px}.sb-challenge label{display:flex;align-items:center;gap:12px}.sb-challenge select{padding:9px;background:var(--surface);color:var(--text);border:1px solid var(--border,#8884);border-radius:7px}.sb-warning{position:absolute;left:6%;right:6%;top:18%;padding:9px 12px;text-align:center;color:#fff0cf;background:#18202bef;border:1px solid #e5b362;border-radius:7px;font-size:clamp(10px,1.3vw,14px);pointer-events:none}.sb-fullscreen{position:absolute;bottom:15px;left:15px;z-index:3;font-size:11px!important;padding:7px!important}.sb-workspace:fullscreen{background:#111823;display:flex;flex-direction:column;justify-content:center;padding:12px;box-sizing:border-box;overflow:auto;color:#fff1d4}.sb-workspace:fullscreen .sb-arena{width:min(100%,calc((100dvh - 135px)*1.7778));margin:auto}.sb-workspace:fullscreen .sb-touch{justify-content:center;flex-shrink:0}.sb-workspace:fullscreen .sb-touch button{background:#1a202d;color:#fff1d4}.sb-workspace:fullscreen .sb-camp{max-width:960px;margin:auto;width:100%;color:#fff1d4}.sb-arena{position:relative;background:#171b24;overflow:hidden;border-radius:18px;border:1px solid #bba27855;isolation:isolate}.sb-arena canvas{display:block;width:100%;height:auto;outline-offset:-4px}.sb-title{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(#10131c22,#10131c99);color:#ffe8bf;text-align:center;pointer-events:none}.sb-title span{font-size:clamp(8px,1vw,12px);letter-spacing:.24em}.sb-title h2{font-family:Georgia,serif;font-size:clamp(28px,5vw,65px);letter-spacing:.08em;margin:12px 0}.sb-title p{color:#f4dec0}.sb-fight-hud{position:absolute;top:18px;left:4%;right:4%;display:grid;grid-template-columns:1fr 70px 1fr;gap:15px;color:#fff2dc;pointer-events:none;font-size:12px}.sb-fight-hud>div{display:grid;gap:5px}.sb-fight-hud>div:last-child{text-align:right}.sb-fight-hud meter{width:100%;height:18px}.sb-fight-hud strong{text-align:center;font-size:25px}.sb-fight-hud small{display:block;font-size:10px;font-weight:400}.sb-message{position:absolute;top:29%;left:0;right:0;text-align:center;color:#ffe3ac;font-weight:800;letter-spacing:.12em;pointer-events:none}.sb-pause{position:absolute;bottom:15px;right:15px}.sb-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#101521e8;color:#fff1d4;padding:20px;text-align:center}.sb-overlay h2{font:38px Georgia,serif;margin:0}.sb-overlay p{max-width:440px}.sb-workspace button{border:1px solid var(--border,#8886);border-radius:8px;padding:10px 14px;background:var(--surface,#292a33);color:var(--text);font:inherit;cursor:pointer}.sb-arena button{background:#1a202d;color:#ffebc6;border-color:#d7b77d66}.sb-workspace button:disabled{opacity:.5;cursor:default}.sb-workspace button:focus-visible,.sb-arena canvas:focus-visible{outline:3px solid #d5a85c}.sb-workspace button[aria-pressed=true]{border-color:#c69342;background:#b8913826}.sb-camp{padding:20px 0}.sb-camp nav{display:flex;gap:8px;padding-bottom:18px;flex-wrap:wrap}.sb-camp nav button{text-transform:capitalize}.sb-chapters{display:flex;overflow-x:auto;gap:8px;padding-bottom:15px}.sb-chapters button{min-width:145px}.sb-encounters{list-style:none;margin:0;padding:0}.sb-encounters li{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 4px;border-bottom:1px solid var(--border,#8884)}.sb-encounters span{font-size:10px;letter-spacing:.16em;color:var(--accent-text)}.sb-encounters h3{margin:4px 0}.sb-encounters p{font-size:13px;margin:0}.sb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.sb-camp table{width:100%;border-collapse:collapse;font-size:13px}.sb-camp th,.sb-camp td{text-align:left;padding:10px 4px;border-bottom:1px solid var(--border,#8884)}.sb-settings{display:grid;gap:16px}.sb-settings label{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.sb-settings select{padding:8px;background:var(--surface);color:var(--text)}.sb-touch{display:flex;flex-wrap:wrap;gap:7px;padding:12px 0}.sb-touch button{touch-action:none;-webkit-user-select:none;user-select:none;min-width:48px;min-height:48px}.sb-touch button:active{background:#b8913855}@media (max-width:600px){.sb-fight-hud{top:8px;gap:6px;grid-template-columns:1fr 42px 1fr;font-size:9px}.sb-fight-hud strong{font-size:18px}.sb-fight-hud meter{height:12px}.sb-pause{padding:5px!important;bottom:7px;right:7px;font-size:11px!important}.sb-overlay{gap:6px;padding:10px}.sb-overlay h2{font-size:25px}.sb-overlay p{font-size:12px;margin:3px}.sb-overlay button{padding:6px 10px}.sb-touch button{flex:1;padding:8px;font-size:12px}.sb-camp table{font-size:11px}.sb-camp td button{padding:6px;font-size:11px}}@media (prefers-reduced-motion:reduce){.sb-workspace *{scroll-behavior:auto;transition:none}}.sb-workspace:fullscreen #sb-controls-guide,.sb-workspace:fullscreen .sb-boss-dialogue{display:none}.sb-settings select:focus-visible,.sb-settings input:focus-visible,.sb-challenge select:focus-visible{outline:3px solid var(--accent-text);outline-offset:3px}.sb-workspace{--surface:var(--bg-card)}.sb-fight-hud{background:#18202bef;padding:8px;border-radius:8px}.sb-workspace:fullscreen{--surface:#1a202d;--text:#fff1d4;--accent-text:#fff1d4}.sb-warning{top:26%}.sb-arena canvas{touch-action:none}.sb-touch{display:grid;grid-template-columns:minmax(176px,1fr) minmax(240px,2fr);gap:16px;align-items:start}.sb-movement{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.sb-combat-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.sb-touch button{min-width:0;min-height:48px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}@media (max-width:600px){.sb-touch{grid-template-columns:1fr;gap:10px}.sb-movement,.sb-combat-controls{grid-template-columns:repeat(4,minmax(0,1fr))}.sb-touch button{padding:8px 4px;min-height:48px}}@media (max-width:600px){.sb-warning{top:39%;padding:5px 8px;font-size:10px}.sb-fight-hud{padding:5px}}
