/* Map posters: the image is the stage; a separate inset glass dock owns the controls. */
.server-deck{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
body.site-ui .server-entry{position:relative;isolation:isolate;min-width:0;display:flex;flex-direction:column;border:1px solid #ffffff16;border-radius:26px;background:#000;box-shadow:0 12px 35px #0002;overflow:hidden;transition:border-color 350ms}
.server-entry__scene{position:relative;display:flex;flex-direction:column;flex:1;min-width:0;min-height:200px;padding:20px 24px 43px;isolation:isolate;box-sizing:border-box}
.server-entry__visual{position:absolute;z-index:-1;inset:0;width:100%;height:100%;overflow:hidden;background:#101113}
.server-entry__visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:none;opacity:1;transition:transform 1000ms cubic-bezier(.2,.75,.25,1)}
.server-entry__visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0007 0,transparent 29%,#0006 57%,#000b8 100%),linear-gradient(90deg,#0003,transparent 85%);pointer-events:none}
.server-entry__top{display:flex;align-items:center;justify-content:space-between;gap:14px;position:relative;z-index:1;min-height:24px}
.server-entry__number{display:flex;align-items:center;gap:9px;font:11px/1.2 var(--ui-mono);letter-spacing:.07em;color:#d8dbde}
.server-entry__number i{width:20px;height:1px;background:#d9e0e14d}
.server-entry__labels{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px 13px;min-width:0}
.server-entry__map{color:#e1e3e5;font:9px/1.4 var(--ui-mono);text-shadow:0 1px 10px #000}
.server-entry__status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid #ffffff21;border-radius:999px;background:#0505079e;color:#b2b7bd;font:9px/1.2 var(--ui-font);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.server-entry__status::before{content:"";width:4px;height:4px;border-radius:50%;background:#7a7f87}
.is-live .server-entry__status::before{background:#9bb6a7}.is-live .server-entry__status{color:#d0dad3}
.server-entry__identity{position:relative;min-width:0;max-width:96%;margin-top:auto;padding-top:28px;transition:translate 500ms cubic-bezier(.2,.75,.25,1)}
.server-entry__eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:10px;font:8px/1.4 var(--ui-mono);letter-spacing:.11em;color:#bec3c9}
.server-entry__eyebrow>span:first-child{text-transform:uppercase;color:#e7dce0}.server-entry__eyebrow>span+span{padding-left:12px;border-left:1px solid #ffffff35;font-size:7px;color:#a1a8b1}
body.site-ui .server-entry__title{margin:0!important;color:#e5e7eb!important;font:600 clamp(24px,2.4vw,32px)/1.1 var(--ui-heading)!important;letter-spacing:-.045em;overflow-wrap:anywhere;text-wrap:balance;text-shadow:0 2px 24px #0007}
.server-entry__address{display:block;margin-top:12px;color:#a1a7b1;font:9px/1.3 var(--ui-mono);letter-spacing:.02em}
.server-entry__stale{display:block;margin-top:6px;font-size:9px;color:#bca993}
.server-entry__dock{position:relative;z-index:2;display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:18px;min-width:0;min-height:78px;margin:-17px 14px 14px;padding:15px 17px;border:1px solid #ffffff1c;border-radius:20px;background:linear-gradient(125deg,#ffffff04,transparent 60%),rgba(0,0,0,.64);box-shadow:inset 0 1px #ffffff09,0 8px 24px #0005;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-sizing:border-box;transition:border-color 350ms}
.server-entry__online{display:grid;grid-template-columns:1fr;gap:3px;min-width:0}
.server-entry__online>span:first-child{color:#9da3ad;font-size:8px}
.server-entry__online>strong{color:#d8dce2;font:450 27px/1.15 var(--ui-heading);white-space:nowrap;letter-spacing:-.045em}
.server-entry__fill{display:block;width:100%;max-width:100px;height:2px;margin-top:5px;background:#ffffff14;overflow:hidden}
.server-entry__fill i{display:block;height:100%;background:#b8bec8;transition:width 700ms cubic-bezier(.2,.75,.25,1)}
.server-entry__actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
body.site-ui .server-entry__details{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:6px 3px;border:0;border-radius:999px;background:transparent;box-shadow:none;color:#a0a6b0;font:10px/1.4 var(--ui-font);cursor:pointer;transition:color 250ms}
body.site-ui .server-entry__details:hover{color:#dfe2e7}
body.site-ui .server-entry__join{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:7px 9px 7px 13px;border:1px solid #ffffff29;border-radius:999px;background:#000;color:#dde0e5;font:550 10px/1.4 var(--ui-font);white-space:nowrap;text-decoration:none;box-shadow:inset 0 1px #ffffff07;transition:background-color 250ms,border-color 250ms}
.server-entry__join svg{width:25px;height:25px;padding:3px;stroke:currentColor;stroke-width:1.3;border:1px solid #ffffff1a;border-radius:50%;color:#a8caff;box-sizing:border-box;transition:translate 350ms,border-color 350ms}
body.site-ui .server-entry__join:hover{border-color:#438cff;background:#06152d;color:#edf4ff}
.server-entry:focus-within,.server-entry:hover{border-color:#ffffff30}.server-entry:focus-within .server-entry__dock,.server-entry:hover .server-entry__dock{border-color:#438cff70}
.server-entry :is(a,button):focus-visible{outline:2px solid #d2d5dc!important;outline-offset:4px!important}
.server-entry:not(.is-live) .server-entry__visual img{opacity:.64}
/* A single server becomes a panoramic destination; a collection becomes a poster grid. */
.server-deck>.server-entry:only-child{grid-column:1/-1}
.server-deck>.server-entry:only-child .server-entry__scene{min-height:245px;padding:26px 32px 48px}
body.site-ui .server-deck>.server-entry:only-child .server-entry__title{font-size:clamp(27px,3vw,36px)!important;max-width:1000px}
.server-deck>.server-entry:only-child .server-entry__dock{grid-template-columns:180px minmax(0,1fr);margin-inline:23px;padding:17px 22px;margin-bottom:19px}
.server-deck>.server-entry:only-child .server-entry__online{grid-template-columns:auto 1fr;align-items:center;column-gap:14px}.server-deck>.server-entry:only-child .server-entry__online>span:first-child{grid-column:2;grid-row:1;max-width:45px;line-height:1.3}
.server-deck>.server-entry:only-child .server-entry__online>strong{grid-column:1;grid-row:1;font-size:33px}.server-deck>.server-entry:only-child .server-entry__fill{grid-column:1/-1;max-width:none}
@media(min-width:1100px){.server-deck:not(.server-deck--dense)>.server-entry:first-child:nth-last-child(3){grid-column:1/-1}.server-deck:not(.server-deck--dense)>.server-entry:first-child:nth-last-child(3) .server-entry__scene{min-height:230px}body.site-ui .server-deck:not(.server-deck--dense)>.server-entry:first-child:nth-last-child(3) .server-entry__title{font-size:30px!important}}
@media(min-width:1280px){.server-deck--dense{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.server-deck--dense .server-entry__scene{padding:17px 18px 40px;min-height:190px}body.site-ui .server-deck--dense .server-entry__title{font-size:24px!important}.server-deck--dense .server-entry__dock{grid-template-columns:83px minmax(0,1fr);gap:10px;margin-inline:10px;padding:12px}.server-deck--dense .server-entry__actions{gap:8px}.server-deck--dense .server-entry__join{gap:8px;padding-left:10px;font-size:9px}.server-deck--dense .server-entry__details{font-size:9px}.server-deck--dense .server-entry__online>strong{font-size:23px}}
@media(max-width:1099px) and (min-width:761px){.server-entry__scene{padding-inline:18px;min-height:200px}.server-entry__dock{grid-template-columns:86px minmax(0,1fr);gap:10px;padding:12px;margin-inline:10px}.server-entry__actions{gap:8px}body.site-ui .server-entry__join{gap:8px;padding-left:10px;font-size:9px}body.site-ui .server-entry__details{font-size:9px}.server-entry__online>strong{font-size:24px}}
@media(max-width:760px){
 .server-deck{grid-template-columns:1fr;gap:18px}.server-entry__scene,.server-deck>.server-entry:only-child .server-entry__scene{min-height:196px;padding:17px 18px 43px}
 body.site-ui .server-entry__title,body.site-ui .server-deck>.server-entry:only-child .server-entry__title{font-size:23px!important;line-height:1.09!important}
 .server-entry__identity{padding-top:26px}.server-entry__eyebrow{margin-bottom:9px;font-size:8px}.server-entry__eyebrow>span+span{font-size:6px}.server-entry__address{font-size:8px;margin-top:10px}
 .server-entry__dock,.server-deck>.server-entry:only-child .server-entry__dock{grid-template-columns:83px minmax(0,1fr);gap:10px;margin:-17px 10px 10px;padding:11px;min-height:78px}
 .server-entry__online,.server-deck>.server-entry:only-child .server-entry__online{grid-template-columns:1fr;gap:3px}.server-deck>.server-entry:only-child .server-entry__online>span:first-child,.server-deck>.server-entry:only-child .server-entry__online>strong{grid-column:auto;grid-row:auto;max-width:none}.server-entry__online>strong,.server-deck>.server-entry:only-child .server-entry__online>strong{font-size:24px}
 .server-entry__actions{gap:8px}body.site-ui .server-entry__details{font-size:9px}body.site-ui .server-entry__join{gap:8px;padding-left:10px;font-size:9px}.server-entry__join svg{width:22px;height:22px}
}
@media(max-width:380px){.server-entry__dock,.server-deck>.server-entry:only-child .server-entry__dock{grid-template-columns:75px minmax(0,1fr);gap:8px;padding:10px}.server-entry__actions{gap:6px}body.site-ui .server-entry__details{font-size:8px}body.site-ui .server-entry__join{gap:5px;padding-left:8px;font-size:8px}.server-entry__join svg{width:20px;height:20px}.server-entry__online>strong,.server-deck>.server-entry:only-child .server-entry__online>strong{font-size:22px}.server-entry__map{font-size:8px}.server-entry__labels{gap:8px}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){html:not(.hvh-reduced-motion) .server-entry:hover .server-entry__visual img{transform:scale(1.045)}html:not(.hvh-reduced-motion) .server-entry:hover .server-entry__identity{translate:0 -3px}html:not(.hvh-reduced-motion) .server-entry__join:hover svg{translate:2px 0}}
@media(prefers-reduced-motion:reduce){.server-entry,.server-entry *{animation:none!important;transition:none!important}}
html.hvh-reduced-motion .server-entry,html.hvh-reduced-motion .server-entry *{animation:none!important;transition:none!important}
@media(forced-colors:active){body.site-ui .server-entry{border:1px solid CanvasText;background:Canvas}.server-entry__dock{border:1px solid CanvasText;background:Canvas}.server-entry__visual{opacity:.12}.server-entry__status,.server-entry__join{border:1px solid ButtonText}}
/* A native card-wide button opens the roster; dock actions remain separate controls. */
body.site-ui .server-entry__open{position:absolute;inset:0;z-index:3;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:inherit;background:transparent!important;box-shadow:none!important;cursor:pointer}
.server-entry__open:focus-visible{outline-offset:-4px!important}
.server-entry__dock{z-index:4;pointer-events:none}
.server-entry__actions :is(a,button){pointer-events:auto}
.server-player-list[aria-busy=true]{opacity:.75}
.server-player-refresh{margin:0;padding:10px 24px 0;font-size:11px;color:#a2a7b0}
