:root{color-scheme:dark;--cream:#f1e9d3;--muted:#b5c8c0;--gold:#e3bd71;--ink:#0c2026;--green:#bddb76}*{box-sizing:border-box}body{margin:0;background:linear-gradient(#08191ed9,#071b21ed),url('assets/table.png') center/cover fixed;color:var(--cream);font:16px/1.55 Georgia,serif;min-height:100vh}button,input{font:inherit}button{cursor:pointer;border:1px solid #638284;background:#173c42;color:var(--cream);padding:10px 16px;border-radius:8px;transition:background .15s,transform .15s}button:hover:not(:disabled){background:#28555b;transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--green);outline-offset:4px}.gold{background:var(--gold);color:#172c30;border-color:var(--gold);font-weight:bold}.gold:hover:not(:disabled){background:#f1d396}header{max-width:1320px;margin:auto;padding:28px 32px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px}h1{font-weight:normal;font-size:clamp(30px,4vw,48px);line-height:1.2;margin:8px 0}header p{margin:0;color:var(--muted);font-style:italic}.eyebrow{font:11px/1.6 system-ui,sans-serif;letter-spacing:2.5px;color:var(--gold)}nav{display:flex;gap:8px;flex-wrap:wrap}nav button,footer button{font:13px system-ui,sans-serif}main{max-width:1256px;margin:0 auto;padding:0 20px}h2{font-size:30px;font-weight:normal;margin:4px 0 16px}h3{font-weight:normal;margin:0 0 12px}.panel{background:#0d2c32df;border:1px solid #4b6261;border-radius:14px;padding:22px;box-shadow:0 12px 30px #0002}.intro{text-align:center;max-width:1000px;margin:15px auto}.intro p{color:var(--muted)}.piles{display:flex;justify-content:center;gap:22px;margin:24px 0}.pile{padding:18px;background:#18373bd9;border:1px solid #607877;border-radius:12px}.pile.selected{border:2px solid var(--gold)}.pileCards{display:flex;gap:8px;margin:12px 0}.pileCards .card{width:105px;height:145px}.status{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 18px;background:#102d35;border:1px solid #536a6a;border-radius:10px;margin-bottom:16px}.status strong{color:var(--gold)}.stats{font:12px system-ui,sans-serif;display:flex;gap:20px}.scrolls{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 18px}.scroll{border:1px solid #607578;background:#18333acc;min-height:82px;padding:12px;display:flex;align-items:center;justify-content:center;gap:14px;color:#b4c4bf}.scroll .seal{font-size:28px}.scroll.found{color:var(--gold);border-color:var(--gold);background:#3b4432}.scroll small{display:block;font:11px system-ui,sans-serif;margin-top:5px}.layout{display:grid;grid-template-columns:1fr 300px;gap:18px}.table{background:linear-gradient(#0c323673,#112c3290),url('assets/table.png') center/cover;min-height:520px}.tableTop{display:flex;justify-content:space-between;align-items:center;font:12px system-ui,sans-serif;color:#d3dbcf}.cards{display:flex;justify-content:center;gap:35px;padding:24px 0 12px}.cardWrap{text-align:center}.cardWrap>small{display:block;font:11px system-ui,sans-serif;letter-spacing:1.4px;color:var(--gold);margin-bottom:10px}.card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:154px;height:216px;border-radius:11px;background:#f5f0df;color:#193c48;border:5px solid #faf6e9;box-shadow:0 7px 9px #0006;overflow:hidden}.card.red{color:#a73b42}.card .corner{position:absolute;left:7px;top:3px;font:bold 23px/1 Georgia,serif;text-align:center}.card .corner.bottom{left:auto;top:auto;right:7px;bottom:3px;transform:rotate(180deg)}.card .center{font-size:52px;line-height:1.2}.card .title{font:10px system-ui,sans-serif;letter-spacing:1px;text-transform:uppercase;margin-top:12px}.card .pips{font-size:25px;display:grid;grid-template-columns:repeat(2,1fr);gap:0 15px;line-height:1.25}.card.back{background:#063450 url('assets/back.svg') center/cover;color:#e6efd7}.card.danger{background:repeating-radial-gradient(circle at 50% 50%,#e5ecdd 0 9px,#d0ddce 10px 12px,#f3efdc 13px 24px)}.card.danger .center{font-size:55px}.card.ace{background:radial-gradient(ellipse,#fff7dc,#e3d7b4);color:#83541c}.card.joker{background:radial-gradient(ellipse,#d8e7b6,#b7d5d2);color:#165445}.cardWrap button{width:100%;margin-top:12px}.actions{display:flex;justify-content:center;gap:12px;margin:12px 0 20px}.notes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.note{min-height:92px;border:1px dashed #80978b;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#b5c3b5;font:13px system-ui,sans-serif}.note button{width:100%;min-height:90px}.note strong{font:26px Georgia,serif;color:var(--gold)}.note small{display:block;font-size:11px;margin-top:3px}.message{background:#264b4b;border-left:3px solid var(--gold);padding:15px;margin:0 0 18px;min-height:105px}.side p{font-size:15px;color:var(--muted)}.side button{width:100%;margin-bottom:10px}.side h3{margin-top:20px;font-size:17px;color:var(--gold)}.side .history{max-height:160px;overflow:auto;font:12px/1.5 system-ui,sans-serif;color:var(--muted);padding-left:18px}.history li{padding-bottom:9px}.finish{text-align:center;padding:28px;margin-bottom:18px;border-color:var(--gold)}.finish h2{color:var(--gold)}footer{max-width:1256px;margin:22px auto;padding:0 20px 25px;display:flex;flex-wrap:wrap;gap:12px 30px;justify-content:space-between;align-items:center;font:11px system-ui,sans-serif;color:var(--muted)}footer a{color:var(--gold)}footer button{font-size:11px;padding:7px 10px}dialog{width:min(760px,calc(100% - 30px));max-height:88vh;overflow:auto;border:1px solid #9b946a;border-radius:15px;background:#12323a;color:var(--cream);padding:35px;box-shadow:0 20px 90px #0009}dialog::backdrop{background:#031216c9;backdrop-filter:blur(5px)}#welcome{width:520px;max-width:calc(100% - 30px)}#welcome form{display:flex;flex-direction:column;gap:15px}#welcome h2{font-size:38px;margin:0}#welcome p{color:var(--muted);margin:0 0 5px}input{width:100%;padding:12px;background:#08252b;border:1px solid #81938a;border-radius:7px;color:var(--cream)}.close{float:right;padding:2px 11px;font-size:24px;margin:0 0 10px 15px}.route{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px}.routeCell{background:#23464a;border:1px solid #668080;border-radius:6px;text-align:center;padding:9px;font-size:17px}.routeCell small{display:block;font:10px system-ui,sans-serif;color:var(--muted)}.routeCell.trap{border-color:#b76558;color:#f6b2a1}.routeCell.goal{border-color:var(--gold);color:var(--gold)}.routeCell.hidden{color:#a7bdba;background:#102b35}.verse{font-size:24px;line-height:1.6;color:var(--gold);margin:24px 0}.caption{font:12px system-ui,sans-serif;color:var(--muted)}.modalRules li{margin-bottom:12px}.sr{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:850px){header{flex-direction:column;align-items:flex-start;padding:20px}.layout{grid-template-columns:1fr}.side{display:grid;grid-template-columns:1fr 1fr;gap:15px}.side .message{grid-column:1/-1;margin:0}.piles{flex-wrap:wrap}.scrolls{gap:6px}.scroll{padding:10px 4px;gap:6px}.scroll .seal{font-size:20px}.stats{gap:9px}.table{min-height:0}}@media(max-width:480px){.scrolls{grid-template-columns:repeat(2,1fr)}.status{align-items:flex-start;flex-direction:column}.panel{padding:15px}.cards{gap:16px}.card{width:126px;height:180px}.card .pips{font-size:21px}.card .corner{font-size:19px}.side{display:block}.actions button{padding:10px}.tableTop{font-size:10px}.notes{gap:7px}.note{font-size:11px}dialog{padding:23px}.pileCards .card{width:96px;height:137px}.pile{padding:12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
