.hub-top-vote-label{color:var(--hub-warning);align-items:center;gap:6px;font-size:.84rem;font-weight:720;display:inline-flex}.hub-random-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0d0cbd;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:auto}.hub-random-panel{border:1px solid var(--hub-border);background:var(--hub-surface);width:min(760px,100%);color:var(--hub-text);border-radius:12px;padding:30px;overflow:hidden;box-shadow:0 24px 70px #0000004d}.hub-random-eyebrow{color:var(--hub-accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:800}.hub-random-panel h2{margin:0;font-size:clamp(1.55rem,4vw,2.15rem);line-height:1.12}.hub-random-copy{color:var(--hub-muted);margin:10px 0 0;line-height:1.55}.hub-random-candidates{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.hub-random-candidates span{border:1px solid var(--hub-border);background:var(--hub-surface-subtle);border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:680}.hub-random-reel{border-top:1px solid var(--hub-border);border-bottom:1px solid var(--hub-border);background:var(--hub-surface-subtle);height:190px;margin:28px -30px 0;position:relative;overflow:hidden}.hub-random-reel:before,.hub-random-reel:after{z-index:2;content:"";pointer-events:none;width:15%;position:absolute;top:0;bottom:0}.hub-random-reel:before{background:linear-gradient(90deg, var(--hub-surface-subtle), transparent);left:0}.hub-random-reel:after{background:linear-gradient(270deg, var(--hub-surface-subtle), transparent);right:0}.hub-random-reel-marker{z-index:4;background:var(--hub-accent);width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-1px)}.hub-random-reel-marker:before,.hub-random-reel-marker:after{content:"";border-left:7px solid #0000;border-right:7px solid #0000;width:0;height:0;position:absolute;left:50%;transform:translate(-50%)}.hub-random-reel-marker:before{border-top:10px solid var(--hub-accent);top:0}.hub-random-reel-marker:after{border-bottom:10px solid var(--hub-accent);bottom:0}.hub-random-reel-track{will-change:transform;gap:12px;width:max-content;margin-left:calc(50% - 88px);padding-top:25px;display:flex}.hub-random-reel-track[data-running=true]{transition:transform 2.75s cubic-bezier(.12,.74,.14,1)}.hub-random-reel-card{box-sizing:border-box;border:1px solid var(--hub-border);background:var(--hub-surface);text-align:center;border-radius:10px;flex:0 0 176px;grid-template-rows:1fr auto;place-items:center;width:176px;height:138px;padding:17px 14px;display:grid;box-shadow:0 8px 24px #00000014}.hub-random-reel-icon{border:1px solid var(--hub-border);background:var(--hub-surface-subtle);width:58px;height:58px;color:var(--hub-accent);border-radius:10px;place-items:center;display:grid}.hub-random-reel-card strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.92rem;overflow:hidden}.hub-random-die{border:1px solid var(--hub-border);background:#151917;border-radius:10px;height:330px;margin:24px -8px 0;overflow:hidden}.hub-random-die canvas{width:100%;height:100%;display:block}.hub-random-die-fallback{border:1px solid var(--hub-border);background:var(--hub-surface-subtle);height:260px;color:var(--hub-accent);border-radius:10px;place-items:center;margin-top:24px;display:grid}.hub-random-status{color:var(--hub-muted);text-align:center;margin:16px 0 0;font-size:.88rem;font-weight:680}@media (width<=620px){.hub-random-overlay{align-items:end;padding:12px}.hub-random-panel{border-radius:12px;padding:24px 18px}.hub-random-reel{margin-left:-18px;margin-right:-18px}.hub-random-die{height:280px;margin-left:0;margin-right:0}}@media (prefers-reduced-motion:reduce){.hub-random-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}.hub-random-reel-track[data-running=true]{transition:none}}.dev-tools-page{background:var(--hub-bg);min-height:100vh;color:var(--hub-text)}.dev-tools-shell{width:min(1120px,100% - 32px);margin:0 auto}.dev-tools-header{border-bottom:1px solid var(--hub-border);justify-content:space-between;align-items:center;gap:20px;min-height:72px;display:flex}.dev-tools-brand{color:var(--hub-text);letter-spacing:-.02em;align-items:center;gap:10px;font-weight:760;text-decoration:none;display:inline-flex}.dev-tools-brand-mark{border:1px solid var(--hub-border-strong);width:28px;height:28px;color:var(--hub-accent);border-radius:6px;place-items:center;display:grid}.dev-tools-nav{flex-wrap:wrap;gap:8px;display:flex}.dev-tools-nav a,.dev-tool-link,.dev-button{box-sizing:border-box;border:1px solid var(--hub-border-strong);background:var(--hub-surface);min-height:44px;color:var(--hub-text);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-weight:700;text-decoration:none;display:inline-flex}.dev-tools-nav a:hover,.dev-tool-link:hover,.dev-button:hover:not(:disabled){border-color:var(--hub-text);background:var(--hub-surface-subtle)}.dev-tool-link-primary,.dev-button-primary{border-color:var(--hub-accent);background:var(--hub-accent);color:var(--hub-accent-text)}.dev-tool-link-primary:hover,.dev-button-primary:hover:not(:disabled){border-color:var(--hub-accent-hover);background:var(--hub-accent-hover)}.dev-button:disabled{cursor:not-allowed;opacity:.5}.dev-tools-main{padding:44px 0 80px}.dev-tools-intro{padding-bottom:28px}.dev-tools-intro-row{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.dev-tools-eyebrow{color:var(--hub-accent);letter-spacing:.13em;text-transform:uppercase;margin:0 0 9px;font-size:.76rem;font-weight:760}.dev-tools-title{letter-spacing:-.05em;margin:0;font-size:clamp(2.1rem,4vw,3.3rem);line-height:1}.dev-tools-lede{max-width:650px;color:var(--hub-muted);margin:14px 0 0;font-size:1rem;line-height:1.58}.dev-tools-context{border-left:1px solid var(--hub-border);min-width:150px;color:var(--hub-muted);gap:3px;padding-left:18px;font-size:.78rem;display:grid}.dev-tools-context strong{color:var(--hub-text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;font-weight:650}.dev-tools-overview{border-top:1px solid var(--hub-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:22px;display:grid}.dev-tool-card{border:1px solid var(--hub-border);background:var(--hub-surface);border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px;padding:20px;display:grid}.dev-tool-card-featured{border-color:var(--hub-border-strong)}.dev-tool-card-icon{border:1px solid var(--hub-border);width:42px;height:42px;color:var(--hub-accent);background:var(--hub-surface-subtle);border-radius:8px;place-items:center;display:grid}.dev-tool-card-copy{min-width:0}.dev-tool-card h2{letter-spacing:-.025em;margin:0;font-size:1.22rem}.dev-tool-card p:not(.dev-tools-eyebrow){color:var(--hub-muted);margin:8px 0 0;line-height:1.5}.dev-tool-card .dev-tool-link{grid-column:2;justify-self:start;margin-top:2px}.dev-diagnostics{border:1px solid var(--hub-border);background:var(--hub-surface);border-radius:10px;margin-top:22px;padding:22px;scroll-margin-top:18px}.dev-diagnostics-heading{border-bottom:1px solid var(--hub-border);justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:18px;display:flex}.dev-diagnostics-heading h2{letter-spacing:-.025em;margin:0;font-size:1.35rem}.dev-diagnostics-heading>p{max-width:460px;color:var(--hub-muted);text-align:right;margin:0;font-size:.88rem;line-height:1.5}.dev-socket-test{gap:18px;padding-top:20px;display:grid}.dev-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.dev-field{gap:7px;font-size:.88rem;font-weight:680;display:grid}.dev-input{box-sizing:border-box;border:1px solid var(--hub-border-strong);background:var(--hub-bg);width:100%;min-height:44px;color:var(--hub-text);font:inherit;color-scheme:inherit;border-radius:8px;padding:9px 11px}.dev-input::placeholder{color:var(--hub-muted);opacity:.72}.dev-input-code{letter-spacing:.1em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.dev-status-line{color:var(--hub-muted);flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.dev-status-line[data-connected=true]{color:var(--hub-accent)}.dev-help{color:var(--hub-muted);margin:-7px 0 0;font-size:.84rem;line-height:1.5}.dev-button-row{flex-wrap:wrap;gap:9px;display:flex}.dev-divider{border:0;border-top:1px solid var(--hub-border);margin:0}.dev-session-panel{border-left:3px solid var(--hub-accent);background:var(--hub-surface-subtle);padding:13px 15px}.dev-session-panel p{margin:0;font-weight:700}.dev-session-panel ul{color:var(--hub-muted);margin:8px 0 0;padding-left:20px}.dev-response{color:var(--hub-muted);margin:0;line-height:1.5}.dev-loading{color:var(--hub-muted);margin:0;padding:32px 0}.dev-tools-page button:focus-visible,.dev-tools-page a:focus-visible,.dev-tools-page input:focus-visible{outline:3px solid var(--hub-focus);outline-offset:3px}@media (width<=760px){.dev-tools-header{flex-direction:column;align-items:flex-start;padding:14px 0}.dev-tools-nav,.dev-tools-nav a{width:100%}.dev-tools-intro-row,.dev-diagnostics-heading{flex-direction:column;align-items:flex-start}.dev-tools-context{min-width:0}.dev-tools-overview,.dev-form-grid{grid-template-columns:1fr}.dev-diagnostics-heading>p{text-align:left}}@media (width<=520px){.dev-tools-shell{width:min(100% - 24px,1120px)}.dev-tool-card{grid-template-columns:1fr}.dev-tool-card .dev-tool-link{grid-column:1;width:100%}.dev-diagnostics{padding:18px}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--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{.visible{visibility:visible}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.hidden{display:none}.h-\[400px\]{height:400px}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.italic{font-style:italic}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--hub-bg:#f4f1ea;--hub-surface:#fffdf8;--hub-surface-subtle:#ebe7dd;--hub-text:#1e2523;--hub-muted:#606865;--hub-border:#c9c5ba;--hub-border-strong:#7d8581;--hub-accent:#176b55;--hub-accent-hover:#0f5846;--hub-accent-text:#fff;--hub-warning:#8b5a12;--hub-danger:#9a3b34;--hub-focus:#2a68d4;--hub-shadow:0 10px 30px #1f252314}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme]){--hub-bg:#171a19;--hub-surface:#1f2321;--hub-surface-subtle:#292e2b;--hub-text:#f2f0e9;--hub-muted:#b0b6b2;--hub-border:#3f4642;--hub-border-strong:#69716d;--hub-accent:#6bc6a7;--hub-accent-hover:#82d4b7;--hub-accent-text:#10251d;--hub-warning:#e0b365;--hub-danger:#e08c84;--hub-focus:#8bb4ff;--hub-shadow:none}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--hub-bg:#f4f1ea;--hub-surface:#fffdf8;--hub-surface-subtle:#ebe7dd;--hub-text:#1e2523;--hub-muted:#606865;--hub-border:#c9c5ba;--hub-border-strong:#7d8581;--hub-accent:#176b55;--hub-accent-hover:#0f5846;--hub-accent-text:#fff;--hub-warning:#8b5a12;--hub-danger:#9a3b34;--hub-focus:#2a68d4;--hub-shadow:0 10px 30px #1f252314}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--hub-bg:#171a19;--hub-surface:#1f2321;--hub-surface-subtle:#292e2b;--hub-text:#f2f0e9;--hub-muted:#b0b6b2;--hub-border:#3f4642;--hub-border-strong:#69716d;--hub-accent:#6bc6a7;--hub-accent-hover:#82d4b7;--hub-accent-text:#10251d;--hub-warning:#e0b365;--hub-danger:#e08c84;--hub-focus:#8bb4ff;--hub-shadow:none}html{background:var(--hub-bg)}body{background:var(--hub-bg);min-width:320px;color:var(--hub-text);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--hub-focus);outline-offset:3px}.hub-theme-option:has(input:focus-visible){outline:3px solid var(--hub-focus);outline-offset:3px}.hub-page{background:var(--hub-bg);min-height:100vh;color:var(--hub-text)}.hub-shell{width:min(1040px,100% - 32px);margin:0 auto}.hub-header{border-bottom:1px solid var(--hub-border);justify-content:space-between;align-items:center;min-height:72px;display:flex}.hub-brand{color:var(--hub-text);letter-spacing:-.02em;align-items:center;gap:10px;font-weight:760;display:flex}.hub-brand-mark{border:1px solid var(--hub-border-strong);width:28px;height:28px;color:var(--hub-accent);border-radius:6px;place-items:center;display:grid}.hub-icon-button{width:44px;height:44px;color:var(--hub-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;display:inline-grid}.hub-icon-button:hover{border-color:var(--hub-border);background:var(--hub-surface-subtle)}.hub-main{padding:68px 0 84px}.hub-intro{max-width:680px}.hub-eyebrow{color:var(--hub-accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:.82rem;font-weight:760}.hub-title{letter-spacing:-.055em;max-width:760px;margin:0;font-size:clamp(2.15rem,5vw,4.6rem);line-height:.98}.hub-title-room{font-size:clamp(2rem,4vw,3.5rem)}.hub-lede{max-width:620px;color:var(--hub-muted);margin:20px 0 0;font-size:1.05rem;line-height:1.65}.hub-status{color:var(--hub-muted);align-items:center;gap:8px;margin-top:22px;font-size:.95rem;display:inline-flex}.hub-status[data-state=ready]{color:var(--hub-accent)}.hub-status[data-state=error]{color:var(--hub-danger)}.hub-spin{animation:1s linear infinite hub-spin}@keyframes hub-spin{to{transform:rotate(360deg)}}.hub-workspace{border-top:1px solid var(--hub-border);border-bottom:1px solid var(--hub-border);margin-top:52px}.hub-name-row{border-bottom:1px solid var(--hub-border);grid-template-columns:170px minmax(0,1fr);align-items:center;gap:28px;padding:28px 0;display:grid}.hub-label{color:var(--hub-text);font-size:.9rem;font-weight:700;display:block}.hub-input{box-sizing:border-box;border:1px solid var(--hub-border-strong);background:var(--hub-surface);width:100%;min-height:48px;color:var(--hub-text);border-radius:8px;padding:10px 13px}.hub-input::placeholder{color:var(--hub-muted);opacity:.72}.hub-input-code{letter-spacing:.14em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.2rem;font-weight:750}.hub-actions{grid-template-columns:1fr 1fr;display:grid}.hub-action-section{padding:34px 0 38px}.hub-action-section+.hub-action-section{border-left:1px solid var(--hub-border);margin-left:36px;padding-left:36px}.hub-section-title{letter-spacing:-.02em;margin:0;font-size:1.35rem}.hub-section-copy{min-height:48px;color:var(--hub-muted);margin:9px 0 22px;line-height:1.55}.hub-invite-code{border:1px solid var(--hub-border);background:var(--hub-surface-subtle);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;min-height:48px;margin-bottom:14px;padding:10px 13px;display:flex}.hub-code{letter-spacing:.14em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:780}.hub-button{border:1px solid var(--hub-border-strong);background:var(--hub-surface);min-height:46px;color:var(--hub-text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:10px 16px;font-weight:720;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.hub-button:hover:not(:disabled){border-color:var(--hub-text);background:var(--hub-surface-subtle)}.hub-button-primary{border-color:var(--hub-accent);background:var(--hub-accent);color:var(--hub-accent-text)}.hub-button-primary:hover:not(:disabled){border-color:var(--hub-accent-hover);background:var(--hub-accent-hover)}.hub-button-quiet{color:var(--hub-muted);background:0 0;border-color:#0000}.hub-button:disabled{cursor:not-allowed;opacity:.5}.hub-help{color:var(--hub-muted);margin:10px 0 0;font-size:.84rem;line-height:1.45}.hub-error{border-left:3px solid var(--hub-warning);color:var(--hub-warning);align-items:flex-start;gap:10px;margin-top:20px;padding:10px 0 10px 14px;line-height:1.5;display:flex}.hub-room-heading{justify-content:space-between;align-items:flex-start;gap:32px;display:flex}.hub-room-grid{border-top:1px solid var(--hub-border);border-bottom:1px solid var(--hub-border);grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);margin-top:46px;display:grid}.hub-room-section{padding:32px 0 36px}.hub-room-section+.hub-room-section{border-left:1px solid var(--hub-border);margin-left:40px;padding-left:40px}.hub-invite-layout{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:26px;margin-top:22px;display:grid}.hub-qr{border:1px solid var(--hub-border);background:#fff;border-radius:8px;width:176px;height:176px;padding:8px}.hub-room-code-large{letter-spacing:.18em;margin:7px 0 18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1.8rem,4vw,3rem);font-weight:780}.hub-button-row{flex-wrap:wrap;gap:10px;display:flex}.hub-players-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.hub-count{color:var(--hub-muted);font-size:.88rem}.hub-player-list{border-top:1px solid var(--hub-border);margin:18px 0 0;padding:0;list-style:none}.hub-player{border-bottom:1px solid var(--hub-border);justify-content:space-between;align-items:center;gap:16px;min-height:52px;display:flex}.hub-player-name{font-weight:650}.hub-player-you{color:var(--hub-accent);font-size:.82rem;font-weight:700}.hub-room-footer{justify-content:flex-end;padding-top:22px;display:flex}.hub-settings-backdrop{z-index:50;background:#00000057;justify-content:flex-end;display:flex;position:fixed;inset:0}.hub-settings{box-sizing:border-box;border-left:1px solid var(--hub-border);background:var(--hub-surface);width:min(390px,100%);height:100%;padding:24px;overflow-y:auto;box-shadow:-12px 0 30px #0000001f}.hub-settings-head{border-bottom:1px solid var(--hub-border);justify-content:space-between;align-items:center;gap:16px;padding-bottom:20px;display:flex}.hub-settings-title{margin:0;font-size:1.45rem}.hub-fieldset{border:0;margin:28px 0 0;padding:0}.hub-legend{margin-bottom:14px;font-weight:740}.hub-theme-options{gap:8px;display:grid}.hub-theme-option{border:1px solid var(--hub-border);cursor:pointer;border-radius:8px;grid-template-columns:24px 24px 1fr;align-items:center;gap:10px;min-height:48px;padding:9px 12px;display:grid}.hub-theme-option:hover{border-color:var(--hub-border-strong);background:var(--hub-surface-subtle)}.hub-theme-option input{width:18px;height:18px;accent-color:var(--hub-accent)}.hub-settings-note{border-top:1px solid var(--hub-border);color:var(--hub-muted);grid-template-columns:24px 1fr;gap:10px;margin-top:30px;padding-top:20px;font-size:.9rem;line-height:1.5;display:grid}@media (width<=760px){.hub-shell{width:min(100% - 24px,1040px)}.hub-header{min-height:64px}.hub-main{padding:44px 0 64px}.hub-title{font-size:clamp(2.2rem,12vw,3.4rem)}.hub-name-row{grid-template-columns:1fr;gap:10px;padding:24px 0}.hub-actions{grid-template-columns:1fr}.hub-action-section+.hub-action-section{border-top:1px solid var(--hub-border);border-left:0;margin-left:0;padding-left:0}.hub-section-copy{min-height:0}.hub-room-heading{display:block}.hub-room-heading .hub-status{margin-top:18px}.hub-room-grid{grid-template-columns:1fr}.hub-room-section+.hub-room-section{border-top:1px solid var(--hub-border);border-left:0;margin-left:0;padding-left:0}.hub-invite-layout{grid-template-columns:1fr}.hub-qr{aspect-ratio:1;width:min(210px,100%);height:auto}.hub-room-footer{justify-content:stretch}.hub-room-footer .hub-button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}.hub-selection-main{max-width:960px}.hub-selection-nav{justify-content:space-between;align-items:center;gap:20px;margin-bottom:36px;display:flex}.hub-selection-nav .hub-status{margin-top:0}.hub-selection-progress,.hub-consensus-summary{color:var(--hub-muted);align-items:center;gap:8px;margin-top:24px;font-size:.95rem;display:inline-flex}.hub-game-grid{gap:14px;margin-top:36px;display:grid}.hub-game-option{border:1px solid var(--hub-border);background:var(--hub-surface);cursor:pointer;border-radius:8px;grid-template-columns:auto 72px minmax(0,1fr);align-items:center;gap:18px;min-height:126px;padding:18px;transition:border-color .12s,background-color .12s;display:grid;position:relative}.hub-game-option:hover:not([data-disabled=true]){border-color:var(--hub-border-strong);background:var(--hub-surface-subtle)}.hub-game-option[data-selected=true]{border-color:var(--hub-accent)}.hub-game-option[data-disabled=true]{cursor:not-allowed;opacity:.58}.hub-game-option input{width:22px;height:22px;accent-color:var(--hub-accent);margin:0}.hub-game-option:has(input:focus-visible){outline:3px solid var(--hub-focus);outline-offset:3px}.hub-game-art,.hub-candidate-art,.hub-game-entry-icon{color:var(--hub-accent);background:var(--hub-surface-subtle);border:1px solid var(--hub-border);flex:none;place-items:center;display:grid}.hub-game-art{border-radius:8px;width:68px;height:68px}.hub-game-copy{min-width:0}.hub-game-title-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.hub-game-title-row strong{font-size:1.12rem}.hub-game-check{border:1px solid var(--hub-border);width:30px;height:30px;color:var(--hub-muted);border-radius:6px;place-items:center;display:grid}.hub-game-option[data-selected=true] .hub-game-check{border-color:var(--hub-accent);color:var(--hub-accent)}.hub-game-summary{color:var(--hub-muted);margin-top:7px;line-height:1.5;display:block}.hub-game-meta{color:var(--hub-muted);flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px;font-size:.84rem;display:flex}.hub-game-meta>span{align-items:center;gap:5px;display:inline-flex}.hub-game-unavailable{color:var(--hub-warning);margin-top:9px;font-size:.84rem;font-weight:650;display:block}.hub-selection-actions{border-top:1px solid var(--hub-border);margin-top:24px;padding-top:22px}.hub-submitted-panel,.hub-no-match,.hub-roll-section,.hub-game-entry,.hub-all-ready{border-top:1px solid var(--hub-border);border-bottom:1px solid var(--hub-border);justify-content:space-between;align-items:center;gap:24px;padding:26px 0;display:flex}.hub-submitted-panel{margin-top:34px}.hub-section-copy-auto{min-height:0;margin-bottom:0}.hub-match-list{border-top:1px solid var(--hub-border);margin-top:36px}.hub-match-row{border-bottom:1px solid var(--hub-border);grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 0;display:grid}.hub-match-copy h2,.hub-candidate h2,.hub-all-ready h2{margin:0;font-size:1.16rem}.hub-match-copy p,.hub-candidate p,.hub-all-ready p,.hub-game-entry-copy p,.hub-no-match p{color:var(--hub-muted);margin:6px 0 0;line-height:1.5}.hub-roll-section{margin-top:30px}.hub-no-match{justify-content:flex-start;margin-top:34px}.hub-no-match>div{flex:1}.hub-consensus-list{border-top:1px solid var(--hub-border);margin-top:34px}.hub-consensus-game{border-bottom:1px solid var(--hub-border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;padding:24px 0;display:grid}.hub-consensus-game[data-shared=true]{border-left:3px solid var(--hub-accent);padding-left:16px}.hub-consensus-game[data-disabled=true]{opacity:.64}.hub-consensus-main{grid-template-columns:68px minmax(0,1fr);align-items:center;gap:20px;min-width:0;display:grid}.hub-consensus-copy{min-width:0}.hub-consensus-title-row{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.hub-consensus-title-row h2{margin:0;font-size:1.16rem}.hub-consensus-copy>p{color:var(--hub-muted);margin:6px 0 0;line-height:1.5}.hub-shared-label{color:var(--hub-accent);align-items:center;gap:6px;font-size:.84rem;font-weight:720;display:inline-flex}.hub-consensus-choice{cursor:pointer;align-items:center;gap:10px;min-height:44px;margin-top:12px;font-size:.92rem;font-weight:680;display:inline-flex}.hub-consensus-choice input{width:22px;height:22px;accent-color:var(--hub-accent);margin:0}.hub-consensus-choice:has(input:focus-visible){outline:3px solid var(--hub-focus);outline-offset:3px}.hub-consensus-actions{flex-direction:column;align-items:flex-end;gap:12px;min-width:166px;display:flex}.hub-approval-count{text-align:right}.hub-approval-count strong{font-size:1.05rem;display:block}.hub-approval-count span{color:var(--hub-muted);margin-top:3px;font-size:.8rem;display:block}.hub-candidate{border-top:1px solid var(--hub-border);border-bottom:1px solid var(--hub-border);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:22px;margin-top:36px;padding:28px 0;display:grid}.hub-candidate-art{border-radius:8px;width:92px;height:92px}.hub-ready-section{margin-top:34px}.hub-ready-list{border-top:1px solid var(--hub-border);margin:18px 0 0;padding:0;list-style:none}.hub-ready-list li{border-bottom:1px solid var(--hub-border);justify-content:space-between;align-items:center;gap:18px;min-height:54px;display:flex}.hub-ready-state,.hub-player-state{color:var(--hub-muted);align-items:center;gap:7px;font-size:.84rem;display:inline-flex}.hub-ready-state[data-ready=true]{color:var(--hub-accent)}.hub-ready-actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.hub-all-ready{color:var(--hub-accent);justify-content:flex-start;margin-top:30px}.hub-all-ready>div{color:var(--hub-text)}.hub-game-entry{margin-top:34px}.hub-game-entry-icon{border-radius:8px;width:54px;height:54px}.hub-game-entry-copy{flex:1}.hub-game-entry-copy .hub-eyebrow{margin-bottom:7px}@media (width<=760px){.hub-selection-nav{align-items:flex-start}.hub-game-option{grid-template-columns:24px 56px minmax(0,1fr);gap:12px;padding:15px}.hub-game-art{width:54px;height:54px}.hub-match-row{grid-template-columns:56px minmax(0,1fr)}.hub-match-row .hub-game-art{width:54px;height:54px}.hub-match-row>.hub-button{grid-column:1/-1;justify-self:stretch}.hub-consensus-game{grid-template-columns:1fr;gap:14px}.hub-consensus-actions{flex-direction:row;justify-content:space-between;align-items:center;min-width:0}.hub-approval-count{text-align:left}.hub-submitted-panel,.hub-no-match,.hub-roll-section,.hub-game-entry,.hub-all-ready{flex-direction:column;align-items:flex-start}.hub-submitted-panel>.hub-button,.hub-no-match>.hub-button,.hub-roll-section>.hub-button,.hub-game-entry>.hub-button{width:100%}.hub-candidate{grid-template-columns:1fr}}@media (width<=520px){.hub-game-option{grid-template-columns:24px minmax(0,1fr)}.hub-game-option .hub-game-art{display:none}.hub-game-title-row{gap:8px}.hub-consensus-main{grid-template-columns:1fr}.hub-consensus-main .hub-game-art{display:none}.hub-consensus-actions{flex-direction:column;align-items:stretch}.hub-consensus-actions .hub-button{width:100%}.hub-ready-list li{flex-direction:column;align-items:flex-start;gap:6px;padding:12px 0}}@media (prefers-reduced-motion:reduce){.hub-game-option,.hub-button{transition:none}}
