@font-face{font-family:Pirata One;font-style:normal;font-display:swap;font-weight:400;src:url(./pirata-one-latin-400-normal-C8jLWNfm.woff2) format("woff2"),url(./pirata-one-latin-400-normal-CiJE7gJH.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-400-normal-DSJrtJSV.woff2) format("woff2"),url(./eb-garamond-latin-400-normal-zgGxM6DR.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./eb-garamond-latin-600-normal-CdfBH7_K.woff2) format("woff2"),url(./eb-garamond-latin-600-normal-DVm8LGcc.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-400-italic-KGnr19QW.woff2) format("woff2"),url(./eb-garamond-latin-400-italic-DxAerz_z.woff) format("woff")}:root{--bg: #140f0c;--bg2: #1e1712;--panel: #241b14;--ink: #e8dcc0;--muted: #9a876a;--gold: #c9a24b;--gold-bright: #e4c877;--blood: #a6402f;--red: #b5533f;--line: #3a2c20;--shadow: rgba(0, 0, 0, .55);--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px)}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px;border-radius:6px}.card:focus-visible,.enemy:focus-visible{outline-offset:3px}html,body,#root{margin:0;min-height:100%}html{background-color:#0d0906}body{min-height:100dvh;background-color:#0d0906;background-image:radial-gradient(120% 80% at 50% -10%,#241a12 0%,var(--bg) 55%,#0d0906 100%);background-attachment:fixed;color:var(--ink);font-family:EB Garamond,Georgia,serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none}.app{position:relative;max-width:720px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:calc(12px + var(--safe-t)) 12px calc(12px + var(--safe-b));gap:12px}.title{font-family:Pirata One,EB Garamond,serif;font-size:clamp(30px,9vw,46px);color:var(--gold-bright);text-align:center;letter-spacing:1px;margin:2px 0 -2px;text-shadow:0 2px 10px #000}.subtitle{text-align:center;color:var(--muted);letter-spacing:4px;font-size:11px;text-transform:uppercase;margin-bottom:4px}.status{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stat{background:linear-gradient(180deg,var(--panel),#1a130d);border:1px solid var(--line);border-radius:10px;padding:8px 6px;text-align:center}.stat .k{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.stat .v{font-size:22px;color:var(--gold-bright);font-weight:600}.stat.stamina .v{color:var(--red)}.stat.lich{grid-column:span 4;border-color:#5a2018;background:linear-gradient(180deg,#2a1512,#180b09)}.stat.lich .v{color:#d9694f}.hdr{text-align:center;color:var(--gold);letter-spacing:5px;font-size:11px;text-transform:uppercase;margin:6px 0 2px}.row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;align-content:center;align-items:center;flex:1 1 auto;min-height:clamp(96px,13vh,150px)}.enemy{width:84px;background:linear-gradient(180deg,#2b201a,#1a1009);border:1px solid #4a3324;border-radius:12px;padding:8px 6px;text-align:center;cursor:pointer;box-shadow:0 4px 10px var(--shadow);transition:transform .08s ease,border-color .12s ease}.enemy:hover{transform:translateY(-3px);border-color:var(--gold)}.enemy.lich{border-color:#7a2a1e;background:linear-gradient(180deg,#3a1a14,#1c0c09)}.enemy .name{font-size:12px;color:var(--ink)}.minicard{width:42px;height:58px;margin:3px auto 2px;border-radius:6px;background:linear-gradient(160deg,#f3e9d2,#d9c9a4);border:1px solid #b39a68;color:#241a12;position:relative;box-shadow:0 2px 5px var(--shadow)}.minicard.red{color:var(--blood)}.minicard .mc-corner{position:absolute;top:3px;left:5px;font-size:14px;font-weight:600;line-height:1}.minicard .mc-pip{position:absolute;bottom:4px;right:5px;font-size:18px;line-height:1}.enemy .val{font-size:21px;color:var(--gold-bright);font-weight:600;line-height:1.1}.enemy .val-hp{font-size:10px;color:var(--muted);letter-spacing:1px}.difficulty{display:flex;flex-direction:column;gap:6px}.level{display:flex;width:100%;gap:10px;justify-content:space-between;align-items:center;font-family:inherit;background:#191009;border:1px solid var(--line);border-radius:8px;padding:9px 12px;color:var(--ink);cursor:pointer}.level:hover:not(:disabled){border-color:var(--gold)}.level.current{border-color:var(--gold-bright);box-shadow:inset 0 0 0 1px var(--gold)}.level.locked{opacity:.5;cursor:not-allowed}.level-name{font-size:15px}.level:nth-child(5):not(.locked) .level-name{color:#d0664f}.level-decks{font-size:11px;color:var(--muted);letter-spacing:1px}.unlock-hint{font-size:12px;color:var(--muted);font-style:italic;margin-top:8px;text-align:center}.enemy .tokens{font-size:11px;color:var(--muted);min-height:14px}.enemy .fester{color:#7fae6a}.enemy .splash{color:#d98a4f}.empty-row{color:var(--muted);font-style:italic}.hand{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.card{width:60px;height:86px;border-radius:10px;background:linear-gradient(160deg,#f3e9d2,#d9c9a4);color:#241a12;border:1px solid #b39a68;display:flex;flex-direction:column;justify-content:space-between;padding:6px;cursor:pointer;box-shadow:0 4px 8px var(--shadow);transition:transform .08s ease,box-shadow .12s ease;-webkit-user-select:none;user-select:none}.card:hover{transform:translateY(-4px)}.card.selected{transform:translateY(-10px);box-shadow:0 0 0 2px var(--gold-bright),0 8px 14px var(--shadow)}.card.red{color:var(--blood)}.card.burning{transform:translateY(-10px);box-shadow:0 0 0 2px var(--red),0 8px 16px var(--shadow)}.card.joker{background:linear-gradient(160deg,#2b2444,#171125);border-color:#6a5a9a;color:#cbbfe6;justify-content:space-between}.card.joker .r{color:#9b8bc9;font-size:16px}.card.joker .joker-face{text-align:center;font-size:26px;color:#c3b3ef}.card.joker .joker-tag{text-align:center;font-size:9px;letter-spacing:2px;color:#9b8bc9}.card.ace{background:linear-gradient(160deg,#f0e6cc,#cdb98c);border-color:var(--gold)}.card .r{font-size:18px;font-weight:600;line-height:1}.card .s{font-size:22px;text-align:right}.card .mid{text-align:center;font-size:20px}.actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:2px}.btn{font-family:inherit;font-size:14px;letter-spacing:1px;color:var(--ink);background:linear-gradient(180deg,#2e2318,#1c140d);border:1px solid var(--line);border-radius:8px;padding:10px 14px;cursor:pointer;min-width:84px}.btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold-bright)}.btn:disabled{opacity:.38;cursor:not-allowed}.btn.armed{border-color:var(--red);color:#e6a08c}.hint{text-align:center;color:var(--muted);font-size:13px;min-height:18px;font-style:italic}.hint-err{color:#e6a08c;font-style:normal;animation:errShake .3s ease}@keyframes errShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.combo-choice{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap}.combo-label{color:var(--muted);font-size:13px;letter-spacing:1px}.chip{font-family:inherit;font-size:13px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:5px 12px;cursor:pointer}.chip.on{border-color:var(--gold);color:var(--gold-bright);box-shadow:0 0 8px #c9a24b4d}.log{background:#120d09;border:1px solid var(--line);border-radius:10px;padding:8px 12px;height:clamp(70px,10vh,96px);overflow-y:auto;font-size:13px;color:var(--muted)}.log .line{padding:2px 0;border-bottom:1px dotted #24190f}.log .line:last-child{color:var(--ink)}.chronicle-hdr{position:relative}.swipe-hint{position:absolute;right:0;bottom:0;font-size:9px;letter-spacing:1px;text-transform:none;font-style:italic;color:var(--muted)}.panel-swipe{touch-action:pan-y}.dots{display:flex;gap:7px;justify-content:center;margin-top:6px}.dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--line);background:transparent;padding:0;cursor:pointer}.dot.on{background:var(--gold);border-color:var(--gold)}.quickref{background:#120d09;border:1px solid var(--line);border-radius:10px;padding:8px 12px;height:clamp(70px,10vh,96px);overflow-y:auto;font-size:13px}.qr-row{display:flex;gap:10px;padding:3px 0;border-bottom:1px dotted #24190f}.qr-row:last-child{border-bottom:none}.qr-k{color:var(--gold-bright);min-width:78px;flex-shrink:0}.qr-v{color:var(--ink)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080503db;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:linear-gradient(180deg,var(--panel),#150e09);border:1px solid var(--gold);border-radius:14px;padding:24px 22px calc(24px + var(--safe-b));text-align:center;max-width:420px;max-height:86vh;overflow-y:auto}.modal h2{font-family:Pirata One,serif;color:var(--gold-bright);font-size:34px;margin:0 0 8px}.modal p{color:var(--ink)}.tier{color:var(--gold-bright);font-size:20px;letter-spacing:2px}.score-box{margin:14px 0 4px;padding:12px 14px;background:#120d09;border:1px solid var(--line);border-radius:10px}.score-total{font-family:Pirata One,serif;font-size:40px;color:var(--gold-bright);text-align:center;line-height:1}.score-unit{font-family:EB Garamond,serif;font-size:16px;color:var(--muted)}.score-best{text-align:center;color:#7fae6a;font-size:14px;letter-spacing:1px;margin-top:4px}.score-lines{margin-top:10px;font-size:13px;color:var(--muted)}.score-lines>div{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px dotted #24190f}.score-lines>div span:last-child{color:var(--ink)}.score-lines .score-penalty span:last-child{color:var(--red)}.score-lines .score-mult{border-bottom:none;color:var(--gold)}.score-lines .score-mult span:last-child{color:var(--gold-bright)}.best-score{text-align:center;color:var(--muted);font-size:13px;margin-top:10px}.best-score strong{color:var(--gold-bright);font-size:16px}.reset-btn{display:block;width:100%;margin-top:10px}.reset-btn.danger{border-color:var(--red);color:#e6a08c}.spacer{flex:1}.install-banner{width:100%;font-family:inherit;font-size:13px;color:var(--gold);background:linear-gradient(180deg,#241a12,#191009);border:1px solid var(--line);border-radius:8px;padding:8px 10px;cursor:pointer;letter-spacing:.5px}.install-banner:hover{border-color:var(--gold);color:var(--gold-bright)}.install-steps{text-align:left;color:var(--ink);line-height:1.7;padding-left:20px;margin:10px 0}.install-steps strong{color:var(--gold-bright)}.install-actions{display:flex;gap:8px;justify-content:center;margin-top:14px}.btn.ghost{min-width:0;font-size:13px;padding:8px 12px;color:var(--muted)}.help-btn,.menu-btn{position:absolute;top:calc(10px + var(--safe-t));width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--gold);font-family:EB Garamond,serif;font-size:18px;cursor:pointer;z-index:5}.help-btn{right:12px}.menu-btn{left:12px}.help-btn:hover,.menu-btn:hover{border-color:var(--gold);color:var(--gold-bright)}.modal.menu{max-width:460px;text-align:left}.modal.menu h2{text-align:center}.menu-section{margin:14px 0}.menu-label{color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-size:11px;margin-bottom:6px}.seed-row{display:flex;gap:8px;align-items:center}.seed-val{flex:1;color:var(--gold-bright);background:#120d09;border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:15px;overflow:hidden;text-overflow:ellipsis}.seed-input{flex:1;font-family:inherit;color:var(--ink);background:#120d09;border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:15px}.seed-input:focus{outline:none;border-color:var(--gold)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mini-stat{background:#191009;border:1px solid var(--line);border-radius:8px;padding:8px 6px;text-align:center}.mini-k{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.mini-v{font-size:18px;color:var(--gold-bright)}.toggle-row{display:flex;gap:10px}.toggle{flex:1;display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:inherit;color:var(--ink);background:#191009;border:1px solid var(--line);border-radius:8px;padding:10px 12px;cursor:pointer}.toggle-label{font-size:14px;display:flex;flex-direction:column;text-align:left}.toggle-note{font-size:10px;color:var(--muted);font-style:italic}.toggle.disabled{opacity:.45;cursor:not-allowed}.toggle.disabled .toggle-track{background:#1a130d}.toggle-track{width:40px;height:22px;border-radius:999px;background:#241b13;border:1px solid var(--line);position:relative;transition:background .15s ease}.toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--muted);transition:transform .15s ease,background .15s ease}.toggle.on .toggle-track{background:#4a3a1a;border-color:var(--gold)}.toggle.on .toggle-knob{transform:translate(18px);background:var(--gold-bright)}.stat.stamina.flash-down{animation:flashDown .55s ease}.stat.stamina.flash-up{animation:flashUp .55s ease}@keyframes flashDown{0%{box-shadow:0 0 #b5533f00}30%{box-shadow:0 0 16px 2px #b5533fb3;border-color:var(--red)}}@keyframes flashUp{0%{box-shadow:0 0 #7fae6a00}30%{box-shadow:0 0 16px 2px #7fae6a99;border-color:#7fae6a}}@media(prefers-reduced-motion:no-preference){.enemy{animation:rise .34s cubic-bezier(.22,1,.36,1) both}.hand .card{animation:deal .26s ease both}.overlay{animation:fade .18s ease both}.modal{animation:pop .24s cubic-bezier(.22,1,.36,1) both}@keyframes rise{0%{opacity:0;transform:translateY(16px) scale(.9)}}@keyframes deal{0%{opacity:0;transform:translateY(20px)}}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.96)}}}.enemy.killable{border-color:#7fae6a;box-shadow:0 0 0 1px #7fae6a,0 0 16px #7fae6a59}.enemy.tough{border-color:#7a3b2e;opacity:.85}.hand.reorder .card{cursor:pointer}.modal.help{max-width:560px;max-height:82vh;text-align:left;display:flex;flex-direction:column}.help-body{overflow-y:auto;padding-right:8px;color:var(--ink);line-height:1.5}.help-body h1{font-family:Pirata One,serif;color:var(--gold-bright);font-size:30px;text-align:center;margin:0 0 6px}.help-body h2{color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:4px;margin:18px 0 8px}.help-body h3{color:var(--gold-bright);font-size:15px;margin:12px 0 4px}.help-body em{color:var(--muted)}.help-body strong{color:var(--gold-bright)}.help-body blockquote{border-left:2px solid var(--gold);margin:8px 0;padding:2px 12px;color:var(--muted);font-style:italic}.help-body table{width:100%;border-collapse:collapse;margin:8px 0;font-size:13px}.help-body th,.help-body td{border:1px solid var(--line);padding:4px 8px;text-align:left}.help-body th{color:var(--gold)}.help-body code{color:var(--red)}.help-body a{color:var(--gold)}
