:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0d14;--card:#ffffff0a;--card-border:#ffffff17;--card-shadow:0 24px 60px #00000073, inset 0 1px 0 #ffffff0d;--text:#eef0f6;--muted:#9aa0b5;--muted-strong:#9aa0b5bf;--muted-label:#9aa0b5b3;--muted-note:#9aa0b599;--muted-faint:#9aa0b573;--placeholder:#9aa0b58c;--accent:#7c6cff;--accent-2:#4f8cff;--accent-tint:#7c6cff0f;--accent-ring:#7c6cff29;--error:#ff6b7a;--success:#34d399;--warning:#ffb02e;--surface:#ffffff0a;--surface-border:#ffffff12;--grid-line:#ffffff14;--border-input-hover:#ffffff2e;--border-hover:#ffffff40;--input-bg:#ffffff08;--btn-soft-bg:#ffffff0d;--btn-soft-bg-hover:#ffffff14;--alert-text:#fff;--brand-gradient:linear-gradient(180deg, #fff 20%, #7d84a3 110%);--glow-1:#7c6cff38;--glow-2:#4f8cff29;--skeleton:linear-gradient(90deg, #ffffff0f, #ffffff24, #ffffff0f);--spinner-track:#ffffff59;--live-dot-ring:#ffffffd9;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1f8;--card:#ffffffd1;--card-border:#171c2b1a;--card-shadow:0 24px 48px #232e5724, inset 0 1px 0 #ffffffa6;--text:#191f33;--muted:#57617c;--muted-strong:#57617cd9;--muted-label:#57617ccc;--muted-note:#57617cb8;--muted-faint:#57617c94;--placeholder:#57617c8c;--accent:#5646d6;--accent-tint:#5646d60f;--accent-ring:#5646d62e;--error:#c93a4d;--success:#0f8a52;--warning:#a36908;--surface:#ffffffa8;--surface-border:#171c2b14;--grid-line:#171c2b1a;--border-input-hover:#171c2b38;--border-hover:#171c2b4d;--input-bg:#fff;--btn-soft-bg:#171c2b0d;--btn-soft-bg-hover:#171c2b17;--alert-text:#7c2130;--brand-gradient:linear-gradient(180deg, #273052 10%, #667092 115%);--glow-1:#7c6cff29;--glow-2:#4f8cff1f;--skeleton:linear-gradient(90deg, #171c2b14, #171c2b29, #171c2b14);--spinner-track:#57617c59;--live-dot-ring:#fffffff2}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;transition:background-color .25s,color .25s}.page{flex-direction:column;justify-content:center;align-items:center;gap:40px;min-height:100vh;padding:48px 20px;display:flex;position:relative;overflow:hidden}.glow{filter:blur(120px);pointer-events:none;z-index:0;border-radius:50%;position:absolute}.glow-1{background:var(--glow-1);width:480px;height:480px;top:-140px;left:-120px}.glow-2{background:var(--glow-2);width:420px;height:420px;bottom:-160px;right:-100px}.page>:not(.glow){z-index:1;position:relative}.brand{text-align:center;-webkit-user-select:none;user-select:none;position:relative}.brand-badge{letter-spacing:.42em;text-indent:.42em;color:var(--muted);text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:600}.brand-name{letter-spacing:.01em;background:var(--brand-gradient);color:#0000;background-clip:text;margin:0;font-size:clamp(4rem,17vw,11rem);font-weight:800;line-height:.95}.theme-toggle{width:40px;height:40px;font:inherit;color:var(--muted);background:var(--btn-soft-bg);border:1px solid var(--surface-border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,background .15s,transform .15s;display:inline-flex;position:absolute;top:0;right:0}.theme-toggle:hover{color:var(--text);border-color:var(--border-hover);background:var(--btn-soft-bg-hover)}.theme-toggle:active{transform:scale(.94)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card{background:var(--card);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(18px);width:min(400px,100%);box-shadow:var(--card-shadow);border-radius:20px;padding:36px 32px;transition:background-color .25s,border-color .25s,box-shadow .25s}.card-title{margin:0 0 6px;font-size:22px;font-weight:700}.card-subtitle{color:var(--muted);margin:0 0 28px;font-size:14px}.field{flex-direction:column;gap:7px;margin-bottom:18px;display:flex}.field label{color:var(--muted);font-size:13px;font-weight:600}.field input{width:100%;font:inherit;color:var(--text);background:var(--input-bg);border:1px solid var(--card-border);border-radius:12px;outline:none;padding:12px 14px;font-size:15px;transition:border-color .18s,box-shadow .18s,background .18s}.field input::placeholder{color:var(--placeholder)}.field input:hover{border-color:var(--border-input-hover)}.field input:focus{border-color:var(--accent);background:var(--accent-tint);box-shadow:0 0 0 4px var(--accent-ring)}.field input[aria-invalid=true]{border-color:var(--error)}.field input[aria-invalid=true]:focus{box-shadow:0 0 0 4px #ff6b7a26}.error{color:var(--error);margin:0;font-size:13px}.btn{width:100%;font:inherit;color:#fff;background:linear-gradient(135deg, var(--accent), var(--accent-2));cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin-top:8px;padding:13px 18px;font-size:15px;font-weight:600;transition:transform .15s,box-shadow .15s,opacity .15s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 28px #7c6cff59}.btn:active:not(:disabled){transform:translateY(0)}.btn-github{background:#24292f;box-shadow:inset 0 0 0 1px #ffffff14}.btn-github:hover:not(:disabled){background:#2d333b;box-shadow:0 10px 28px #0006,inset 0 0 0 1px #ffffff24}.btn:disabled{opacity:.65;cursor:not-allowed}.btn-ghost{border:1px solid var(--card-border);background:0 0;width:auto;margin-top:20px;padding:10px 22px;transition:border-color .15s,background .15s}.btn-ghost:hover:not(:disabled){border-color:var(--border-hover);background:var(--btn-soft-bg);box-shadow:none;transform:none}.spinner{border:2px solid var(--spinner-track);border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.success-icon{color:#fff;background:linear-gradient(135deg,#34d399,#0ea5e9);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:4px auto 18px;font-size:26px;display:flex}.success-title{text-align:center;margin:0 0 8px;font-size:22px}.success-text{color:var(--muted);text-align:center;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.6}.success-text strong{color:var(--text)}.footer{letter-spacing:.08em;color:var(--muted-note);font-size:12px}.dashboard{width:100%;max-width:420px}.balance-alert{color:var(--alert-text);background:linear-gradient(135deg,#ff6b7a38,#ff9f432e);border:1px solid #ff6b7a80;border-radius:12px;align-items:center;gap:10px;margin-top:18px;padding:12px 16px;font-size:14px;font-weight:600;line-height:1.45;display:flex}.balance-alert-icon{font-size:18px;line-height:1}.stats{flex-direction:column;gap:10px;margin:18px 0;display:flex}.stat{background:var(--surface);border:1px solid var(--surface-border);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;transition:background-color .25s,border-color .25s;display:flex}.stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-label);font-size:12px}.stat-value{color:var(--accent);font-size:22px;font-weight:700}.stat-note{color:var(--muted-note);font-size:12px}.stat-group-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-faint);margin-top:6px;font-size:11px}.forecast-value-muted{color:var(--muted-note);font-weight:500}.service-stat{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.service-status{align-items:center;gap:8px;font-size:13px;font-weight:600;line-height:1;display:inline-flex}.service-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.service-dot-active{background:var(--success);box-shadow:0 0 6px #34d399b3}.service-status-active{color:var(--success)}.service-dot-inactive{background:var(--error);box-shadow:0 0 6px #ff6b7ab3}.service-status-inactive{color:var(--error)}.stat-value-sm{font-size:16px;font-weight:600}.vps-health{gap:6px}.vps-health-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.vps-health-badge{align-items:center;gap:8px;font-size:14px;font-weight:700;line-height:1;display:inline-flex}.vps-health-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.vps-health-ok{background:#34d39912;border-color:#34d39959}.vps-health-ok-dot{background:var(--success);box-shadow:0 0 6px #34d399b3}.vps-health-ok .vps-health-badge{color:var(--success)}.vps-health-warning{background:#ffb02e14;border-color:#ffb02e66}.vps-health-warning-dot{background:var(--warning);box-shadow:0 0 6px #ffb02eb3}.vps-health-warning .vps-health-badge{color:var(--warning)}.vps-health-critical{background:#ff6b7a17;border-color:#ff6b7a80}.vps-health-critical-dot{background:var(--error);animation:1.6s ease-in-out infinite chart-dot-pulse;box-shadow:0 0 6px #ff6b7ab3}.vps-health-critical .vps-health-badge{color:var(--error)}.vps-health-unknown .vps-health-badge{color:var(--muted)}.vps-health-unknown-dot{background:#9aa0b58c}.vps-health-note{color:var(--muted);font-size:13px;line-height:1.5}@media (prefers-reduced-motion:reduce){.vps-health-critical-dot{animation:none}}.nginx-errors{background:var(--surface);border:1px solid var(--surface-border);border-radius:12px;padding:10px 14px;transition:background-color .25s,border-color .25s}.nginx-errors-text{max-height:150px;color:var(--muted);white-space:pre-wrap;word-break:break-all;margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:11px;line-height:1.6;overflow-y:auto}.nginx-errors-empty{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.chart-card{background:var(--surface);border:1px solid var(--surface-border);border-radius:12px;padding:12px 14px 8px;transition:background-color .25s,border-color .25s}.chart-svg{width:100%;height:auto;display:block}.chart-grid{stroke:var(--grid-line);stroke-width:1px}.chart-tick{fill:var(--muted-strong);font-variant-numeric:tabular-nums;font-size:9px}.chart-live-dot{stroke:var(--live-dot-ring);stroke-width:1.5px;animation:2s ease-in-out infinite chart-dot-pulse}@keyframes chart-dot-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.chart-live-dot{animation:none}}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:6px 16px;padding:4px 2px 8px;font-size:12px;display:flex}.chart-legend-item{align-items:center;gap:7px;display:inline-flex}.chart-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.chart-legend-value{color:var(--text);font-variant-numeric:tabular-nums}.chart-empty{color:var(--muted);margin:0;padding:14px 2px 16px;font-size:13px;line-height:1.55}.dashboard-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.updated-at{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.btn-refresh{font:inherit;color:var(--text);background:var(--btn-soft-bg);border:1px solid var(--card-border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:600;transition:border-color .15s,background .15s,opacity .15s,transform .15s;display:inline-flex}.btn-refresh:hover:not(:disabled){border-color:var(--border-hover);background:var(--btn-soft-bg-hover)}.btn-refresh:active:not(:disabled){transform:translateY(1px)}.btn-refresh:disabled{opacity:.65;cursor:not-allowed}.spinner-sm{width:13px;height:13px}.export-section{margin-top:18px}.export-actions{gap:8px;margin-top:10px;display:flex}.btn-export{font:inherit;color:var(--text);border:1px solid var(--card-border);cursor:pointer;white-space:nowrap;background:#ffffff0d;border-radius:10px;flex:1;justify-content:center;align-items:center;padding:10px 12px;font-size:13px;font-weight:600;transition:border-color .15s,background .15s,transform .15s,opacity .15s;display:inline-flex}.btn-export:hover:not(:disabled){border-color:var(--border-hover);background:var(--btn-soft-bg-hover)}.btn-export:active:not(:disabled){transform:translateY(1px)}.btn-export:disabled{opacity:.5;cursor:not-allowed}.export-notice{border-radius:10px;margin:10px 0 0;padding:10px 14px;font-size:13px;font-weight:500;line-height:1.5}.export-notice-success{color:var(--success);background:#34d3991a;border:1px solid #34d39959}.export-notice-error{color:var(--error);background:#ff6b7a1a;border:1px solid #ff6b7a66}.stat-skeleton{gap:10px}.skeleton{background:var(--skeleton);background-size:200% 100%;border-radius:6px;animation:1.2s ease-in-out infinite skeleton-pulse;display:block}.skeleton-label{width:72px;height:12px;margin-top:6px}.skeleton-text-label{width:38%;height:11px}.skeleton-text-value{width:56%;height:20px}.skeleton-text-note{width:76%;height:11px}@keyframes skeleton-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}body,.card,.stat,.chart-card,.nginx-errors{transition:none}}@media (min-width:768px){.dashboard{width:min(1200px,100vw - 80px);max-width:none}.dashboard>.card{width:100%;padding:40px}.dashboard .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.dashboard .stat-group-label,.dashboard .chart-card,.dashboard .forecast-grid,.dashboard .nginx-errors{grid-column:1/-1}.dashboard .chart-card{min-width:0}.dashboard .stat-group-label{margin-top:10px}}@media (max-width:480px){.page{gap:22px;max-width:100vw;padding:28px 14px;overflow-x:hidden}.glow{filter:blur(80px)}.glow-1{width:320px;height:320px;top:-110px;left:-90px}.glow-2{width:300px;height:300px;bottom:-120px;right:-80px}.theme-toggle{width:36px;height:36px;top:-4px}.brand-badge{letter-spacing:.32em;text-indent:.32em;margin-bottom:6px;font-size:10px}.brand-name{font-size:clamp(2.5rem,13vw,3.25rem)}.card{border-radius:16px;padding:22px 16px}.card-title{font-size:20px}.card-subtitle{margin-bottom:18px}.field input{font-size:16px}.btn,.btn-ghost{width:100%;padding:13px 14px}.btn-ghost{margin-top:10px}.balance-alert{margin-top:14px;padding:10px 12px;font-size:13px}.stats{gap:8px;margin:14px 0}.export-actions{flex-direction:column;gap:6px}.stat{border-radius:10px;gap:3px;padding:10px 12px}.stat-value{font-size:18px}.stat-value,.stat-value-sm,.stat-note,.success-text strong{overflow-wrap:anywhere}}
