@font-face{font-family:TavernPixel;src:url('assets/fonts/PressStart2P-Regular.ttf') format('truetype');font-display:swap;font-weight:400}
.setup #setup-form .roster-intro{font-size:clamp(14px,1.8vw,18px);line-height:1.7;margin:0 0 14px;letter-spacing:0}
.setup .roster-heading{justify-content:space-between;align-items:baseline;padding-top:0;flex-wrap:wrap;gap:10px}
.setup #setup-form .roster-heading .roster-intro{margin:0}
.setup-header{padding-bottom:25px;margin-bottom:25px;border-bottom:1px solid #514356}.setup-brand-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.setup-mode{flex-shrink:0;border-left:1px solid #695446;padding-left:20px}.setup-mode b{color:#e1ca9f;font-size:15px}.setup-mode small{display:block;font-size:12px;color:#bfb2c8;margin-top:6px}.setup-header h1{font-size:clamp(21px,3vw,29px);margin:34px 0 0;line-height:1.7}.setup #setup-form{margin-top:0}@media(max-width:620px){.setup-brand-row{flex-direction:column;align-items:flex-start;gap:18px}.setup-mode{border:0;padding:0}.setup-header h1{margin-top:26px}.setup-header{padding-bottom:22px;margin-bottom:22px}}
:root{background:#18151f;color:#f3edf3;--tavern-gold:#d6b477;--tavern-purple:#c5a9e6;--tavern-lime:#dfff00}
body{isolation:isolate;background:linear-gradient(#0000001a,#0000001a),linear-gradient(#100d17bf,#100d17e0),url('assets/scenes/tavern.svg') center top/cover fixed no-repeat,#18151f}
body::before,body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-position:center top;background-size:cover;background-repeat:no-repeat}
body::before{background-image:url('assets/scenes/candle-glow.svg');animation:candle-flicker 2.9s linear infinite}
body::after{background-image:url('assets/scenes/hearth-glow.svg');animation:hearth-flicker 3.7s linear infinite}
@keyframes candle-flicker{0%,100%{opacity:.6}10%{opacity:.95}17%{opacity:.12}29%{opacity:.8}38%{opacity:.2}53%{opacity:1}62%{opacity:.15}76%{opacity:.85}87%{opacity:.25}}
@keyframes hearth-flicker{0%,100%{opacity:.65}12%{opacity:1}21%{opacity:.18}36%{opacity:.87}46%{opacity:.25}63%{opacity:.98}74%{opacity:.12}89%{opacity:.8}}
@media(prefers-reduced-motion:reduce){body::before,body::after{animation:none;opacity:.7}}
.shell{background:#1b1822f5;border:1px solid #514356;box-shadow:0 24px 80px #0006;border-radius:22px;margin:28px auto;padding:30px 36px}
.setup{max-width:960px;background:#1d1924;margin-top:40px;position:relative;overflow:hidden}

.brand{font-family:TavernPixel,monospace;font-size:17px;line-height:1.7;letter-spacing:0;font-weight:400;color:#f0dfc5}.brand span{display:block;color:var(--tavern-gold);font-family:Arial,Helvetica,sans-serif;font-size:12px;letter-spacing:4px;text-transform:uppercase;line-height:1.7;margin-top:5px}
h1,.deck-heading h2,.bonus h2,.session-dialog>h2{font-family:TavernPixel,monospace;font-weight:400;letter-spacing:0;line-height:1.55}
h1{font-size:clamp(24px,3.4vw,38px)}h1 em{color:var(--tavern-purple)}
.deck-heading h2{font-size:19px;line-height:1.65}.status{color:var(--tavern-gold);font-size:12px}.setup .status{margin-top:32px}.setup-intro,.intro p{color:#c6bbc9}
.game-settings{background:#25202d;border-color:#55465f}.mode-picker>a,.mode-picker>span{background:#29222f;border-color:#594766}.mode-picker>span{border-color:#b99968}.mode-picker a:hover{background:#34293d;border-color:#bea5d1}.mode-picker small{color:#bfb2c8}.mode-picker b{color:#e1ca9f}
.setup-facts b,#enabled-count{color:var(--tavern-gold)}.setup-facts{color:#c9bece}.category-option{background:#302836}.setting-selects select{background:#302836;border-color:#6a5b72;color:#f5edf8}.deck-note,.footer,.rules{color:#bfb3c6}
.deck-card{background:#f0e7d7;border-color:#bb9865;box-shadow:0 8px 0 #100d1766,0 18px 30px #0002}.deck-actions .draw,.bonus-main,.primary{background:var(--tavern-lime);color:#161819}.small,.stop,.deck-actions button:not(.draw){background:#302735;border:1px solid #695674;color:#f5edf8}.card.you{--accent:#dcc292}.card.evan{--accent:#c4addc}.top{border-color:#514356}
dialog.bonus,.session-dialog{background:#201b28;border-color:#776182;box-shadow:0 22px 90px #0009}.bonus::backdrop,.session-dialog::backdrop{background:#100e19cc;backdrop-filter:blur(6px)}
.bonus-reveal{background:#34283f;color:#e4cca1;letter-spacing:2px}.bonus h2{font-size:24px}.encounter-heading{min-height:174px;padding:20px;border:1px solid #655071;border-radius:14px;background:linear-gradient(90deg,#17131c55,#17131c11),var(--encounter-scene,url('assets/scenes/crypt.svg')) center/cover;image-rendering:pixelated;justify-content:space-between;gap:16px}
.encounter-heading h2{background:#211a2bf5;padding:16px;border:1px solid #745e7e;border-radius:8px;box-shadow:0 4px 0 #0003;max-width:calc(100% - 96px)}.encounter-heading .pixel-creature{width:80px;height:80px;border:2px solid #bca37b;background:#171820;box-shadow:0 5px 0 #0005}
.bonus[data-scenery="forest"]{--encounter-scene:url('assets/scenes/forest.svg')}.bonus[data-scenery="market"]{--encounter-scene:url('assets/scenes/market.svg')}.bonus[data-scenery="embers"]{--encounter-scene:url('assets/scenes/embers.svg')}.bonus[data-scenery="storm"]{--encounter-scene:url('assets/scenes/storm.svg')}.bonus[data-scenery="bog"]{--encounter-scene:url('assets/scenes/bog.svg')}.bonus[data-scenery="tavern"]{--encounter-scene:url('assets/scenes/tavern.svg')}
.bonus[data-scenery="market"] .bonus-reveal{background:#403126;color:#f2d394}.bonus[data-scenery="forest"] .bonus-reveal{background:#283a34;color:#dbdec0}
.encounter-scene{background:#282130;border-color:#584665}.fantasy-rules,#fantasy-rules{background:#33263f;border-color:#987bad}.bonus-result{background:#302636;border-color:#c6a468}.bonus-result h3{color:#f2d9ac}.item-tile{background:#30263b}.shop-item{background:#342a25;border-color:#967851}.shop-item strong,.gold-balance{color:#efd29a}.shop-item .small{border-color:#9d835f;background:#46372c}.shop-item .small:enabled:hover{background:#5a4532}.item-action{color:#dec697}.session-dialog>h2{font-size:25px}

@media(max-width:800px){.shell{margin:12px;border-radius:16px;padding:24px}.brand{font-size:14px}.top{flex-wrap:wrap}.deck-heading{flex-wrap:wrap}.deck-heading h2{font-size:17px}.bonus h2{font-size:20px}}
@media(max-width:480px){.shell{margin:8px;padding:18px}h1{font-size:24px}.brand{font-size:12px}.brand span{font-size:11px}.encounter-heading{padding:12px;min-height:145px;gap:10px}.encounter-heading h2{font-size:16px;padding:12px;max-width:calc(100% - 74px)}.encounter-heading .pixel-creature{width:64px;height:64px}.session-dialog>h2{font-size:20px}}

.setup-brand-row{display:block}.setup-header .brand{font-size:clamp(16px,2.2vw,21px);line-height:1.6;max-width:100%;text-wrap:balance}.setup-mode{border:0;padding:0;margin-top:18px}.top .brand{max-width:560px;line-height:1.7}.age-dialog .brand{line-height:1.7}@media(max-width:480px){.setup-header .brand{font-size:16px}.setup-header h1{font-size:20px}}

.timer-custom{padding:16px;background:#211b29;border:1px solid #584764;border-radius:12px}.timer-range{display:grid;grid-template-columns:1fr 1fr;gap:14px}.setting-selects .timer-range label{display:block;font-size:14px;margin:0}.timer-range input{display:block;width:100%;min-width:0;margin-top:8px;padding:12px;border:1px solid #786583;background:#302836;color:#fff;border-radius:8px;font:inherit;font-size:18px}#timer-error{color:#ffc19b;font-size:14px;margin:10px 0 0}#timer-error:empty{display:none}

#encounter-custom{margin-top:16px}#encounter-error{color:#ffc19b;font-size:14px;margin:10px 0 0}#encounter-error:empty{display:none}
.setup-header .brand{font-size:clamp(17px,2.4vw,24px);color:var(--tavern-lime);font-weight:700;text-shadow:1px 1px 0 #050407,2px 2px 0 #050407,3px 3px 0 #050407,4px 4px 0 #050407,5px 5px 0 #050407,6px 6px 0 #050407,8px 9px 3px #0009}
.setup .setup-header .setup-audio{display:block;margin:16px 0 0 auto;padding:8px 13px;font-size:13px}
