.link{color:var(--muted);text-underline-offset:3px;text-decoration:underline}.link:hover{color:var(--text-dim)}.banner{color:var(--muted);background:var(--sunken);border:1px solid var(--border);border-radius:var(--r-ui);margin:0;padding:12px 14px;font-size:14px;line-height:1.5}.screen>.banner{margin:16px 24px}.banner--error{color:var(--danger-fg);background:var(--danger-bg);border-color:#0000}.field{background:var(--sunken);border:1px solid var(--border-strong);border-radius:var(--r-ui);color:var(--text);font:inherit;width:100%;padding:14px 16px;font-size:17px}.field::placeholder{color:var(--muted-3)}.field:focus{border-color:#5a5a5a;outline:none}.field--sm{width:190px;padding:11px 14px;font-size:14px}.field-group{flex-direction:column;gap:9px;display:flex}.field-group__label{letter-spacing:.12em;color:#7a7a7a;font-size:11px}.choice,.diskpick{flex-wrap:wrap;gap:6px;display:flex}.choice__item{font:inherit;border-radius:var(--r-ui);color:var(--muted);cursor:pointer;background:#2b2b2b;border:0;padding:10px 14px;font-size:14px}.choice__item--on{background:var(--primary-bg);color:var(--primary-fg)}.switch{background:var(--sunken);border:1px solid var(--border-strong);border-radius:var(--r-ui);padding:3px;display:inline-flex;position:relative}.switch__thumb{width:calc((100% - 6px) / var(--switch-steps,2));background:var(--primary-bg);transform:translateX(calc(var(--switch-at,0) * 100%));border-radius:2px;transition:transform .14s;position:absolute;top:3px;bottom:3px;left:3px}.switch__side{font:inherit;min-width:88px;color:var(--muted);cursor:pointer;white-space:nowrap;text-align:center;background:0 0;border:0;flex:1 0 0;padding:8px 12px;font-size:14px;position:relative}.switch__side:hover{color:var(--text-dim)}.switch--sm .switch__side{letter-spacing:.08em;min-width:6.7em;padding:8px 11px;font-size:11px}.switch__side--on,.switch__side--on:hover{color:var(--primary-fg);cursor:default}@media (prefers-reduced-motion:reduce){.switch__thumb{transition:none}}.listing__title{letter-spacing:-.01em;overflow-wrap:anywhere;min-width:0;font-size:18px}.listing__tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.listing__grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;padding:20px 24px 32px;display:grid}.listing__grid:has(+.more){padding-bottom:0}.more{justify-content:center;padding:20px 24px 32px;display:flex}.diskpick .more{padding:4px 0 0}.diskpick .more .btn{width:100%}@media (width<=760px){.more{padding:16px 16px 28px}}.empty{border:1px dashed var(--border);border-radius:var(--r-panel);text-align:center;flex-direction:column;align-items:center;gap:10px;margin:20px 24px 32px;padding:48px 24px 44px;display:flex}.empty__art{--disk-ink:#383838;--disk-edge:#3a3a3a;margin-bottom:12px}.empty__title{color:var(--text-dim);font-size:17px}.empty__note{max-width:42ch;color:var(--muted-2);font-size:14px;line-height:1.5}.empty__actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;display:flex}.tile{background:var(--sunken);border:1px solid var(--border);border-radius:var(--r-panel);flex-direction:column;gap:18px;padding:22px;display:flex}.tile--promoted{border-color:var(--gold-line)}.tile__status{letter-spacing:.1em;justify-content:space-between;align-items:center;font-size:11px;display:flex}.tile__state{color:var(--ok-fg)}.tile__state--running{color:#e0e0e0}.tile__count{color:var(--muted-2)}.tile__title{letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;font-size:20px;overflow:hidden}.tile__disk{align-items:center;gap:12px;display:flex}.tile__diskmeta{color:#d4d4d4;flex-direction:column;gap:4px;min-width:0;font-size:13px;display:flex}.tile--ghost .tile__diskmeta{flex:1}.tile__diskmeta>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tile__hash{color:var(--muted-3);font-size:11px}.tile__meta{color:var(--muted-2);overflow-wrap:anywhere;font-size:13px}.tile--ghost,.diskpick__item--ghost{pointer-events:none}.ghost{border-radius:var(--r-ui);background:#2a2a2a;animation:1.5s ease-in-out infinite ghost-pulse;display:block}.ghost__lines{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.ghost--title{width:62%;height:20px}.ghost--line{width:100%;height:11px}.ghost--line-md{width:72%}.ghost--line-sm{width:44%}.ghost--chip{border-radius:var(--r-chip);width:84px;height:12px}.ghost--chip-sm{width:46px}.ghost--namebar{vertical-align:middle;width:7em;height:12px;display:inline-block}.ghost--text{color:#0000;background:0 0;height:auto;animation:none;position:relative}.ghost--text:after{content:"";height:var(--ghost-bar,11px);border-radius:var(--r-ui);background:#2a2a2a;animation:1.5s ease-in-out infinite ghost-pulse;position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.ghost--title.ghost--text{--ghost-bar:20px}.ghost--chip.ghost--text{--ghost-bar:12px}.ghost--chip.ghost--text:after{border-radius:var(--r-chip)}.ghost--boxed{color:#0000;border-color:#0000;height:auto}.ghost__disk{flex:none;display:flex}.ghost__disk .disk{--disk-ink:var(--sunken);--disk-edge:#2a2a2a;background:#2a2a2a;animation:1.5s ease-in-out infinite ghost-pulse}.ghost__disk .disk__shutter{background:var(--sunken)}@keyframes ghost-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.ghost,.ghost--text:after{animation:none}}.btn--wide{text-align:center;width:100%}.btn--danger{background:var(--danger-bg);color:var(--danger-fg)}.disk{--size:42px;--disk-cut:calc(var(--size) * .035);--disk-edge:#3d3d3d;--disk-ink:#4a4a4a;width:var(--size);height:calc(var(--size) * 1.06);box-sizing:border-box;border:1px solid var(--disk-edge);border-radius:var(--r-ui) 0 var(--r-ui) var(--r-ui);clip-path:polygon(0 0, calc(100% - var(--disk-cut)) 0, 100% var(--disk-cut), 100% 100%, 0 100%);background:var(--surface);padding:0 max(4px, calc(var(--size) * .13)) max(4px, calc(var(--size) * .08));justify-content:space-between;gap:calc(var(--size) * .045);flex-direction:column;flex:none;display:flex;position:relative}.disk:after{content:"";z-index:2;top:calc(var(--disk-cut) * .5 - 1.75px);right:calc(var(--disk-cut) * -.207 - 1px);width:calc(var(--disk-cut) * 1.414);background:var(--disk-edge);pointer-events:none;height:1.5px;position:absolute;transform:rotate(45deg)}.disk__top{height:calc(var(--size) * .35);box-sizing:border-box;border:1px solid var(--disk-edge);border-radius:0 0 var(--r-ui) var(--r-ui);flex:none;margin-top:-1px;margin-right:10%;position:relative;overflow:hidden}.disk__patch{background:var(--disk-ink);border-radius:0 0 var(--r-chip) var(--r-chip);width:74%;height:100%;margin-left:auto}.disk__shutter{box-sizing:border-box;border-radius:var(--r-chip);background:var(--bg);width:15%;height:66%;position:absolute;top:17%;right:19%}.disk__bar{height:max(5px, calc(var(--size) * .4));background:var(--disk-ink);border-radius:var(--r-chip);padding:max(1px, calc(var(--size) * .015));box-sizing:border-box;position:relative;overflow:hidden}.disk__art-image,.disk__identicon{border-radius:1px;width:100%;height:100%}.disk__art-image{object-fit:cover;inset:max(1px, calc(var(--size) * .015));width:calc(100% - max(2px, calc(var(--size) * .03)));height:calc(100% - max(2px, calc(var(--size) * .03)));display:block;position:absolute}.disk__identicon{grid-template-rows:repeat(6,1fr);grid-template-columns:repeat(12,1fr);display:grid;overflow:hidden}.disk__identicon-cell--0{background:var(--border)}.disk__identicon-cell--1{background:var(--border-strong)}.disk__identicon-cell--2{background:var(--disk-edge)}.disk__identicon-cell--3{background:var(--disk-ink)}.disk__caption{font-family:var(--font-mono);font-size:clamp(9px, calc(var(--size) * .05), 13px);color:#d4d4d4;text-overflow:ellipsis;white-space:nowrap;margin-top:auto;line-height:1.2;overflow:hidden}.form{flex-direction:column;gap:22px;padding:24px;display:flex}.form__title{font-size:17px}.diskpick{flex-direction:column}.diskpick__item{text-align:left;font:inherit;background:var(--sunken);border:1px solid var(--border);border-radius:var(--r-ui);color:var(--text);cursor:pointer;align-items:center;gap:14px;padding:14px 16px;display:flex}.diskpick__item--on{background:#262626;border-color:#5a5a5a}.diskpick__meta{flex-direction:column;flex:1;gap:4px;min-width:0;font-size:15px;display:flex}.diskpick__meta>.mono{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.diskpick__sub{color:var(--muted-2);overflow-wrap:anywhere;font-size:13px}.grants{flex-direction:column;gap:12px;padding:18px;display:flex}.grants__label{letter-spacing:.12em;color:var(--warn-fg);font-size:11px}.grants__cols{gap:22px;display:flex}.grants__col{flex-direction:column;flex:1 1 0;gap:10px;min-width:0;display:flex}.grants__row{color:#c4c4c4;align-items:flex-start;gap:9px;font-size:14px;display:flex}.grants__mark{flex:none;width:12px}.grants__mark--yes{color:var(--ok-fg)}.grants__mark--no{color:var(--danger-fg)}.grants__text{flex-direction:column;gap:2px;min-width:0;display:flex}.grants__hint{color:var(--muted-3);font-size:12px;line-height:1.35}@media (width<=560px){.grants__cols{flex-direction:column;gap:10px}}.lobby__title{overflow-wrap:anywhere;min-width:0;font-size:17px}.lobby__invite{align-items:center;gap:8px;display:flex}.lobby__code{font:inherit;font-family:var(--font-mono);color:var(--muted);border-radius:var(--r-ui);letter-spacing:.08em;cursor:pointer;text-align:center;background:#2b2b2b;border:0;min-width:113px;padding:7px 11px;font-size:13px}.lobby__code:hover{color:var(--text);background:#363636}.lobby__copy{min-width:122px}.lobby{flex-direction:column;gap:22px;padding:24px;display:flex}.inserted{align-items:center;gap:18px;padding:18px;display:flex}.inserted__meta{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.inserted__line{overflow-wrap:anywhere;font-size:16px}.inserted__sub{color:var(--muted-2);font-size:13px}.inserted__tags{flex-wrap:wrap;gap:6px;display:flex}.verdict{border-left:3px solid var(--border-strong);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.verdict__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.verdict__title{letter-spacing:.08em;font-size:17px}.verdict__kind{letter-spacing:.12em;color:var(--muted-3);font-size:11px}.verdict__lead{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.verdict__points{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.verdict__point{color:#c4c4c4;padding-left:16px;font-size:13px;line-height:1.45;position:relative}.verdict__point:before{content:"—";color:var(--muted-3);position:absolute;left:0}.verdict__foot{color:var(--muted-3);margin:0;font-size:12px;line-height:1.45}.verdict--ok{border-left-color:var(--ok-fg)}.verdict--ok .verdict__title{color:var(--ok-fg)}.verdict--warn{border-left-color:var(--warn-fg);background:var(--warn-bg)}.verdict--warn .verdict__title{color:var(--warn-fg)}.verdict--danger{border-left-color:var(--danger-fg);background:var(--danger-bg)}.verdict--danger .verdict__title{color:var(--danger-fg)}@media (width<=460px){.verdict__head{flex-direction:column;gap:4px}}.seats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.seat{background:var(--sunken);border:1px solid var(--border);border-radius:var(--r-panel);flex-direction:column;align-items:center;gap:8px;min-width:0;padding:14px;display:flex}.seat__avatar{border-radius:var(--r-ui);background:#3d3d3d;width:34px;height:34px}.seat__avatar--1{background:#4a4a4a}.seat__avatar--2{background:#5a5a5a}.seat__avatar--3{background:#333}.seat__avatar--4{background:#46504a}.seat__avatar--5{background:#504a46}.seat__avatar--6{background:#4a4650}.seat__avatar--7{background:#465050}.seat__nick{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;overflow:hidden}.seat__badges{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.seat__badge{letter-spacing:.1em;color:var(--muted-3);font-size:9px}.seat__badge--host{color:var(--warn-fg)}.seat__badge--ready{color:var(--ok-fg)}.seat__badge--playing{color:var(--ok-fg);background:var(--ok-bg);border-radius:var(--r-chip);padding:3px 6px}.btn--on{background:var(--ok-bg);color:var(--ok-fg)}.btn__mark{text-align:center;width:1em;color:var(--muted);margin-left:6px;display:inline-block}.btn__mark--on{color:inherit}.btn--on:hover{background:#2c3a2c}.roomlog{flex-direction:column;gap:9px;padding:16px;display:flex}.roomlog__lines{color:var(--muted);flex-direction:column;gap:6px;max-height:160px;font-size:14px;display:flex;overflow-y:auto}.roomlog__at{color:var(--muted-3)}.lobby__actions{flex-wrap:wrap;gap:10px;display:flex}.lobby__actions>.btn{white-space:nowrap;flex:none}.lobby__actions>.btn--wide{flex:1;width:auto}.joinbox{align-items:center;gap:8px;display:flex}@media (width<=760px){.listing__grid{padding:16px 16px 28px}.empty{margin:16px 16px 28px;padding:36px 18px 32px}.empty__actions{flex-direction:column;align-self:stretch}.topbar{gap:10px;padding:12px 16px}.topbar__left{gap:12px}.nav{gap:0;min-width:0;font-size:13px}.nav a{padding:8px 10px}.nav__me{font-size:13px}.listing__tools{width:100%}.listing__tools .field--sm{flex:1;width:auto;min-width:120px}.joinbox{flex:1}.joinbox .field{flex:1;width:auto}.screen__head{min-height:60px;padding:10px 16px}.form,.lobby{padding:16px}.seats{grid-template-columns:repeat(2,1fr)}.field--sm{width:100%}}@media (width<=700px){.wide-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.narrow-only{display:inline}.topbar__actions{flex:0 0 76px;justify-content:flex-end}.topbar__action{justify-content:center;align-items:center;padding:8px;display:inline-flex}.topbar__action-icon{width:17px;height:17px;display:block}}@media (width<=560px){.lobby__actions{flex-direction:column}.lobby__actions>.btn,.lobby__actions>.btn--wide{width:100%}.shell{min-height:100dvh;padding-top:calc(57px + env(safe-area-inset-top));padding-bottom:calc(62px + env(safe-area-inset-bottom));flex-direction:column;display:flex}.shell__body,.shell__body>.screen:has(>.empty){flex-direction:column;flex:1;display:flex}.shell__body>.screen:has(>.empty)>.empty{flex:1;justify-content:center}.support-footer--mobile-hidden{display:none}.topbar{z-index:20;min-height:calc(57px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 12px 8px;position:fixed;top:0;left:0;right:0}.nav--desktop{display:none}.topbar__me{padding-left:8px}.nav__me{max-width:10ch}.topbar__left{gap:0}.tabbar{z-index:20;min-height:calc(62px + env(safe-area-inset-bottom));padding:6px max(10px, env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{border-radius:var(--r-ui);min-width:0;color:var(--muted-3);letter-spacing:.02em;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;line-height:1;display:flex}.tabbar a:hover,.tabbar a:focus-visible{color:var(--text-dim);background:#292929}.tabbar a[aria-current=page]{color:var(--text);background:#2b2b2b}.tabbar__icon{flex:none;width:22px;height:22px}}@media (width<=380px){.topbar__me .nav__me{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;min-width:0;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.diskpick__chosen{border-radius:var(--r-panel);background:#262626;border:1px solid #5a5a5a;align-items:center;gap:14px;padding:14px 16px;display:flex}.diskpick__browse{border:1px solid var(--border);border-radius:var(--r-panel);overflow:clip}.diskpick__browsehead{background:var(--sunken);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.diskpick{scrollbar-gutter:stable;flex-wrap:nowrap;gap:0;max-height:232px;overflow-y:auto}.diskpick__browse .diskpick__item{border:0;border-bottom:1px solid var(--border);background:0 0;border-radius:0}.diskpick__browse .diskpick__item:last-child{border-bottom:0}.diskpick__browse .diskpick__item:hover{background:#262626}.diskpick__browse .diskpick__item--on,.diskpick__browse .diskpick__item--on:hover{background:#2f2f2f;box-shadow:inset 3px 0 #7d7d7d}.diskpick__browse .diskpick__meta{flex:1}.diskpick__browse .diskpick__item>.tag{flex:none}.diskpick__empty{color:var(--muted-2);padding:14px 16px;font-size:13px}.diskpage{flex-direction:column;gap:22px;padding:24px;display:flex}.diskpage__head{align-items:flex-start;gap:22px;display:flex}.diskpage__title{letter-spacing:-.015em;overflow-wrap:anywhere;font-size:24px}.diskpage__title+.diskpage__sub{margin-top:-10px}.diskpage__meta{flex-direction:column;align-items:flex-start;gap:14px;min-width:0;display:flex}.diskpage__sub{color:var(--muted-2);font-size:14px}.diskpage__about{color:#c4c4c4;overflow-wrap:anywhere;min-height:67.5px;font-size:15px;line-height:1.5}.tile--ghost .disk-tile__desc,.diskpage__head .ghost__lines.diskpage__about{justify-content:space-between}.diskpage__head .ghost__lines.diskpage__about{flex:none;align-self:stretch;height:67.5px}.diskpage__by{color:var(--muted-2);overflow-wrap:anywhere;font-size:13px}.diskpage__hash{color:var(--muted);word-break:break-all;background:var(--sunken);border:1px solid var(--border);border-radius:var(--r-ui);padding:10px 12px;font-size:13px}.diskpage__source{color:#c4c4c4;background:var(--sunken);border:1px solid var(--border);border-radius:var(--r-panel);max-height:420px;font-size:13px}.ghost__source{box-sizing:border-box;height:420px;padding:16px;overflow:hidden}.ghost__sourcelines{justify-content:space-between;height:100%}.diskpage__source .code-view__gutter{padding-top:16px;padding-bottom:16px}.diskpage__source .code-view__source{padding:16px}@media (width<=620px){.diskpage__head{flex-direction:column}}.field--code{letter-spacing:.32em;text-transform:uppercase;font-size:24px}