@font-face{font-family:Cinzel Decorative;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-decorative-latin-ext-700-normal-Dul5pKgq.woff2) format("woff2"),url(/assets/cinzel-decorative-latin-ext-700-normal-BaOC-94C.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel Decorative;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-decorative-latin-700-normal-CnX1aK6s.woff2) format("woff2"),url(/assets/cinzel-decorative-latin-700-normal-ov6XPGpn.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-ext-400-normal-o8fRvAFQ.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-ext-400-normal-DG8lny6_.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-400-normal-DDLP67lu.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-400-normal-C0kVTdou.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-ext-400-normal-K8pwR3tn.woff2) format("woff2"),url(/assets/eb-garamond-greek-ext-400-normal-BaZl8BIK.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-400-normal-CVAbzS9p.woff2) format("woff2"),url(/assets/eb-garamond-greek-400-normal-d4JlP2QH.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-vietnamese-400-normal-CLvJdMEL.woff2) format("woff2"),url(/assets/eb-garamond-vietnamese-400-normal-ifvNSiWx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-ext-400-normal-o4A__6QZ.woff2) format("woff2"),url(/assets/eb-garamond-latin-ext-400-normal-B4EmgUmt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-normal-BCNrxLz_.woff2) format("woff2"),url(/assets/eb-garamond-latin-400-normal-maQnHeKB.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-ext-400-italic-Bz1w3xqM.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-ext-400-italic-CYS3phfl.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-400-italic-BGIwiowF.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-400-italic-BZInx2ys.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-ext-400-italic-CHZOQEtG.woff2) format("woff2"),url(/assets/eb-garamond-greek-ext-400-italic-BL1XYHtS.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-400-italic-Dqr5KC66.woff2) format("woff2"),url(/assets/eb-garamond-greek-400-italic-BamGE6QP.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-vietnamese-400-italic-DQ8HKnks.woff2) format("woff2"),url(/assets/eb-garamond-vietnamese-400-italic-ORtyMVfw.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-ext-400-italic-V7s3nWfX.woff2) format("woff2"),url(/assets/eb-garamond-latin-ext-400-italic-DUSsnRSD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-italic-DSEbMgZu.woff2) format("woff2"),url(/assets/eb-garamond-latin-400-italic-CDFyLPXJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #17131c;--panel: #221c2a;--panel2: #2c2436;--text: #eee7f5;--muted: #a99bb8;--accent: #e0573c;--gold: #f1c24b;--ok: #5fbf77;--bete: #6b8f3a;--paysan: #b07a3a;--moine: #4f6fb0;--demon: #a3324a;--sceau: #7a5aa8;--radius: 10px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.4 system-ui,-apple-system,Segoe UI,sans-serif}#app{max-width:1200px;margin:0 auto;padding:16px}h1{font-size:1.5rem;margin:0 0 12px}h2{font-size:1.05rem;margin:0 0 8px;color:var(--muted);font-weight:600}button{background:var(--panel2);color:var(--text);border:1px solid #ffffff22;border-radius:8px;padding:8px 14px;font:inherit;cursor:pointer}button:hover:not(:disabled){border-color:var(--gold)}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);font-weight:600}input,select{background:var(--panel2);color:var(--text);border:1px solid #ffffff22;border-radius:8px;padding:8px;font:inherit}.panel{background:var(--panel);border-radius:var(--radius);padding:12px;margin-bottom:12px}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.topbar{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:space-between;margin-bottom:12px}.topbar h1{margin:0}.dice{display:flex;gap:6px}.die{width:40px;height:40px;border-radius:8px;background:#fff;color:#222;font-weight:700;font-size:1.3rem;display:grid;place-items:center}.sum{font-size:1.4rem;font-weight:700;color:var(--gold)}.cards{display:flex;flex-wrap:wrap;gap:8px}.card{width:150px;min-height:120px;padding:5px 5px 8px;font:.84rem/1.18 EB Garamond,Georgia,serif;color:#f3e9d2;display:flex;flex-direction:column;gap:2px;position:relative;background:linear-gradient(#1f1628,#120c18);border-radius:9px;border:1px solid #5a3e10;box-shadow:inset 0 0 0 2px #b8892b,inset 0 0 0 3px #120c18,0 4px 12px #0009;--fam: var(--muted)}.card.bete{--fam: #9fd36a}.card.paysan{--fam: #f0b35a}.card.moine{--fam: #8fb4ff}.card.demon{--fam: #ff7a6a}.card.sceau{--fam: #c8a0ff}.card .name{font-family:Cinzel Decorative,Georgia,serif;font-weight:700;font-size:.8rem;line-height:1.1;text-align:center;color:var(--gold);text-shadow:0 0 8px #f1c24b44;margin-top:10px;padding:0 2px}.card .num{position:absolute;left:50%;bottom:-9px;transform:translate(-50%);min-width:24px;height:20px;padding:0 6px;border-radius:10px;display:grid;place-items:center;white-space:nowrap;background:linear-gradient(#f7dc84,#b8892b);color:#2a1a05;border:2px solid #120c18;font:700 .74rem/1 Cinzel Decorative,Georgia,serif;box-shadow:0 0 8px #f1c24b66}.card .meta{color:var(--fam);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;text-align:center}.card .fx{text-align:center;padding:0 3px}.card .cond{color:#ff9a7a;font-style:italic;text-align:center;font-size:.8rem}.card.clickable{cursor:pointer}.card.clickable:hover{outline:2px solid var(--gold)}.card.selected{outline:3px solid var(--ok);outline-offset:1px}.card.hit{box-shadow:inset 0 0 0 2px #b8892b,0 0 0 2px var(--gold),0 0 14px var(--gold)}.players{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.player.active{outline:2px solid var(--accent)}.log{max-height:220px;overflow:auto;font-size:.85rem;color:var(--muted)}.log div:last-child{color:var(--text)}#modal[hidden]{display:none}#modal{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;z-index:40;display:flex;align-items:flex-end;justify-content:center;padding:16px 16px 104px}#modal .box,#selbar{background:var(--panel);border:2px solid var(--accent);border-radius:var(--radius);padding:14px 18px;max-width:520px;width:100%;box-shadow:0 8px 30px #000c}#modal .box.wide{max-width:940px;max-height:calc(100vh - 140px);overflow:auto}.opt-cards{margin-top:12px;justify-content:center}.opt-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}.opt-owner{font-size:.8rem;color:var(--muted)}#modal .who{color:var(--accent);font-weight:700}#modal .opts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}#selbar{position:fixed;left:50%;bottom:104px;transform:translate(-50%);width:calc(100% - 32px);z-index:9;display:flex;flex-direction:column;gap:10px}.blink{animation:blink .45s ease 2}@keyframes blink{50%{border-color:var(--gold);box-shadow:0 0 0 4px var(--gold),0 8px 30px #000c}}#app{padding-bottom:130px}.winner{font-size:1.3rem;color:var(--gold);font-weight:700}.hint{color:var(--muted);font-size:.85rem}.card .art{position:relative;margin:2px 2px 0}.card .art .vitrail{display:block;width:100%;height:auto}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;font-size:.9rem}.help-item{display:flex;gap:10px;align-items:flex-start}.help-item .sprite{flex:none}.tag{padding:0 6px;border-radius:4px;font-size:.8rem;color:#fff}.tag.bete{background:var(--bete)}.tag.paysan{background:var(--paysan)}.tag.moine{background:var(--moine)}.etal-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}.etal-head h2{margin:0}.deck{width:34px;height:44px;border-radius:5px;background:repeating-linear-gradient(45deg,var(--demon) 0 4px,#5a1a2a 4px 8px);border:2px solid var(--gold);display:grid;place-items:center;font-weight:700;font-size:.8rem;text-shadow:0 1px 2px #000;box-shadow:2px 2px #0008,4px 4px #0005}.souls{display:inline-flex;align-items:center;gap:4px}.die.rolling{animation:tumble .14s linear infinite}@keyframes tumble{0%{transform:rotate(0) translateY(0)}50%{transform:rotate(180deg) translateY(-6px)}to{transform:rotate(360deg) translateY(0)}}.soul-particle{position:fixed;pointer-events:none;z-index:30;filter:drop-shadow(0 0 4px #3fb0a8)}.souls-delta{position:fixed;pointer-events:none;z-index:31;font-weight:800;font-size:1.2rem;text-shadow:0 2px 4px #000}.souls-delta.gain{color:var(--gold)}.souls-delta.loss{color:#ff6b5b}.card.hit{animation:pulse 1s ease-in-out 2}@keyframes pulse{50%{box-shadow:inset 0 0 0 2px #b8892b,0 0 0 3px var(--gold),0 0 24px var(--gold)}}.summon-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;cursor:pointer;background:radial-gradient(circle at center,#3a0d16ee,#0b0610f5 70%);animation:fadein .3s ease}.summon-overlay>*{grid-area:1 / 1}.pentagram{width:min(80vmin,560px);height:min(80vmin,560px);animation:spin 12s linear infinite;filter:drop-shadow(0 0 10px #ff3b3b) drop-shadow(0 0 30px #b3001b)}.pentagram circle,.pentagram polyline{fill:none;stroke:#ff4a3d;stroke-width:1.2;stroke-dasharray:100;stroke-dashoffset:100;animation:draw 1s ease forwards}.pentagram circle:nth-child(2){animation-delay:.2s}.pentagram polyline{animation-delay:.45s;stroke-linejoin:round}.summon-demon{animation:rise 1s 1.1s cubic-bezier(.2,1.4,.4,1) both;filter:drop-shadow(0 0 20px #ff3b3b)}.summon-demon .sprite{width:min(30vmin,200px);height:min(30vmin,200px)}.summon-text{align-self:end;margin-bottom:8vh;text-align:center;animation:fadein .5s 1.6s both;padding:0 16px}.summon-who{color:var(--muted)}.summon-name{font-size:2rem;font-weight:800;color:var(--gold);text-shadow:0 0 12px #ff3b3b}.summon-effect{max-width:420px;margin:4px auto 0}.summon-skip{align-self:start;justify-self:end;margin:16px;color:var(--muted);font-size:.8rem}@keyframes draw{to{stroke-dashoffset:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{transform:scale(0) rotate(-30deg);opacity:0}to{transform:none;opacity:1}}@keyframes fadein{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.pentagram,.card.hit{animation:none}}.dock{position:fixed;left:0;right:0;bottom:0;z-index:35;background:#120e17f2;border-top:2px solid var(--accent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:10px 16px;min-height:88px}.dock-name{font-weight:700;font-size:1.05rem;display:flex;align-items:center;gap:10px}.dock-souls{display:inline-flex;align-items:center;gap:3px;color:var(--gold)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.chip{font-size:.78rem;padding:2px 8px;border-radius:999px;background:var(--panel2);color:var(--muted)}.chip.done{background:#2d4a33;color:#bff0c8}.dock-dice{display:flex;align-items:center;gap:10px;justify-self:end}.die.empty{background:#ffffff14;border:2px dashed #ffffff33}.dock-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}.dock-actions button.on{border-color:var(--gold);color:var(--gold)}button.big{padding:12px 20px;font-size:1.05rem}@media (max-width: 760px){.dock{grid-template-columns:1fr auto}.dock-who{grid-column:1;grid-row:1}.dock-dice{grid-column:2;grid-row:1}.dock-actions{grid-column:1 / -1;grid-row:2;justify-content:stretch}.dock-actions button.big{flex:1}#app{padding-bottom:190px}#modal{padding-bottom:200px}#selbar{bottom:200px}}.souls{display:flex;flex-wrap:wrap;gap:2px 8px;min-height:22px;margin-bottom:8px;align-items:center}.soul-group{display:inline-flex;gap:1px}.soul-group .sprite{filter:drop-shadow(0 0 2px #3fb0a888)}.no-souls{color:var(--muted);font-size:.8rem;font-style:italic}.player-name{color:var(--text);display:flex;align-items:center;gap:8px}.badge{font-size:.7rem;font-weight:600;padding:1px 7px;border-radius:999px;background:#3fb0a833;color:#9fe3dc}.badge.bot{background:#b0743f33;color:#f0c89a;margin-left:4px}.bots-row{margin-top:10px;gap:8px;align-items:center}.bots-row label{font-size:.9rem}.home{max-width:1000px;margin:0 auto}.title{display:flex;align-items:center;gap:12px;font-size:2rem;margin:12px 0 18px}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-bottom:12px}.home-grid .panel{margin:0}.code-input{text-transform:uppercase;letter-spacing:.25em;font-weight:700;width:120px;text-align:center}.link-input{flex:1;min-width:0}.room-code{color:var(--gold);letter-spacing:.15em}.lobby-players{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:6px}.lobby-players li{display:flex;align-items:center;gap:8px;background:var(--panel2);padding:6px 10px;border-radius:8px}.lobby-players li button{margin-left:auto}button.small{padding:2px 8px;font-size:.8rem}.lobby-start{justify-content:center;margin:16px 0}.error{background:#5a1a2a;border:1px solid var(--accent);padding:10px 14px;border-radius:8px;margin-bottom:12px}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:60;background:#5a1a2a;border:1px solid var(--accent);padding:10px 16px;border-radius:8px;box-shadow:0 6px 20px #000a;max-width:calc(100% - 32px)}.waiting{position:fixed;left:50%;bottom:104px;transform:translate(-50%);z-index:9;background:var(--panel);border:1px solid #ffffff22;border-radius:999px;padding:8px 16px;font-size:.9rem;box-shadow:0 6px 20px #000a;max-width:calc(100% - 32px)}.gallery-tools{position:sticky;top:0;z-index:5}.gallery-tools input{flex:1;min-width:160px}.gallery-tools button.on{border-color:var(--gold);color:var(--gold)}.copies{position:absolute;top:9px;right:9px;z-index:1;padding:0 5px;border-radius:8px;background:#120c18cc;font-size:.72rem;color:var(--gold);font-weight:700}.card .copies+*{margin-bottom:0}a{color:var(--gold)}.victory-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;cursor:pointer;overflow:hidden;background:radial-gradient(circle at center,#4a3608ee,#0b0610f5 70%);animation:fadein .3s ease}.victory-overlay>*{grid-area:1 / 1}.victory-rays{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;opacity:.35;animation:spin 20s linear infinite,fadein 1s ease;background:repeating-conic-gradient(from 0deg,#f1c24b 0deg 6deg,transparent 6deg 18deg);-webkit-mask:radial-gradient(circle,#000 0%,transparent 35%);mask:radial-gradient(circle,#000 0%,transparent 35%)}.victory-ring{width:min(70vmin,480px);height:min(70vmin,480px);filter:drop-shadow(0 0 10px #f1c24b)}.victory-ring circle{fill:none;stroke:#f1c24b;stroke-width:1.2;stroke-dasharray:100;stroke-dashoffset:100;animation:draw 1s ease forwards}.victory-ring circle:nth-child(2){animation-delay:.25s;stroke-dasharray:2 3}.victory-cup{animation:rise 1s .7s cubic-bezier(.2,1.4,.4,1) both,bob 2.4s 1.7s ease-in-out infinite;filter:drop-shadow(0 0 24px #f1c24b)}.victory-cup .sprite{width:min(32vmin,220px);height:min(32vmin,220px)}.victory-name{font-size:2.6rem;text-shadow:0 0 16px #f1c24b,0 2px 0 #000}.victory-overlay .summon-text{animation-delay:1.2s}.victory-overlay .summon-who{color:var(--gold);font-size:1.2rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}.victory-spark{position:absolute;top:0;pointer-events:none}@keyframes bob{50%{transform:translateY(-10px)}}@media (prefers-reduced-motion: reduce){.victory-rays,.victory-cup{animation:none}}#modal .opts button.back,#modal .opts button.cancel{margin-left:auto}#modal .opts button.back+button.cancel{margin-left:0}#modal .opts button.back,#modal .opts button.cancel{color:var(--muted);border-style:dashed}#modal .opts button.cancel:hover{color:#ff8a7a;border-color:#ff8a7a}.turn-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:grid;place-items:center;pointer-events:none;background:radial-gradient(ellipse at center,#0b0610cc,#0b061000 70%);animation:fadein .25s ease}.turn-band{width:100%;padding:22px 16px 24px;text-align:center;background:linear-gradient(90deg,#120c1800,#2a1036f2 18%,#3a0d16f2,#2a1036f2 82%,#120c1800);border-block:2px solid #b8892b;box-shadow:0 0 0 1px #120c18,0 0 30px #f1c24b33;animation:turnin .45s cubic-bezier(.2,1.3,.4,1) both}.turn-label{font:400 .95rem/1 EB Garamond,Georgia,serif;font-style:italic;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.turn-label:before,.turn-label:after{content:"◆";color:var(--gold);font-style:normal;margin:0 .7em;font-size:.7em;vertical-align:middle}.turn-name{font:700 clamp(1.8rem,7vw,3rem)/1.15 "Cinzel Decorative",Georgia,serif;color:var(--gold);text-shadow:0 0 14px #f1c24b88,0 2px 0 #000;margin:8px 0 4px;overflow-wrap:anywhere}.turn-detail{font:1.1rem/1.2 EB Garamond,Georgia,serif;color:var(--text)}@keyframes turnin{0%{transform:scaleY(0);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.turn-band{animation:none}}.dock-actions button.last-action{animation:lastaction 1.1s ease-in-out infinite}@keyframes lastaction{50%{box-shadow:0 0 0 3px var(--gold),0 0 22px var(--gold);background:#f06a4e}}@media (prefers-reduced-motion: reduce){.dock-actions button.last-action{animation:none;box-shadow:0 0 0 3px var(--gold)}}.dice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:44;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at center,#0b061099,#0b061000 45%);animation:fadein .2s ease}.cdice-stage{display:flex;flex-direction:column;align-items:center;gap:14px;padding:18px clamp(20px,5vw,40px) 16px;border-radius:22px;background:radial-gradient(ellipse at center,#2a1036f5,#120c18f5 75%);border:2px solid #b8892b;box-shadow:0 0 0 1px #120c18,inset 0 0 0 1px #f1c24b33,0 0 40px #f1c24b2a,0 18px 50px #000d}.cdice-who{font:italic 400 1rem/1 EB Garamond,Georgia,serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-shadow:0 1px 3px #000}.cdice-who:before,.cdice-who:after{content:"◆";color:var(--gold);font-style:normal;margin:0 .7em;font-size:.7em;vertical-align:middle}.cdice{display:flex;gap:clamp(18px,5vw,36px)}.cdie{width:clamp(76px,20vw,108px);aspect-ratio:1;box-sizing:border-box;padding:13%;border-radius:18%;display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);background:radial-gradient(circle at 28% 22%,#ffb3a066,transparent 42%),linear-gradient(45deg,transparent 49.2%,#120c1888 49.2% 50.8%,transparent 50.8%),linear-gradient(-45deg,transparent 49.2%,#120c1888 49.2% 50.8%,transparent 50.8%),linear-gradient(135deg,#a01e34,#5a1020 55%,#2a0614);border:3px solid #b8892b;box-shadow:inset 0 0 0 2px #120c18,inset 0 0 0 4px #f1c24b55,inset 0 0 18px #000a,0 0 26px #f1c24b40,0 12px 30px #000c}.cdie:nth-child(2){background:radial-gradient(circle at 28% 22%,#a8c4ff66,transparent 42%),linear-gradient(45deg,transparent 49.2%,#120c1888 49.2% 50.8%,transparent 50.8%),linear-gradient(-45deg,transparent 49.2%,#120c1888 49.2% 50.8%,transparent 50.8%),linear-gradient(135deg,#2c55b0,#172e6e 55%,#0b1434)}.cdie i{place-self:center;width:64%;aspect-ratio:1;border-radius:50%}.cdie i.on{background:radial-gradient(circle at 35% 30%,#fff6cf,#f1c24b 45%,#8a5a10);box-shadow:0 0 0 1.5px #120c18,0 0 8px #f1c24baa}.cdie.rolling{animation:ctumble .36s linear infinite;animation-delay:calc(var(--i) * -.15s)}.cdie.landed{animation:cland .5s cubic-bezier(.2,1.4,.4,1) both;animation-delay:calc(var(--i) * 70ms);box-shadow:inset 0 0 0 2px #120c18,inset 0 0 0 4px #f1c24b88,inset 0 0 18px #000a,0 0 34px #f1c24b88,0 12px 30px #000c}.cdice-sum{min-height:1em;font:700 clamp(2.2rem,9vw,3.4rem)/1 "Cinzel Decorative",Georgia,serif;color:var(--gold);text-shadow:0 0 16px #f1c24b99,0 2px 0 #000;opacity:0}.cdice-sum.show{animation:rise .45s .2s cubic-bezier(.2,1.3,.4,1) both}@keyframes ctumble{0%{transform:translateY(0) rotate(0)}25%{transform:translateY(-22px) rotate(90deg) scale(.92)}50%{transform:translateY(0) rotate(180deg)}75%{transform:translateY(-12px) rotate(270deg) scale(.95)}to{transform:rotate(360deg)}}@keyframes cland{0%{transform:translateY(-34px) rotate(-28deg) scale(1.15)}60%{transform:translateY(0) rotate(6deg) scale(.96)}to{transform:none}}
