@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.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:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.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:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2)format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-ext-500-normal-Yta7XZ9C.woff2)format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-500-normal-lsPpqi9g.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-cyrillic-500-normal-CyAY5ZLS.woff2)format("woff2"),url(/assets/cormorant-garamond-cyrillic-500-normal-DkJXBcIH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-vietnamese-500-normal-BZGLGj12.woff2)format("woff2"),url(/assets/cormorant-garamond-vietnamese-500-normal-DqXqCC0q.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-ext-500-normal-CH1kM7og.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-ext-500-normal-DYeaGGzO.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-ext-600-normal-BMhMHfrj.woff2)format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-600-normal-CsIYWmWK.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-600-normal-C2atO-64.woff2)format("woff2"),url(/assets/cormorant-garamond-cyrillic-600-normal-FNmA3REe.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-vietnamese-600-normal-BoXdMtcr.woff2)format("woff2"),url(/assets/cormorant-garamond-vietnamese-600-normal-C4HEjEaf.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-ext-600-normal-Dk3-quAP.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.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}div.svelte-clyidt{width:100%;height:100%;position:relative;overflow:hidden}canvas.svelte-clyidt{width:100%;height:100%;display:block;position:relative}:root{color:#f1e7d1;font-synthesis:none;--gold:#eac17b;--muted:#c5c5b5;--line:#e0c28a40;background:#15251c;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:5px;outline:2px solid #ffda89}input{color:inherit;min-width:0}h1,h2,p{margin:0}h1,h2,.brand{font-family:Cormorant Garamond,Georgia,serif}.den{background:linear-gradient(#07181355,#10261c20 70%,#0b1c1755),url(/art/cozy-den.png) 50%/cover fixed;flex-direction:column;min-height:100svh;display:flex}.topbar{background:linear-gradient(#0a1c17dd,#0a1c1780);border-bottom:1px solid #c29b5930;align-items:center;gap:26px;height:70px;padding:0 4%;display:flex}.brand{align-items:center;gap:11px;font-size:32px;font-weight:600;display:flex}.brand svg{color:var(--gold)}.room-title{color:#e4d9bf;font-size:14px}.invite-button{border:1px solid var(--line);background:#0b211b66;border-radius:3px;align-items:center;gap:8px;min-height:40px;margin-left:auto;padding:8px 12px;font-size:12px;display:flex}main{flex:1;width:min(1360px,94%);margin:auto;padding:28px 0}.room-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:28px;display:grid}.library{min-width:0}.library-toolbar{align-items:center;gap:16px;height:42px;margin:0 3% 10px;display:flex}.shelf-tabs{gap:20px;display:flex}.shelf-tabs button{white-space:nowrap;color:#c5c7b7;border-bottom:2px solid #0000;padding:10px 0;font-size:12px}.shelf-tabs button.active{color:#ffe2a1;border-color:var(--gold)}.shelf-tabs span{opacity:.7;margin-left:5px;font-size:10px}.search{background:#0d211b99;border-bottom:1px solid #ddc59080;border-radius:3px;align-items:center;gap:8px;max-width:220px;margin-left:auto;padding:9px 12px;display:flex}.search input{background:0 0;border:0;outline:none;width:100%;font-size:12px}.search input::placeholder{color:#c0c5b2}.search svg{color:#d7c59e;flex-shrink:0}.room-controls{text-shadow:0 2px 5px #000;background:radial-gradient(#0c211be8,#0000 75%);align-self:center;min-width:0;padding:24px 8px}h1{margin-bottom:22px;font-size:32px;font-weight:600;line-height:1.1}.room-form{gap:18px;display:grid}.room-form h1{margin-bottom:4px}.room-form label{gap:8px;font-size:12px;display:grid}.room-form input{background:#081c16d9;border:1px solid #c1a16c80;border-radius:3px;width:100%;min-height:44px;padding:11px;font-size:13px}.gold-button{color:#2c2419;width:100%;min-height:45px;text-shadow:none;background:linear-gradient(#ecd09b,#bc904e);border:1px solid #e2bc75;border-radius:3px;justify-content:center;align-items:center;gap:12px;padding:10px 12px;font-size:12px;font-weight:600;display:flex;box-shadow:0 3px #382714,0 5px 12px #0005}.gold-button:hover{filter:brightness(1.1)}.game-meta{color:#d0d0b9;margin:-12px 0 26px;font-size:11px;line-height:1.6}.seat-picker{border:0;border-top:1px solid var(--line);margin:0 0 20px;padding:15px 0 0}.seat-picker legend{padding-right:12px;font-size:12px}.seat-option{align-items:center;gap:9px;min-height:34px;font-size:12px;display:flex}.seat-option input{accent-color:#e9bf79;width:15px;height:15px}.hint{color:#d1d1bc;margin:14px 0;font-size:11px;line-height:1.6}.text-button{text-underline-offset:4px;color:#e5d3aa;min-height:36px;padding:8px 0;font-size:11px;text-decoration:underline}.table-players{margin-bottom:18px;font-size:12px}.tables{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}.tables h2{color:#d5c79e;margin-bottom:12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500}.table-row{margin-top:10px}.table-row strong{font-size:13px;font-weight:500}.table-row p{color:#c9c7b5;margin-top:5px;font-size:11px;line-height:1.6}.gathering{background:linear-gradient(90deg,#10261ee8,#10261eaa);border-top:1px solid #d1b07755;border-radius:3px;align-items:center;gap:20px;width:94%;max-width:1360px;margin:0 auto 18px;padding:14px 20px;display:flex}.friends{flex-wrap:wrap;flex:1;gap:22px;display:flex}.friend{align-items:center;gap:10px;display:flex}.friend strong{font-size:12px;font-weight:500;display:block}.friend small{color:#c0c2aa;margin-top:4px;font-size:10px;display:block}.avatar{color:#fbe4b8;background:#816042;border:2px solid #cba86f9c;border-radius:50%;place-items:center;width:36px;height:36px;font-family:Georgia,serif;font-size:20px;display:grid}.avatar-1{background:#5e7064}.avatar-2{background:#71637c}.avatar-3{background:#8c7051}.room-actions{gap:10px;display:flex}.room-actions button{border:1px solid var(--line);color:#e0d4b7;border-radius:3px;place-items:center;width:38px;height:38px;display:grid}.room-actions button:hover,.room-actions .pressed{background:#dcb37733}.chat-panel{z-index:10;background:#122a23;border:1px solid #c5a56c6b;border-radius:5px;width:330px;max-width:94%;position:fixed;bottom:105px;right:3%;overflow:hidden;box-shadow:0 12px 35px #0008}.chat-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.chat-heading h2{font:500 16px DM Sans,sans-serif}.chat-heading button{min-width:34px;min-height:34px;font-size:25px}.messages{max-height:230px;padding:0 17px 16px;overflow-y:auto}.messages p{overflow-wrap:anywhere;margin-top:16px;font-size:12px;line-height:1.6}.messages strong{color:#d2ba8a;font-size:10px;display:block}.messages span{color:#d4d7c2}.chat-panel form{border-top:1px solid var(--line);padding:10px;display:flex}.chat-panel input{background:0 0;border:0;flex:1;width:100%;padding:10px;font-size:12px}.chat-panel form button{color:#253122;background:#d9b477;border-radius:3px;width:44px}.error{background:#432e23eb;border:1px solid #e1ab6c70;border-radius:4px;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;padding:12px 18px;font-size:12px;line-height:1.6;display:flex}.error button{white-space:nowrap;min-height:34px;text-decoration:underline}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}@media (width<=1000px){.room-layout{grid-template-columns:minmax(0,1fr) 200px;gap:12px}.room-controls{padding:20px 4px}.library-toolbar{gap:10px}.search{max-width:160px}.shelf-tabs{gap:13px}}@media (width<=650px){.den{--scene-height:calc((120px + 64vw)/.77);background-image:linear-gradient(to bottom,#07181355,#10261c20 calc(var(--scene-height) - 100px),#15251c var(--scene-height)),url(/art/cozy-den.png);background-size:100% 100%,auto var(--scene-height);background-color:#15251c;background-position:top;background-repeat:no-repeat;background-attachment:scroll}.topbar{gap:10px;height:62px;padding:0 5%}.brand{gap:8px;font-size:28px}.brand svg{width:21px}.room-title{display:none}.invite-button{min-height:36px;padding:6px 9px;font-size:11px}main{width:96%;padding:14px 0 22px}.room-layout{grid-template-columns:1fr;gap:12px}.library-toolbar{gap:10px;margin:0 5% 10px}.shelf-tabs{gap:14px}.shelf-tabs button{font-size:11px}.shelf-tabs span{margin-left:3px}.search{max-width:140px;padding:8px}.search input{font-size:11px}.search svg{width:14px}.room-controls{text-shadow:none;background:linear-gradient(90deg,#0000,#0c211bdd 15% 85%,#0000);padding:18px 7%}.room-form{grid-template-columns:1fr 1fr;gap:14px}.room-form h1{grid-column:1/-1;margin:0;font-size:25px}.room-form .gold-button{grid-column:1/-1}.room-form:has(input[name=roomName]) label{grid-column:auto}.room-form:not(:has(input[name=roomName])) label{grid-column:1/-1}.room-controls h1{font-size:28px}.game-meta{margin-bottom:18px}.seat-picker{flex-wrap:wrap;column-gap:20px;display:flex}.gathering{gap:10px;margin-bottom:12px;padding:12px}.friends{gap:15px}.friend strong{font-size:11px}.friend small{font-size:9px}.avatar{width:32px;height:32px}.room-actions{flex-direction:column}.room-actions button{width:32px;height:32px}.chat-panel{bottom:18px;right:3%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.cabinet-stage{touch-action:pan-y pinch-zoom;filter:drop-shadow(0 16px 16px #0007);height:540px;min-height:360px;max-height:calc(100svh - 240px);position:relative}.cabinet-stage canvas{touch-action:pan-y pinch-zoom;display:block}.cabinet-message{text-align:center;text-shadow:0 2px 5px #000;font-size:13px;position:absolute;top:43%;left:20%;right:20%}.cabinet-loading{text-align:center;color:#ead8b4;pointer-events:none;font-size:11px;position:absolute;bottom:8%;left:0;right:0}.cabinet-keyboard{clip-path:inset(50%);width:1px;height:1px;position:absolute;bottom:18%;left:12%;right:12%;overflow:hidden}.cabinet-keyboard:focus-within,.cabinet-keyboard.fallback{clip-path:none;background:#132b23f2;border:1px solid #cba66a;flex-wrap:wrap;gap:8px;width:auto;height:auto;padding:12px;display:flex}.cabinet-keyboard button{border:1px solid #cba66a70;border-radius:2px;padding:8px;font-size:12px}.cabinet-keyboard button[aria-pressed=true]{color:#ffdc95;background:#d7b27320}.cabinet-stage:focus-visible{outline-offset:4px;outline:2px solid #eac17b}@media (width<=650px){.cabinet-stage{height:390px;min-height:390px;max-height:none;margin:0 -2%}.cabinet-loading{bottom:1%}}@media (width>=651px){.den{--wall-floor:calc(50svh + max(26svh,14.64vw))}main{align-items:flex-start;display:flex}.room-layout{align-items:start;width:100%}.library{container-type:inline-size}.cabinet-stage{width:80%;height:55.1724cqw;min-height:0;max-height:none;margin-left:18%;margin-top:max(0px,calc(var(--wall-floor) - 150px - 80cqw / 1.45 * .958))}}@media (width<=650px){.den{--scene-height:526px}}
