:root{--bg:#e5e5df;--bg-top:#ecece7;--panel:#f4f3ee;--paper:#faf9f5;--ink:#1d2224;--muted:#6a7172;--line:#c8cac5;--line2:#adb1ad;--accent:#356d60;--accent2:#28564c;--accent-hover:#1f473e;--warn:#a5642e;--warn-ink:#724d2b;--warn-bg:#f2eadf;--red:#98463f;--danger-line:#d1b4b0;--danger-bg:#f5e8e5;--white:#fff;--hover-soft:rgba(255,255,255,.38);--hover:rgba(255,255,255,.45);--hover-strong:rgba(255,255,255,.48);--focus-ring:rgba(53,109,96,.11);--panel-glass:rgba(250,249,245,.62);--panel-glass-strong:rgba(250,249,245,.65);--backdrop:rgba(31,37,38,.36);--dialog-shadow:rgba(20,28,28,.24);--toast-shadow:rgba(0,0,0,.2);--status-bg:#ecece8;--status-dot:#9a9d9a;--live-bg:#dfece7;--live-dot:#39816e;--avatar-bg:#dfe7e2;--chart-grid:#dadbd5;--console:#222728;--console-bar:#171b1c;--console-input:#282e2f;--console-line:#41494a;--console-text:#edf0ed;--console-output:#dce4df;--console-accent:#8fb7aa;--chart-ram:#896a3d;--chart-disk:#667477;--radius:12px;--font-8:8px;--font-9:9px;--font-10:10px;--font-11:11px;--font-12:12px;--font-13:13px;--font-14:14px;--font-15:15px;--font-16:16px;--font-17:17px;--font-18:18px;--font-19:19px;--font-21:21px;--font-22:22px;--font-23:23px;--font-25:25px;--font-30:30px;--font-36:36px;--font-40:40px;--font-44:44px;--font-48:48px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-13:52px;--space-14:56px;--space-15:60px;--space-16:64px;--space-17:68px;--space-18:72px;--space-19:76px;--space-20:80px;--space-21:84px;--space-22:88px;--space-23:92px;}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,var(--bg-top),var(--bg) 420px);color:var(--ink);font-family:"Segoe UI Variable Text","Segoe UI",Arial,sans-serif;line-height:1.45;letter-spacing:-.01em}button,input,select{font:inherit}.hidden{display:none!important}.shell{width:min(1160px,calc(100% - 44px));margin:auto}.topbar{height:70px;display:flex;align-items:center;border-bottom:1px solid var(--line2)}.brand{display:flex;align-items:center;min-height:44px;gap:var(--space-3);color:var(--ink);text-decoration:none}.brand span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line2);font-size:var(--font-13);font-weight:850}.brand strong{font-size:var(--font-13)}.topbar nav{display:flex;gap:var(--space-1);margin-left:auto}.topbar nav a{display:flex;align-items:center;min-height:44px;padding:var(--space-2) var(--space-3);color:var(--muted);font-size:var(--font-11);font-weight:700;text-decoration:none}.topbar nav a:hover{background:var(--hover-soft);color:var(--ink)}main{padding:var(--space-13) 0 var(--space-20)}.hero{display:flex;align-items:end;justify-content:space-between;gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--line2)}.overline{margin:0 0 var(--space-2);color:var(--accent);font-size:var(--font-9);font-weight:850;letter-spacing:.16em;text-transform:uppercase}.hero h1{margin:0;font-size:var(--font-48);line-height:.95;letter-spacing:-.055em}.lead{margin:var(--space-3) 0 0;color:var(--muted);font-size:var(--font-12)}.primary,.secondary,.danger,.close{border:0;cursor:pointer}.primary,.secondary,.danger{min-height:44px;padding:0 var(--space-4);border-radius:6px;font-size:var(--font-10);font-weight:800}.primary{background:var(--accent2);color:var(--white)}.primary:hover{background:var(--accent-hover)}.secondary{border:1px solid var(--line2);background:transparent;color:var(--ink)}.secondary:hover{background:var(--hover)}.danger{border:1px solid var(--danger-line);background:var(--danger-bg);color:var(--red)}button:disabled{opacity:.48;cursor:not-allowed}.summary{display:grid;grid-template-columns:repeat(4,1fr);margin:var(--space-5) 0 var(--space-11);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-glass);overflow:hidden}.summary article{padding:var(--space-4) var(--space-5);border-right:1px solid var(--line)}.summary article:last-child{border:0}.summary span{display:block;color:var(--muted);font-size:var(--font-9);font-weight:800;text-transform:uppercase;letter-spacing:.09em}.summary strong{display:block;margin-top:var(--space-1);font-size:var(--font-22);letter-spacing:-.04em}.summary article:last-child strong{font-size:var(--font-13);margin-top:var(--space-2)}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:var(--space-4)}.section-head h2{margin:0;font-size:var(--font-23);letter-spacing:-.035em}.server-groups{display:grid;gap:var(--space-7)}.game-group{display:grid;gap:var(--space-3)}.group-title{display:flex;align-items:center;gap:var(--space-3)}.group-title h3{margin:0;font-size:var(--font-12)}.count{padding:var(--space-1) var(--space-2);border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:var(--font-8)}.server-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.server{padding:var(--space-4);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.server-top{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4)}.server h4{margin:0 0 var(--space-1);font-size:var(--font-16)}.server-meta{color:var(--muted);font-size:var(--font-9)}.status{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:99px;background:var(--status-bg);color:var(--muted);font-size:var(--font-8);font-weight:850;text-transform:uppercase;letter-spacing:.07em}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--status-dot)}.status.live{background:var(--live-bg);color:var(--accent2)}.status.live:before{background:var(--live-dot)}.server-data{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1);margin:var(--space-4) 0;background:var(--line)}.server-data div{padding:var(--space-3);background:var(--panel)}.server-data span{display:block;color:var(--muted);font-size:var(--font-8);text-transform:uppercase}.server-data strong{font-size:var(--font-11)}.server-actions{display:flex;align-items:center;gap:var(--space-2)}.server-actions .details{margin-right:auto}.empty,.notice{padding:var(--space-6);border:1px dashed var(--line2);border-radius:var(--radius);color:var(--muted);font-size:var(--font-11)}.notice{margin-bottom:var(--space-5);border-style:solid;background:var(--warn-bg);color:var(--warn-ink)}.error,.form-error{color:var(--red);font-size:var(--font-10)}.loading{padding:var(--space-23) 0;text-align:center;color:var(--muted)}.login{width:min(420px,100%);margin:var(--space-8) auto;padding:var(--space-7);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.login h1{margin:0 0 var(--space-2);font-size:var(--font-30)}.login>p{color:var(--muted);font-size:var(--font-11)}.login label,.dialog-card label{display:block;margin-top:var(--space-3);font-size:var(--font-9);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.login input,.dialog-card input,.dialog-card select{width:100%;height:44px;margin-top:var(--space-2);padding:0 var(--space-3);border:1px solid var(--line2);border-radius:5px;background:var(--white);color:var(--ink);outline:none}.login input:focus,.dialog-card input:focus,.dialog-card select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.wide{width:100%;margin-top:var(--space-5)}dialog{width:min(620px,calc(100% - 28px));padding:0;border:0;border-radius:14px;background:transparent;box-shadow:0 28px 90px var(--dialog-shadow)}dialog::backdrop{background:var(--backdrop);backdrop-filter:blur(3px)}.dialog-card{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden}.dialog-card>header{display:flex;align-items:start;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--line)}.dialog-card h2{margin:0;font-size:var(--font-23)}.close{display:grid;place-items:center;width:44px;height:44px;border-radius:6px;background:transparent;color:var(--muted);font-size:var(--font-21)}.close:hover{background:var(--bg-top)}.form-body,.detail-body{padding:var(--space-5) var(--space-6) var(--space-6)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-3)}.dialog-card label span{color:var(--muted);font-weight:500;text-transform:none;letter-spacing:0}.check{display:flex!important;align-items:center;min-height:44px;gap:var(--space-2);text-transform:none!important}.check input{width:16px!important;height:16px!important;margin:0!important}.dialog-card>footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-6);border-top:1px solid var(--line);background:var(--panel)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden}.detail-grid div{padding:var(--space-3);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.detail-grid div:nth-child(2n){border-right:0}.detail-grid span{display:block;color:var(--muted);font-size:var(--font-8);text-transform:uppercase}.detail-grid strong{font-size:var(--font-12)}.toast{position:fixed;right:22px;bottom:22px;padding:var(--space-3) var(--space-4);border-radius:6px;background:var(--ink);color:var(--white);font-size:var(--font-10);box-shadow:0 18px 40px var(--toast-shadow)}
@media(max-width:720px){.shell{width:calc(100% - 28px)}main{padding-top:var(--space-8)}.hero{align-items:start}.hero h1{font-size:var(--font-40)}.summary{grid-template-columns:1fr 1fr}.summary article:nth-child(2){border-right:0}.summary article:nth-child(-n+2){border-bottom:1px solid var(--line)}.server-grid{grid-template-columns:1fr}}@media(max-width:460px){.brand strong{display:none}.topbar nav a{padding:var(--space-2) var(--space-2);font-size:var(--font-10)}.hero{display:grid}.hero .primary{width:100%}.server-actions{display:grid;grid-template-columns:1fr 1fr}.server-actions .details{grid-column:1/-1;margin:0}.form-grid{grid-template-columns:1fr}.summary strong{font-size:var(--font-18)}}
.server-view{padding-bottom:var(--space-8)}.server-view-head{padding:var(--space-1) 0 var(--space-6)}.back-link{display:inline-flex;align-items:center;min-height:44px;padding:0;margin:0 0 var(--space-8);border:0;background:none;color:var(--muted);font-size:var(--font-10);font-weight:750;cursor:pointer}.back-link:hover{color:var(--accent2)}.server-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6)}.server-title-row h1{margin:0;font-size:var(--font-44);line-height:1;letter-spacing:-.055em}.server-identity{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.copy-address{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-1) var(--space-2);border:0;border-radius:4px;background:transparent;color:var(--muted);font:700 var(--font-9)/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;cursor:pointer}.copy-address:hover{background:var(--hover-strong);color:var(--ink)}.view-controls{display:flex;gap:var(--space-2)}.server-tabs{display:flex;gap:var(--space-1);overflow-x:auto;border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);scrollbar-width:thin;scrollbar-color:var(--line2) transparent}.server-tabs button{flex:none;padding:var(--space-4) var(--space-4);border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:var(--font-10);font-weight:750;cursor:pointer}.server-tabs button:hover{color:var(--ink)}.server-tabs button.active{border-bottom-color:var(--accent2);color:var(--accent2)}.tab-panel{min-height:420px;padding-top:var(--space-6)}.panel-loading{padding:var(--space-23) 0;text-align:center;color:var(--muted);font-size:var(--font-11)}.resource-strip{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:var(--space-10);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-glass-strong);overflow:hidden}.resource-strip article{min-width:0;padding:var(--space-4) var(--space-4);border-right:1px solid var(--line)}.resource-strip article:last-child{border:0}.resource-strip span{display:block;color:var(--muted);font-size:var(--font-8);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.resource-strip strong{display:block;margin-top:var(--space-1);overflow:hidden;font-size:var(--font-16);text-overflow:ellipsis;white-space:nowrap}.history-head,.list-head,.console-box>header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-3)}.history-head h2,.list-head h2,.console-box h2,.settings-card h2{margin:0;font-size:var(--font-22);letter-spacing:-.035em}.range{display:flex;padding:var(--space-1);border:1px solid var(--line);border-radius:6px}.range button{min-width:44px;min-height:44px;padding:var(--space-1) var(--space-2);border:0;border-radius:3px;background:none;color:var(--muted);font-size:var(--font-8);font-weight:800;cursor:pointer}.range button.active{background:var(--accent2);color:var(--white)}.charts{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.chart-card{padding:var(--space-4) var(--space-4) var(--space-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.chart-card header{display:flex;align-items:center;justify-content:space-between}.chart-card header span{color:var(--muted);font-size:var(--font-8);font-weight:800;text-transform:uppercase}.chart-card header strong{font-size:var(--font-11)}.chart-card svg{display:block;width:100%;height:auto;margin-top:var(--space-2)}.chart-card svg line{stroke:var(--chart-grid);stroke-width:1;stroke-dasharray:3 5}.chart-card svg path{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}.chart-empty{display:grid;place-items:center;height:160px;color:var(--muted);font-size:var(--font-9)}.console-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden}.console-box>header{padding:var(--space-4) var(--space-5);margin:0;border-bottom:1px solid var(--line)}.console-box pre{min-height:360px;max-height:520px;margin:0;padding:var(--space-5);overflow:auto;background:var(--console);color:var(--console-output);font:var(--font-11)/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap}.command-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--console-bar);color:var(--console-accent)}.command-row input{height:44px;padding:0 var(--space-3);border:1px solid var(--console-line);border-radius:4px;background:var(--console-input);color:var(--console-text);font:var(--font-11) ui-monospace,SFMono-Regular,Consolas,monospace;outline:none}.list-head>span{color:var(--muted);font-size:var(--font-9)}.data-table{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:var(--space-3);align-items:center;min-height:48px;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);font-size:var(--font-10)}.table-row:last-child{border:0}.table-row span{color:var(--muted)}.table-header{min-height:36px;background:var(--panel);color:var(--muted);font-size:var(--font-8);font-weight:800;text-transform:uppercase}.unsupported{padding:var(--space-14);border:1px dashed var(--line2);border-radius:var(--radius);text-align:center}.unsupported strong{font-size:var(--font-16)}.unsupported p{margin:var(--space-2) 0 0;color:var(--muted);font-size:var(--font-10)}.player-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.player-grid article{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--line);border-radius:8px;background:var(--paper)}.player-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:5px;background:var(--avatar-bg);color:var(--accent2);font-size:var(--font-9);font-weight:900}.player-grid strong,.player-grid small{display:block}.player-grid strong{font-size:var(--font-11)}.player-grid small{margin-top:var(--space-1);color:var(--muted);font-size:var(--font-8)}.settings-card{display:grid;grid-template-columns:1.3fr 1fr;gap:var(--space-6);width:min(720px,100%);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.settings-card>div:first-child{grid-row:span 2}.settings-card p{color:var(--muted);font-size:var(--font-10)}.settings-card label{display:block;font-size:var(--font-9);font-weight:800;text-transform:uppercase}.settings-card input,.settings-card select{width:100%;height:44px;margin-top:var(--space-2);padding:0 var(--space-3);border:1px solid var(--line2);border-radius:5px;background:var(--white)}.settings-card .form-grid{grid-column:1/-1}.settings-card .check{margin-top:var(--space-7)}.settings-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--line)}.settings-actions .danger{margin-right:auto}
@media(max-width:800px){.resource-strip{grid-template-columns:repeat(3,1fr)}.resource-strip article:nth-child(3){border-right:0}.resource-strip article:nth-child(-n+3){border-bottom:1px solid var(--line)}.charts{grid-template-columns:1fr}.player-grid{grid-template-columns:1fr 1fr}.settings-card{grid-template-columns:1fr}.settings-card>div:first-child{grid-row:auto}.settings-card .form-grid{grid-column:auto}.settings-actions{grid-column:auto}}
@media(max-width:560px){.server-tabs{mask-image:linear-gradient(to right,transparent 0,var(--ink) 18px,var(--ink) calc(100% - 18px),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,var(--ink) 18px,var(--ink) calc(100% - 18px),transparent 100%)}.server-title-row{display:grid}.server-title-row h1{font-size:var(--font-36)}.view-controls{display:grid;grid-template-columns:1fr 1fr 1fr}.resource-strip{grid-template-columns:1fr 1fr}.resource-strip article,.resource-strip article:nth-child(3){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.resource-strip article:nth-child(2n){border-right:0}.resource-strip article:last-child{border-bottom:0}.history-head{align-items:flex-start}.table-row{grid-template-columns:1.6fr 1fr}.table-row span:nth-child(3),.table-row span:nth-child(4),.table-row.table-header span:nth-child(3),.table-row.table-header span:nth-child(4){display:none}.player-grid{grid-template-columns:1fr}.settings-card .form-grid{grid-template-columns:1fr}.settings-actions{display:grid}.settings-actions .danger{margin:0}.server-tabs{margin-left:-14px;margin-right:-14px;padding-left:var(--space-4)}}
/* Readable control-room scale */
body{font-size:var(--font-15)}.topbar nav a{font-size:var(--font-14)}.overline{font-size:var(--font-12);letter-spacing:.12em}.lead{font-size:var(--font-15)}.primary,.secondary,.danger{min-height:44px;font-size:var(--font-13)}.summary span{font-size:var(--font-11)}.summary strong{font-size:var(--font-25)}.summary article:last-child strong{font-size:var(--font-15)}.group-title h3{font-size:var(--font-16)}.count{font-size:var(--font-11)}.server h4{font-size:var(--font-19)}.server-meta{font-size:var(--font-13)}.status{font-size:var(--font-11)}.server-data span{font-size:var(--font-11)}.server-data strong{font-size:var(--font-14)}.empty,.notice{font-size:var(--font-14)}.login>p{font-size:var(--font-14)}.login label,.dialog-card label{font-size:var(--font-12)}.error,.form-error{font-size:var(--font-13)}.back-link{font-size:var(--font-13)}.copy-address{font-size:var(--font-12)}.server-tabs button{font-size:var(--font-14)}.panel-loading{font-size:var(--font-14)}.resource-strip span{font-size:var(--font-11)}.resource-strip strong{font-size:var(--font-19)}.range button{min-width:48px;font-size:var(--font-12)}.chart-card header span{font-size:var(--font-12)}.chart-card header strong{font-size:var(--font-14)}.chart-empty{font-size:var(--font-13)}.console-box pre{font-size:var(--font-13)}.command-row input{font-size:var(--font-13)}.list-head>span{font-size:var(--font-12)}.table-row{font-size:var(--font-13)}.table-header{font-size:var(--font-11)}.unsupported p{font-size:var(--font-14)}.player-grid strong{font-size:var(--font-14)}.player-grid small{font-size:var(--font-11)}.player-avatar{font-size:var(--font-12)}.settings-card p{font-size:var(--font-14)}.settings-card label{font-size:var(--font-12)}.toast{font-size:var(--font-13)}
@media(max-width:460px){.topbar nav a{font-size:var(--font-12)}}
.management-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);gap:var(--space-6);align-items:start}.member-list,.schedule-list{display:grid;border-top:1px solid var(--line2)}.member-row,.schedule-row{display:grid;align-items:center;gap:var(--space-3);min-height:68px;padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.member-row{grid-template-columns:40px minmax(0,1fr) auto}.schedule-row{grid-template-columns:72px minmax(0,1fr) auto}.member-avatar{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line2);border-radius:6px;color:var(--accent2);font-size:var(--font-12);font-weight:850}.member-row strong,.member-row small,.schedule-row strong,.schedule-row small{display:block}.member-row strong,.schedule-row strong{font-size:var(--font-14)}.member-row small,.schedule-row small{margin-top:var(--space-1);color:var(--muted);font-size:var(--font-12)}.member-lock{color:var(--muted);font-size:var(--font-12)}.schedule-time strong{font:750 var(--font-17)/1 ui-monospace,SFMono-Regular,Consolas,monospace}.schedule-time small{text-transform:uppercase}.schedule-row.disabled{opacity:.62}.row-actions{display:flex;gap:var(--space-2)}.compact{min-height:44px;padding:0 var(--space-3)}.side-form{padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.side-form h3{margin:0;font-size:var(--font-19);letter-spacing:-.025em}.side-form p{margin:var(--space-2) 0 var(--space-4);color:var(--muted);font-size:var(--font-13)}.side-form label{display:block;margin-top:var(--space-4);font-size:var(--font-12);font-weight:800}.side-form input,.side-form select{width:100%;height:44px;margin-top:var(--space-2);padding:0 var(--space-3);border:1px solid var(--line2);border-radius:5px;background:var(--paper);color:var(--ink)}.side-form input:focus,.side-form select:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:1px}.time-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
@media(max-width:760px){.management-layout{grid-template-columns:1fr}.side-form{order:-1}.schedule-row{grid-template-columns:64px minmax(0,1fr)}.schedule-row .row-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:460px){.member-row{grid-template-columns:40px minmax(0,1fr)}.member-row>.compact,.member-lock{grid-column:2;justify-self:start}.schedule-row{grid-template-columns:56px minmax(0,1fr)}.row-actions{display:grid;grid-template-columns:1fr 1fr}.row-actions .compact{width:100%}}
.brand,.topbar nav a,.back-link,.copy-address,.range button,.check{min-height:44px}.topbar nav a,.back-link,.copy-address{display:inline-flex;align-items:center}.close{width:44px;height:44px}.login input,.dialog-card input,.dialog-card select,.command-row input,.settings-card input,.settings-card select,.side-form input,.side-form select{height:44px}.primary,.secondary,.danger,.compact{min-height:44px}
.chart-card{position:relative}.chart-card:focus{outline:2px solid var(--accent);outline-offset:2px}.chart-card svg{cursor:crosshair;touch-action:pan-y}.chart-cursor,.chart-marker{opacity:0;pointer-events:none}.chart-card svg .chart-cursor{stroke:var(--muted);stroke-width:1;stroke-dasharray:none}.chart-cursor.visible,.chart-marker.visible{opacity:1}.chart-tooltip{position:absolute;top:48px;z-index:2;display:grid;min-width:112px;padding:var(--space-2) var(--space-3);border-radius:6px;background:var(--ink);color:var(--white);opacity:0;pointer-events:none;transform:translate(-50%,-8px)}.chart-tooltip.visible{opacity:1}.chart-tooltip.align-right{transform:translate(-100%,-8px)}.chart-tooltip strong,.chart-tooltip span{display:block}.chart-tooltip strong{font-size:var(--font-13)}.chart-tooltip span{margin-top:var(--space-1);color:var(--line);font-size:var(--font-11);white-space:nowrap}
.topbar{flex-wrap:wrap}.topbar nav{margin-left:auto}.account{display:flex;align-items:center;gap:var(--space-2);padding-left:var(--space-3);border-left:1px solid var(--line)}.account span{max-width:140px;overflow:hidden;color:var(--ink);font-size:var(--font-12);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.account button{min-height:44px;padding:0 var(--space-3);border:0;background:transparent;color:var(--muted);font-size:var(--font-12);font-weight:750;cursor:pointer}.account button:hover{color:var(--red)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1);margin:var(--space-5) 0 var(--space-3);padding:var(--space-1);border:1px solid var(--line);border-radius:7px}.auth-tabs button{min-height:44px;border:0;border-radius:4px;background:transparent;color:var(--muted);font-size:var(--font-13);font-weight:800;cursor:pointer}.auth-tabs button.active{background:var(--accent2);color:var(--white)}.auth-success{padding:var(--space-5) 0}.auth-success strong{font-size:var(--font-18)}.auth-success p{color:var(--muted)}
@media(max-width:680px){.topbar nav{order:3;width:100%;margin-left:0;border-top:1px solid var(--line)}.topbar nav a{flex:1;justify-content:center}.account{margin-left:auto}.hero .lead{max-width:28ch}}
\n.owner-restricted,.provider-unavailable{margin:var(--space-3) 0 0;color:var(--muted);font-size:var(--font-10)}.owner-restricted{font-weight:700}.server-tabs button.unsupported-tab::after,.server-tabs button.owner-tab::after{display:block;margin-top:2px;font-size:var(--font-8);font-weight:700;letter-spacing:.03em}.server-tabs button.unsupported-tab::after{content:'Nedostupné';color:var(--warn-ink)}.server-tabs button.owner-tab::after{content:'Pouze vlastník';color:var(--muted)}.server-tabs button.owner-tab{cursor:not-allowed}

/* UHM keeps Hosting's visual language while allowing wide tables to scroll. */
.server-view.uhm-detail .server-tabs {
  flex-wrap: wrap;
  overflow: visible;
  mask-image: none;
  -webkit-mask-image: none;
}

.server-view.uhm-detail .server-tabs button[hidden] {
  display: none;
}

.file-manager {
  display: grid;
  gap: var(--space-4);
  min-width: 0;
}

.file-manager .list-head {
  align-items: center;
  flex-wrap: wrap;
}

.file-path {
  margin: var(--space-1) 0 0;
  color: var(--muted);
  overflow-wrap: anywhere;
  font: var(--font-12) ui-monospace, SFMono-Regular, Consolas, monospace;
}

.file-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.file-upload-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.file-table,
.backup-table {
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}

.file-table .table-row {
  grid-template-columns: minmax(14rem, 2fr) minmax(6rem, .7fr) minmax(7rem, .8fr) minmax(10rem, 1fr) minmax(8rem, 1fr);
  min-width: 760px;
}

.backup-table .table-row {
  grid-template-columns: minmax(14rem, 2fr) minmax(7rem, .7fr) minmax(12rem, 1.2fr) minmax(8rem, .9fr);
  min-width: 680px;
}

.file-table .table-row > *,
.backup-table .table-row > * {
  min-width: 0;
  overflow-wrap: anywhere;
}

.file-open {
  max-width: 100%;
  padding: 4px 0;
  border: 0;
  background: transparent;
  color: var(--ink);
  text-align: left;
  overflow-wrap: anywhere;
  cursor: pointer;
}

.file-open:hover {
  color: var(--accent2);
  text-decoration: underline;
}

.file-empty {
  min-width: 100%;
  padding: var(--space-5);
  color: var(--muted);
  font-size: var(--font-13);
}

.backup-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  gap: var(--space-3);
}

.backup-section > div:first-child {
  grid-row: auto;
}

.backup-section .data-table {
  width: 100%;
}

.uhm-settings {
  display: block;
  width: 100%;
}

.uhm-settings > div:first-child {
  grid-row: auto;
}

@media (max-width: 560px) {
  .server-view.uhm-detail .server-tabs {
    gap: var(--space-1);
    margin-right: 0;
    margin-left: 0;
    padding: var(--space-1);
  }

  .server-view.uhm-detail .server-tabs button {
    flex: 1 1 calc(33.333% - var(--space-1));
    min-width: 0;
    padding: var(--space-2);
    text-align: center;
  }

  .file-table .table-row span:nth-child(3),
  .file-table .table-row span:nth-child(4),
  .file-table .table-row.table-header span:nth-child(3),
  .file-table .table-row.table-header span:nth-child(4),
  .backup-table .table-row span:nth-child(3),
  .backup-table .table-row span:nth-child(4),
  .backup-table .table-row.table-header span:nth-child(3),
  .backup-table .table-row.table-header span:nth-child(4) {
    display: block;
  }
}
