@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cinzel-latin-ext-400-normal-XQK_CSAr.woff2)format("woff2"),url(/assets/cinzel-latin-ext-400-normal-DJ0Lq8y-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cinzel-latin-400-normal-DnUIPmzd.woff2)format("woff2"),url(/assets/cinzel-latin-400-normal-C8jUSQqm.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-ext-600-normal-BEFdM_VE.woff2)format("woff2"),url(/assets/cinzel-latin-ext-600-normal-BY9Mq9iK.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/cinzel-latin-ext-800-normal-BVA5zD9y.woff2)format("woff2"),url(/assets/cinzel-latin-ext-800-normal-gMcvnDsD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/cinzel-latin-800-normal-CwkMVn6z.woff2)format("woff2"),url(/assets/cinzel-latin-800-normal-69OYDlL6.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@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+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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+460-52F,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+301,U+400-45F,U+490-491,U+4B0-4B1,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+1F??}@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+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@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+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,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+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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:500;src:url(/assets/eb-garamond-cyrillic-ext-500-normal-DcO3I2lp.woff2)format("woff2"),url(/assets/eb-garamond-cyrillic-ext-500-normal-I3TfTkSf.woff)format("woff");unicode-range:U+460-52F,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:500;src:url(/assets/eb-garamond-cyrillic-500-normal-c5LjvaqX.woff2)format("woff2"),url(/assets/eb-garamond-cyrillic-500-normal-CLHyttEY.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/eb-garamond-greek-ext-500-normal-DkhmZW4r.woff2)format("woff2"),url(/assets/eb-garamond-greek-ext-500-normal-CMJ7zNBO.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/eb-garamond-greek-500-normal-BtA0fbXC.woff2)format("woff2"),url(/assets/eb-garamond-greek-500-normal-BjSCMh1N.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/eb-garamond-vietnamese-500-normal-BCT1_K6u.woff2)format("woff2"),url(/assets/eb-garamond-vietnamese-500-normal-B0TRhMco.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/eb-garamond-latin-ext-500-normal-BFuc0jzo.woff2)format("woff2"),url(/assets/eb-garamond-latin-ext-500-normal-obw7ZvB_.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:500;src:url(/assets/eb-garamond-latin-500-normal-DehAIUv0.woff2)format("woff2"),url(/assets/eb-garamond-latin-500-normal-DZU8xF9o.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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+460-52F,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+301,U+400-45F,U+490-491,U+4B0-4B1,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+1F??}@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+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@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+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,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+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#2b1a0c;--ink-soft:#5d4429;--ink-faint:#8a7152;--parch-1:#f6ecd2;--parch-2:#ead7ab;--parch-3:#d9c08c;--wood-1:#5a3419;--wood-2:#3b2111;--wood-3:#22130a;--gold-1:#fbe6a6;--gold-2:#e0b95e;--gold-3:#a97c2e;--gold-4:#6b4d19;--cream:#f3e4c0;--good:#4f8a3a;--bad:#b8392c;--warn:#c9851f;--shadow:0 12px 34px #00000073, 0 2px 6px #00000059;--font-title:"Cinzel", "Trajan Pro", Georgia, serif;--font-deco:"Cinzel Decorative", "Cinzel", Georgia, serif;--font-body:"EB Garamond", Garamond, "Times New Roman", serif;--noise:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .36 0 0 0 0 .25 0 0 0 0 .12 0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--grain:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='60'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.012 .5' numOctaves='2' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 .1 0 0 0 0 .05 0 0 0 0 .02 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");--card-w:clamp(66px, 6.4vw, 98px)}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;margin:0;font-size:16px}input,textarea{-webkit-user-select:text;user-select:text}button{font:inherit;color:inherit}kbd{min-width:1.5em;font-family:var(--font-title);text-align:center;vertical-align:.1em;background:#fff8e159;border:1px solid #00000059;border-bottom-width:2px;border-radius:4px;margin:0 .1em;padding:0 .35em;font-size:.72em;font-weight:600;line-height:1.5;display:inline-block}.muted{color:var(--ink-faint)}.small{font-size:.86rem}.warn-text{color:var(--bad)}.row-gap{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row-gap.center{justify-content:center}.inline-icon{vertical-align:-3px;filter:drop-shadow(0 1px 1px #0000004d);margin:0 1px;display:inline-block}.scroll{scrollbar-width:thin;scrollbar-color:var(--gold-3) transparent;overflow-y:auto}.scroll::-webkit-scrollbar{width:6px}.scroll::-webkit-scrollbar-thumb{background:var(--gold-3);border-radius:3px}.parchment{color:var(--ink);background:var(--noise), radial-gradient(ellipse at 25% 15%, #fff6, transparent 55%), radial-gradient(ellipse at 85% 95%, #7d501e33, transparent 55%), linear-gradient(160deg, var(--parch-1), var(--parch-2) 58%, var(--parch-3));box-shadow:var(--shadow), inset 0 0 50px #7d501e38;border-radius:12px;position:relative}.framed{border:4px solid var(--wood-2);box-shadow:0 0 0 1px var(--gold-3), var(--shadow), inset 0 0 0 1px #ffe8af8c, inset 0 0 50px #7d501e38}.framed:after{content:"";pointer-events:none;border:1px solid #a97c2e73;border-radius:8px;position:absolute;inset:6px}.walnut{color:var(--cream);background:var(--grain), linear-gradient(180deg, #4a2a15f0, #26150af2);border:1px solid #e0b95e73;border-radius:12px;box-shadow:0 8px 24px #00000073,inset 0 1px #ffe6aa1f}.parchment-chip{background:linear-gradient(180deg, var(--parch-1), var(--parch-2));box-shadow:var(--shadow);font-family:var(--font-title);border-radius:20px;padding:8px 16px;font-size:.9rem}.gilded{font-family:var(--font-title);letter-spacing:.05em;background:linear-gradient(#fff4c8 0%,#eecb72 38%,#b3842f 56%,#f0d387 100%);color:#0000;filter:drop-shadow(0 1px #321c08d9)drop-shadow(0 3px 6px #00000059);-webkit-background-clip:text;background-clip:text;margin:0;font-weight:800}.parchment .gilded{background:linear-gradient(#a06d1e 0%,#6e4410 45%,#3f250a 55%,#8a5a16 100%);filter:drop-shadow(0 1px #fff5d7cc);-webkit-background-clip:text;background-clip:text}.eyebrow{font-family:var(--font-title);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint);font-size:.72rem;font-weight:600}.section-title{font-family:var(--font-title);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:10px;margin:18px 0 8px;font-size:.82rem;font-weight:700;display:flex}.section-title:after{content:"";background:linear-gradient(90deg,#6b4d1980,#0000);flex:1;height:1px}.tag{font-family:var(--font-title);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);vertical-align:2px;background:#6b4d1924;border:1px solid #6b4d1940;border-radius:8px;align-items:center;gap:3px;margin-left:6px;padding:0 6px;font-size:.62rem;font-weight:700;line-height:1.6;display:inline-flex}.tag.gold{color:#5a3a08;background:linear-gradient(180deg, var(--gold-1), var(--gold-2));border-color:var(--gold-3)}.walnut .tag,.pp .tag{color:var(--gold-1);background:#e0b95e24;border-color:#e0b95e59}.pname{color:var(--pc,inherit);text-shadow:0 1px 1px #00000080;font-weight:700}.pname-red{color:#ff8373}.pname-blue{color:#86adff}.pname-pink{color:#ff9ccb}.pname-white{color:#f6f1e6}.pname-orange{color:#ffac62}.pname-green{color:#74dc97}.pname-brown{color:#dcab7c}.parchment .pname,.toast .pname{text-shadow:none}.parchment .pname-red,.toast .pname-red{color:#a8261c}.parchment .pname-blue,.toast .pname-blue{color:#1f4796}.parchment .pname-pink,.toast .pname-pink{color:#b03a74}.parchment .pname-white,.toast .pname-white{color:#6b604f;text-underline-offset:2px;-webkit-text-decoration:underline #6b604f59;text-decoration:underline #6b604f59}.parchment .pname-orange,.toast .pname-orange{color:#b55a0e}.parchment .pname-green,.toast .pname-green{color:#1d6e3c}.parchment .pname-brown,.toast .pname-brown{color:#6b4120}.btn{font-family:var(--font-title);letter-spacing:.06em;cursor:pointer;white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:7px;font-weight:700;transition:transform .12s,box-shadow .12s,filter .15s,background .2s;display:inline-flex;position:relative}.btn-sm{padding:5px 11px;font-size:.74rem}.btn-md{padding:9px 16px;font-size:.86rem}.btn-lg{padding:12px 22px;font-size:1rem}.btn.wide{width:100%}.btn:not(:disabled):hover{filter:brightness(1.07);transform:translateY(-1px)}.btn:not(:disabled):active{transform:translateY(2px)}.btn:disabled{cursor:not-allowed;opacity:.45;filter:grayscale(.45)}.btn-gold{color:#3a2208;text-shadow:0 1px #fff0c899;background:linear-gradient(#fbe39a 0%,#e0b24a 52%,#b8862a 100%);border:1px solid #7a5415;box-shadow:inset 0 1px #ffffffa6,0 3px #6b4a14,0 6px 14px #00000059}.btn-gold:not(:disabled):active{box-shadow:inset 0 1px #ffffff80,0 1px #6b4a14,0 3px 8px #00000059}.btn-wood{color:var(--gold-1);background:var(--grain), linear-gradient(180deg, #74462a, #4a2a15 60%, #3a2010);text-shadow:0 1px #0009;border:1px solid #22130a;box-shadow:inset 0 1px #ffdca040,0 3px #1e1006,0 6px 12px #00000059}.btn-wood.is-active{box-shadow:inset 0 0 0 2px var(--gold-2), 0 0 16px #e0b95e80}.btn-secondary{color:var(--ink);background:linear-gradient(#fbf3de,#e8d5a8);border:1px solid #a5844c;box-shadow:inset 0 1px #fff,0 3px #8d6d3a,0 5px 10px #00000040}.btn-ghost{color:inherit;opacity:.85;background:0 0;border:1px solid}.btn-ghost:not(:disabled):hover{opacity:1;background:#a97c2e24}.btn-ghost.is-active{background:#a97c2e38}.btn-danger{color:#fff1e6;text-shadow:0 1px #0006;background:linear-gradient(#d9573f,#a52f20 60%,#7e2014);border:1px solid #4f130b;box-shadow:inset 0 1px #ffc8b480,0 3px #4f130b,0 6px 12px #00000059}.link-btn{color:var(--gold-1);font-family:var(--font-title);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;margin-left:10px;padding:0;font-size:.72rem;text-decoration:underline}.text-input{width:100%;color:var(--ink);font-family:var(--font-body);background:#fffbeebf;border:1px solid #b08c50;border-radius:7px;outline:none;padding:10px 13px;font-size:1.1rem;transition:border-color .15s,box-shadow .15s;box-shadow:inset 0 2px 5px #5a3c1433}.text-input::placeholder{color:#5d442973;font-style:italic}.text-input:focus{border-color:var(--gold-3);box-shadow:inset 0 2px 5px #5a3c1433,0 0 0 3px #e0b95e66}.field-label{font-family:var(--font-title);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px;font-size:.74rem;font-weight:700;display:block}input[type=range]{appearance:none;background:linear-gradient(90deg, var(--gold-3), var(--gold-2));cursor:pointer;border-radius:3px;outline:none;width:100%;height:6px;box-shadow:inset 0 1px 2px #0006}input[type=range]:disabled{opacity:.5;cursor:default}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:radial-gradient(circle at 35% 30%,#fff6d6,#d9a93f 60%,#8a5f18);border:1px solid #5a3a08;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 4px #0006}input[type=range]::-moz-range-thumb{background:radial-gradient(circle at 35% 30%,#fff6d6,#d9a93f 60%,#8a5f18);border:1px solid #5a3a08;border-radius:50%;width:18px;height:18px}.toggle{cursor:pointer;align-items:center;gap:10px;margin:8px 0;display:flex}.toggle.disabled{cursor:default;opacity:.75}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle-track{background:#5a3c1459;border-radius:11px;flex:none;width:38px;height:21px;transition:background .2s;position:relative;box-shadow:inset 0 1px 3px #0006}.toggle-thumb{background:radial-gradient(circle at 35% 30%,#fffaf0,#e8d5a8);border-radius:50%;width:17px;height:17px;transition:transform .2s cubic-bezier(.3,1.4,.5,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0006}.toggle input:checked+.toggle-track{background:linear-gradient(90deg, var(--gold-3), var(--gold-2))}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(17px)}.icon-btn{width:38px;height:38px;color:var(--gold-1);background:var(--grain), radial-gradient(circle at 40% 30%, #6e4327, #3a2010 70%);cursor:pointer;border:1px solid #e0b95e8c;border-radius:50%;place-items:center;transition:transform .15s,box-shadow .15s,color .15s;display:grid;position:relative;box-shadow:0 4px 10px #00000073,inset 0 1px #ffe6aa33}.icon-btn:hover{color:#fff;transform:translateY(-1px);box-shadow:0 6px 14px #00000080,0 0 12px #e0b95e59}.icon-btn.is-active{color:#3a2208;background:linear-gradient(#fbe39a,#c8952f)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.modal-x{width:28px;height:28px;color:var(--ink-soft);cursor:pointer;background:#fffaeb80;border:1px solid #6b4d1966;border-radius:50%;place-items:center;display:grid}.modal-x:hover{color:var(--ink);background:#fffaebe6}.tabs{gap:4px;display:flex}.tab{font-family:var(--font-title);letter-spacing:.08em;color:inherit;opacity:.6;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px 7px 0 0;align-items:center;gap:6px;padding:6px 12px;font-size:.74rem;font-weight:700;display:inline-flex}.tab:hover{opacity:.9}.tab.on{opacity:1;background:#fff5d71f;border-color:#a97c2e73 #a97c2e73 #0000}.screen{z-index:20;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:26px;padding:24px;display:flex;position:fixed;inset:0}.screen>*{pointer-events:auto}.screen>.screen-vignette{pointer-events:none}.screen-vignette{background:radial-gradient(75% 65% at 50% 45%,#0000 35%,#0c0602b8 100%),linear-gradient(#0c060273,#0000 30% 70%,#0c06028c);position:absolute;inset:0}.home-title{text-align:center;position:relative;pointer-events:none!important}.title-flourish{color:var(--gold-2);opacity:0;justify-content:center;align-items:center;gap:14px;animation:1s .2s forwards fade-up;display:flex}.title-flourish span{background:linear-gradient(90deg, transparent, var(--gold-2));width:120px;height:1px}.title-flourish span:last-child{background:linear-gradient(90deg, var(--gold-2), transparent)}.game-title{font-family:var(--font-deco);letter-spacing:.06em;text-transform:uppercase;text-wrap:balance;background:linear-gradient(#fff7d4 0%,#f3d37c 28%,#c9952f 50%,#7e5212 58%,#d9b55a 76%,#fff1bb 100%);color:#0000;filter:drop-shadow(0 2px #3b220a)drop-shadow(0 4px #24140a)drop-shadow(0 10px 22px #000000b3);-webkit-background-clip:text;background-clip:text;margin:4px 0 0;font-size:clamp(44px,6.6vw,118px);font-weight:700;line-height:1;animation:1.8s cubic-bezier(.2,.8,.2,1) both title-in;position:relative}.game-title:after{content:attr(data-text);background:linear-gradient(105deg,#0000 42%,#ffffffd9 50%,#0000 58%) 120% 0/260% 100%;color:#0000;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out 2s infinite shine;position:absolute;inset:0}.title-sub{font-family:var(--font-title);letter-spacing:.24em;text-wrap:balance;text-transform:uppercase;color:var(--gold-1);text-shadow:0 2px 8px #000000e6;opacity:0;margin-top:10px;font-size:clamp(13px,1.25vw,18px);font-weight:600;animation:1.2s .9s forwards fade-up}.home-panel{flex-direction:column;gap:12px;width:min(400px,92vw);padding:26px 28px 20px;animation:.9s cubic-bezier(.2,.8,.2,1) .5s both panel-in;display:flex}.rejoin-card{background:#e0b95e2e;border:1px solid #6b4d1947;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:14px;padding:10px 12px;display:flex}.rejoin-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.rejoin-text b{font-family:var(--font-title);font-size:.98rem}.rejoin-text span{color:var(--ink-soft);font-size:.88rem}.rejoin-actions{gap:8px;margin-left:auto;display:flex}.invite-note{border:1px dashed var(--gold-3);background:#e0b95e38;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:.98rem;display:flex}.divider{color:var(--ink-faint);font-family:var(--font-title);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:10px;margin:4px 0;font-size:.7rem;display:flex}.divider:before,.divider:after{content:"";background:linear-gradient(90deg,#0000,#6b4d1973,#0000);flex:1;height:1px}.join-row{gap:10px;display:flex}.code-input{font-family:var(--font-title);letter-spacing:.35em;text-align:center;text-transform:uppercase;flex:1;font-size:1.25rem;font-weight:700}.conn-status{color:var(--ink-faint);justify-content:center;align-items:center;gap:8px;margin-top:4px;font-size:.86rem;font-style:italic;display:flex}.conn-status .dot{background:var(--warn);width:8px;height:8px;box-shadow:0 0 8px var(--warn);border-radius:50%;animation:1.2s ease-in-out infinite pulse-dot}.conn-status.ok .dot{background:#6fbf4a;animation:none;box-shadow:0 0 8px #6fbf4a}.home-foot{font-family:var(--font-title);letter-spacing:.16em;color:#f3e4c0bf;text-shadow:0 1px 4px #000;text-align:center;font-size:.76rem;animation:1s 1.4s both fade-up;position:absolute;bottom:18px;pointer-events:none!important}.lobby-wrap{grid-template-columns:minmax(0,640px) 320px;gap:20px;max-height:calc(100vh - 48px);animation:.7s cubic-bezier(.2,.8,.2,1) both panel-in;display:grid}.lobby-main,.lobby-chat{padding:22px 26px;overflow:auto}.lobby-main.framed:after,.lobby-chat.framed:after{display:none}.lobby-main.framed,.lobby-chat.framed{outline-offset:-10px;outline:1px solid #a97c2e73}.lobby-chat{flex-direction:column;display:flex}.lobby-chat .section-title{margin-top:2px}.lobby-chat .chat-panel{flex:1;min-height:260px}.lobby-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.lobby-head-actions{gap:8px;display:flex}.room-code{gap:6px;margin-top:4px;display:flex}.room-code span{width:44px;height:54px;font-family:var(--font-title);color:var(--gold-1);background:var(--grain), linear-gradient(180deg, #6e4327, #3a2010);text-shadow:0 2px #000;border:1px solid #22130a;border-radius:7px;place-items:center;font-size:1.9rem;font-weight:800;display:grid;box-shadow:inset 0 1px #ffe6aa40,0 3px #1e1006,0 5px 10px #0000004d}.seat-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.seat{border:1px solid #6b4d1940;border-left:5px solid var(--pc,#6b4d1940);background:#fffaeb73;border-radius:10px;align-items:center;gap:12px;padding:8px 12px;animation:.35s both fade-up;display:flex;position:relative}.seat.mine{box-shadow:0 0 0 1px var(--gold-2), 0 4px 12px #6b4d1933;background:#fff6d7cc}.seat.offline{opacity:.6}.seat.empty{background:#fffaeb33;border-style:dashed;border-left-width:1px}.seat-crest{flex:none;place-items:center;width:40px;display:grid}.ghost-crest{width:34px;height:38px;font-family:var(--font-title);color:var(--ink-faint);border:1.5px dashed #6b4d1966;border-radius:6px 6px 50% 50%}.seat-info{flex:1;min-width:0}.seat-name{white-space:nowrap;text-overflow:ellipsis;font-size:1.12rem;font-weight:600;overflow:hidden}.seat-meta{color:var(--ink-faint);align-items:center;gap:4px;font-size:.86rem;font-style:italic;display:flex}.seat-meta.ok{color:var(--good)}.swatches{align-items:center;gap:7px;display:flex}.swatch{cursor:pointer;border:2px solid #00000059;border-radius:50%;width:26px;height:26px;transition:transform .15s;box-shadow:inset 0 -3px 5px #0000004d,inset 0 2px 3px #ffffff59}.swatch:hover:not(:disabled){transform:scale(1.15)}.swatch.on{outline:2px solid var(--gold-2);outline-offset:2px;transform:scale(1.1)}.swatch:disabled{opacity:.25;cursor:not-allowed}@media (width<=640px){.seat.mine{flex-wrap:wrap;row-gap:6px}.seat.mine .swatches{flex-wrap:wrap;flex-basis:100%;gap:8px;padding-left:52px}}.kick{width:26px;height:26px;color:var(--bad);cursor:pointer;background:#b8392c14;border:1px solid #b8392c80;border-radius:50%;place-items:center;display:grid}.kick:hover{background:#b8392c33}.lobby-settings{flex-direction:column;gap:6px;display:flex}.setting-label{justify-content:space-between;margin-bottom:6px;display:flex}.setting-value{font-family:var(--font-title);font-size:1.1rem}.setting-note{margin:6px 2px 0;font-size:.9rem;font-style:italic;line-height:1.3}.big-table-note{color:var(--ink);background:#fbde8c59;border:1px solid #a8792a66;border-radius:8px;padding:8px 10px;font-style:normal}.big-table-note svg{vertical-align:-2px;color:var(--gold-4)}.lobby-settings .seg{max-width:460px}.seg-btn:disabled{cursor:default}.seg-btn:disabled:not(.on){opacity:.65}.lobby-foot{border-top:1px solid #6b4d1940;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;padding-top:14px;display:flex}.starting{text-align:center;padding:34px 48px;animation:.6s both panel-in}.spinner-hex{background:linear-gradient(180deg, var(--gold-1), var(--gold-3));clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);width:46px;height:52px;margin:0 auto 14px;animation:1.6s cubic-bezier(.6,0,.4,1) infinite spin-hex}.chat-panel{flex-direction:column;gap:8px;min-height:0;display:flex}.chat-list{flex-direction:column;flex:1;gap:4px;min-height:80px;padding-right:4px;display:flex}.chat-list,.log-list{overflow-anchor:none}.chat-empty{padding:6px 0;font-style:italic}.chat-msg{overflow-wrap:anywhere;font-size:.98rem;line-height:1.3}.chat-msg.system{color:var(--ink-faint);font-size:.88rem;font-style:italic}.chat-name{text-shadow:0 0 1px #0006;margin-right:6px;font-weight:700}.parchment .chat-name{filter:brightness(.75)saturate(1.2)}.chat-input{gap:6px;display:flex;position:relative}.emoji-suggest{z-index:5;color:var(--ink);background:linear-gradient(#f8eed8,#efdfbd);border:1px solid #6b4d1966;border-radius:10px;margin:0;padding:4px;list-style:none;position:absolute;bottom:calc(100% + 6px);left:0;right:0;box-shadow:0 8px 20px #00000059}.emoji-suggest button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:5px 8px;display:flex}.emoji-suggest button.on,.emoji-suggest button:hover{background:#e0b95e59}.emoji-suggest-glyph{place-items:center;width:22px;font-size:1.2rem;line-height:1;display:grid}.emoji-suggest-name{font-size:.95rem}.emoji-btn{cursor:pointer;filter:grayscale(.4);background:#fffaeb99;border:1px solid #6b4d1959;border-radius:8px;flex:none;width:36px;font-size:1.15rem;line-height:1;transition:filter .15s,background .15s}.emoji-btn:hover,.emoji-btn.on{filter:none;background:#fbe39abf}.emoji-picker{z-index:5;max-height:min(260px,45vh);color:var(--ink);background:linear-gradient(#f8eed8,#efdfbd);border:1px solid #6b4d1966;border-radius:10px;padding:6px 8px 8px;position:absolute;bottom:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 20px #00000059}.log-chat .emoji-picker{max-height:196px}.emoji-picker-head{font-family:var(--font-title);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin:6px 2px 4px;font-size:.62rem;font-weight:700}.emoji-picker-grid{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:2px;display:grid}.emoji-picker-grid button{cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;height:34px;padding:0;font-size:1.3rem;line-height:1;display:grid}.emoji-picker-grid button:hover{background:#e0b95e59}.emoji-suggest-tag{font-family:var(--font-title);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-left:auto;font-size:.62rem;font-weight:700}.chat-input .text-input{padding:6px 10px;font-size:.98rem}.lobby-foot-actions{gap:8px;display:flex}.lobby-chat-btn{padding-inline:18px;position:relative}.lobby-chat-btn .unread,.icon-btn .unread{position:absolute;top:-7px;right:-7px;box-shadow:0 1px 3px #0006}.chat-peek{color:var(--ink);font:inherit;text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:linear-gradient(#fff8e6,#f1e0b6);border:1px solid #6b4d1959;border-radius:10px;padding:8px 12px;font-size:.95rem;animation:.25s both fade-up;position:absolute;bottom:calc(100% + 8px);left:26px;right:26px;overflow:hidden;box-shadow:0 6px 18px #3c230a59}.chat-sheet-backdrop{z-index:40;background:#0c070380;animation:.2s both fade-in;position:fixed;inset:0}.chat-sheet{z-index:41;width:min(560px,100% - 16px);height:min(520px,72dvh);padding:18px 22px calc(16px + env(safe-area-inset-bottom));border-bottom:0;border-radius:16px 16px 0 0;flex-direction:column;gap:6px;margin-inline:auto;animation:.3s cubic-bezier(.2,.8,.2,1) both sheet-up;display:flex;position:fixed;bottom:0;left:0;right:0}.chat-sheet .chat-panel{flex:1;min-height:0}.chat-sheet-head.tabbed{border-bottom:1px solid #6b4d194d;align-items:flex-end}.chat-sheet-head.tabbed .tabs{flex:1}.chat-sheet-head.tabbed .tab{color:var(--ink);padding:8px 14px;font-size:.8rem}.chat-sheet-head.tabbed .tab.on{background:#fffaeb8c}.chat-sheet-head.tabbed .chat-sheet-close{margin-bottom:6px}.chat-sheet .log-list{flex:1;gap:5px;height:auto;min-height:0;padding:6px 2px 2px}.chat-sheet .log-entry{color:var(--ink);font-size:.98rem}.chat-sheet .log-icon{color:var(--gold-4);background:#6b4d191f}.chat-sheet .log-entry.k-robber .log-icon{color:var(--bad)}.chat-sheet .log-entry.k-victory{color:var(--gold-4)}.chat-sheet .log-entry.k-system{color:var(--ink-faint)}.chat-sheet-head{align-items:center;gap:10px;display:flex}.chat-sheet-head .section-title{flex:1;margin:0}.chat-sheet-close{width:36px;height:36px;color:var(--ink);cursor:pointer;background:#fffaeb99;border:1px solid #6b4d1959;border-radius:50%;flex:none;place-items:center;display:grid}@keyframes sheet-up{0%{transform:translateY(100%)}}.feedback-modal{width:min(480px,100vw - 24px)}.feedback-topics{flex-wrap:wrap;margin-bottom:10px;display:flex}.feedback-topics .seg-btn{flex:auto}.feedback-text{resize:vertical;width:100%;min-height:110px;font:inherit;line-height:1.35}.feedback-note{margin:6px 0 0}.feedback-picture{margin-top:8px}.feedback-body{border-radius:10px;transition:box-shadow .15s}.feedback-body.dropping{box-shadow:0 0 0 3px #e0b95ebf}.feedback-photos{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.feedback-photo{background:#fffaeb80;border:1px solid #6b4d1959;border-radius:8px;width:64px;height:64px;position:relative;overflow:hidden}.feedback-photo img{object-fit:cover;width:100%;height:100%;display:block}.feedback-photo-x{width:22px;height:22px;color:var(--cream);cursor:pointer;background:#1e1108b8;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:3px;right:3px}.feedback-photo-x:hover{background:#1e1108e6}.feedback-add-photo{height:64px;color:var(--ink-soft);font:inherit;cursor:pointer;background:#fffaeb59;border:1px dashed #6b4d1980;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:.95rem;display:inline-flex}.feedback-add-photo:hover:not(:disabled){color:var(--ink);background:#fffaeb99;border-style:solid}.feedback-add-photo:disabled{opacity:.5;cursor:default}.feedback-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.settings-feedback{width:100%}.home-feedback{pointer-events:auto}.go-rate{border-bottom:1px dashed #a97c2e66;flex-wrap:wrap;flex-basis:100%;justify-content:center;align-items:center;gap:4px 12px;margin-bottom:2px;padding-bottom:8px;display:flex}.go-rate-q{font-family:var(--font-title);letter-spacing:.04em;color:var(--ink-soft);font-weight:700}.stars{gap:2px;display:flex}.star{color:#6b4d1947;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:1.7rem;line-height:1;transition:transform .12s,color .12s}.star.on{color:var(--gold-3);text-shadow:0 1px #6b4d1980,0 0 8px #e0b95e73}.star:hover{transform:translateY(-2px)scale(1.1)}.stars:hover .star{color:var(--gold-3)}.stars .star:hover~.star{color:#6b4d1947;text-shadow:none}.go-rate-comment{flex-basis:100%;gap:6px;max-width:460px;display:flex}.go-rate-comment .text-input{flex:1;min-width:0;padding:6px 10px}.toasts{z-index:70;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;top:96px;left:50%;transform:translate(-50%)}.toast{max-width:min(520px,90vw);color:var(--ink);pointer-events:auto;cursor:pointer;background:linear-gradient(#fbf3dc,#ead8ad);border:1px solid #a5844c;border-radius:22px;align-items:center;gap:9px;padding:7px 16px 7px 8px;font-size:1rem;animation:.4s cubic-bezier(.2,1.2,.4,1) both toast-in;display:flex;box-shadow:0 8px 20px #0006}.toast-mark{color:#fff;background:var(--gold-3);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.toast-good .toast-mark{background:var(--good)}.toast-bad .toast-mark{background:var(--bad)}.toast-warn .toast-mark{background:var(--warn)}.toast-bad{border-color:#b8392c99}.hud{z-index:20;pointer-events:none;color:var(--cream);position:fixed;inset:0}.hud-left{pointer-events:none;width:262px;position:absolute;top:12px;left:12px}.player-panels{flex-direction:column;gap:8px;display:flex}.pp{color:var(--cream);background:var(--grain), linear-gradient(180deg, #462814e6, #221309eb);border:1px solid #e0b95e59;border-left:4px solid var(--pc);pointer-events:auto;border-radius:11px;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;padding:7px 10px 7px 8px;transition:box-shadow .3s,transform .3s;animation:.5s cubic-bezier(.2,.8,.2,1) backwards slide-right;display:grid;position:relative;box-shadow:0 6px 18px #0006}.pp:nth-child(2){animation-delay:70ms}.pp:nth-child(3){animation-delay:.14s}.pp:nth-child(4){animation-delay:.21s}.pp.current{border-color:var(--pc);box-shadow:0 0 0 1px var(--pc), 0 0 22px color-mix(in srgb, var(--pc) 55%, transparent), 0 8px 22px #00000080;transform:translate(6px)}.pp.me{background:var(--grain), linear-gradient(180deg, #5c381aed, #2c190bf0)}.pp.offline>.pp-crest,.pp.offline>.pp-body,.pp.offline .pp-vp-num,.pp.offline .pp-vp-of{filter:saturate(.4)brightness(.8)}.pp.offline{background:var(--grain), linear-gradient(180deg, #34261ce6, #1c140eeb)}.pp-crest{place-items:center;display:grid;position:relative}.pp-ring{border:2px solid var(--pc);opacity:.8;border-radius:50%;animation:1.8s ease-out infinite ring-pulse;position:absolute;inset:-5px}.pp-body{min-width:0}.pp-clock{pointer-events:none;background:#00000059;border-radius:2px;height:3px;position:absolute;bottom:3px;left:10px;right:10px;overflow:hidden}.pp-clock span{background:var(--gold-2);transform-origin:0;height:100%;transition:transform .25s linear;display:block}.pp-clock.low span{background:#e0a93a}.pp-clock.urgent span{background:#e0553c}.pp-clock.paused{opacity:.5}.discard-clock b{font-family:var(--font-title);font-size:.92em;font-style:normal;font-weight:800}.discard-clock.urgent b{color:var(--bad)}.pp-top{align-items:center;gap:4px;min-width:0;display:flex}.pp-name{font-family:var(--font-title);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:700;overflow:hidden}.pp-top .tag{margin-left:2px}.pp-icon{color:var(--gold-2);opacity:.85;display:inline-grid}.pp-icon.warn{color:#ff9a7a}.pp-stats{gap:9px;margin-top:3px;display:flex}.pp-stat{color:#f3e4c0d9;align-items:center;gap:3px;font-size:.85rem;display:inline-flex}.pp-stat b{font-family:var(--font-title);font-size:.84rem}.pp-stat b.danger{color:#ff8a73}.pp-stat.award{color:var(--gold-1);text-shadow:0 0 8px #fbe6a699}.mini-card{filter:drop-shadow(0 1px 1px #00000080);width:11px;height:15px;display:block}.pp-status{align-items:center;gap:6px;margin-top:2px;display:flex}.pp-state{color:var(--gold-1);font-size:.8rem;font-style:italic;animation:1.6s ease-in-out infinite breathe}.pp-state.warn{color:#ff9a7a;animation:none}.pp-resp{font-family:var(--font-title);letter-spacing:.08em;text-transform:uppercase;background:#f3e4c01f;border-radius:8px;align-items:center;gap:3px;padding:0 6px;font-size:.6rem;font-weight:700;line-height:1.7;display:inline-flex}.pp-resp.accepted{color:#c8f0a8;background:#6fbf4a4d}.pp-resp.declined{color:#ffc0b0;background:#b8392c59}.pp-vp{text-align:center;cursor:pointer;border-radius:8px;outline:none;min-width:38px;position:relative}.pp-vp:focus-visible{box-shadow:0 0 0 2px var(--gold-2)}.pp:has(.pp-vp.open){z-index:5}.pp-vp-num{font-family:var(--font-title);background:linear-gradient(#fff4c8,#e4ba58 55%,#b08028);color:#0000;filter:drop-shadow(0 1px #000);-webkit-background-clip:text;background-clip:text;font-size:1.55rem;font-weight:800;line-height:1}.pp-vp-of{color:#f3e4c08c;font-size:.66rem;font-family:var(--font-title)}.vp-split{gap:4px;margin-left:auto;display:inline-flex}.vp-chip{font-family:var(--font-title);white-space:nowrap;border-radius:8px;align-items:center;gap:3px;padding:0 6px;font-size:.72rem;font-weight:800;line-height:1.6;display:inline-flex}.vp-chip.board{color:var(--cream);background:#f3e4c01f;border:1px solid #f3e4c047}.vp-chip.secret{color:#3a2208;background:radial-gradient(circle at 35% 30%,#fff3c4,#d9a93f 65%,#8a5f18);border:1px solid #5a3a08;box-shadow:0 0 8px #fbe6a673}.pp:has(.pp-crest[role=button]){cursor:pointer}.pp.shown{box-shadow:0 0 0 2px var(--pc), 0 6px 18px #0006}.parchment.pp-card{z-index:60;pointer-events:auto;width:236px;padding:10px 12px;animation:.18s both fade-up;position:fixed}.pp-card-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.pp-card-name{overflow-wrap:anywhere;flex:1;align-items:center;gap:5px;min-width:0;font-weight:600;display:flex}.pp-card-vp{font-family:var(--font-title);white-space:nowrap;color:var(--ink-soft);font-size:.82rem}.pp-card-vp b{color:var(--ink);font-size:1.15rem}.pp-card-rows{gap:5px;margin:0;display:grid}.pp-card-rows>div{grid-template-columns:20px 1fr auto;align-items:center;gap:8px;display:grid}.pp-card-icon{color:var(--ink-soft);place-items:center;display:grid}.pp-card-rows dt{font-size:.9rem;line-height:1.2}.pp-card-rows dt small{color:var(--gold-4);font-size:.78rem;font-weight:700;display:block}.pp-card-rows dd{font-family:var(--font-title);margin:0;font-weight:800}.pp-card-rows dd.danger{color:#b3261e}.pp-card-rows .award .pp-card-icon{color:var(--gold-4)}.pp-card-note{color:var(--ink-soft);border-top:1px solid #6b4d1933;margin-top:8px;padding-top:6px;font-size:.85rem}.vp-tip{z-index:20;width:236px;color:var(--ink);text-align:left;cursor:default;pointer-events:none;transform-origin:0 0;background:linear-gradient(#fbf3dc,#e8d4a6);border:1px solid #a5844c;border-radius:10px;padding:10px 12px;animation:.16s both pop-in;position:absolute;top:-8px;left:calc(100% + 22px);box-shadow:0 8px 22px #00000073}.vp-tip:before{content:"";border:7px solid #0000;border-right-color:#f6ead0;position:absolute;top:20px;right:100%}.vp-tip-head{border-bottom:1px solid #6b4d194d;justify-content:space-between;align-items:baseline;margin-bottom:6px;padding-bottom:5px;display:flex}.vp-tip-total{font-family:var(--font-title);color:var(--ink-faint);font-size:.8rem}.vp-tip-total b{color:var(--ink);font-size:1.15rem}.vp-rows{gap:4px;margin:0;padding:0;list-style:none;display:grid}.vp-rows li{grid-template-columns:20px 1fr auto 20px;align-items:center;gap:6px;font-size:.95rem;display:grid}.vp-row-icon{place-items:center;display:grid}.vp-row-icon .pp-badge{width:17px;height:17px}.vp-row-count{color:var(--ink-faint);font-size:.82rem}.vp-row-points{text-align:right;font-family:var(--font-title);font-weight:800}.vp-rows li.secret{color:#6d4a0e;background:#d9a93f38;border-radius:6px;margin:0 -6px;padding:1px 6px}.vp-tip-split{border-top:1px dashed #6b4d1966;gap:3px;margin-top:7px;padding-top:6px;font-size:.88rem;display:grid}.vp-tip-split>div{justify-content:space-between;align-items:center;display:flex}.vp-tip-split>div>span{align-items:center;gap:4px;display:inline-flex}.vp-tip-split b{font-family:var(--font-title);font-weight:800}.vp-tip-split .secret{color:#8a5f18}.vp-tip-foot{color:var(--ink-faint);margin-top:6px;font-size:.84rem;font-style:italic}.pp-badge{color:#3a2208;background:radial-gradient(circle at 35% 30%,#fff3c4,#d9a93f 65%,#8a5f18);border:1px solid #5a3a08;border-radius:50%;flex:none;place-items:center;width:19px;height:19px;display:inline-grid;box-shadow:0 2px 5px #00000073,0 0 10px #fbe6a673}.phase-wrap{pointer-events:none;flex-direction:column;align-items:center;gap:6px;width:max-content;max-width:calc(100vw - 600px);display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.phase-banner{color:var(--cream);background:var(--grain), linear-gradient(180deg, #462814eb, #1e1108f0);border:1px solid #e0b95e73;border-radius:14px;align-items:center;gap:14px;padding:8px 14px 8px 12px;animation:.5s cubic-bezier(.2,.9,.3,1.1) both drop-in;display:flex;box-shadow:0 8px 22px #00000073}.phase-banner.mine{border-color:var(--gold-2);box-shadow:0 0 0 1px #fbe6a659,0 0 26px #e0b95e59,0 8px 22px #00000073}.phase-banner.urgent{position:relative;box-shadow:0 0 0 1px #fbe6a659,0 0 18px #e0b95e40,0 8px 22px #00000073}.phase-banner.urgent:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;animation:2.2s ease-in-out .5s infinite glow-fade;position:absolute;inset:0;box-shadow:0 0 0 1px #fbe6a6b3,0 0 34px #e0b95e99}.phase-turn{font-family:var(--font-title);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2);white-space:nowrap;border-right:1px solid #e0b95e4d;align-items:center;gap:7px;padding-right:12px;font-size:.68rem;font-weight:700;display:flex}.phase-dot{background:var(--pc,var(--gold-2));width:10px;height:10px;box-shadow:0 0 8px var(--pc,var(--gold-2));border:1px solid #00000080;border-radius:50%}.phase-text{min-width:0}.phase-title{font-family:var(--font-title);letter-spacing:.03em;white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;animation:.35s both fade-up;overflow:hidden}.phase-banner.mine .phase-title{color:var(--gold-1)}.phase-detail{color:#f3e4c0bf;white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-style:italic;overflow:hidden}.phase-dice{border-left:1px solid #e0b95e4d;align-items:center;gap:4px;padding-left:12px;display:flex}.phase-dice-total{font-family:var(--font-title);color:var(--gold-1);text-align:center;min-width:1.4em;margin-left:4px;font-size:1.3rem;font-weight:800}.phase-dice.seven .phase-dice-total{color:#ff7a64;text-shadow:0 0 10px #ff5a3c99}.phase-clock{font-family:var(--font-title);color:var(--gold-1);background:#00000047;border:1px solid #e0b95e59;border-radius:999px;flex:none;align-items:center;gap:5px;padding:3px 10px 3px 8px;font-size:.95rem;font-weight:800;display:inline-flex;position:relative;overflow:hidden}.phase-clock:before{content:"";transform-origin:0;transform:scaleX(var(--f));background:#e0b95e3d;transition:transform .25s linear;position:absolute;inset:0}.phase-clock>*{position:relative}.phase-clock.low{color:#ffcf7a}.phase-clock.urgent{color:#ff8a74;border-color:#ff6e5a99}.phase-clock.urgent:before{background:#ff5a3c47}.phase-clock.urgent.mine .phase-clock-time{animation:1s ease-in-out infinite pulse-dot}.phase-clock.paused{opacity:.6}.clock-time{white-space:nowrap}.clock-digit,.clock-colon{text-align:center;display:inline-block}.clock-digit{width:.68em}.clock-colon{width:.28em}.build-hint{color:#fff6dc;pointer-events:auto;background:#140b05c7;border:1px dashed #fbe6a699;border-radius:16px;padding:5px 14px;font-size:.92rem;animation:.25s both fade-up;box-shadow:0 4px 12px #0006}.build-hint kbd{color:var(--gold-1);background:#ffffff14;border-color:#fbe6a666}.utility{pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;top:12px;right:12px}.utility-row{pointer-events:auto;gap:6px;display:flex}.bank-mini{color:var(--gold-1);pointer-events:auto;background:#180d06c7;border:1px solid #e0b95e4d;border-radius:16px;align-items:center;gap:8px;padding:5px 12px;display:flex;box-shadow:0 4px 12px #00000059}.bank-item{font-family:var(--font-title);color:var(--cream);align-items:center;gap:3px;font-size:.78rem;font-weight:700;display:inline-flex}.bank-item.low{color:#ffab8f}.popover{pointer-events:auto;z-index:5;transform-origin:100% 0;width:300px;padding:16px 18px;animation:.22s cubic-bezier(.2,1,.4,1) both pop-in;position:absolute;top:52px;right:0}.utility>.popover{position:relative;top:auto;right:auto}.pop-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.pop-title{font-family:var(--font-title);letter-spacing:.08em;color:var(--ink-soft);font-size:1rem;font-weight:800}.pop-section{font-family:var(--font-title);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);margin:12px 0 6px;font-size:.66rem;font-weight:700}.pop-section-row{align-items:center;gap:6px;display:flex}.info-btn{width:22px;height:22px;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;margin:-4px 0;padding:0;display:inline-grid}.info-btn:hover,.info-btn[aria-expanded=true]{color:var(--ink);background:#6b4d191f}.pop-note{color:var(--ink-soft);background:#fffaeb99;border:1px solid #6b4d192e;border-radius:8px;margin:0 0 8px;padding:8px 10px;font-size:.86rem;line-height:1.35}.slider-row{grid-template-columns:72px 1fr 30px;align-items:center;gap:10px;margin:6px 0;font-size:.95rem;display:grid}.slider-val{font-family:var(--font-title);text-align:right;color:var(--ink-faint);font-size:.74rem}.seg{border:1px solid #a5844c;border-radius:8px;display:flex;overflow:hidden}.seg-btn{font-family:var(--font-title);letter-spacing:.08em;text-transform:capitalize;cursor:pointer;background:#fffaeb80;border:0;border-right:1px solid #a5844c99;flex:1;padding:6px 0;font-size:.74rem;font-weight:700}.seg-btn:last-child{border-right:0}.seg-btn.on{color:#3a2208;background:linear-gradient(#fbe39a,#d9a93f)}.shortcuts{color:var(--ink-soft);flex-wrap:wrap;gap:6px 14px;display:flex}.costs-list{flex-direction:column;gap:6px;margin:4px 0 8px;padding:0;list-style:none;display:flex}.costs-list li{background:#fffaeb73;border:1px solid #6b4d192e;border-radius:8px;grid-template-columns:26px 1fr auto 34px;align-items:center;gap:8px;padding:6px 8px;display:grid}.cost-name{font-weight:600}.cost-vp{font-family:var(--font-title);color:var(--gold-4);text-align:right;font-size:.72rem;font-weight:700}.costs-foot{font-style:italic}.res-list{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.res-chip{align-items:center;gap:1px;display:inline-flex}.res-chip b{font-family:var(--font-title);font-size:.85em}.log-panel{width:304px;color:var(--cream);background:var(--grain), linear-gradient(180deg, #382010e0, #1a0e06eb);pointer-events:auto;border:1px solid #e0b95e59;border-radius:12px;flex-direction:column;display:flex;position:absolute;bottom:12px;left:12px;overflow:hidden;box-shadow:0 8px 22px #00000073}.log-head{border-bottom:1px solid #e0b95e40;align-items:flex-end;gap:2px;padding:6px 6px 0;display:flex}.log-panel.collapsed .log-head{border-bottom:0;padding-bottom:5px}.log-panel.collapsed .tab.on{background:0 0;border-color:#0000}.collapse-btn{width:24px;height:24px;color:var(--gold-1);cursor:pointer;background:#f3e4c01a;border:0;border-radius:50%;place-items:center;margin-bottom:4px;margin-left:auto;display:grid}.collapse-btn .flip{transform:rotate(180deg)}.unread{background:var(--bad);color:#fff;border-radius:9px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.66rem;display:inline-grid}.log-list{flex-direction:column;gap:3px;height:196px;padding:8px 10px;display:flex}.log-entry{align-items:flex-start;gap:7px;font-size:.93rem;line-height:1.3;animation:.3s both fade-up;display:flex}.log-icon{width:17px;height:17px;color:var(--gold-2);background:#f3e4c01a;border-radius:50%;flex:none;place-items:center;margin-top:1px;display:grid}.log-entry.k-robber .log-icon{color:#ff9a7a}.log-entry.k-award .log-icon,.log-entry.k-victory .log-icon{color:#3a2208;background:var(--gold-2)}.log-entry.k-victory{color:var(--gold-1);font-weight:700}.log-entry.k-system{color:#f3e4c0a6;font-style:italic}.log-text{overflow-wrap:anywhere;min-width:0}.log-chat{flex-direction:column;gap:6px;height:266px;padding:8px 10px;display:flex}.log-chat .chat-list{min-height:0}.log-chat .text-input{background:#fff5dce6}.hand-wrap{pointer-events:none;flex-direction:column;align-items:center;min-width:300px;max-width:calc(100vw - 700px);display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.hand-label{font-family:var(--font-title);letter-spacing:.14em;text-transform:uppercase;color:#f3e4c0d9;text-shadow:0 1px 4px #000,0 0 10px #000c;align-items:baseline;gap:10px;margin-bottom:2px;font-size:.72rem;font-weight:600;display:flex}.hand-warn{color:#ffab8f;font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:.9rem;font-style:italic}.hand{align-items:flex-end;gap:calc(var(--card-w) * .3);padding:0 12px;display:flex}.fan{align-items:flex-end;padding-top:26px;display:flex}.hand-empty{color:#f3e4c0b3;background:#140b058c;border-radius:16px;margin-bottom:26px;padding:8px 16px;font-style:italic}.hand-card{width:var(--card-w);height:calc(var(--card-w) * 1.4);margin-left:calc(var(--card-w) * -.22);transform:translateY(calc(var(--lift) + var(--card-w) * .1)) rotate(var(--rot));transform-origin:50% 130%;filter:drop-shadow(0 8px 10px #00000080);pointer-events:auto;cursor:pointer;flex:none;transition:transform .25s cubic-bezier(.2,.8,.2,1),filter .25s;animation:.45s cubic-bezier(.2,.9,.3,1.1) backwards deal-in;position:relative}.hand-card:first-child{margin-left:0}.hand-card:hover{transform:translateY(calc(var(--card-w) * -.16)) rotate(0deg) scale(1.1);filter:drop-shadow(0 14px 16px #0000008c);z-index:100!important}.hand-card.gone{opacity:0;transform:translateY(40px) rotate(var(--rot)) scale(.8);pointer-events:none;transition:opacity 1.2s .3s,transform 1.2s .3s}.card-svg{z-index:1;width:100%;height:100%;display:block;position:relative}.stack-layer{border-radius:calc(var(--card-w) * .075);background:linear-gradient(160deg,#efe0bb,#d4ba84);border:1.5px solid #6b4a24;position:absolute;inset:0}.stack-layer.l1{transform:translate(3px,-3px)rotate(2.5deg)}.stack-layer.l2{transform:translate(6px,-6px)rotate(5deg)}.count-badge{z-index:3;min-width:26px;height:26px;font-family:var(--font-title);color:#3a2208;background:radial-gradient(circle at 35% 30%,#fff6d6,#e0b24a 60%,#9c6c1c);border:1.5px solid #4f3208;border-radius:13px;place-items:center;padding:0 6px;font-size:.95rem;font-weight:800;display:grid;position:absolute;top:-9px;right:-8px;box-shadow:0 3px 6px #00000073}.count-badge.dev{color:#f3dca0;background:radial-gradient(circle at 35% 30%,#9a74c4,#4d2f6b 70%);border-color:#1e0f2c}.delta{z-index:4;font-family:var(--font-title);pointer-events:none;text-shadow:0 2px #000,0 0 10px #0009;font-size:1.5rem;font-weight:800;animation:1.4s ease-out forwards float-up;position:absolute;top:18%;left:50%;transform:translate(-50%)}.delta.up{color:#b9f58f}.delta.down{color:#ff8a73}.gain-glow{z-index:2;pointer-events:none;border-radius:10px;animation:1.2s ease-out forwards glow-once;position:absolute;inset:-4px}.gain-glow.up{box-shadow:0 0 0 3px #b9f58fe6,0 0 24px #b9f58fcc}.gain-glow.down{box-shadow:0 0 0 3px #ff8a73e6,0 0 24px #ff5a3cb3}.dev-fan{padding-left:6px}.hand-card.dev{--card-w:clamp(58px, 5.4vw, 84px)}.hand-card.dev.playable:before{content:"";z-index:0;border-radius:10px;animation:1.8s ease-in-out infinite breathe;position:absolute;inset:-3px;box-shadow:0 0 0 2px #e8c46a,0 0 18px 4px #c9a2ffbf}.new-tag,.play-tag{z-index:3;font-family:var(--font-title);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;border-radius:8px;padding:0 7px;font-size:.58rem;font-weight:800;line-height:1.7;position:absolute;left:50%;transform:translate(-50%)}.new-tag{color:#fff;background:var(--good);top:-8px;box-shadow:0 2px 4px #0006}.play-tag{color:#3a2208;background:linear-gradient(#fbe39a,#d9a93f);top:-8px;box-shadow:0 2px 8px #00000080}.spectating{color:var(--ink);pointer-events:auto;margin-bottom:18px}.action-bar{width:336px;color:var(--cream);background:var(--grain), linear-gradient(180deg, #402512e6, #1c1007f0);pointer-events:auto;border:1px solid #e0b95e66;border-radius:14px;flex-direction:column;gap:8px;padding:10px;animation:.5s cubic-bezier(.2,.8,.2,1) both slide-up;display:flex;position:absolute;bottom:12px;right:12px;box-shadow:0 10px 26px #00000080}.action-bar.waiting .build-row{opacity:.8}.roll-btn{color:#3a2208;height:58px;font-family:var(--font-title);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#fde9a8 0%,#e3b24a 52%,#b8862a 100%);border:1px solid #7a5415;border-radius:10px;justify-content:center;align-items:center;gap:12px;font-size:1.15rem;font-weight:800;transition:transform .12s,filter .15s,box-shadow .12s;display:flex;box-shadow:inset 0 1px #ffffffb3,0 4px #6b4a14,0 8px 18px #0006}.roll-btn.ready{position:relative}.roll-btn.ready:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;animation:1.6s ease-in-out infinite glow-fade;position:absolute;inset:0;box-shadow:0 0 28px #fbe39abf}.roll-btn.ready .roll-dice{animation:1.6s ease-in-out infinite dice-wiggle}.roll-btn:not(:disabled):hover{filter:brightness(1.08);transform:translateY(-1px)}.roll-btn:not(:disabled):active{transform:translateY(3px);box-shadow:inset 0 1px #ffffff80,0 1px #6b4a14,0 3px 8px #0006}.roll-btn:disabled{opacity:.55;cursor:wait}.roll-dice{place-items:center;display:grid}.roll-label kbd{font-size:.6em}.build-row{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.build-row.seafarers{grid-template-columns:repeat(3,1fr)}.build-row.seafarers .build-btn{height:58px}.build-row.seafarers .build-btn-wrap:nth-child(3n+1) .tooltip{left:0;transform:none}.build-row.seafarers .build-btn-wrap:nth-child(3n+1) .tooltip:after{left:36px}.build-row.seafarers .build-btn-wrap:nth-child(3n) .tooltip{left:auto;right:0;transform:none}.build-row.seafarers .build-btn-wrap:nth-child(3n) .tooltip:after{left:auto;right:30px}.build-btn-wrap{position:relative}.build-btn{width:100%;height:70px;color:var(--cream);cursor:pointer;background:linear-gradient(#fff0c81a,#fff0c808);border:1px solid #e0b95e4d;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:4px 2px;transition:transform .12s,background .15s,border-color .15s,box-shadow .15s;display:flex;position:relative}.build-btn .build-name{font-family:var(--font-title);letter-spacing:.06em;white-space:nowrap;font-size:.64rem;font-weight:700}.build-btn .build-left{font-family:var(--font-title);color:#f3e4c08c;font-size:.62rem;font-weight:700;position:absolute;top:3px;right:5px}.build-btn.affordable{border-color:#e0b95e99}.build-btn:not(:disabled):hover{background:linear-gradient(#fff0c833,#fff0c80f);transform:translateY(-2px);box-shadow:0 0 14px #e0b95e4d}.build-btn.is-active{border-color:var(--gold-1);box-shadow:0 0 0 1px var(--gold-2), 0 0 20px #fbe39a8c;background:linear-gradient(#fbe39a59,#e0b24a2e);animation:1.4s ease-in-out infinite breathe}.build-btn:disabled{cursor:not-allowed;opacity:.38;filter:grayscale(.6)}.tooltip{z-index:10;width:180px;color:var(--ink);pointer-events:none;transform-origin:bottom;background:linear-gradient(#fbf3dc,#e8d4a6);border:1px solid #a5844c;border-radius:9px;padding:9px 12px;animation:.16s both pop-in;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 8px 20px #00000073}.tooltip:after{content:"";border:7px solid #0000;border-top-color:#e8d4a6;margin-left:-7px;position:absolute;top:100%;left:50%}.build-row .build-btn-wrap:first-child .tooltip{left:0;transform:none}.build-row .build-btn-wrap:first-child .tooltip:after{left:36px}.build-row .build-btn-wrap:last-child .tooltip{left:auto;right:0;transform:none}.build-row .build-btn-wrap:last-child .tooltip:after{left:auto;right:30px}.tip-title{font-family:var(--font-title);letter-spacing:.06em;font-size:.85rem;font-weight:800}.tip-cost{margin:5px 0}.tip-note{color:var(--ink-soft);font-size:.88rem;font-style:italic}.tip-left{color:var(--ink-faint);font-size:.82rem}.tip-reason{color:var(--bad);margin-top:4px;font-size:.84rem;font-weight:600}.turn-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.turn-row .btn{width:100%}.turn-row kbd{font-size:.62em}.trade-panel{pointer-events:auto;z-index:30;transform-origin:100% 100%;flex-direction:column;width:360px;max-height:calc(100% - 290px);padding:12px 16px 14px;animation:.25s cubic-bezier(.2,1,.4,1) both pop-in;display:flex;position:absolute;bottom:170px;right:12px;overflow:hidden}.panel-head{border-bottom:1px solid #6b4d194d;flex:none;justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.panel-head .tab{color:var(--ink)}.panel-head .tab.on{background:#fffaeb8c}.trade-body{flex-direction:column;gap:6px;min-height:0;margin-right:-8px;padding-right:8px;display:flex;overflow-y:auto}.trade-label{font-family:var(--font-title);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);margin-top:4px;font-size:.66rem;font-weight:700}.res-picker{grid-template-columns:repeat(5,1fr);gap:5px;display:grid}.res-pick{cursor:pointer;background:#fffaeb80;border:1px solid #6b4d1947;border-radius:9px;flex-direction:column;align-items:center;gap:2px;padding:7px 2px 5px;transition:transform .12s,box-shadow .15s,background .15s;display:flex}.res-pick:not(:disabled):hover{background:#fffaebd9;transform:translateY(-2px)}.res-pick.on{border-color:var(--gold-3);box-shadow:0 0 0 2px var(--gold-2), 0 4px 10px #6b4d194d;background:linear-gradient(#fff4cf,#efd68f)}.res-pick:disabled{opacity:.35;cursor:not-allowed}.ratio{font-family:var(--font-title);font-size:.8rem;font-weight:800}.ratio.r2{color:var(--good)}.ratio.r3{color:#8a6a14}.have{color:var(--ink-faint);font-size:.74rem}.trade-summary{border-top:1px solid #6b4d1938;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;padding-top:8px;display:flex}.trade-summary>span{align-items:center;gap:4px;display:inline-flex}.trade-summary.end{border-top:none;justify-content:flex-end;margin-top:2px;padding-top:0}.trade-foot{flex:none}.trade-hint{border-top:1px solid #6b4d1938;margin-top:6px;padding-top:8px}.harbors{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.harbor-chip{font-family:var(--font-title);color:#1f4796;background:#2f5fb324;border:1px solid #2f5fb359;border-radius:10px;align-items:center;gap:3px;padding:1px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.trade-cols{grid-template-columns:1fr 1fr;gap:10px;display:grid}.counters{flex-direction:column;gap:3px;display:flex}.counter{border:1px solid #0000;border-radius:8px;grid-template-columns:30px 1fr auto;align-items:center;gap:6px;padding:3px 5px;transition:background .15s;display:grid}.counter.has-value{background:#e0b95e38;border-color:#a97c2e59}.counter-label{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;overflow:hidden}.counter-sub,.trade-cols .counter-label{display:none}.trade-cols .counter{grid-template-columns:30px 1fr}.trade-cols .counter .counter-ctl{justify-self:end}.counter-ctl{align-items:center;gap:4px;display:flex}.counter-ctl button{width:22px;height:22px;color:var(--ink);cursor:pointer;background:linear-gradient(#fbf3de,#e2cc98);border:1px solid #8d6d3a;border-radius:50%;place-items:center;display:grid}.counter-ctl button:hover:not(:disabled){background:linear-gradient(#fff8e6,#efd9a6)}.counter-ctl button:disabled{opacity:.3;cursor:not-allowed}.counter-val{text-align:center;min-width:18px;font-family:var(--font-title);font-size:1rem;font-weight:800}.target-row{flex-wrap:wrap;gap:6px;display:flex}.target{cursor:pointer;opacity:.55;background:#fffaeb66;border:1px solid #6b4d194d;border-radius:16px;align-items:center;gap:5px;padding:3px 10px 3px 5px;font-weight:600;transition:opacity .15s,box-shadow .15s;display:inline-flex}.target.on{opacity:1;box-shadow:0 0 0 2px var(--pc);background:#fffaebd9}.target-row.to-all .target{opacity:1}.target.everyone{--pc:var(--gold-3);padding-left:8px}.target-crests{display:inline-flex}.target-crests>*+*{margin-left:-7px}.open-offers{flex-direction:column;flex:none;gap:6px;display:flex}.open-offers-head{justify-content:space-between;align-items:center;display:flex}.open-offers-list{flex-direction:column;gap:6px;max-height:min(260px,32vh);margin-right:-4px;padding-right:4px;display:flex;overflow-y:auto}.open-offer{border:1px dashed var(--gold-3);background:#fffaeb8c;border-radius:10px;padding:8px 10px}.open-offer-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.offer-line{flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0;display:flex}.trade-col-head{justify-content:space-between;align-items:center;gap:6px;display:flex}.any-toggle{width:24px;height:24px;color:var(--ink-soft);font-family:var(--font-title);letter-spacing:0;cursor:pointer;background:#fffaeb99;border:1px solid #6b4d1966;border-radius:50%;place-items:center;font-size:.9rem;font-weight:800;display:grid}.any-toggle.on{background:var(--gold-2);border-color:var(--gold-4);color:#3a2410;box-shadow:0 0 0 2px #e0b95e73}.any-side{border:1px dashed var(--gold-3);text-align:center;background:#fffaeb73;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:150px;padding:10px;display:flex}.any-side-q{font-family:var(--font-deco);color:var(--gold-4);font-size:2.6rem;font-weight:700;line-height:1}.any-side-chip{align-items:center;gap:6px;display:inline-flex}.any-q{width:var(--s,18px);height:var(--s,18px);border:1px solid var(--gold-4);color:#4a2e10;font-family:var(--font-title);font-weight:800;font-size:calc(var(--s,18px) * .62);background:radial-gradient(circle at 35% 30%,#fff3cf,#e7c36b);border-radius:50%;place-items:center;line-height:1;display:inline-grid}.any-note{color:var(--ink-faint);font-size:.85rem;font-style:italic}.resp-terms{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.resp-actions{flex:none;gap:4px;margin-left:auto;display:inline-flex}.your-counter{border-top:1px dashed #6b4d194d;padding-top:4px}.your-counter.declined{opacity:.6;-webkit-text-decoration:line-through #6b4d1980;text-decoration:line-through #6b4d1980}.counter-editor{flex-direction:column;gap:6px;margin-top:4px;display:flex}.counter-editor-row{flex-direction:column;gap:3px;display:flex}.mini-counters{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.mini-counter{background:#fffaeb80;border:1px solid #6b4d1933;border-radius:8px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:4px 1px;display:flex}.mini-counter.has-value{background:#e0b95e40;border-color:#a97c2e66}.mini-ctl{align-items:center;gap:1px;display:flex}.mini-ctl button{width:18px;height:18px;color:var(--ink);cursor:pointer;background:#fffaebcc;border:1px solid #6b4d1959;border-radius:50%;place-items:center;padding:0;display:grid}.mini-ctl button:disabled{opacity:.3;cursor:not-allowed}.mini-val{text-align:center;min-width:12px;font-family:var(--font-title);font-size:.9rem;font-weight:800}.table-offer-counters{border-top:1px dashed #6b4d194d;flex-direction:column;gap:4px;margin-top:8px;padding-top:6px;display:flex}.table-offer-counter{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pp-resp.countered{color:#fbe3a6;background:#e0b95e52}.trade-btn{position:relative}.queue-count{background:var(--gold-2);border:1px solid var(--gold-4);color:#3a2410;min-width:19px;height:19px;font-family:var(--font-title);border-radius:10px;place-items:center;padding:0 5px;font-size:.7rem;font-weight:800;display:grid;position:absolute;top:-7px;right:-7px;box-shadow:0 1px 3px #00000073}.open-offer.queued{background:#fffaeb66;border-style:dotted}.queued-meta{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.queued-ready{color:var(--good);align-items:center;gap:3px;font-style:normal;display:inline-flex}.queued-short{color:var(--bad);align-items:center;gap:4px;font-style:normal;display:inline-flex}.responses{flex-direction:column;gap:4px;margin:4px 0 0;padding:0;list-style:none;display:flex}.resp{align-items:center;gap:6px;min-width:0;font-size:.95rem;display:flex}.resp .pname{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.resp .resp-state,.resp .btn{flex:none}.resp-state{font-family:var(--font-title);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:3px;font-size:.62rem;font-weight:700;display:inline-flex}.resp.accepted .resp-state{color:var(--good)}.resp.declined .resp-state{color:var(--bad)}.resp .btn{margin-left:auto}.resp.countered{flex-wrap:wrap}.resp.countered .resp-state{color:var(--gold-4)}.resp.countered .resp-terms{flex-basis:100%;order:3;padding-left:26px}.resp-actions .btn{margin-left:0}.incoming-offers{pointer-events:auto;flex-direction:column;gap:10px;width:310px;max-height:calc(100% - 300px);padding:4px 4px 4px 6px;display:flex;position:absolute;top:104px;right:12px;overflow-y:auto}.incoming-offer{border-color:var(--wood-2);flex:none;padding:12px 14px;animation:.45s cubic-bezier(.2,1,.3,1) both slide-left;position:relative}.incoming-count{font-family:var(--font-title);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:.62rem;font-weight:700}.incoming-offer:before{content:"";background:var(--pc);border-radius:6px 0 0 6px;width:6px;position:absolute;top:-4px;bottom:-4px;left:-4px}.incoming-head{align-items:center;gap:10px;display:flex}.incoming-title{font-weight:600}.incoming-lines{background:#fffaeb8c;border-radius:8px;margin:8px 0;padding:6px 8px}.incoming-actions{flex-wrap:wrap;gap:8px;display:flex}.incoming-actions .btn{flex:auto;padding-inline:8px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:auto;background:radial-gradient(#140a0459,#0a0502b3);place-items:center;padding:20px;animation:.25s both fade-in;display:grid;position:fixed;inset:0}.modal{width:min(600px,94vw);max-height:calc(100vh - 40px);padding:20px 24px 22px;animation:.35s cubic-bezier(.2,1,.3,1) both modal-in;overflow:auto}.modal.framed{border-width:4px}.modal-head{text-align:center;margin-bottom:14px;padding:0 30px;position:relative}.modal-head h2{font-size:1.6rem}.modal-sub{color:var(--ink-soft);margin-top:4px;font-size:1.05rem;font-style:italic}.modal-head .modal-x{position:absolute;top:0;right:0}.modal-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.counters.wide{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.peek-row{justify-content:center;margin:-4px 0 12px;display:flex}.peek-btn{color:var(--ink-soft);font-family:var(--font-title);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;background:#fffaeb59;border:1px dashed #5d44298c;border-radius:999px;align-items:center;gap:7px;padding:7px 14px;font-size:.78rem;font-weight:600;display:inline-flex}.peek-btn:hover{color:var(--ink);background:#fffaeb99;border-style:solid}.peek-btn.held{border:1px solid var(--gold-2);background:linear-gradient(var(--wood-1), var(--wood-2));color:var(--cream);box-shadow:var(--shadow);padding:9px}.peek-btn.held .peek-label{display:none}.modal-backdrop.peeking{-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0}.modal-backdrop.peeking .modal{visibility:hidden}.modal-backdrop.peeking .peek-btn{visibility:visible;pointer-events:auto}.couch-hand.peeking .board-dock{display:none}.counters.wide .counter{background:#fffaeb73;border-color:#6b4d1933;grid-template-columns:1fr;justify-items:center;gap:4px;padding:10px 4px}.counters.wide .counter.has-value{background:#b8392c1f;border-color:#b8392c66}.counters.wide .counter-sub{color:var(--ink-faint);font-size:.8rem;display:block}.progress-pips{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.progress-pips span:not(.muted){border:1px solid var(--bad);border-radius:50%;width:12px;height:12px}.progress-pips span.on{background:var(--bad)}.progress-pips.done span.on{background:var(--good);border-color:var(--good)}.steal-list{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.steal-target{border:1px solid #6b4d194d;border-top:5px solid var(--pc);cursor:pointer;background:#fffaeb8c;border-radius:12px;flex-direction:column;align-items:center;gap:4px;width:150px;padding:14px 10px;transition:transform .15s,box-shadow .15s;display:flex}.steal-target:hover:not(:disabled){box-shadow:0 8px 18px #6b4d1959, 0 0 0 2px var(--pc);transform:translateY(-4px)}.steal-name{font-size:1.1rem}.steal-cards{height:22px;margin-top:2px;display:flex}.steal-cards .mini-card{width:15px;height:21px;margin-left:-5px}.steal-cards .mini-card:first-child{margin-left:0}.big-picks{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.big-pick{cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:5px;padding:6px;transition:transform .15s;display:flex}.big-pick .card-svg{filter:drop-shadow(0 5px 8px #00000059);width:100%;height:auto}.big-pick:hover:not(:disabled){transform:translateY(-5px)scale(1.04)}.big-pick:disabled{opacity:.35;cursor:not-allowed}.slots{gap:10px;display:flex}.slot{cursor:pointer;background:#fffaeb66;border:2px dashed #6b4d1973;border-radius:10px;place-items:center;width:52px;height:52px;display:grid}.slot.full{border-style:solid;border-color:var(--gold-3);background:#fff6d7e6}.dev-detail{width:min(560px,94vw)}.dev-detail-body{align-items:center;gap:22px;display:flex}.dev-detail-card{filter:drop-shadow(0 12px 18px #00000073);flex:none;width:190px;animation:.6s cubic-bezier(.2,.9,.3,1) both card-flip-in}.dev-detail-card .card-svg{height:auto}.dev-text{margin:0 0 10px;font-size:1.2rem;line-height:1.4}.dev-note{color:var(--bad);font-style:italic}.gameover-backdrop{background:radial-gradient(#28180866,#080401d1)}.gameover{flex-direction:column;width:min(780px,96vw);max-height:calc(100dvh - 32px);animation:.7s cubic-bezier(.2,1,.3,1) both modal-in;display:flex;overflow:hidden}.go-hero{color:var(--cream);background:radial-gradient(ellipse 60% 120% at 50% 110%, #ffd6802e, transparent 70%), radial-gradient(ellipse 45% 110% at 30% 50%, color-mix(in srgb, var(--pc) 34%, #3b2111), transparent 80%), linear-gradient(180deg, #2c180b, #1a0e06);border-radius:8px 8px 0 0;flex:none;justify-content:center;align-items:center;gap:26px;padding:20px 28px 18px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 -1px #e0b95e8c,inset 0 -10px 24px #00000059}.go-rays{pointer-events:none;background:repeating-conic-gradient(#ffe09626 0deg 5deg,#0000 5deg 15deg);width:760px;height:760px;margin:-380px 0 0 -380px;animation:120s linear infinite spin-hex;position:absolute;top:50%;left:calc(50% - 150px);-webkit-mask-image:radial-gradient(circle,#000 0%,#0009 18%,#0000 52%);mask-image:radial-gradient(circle,#000 0%,#0009 18%,#0000 52%)}.go-dust{pointer-events:none;position:absolute;inset:0}.go-dust i{width:var(--sz);height:var(--sz);opacity:0;background:#ffe7a3;border-radius:50%;animation:linear infinite go-mote;position:absolute;bottom:-8px;box-shadow:0 0 6px 1px #ffce6ecc}@keyframes go-mote{0%{opacity:0;transform:translate(0)}15%{opacity:.9}80%{opacity:.6}to{opacity:0;transform:translate(var(--dx), -190px)}}.go-medal{flex:none;width:124px;height:124px;animation:.9s cubic-bezier(.2,1.3,.4,1) .15s both go-medal-in;position:relative}.go-laurel{filter:drop-shadow(0 2px 3px #0009);width:100%;height:100%;position:absolute;inset:0}.go-medal-crest{filter:drop-shadow(0 0 14px color-mix(in srgb, var(--pc) 55%, transparent)) drop-shadow(0 4px 6px #0000008c);position:absolute;top:48%;left:50%;translate:-50% -50%}.go-medal-crest svg{display:block}.go-ribbon{font-family:var(--font-title);letter-spacing:.08em;white-space:nowrap;color:#fbe6a6;clip-path:polygon(0 0,100% 0,92% 50%,100% 100%,0 100%,8% 50%);filter:drop-shadow(0 2px 2px #00000080);background:linear-gradient(#c2402f,#7e1b14);padding:2px 16px 3px;font-size:.8rem;font-weight:800;position:absolute;bottom:2px;left:50%;translate:-50%}.go-ribbon span{text-shadow:0 1px #00000080}@keyframes go-medal-in{0%{opacity:0;transform:scale(.6)rotate(-8deg)}to{opacity:1;transform:none}}.go-hero-text{text-align:left;min-width:0;position:relative}.go-hero .eyebrow{color:var(--gold-2)}.go-title{margin:4px 0 6px;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.1;animation:.9s .25s both title-in}.go-sub{color:#f3e4c0d9;font-size:1.1rem;font-style:italic}.go-facts{flex:none;justify-content:center;gap:8px;padding:14px 22px 4px;display:flex}.go-fact{background:#fffaeb80;border:1px solid #6b4d1938;border-radius:9px;flex:1;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;max-width:150px;padding:7px 12px;animation:.5s both fade-up;display:grid}.go-fact:nth-child(2){animation-delay:60ms}.go-fact:nth-child(3){animation-delay:.12s}.go-fact:nth-child(4){animation-delay:.18s}.go-fact-icon{width:30px;height:30px;color:var(--gold-4);background:#e0b95e47;border-radius:50%;grid-row:span 2;place-items:center;display:grid}.go-fact b{font-family:var(--font-title);white-space:nowrap;font-size:1.2rem;font-weight:800;line-height:1.1}.go-fact-label{font-family:var(--font-title);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);font-size:.64rem;font-weight:700}.go-seven{font-family:var(--font-title);color:var(--bad);font-size:1rem;font-weight:800}.go-tabs{border-bottom:1px solid #a97c2e73;flex:none;gap:4px;padding:10px 22px 0;display:flex}.go-tab{font-family:var(--font-title);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px 8px 0 0;align-items:center;gap:6px;margin-bottom:-1px;padding:7px 14px;font-size:.76rem;font-weight:700;display:inline-flex}.go-tab:hover{color:var(--ink)}.go-tab.on{color:var(--ink);border-color:#a97c2e73;border-bottom-color:var(--parch-1);background:linear-gradient(180deg, #fffaebcc, var(--parch-1))}.go-body{overscroll-behavior:contain;flex:1;min-height:0;padding:14px 22px;overflow:auto}.go-note{color:var(--ink-faint);text-align:center;margin:12px 0 0;font-size:.92rem;font-style:italic}.go-none{color:var(--ink-faint);margin:0;font-style:italic}.go-players{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.go-highlights{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:6px;margin:0 0 10px;padding:0;list-style:none;display:grid}.go-highlight{border:1px solid #6b4d192e;border-left:3px solid var(--pc);background:#fffaeb8c;border-radius:9px;align-items:center;gap:9px;min-width:0;padding:6px 10px;animation:.5s both fade-up;display:flex}.go-highlight-icon{width:28px;height:28px;color:var(--gold-4);background:#e0b95e47;border-radius:50%;flex:none;place-items:center;display:grid}.go-highlight-icon .go-seven{font-size:.95rem}.go-highlight-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.go-highlight-title{font-family:var(--font-title);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.62rem;font-weight:700}.go-highlight-who{overflow-wrap:anywhere;font-weight:600}.go-highlight-who small{color:var(--ink-soft);font-weight:400}.go-player{border:1px solid #6b4d1938;border-left:5px solid var(--pc);background:#fffaeb73;border-radius:10px;padding:10px 14px 12px;animation:.5s both fade-up}.go-player:nth-child(2){animation-delay:80ms}.go-player:nth-child(3){animation-delay:.16s}.go-player:nth-child(4){animation-delay:.24s}.go-player.winner{box-shadow:0 0 0 1px var(--gold-2), 0 6px 16px #6b4d1938;background:linear-gradient(100deg,#fbe39ab3,#fffaeb80 60%)}.go-player-head{align-items:center;gap:10px;display:flex}.go-place{width:34px;font-family:var(--font-title);color:var(--ink-faint);flex:none;font-size:1rem;font-weight:800}.go-player.winner .go-place{color:var(--gold-4)}.go-player-head>svg{flex:none}.go-player-name{align-items:center;gap:7px;min-width:0;font-size:1.2rem;display:flex}.go-player-name .pname{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.go-you{font-family:var(--font-title);letter-spacing:.12em;text-transform:uppercase;color:var(--cream);background:var(--wood-1);border-radius:5px;padding:0 6px;font-size:.6rem;font-weight:700}.go-bot{color:var(--ink-faint);display:inline-grid}.go-crown{color:var(--gold-3);display:inline-grid}.go-player-vp{font-family:var(--font-title);white-space:nowrap;margin-left:auto;font-weight:800}.go-player-vp b{font-size:1.6rem}.go-player-vp small{color:var(--ink-faint);font-size:.8rem}.go-player-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;margin-top:8px;padding-left:44px;display:grid}.go-player-body h4{font-family:var(--font-title);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 5px;font-size:.64rem;font-weight:700}.go-play h4:not(:first-child){margin-top:10px}.go-rows{gap:3px;margin:0;padding:0;list-style:none;display:grid}.go-rows li{grid-template-columns:20px 1fr auto 22px;align-items:center;gap:7px;font-size:1rem;display:grid}.go-rows li.secret{color:#6d4a0e;background:#d9a93f42;border-radius:6px;margin:1px -6px;padding:2px 6px;box-shadow:inset 0 0 0 1px #a97c2e66}.go-row-icon{place-items:center;display:grid}.go-row-icon .pp-badge{width:17px;height:17px}.go-row-label{min-width:0;line-height:1.15}.go-row-label small{color:var(--ink-faint);white-space:nowrap;font-size:.85rem}.go-row-label small:before{content:"· "}.go-row-label .go-reveal{color:#8a5f18;font-style:italic;display:block}.go-row-label .go-reveal:before{content:""}.go-row-count{color:var(--ink-faint);font-size:.85rem}.go-row-points{text-align:right;font-family:var(--font-title);font-weight:800}.go-split{color:var(--ink-soft);border-top:1px dashed #6b4d1966;align-items:center;gap:6px;margin-top:7px;padding-top:6px;font-size:.92rem;display:flex}.go-split b{font-family:var(--font-title);color:var(--ink);font-weight:800}.go-split .plus{color:var(--ink-faint)}.go-split .secret{color:#8a5f18;align-items:center;gap:3px;display:inline-flex}.go-split .secret b{color:#6d4a0e}.go-cards{gap:5px;display:grid}.go-card-group{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.go-card-label{width:66px;color:var(--ink-faint);font-size:.85rem}.go-card{background:#4d2f6b1a;border:1px solid #4d2f6b40;border-radius:999px;align-items:center;gap:4px;padding:1px 8px 1px 2px;font-size:.9rem;display:inline-flex}.go-card b{font-family:var(--font-title);font-size:.8rem}.go-card-group.faded .go-card{color:var(--ink-soft);background:0 0;border-style:dashed}.go-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0;display:grid}.go-stats>div{text-align:center;background:#fffaeb8c;border:1px solid #6b4d1929;border-radius:7px;padding:4px 4px 3px}.go-stats dd{font-family:var(--font-title);margin:0;font-size:1.05rem;font-weight:800;line-height:1.15}.go-stats dt{color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;line-height:1.1;overflow:hidden}.go-stats>div.zero dd{color:var(--ink-faint);font-weight:600}.go-dice{padding:4px 4px 0}.go-chart{grid-template-columns:repeat(11,minmax(0,1fr));gap:8px;height:240px;padding-top:20px;display:grid}.go-bar{flex-direction:column;gap:5px;min-width:0;display:flex}.go-bar-track{border-bottom:2px solid #6b4d1973;flex:1;position:relative}.go-bar-fill{z-index:1;transform-origin:bottom;min-height:2px;animation:go-grow .7s cubic-bezier(.2, 1, .3, 1) var(--d) both;background:linear-gradient(#d9b25a,#9c7228);border-radius:6px 6px 0 0;position:absolute;bottom:0;left:12%;right:12%;box-shadow:inset 0 1px #fff6}.go-bar-count{text-align:center;font-family:var(--font-title);font-size:.85rem;font-weight:800;line-height:1;position:absolute;left:0;right:0}.go-bar-fill .go-bar-count{color:#fff8e4;text-shadow:0 1px 1px #3c230599;top:5px}.go-bar-count.above{margin-bottom:5px}.go-bar.seven .go-bar-fill{background:linear-gradient(#d0553f,#8e2419)}.go-bar.seven .go-bar-count.above,.go-bar.seven .go-bar-num{color:var(--bad)}.go-bar-expect{border-top:2px dashed #2b1a0c99;height:0;position:absolute;left:0;right:0}.go-bar-num{text-align:center;font-family:var(--font-title);font-size:.95rem;font-weight:800}@keyframes go-grow{0%{transform:scaleY(0)}}.go-dice-legend{color:var(--ink-soft);flex-wrap:wrap;justify-content:center;gap:6px 20px;margin-top:12px;display:flex}.go-dice-legend b{font-family:var(--font-title);color:var(--ink)}.go-expect-key{vertical-align:middle;border-top:2px dashed #2b1a0c8c;width:18px;display:inline-block}.go-foot{background:#fffaeb40;border-top:1px solid #a97c2e73;flex-wrap:wrap;flex:none;justify-content:center;align-items:center;gap:10px;padding:12px 22px 16px;display:flex}@media (width<=640px){.gameover-backdrop{padding:10px}.gameover{width:100%;max-height:calc(100dvh - 20px)}.go-hero{justify-content:flex-start;gap:12px;padding:14px 16px 12px}.go-rays{left:60px}.go-medal{width:84px;height:84px}.go-medal-crest svg{width:42px;height:46px}.go-ribbon{padding:1px 11px 2px;font-size:.66rem;bottom:0}.go-hero .eyebrow{letter-spacing:.2em;font-size:.6rem}.go-title{margin:2px 0 3px;font-size:1.35rem}.go-sub{font-size:.95rem}.go-facts{gap:5px;padding:10px 12px 0}.go-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.go-fact{text-align:center;grid-template-columns:1fr;padding:5px 4px}.go-fact-icon{display:none}.go-fact b{font-size:1.05rem}.go-fact-label{letter-spacing:.12em;font-size:.56rem}.go-tabs{padding:8px 12px 0}.go-body{padding:10px 12px}.go-player{padding:9px 11px 11px}.go-player-body{grid-template-columns:1fr;gap:10px;padding-left:0}.go-place{width:auto}.go-stats{gap:4px}.go-stats dt{white-space:normal;font-size:.68rem}.go-chart{gap:4px;height:200px}.go-bar-count{font-size:.72rem}.go-foot{gap:6px;padding:8px 10px 10px}.go-foot .btn{letter-spacing:.02em;padding:7px 8px;font-size:.74rem}.go-foot .btn svg{display:none}.go-wait{text-align:center;flex-basis:100%;order:-1}}.show-results{pointer-events:auto;align-self:center;margin-top:4px}.banner{z-index:45;pointer-events:none;animation:banner-in .45s cubic-bezier(.2, .9, .3, 1.1) both, banner-out .55s ease-in calc(var(--dur,2.4s) - .55s) forwards;background:linear-gradient(90deg,#0000,#100803c7 22% 78%,#0000);justify-content:center;align-items:center;gap:26px;padding:22px 0 18px;display:flex;position:fixed;top:30%;left:0;right:0}.banner:before,.banner:after{content:"";background:linear-gradient(90deg, transparent, var(--gold-2), transparent);height:1px;position:absolute;left:18%;right:18%}.banner:before{top:0}.banner:after{bottom:0}.banner-art{filter:drop-shadow(0 10px 18px #0009);width:92px;animation:.7s cubic-bezier(.2,.9,.3,1) both card-flip-in}.banner-art .card-svg,.banner-art svg{width:100%;height:auto;display:block}.banner-text{text-align:center}.banner-sub{font-family:var(--font-title);letter-spacing:.4em;text-transform:uppercase;color:var(--cream);text-shadow:0 2px 6px #000;font-size:.9rem;font-weight:600}.banner-title{font-family:var(--font-deco);letter-spacing:.06em;background:linear-gradient(#fff7d4 0%,#f3d37c 30%,#c9952f 52%,#8a5c16 60%,#e6c065 80%,#fff1bb 100%);color:#0000;filter:drop-shadow(0 2px #2a1606)drop-shadow(0 6px 16px #000000b3);-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,6vw,74px);font-weight:700;line-height:1.1}.banner-red .banner-title{background-image:linear-gradient(#ffe0d4 0%,#ff8a6a 30%,#c8372d 55%,#7a140c 62%,#e8664a 82%,#ffd2c2 100%)}.banner-red:before,.banner-red:after{background:linear-gradient(90deg,#0000,#e2574c,#0000)}.banner-purple .banner-title{background-image:linear-gradient(#f3e6ff 0%,#c9a6f2 30%,#7a52a0 55%,#3e2154 62%,#b08ad6 82%,#f1e4ff 100%)}.banner-purple:before,.banner-purple:after{background:linear-gradient(90deg,#0000,#b08ad6,#0000)}.banner-green .banner-title{background-image:linear-gradient(#eaffd8 0%,#a7dc7c 30%,#4f8a3a 55%,#24461a 62%,#8cc063 82%,#e6ffd2 100%)}.banner-rule{background:radial-gradient(circle, var(--gold-1) 0 3px, transparent 4px) center/8px 8px no-repeat, linear-gradient(90deg, transparent, var(--gold-2), transparent) center/100% 1px no-repeat;width:220px;height:8px;margin:8px auto 0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes title-in{0%{opacity:0;letter-spacing:.3em;filter:blur(8px)drop-shadow(0 2px #3b220a);transform:translateY(-24px)scale(1.08)}60%{opacity:1;filter:blur()drop-shadow(0 2px #3b220a)drop-shadow(0 4px #24140a)drop-shadow(0 10px 22px #000000b3)}to{opacity:1;letter-spacing:.08em;transform:none}}@keyframes shine{0%,60%{background-position:120% 0}to{background-position:-120% 0}}@keyframes panel-in{0%{opacity:0;transform:translateY(26px)scale(.97)}to{opacity:1;transform:none}}@keyframes pulse-dot{50%{opacity:.35}}@keyframes spin-hex{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes toast-in{0%{opacity:0;transform:translateY(-14px)scale(.92)}to{opacity:1;transform:none}}@keyframes slide-right{0%{opacity:0;transform:translate(-30px)}to{opacity:1}}@keyframes slide-left{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}@keyframes slide-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes drop-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}@keyframes pop-in{0%{opacity:0;transform:scale(.92)}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(24px)scale(.95)}to{opacity:1;transform:none}}@keyframes ring-pulse{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}@keyframes breathe{50%{opacity:.55}}@keyframes glow-fade{50%{opacity:1}}@keyframes dice-wiggle{0%,70%,to{transform:rotate(0)}76%{transform:rotate(-18deg)}84%{transform:rotate(14deg)}92%{transform:rotate(-6deg)}}@keyframes deal-in{0%{opacity:0;transform:translateY(80px) rotate(var(--rot))}}@keyframes float-up{0%{opacity:0;transform:translate(-50%,10px)scale(.6)}20%{opacity:1;transform:translate(-50%)scale(1.15)}to{opacity:0;transform:translate(-50%,-46px)scale(1)}}@keyframes glow-once{0%{opacity:0}20%{opacity:1}to{opacity:0}}@keyframes card-flip-in{0%{opacity:0;transform:perspective(600px)rotateY(90deg)scale(.8)}to{opacity:1;transform:none}}@keyframes float{50%{transform:translateY(-5px)}}@keyframes banner-in{0%{opacity:0;letter-spacing:.3em;transform:scaleY(.15)}to{opacity:1;transform:none}}@keyframes banner-out{to{opacity:0;transform:translateY(-14px)scaleY(.92)}}@media (width<=1180px){.hud-left{width:226px}.pp-stats{gap:6px}.log-panel{width:262px}.action-bar{width:300px}.hand-wrap{max-width:calc(100vw - 600px)}.phase-wrap{max-width:calc(100vw - 520px)}.phase-detail{display:none}}@media (height<=760px){.log-list{height:140px}.log-chat{height:210px}.trade-panel{max-height:calc(100% - 212px)}}@media (width<=900px){.lobby-wrap{grid-template-columns:minmax(0,1fr);max-height:calc(100dvh - 48px);overflow:auto}.lobby-main{min-width:0;overflow:visible}.lobby-wrap .lobby-main .lobby-foot{bottom:0}.hud-left{width:64px}.pp{grid-template-columns:38px;padding:6px}.pp-body,.pp-vp-of{display:none}.pp-vp{min-width:0;position:absolute;bottom:-6px;right:-6px}.pp-vp-num{font-size:1rem}.player-panels.many{gap:4px}.player-panels.many .pp{grid-template-columns:30px;padding:4px}.player-panels.many .pp-crest svg{width:28px;height:31px}.phase-wrap{align-items:stretch;width:auto;max-width:none;top:112px;left:88px;right:10px;transform:none}.bank-mini{transform-origin:100% 0;transform:scale(.86)}.phase-dice{display:none}.phase-clock{padding:2px 8px}.phase-clock svg,.log-panel{display:none}.hand-wrap{max-width:100vw;bottom:196px;left:0;right:0;transform:none}.action-bar{width:auto;left:12px;right:12px}.build-row.seafarers{grid-template-columns:repeat(6,1fr);gap:4px}.build-row.seafarers .build-btn{height:62px}.build-row.seafarers .build-name{letter-spacing:0;font-size:.54rem}.trade-panel{width:auto;bottom:200px;left:12px}.incoming-offers{width:auto;top:150px;left:12px}.big-picks,.counters.wide{grid-template-columns:repeat(3,1fr)}.dev-detail-body{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.conn-veil{z-index:900;-webkit-backdrop-filter:blur(2px)saturate(.7);backdrop-filter:blur(2px)saturate(.7);background:#0c070373;justify-content:center;align-items:flex-start;padding-top:18vh;animation:.3s both fade-up;display:flex;position:fixed;inset:0}.conn-veil-card{color:var(--cream);background:linear-gradient(#462814f2,#1e1108f5);border:1px solid #e0b95e80;border-radius:14px;align-items:center;gap:16px;max-width:min(460px,100vw - 32px);padding:16px 22px;display:flex;box-shadow:0 12px 30px #00000080}.conn-veil-title{font-family:var(--font-title);color:var(--gold-1);font-size:1.05rem;font-weight:700}.conn-veil-sub{color:#f3e4c0cc;font-size:.95rem;font-style:italic}.conn-veil-spinner{border:3px solid #e0b95e40;border-top-color:var(--gold-2);border-radius:50%;flex:none;width:26px;height:26px;animation:.9s linear infinite conn-spin}@keyframes conn-spin{to{transform:rotate(360deg)}}.table-notice{top:calc(12px + env(safe-area-inset-top));z-index:850;pointer-events:auto;width:max-content;max-width:calc(100% - 24px);animation:.3s both fade-up;position:fixed;left:50%;translate:-50%}.table-notice .conn-veil-card{padding:12px 16px}.table-notice .conn-veil-sub{margin-top:2px;font-size:.9rem}.table-notice .btn{flex:none}@media (width<=520px){.table-notice{top:calc(58px + env(safe-area-inset-top))}.table-notice .conn-veil-card.failed{flex-direction:column;align-items:stretch;gap:10px}}.board-picker{scroll-snap-type:x proximity;gap:10px;margin:6px -4px 4px;padding:4px 4px 10px;display:flex;overflow-x:auto}.board-picker>.board-card{scroll-snap-align:start;flex:0 0 150px}.board-card{color:var(--ink,#3a2716);cursor:pointer;font:inherit;text-align:center;background:linear-gradient(#fffaebb8,#e9d6a699);border:1px solid #6b4a2259;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 8px 9px;transition:transform .15s,box-shadow .2s,border-color .2s;display:flex}.board-card:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #3c230a40}.board-card.selected{border-color:var(--gold-2,#e0b95e);box-shadow:0 0 0 2px var(--gold-2,#e0b95e), 0 6px 18px #8c5f1459;background:linear-gradient(#fff6d6f2,#f0d696d9)}.board-card:disabled{cursor:default;opacity:.55}.board-card.misfit:not(.selected){opacity:.6}.board-preview{filter:drop-shadow(0 2px 3px #283c5a59);background:radial-gradient(#3ea3dc 0%,#2179bb 75%);border-radius:10px;margin-bottom:4px;display:block}.board-name{font-family:var(--font-title,"Cinzel", serif);letter-spacing:.03em;font-size:.95rem;font-weight:700}.board-tag{vertical-align:2px;font-family:var(--font-body,inherit);letter-spacing:.04em;color:#f4fbff;background:#2179bb;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:.62rem;font-weight:700;display:inline-block}.board-stats,.board-players{opacity:.85;font-size:.8rem}.board-warn{color:#a3321f;margin-top:3px;font-size:.75rem;font-weight:600}.board-description{margin:2px 2px 10px;font-size:.92rem;font-style:italic}.lobby-main .lobby-foot{z-index:2;background:linear-gradient(180deg, #ead7abe6, var(--parch-2));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);margin:16px -26px -22px;padding:12px 26px 16px;position:sticky;bottom:-22px;box-shadow:0 -8px 16px -10px #3c230a59}.account-corner{z-index:40;pointer-events:auto;position:fixed;top:16px;right:18px}.account-chip{font-family:var(--font-title);letter-spacing:.04em;color:var(--gold-1);background:var(--grain), linear-gradient(180deg, #74462a, #4a2a15 60%, #3a2010);cursor:pointer;border:1px solid #22130a;border-radius:999px;align-items:center;gap:8px;padding:4px 10px 4px 6px;font-size:.85rem;font-weight:700;display:inline-flex;box-shadow:inset 0 1px #ffdca040,0 3px #1e1006,0 6px 12px #00000059}.account-chip>svg:last-child{transition:transform .2s}.account-chip.open>svg:last-child{transform:rotate(180deg)}.account-chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.account-menu{width:270px;color:var(--ink);padding:14px 16px 10px;animation:.18s both pop-in;position:absolute;top:calc(100% + 10px);right:0}.account-menu-head{align-items:center;gap:10px;display:flex}.account-menu-name{font-family:var(--font-title);font-size:1.1rem;font-weight:800}.account-menu-sub{color:var(--ink-soft);align-items:center;gap:5px;font-size:.88rem;display:flex}.account-menu-stats{color:var(--ink-faint);border-top:1px dashed #6b4d1959;border-bottom:1px dashed #6b4d1959;margin:12px 0 6px;padding:8px 0;font-size:.82rem;display:flex}.account-menu-stats span{text-align:center;flex:1}.account-menu-stats b{font-family:var(--font-title);color:var(--ink);font-size:1.15rem;display:block}.account-menu-stats .account-menu-empty{font-size:.92rem;font-style:italic}.account-menu-item{width:100%;color:var(--ink);font-family:var(--font-body);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:8px 6px;font-size:1rem;display:flex}.account-menu-item:hover{background:#a97c2e26}.guest-note{color:var(--ink-soft);margin-top:-4px;font-size:.92rem;font-style:italic;line-height:1.35}.guest-note.signed-in{align-items:center;gap:6px;font-style:normal;display:flex}.guest-note b{color:var(--ink);font-style:normal;font-weight:600}.playing-as{background:#fffaeb80;border:1px solid #6b4d1940;border-radius:10px;align-items:center;gap:10px;padding:6px 12px 6px 8px;display:flex}.playing-as-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-title);color:var(--ink);flex:1;font-size:1.2rem;font-weight:800;overflow:hidden}.text-link{font:inherit;color:var(--gold-4);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-style:normal;font-weight:600;-webkit-text-decoration:underline #6b4d1966;text-decoration:underline #6b4d1966}.text-link:hover{color:var(--ink);text-decoration-color:currentColor}.signin-sheet{width:min(420px,94vw)}.signin-body{flex-direction:column;gap:12px;display:flex}.provider-list{flex-direction:column;gap:9px;display:flex}.provider-btn{color:var(--ink);font-family:var(--font-body);cursor:pointer;background:linear-gradient(#fffdf6,#f6ecd2);border:1px solid #b08c50;border-radius:8px;justify-content:center;align-items:center;padding:11px 16px 11px 44px;font-size:1.08rem;font-weight:500;transition:transform .12s,box-shadow .12s,filter .15s;display:flex;position:relative;box-shadow:inset 0 1px #fff,0 2px #8d6d3a8c,0 4px 10px #0000001f}.provider-btn svg{position:absolute;top:50%;left:16px;translate:0 -50%}.provider-btn:hover{filter:brightness(1.03);transform:translateY(-1px)}.provider-btn:active{transform:translateY(1px);box-shadow:inset 0 1px #fff,0 1px #8d6d3a8c}.email-row{gap:8px;display:flex}.email-row .text-input{flex:1;min-width:0}.signin-fine{color:var(--ink-faint);margin:0;font-size:.88rem;font-style:italic;line-height:1.35}.signin-fine.center{text-align:center}.signin-guest{align-self:center;margin-top:2px;font-size:.95rem}.popup-step{text-align:center;align-items:center;padding:6px 0 2px}.popup-mark{background:linear-gradient(#fffdf6,#f1e3bd);border:1px solid #b08c50;border-radius:50%;place-items:center;width:84px;height:84px;display:grid;position:relative;box-shadow:inset 0 1px #fff,0 4px 12px #00000026}.popup-ring{border:2px solid var(--gold-2);border-top-color:#0000;border-radius:50%;animation:1.2s linear infinite spin-hex;position:absolute;inset:-6px}.popup-text{margin:4px 0 0;font-size:1.12rem}.popup-actions{justify-content:center;align-items:center;gap:14px;margin-top:4px;display:flex}.code-intro{text-align:center;margin:0;font-size:1.05rem}.code-tiles{justify-content:center;gap:8px;display:flex}.code-tiles input{text-align:center;width:46px;height:56px;font-family:var(--font-title);color:var(--gold-1);caret-color:var(--gold-1);background:var(--grain), linear-gradient(180deg, #6e4327, #3a2010);text-shadow:0 2px #000;border:1px solid #22130a;border-radius:7px;outline:none;padding:0;font-size:1.8rem;font-weight:800;box-shadow:inset 0 1px #ffe6aa40,0 3px #1e1006,0 5px 10px #0000004d}.code-tiles input:focus{box-shadow:inset 0 1px #ffe6aa40,0 3px #1e1006,0 0 0 3px #e0b95ebf}.code-tiles.error{animation:.4s auth-shake}.code-tiles.error input{border-color:#7e2014;box-shadow:inset 0 1px #ffc8b44d,0 3px #4f130b,0 0 0 2px #b8392ca6}.code-error{text-align:center;color:var(--bad);margin:0;font-size:.95rem}.signin-error{color:var(--bad);margin:0;font-size:.92rem;line-height:1.35}.code-foot{justify-content:center;display:flex}@keyframes auth-shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.done-step{text-align:center;align-items:center}.done-crest{filter:drop-shadow(0 6px 10px #0000004d);animation:.7s cubic-bezier(.2,1.3,.4,1) both go-medal-in}.done-name{margin:0;font-size:1.2rem}.done-claim{color:#2f5a22;text-align:left;background:#4f8a3a24;border:1px solid #4f8a3a66;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;font-size:.98rem;display:flex}@media (width<=640px),(height<=560px){.screen.home{justify-content:safe center;gap:16px;padding:56px 16px 20px;overflow:hidden auto}.screen.home .home-panel{width:min(400px,100%)}.screen.home .game-title{font-size:48px;line-height:1.05}.screen.home .title-sub{letter-spacing:.2em;font-size:11px}.home-foot{letter-spacing:.1em;max-width:340px;font-size:.66rem;line-height:1.6;position:static}.home-panel .btn{white-space:normal;text-wrap:balance;line-height:1.25}.playing-as-name{font-size:1rem}}@media (width<=640px){.lobby-foot{text-align:center;flex-direction:column;align-items:stretch;gap:8px}.lobby-foot-actions>.btn{flex:1}.lobby-foot-actions>.lobby-chat-btn:not(:only-child){flex:none}.seat.empty{flex-wrap:wrap;row-gap:6px}.seat.empty .seat-info{flex:150px}.seat.empty>.btn{margin-left:52px}.account-corner{top:10px;right:10px}.account-chip-name{display:none}body:has(.account-corner) .lobby-wrap{margin-top:46px}.code-tiles{gap:6px}.code-tiles input{width:40px;height:50px;font-size:1.5rem}}.history-sheet{width:min(620px,94vw)}.history-list{flex-direction:column;gap:8px;max-height:min(60vh,560px);margin:0;padding:2px 4px 2px 0;list-style:none;display:flex;overflow-y:auto}.history-row{background:#fffaeb73;border:1px solid #6b4d1938;border-radius:10px;align-items:center;gap:10px;display:flex}.history-row.won{background:linear-gradient(100deg,#fbe39a99,#fffaeb73 60%);border-color:#b0802873}.history-main{min-width:0;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;flex:1;align-items:center;gap:12px;padding:10px 12px;display:flex}button.history-main{cursor:pointer}button.history-main:hover{background:#a97c2e1f}button.history-main:disabled{cursor:progress;opacity:.7}.history-place{width:40px;height:40px;font-family:var(--font-title);color:var(--ink-faint);background:#6b4d191a;border:1px solid #6b4d1938;border-radius:50%;flex:none;place-items:center;font-size:.95rem;font-weight:800;display:grid}.history-place.won{color:#7a5410;background:radial-gradient(circle at 40% 35%,#fff2c2,#e7bf5c);border-color:#b0802a;box-shadow:0 2px 6px #6b4d194d}.history-place.open{color:var(--wood-1)}.history-body{flex-direction:column;gap:3px;min-width:0;display:flex}.history-result{font-family:var(--font-title);font-size:1rem;font-weight:700}.history-winner{font-family:var(--font-body);color:var(--ink-faint);font-style:italic;font-weight:400}.history-players{flex-wrap:wrap;gap:3px 12px;font-size:.92rem;display:flex}.history-player{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.history-player b{font-family:var(--font-title);color:var(--ink-faint);font-size:.85rem}.history-player.me{font-weight:600}.history-player.me b{color:var(--ink)}.history-meta{color:var(--ink-faint);font-size:.84rem;font-style:italic}.history-go{color:var(--ink-faint);flex:none;margin-left:auto;transform:rotate(-90deg)}.history-rejoin{flex:none;margin-right:12px}.history-empty{text-align:center;color:var(--ink-faint);flex-direction:column;align-items:center;gap:10px;padding:26px 10px;font-style:italic;display:flex}.history-empty p{margin:0}.history-more{justify-content:center;margin-top:10px;display:flex}.history-error{text-align:center;margin-top:8px}@media (width<=560px){.history-main{gap:10px;padding:9px 10px}.history-place{width:34px;height:34px;font-size:.85rem}.history-row{flex-wrap:wrap}.history-main{flex-basis:100%}.history-rejoin{margin:-4px 10px 10px auto}}.learn-link{align-self:center;margin-top:-2px;font-size:.98rem}.learn-link:disabled{opacity:.6;cursor:default}.tutorial-guide{pointer-events:auto;width:min(330px,100vw - 24px);padding:14px 16px 12px;animation:.45s cubic-bezier(.2,.9,.3,1.1) both slide-left}.tg-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.tg-seal{color:#f7ecca;background:radial-gradient(circle at 38% 32%,#3c6aa0,#1f3d66);border:1px solid #142a47;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;display:grid;box-shadow:0 2px 5px #0000004d}.tg-who{font-family:var(--font-title);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.66rem;font-weight:700}.tg-title{font-family:var(--font-title);color:var(--ink);font-size:1.08rem;font-weight:800;line-height:1.15}.tg-count{font-family:var(--font-title);color:var(--ink-faint);align-self:flex-start;margin-left:auto;font-size:.78rem;font-weight:700}.tg-text{color:var(--ink);margin:0 0 10px;font-size:1.02rem;line-height:1.42;animation:.35s both fade-up}.tutorial-guide.wait .tg-text{color:var(--ink-faint);font-style:italic}.tg-foot{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.tg-todo{font-family:var(--font-title);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-4);font-size:.78rem;font-weight:700}.tutorial-guide.wait .tg-todo{color:var(--ink-faint);animation:1.6s ease-in-out infinite breathe}.tg-skip,.tg-leave{font-size:.9rem}.tg-leave{color:var(--ink-faint);margin-left:auto}@keyframes tut-pulse{0%,to{box-shadow:0 0 0 2px #fbde8c8c,0 0 14px #f0be5a59}50%{box-shadow:0 0 0 3px #ffe8a0f2,0 0 26px #fac864a6}}.hud[data-tut=dice] .roll-btn,.hud[data-tut=build] .build-row,.hud[data-tut=end-turn] .end-btn,.hud[data-tut=trade] .trade-btn,.hud[data-tut=hand] .hand-wrap{border-radius:12px;animation:1.6s ease-in-out infinite tut-pulse}@media (width<=640px){.tutorial-guide{z-index:6;width:auto;padding:10px 12px;position:fixed;top:156px;left:8px;right:8px}.tg-text{margin-bottom:6px;font-size:.95rem}}.share-sheet{width:min(760px,94vw)}.share-preview{aspect-ratio:16/9;background:radial-gradient(at 35%,#3a2412,#1d1108);border:1px solid #6b4d1973;border-radius:10px;place-items:center;display:grid;overflow:hidden;box-shadow:0 10px 26px #1e100466,inset 0 0 0 1px #fff0c814}.share-preview img{width:100%;height:100%;animation:.4s both fade-in;display:block}.share-preview span{color:#f5e9cabf;font-style:italic;animation:1.6s ease-in-out infinite breathe}.share-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}@media (width<=640px){.share-sheet{padding:14px 14px 16px}.share-actions .btn{flex:auto}}.username-sheet{width:min(420px,94vw)}.username-field{align-items:center;gap:12px;display:flex}.username-field .text-input{flex:1;min-width:0;font-size:1.25rem;font-weight:500}.username-status{min-height:1.4em;color:var(--ink-faint);align-items:center;gap:6px;margin:-4px 0 0 56px;font-size:.95rem;display:flex}.username-status.good{color:#2f5a22}.username-status.bad{color:var(--bad)}.username-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.username-actions .btn:last-child{margin-left:auto}.replay-loading{z-index:20;color:var(--cream);font-family:var(--font-title);letter-spacing:.06em;background:var(--grain), linear-gradient(180deg, #402512eb, #1c1007f2);border:1px solid #e0b95e66;border-radius:12px;align-items:center;gap:12px;padding:14px 20px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 26px #00000080}.replay-hud .hand-wrap{max-width:calc(100vw - 760px);bottom:116px}.replay-tag{font-family:var(--font-title);letter-spacing:.16em;text-transform:uppercase;color:#2a1a0c;background:linear-gradient(180deg, var(--gold-1,#f6dd96), var(--gold-3,#c9973f));pointer-events:none;border-radius:999px;align-self:flex-end;align-items:center;gap:6px;margin-top:6px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-flex;box-shadow:0 2px 6px #0006}.replay-bar{width:min(860px,100vw - 24px);color:var(--cream);background:var(--grain), linear-gradient(180deg, #402512eb, #1c1007f2);pointer-events:auto;border:1px solid #e0b95e66;border-radius:14px;flex-direction:column;gap:8px;margin:0 auto;padding:10px 14px 12px;animation:.5s cubic-bezier(.2,.8,.2,1) both slide-up;display:flex;position:absolute;bottom:12px;left:0;right:0;box-shadow:0 10px 26px #00000080}.replay-timeline{height:22px;position:relative}.replay-track{background:#00000073;border-radius:3px;height:6px;position:absolute;top:8px;left:0;right:0;box-shadow:inset 0 1px 2px #0009}.replay-fill{background:linear-gradient(90deg, var(--gold-3,#c9973f), var(--gold-2,#e0b95e));border-radius:3px;height:100%}.replay-mark{pointer-events:none;border-radius:2px;width:4px;height:14px;margin-left:-2px;position:absolute;top:-4px}.replay-mark.seven{background:#d9473a}.replay-mark.city{background:#f3e6c4}.replay-mark.award{background:#6fb0ff}.replay-mark.win{background:var(--gold-2,#e0b95e);width:8px;height:18px;margin-left:-4px;top:-6px;box-shadow:0 0 8px #f0c864cc}.replay-range{opacity:0;cursor:pointer;width:100%;margin:0;position:absolute;inset:0}.replay-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.replay-btn{width:38px;height:38px;color:var(--cream);cursor:pointer;background:#fff0c814;border:1px solid #e0b95e73;border-radius:50%;place-items:center;display:grid}.replay-btn:hover{background:#fff0c82e}.replay-btn.play{color:#2a1a0c;background:linear-gradient(#f6dd96,#c9973f);border-color:#00000059;width:46px;height:46px;box-shadow:0 3px 8px #00000073}.replay-speeds{border:1px solid #e0b95e66;border-radius:8px;display:inline-flex;overflow:hidden}.replay-speeds button{color:var(--cream);font-family:var(--font-title);cursor:pointer;background:0 0;border:0;padding:5px 10px;font-size:.82rem;font-weight:700}.replay-speeds button+button{border-left:1px solid #e0b95e40}.replay-speeds button.on{color:#2a1a0c;background:linear-gradient(#f6dd96,#c9973f)}.replay-turn{font-family:var(--font-title);letter-spacing:.06em;margin-left:auto;font-weight:700}.replay-turn .muted{color:#f5e9ca99;font-weight:600}.replay-reveal{margin:0;font-size:.95rem}.replay-reveal .toggle-track{background:#fff0c833}.hands-panel{pointer-events:auto;flex-direction:column;gap:4px;width:min(340px,100vw - 24px);padding:10px 12px;animation:.35s cubic-bezier(.2,.9,.3,1.1) both slide-left;display:flex;position:absolute;top:112px;right:12px}.hands-title{font-family:var(--font-title);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:2px;font-size:.74rem;font-weight:700}.hands-row{border-radius:6px;grid-template-columns:22px minmax(0,.9fr) minmax(0,1.6fr);align-items:center;gap:8px;padding:3px 4px;display:grid}.hands-row.current{background:#fbde8c66}.hands-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.95rem;overflow:hidden}.hands-cards{flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:.9rem;display:flex}.hands-dev{align-items:center;gap:2px;display:inline-flex}.hands-dev b{font-family:var(--font-title);font-size:.75rem}@media (width<=900px){.replay-hud .hand-wrap{max-width:none;bottom:152px}.replay-hud.revealing .hand-wrap{display:none}.hands-panel{width:auto;max-height:42vh;inset:auto 12px 140px;overflow:auto}}@media (width<=640px){.replay-bar{gap:6px;padding:8px 10px 10px}.replay-controls{gap:6px}.replay-btn{width:34px;height:34px}.replay-btn.play{width:40px;height:40px}.replay-speeds button{padding:4px 7px;font-size:.74rem}.replay-turn{font-size:.82rem}.replay-reveal{flex-basis:100%;justify-content:center;font-size:.85rem}.replay-hud .log-panel{display:none}.replay-hud .phase-title{white-space:normal;font-size:.92rem;line-height:1.15}}.couch-create{gap:8px}.couch-join{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px 22px;display:flex;overflow:auto}.couch-join.framed:after{display:none}.couch-join.framed{outline-offset:-10px;outline:1px solid #a97c2e73}.couch-join .eyebrow{color:var(--gold-4)}.couch-join-title{font-family:var(--font-title);color:var(--ink);margin:0;font-size:1.35rem;font-weight:800}.qr{border-radius:8px;display:block;box-shadow:0 6px 18px #2b1a0c59,0 0 0 1px #6b4d1959}.couch-join .qr{width:min(260px,100%);height:auto;margin:4px 0}.couch-join-note{color:var(--ink-soft);margin:0;font-size:1.02rem;line-height:1.35}.couch-join-code{color:var(--ink-faint);font-size:.95rem}.couch-join-room{font-family:var(--font-title);letter-spacing:.12em;color:var(--ink)}.lobby-couch-note{color:var(--ink);background:#a97c2e24;border:1px solid #a97c2e59;border-radius:8px;margin:0 0 14px;padding:8px 12px;font-size:.98rem}.lobby-couch-note svg{vertical-align:-3px;margin-right:4px}.lobby-couch-note b{font-family:var(--font-title);letter-spacing:.06em;font-size:.85rem}.hud.tv .hand-wrap{display:none}.hud.tv{--tv-zoom:1}@media (width>=1600px){.hud.tv{--tv-zoom:1.25;zoom:var(--tv-zoom)}}.hud.tv .gameover{width:min(780px, calc(96vw / var(--tv-zoom)));max-height:calc(100dvh / var(--tv-zoom) - 32px)}.hud.tv .modal{max-height:calc(100vh / var(--tv-zoom) - 40px)}.couch-corner{pointer-events:auto;align-items:center;gap:12px;padding:10px 14px 10px 10px;animation:.5s cubic-bezier(.2,.8,.2,1) both slide-up;display:flex;position:absolute;bottom:12px;right:12px}.couch-corner .qr{width:92px;height:92px;box-shadow:none}.couch-corner .eyebrow{color:var(--gold-4);font-size:.62rem}.couch-corner-code{font-family:var(--font-title);letter-spacing:.14em;color:var(--ink);font-size:1.6rem;font-weight:800;line-height:1.1}.couch-corner-note{color:var(--ink-faint);font-size:.85rem;font-style:italic}.table-offers{pointer-events:none;gap:14px;display:flex;position:absolute;bottom:22px;left:50%;translate:-50%}.table-offer{min-width:300px;color:var(--ink);border-top:4px solid var(--pc);padding:12px 18px 14px;animation:.3s cubic-bezier(.2,1,.4,1) both pop-in}.table-offer-head{font-family:var(--font-title);align-items:center;gap:10px;font-size:1.05rem;font-weight:700;display:flex}.table-offer-lines{color:var(--ink-soft);justify-content:center;align-items:center;gap:16px;margin:10px 0 8px;display:flex}.table-offer-side{align-items:center;gap:8px;display:inline-flex}.table-offer-answers{justify-content:center;gap:12px;display:flex}.table-offer-answer{color:var(--ink-faint);background:#6b4d191a;border-radius:999px;align-items:center;gap:3px;padding:2px 8px 2px 3px;display:inline-flex}.table-offer-answer.accepted{color:#2f5a22;background:#4f8a3a33}.table-offer-answer.declined{color:#8a2a20;background:#b8392c29}.couch-choice{width:min(480px,94vw)}.couch-choice-options{grid-template-columns:1fr 1fr;gap:12px;display:grid}.couch-choice-option{color:var(--ink);font:inherit;text-align:center;cursor:pointer;background:#fffaeb80;border:1px solid #6b4d1959;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;transition:background .15s,transform .15s;display:flex}.couch-choice-option:hover{background:#fbe39a99;transform:translateY(-1px)}.couch-choice-option b{font-family:var(--font-title);font-size:1rem}.couch-choice-option span{color:var(--ink-soft);font-size:.92rem;line-height:1.3}.couch-choice-foot{justify-content:center;margin-top:12px;display:flex}@media (width<=480px){.couch-choice-options{grid-template-columns:1fr}}html[data-couch=hand] body{background:var(--grain), radial-gradient(ellipse at 50% 0%, #4c2e16, #1e1209 80%)}html[data-couch=hand] .screen-vignette{display:none}.couch-hand{padding:max(10px, env(safe-area-inset-top)) 10px max(10px, env(safe-area-inset-bottom));pointer-events:auto;background:var(--grain), radial-gradient(ellipse at 50% 0%, #4c2e16, #1e1209 80%);flex-direction:column;gap:10px;display:flex;overflow-y:auto}.couch-top{align-items:flex-start;gap:8px;display:flex}.couch-hand .phase-wrap{flex:1;align-items:stretch;width:auto;min-width:0;max-width:none;position:static;transform:none}.couch-hand .phase-dice{display:flex}.couch-hand .phase-banner{flex-wrap:wrap;gap:6px 10px;padding:7px 10px}.couch-hand .phase-text{flex:1 0 100%;order:5}.couch-hand .phase-clock{margin-left:auto}.couch-hand .phase-title{white-space:normal;font-size:.95rem;line-height:1.15}.couch-hand .phase-detail{white-space:normal;font-size:.82rem;display:block}.couch-hand .phase-dice{padding-left:8px}.couch-hand .phase-dice svg{width:20px;height:20px}.couch-hand .build-hint{display:none}.hand-menu{flex:none;position:relative}.hand-menu-pop{z-index:40;width:260px;padding:8px;top:46px}.hand-menu-item{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:10px;font-size:1rem;display:flex}.hand-menu-item:hover{background:#a97c2e26}.hand-menu .popover:not(.hand-menu-pop){z-index:40;top:46px}.couch-main{flex-direction:column;flex:1;gap:10px;min-height:min-content;display:flex}.couch-hand .player-panels{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:6px;display:grid}.couch-hand .pp{grid-template-columns:26px 1fr auto;gap:6px;padding:5px 7px;animation:none}.couch-hand .pp-crest svg{width:24px;height:27px}.couch-hand .pp-body{display:block}.couch-hand .pp-name{font-family:var(--font-body);letter-spacing:0;font-size:1rem;font-weight:600}.couch-hand .pp-top .tag,.couch-hand .pp-badge,.couch-hand .pp-status,.couch-hand .pp-vp-of,.couch-hand .pp-stat:nth-child(n+3){display:none}.couch-hand .pp-stats{gap:6px;margin-top:1px}.couch-hand .pp-stat{font-size:.75rem}.couch-hand .pp-vp{min-width:0;position:static}.couch-hand .pp-vp-num{font-size:1.15rem}.look-btn{color:var(--cream);font-family:var(--font-title);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#140b0559;border:1px dashed #e0b95e73;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-size:.82rem;font-weight:600;display:flex}.look-btn:hover{background:#3c231080;border-style:solid}.couch-hand .hand-wrap{--card-w:clamp(72px, 21vw, 112px);flex:1;justify-content:center;min-width:0;max-width:none;position:static;bottom:auto;left:auto;right:auto;transform:none}.couch-hand .hand{flex-wrap:wrap;justify-content:center;row-gap:6px}.couch-hand .action-bar{width:auto;margin-top:auto;animation:none;position:static}.couch-hand kbd{display:none}.couch-hand .trade-panel{top:auto;left:10px;right:10px;bottom:max(10px, env(safe-area-inset-bottom));z-index:30;width:auto;max-height:78dvh;position:fixed}.couch-hand .incoming-offers{top:auto;left:10px;right:10px;bottom:max(10px, env(safe-area-inset-bottom));z-index:31;width:auto;position:fixed}.couch-hand.board-open{pointer-events:none;background:0 0}.couch-hand.board-open .couch-main{display:none}.couch-hand.board-open .couch-top{pointer-events:auto}.couch-hand.board-open .incoming-offers{display:none}.board-dock{left:10px;right:10px;bottom:max(10px, env(safe-area-inset-bottom));z-index:31;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed}.board-dock>*{pointer-events:auto}.offers-waiting{color:var(--ink);border-left:4px solid var(--pc,var(--gold));justify-content:space-between;align-items:center;gap:10px;padding:8px 10px 8px 12px;animation:.35s cubic-bezier(.2,.8,.2,1) both slide-up;display:flex}.offers-waiting-text{align-items:center;gap:8px;min-width:0;font-size:.92rem;line-height:1.25;display:flex}.offers-waiting-text .res-list{vertical-align:middle}.board-bar{color:var(--ink);pointer-events:auto;justify-content:space-between;align-items:center;gap:8px 12px;padding:12px 14px;animation:.35s cubic-bezier(.2,.8,.2,1) both slide-up;display:flex}.board-bar-prompt{min-width:0;font-family:var(--font-title);flex:1 1 0;font-size:.95rem;font-weight:700;line-height:1.2}.board-bar-actions{flex:none;gap:8px;display:flex}.flick-pad{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:radial-gradient(at 50% 65%,#2c6c4d,#163d2b 78%);border:4px solid #6a4122;border-radius:12px;flex-direction:column;align-items:center;gap:6px;height:136px;padding:10px 12px;display:flex;position:relative;box-shadow:inset 0 3px 12px #0000008c,inset 0 0 0 1px #ffffff0f,0 4px 14px #00000073}.flick-pad.dragging{cursor:grabbing}.flick-pad.disabled{opacity:.55;cursor:wait}.flick-pad:focus-visible{outline:2px solid var(--gold-2);outline-offset:2px}.flick-dice{z-index:5;filter:drop-shadow(0 7px 6px #00000080);gap:12px;margin-top:14px;transition:transform .25s cubic-bezier(.2,.8,.2,1);display:flex;position:relative}.flick-pad.dragging .flick-dice{transition:none}.flick-pad:not(.disabled):not(.dragging):not(.thrown) .flick-dice{animation:2.4s ease-in-out infinite flick-hint}.flick-label{font-family:var(--font-title);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-1);text-shadow:0 1px 2px #0009;margin-top:auto;font-size:.95rem;font-weight:800}.flick-label span{font-family:var(--font-body);letter-spacing:0;text-transform:none;color:#f3e4c0bf;margin-left:4px;font-size:.95rem;font-style:italic;font-weight:400}@keyframes flick-hint{0%,62%,to{transform:none}74%{transform:translateY(-12px)rotate(-4deg)}86%{transform:none}}.flick-pad.landed{opacity:1}.flick-pad.landed .flick-dice{animation:.5s cubic-bezier(.2,.9,.3,1.25) both flick-land}.flick-label b{color:#fff6d6;font-size:1.15rem}@keyframes flick-land{0%{opacity:0;transform:translateY(-110px)rotate(-120deg)scale(.7)}to{opacity:1;transform:none}}.reaction-bubble{z-index:6;color:var(--ink);background:var(--noise), linear-gradient(180deg, var(--parch-1), var(--parch-2));white-space:nowrap;pointer-events:none;border:1px solid #6b4d1973;border-radius:999px;align-items:center;gap:6px;padding:5px 13px 5px 8px;animation:3.2s cubic-bezier(.2,.9,.3,1.2) both reaction-pop;display:flex;position:absolute;top:50%;left:calc(100% + 10px);translate:0 -50%;box-shadow:0 6px 16px #00000073}.reaction-bubble:before{content:"";background:var(--parch-1);border-bottom:1px solid #6b4d1973;border-left:1px solid #6b4d1973;width:10px;height:10px;position:absolute;top:50%;left:-6px;translate:0 -50%;rotate:45deg}.reaction-emoji{font-size:1.55rem;line-height:1}.reaction-label{font-family:var(--font-title);letter-spacing:.04em;font-size:.85rem;font-weight:800}@keyframes reaction-pop{0%{opacity:0;transform:scale(.4)}7%{opacity:1;transform:scale(1.15)}13%{transform:scale(1)}86%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)}}.hud.tv .reaction-bubble{gap:10px;padding:8px 20px 8px 12px}.hud.tv .reaction-emoji{font-size:2.6rem}.hud.tv .reaction-label{font-size:1.2rem}.couch-hand .reaction-bubble{gap:0;padding:2px 6px;top:-10px;left:auto;right:-4px;translate:none}.couch-hand .reaction-bubble:before,.couch-hand .reaction-label{display:none}.couch-hand .reaction-emoji{font-size:1.15rem}.reaction-row{justify-content:space-between;gap:4px;display:flex}.reaction-btn{color:var(--ink);font:inherit;cursor:pointer;background:#fffaeb80;border:1px solid #6b4d194d;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;transition:transform .12s,background .12s;display:flex}.reaction-btn:hover:not(:disabled){background:#fbe39ab3;transform:translateY(-2px)}.reaction-btn:active:not(:disabled){transform:scale(.94)}.reaction-btn:disabled{opacity:.45;cursor:default}.reaction-row .reaction-btn{background:#140b0566;border-color:#e0b95e4d;flex:1;padding:7px 0}.reaction-row .reaction-btn:hover:not(:disabled){background:#3c231099}.reaction-row .reaction-emoji{font-size:1.35rem}.log-chat .reaction-row .reaction-btn{padding:4px 0}.log-chat .reaction-row .reaction-emoji{font-size:1.15rem}.chat-sheet .reaction-row .reaction-btn{background:#fffaeb80;border-color:#6b4d194d}.chat-sheet .reaction-row .reaction-btn:hover:not(:disabled){background:#fbe39ab3}@media (width<=900px){.hud:not(.couch-hand) .reaction-bubble{z-index:30;gap:0;padding:2px 6px;top:-10px;left:-8px;translate:none}.hud:not(.couch-hand) .reaction-bubble:before,.hud:not(.couch-hand) .reaction-label{display:none}.hud:not(.couch-hand) .reaction-emoji{font-size:1.3rem}}.roll-callout{z-index:40;box-shadow:0 0 0 1px #0006, 0 0 46px color-mix(in srgb, var(--pc,#e0b95e) 35%, transparent), 0 20px 50px #0000008c;pointer-events:none;background:radial-gradient(at 50% 40%,#28160adb,#100803d1 72%);border:1px solid #e0b95e73;border-radius:22px;flex-direction:column;align-items:center;gap:4px;padding:22px 46px 18px;animation:2.6s cubic-bezier(.2,.9,.3,1.1) both roll-callout;display:flex;position:absolute;top:46%;left:50%;translate:-50% -50%}.roll-callout-dice{filter:drop-shadow(0 8px 10px #0000008c);gap:18px;display:flex}.roll-callout-dice svg:first-child{--spin:-200deg;animation:.55s cubic-bezier(.2,.9,.3,1.2) both roll-callout-die}.roll-callout-dice svg:last-child{--spin:220deg;animation:.55s cubic-bezier(.2,.9,.3,1.2) 70ms both roll-callout-die}.roll-callout-total{font-family:var(--font-deco);background:linear-gradient(#fff7d4 0%,#f3d37c 30%,#c9952f 52%,#8a5c16 60%,#e6c065 80%,#fff1bb 100%);color:#0000;filter:drop-shadow(0 2px #2a1606)drop-shadow(0 6px 16px #000000b3);-webkit-background-clip:text;background-clip:text;margin-top:4px;font-size:7.5rem;font-weight:700;line-height:1}.roll-callout-who{font-family:var(--font-title);letter-spacing:.08em;color:var(--cream);text-shadow:0 2px 6px #000;align-items:center;gap:8px;font-size:1.25rem;font-weight:700;display:flex}.roll-callout.seven{border-color:#e2574c99;box-shadow:0 0 0 1px #0006,0 0 56px #e2574c73,0 20px 50px #0000008c}.roll-callout.seven .roll-callout-total{background-image:linear-gradient(#ffe0d4 0%,#ff8a6a 30%,#c8372d 55%,#7a140c 62%,#e8664a 82%,#ffd2c2 100%)}.roll-callout.seven .roll-callout-who{color:#ffc9bd}@keyframes roll-callout{0%{opacity:0;transform:scale(.7)}12%{opacity:1;transform:scale(1.04)}18%{transform:scale(1)}82%{opacity:1;transform:none}to{opacity:0;transform:translateY(-14px)scale(.97)}}@keyframes roll-callout-die{0%{opacity:0;transform:translateY(-40px) rotate(var(--spin)) scale(.6)}to{opacity:1;transform:none}}@media (width<=640px){.roll-callout{border-radius:16px;padding:14px 28px 12px;top:40%}.roll-callout-dice{gap:12px}.roll-callout-dice svg{width:56px;height:56px}.roll-callout-total{font-size:4.8rem}.roll-callout-who{font-size:1rem}}button.phase-dice{color:inherit;font:inherit;cursor:pointer;pointer-events:auto;background:0 0;border-top:0;border-bottom:0;border-right:0;border-radius:0;margin:0;padding-top:0;padding-bottom:0;padding-right:0;transition:filter .15s}button.phase-dice:hover:not(:disabled){filter:brightness(1.15)}button.phase-dice:disabled{cursor:default}button.phase-dice:focus-visible{outline:2px solid var(--gold-2);outline-offset:3px}.dice-pop{width:380px;color:var(--ink);padding:12px 14px 14px}.dice-pop .go-chart{gap:6px;height:190px;padding-top:18px}.dice-pop .go-dice-legend{gap:4px 14px;margin-top:10px;font-size:.9rem}.dice-sheet{width:min(460px,94vw)}.dice-sheet .go-chart{gap:5px;height:210px}.dice-sheet .go-dice-legend{font-size:.92rem}@media (width<=640px){.utility>.dice-pop{width:auto;position:fixed;top:120px;left:8px;right:8px}.utility-row{gap:4px}.utility-row .icon-btn{width:32px;height:32px}}@media (width<=380px){.utility-row{gap:3px}.utility-row .icon-btn{width:30px;height:30px}}
