.app-shell{background:radial-gradient(ellipse at 86% 0%, #5680671a, transparent 38rem), var(--canvas);min-height:100vh}.topbar{border-bottom:1px solid var(--line);background:#fbfaf6d1;justify-content:space-between;align-items:center;height:74px;padding:0 clamp(20px,5vw,72px);display:flex}.brand,.account,.page-heading,.refresh-indicator,.status-card-top,.server-summary,.panel-heading,.dashboard-footer{align-items:center;display:flex}.brand{color:var(--ink);letter-spacing:-.04em;gap:11px;font-weight:760;text-decoration:none}.brand-light{color:var(--muted);font-weight:500}.brand-mark{color:#f9f8f2;background:var(--forest);width:36px;height:36px;font-family:var(--mono);border-radius:11px;place-items:center;font-size:15px;font-weight:800;display:grid}.account{gap:18px}.account-name{max-width:230px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.dashboard{width:min(1120px,100% - 40px);margin:0 auto;padding:50px 0 32px}.page-heading{justify-content:space-between;margin-bottom:25px}.eyebrow{color:var(--quiet);letter-spacing:.17em;margin:0 0 7px;font-size:10px;font-weight:750}h1,h2,p{margin-top:0}.page-heading h1,.login-card h1{color:var(--ink);letter-spacing:-.055em;margin-bottom:0;font-size:clamp(29px,4vw,39px);line-height:1.08}.refresh-indicator{color:var(--muted);gap:9px;font-size:12px}.refresh-dot,.status-pulse{border-radius:50%;width:8px;height:8px;display:inline-block}.refresh-dot{background:var(--forest);box-shadow:0 0 0 4px #4375591f}.refresh-dot.is-refreshing{animation:1.2s ease-in-out infinite pulse}.status-card,.panel{border:1px solid var(--line);background:var(--paper);border-radius:18px;box-shadow:0 12px 40px #2a302409}.status-card{padding:clamp(22px,4vw,34px)}.status-card-top,.panel-heading{justify-content:space-between}.status-card h2,.panel h2{color:var(--ink);letter-spacing:-.035em;margin-bottom:0;font-size:19px}.status-pill{border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.status-pill .status-pulse{background:currentColor;width:7px;height:7px}.is-online{color:#276241;background:#edf6ef;border-color:#d3e6d9}.is-offline{color:#9c3e36;background:#fbefed;border-color:#efd8d4}.is-pending{color:#776d56;background:#f5f1e7;border-color:#e8e1d3}.server-summary{border:1px solid var(--line);background:#faf9f5;border-radius:13px;gap:15px;margin:27px 0 25px;padding:15px 17px}.server-icon{width:43px;height:43px;color:var(--forest);background:#eaf0e8;border-radius:12px;place-items:center;font-size:24px;display:grid}.server-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.server-copy strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.server-copy span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.metrics-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.metric{flex-direction:column;gap:7px;min-width:0;padding:20px 20px 0 0;display:flex}.metric+.metric{border-left:1px solid var(--line);padding-left:22px}.metric-label{color:var(--quiet);letter-spacing:.12em;font-size:9px;font-weight:750}.metric strong{color:var(--ink);font-family:var(--mono);letter-spacing:-.06em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(19px,3vw,27px);overflow:hidden}.metric-footnote,.panel-footnote{color:var(--quiet);font-size:11px}.content-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:18px;margin-top:18px;display:grid}.panel{min-width:0;padding:24px}.panel-heading{margin-bottom:21px}.panel-icon{width:37px;height:37px;color:var(--forest);background:#edf1e9;border-radius:11px;place-items:center;font-size:18px;display:grid}.count-badge{color:var(--forest);vertical-align:2px;font-family:var(--mono);background:#edf1e9;border-radius:999px;margin-left:5px;padding:3px 7px;font-size:11px}.player-list{margin:0;padding:0;list-style:none}.player-list li{border-top:1px solid var(--line);color:var(--ink);align-items:center;gap:10px;padding:10px 0;font-size:13px;display:flex}.player-avatar{color:#5b6547;width:29px;height:29px;font-family:var(--mono);background:#e8eadc;border-radius:9px;place-items:center;font-size:12px;font-weight:700;display:grid}.player-online{color:#47805c;margin-left:auto;font-size:10px}.empty-players{min-height:102px;color:var(--quiet);text-align:center;place-content:center;justify-items:center;gap:5px;display:grid}.empty-players span{font-size:22px}.empty-players p{margin:0;font-size:12px}.panel-footnote{margin:14px 0 0;line-height:1.5}.controls-description{color:var(--muted);margin:-10px 0 18px;font-size:12px;line-height:1.55}.action-list{gap:9px;display:grid}.button{cursor:pointer;font:inherit;border:0}.button:focus-visible{outline-offset:3px;outline:3px solid #43755973}.action-button{border:1px solid var(--line);text-align:left;background:#fffefa;border-radius:12px;align-items:center;gap:12px;width:100%;padding:11px 12px;transition:border-color .14s,transform .14s,background .14s;display:flex}.action-button:not(:disabled):hover{background:#f8faf5;border-color:#bdc9b9;transform:translateY(-1px)}.action-button:disabled{cursor:not-allowed;opacity:.48}.action-symbol{width:32px;height:32px;color:var(--forest);background:#edf2eb;border-radius:9px;flex:none;place-items:center;font-size:14px;display:grid}.action-update .action-symbol{color:#8e6d36;background:#f5efdf}.action-stop .action-symbol{color:#9d5149;background:#f7eae7}.action-button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.action-button strong{color:var(--ink);font-size:12px}.action-button small{color:var(--quiet);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.action-arrow{color:var(--quiet);margin-left:auto}.permission-note{color:var(--quiet);align-items:flex-start;gap:8px;margin:15px 0 0;font-size:11px;line-height:1.5;display:flex}.permission-note span{color:#8e6d36}.alert{border:1px solid #0000;border-radius:10px;padding:11px 14px;font-size:12px;line-height:1.5}.alert-error{color:#883b32;background:#fbefed;border-color:#efd2ce}.alert-success{color:#276241;background:#eff7f0;border-color:#d0e4d6}.controls-panel>.alert{margin:14px 0 0}.offline-message{color:#9c3e36;margin:18px 0 0;font-size:12px}.dashboard-footer{color:var(--quiet);justify-content:space-between;margin-top:20px;font-size:11px}.button-quiet{color:var(--muted);background:0 0;border-radius:8px;padding:8px 10px;font-size:12px}.button-quiet:hover{color:var(--ink);background:#eeede6}.refresh-button{align-items:center;gap:7px;display:inline-flex}.login-page,.full-screen-state{place-items:center;min-height:100vh;padding:24px;display:grid}.login-page{background:radial-gradient(ellipse at 50% 15%, #56806726, transparent 34rem), var(--canvas)}.login-card{border:1px solid var(--line);background:var(--paper);text-align:center;border-radius:20px;width:min(100%,410px);padding:42px;box-shadow:0 24px 80px #2a302417}.login-card>.brand-mark{border-radius:16px;width:52px;height:52px;margin:0 auto 25px;font-size:20px}.login-card h1{margin:0 0 10px;font-size:31px}.muted{color:var(--muted);font-size:13px;line-height:1.55}.login-button{justify-content:space-between;width:100%;margin-top:25px;padding:13px 15px;display:flex}.button-primary{color:#fff;background:var(--forest);border-radius:10px;font-size:13px;font-weight:650}.button-primary:hover{background:#2f5b41}.login-note{color:var(--quiet);margin:16px 0 0;font-size:11px}.login-card .alert{margin-top:15px}.full-screen-state{color:var(--muted);background:var(--canvas);text-align:center;font-size:13px}.config-error>div{border:1px solid var(--line);background:var(--paper);border-radius:16px;max-width:480px;padding:32px}.config-error h1{color:var(--ink);font-size:26px}.config-error p{line-height:1.6}.spinner{border:2px solid #d5dbd1;border-top-color:var(--forest);vertical-align:-4px;border-radius:50%;width:17px;height:17px;margin-right:10px;animation:.75s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.35}}@media (width<=760px){.dashboard{padding-top:32px}.content-grid{grid-template-columns:1fr}.account-name{max-width:135px}}@media (width<=520px){.topbar{height:64px;padding:0 16px}.dashboard{width:calc(100% - 28px);padding-top:27px}.refresh-indicator{max-width:132px;font-size:10px}.status-card,.panel{border-radius:15px;padding:19px}.metrics-grid{grid-template-columns:1fr 1fr;row-gap:17px}.metric{padding-top:15px}.metric+.metric{padding-left:13px}.metric:nth-child(3){border-left:0;padding-left:0}.dashboard-footer{align-items:flex-start;gap:12px;font-size:10px}.login-card{padding:32px 24px}}:root{color:#252a23;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--canvas:#f4f3ed;--paper:#fffefa;--ink:#252a23;--muted:#72786e;--quiet:#969a91;--line:#e8e7df;--forest:#3e6c4d;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;background:#f4f3ed;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{font-family:inherit}::selection{color:#203728;background:#d5e5d7}
