@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(../media/source-sans-3-cyrillic-ext-400-normal.2e-_y_uwqv7f7.woff2)format("woff2"),url(../media/source-sans-3-cyrillic-ext-400-normal.023p8_ziywxmz.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(../media/source-sans-3-cyrillic-400-normal.3y-wbkz85mts9.woff2)format("woff2"),url(../media/source-sans-3-cyrillic-400-normal.0b7vwgh_xfk8w.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(../media/source-sans-3-greek-ext-400-normal.3o3h-y653ipo6.woff2)format("woff2"),url(../media/source-sans-3-greek-ext-400-normal.3jiyjnebytj3c.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(../media/source-sans-3-greek-400-normal.2bd6x1ofvxdgc.woff2)format("woff2"),url(../media/source-sans-3-greek-400-normal.40djrq0_6-436.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(../media/source-sans-3-vietnamese-400-normal.3gm41f9x87yvz.woff2)format("woff2"),url(../media/source-sans-3-vietnamese-400-normal.3puc5203tf-pg.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(../media/source-sans-3-latin-ext-400-normal.1a6_tkwppa6ku.woff2)format("woff2"),url(../media/source-sans-3-latin-ext-400-normal.3cy-0he0n9qly.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(../media/source-sans-3-latin-400-normal.1h1rt903zk-ir.woff2)format("woff2"),url(../media/source-sans-3-latin-400-normal.32x8nn8azcbel.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(../media/source-sans-3-cyrillic-ext-600-normal.3_upuse2s07nv.woff2)format("woff2"),url(../media/source-sans-3-cyrillic-ext-600-normal.06ikj85xdvqcu.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(../media/source-sans-3-cyrillic-600-normal.3gnsw6qyh404u.woff2)format("woff2"),url(../media/source-sans-3-cyrillic-600-normal.0ppnqojh_wtkw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(../media/source-sans-3-greek-ext-600-normal.0sxmhzwi0gxqy.woff2)format("woff2"),url(../media/source-sans-3-greek-ext-600-normal.3evwscyoup01_.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(../media/source-sans-3-greek-600-normal.2gp4_34irwa1c.woff2)format("woff2"),url(../media/source-sans-3-greek-600-normal.1ec1r58kgnu5e.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(../media/source-sans-3-vietnamese-600-normal.02uxao3_po_81.woff2)format("woff2"),url(../media/source-sans-3-vietnamese-600-normal.41b9mwn7su825.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(../media/source-sans-3-latin-ext-600-normal.214x-yfi_sjxa.woff2)format("woff2"),url(../media/source-sans-3-latin-ext-600-normal.30ko6avm8zjn1.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:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(../media/source-sans-3-latin-600-normal.3s8u80raf8n99.woff2)format("woff2"),url(../media/source-sans-3-latin-600-normal.23phpl45324hp.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:Bitter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/bitter-cyrillic-ext-600-normal.2tnc70-yvkpr2.woff2)format("woff2"),url(../media/bitter-cyrillic-ext-600-normal.040-s7kaka-v4.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:Bitter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/bitter-cyrillic-600-normal.2cney5qqcn577.woff2)format("woff2"),url(../media/bitter-cyrillic-600-normal.3-x_6e311ha0x.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Bitter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/bitter-vietnamese-600-normal.2eqlubqhuxrj-.woff2)format("woff2"),url(../media/bitter-vietnamese-600-normal.14gbjn4q89ba0.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:Bitter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/bitter-latin-ext-600-normal.0zczfu3s9h3qk.woff2)format("woff2"),url(../media/bitter-latin-ext-600-normal.0t-uxme5lj1oe.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:Bitter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/bitter-latin-600-normal.2n-mm_o28-c25.woff2)format("woff2"),url(../media/bitter-latin-600-normal.0rzb8ozk_lh8h.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}
@layer theme{:root,:host{--font-sans:"Source Sans 3", "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:"Source Sans 3", "Segoe UI", sans-serif;--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.table{display:table}.table-column{display:table-column}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1e1b18;--surface:#272320;--surface-2:#332d28;--line:#423a33;--text:#efe7da;--text-dim:#a3968a;--accent:#7a9e4b;--accent-hover:#8fb45a;--accent-ink:#14180e;--accent-control:var(--accent);--accent-control-hover:var(--accent-hover);--gold:#c9a227;--danger:#a83a2c;--felt:#2f4a36}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#ede4d3;--surface:#fffdf7;--surface-2:#f4ede0;--line:#d6c9b4;--text:#2a241e;--text-dim:#6f6355;--accent:#5f8238;--accent-hover:#6f9743;--accent-ink:#fff;--accent-control:#557532;--accent-control-hover:#5b7c35;--gold:#a07c12;--danger:#8e2e22;--felt:#35513c}:root{--rarity-common:#9a8f82;--rarity-fine:#4e8a7b;--rarity-rare:#3c6fa8;--rarity-masterwork:#8657a8;--rarity-relic:#c9a227;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-sm:2px;--radius-md:4px;--radius-lg:6px}*{box-sizing:border-box}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.2}h1{font-family:Bitter,Georgia,serif;font-size:26px;font-weight:600}h2{font-size:20px;font-weight:600}h3{font-size:16px}svg{stroke-width:1.5px;flex-shrink:0;width:20px;height:20px}button{color:inherit}kbd{border:1px solid var(--line);white-space:nowrap;border-radius:2px;padding:0 4px;font:12px/1.4 "Source Sans 3",sans-serif}strong{font-weight:600}small{font-size:12px}.muted{color:var(--text-dim)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface);padding:12px 16px;position:fixed;top:-80px;left:80px}.skip-link:focus{top:8px}.button{border:1px solid var(--line);background:var(--surface-2);min-height:44px;color:var(--text);border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:16px;font-weight:600;line-height:1.4;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--surface)}.button-primary{background:var(--accent-control);border-color:var(--accent-control);color:var(--accent-ink)}.button-primary:hover:not(:disabled){background:var(--accent-control-hover);border-color:var(--accent-control-hover)}.button-quiet{background:0 0;border-color:#0000;padding:8px;font-size:14px}.button-danger{background:var(--danger);border-color:var(--danger);color:#fff}.button:disabled{opacity:.45}.button kbd{opacity:1;border-color:currentColor;margin-left:auto;font-weight:400}.button[aria-pressed=true]{border-color:var(--accent);background:var(--surface-2);outline:2px solid var(--accent);outline-offset:-3px}.icon-button{background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--surface-2)}.icon-button:disabled{opacity:.4}.text-button{background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:8px;font-size:14px;display:inline-flex}.text-button:hover{text-decoration:underline}.text-link{text-underline-offset:4px;font-size:14px;text-decoration:underline}.card{background:var(--surface);border:1px solid var(--line);border-radius:6px}.page{max-width:1560px;margin:0 auto;padding:24px}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-heading p{color:var(--text-dim);margin-top:8px;font-size:16px}.panel-heading{justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.panel-heading p{color:var(--text-dim);margin-top:4px;font-size:14px}.panel-heading>svg{color:var(--text-dim)}.app-shell{--rail-width:240px;min-height:100vh}.app-shell.nav-collapsed{--rail-width:68px}.nav-rail{width:var(--rail-width);color:#efe7da;z-index:20;background:#191715;border-right:1px solid #423a33;flex-direction:column;padding:24px 0 12px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;height:40px;padding:0 24px;font-family:Bitter,Georgia,serif;font-size:26px;font-weight:600;line-height:1.2;text-decoration:none;display:flex}.brand-mark{color:#c9a227;stroke-width:1.5px;width:32px;height:32px}.rail-caption{color:#a3968a;margin:8px 24px 24px;font-size:13px}.nav-item{width:100%;height:48px;color:inherit;text-align:left;white-space:nowrap;background:0 0;border:0;border-left:3px solid #0000;align-items:center;gap:16px;padding:0 24px;font-size:16px;text-decoration:none;display:flex}.nav-item.active{background:#332d28;border-left-color:#7a9e4b;font-weight:600}.nav-item:is(a,button):hover{background:#272320}.nav-item.planned{color:#9e948a;cursor:default}.rail-bottom{margin-top:auto;padding-top:24px}.local-identity{border-top:1px solid #423a33;align-items:center;gap:12px;padding:16px 24px;display:flex}.local-identity>svg{color:#c9a227;width:28px;height:28px}.local-identity strong{font-size:14px}.local-identity small{color:#a3968a;display:block}.rail-footnote{color:#a3968a;padding:12px 24px;font-size:12px}.nav-collapsed .nav-item{justify-content:center;padding:0}.nav-collapsed .nav-item span,.nav-collapsed .brand span,.nav-collapsed .rail-caption,.nav-collapsed .local-identity,.nav-collapsed .rail-footnote{display:none}.nav-collapsed .brand{justify-content:center;margin-bottom:24px;padding:0}.app-body{margin-left:var(--rail-width);min-width:0}.topbar{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;height:64px;padding:0 24px;display:flex}.search-trigger{width:280px;min-height:36px;color:var(--text-dim);background:var(--bg);border:1px solid var(--line);border-radius:4px;align-items:center;gap:12px;padding:4px 12px;font-size:14px;display:flex}.search-trigger kbd{margin-left:auto}.topbar-right{align-items:center;gap:16px;font-size:14px;display:flex}.local-tag{color:var(--text-dim)}.currency,.coffers-count{align-items:center;gap:8px;display:flex}.currency svg{color:var(--gold)}.coffers-count svg{color:var(--text-dim)}.avatar-button{background:var(--surface-2);border:1px solid var(--line);width:36px;height:36px;color:var(--gold);border-radius:4px;place-items:center;display:grid}.notice{background:var(--surface-2);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;font-size:14px;display:flex}.format-tag,.format-line>span{color:var(--text-dim);align-items:center;gap:8px;font-size:14px;display:flex}.lobby-grid{grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:24px;display:grid}.play-panel{overflow:hidden}.format-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-2);gap:24px;padding:12px 16px;display:flex}fieldset{border:0;margin:0 0 24px;padding:0}legend{margin-bottom:12px;font-weight:600}.opponent-list{margin:0}.opponent-row{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;min-height:72px;padding:12px 16px;display:flex;position:relative}.opponent-row:hover,.opponent-row.chosen{background:var(--surface-2)}.opponent-row.chosen:before{content:"";background:var(--accent);width:3px;position:absolute;inset:0 auto 0 0}.opponent-row input{accent-color:var(--accent);width:16px;height:16px;margin:0}.level-seal{border:1px solid var(--line);background:var(--bg);width:36px;height:40px;font-family:var(--font-sans);color:var(--gold);border-radius:4px;place-items:center;font-size:20px;display:grid}.opponent-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.opponent-copy strong{font-size:16px}.opponent-copy>span{color:var(--text-dim);font-size:13px}.opponent-row>svg{width:16px;height:16px;color:var(--text-dim)}.play-footer{padding:16px}.play-footer>.button{width:100%;min-height:48px}.play-footer>p{color:var(--text-dim);margin-top:12px;font-size:13px}.lobby-aside{flex-direction:column;gap:16px;display:flex}.record-card,.resume-card,.recent-card{padding:16px}.record-card header{align-items:center;gap:12px;display:flex}.record-card header>svg{color:var(--gold)}.record-stats{grid-template-columns:repeat(3,1fr);padding:24px 0 16px;display:grid}.record-stats>div{border-right:1px solid var(--line);flex-direction:column;padding-left:16px;display:flex}.record-stats>div:first-child{padding-left:0}.record-stats>div:last-child{border:0}.record-stats strong{font-size:26px;line-height:1.2}.record-stats span{color:var(--text-dim);margin-top:4px;font-size:13px}.recent-card h2{margin-bottom:16px}.empty-copy{color:var(--text-dim);font-size:14px;line-height:1.5}.recent-list{margin:0;padding:0;list-style:none}.recent-list li{border-top:1px solid var(--line);align-items:center;gap:12px;padding:8px 0;display:flex}.recent-list button{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;min-height:44px;padding:4px 0;display:flex}.recent-list button span{color:var(--text-dim);font-size:13px}.result-mark{border:1px solid var(--line);place-items:center;min-width:24px;min-height:24px;font-size:13px;display:grid}.win{background:var(--accent);color:var(--accent-ink)}.loss{background:var(--surface-2);color:var(--text-dim)}.lobby-dice{justify-content:center;gap:12px;padding:24px 16px 8px;display:flex}.lobby-dice .die-art{width:72px;height:72px}.lobby-dice .die-art:nth-child(2){transform:rotate(8deg)translateY(12px)}.lobby-dice .die-art:first-child{transform:rotate(-8deg)}.device-note{color:var(--text-dim);text-align:center;padding:8px 16px;font-size:13px}.resume-card{border-left:3px solid var(--accent)}.resume-card p{color:var(--text-dim);margin-top:8px;font-size:14px}.resume-score{align-items:center;gap:12px;padding:12px 0;font-size:26px;display:flex}.resume-score span{color:var(--text-dim);font-size:13px}.resume-card .button{width:100%}.game-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.breadcrumb{color:var(--text-dim);margin-bottom:8px;font-size:13px;text-decoration:none;display:inline-block}.breadcrumb:hover{text-decoration:underline}.game-tools{gap:4px;display:flex}.game-layout{grid-template:"table scores""table side"1fr/minmax(0,1fr) 300px;align-items:start;gap:12px 24px;display:grid}.table-column{grid-area:table;min-width:0}.scoreboard{border:1px solid var(--line);background:var(--surface);border-radius:4px;grid-area:scores;min-width:0;overflow:hidden}.scoreboard-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.scoreboard-heading h2{font:inherit;font-weight:600}.scoreboard-heading>span{color:var(--text-dim);font-size:13px}.scoreboard-players{display:grid}.player-strip{background:var(--surface);border-left:3px solid #0000;align-items:center;gap:12px;min-height:88px;padding:12px 12px 12px 9px;display:flex}.player-strip+.player-strip{border-top:1px solid var(--line)}.active-player{border-left-color:var(--accent);background:var(--surface-2)}.heraldry{border:1px solid var(--line);background:var(--surface-2);width:44px;height:48px;color:var(--gold);border-radius:4px;flex-shrink:0;place-items:center;display:grid;position:relative}.heraldry>svg{width:32px;height:36px}.opponent-heraldry{color:#d9caa5;background:#414036}.heraldry-device{font:20px Georgia,serif;position:absolute;top:9px;left:16px}.player-name{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.player-name strong{font-size:16px;line-height:1.2}.player-name span{color:var(--text-dim);font-size:13px}.clock{border:1px solid var(--line);background:var(--bg);color:var(--text-dim);white-space:nowrap;border-radius:2px;justify-content:center;align-items:center;gap:8px;padding:8px;font-size:13px;display:flex}.clock svg{width:16px;height:16px}.banked-score{flex-direction:column;align-items:flex-end;min-width:72px;display:flex}.banked-score>span{color:var(--text-dim);font-size:12px}.banked-score>strong{font-variant-numeric:tabular-nums;font-size:34px;line-height:1.2}.keep-rail{border:1px solid var(--line);background:var(--surface);border-radius:4px;justify-content:space-between;align-items:center;gap:12px;min-height:100px;margin:0 0 12px;padding:12px 16px;display:flex}.kept-area{flex:1;min-width:0}.rail-label{color:var(--text-dim);margin-bottom:8px;font-size:12px;display:block}.kept-dice{flex-wrap:wrap;align-items:center;gap:4px;min-height:40px;display:flex}.kept-dice>div{width:36px;height:36px}.kept-dice .die-art{width:100%;height:100%}.kept-dice .muted{font-size:13px}.turn-chip{flex-direction:column;align-items:flex-end;min-width:72px;display:flex}.turn-chip>span:first-child{color:var(--text-dim);font-size:12px}.turn-chip>strong{font-size:26px;line-height:1.2}.turn-chip .selection-value{color:var(--accent-hover);font-size:14px}.turn-chip.lost strong{color:var(--danger-text,#ed9183);text-decoration:line-through}.felt{outline:1px solid var(--line);outline-offset:-1px;background:var(--felt);color:#f5eedf;border:8px solid #514134;border-radius:6px;flex-direction:column;justify-content:space-between;min-height:340px;margin-bottom:12px;padding:16px 16px 12px;display:flex;position:relative;overflow:hidden}.felt:before{content:"";pointer-events:none;opacity:.45;border:1px solid #718264;border-radius:2px;position:absolute;inset:8px}.table-inscription{color:#d9dfcf;z-index:1;justify-content:space-between;align-items:center;padding:0 4px;font-size:12px;display:flex}.table-inscription span:first-child{font-family:Bitter,Georgia,serif;font-size:14px}.table-prompt{z-index:1;text-align:center;min-height:72px;padding-top:16px}.table-prompt h2{font-size:20px;display:inline}.table-prompt p{color:#d9dfcf;margin-top:8px;font-size:13px}.table-prompt>svg{color:#e5c36c;width:28px;height:28px;margin:0 auto 8px;display:block}.turn-indicator{background:#c6bca9;border-radius:2px;width:6px;height:6px;margin:0 8px 3px 0;display:inline-block}.your-turn{background:#a6c474}.dice-tray{z-index:1;grid-template-columns:repeat(6,minmax(0,88px));justify-content:center;align-items:start;gap:8px;padding:32px 0 16px;display:grid}.die-slot{--delay:0s;flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex}.slot-1{--delay:40ms}.slot-2{--delay:80ms}.slot-3{--delay:.12s}.slot-4{--delay:.16s}.slot-5{--delay:.2s}.die-button{aspect-ratio:1;background:0 0;border:2px solid #0000;border-radius:6px;width:100%;max-width:88px;padding:0;transition:transform 80ms,border-color 80ms;display:block;position:relative}.die-art{width:100%;height:100%;display:block;overflow:visible}.die-button:disabled{opacity:1}.die-button:not(:disabled):hover{border-color:#a6c474}.die-button.selected{border-color:#a6c474;transform:translateY(-6px)}.selected-check{color:#14180e;background:#7a9e4b;border:1px solid #d1e3b5;border-radius:4px;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:-7px;right:-5px}.selected-check svg{stroke-width:2px;width:16px;height:16px}.die-slot>kbd{color:#e3e8dc;border-color:#79866e;font-size:12px}.face-final{width:100%;height:100%;display:block}.roll-cycle{animation:cycle-hide .32s steps(1, end) var(--delay) both;position:absolute;inset:0;overflow:hidden}.roll-cycle>span{height:300%;animation:face-cycle .32s steps(3, end) var(--delay) both;flex-direction:column;display:flex}.roll-cycle .die-art{flex-shrink:0;height:33.333%}.rolling .die-button{animation:roll-jitter .32s steps(3, end) var(--delay) both, roll-settle .12s ease-out calc(var(--delay) + .32s) forwards}.rolling .face-final{animation:face-show .32s steps(1, end) var(--delay) both}.felt-footer{color:#d9dfcf;z-index:1;justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.felt-footer span:first-child{align-items:center;gap:4px;display:flex}.felt-footer svg{width:14px;height:14px}.felt.busted:after{content:"";background:var(--danger);opacity:0;pointer-events:none;animation:.8s ease-out bust-sweep;position:absolute;inset:0}.busted .table-prompt h2{color:#fff4ee}.table-bottom{color:var(--text-dim);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}.table-bottom>span{align-items:center;gap:8px;display:flex}.table-bottom svg{width:16px;height:16px}.game-side{flex-direction:column;grid-area:side;align-self:stretch;gap:12px;display:flex}.log-panel{overflow:hidden}.log-panel .panel-heading{padding:8px 12px}.log-panel h2{font-size:16px}.turn-scroll{min-height:132px;max-height:340px;overflow:auto}.turn-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:14px}.turn-table th,.turn-table td{border-bottom:1px solid var(--line);vertical-align:top;text-align:left;padding:8px}.turn-table thead{background:var(--surface-2);z-index:2;position:sticky;top:0}.turn-table thead th{color:var(--text-dim);font-size:12px;font-weight:400}.turn-table th:first-child{text-align:center;width:44px;color:var(--text-dim);font-weight:400}.turn-table .current-turn{background:var(--surface-2)}.turn-detail summary{cursor:pointer;justify-content:space-between;align-items:center;gap:4px;min-height:28px;list-style:none;display:flex}.turn-detail summary::-webkit-details-marker{display:none}.turn-detail summary svg{width:12px;height:12px;color:var(--text-dim)}.turn-detail[open] summary svg{transform:rotate(180deg)}.throw-list{color:var(--text-dim);padding-top:8px;font-size:12px}.throw-list p{flex-direction:column;margin-bottom:8px;display:flex}.throw-list strong{color:var(--text);white-space:normal;font-family:ui-monospace,monospace;font-size:12px}.bust-label{color:var(--danger-text,#ed9183)}.log-caption{color:var(--text-dim);padding:12px;font-size:12px}.chat-panel{border-top:1px solid var(--line);padding:12px}.chat-panel summary{cursor:pointer;align-items:center;gap:8px;min-height:28px;font-size:14px;list-style:none;display:flex}.chat-panel summary>svg:last-child{width:14px;margin-left:auto}.chat-panel>p{margin:8px 0;font-size:12px}.chat-messages{font-size:13px}.chat-messages p{margin:8px 0}.preset-buttons{flex-wrap:wrap;gap:4px;display:flex}.preset-buttons .button{min-height:36px;padding:4px;font-size:12px}.action-panel{background:var(--surface);border:1px solid var(--line);border-radius:4px;flex-direction:column;gap:8px;margin-top:auto;padding:12px;display:flex;position:sticky;bottom:16px}.action-panel>.button{width:100%;min-height:48px}.roll-button{text-transform:uppercase}.roll-button kbd{text-transform:none}.selection-tools{justify-content:space-between;align-items:center;min-height:44px;display:flex}.selection-tools>.button{font-weight:400}.selection-tools>p{font-size:13px}.hint-mark{border:1px solid var(--text-dim);border-radius:2px;width:18px;height:18px;font-family:Georgia,serif;font-size:16px;line-height:16px}.action-reason{text-align:center;min-height:40px;color:var(--text-dim);padding:4px;font-size:13px;line-height:1.4}.sheet-toggle{display:none}.empty-game{max-width:640px;padding:32px}.empty-game>svg{width:48px;height:48px;color:var(--gold);margin-bottom:16px}.empty-game p{margin-bottom:24px}.dialog{border:1px solid var(--line);background:var(--surface);width:calc(100% - 32px);max-width:560px;max-height:calc(100dvh - 48px);color:var(--text);border-radius:6px;padding:0;box-shadow:0 4px 16px #0006}.dialog::backdrop{background:#0009}.dialog-heading{border-bottom:1px solid var(--line);background:var(--surface);z-index:1;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;top:0}.dialog-heading h2{font-size:20px}.dialog-body{padding:24px}.dialog-body p{margin-bottom:16px}.dialog-body .muted{font-size:14px}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.segmented{gap:8px;display:flex}.field-label{margin-bottom:8px;font-size:14px;display:block}input[type=search],textarea{border:1px solid var(--line);background:var(--bg);width:100%;min-height:44px;color:var(--text);border-radius:4px;padding:8px 12px}textarea{resize:vertical}.search-results{flex-direction:column;margin-top:16px;display:flex}.search-results>a,.search-results>button{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;min-height:44px;padding:12px;text-decoration:none}.search-results>a:hover,.search-results>button:hover{background:var(--surface-2)}.material-options{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.material-options button{background:var(--bg);border:1px solid var(--line);border-radius:4px;flex-direction:column;align-items:center;gap:8px;min-width:0;padding:8px 4px;font-size:12px;display:flex}.material-options button[aria-pressed=true]{border:2px solid var(--accent);padding:7px 3px}.material-options .die-art{width:48px;height:48px}.check-label{align-items:center;gap:12px;min-height:44px;margin-bottom:16px;display:flex}.check-label input{accent-color:var(--accent);width:18px;height:18px}.rules ol{margin:16px 0;padding-left:24px;font-size:14px}.rules li{padding:4px 0}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table caption{text-align:left;margin:16px 0 8px;font-size:16px;font-weight:600}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;padding:12px 8px}.data-table tbody th{font-weight:400}.data-table td{text-align:right;font-variant-numeric:tabular-nums}.data-table thead{background:var(--surface-2)}.shortcut-list{margin:0}.shortcut-list>div{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:8px 0;display:flex}.shortcut-list dt{width:64px}.shortcut-list dd{margin:0;font-size:14px}.profile-identity{align-items:center;gap:16px;display:flex}.large-heraldry{background:var(--surface-2);border:1px solid var(--line);width:64px;height:72px;color:var(--gold);border-radius:4px;place-items:center;display:grid}.large-heraldry svg{width:40px;height:48px}.profile-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.profile-stats>.card{flex-direction:column;gap:4px;padding:16px;display:flex}.profile-stats strong{font-size:26px;line-height:1.2}.profile-stats span{color:var(--text-dim);font-size:13px}.profile-grid{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:24px;display:grid}.profile-grid>.card{min-width:0;padding:16px}.profile-grid h2{margin-bottom:16px}.profile-grid p{margin:16px 0;font-size:14px}.profile-dice{gap:8px;padding:16px 0;display:flex}.profile-dice .die-art{width:64px;height:64px}.table-scroll{overflow:auto}.positive{color:var(--accent-hover)}:root[data-theme=light]{--danger-text:#8e2e22}:root[data-theme=light] .positive,:root[data-theme=light] .selection-value{color:#456423}@keyframes roll-jitter{0%{transform:translate(-2px,2px)rotate(-5deg)}33%{transform:translate(3px,-2px)rotate(6deg)}66%{transform:translate(-1px,-3px)rotate(-3deg)}to{transform:translate(0)rotate(0)}}@keyframes roll-settle{0%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes face-cycle{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes cycle-hide{0%{visibility:visible}to{visibility:hidden}}@keyframes face-show{0%{visibility:hidden}to{visibility:visible}}@keyframes bust-sweep{0%{opacity:.6;transform-origin:0;transform:scaleX(0)}35%{opacity:.35;transform-origin:0;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}@keyframes snap-flash{0%{opacity:.55}to{opacity:1}}@media (min-width:1051px){.game-side{height:max(390px,100dvh - 410px)}.game-side .log-panel{flex:1;min-height:0;overflow:auto}.game-side .turn-scroll{min-height:80px;max-height:none;overflow:visible}.game-side .action-panel{flex-shrink:0;margin-top:0;position:static}}@media (min-width:1600px){.game-layout{grid-template-columns:minmax(0,1fr) 340px}.felt{min-height:420px}.dice-tray{gap:16px}}@media (max-width:1200px){.app-shell{--rail-width:68px}.nav-item{justify-content:center;padding:0}.nav-item span,.brand span,.rail-caption,.local-identity,.rail-footnote,.collapse-nav{display:none}.brand{justify-content:center;margin-bottom:24px;padding:0}.game-layout{grid-template-columns:minmax(0,1fr) 280px;gap:16px}.dice-tray{gap:4px}.clock{display:none}.page{padding:24px 16px}.topbar{padding:0 16px}}@media (max-width:1050px){.game-layout{grid-template:"scores""table""side"/minmax(0,1fr)}.scoreboard-players{grid-template-columns:repeat(2,minmax(0,1fr))}.player-strip+.player-strip{border-top:0;border-left:1px solid var(--line)}.player-strip{border-bottom:3px solid #0000;border-left:0}.active-player{border-bottom-color:var(--accent)}.game-side{grid-template-columns:minmax(0,1fr) 280px;align-items:start;display:grid}.action-panel{margin-top:0;position:static}.sheet-toggle{background:var(--surface);border:0;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:12px;font-size:14px;font-weight:600;display:flex}.sheet-content{display:none}.sheet-open .sheet-content{display:block}.log-panel .panel-heading{border-top:1px solid var(--line)}.dice-tray{gap:12px}.felt{min-height:340px}.clock{display:flex}.lobby-grid{grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:16px}}@media (max-width:768px){.lobby-grid,.profile-grid{grid-template-columns:minmax(0,1fr)}.lobby-aside{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.lobby-dice,.device-note{display:none}.resume-card{grid-column:1/-1}.search-trigger{width:200px}.local-tag{display:none}.topbar-right{gap:8px}.page-heading{align-items:flex-start}.format-tag{display:none}.profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-identity h1{font-size:20px}.profile-page .page-heading{flex-direction:column}.game-side{grid-template-columns:minmax(0,1fr)}.game-page{padding-bottom:240px}.game-side .log-panel{z-index:11;border-radius:0;position:fixed;bottom:160px;left:68px;right:0}.sheet-toggle{min-height:44px;padding:8px 12px}.sheet-open .sheet-content{max-height:45vh;overflow-y:auto}.action-panel{z-index:10;padding:8px 12px calc(8px + env(safe-area-inset-bottom));height:160px;box-shadow:none;border-left:0;border-right:0;border-radius:0;grid-template-rows:36px 48px 36px;grid-template-columns:1fr 1.3fr;gap:8px;display:grid;position:fixed;bottom:0;left:68px;right:0}.action-panel>.button{min-height:48px}.selection-tools{grid-column:1/-1;min-height:36px}.selection-tools .icon-button,.selection-tools>.button{height:36px;min-height:36px}.action-reason{grid-column:1/-1;min-height:24px;padding:0;font-size:12px}.action-panel .button kbd{display:none}.game-heading h1{font-size:20px}.dice-tray{gap:8px}.felt{border-width:6px;padding:12px 12px 8px}.player-strip{gap:8px}.banked-score{min-width:72px}.banked-score strong{font-size:26px}.clock{display:none}}@media (max-width:540px){.topbar{gap:8px;height:56px;padding:0 12px}.search-trigger{background:0 0;border:0;width:36px;height:36px;min-height:36px;padding:7px}.search-trigger span,.search-trigger kbd,.coffers-count{display:none}.topbar-right{gap:8px}.topbar-right>.icon-button{width:36px;height:36px}.currency{gap:4px;font-size:13px}.page{padding:16px 12px}.page-heading{margin-bottom:16px}.page-heading h1{font-size:26px}.page-heading p{font-size:14px}.nav-rail{padding-top:16px}.brand{margin-bottom:24px}.nav-item{height:48px}.nav-item svg{width:20px;height:20px}.lobby-aside{display:flex}.opponent-row{gap:8px;padding:12px}.opponent-row>svg{display:none}.level-seal{width:28px;height:36px;font-size:16px}.opponent-copy>span{font-size:12px}.opponent-copy>strong{font-size:14px}.format-line{gap:12px;padding:12px}.format-line>span{gap:4px;font-size:12px}.play-footer,.panel-heading{padding:12px}.panel-heading h2{font-size:16px}.panel-heading>svg{display:none}.play-footer>.button{font-size:14px}.game-page{padding:12px 12px 240px}.game-heading{gap:4px}.game-heading h1{font-size:20px}.game-tools{gap:0}.game-tools .icon-button{width:32px}.breadcrumb{font-size:12px}.player-strip{grid-template-columns:minmax(0,1fr) auto;gap:4px;min-height:96px;padding:8px;display:grid}.scoreboard-heading{padding:4px 8px}.player-strip .heraldry{display:none}.player-name{grid-column:1/-1;align-self:start}.player-name strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.heraldry{width:32px;height:40px}.heraldry>svg{width:26px;height:28px}.heraldry-device{top:6px;left:11px}.player-name strong{overflow-wrap:anywhere;font-size:14px}.player-name span{font-size:12px}.banked-score{flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:baseline;min-width:0}.banked-score strong{font-size:26px}.banked-score>span{font-size:12px}.keep-rail{gap:8px;min-height:80px;padding:8px}.kept-dice>div{width:28px;height:28px}.kept-dice{gap:2px;min-height:28px}.kept-dice .muted{font-size:12px}.turn-chip{min-width:52px}.turn-chip>strong{font-size:20px}.turn-chip>span:first-child{font-size:12px}.felt{border-width:4px;min-height:300px;padding:12px 8px 8px}.table-inscription{font-size:12px}.table-prompt{min-height:64px;padding-top:8px}.table-prompt h2{font-size:16px}.table-prompt p{max-width:220px;margin:8px auto 0;font-size:12px}.dice-tray{grid-template-columns:repeat(3,64px);gap:12px 8px;padding:8px 0}.die-slot{gap:4px}.die-slot>kbd{display:none}.table-bottom{align-items:flex-start;font-size:12px}.table-bottom>span{gap:4px;max-width:150px;line-height:1.4}.table-bottom .text-button{min-height:28px;padding:0;font-size:12px}.table-bottom svg{width:14px;height:14px}.action-panel{grid-template-columns:1fr 1.15fr;gap:8px;padding:8px}.action-panel>.button{gap:4px;padding:8px;font-size:14px}.action-panel>.button svg{width:18px}.selection-tools .button{font-size:13px}.dialog-body{padding:16px}.dialog-heading h2{font-size:20px}.material-options{gap:4px}.material-options .die-art{width:40px;height:40px}.profile-stats{gap:8px}.profile-stats>.card{padding:12px}.profile-stats strong{font-size:20px}.large-heraldry{width:48px;height:56px}.profile-dice .die-art{width:56px;height:56px}.data-table{font-size:13px}.data-table td,.data-table th{padding:8px 4px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.rolling .die-button{animation:80ms linear snap-flash}.rolling .roll-cycle{display:none}.rolling .face-final{visibility:visible;animation:none}.felt.busted:after{animation:none}.die-button.selected{transform:translateY(-6px)}}.game-page[data-game-phase=over] .table-prompt h2{font-family:Bitter,Georgia,serif}@media (max-width:768px){html{scroll-padding-bottom:216px}}:root{--font-sans:"Source Sans 3", "Segoe UI", sans-serif;--font-display:"Bitter", Georgia, serif}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-variant-numeric:tabular-nums;margin:0;font-size:16px;line-height:1.5}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
