@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--gold:#e9c66e;--muted:#9bafa1;--line:#91743e;--ivory:#fff4d7;--green:#092b22;color-scheme:dark;font-family:'DM Sans',sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ivory);background:radial-gradient(ellipse at 15% 0%,#214c36 0,transparent 45%),radial-gradient(ellipse at 90% 90%,#25432b 0,transparent 35%),#061c17;min-height:100vh}body:before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.8' filter='url(%23n)'/%3E%3C/svg%3E")}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit;color:inherit}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ffe59c;outline-offset:4px}button{transition:filter .18s,transform .18s}button:hover:not(:disabled){filter:brightness(1.17)}header{max-width:1700px;margin:auto;display:flex;align-items:center;gap:30px;padding:23px 34px 22px;border-bottom:1px solid #a5884630}.brand{display:flex;gap:12px;color:#f2d38a;text-decoration:none;font:500 clamp(26px,3.1vw,49px)/1 'Cinzel',Georgia,serif;letter-spacing:4px;text-shadow:0 2px 6px #000}.cross{font:62px/1 Georgia;text-shadow:0 0 14px #e4af4e}.brand small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:9px;text-align:center;margin-top:9px}.room{margin-left:auto;display:flex;gap:9px;align-items:center;font:18px Georgia;color:#eadfbd}.room>span{color:var(--gold);font-size:27px}.room small{display:none}nav{display:flex;border:1px solid var(--line);border-radius:9px;padding:3px;background:#031b16;white-space:nowrap}nav button{border:0;background:transparent;padding:11px 23px;font:16px Georgia;color:#d1cfb7;border-radius:6px}nav button.selected{background:linear-gradient(#ffeab0,#deb753);color:#2b240e;box-shadow:inset 0 0 0 1px #fff0bb,0 0 15px #c9a54422}.tools{display:flex;gap:10px}.tools button{width:43px;height:43px;border:1px solid #ae945b;background:#08241e;border-radius:10px;color:var(--gold);font-size:25px}main{max-width:1700px;margin:auto;padding:24px 34px 12px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.play-area{min-width:0}.board-frame{padding:11px;border:1px solid #f1d083;border-radius:9px;background:linear-gradient(140deg,#614525,#dfbc68 2%,#866236 3%,#291a0e 5%,#9f773b 50%,#e0bb71 98%);box-shadow:0 12px 35px #0009,inset 0 0 0 4px #463219,inset 0 0 0 6px #c39a54}#board{position:relative;width:100%;aspect-ratio:1200/650;background:#123a2c;overflow:hidden;box-shadow:0 0 0 2px #211b0d}.forest{position:absolute;inset:11% 8%;background:linear-gradient(90deg,#0b332aba,transparent 25%,transparent 75%,#0b332aba),url('assets/heaven.png') center/cover;opacity:.94}.board-title{position:absolute;left:31%;top:46%;width:39%;text-align:center;color:#f7d88c;font:600 clamp(20px,3.1vw,50px)/1.1 'Cinzel',Georgia;text-shadow:0 3px 3px #000,0 0 16px #492d0a}.board-title small{display:block;letter-spacing:6px;font:10px 'DM Sans',sans-serif;margin-top:9px}#track{display:block;width:100%;height:100%;position:relative}#tokens{position:absolute;inset:0;pointer-events:none}.pawn{position:absolute;width:3.8%;height:9%;transform:translate(-50%,-75%);transition:left .19s ease,top .19s ease;filter:drop-shadow(2px 5px 2px #0009);z-index:2}.pawn.active{filter:drop-shadow(0 0 5px #fff4b7) drop-shadow(2px 5px 2px #0009);z-index:3}.pawn svg{height:100%;width:100%;overflow:visible}.decks{padding:26px 35px 11px;display:flex;gap:28px;justify-content:center;perspective:900px}.deck{position:relative;flex:1;max-width:200px;aspect-ratio:1.3;border:3px double #b5934e;border-radius:7px;box-shadow:0 3px #a49576,0 6px #766e54,0 9px #b0a085,0 12px #71644c,0 20px 18px #0008;transform:rotateX(12deg);display:flex;align-items:center;justify-content:center;flex-direction:column;font-family:'Cinzel',Georgia}.deck:before{content:'✧';position:absolute;inset:5px;border:1px solid currentColor;border-radius:3px;opacity:.5;text-align:left;padding:2px}.deck:hover{transform:translateY(-6px) rotateX(5deg)}.deck span{font-weight:700;font-size:clamp(13px,1.4vw,21px);letter-spacing:1px}.deck b{font:52px/1.1 Georgia;margin:6px}.deck small{font:9px 'DM Sans',sans-serif;opacity:.7}.faith{background:radial-gradient(#fff8e5,#dbc6a1);color:#765023}.grace{background:radial-gradient(#286749,#103a28);color:#efcf7e}.sin{background:radial-gradient(#9e302a,#4d1717);color:#edc072}.decision{background:radial-gradient(#fce18b,#b98a30);color:#644213}.board-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 0 0;gap:12px;color:#bfbda4;font-size:12px}.board-footer>span{flex:1;text-align:center}.quiet{background:#09271f;border:1px solid #947d4d;padding:9px 14px;border-radius:7px;font-size:12px}.panel{border:1px solid #ad8b4d;border-radius:13px;background:linear-gradient(135deg,#153d2c88,#021a15bb);padding:19px;box-shadow:inset 0 0 0 3px #d6bc6810,0 8px 20px #0002}aside{display:flex;flex-direction:column;gap:17px}h2{font:600 17px 'Cinzel',Georgia;letter-spacing:1px;color:#f1d797;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-heading>span{color:var(--gold);flex:1;text-align:right;border-bottom:1px solid #9d844a55;margin-left:12px;line-height:0}#players{display:flex;flex-direction:column;gap:8px}.player{display:flex;align-items:center;gap:11px;border:1px solid #54716066;padding:11px 10px;border-radius:9px;background:#031c1877}.player.current{border-color:#edcd7d;box-shadow:inset 0 0 12px #e9c56e15,0 0 9px #ffe79b15}.mini-pawn{font-size:29px;line-height:1;text-shadow:0 3px 3px #000;color:var(--pawn)}.player-info{flex:1;min-width:0}.player strong{font:16px Georgia;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.player small{display:block;font-size:10px;color:#9bac99;margin-top:4px}.status{font-size:9px;color:#a6b6a8;white-space:nowrap}.current .status{color:#332c0e;background:linear-gradient(#f7dc89,#cda34b);padding:6px;border-radius:5px;font-weight:700}.text-button{padding:0;border:0;background:none;color:#bca777;font-size:10px}.player-panel>.text-button{display:block;margin:13px auto 0}.roll-panel{text-align:center}.roll-panel p{font-size:11px;color:#afbdad;margin:9px 0}.dice{display:flex;justify-content:center;gap:22px;margin:25px 0 28px;perspective:600px}.die{height:67px;width:67px;background:linear-gradient(140deg,#fff8dc,#ead6a4);border-radius:13px;border:1px solid #fff5cf;box-shadow:3px 7px 0 #b4a078,5px 13px 13px #0009,inset 2px 2px 4px white;display:grid;grid-template:repeat(3,1fr)/repeat(3,1fr);padding:12px;gap:6px;transform:rotate(-12deg)}.die:nth-child(2){transform:rotate(13deg)}.pip{border-radius:50%;background:#18251e;box-shadow:inset 1px 2px 2px #000;width:10px;height:10px}.die.rolling{animation:tumble .18s infinite alternate}@keyframes tumble{to{transform:translateY(-15px) rotate(30deg)}}.gold-button{border:1px solid #ffedb2;border-radius:40px;background:linear-gradient(#ffe9a3,#e9c875 45%,#ba8e37);color:#332408;font:700 19px 'Cinzel',Georgia;width:100%;padding:13px 20px;box-shadow:0 0 0 3px #4a3e23,inset 0 0 0 2px #cfac60,0 6px 12px #0005;display:flex;justify-content:space-between;align-items:center}.gold-button span{font:22px Georgia}.roll-hint{font-size:10px;color:#8fa492;margin-top:15px}.history-panel{flex:1;min-height:140px}.history-panel h2{font-size:13px}.history-panel ol{margin:0;padding:0;list-style:none}.history-panel li{padding:8px 0;border-bottom:1px solid #69816625;display:flex;gap:9px;font-size:11px;color:#d1d6be;line-height:1.5}.history-panel li:last-child{border:0}.history-dot{color:var(--pawn)}.saved{text-align:center;font-size:10px;color:#879d8a}.saved>span:first-child{color:#9cb885;margin-right:5px}footer{max-width:1700px;margin:8px auto 0;padding:16px 34px 22px;border-top:1px solid #b79c4b22;display:flex;justify-content:space-between;gap:16px;color:#829788;font-size:10px;letter-spacing:.6px}footer i{font-style:normal;margin:0 9px;color:#b4995d}footer button{font-size:9px;letter-spacing:1px;border:0;background:none;color:#bcaa7e}dialog{color:var(--ivory);width:min(500px,calc(100% - 30px));max-height:90vh;overflow:auto;background:radial-gradient(ellipse at top,#28543a,#08261e 75%);border:1px solid #d5b66b;border-radius:18px;padding:36px;box-shadow:0 25px 90px #000a}dialog::backdrop{background:#00120ccc;backdrop-filter:blur(7px)}.close{position:absolute;right:14px;top:10px;background:none;border:0;font-size:28px;color:#d7c89e}dialog h2{font-size:27px;margin:12px 0 20px}dialog h3{font:19px Georgia;color:#ebcf89}dialog p,dialog li{font-size:14px;line-height:1.7;color:#d2d7c2}dialog .eyebrow{font-size:10px;letter-spacing:2px;color:#c9b77c}dialog .gold-button{margin-top:24px;font-size:14px;justify-content:center}.field{display:flex;align-items:center;gap:14px;margin:13px 0}input{width:100%;padding:13px;background:#021e17;border:1px solid #73916c;border-radius:6px;color:#fff3cf;font:15px 'DM Sans',sans-serif}.modal-actions{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}.modal-actions button,.answer{background:#193e2d;border:1px solid #a98f55;padding:12px 18px;border-radius:8px}.answer{display:block;width:100%;text-align:left;margin:10px 0}.answer.correct{background:#337247}.answer.wrong{background:#773b31}.notice{padding:12px 15px;border-left:2px solid #c8a557;background:#ddc57109;font-size:12px!important}.card-emblem{text-align:center;font:60px Georgia;color:#ebcd7b}#move-toast{position:absolute;left:50%;top:7%;transform:translateX(-50%);background:#06291ee8;color:#ffedb6;border:1px solid #c7a863;border-radius:25px;padding:10px 23px;font-size:13px;opacity:0;transition:opacity .3s;white-space:nowrap;pointer-events:none}#move-toast.show{opacity:1}.winner{text-align:center}.winner .card-emblem{font-size:80px}.all-history{padding-left:20px}button:active:not(:disabled){transform:translateY(1px)}@media(min-width:1450px){main{grid-template-columns:minmax(0,1fr) 325px}.player{padding:14px 12px}.roll-panel{padding:24px}.die{width:76px;height:76px;padding:15px}.decks{padding-top:29px}}@media(max-width:1100px){header{gap:15px;padding:20px}.room{display:none}nav{margin-left:auto}nav button{padding:10px 15px}main{padding:20px;grid-template-columns:minmax(0,1fr) 260px;gap:17px}.panel{padding:14px}.decks{padding:22px 12px 10px;gap:17px}.deck small{display:none}.deck b{font-size:38px}.board-title{font-size:28px}.player{gap:7px;padding:10px 8px}.player strong{font-size:14px}.board-footer{font-size:10px}.brand{font-size:30px}.brand small{letter-spacing:6px}.cross{font-size:48px}}@media(max-width:800px){header{flex-wrap:wrap;padding:16px;gap:15px}.brand{font-size:28px}.tools{margin-left:auto}nav{order:3;width:100%;margin:0}nav button{flex:1}main{display:flex;flex-direction:column;padding:15px;gap:22px}.board-title{font-size:clamp(18px,5vw,35px)}.board-frame{padding:7px}.decks{gap:15px;padding:20px 5px 12px}.deck{aspect-ratio:1.05}.deck b{font-size:36px}.deck span{font-size:12px}aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}.history-panel{grid-column:1/-1}.saved{grid-column:1/-1}.player strong{font-size:12px;max-width:100px}.status{font-size:8px}.current .status{padding:4px}.player{gap:5px;padding:9px 6px}.mini-pawn{font-size:22px}.player-panel{padding:12px}.player small{font-size:9px}.roll-panel{display:flex;flex-direction:column;justify-content:center}.dice{gap:15px;margin:22px 0}.die{width:53px;height:53px;padding:9px;gap:4px}.pip{width:8px;height:8px}.gold-button{font-size:14px;padding:13px}.roll-panel p{font-size:10px}.roll-panel h2,h2{font-size:14px}.history-panel ol{display:flex;gap:20px}.history-panel li{flex:1;border:0}footer{padding:15px;flex-wrap:wrap;justify-content:center;font-size:9px}footer>span:last-child{display:none}.board-footer>span{font-size:10px}.board-title small{font-size:7px;letter-spacing:4px}.board-footer .quiet{font-size:10px;padding:8px}.tools button{width:38px;height:38px}.history-panel li:nth-child(n+4){display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Original-board, question-driven edition */
body{background:linear-gradient(#051c17ed,#061e18ef),url('assets/heaven.png') center/cover fixed}.board-topline{display:flex;align-items:center;justify-content:space-between;margin:0 2px 13px;font-size:9px;letter-spacing:1.7px;color:#a5b7a6}.board-topline .text-button{font-size:11px;letter-spacing:0}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#e9c97c;box-shadow:0 0 9px #e9c97c;margin-right:8px}#board{aspect-ratio:1280/946}.original-board{display:block;width:100%;height:auto}.board-frame{padding:10px;background:linear-gradient(135deg,#75502b,#e0bb73 2%,#523820 3%,#957441 97%,#e3c98b);border-radius:8px;box-shadow:0 20px 45px #0009,inset 0 0 0 3px #49331b,inset 0 0 0 5px #caa465}.pawn{width:3.5%;height:7%;transform:translate(-50%,-79%)}.pawn.active:after{content:'';position:absolute;bottom:1px;left:0;right:0;height:20%;border-radius:50%;border:2px solid #fff4a8;box-shadow:0 0 10px #ffdc61}.decks{padding:27px 25px 17px;gap:27px;align-items:center}.deck{max-width:210px;aspect-ratio:1.13;border:1px solid #d5b47a;transform:perspective(600px) rotateX(9deg);background:transparent;box-shadow:0 3px #a39577,0 6px #635539,0 9px #9d8f70,0 12px #54472d,0 21px 19px #0009}.deck:before{display:none}.deck-art{position:absolute;inset:0;background-image:url('assets/card-backs.png');background-size:400% 100%;border-radius:5px}.faith .deck-art{background-position:0% 50%}.grace .deck-art{background-position:33.3333% 50%}.sin .deck-art{background-position:66.6667% 50%}.decision .deck-art{background-position:100% 50%}.deck .deck-badge{position:absolute;bottom:7px;font:8px 'DM Sans',sans-serif;letter-spacing:1px;padding:4px 7px;border-radius:3px;background:#051b17c9;color:#f1d48c;border:1px solid #c6a46c88}.featured-card{height:110px;width:78px;margin:22px auto 18px;background:url('assets/card-backs.png') 0 50%/400% 100%;border:1px solid #f4dfb0;border-radius:5px;transform:rotate(-8deg);box-shadow:3px 4px 0 #a49779,6px 8px 0 #776748,0 10px 25px #0009}.question-panel{text-align:center;padding:24px 19px;background:radial-gradient(ellipse at 50% 25%,#3a513333,transparent 60%),#06251f}.turn-label{font-size:9px;letter-spacing:1.5px;color:#c7cbaa}.question-panel h2{font:500 25px/1.2 'Cinzel',Georgia;letter-spacing:0;color:#f2dfb6}.question-panel p{font:12px/1.7 'DM Sans',sans-serif;color:#a4b6a7;margin:12px 0 23px}.question-panel .gold-button{font-size:13px;padding:15px 14px;letter-spacing:.2px}.question-panel .roll-hint{font-size:9px}.player .avatar{width:32px;height:32px;flex-shrink:0;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffffff44,var(--pawn));border:1px solid #ffe9b480;color:#fff4d3;display:grid;place-items:center;font:16px Georgia;box-shadow:0 3px 5px #0007}.player .mini-pawn{font-size:23px}.player strong{font-size:15px}.player small{font-size:9px}.player{gap:8px}.status{font-size:8px}dialog{width:min(590px,calc(100% - 28px));padding:36px 40px;background:radial-gradient(ellipse at 50% 0%,#33513a,#0b2b22 55%,#061d18);border:1px solid #d4b97a;box-shadow:0 35px 100px #000c,inset 0 0 0 5px #dac5840c}dialog[open]{animation:welcome-drop .48s cubic-bezier(.2,.7,.15,1) both}@keyframes welcome-drop{from{opacity:0;transform:translateY(-65vh) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.welcome-top{text-align:center;border-bottom:1px solid #d8ba6e3b;padding-bottom:18px}.welcome-top .card-emblem{font-size:44px;text-shadow:0 0 20px #d6ab4c66}.welcome-top h2{margin:12px 0;font-size:27px}.welcome-top p{font-size:13px;margin:0;color:#b3c2ac}.step-row{display:flex;gap:15px;margin:20px 0}.step-row>span{flex-shrink:0;width:30px;height:30px;border:1px solid #d6b36366;border-radius:50%;display:grid;place-items:center;font:16px Georgia;color:#e4c77b}.step-row h3{font:15px 'DM Sans',sans-serif;margin:2px 0 5px;color:#f3e3bd}.step-row p{font-size:12px;line-height:1.6;margin:0;color:#b0c0ab}.welcome-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.welcome-actions .gold-button{margin:0;font-size:12px}.welcome-actions .quiet{font-size:12px}.instruction-tabs{display:flex;gap:8px;justify-content:center;margin:20px 0}.instruction-tabs i{width:22px;height:3px;background:#496248}.instruction-tabs i.on{background:#e7c77e}.card-header{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:2px;color:#d5bb79}.question-text{font:23px/1.45 Georgia;margin:20px 0 25px;color:#fff4d7}.answer{border-color:#78906d66;background:#0c3025;font-size:13px;line-height:1.5;padding:13px 15px;display:flex;gap:12px}.answer .letter{color:#e1c378;font-weight:700;flex-shrink:0}.answer:disabled{opacity:1;cursor:default}.answer.correct{border-color:#b6dc92;background:#2e573b}.answer.wrong{border-color:#d9957a;background:#613128}.result-box{padding:16px 0 0;border-top:1px solid #718464;margin-top:22px}.result-box h3{margin:0 0 6px;color:#e0d49c}.result-box p{margin:0;font-size:12px}.question-footer{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#b2c0a8;margin-top:20px}.steps-pill{padding:6px 10px;border:1px solid #bb9f5666;border-radius:20px;color:#e8cd84;background:#b1933411}.source-detail{font:11px/1.6 'DM Sans',sans-serif;color:#adba9e;padding:12px 0}.source-detail summary{cursor:pointer}.pass-prompt{text-align:center;padding:18px 0}.pass-prompt .avatar-large{width:68px;height:68px;margin:0 auto 24px;border-radius:50%;display:grid;place-items:center;font:28px Georgia;background:var(--pawn);border:2px solid #f2d895;box-shadow:0 0 25px #e5c77322}.pass-prompt p{color:#9fb29d}.pass-prompt .gold-button{margin-top:28px}.board-modal{width:min(1250px,95vw);padding:25px}.board-modal img{width:100%;display:block}.browser-nav{display:flex;align-items:center;justify-content:space-between;margin-top:22px;font-size:11px;color:#b6c6b1}.browser-nav button{background:#0e3128;border:1px solid #947c47;border-radius:6px;padding:8px 15px}.route-option{display:block;width:100%;text-align:left;margin:10px 0;padding:14px;border:1px solid #b69952;background:#193d2d;border-radius:8px}.rules-body p,.rules-body li{font-size:12px;line-height:1.8}.source-note{font-size:10px!important;color:#9da98f!important}.action-verse{font:italic 22px/1.6 Georgia;color:#f3e2bb;padding:10px 0}.action-ref{color:#c8b679;font-size:12px}.action-instruction{font:21px/1.5 Georgia;color:#f4d889;margin:24px 0 12px}.pending-label{color:#d9c07d}.game-ended .status{background:#e6cf8a;color:#203425}.board-footer{padding-top:17px}.history-panel{min-height:150px}.history-panel li{font-size:11px}#move-toast{top:3%;font-size:11px}.progress-dot{display:block;width:6px;height:6px;background:#bfad77;border-radius:50%}.route-highlight{position:absolute;width:5%;height:6%;border:2px solid #fff6ae;border-radius:9px;box-shadow:0 0 15px #e7c87f;transform:translate(-50%,-50%);pointer-events:none}.room small{display:none}main{grid-template-columns:minmax(0,1fr) 310px;gap:25px;padding-top:20px}@media(min-width:1500px){main{grid-template-columns:minmax(0,1fr) 340px}.question-panel{padding:27px}.featured-card{height:145px;width:96px}.question-panel h2{font-size:30px}.question-panel p{font-size:13px}.player{padding:14px 10px}}@media(max-width:1100px){main{grid-template-columns:minmax(0,1fr) 255px}.question-panel{padding:18px 12px}.featured-card{height:80px;width:57px;margin:16px auto}.question-panel h2{font-size:20px}.question-panel p{font-size:11px;margin-bottom:17px}.question-panel .gold-button{font-size:10px}.player .avatar{display:none}.decks{gap:18px;padding:23px 8px 12px}.board-topline{font-size:8px;letter-spacing:.8px}.board-footer>span{font-size:9px}}@media(max-width:800px){main{display:flex}.board-topline{font-size:8px}.board-frame{padding:6px}.decks{gap:14px;padding:21px 7px 14px}.deck{aspect-ratio:.9}.deck .deck-badge{font-size:6px;padding:3px 4px}.player .avatar{display:none}.question-panel{padding:17px 12px}.question-panel p{font-size:10px}.question-panel .gold-button{font-size:10px;padding:12px 8px}.question-panel h2{font-size:19px}.turn-label{font-size:8px;letter-spacing:.5px}.featured-card{height:74px;width:50px;margin:15px auto}.player strong{font-size:12px}.board-footer>span{font-size:8px}.board-topline .text-button{font-size:9px}.board-modal{padding:16px}.question-text{font-size:21px}.welcome-actions{grid-template-columns:1fr}.welcome-top h2{font-size:25px}dialog{padding:30px 22px}.step-row{margin:16px 0}.answer{font-size:12px}.source-detail{font-size:10px}.history-panel li{font-size:10px}}
/* Responsive play, guided setup and motion */
html{scroll-behavior:smooth}body{overflow-x:hidden}button{touch-action:manipulation}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tools button{min-width:40px}.tools .audio-on{background:#d9bd6422;border-color:#e8ca7e;box-shadow:inset 0 0 10px #cfab4922}.empty-players{text-align:center;padding:18px 4px;color:#a9b99d}.empty-players>span{font-size:35px;color:#d7bd75;letter-spacing:8px}.empty-players p{font:17px Georgia;color:#e7d5a7}.empty-players small{font-size:11px}.setup-heading{text-align:center}.setup-heading .card-emblem{font-size:40px}.setup-heading h2{margin:12px 0;font-size:28px}.setup-heading p{font-size:12px;margin:8px 0 24px;color:#b2c2ac}.player-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.player-option{background:linear-gradient(#1c3b2d,#08261e);border:1px solid #7283636b;border-radius:13px;padding:18px 8px;color:#ddcfaa;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:0 5px 15px #0003;min-height:140px}.player-option:hover,.player-option.selected{border-color:#f5d891;background:radial-gradient(ellipse at top,#7d743748,#143b28);box-shadow:0 0 0 2px #d9bc6319,0 8px 18px #0003;transform:translateY(-3px)}.player-option strong{font:31px Georgia;color:#f4d997}.player-option small{font-size:9px;letter-spacing:2px}.setup-pawns{display:flex;gap:0;min-height:35px;align-items:center}.setup-pawns i{font-style:normal;font-size:24px;filter:drop-shadow(1px 3px 2px #0009)}.setup-name-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;animation:content-rise .25s both}.setup-name-grid label{display:flex;align-items:center;gap:8px;min-width:0}.setup-name-grid input{width:100%;min-width:0;font-size:14px;padding:11px}.setup-audio{display:flex;flex-direction:column;gap:12px;margin:24px 0;color:#c4cfb6;font-size:12px}.setup-audio label{display:flex;align-items:center;gap:10px;cursor:pointer}.setup-audio input{width:17px;height:17px;accent-color:#e4c57a}.resume-game{display:block;text-align:center;width:100%;background:none;border:1px solid #9c885840;border-radius:9px;font-size:12px;color:#c8ba8b;padding:13px;margin-top:15px}.setup-note{text-align:center;font-size:10px!important}.setup-heading+.player-options+#setup-form .gold-button{margin-top:12px}.music-panel{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border:1px solid #a28c4c55;border-radius:10px;background:#092b21;padding:13px 14px}.music-panel>button{width:31px;height:31px;flex-shrink:0;border:1px solid #d4b67980;background:#dfc37512;color:#ebd296;border-radius:50%;font-size:14px}.music-panel strong{display:block;font-size:11px;font-weight:500;color:#e9d49b}.music-panel small{display:block;color:#91a88e;font-size:9px;margin-top:3px}.music-bars{display:flex;align-items:center;height:20px;gap:3px;margin-left:auto}.music-bars i{width:2px;height:5px;background:#d4ba70;border-radius:2px}.music-panel.playing .music-bars i{animation:music-wave 1s ease-in-out infinite alternate}.music-bars i:nth-child(2){animation-delay:-.3s!important}.music-bars i:nth-child(3){animation-delay:-.6s!important}.music-bars i:nth-child(4){animation-delay:-.2s!important}.volume-label{display:block;width:100%;line-height:1;margin-top:3px}.volume-label input{accent-color:#cbb16f;display:block;width:100%;height:16px;padding:0;border:0;background:transparent;cursor:pointer}.pawn{transition:left .19s ease-in-out,top .19s ease-in-out;will-change:left,top}.pawn.active svg{animation:piece-breathe 2.4s ease-in-out infinite}.featured-card{animation:card-float 4.5s ease-in-out infinite}.deck{transition:transform .25s,filter .25s}.deck:hover{transform:translateY(-7px) rotateX(3deg)}.gold-button:not(:disabled):hover{box-shadow:0 0 0 3px #4a3e23,inset 0 0 0 2px #cfac60,0 0 22px #d7b96335}.answer{animation:content-rise .25s both}.answer:nth-child(2){animation-delay:.035s}.answer:nth-child(3){animation-delay:.07s}.answer:nth-child(4){animation-delay:.105s}.answer:nth-child(5){animation-delay:.14s}.result-box{animation:content-rise .3s ease-out}.player.current{transition:border-color .3s;box-shadow:inset 0 0 18px #e4c77510,0 0 8px #dfc56b18}.celebration{position:fixed;inset:0;z-index:99999;pointer-events:none;overflow:hidden}.celebration i{position:absolute;left:var(--x);top:-15px;width:7px;height:12px;animation:gold-fall 3.1s var(--d) ease-in forwards}.mobile-playbar{display:none}@keyframes gold-fall{to{transform:translate(25px,110vh) rotate(var(--r));opacity:.1}}@keyframes music-wave{to{height:19px;opacity:.5}}@keyframes content-rise{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes piece-breathe{50%{filter:brightness(1.2);transform:translateY(-2px)}}@keyframes card-float{50%{transform:translateY(-5px) rotate(-5deg)}}
@media(min-width:801px) and (max-width:1200px){header{gap:15px}.room{display:none}main{gap:18px;padding:20px;grid-template-columns:minmax(0,1fr) 260px}.question-panel h2{font-size:23px}.decks{gap:15px}.brand{font-size:31px}.brand small{letter-spacing:6px}.tools{gap:7px}nav button{padding:10px 15px}}
@media(max-width:800px){body{padding-bottom:calc(75px + env(safe-area-inset-bottom))}header{padding:16px max(14px,env(safe-area-inset-left));gap:12px}.brand{font-size:27px;letter-spacing:2.5px}.brand small{font-size:8px;letter-spacing:6px}.cross{font-size:42px}.tools{gap:6px}.tools button{min-width:35px;width:35px;height:37px;font-size:21px}main{padding:14px max(12px,env(safe-area-inset-left));gap:18px}.board-topline{gap:10px}.board-footer{gap:8px}.board-footer>span{line-height:1.6}.board-footer .quiet{min-height:40px;flex-shrink:0}.decks{gap:12px;padding:20px 5px 12px}.deck{aspect-ratio:.85}.deck .deck-badge{font-size:7px;bottom:6px}.player-panel{order:1}.question-panel{order:2}.music-panel{order:3;grid-column:1/-1;flex-wrap:nowrap;gap:12px}.music-panel .volume-label{width:32%;margin:0 0 0 3px}.music-panel .music-bars{margin-left:auto}.history-panel{order:4;grid-column:1/-1}.saved{order:5}.question-panel p{line-height:1.65}.player-info{min-width:0}.player strong{max-width:100%;font-size:13px}.player .status{font-size:8px}.mobile-playbar{display:flex;align-items:center;gap:12px;position:fixed;bottom:0;left:0;right:0;z-index:30;padding:12px max(15px,env(safe-area-inset-left)) calc(12px + env(safe-area-inset-bottom));background:#061f19f5;border-top:1px solid #c5a86080;backdrop-filter:blur(14px);box-shadow:0 -5px 30px #0005}.mobile-playbar>div{min-width:0;flex:1}.mobile-playbar small{display:block;font-size:8px;letter-spacing:1.5px;color:#acbfa6}.mobile-playbar strong{display:block;font:15px Georgia;color:#ead398;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-playbar button{width:auto;min-width:150px;font-size:12px;padding:12px 18px}.music-panel small{font-size:9px}.history-panel ol{display:block}.history-panel li{padding:8px 0;border-bottom:1px solid #809b681a}.history-panel li:nth-child(n+4){display:flex}dialog{max-height:calc(100dvh - 28px);overscroll-behavior:contain;scrollbar-width:thin}dialog h2{overflow-wrap:anywhere}.question-text{font-size:21px}.answer{min-height:48px}input{font-size:16px!important}.volume-label input{min-width:0}.setup-heading h2{font-size:26px}.player-option{padding:16px 6px;min-height:133px}.player-option strong{font-size:29px}.setup-pawns i{font-size:23px}.setup-audio label{min-height:30px}.welcome-actions button{min-height:46px}.modal-actions button{min-height:44px}.route-option{min-height:48px}.player-options{gap:10px}}
@media(max-width:420px){.brand{font-size:22px;letter-spacing:2px}.brand small{font-size:7px;letter-spacing:5px}.cross{font-size:37px}.tools{gap:5px}.tools button{width:32px;min-width:32px;height:34px;font-size:19px}header{gap:9px}nav button{font-size:14px;padding:10px 8px}.board-topline{letter-spacing:.3px;font-size:7px}.board-topline .text-button{font-size:8px}.board-footer>span{font-size:8px}.decks{gap:10px}.deck .deck-badge{font-size:6px;padding:3px}.panel{padding:12px}.player{padding:10px 6px;gap:6px}.mini-pawn{font-size:19px!important}.player .status{font-size:7px;padding:4px}.player strong{font-size:12px}.player small{font-size:8px}.question-panel h2{font-size:17px}.question-panel p{font-size:10px}.question-panel .gold-button{font-size:9px;padding:12px 5px}.turn-label{font-size:7px}.question-panel .roll-hint{font-size:8px}.player-panel .text-button{font-size:9px}.music-panel{gap:9px;padding:12px}.music-panel .volume-label{width:27%}.music-panel strong{font-size:10px}.music-panel small{font-size:8px}.setup-name-grid{grid-template-columns:1fr}.setup-pawns i{font-size:19px}.player-option{min-height:120px;padding:14px 4px}.player-option small{font-size:8px}.player-options{gap:7px}.mobile-playbar button{min-width:132px;font-size:10px}.mobile-playbar strong{font-size:13px}.setup-heading h2{font-size:23px}.question-text{font-size:19px}.card-header{letter-spacing:1px;font-size:9px}}
@media(max-width:350px){aside{grid-template-columns:1fr}.player-panel,.question-panel{grid-column:1/-1}.player .avatar{display:grid}.question-panel{padding:20px}.question-panel h2{font-size:23px}.question-panel p{font-size:12px}.question-panel .gold-button{font-size:13px}.player strong{font-size:15px}.player small{font-size:10px}.player .status{font-size:10px}.brand{font-size:19px}.brand small{letter-spacing:4px}.tools button{width:29px;min-width:29px}.cross{font-size:32px}}
@media(max-height:550px) and (orientation:landscape){dialog{max-height:calc(100dvh - 20px);padding:24px 30px}.welcome-top .card-emblem,.setup-heading .card-emblem{display:none}.welcome-top h2,.setup-heading h2{font-size:23px}.step-row{margin:12px 0}.player-options{margin:12px 0}.player-option{min-height:105px;padding:10px}.setup-audio{margin:15px 0}.mobile-playbar{padding-top:8px;padding-bottom:8px}.mobile-playbar button{padding:9px 15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.music-panel.playing .music-bars i{height:12px}}
