:root{color-scheme:light;font-family:Sora,Segoe UI,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--background: #f5f7f4;--background-strong: #eef2ec;--surface: rgba(255, 255, 255, .78);--surface-strong: #ffffff;--surface-muted: rgba(246, 249, 245, .84);--surface-border: rgba(41, 56, 46, .1);--text-main: #142019;--text-muted: #5b6a61;--accent: #24543c;--accent-strong: #183b2a;--accent-soft: rgba(36, 84, 60, .1);--success: #2f6a4a;--success-soft: rgba(47, 106, 74, .12);--danger: #9b433a;--danger-soft: rgba(155, 67, 58, .12);--shadow-lg: 0 32px 90px rgba(23, 35, 28, .1);--shadow-md: 0 18px 48px rgba(23, 35, 28, .08);--radius-xl: 32px;--radius-lg: 24px;--radius-md: 18px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--text-main);background:radial-gradient(circle at top left,rgba(80,125,98,.18),transparent 30%),radial-gradient(circle at 85% 20%,rgba(201,217,205,.7),transparent 24%),linear-gradient(180deg,#fbfcfa 0%,var(--background) 55%,#eef2ec 100%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(rgba(20,32,25,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(20,32,25,.025) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 88%);mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 88%)}button,input,select{font:inherit}button{cursor:pointer}a{color:var(--accent)}.auth-layout,.dashboard-layout,.fullscreen-state{min-height:100vh;padding:clamp(20px,3vw,36px)}.auth-layout,.dashboard-layout{display:grid;align-items:stretch}.auth-panel,.dashboard-shell,.status-card{width:min(1240px,100%);margin:0 auto;position:relative;z-index:1}.auth-panel{min-height:calc(100vh - clamp(40px,6vw,72px));display:grid;justify-content:center;align-items:center}.auth-card,.panel-card,.status-card,.overview-card{border:1px solid var(--surface-border);background:var(--surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-lg)}.status-card{padding:clamp(28px,4vw,44px)}.dashboard-header h1,.status-card h1{margin:0;font-size:clamp(2.4rem,5vw,5rem);line-height:.94;letter-spacing:-.065em}.overview-card strong{display:block;font-size:1rem;font-weight:600;letter-spacing:-.03em;margin-bottom:6px}.overview-card p,.device-summary{margin:0;color:var(--text-muted)}.auth-card,.panel-card{border-radius:32px;padding:clamp(28px,3.5vw,40px)}.auth-card{width:min(560px,100%);display:grid;align-content:center;min-height:min(680px,100%)}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;border-radius:20px;background:#1420190d;margin-bottom:28px}.segment{border:0;border-radius:16px;padding:14px 16px;background:transparent;color:var(--text-muted);transition:background-color .18s ease,color .18s ease,transform .18s ease}.segment.active{background:var(--surface-strong);color:var(--text-main);transform:translateY(-1px);box-shadow:0 10px 24px #111c150f}.form-grid{display:grid;gap:18px}.inline-actions{display:grid;gap:12px}.field{display:grid;gap:10px}.field span,.eyebrow,.overview-label{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.eyebrow{margin:0;color:var(--accent);font-weight:700}.field input,.field select{width:100%;border:1px solid rgba(36,84,60,.12);background:#ffffffd1;border-radius:var(--radius-md);padding:16px 18px;color:var(--text-main);outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.field input:focus,.field select:focus{border-color:#24543c61;box-shadow:0 0 0 4px #24543c1a;background:#fff}.primary-button,.secondary-button,.danger-button,.ghost-button{min-height:52px;border:0;border-radius:var(--radius-md);padding:14px 18px;transition:transform .16s ease,opacity .16s ease,background-color .16s ease,border-color .16s ease}.primary-button:hover,.secondary-button:hover,.danger-button:hover,.ghost-button:hover{transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.primary-button{background:var(--accent);color:#f6fbf8}.secondary-button{background:#1420190f;color:var(--text-main)}.danger-button{background:var(--danger-soft);color:var(--danger)}.ghost-button{background:#ffffff7a;color:var(--text-main);border:1px solid rgba(36,84,60,.12)}.text-button{border:0;padding:0;background:transparent;color:var(--text-muted);text-align:left}.feedback{margin:16px 0 0;padding:14px 16px;border-radius:var(--radius-md)}.feedback.error{background:var(--danger-soft);color:var(--danger)}.feedback.success{background:var(--success-soft);color:var(--success)}.muted-text{color:var(--text-muted)}.dashboard-shell{display:grid;gap:22px}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.dashboard-heading-block{display:grid;gap:8px}.dashboard-heading-block h1{max-width:none}.dashboard-subtitle{margin:0}.overview-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.overview-card{border-radius:28px;padding:20px 22px}.overview-label{display:block;color:var(--text-muted);margin-bottom:12px}.overview-card strong{margin-bottom:8px;font-size:clamp(1.8rem,3vw,2.5rem)}.server-status-panel{display:grid;gap:18px}.server-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.server-card{border:1px solid rgba(36,84,60,.08);border-radius:24px;background:#ffffffa3;padding:18px}.dashboard-grid{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px;align-items:start}.sidebar-stack{display:grid;gap:22px}.sticky-card{position:sticky;top:24px}.panel-heading{display:grid;gap:8px;margin-bottom:20px}.panel-heading h2,.empty-state h3,.device-card h3{margin:0;letter-spacing:-.04em}.devices-panel{min-height:100%}.billing-panel{display:grid;gap:14px}.billing-chip{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:999px;background:#1420190d;color:var(--text-muted);font-size:.92rem}.billing-chip.active{background:var(--accent-soft);color:var(--accent-strong)}.billing-chip.accent{background:#24543c24;color:var(--accent-strong)}.balance-card{display:grid;gap:16px;border:1px solid rgba(36,84,60,.08);border-radius:24px;background:linear-gradient(180deg,#ffffffe6,#f3f8f4d1);padding:22px}.compact-balance-card{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px}.balance-card strong{display:block;margin:6px 0 8px;font-size:clamp(2rem,4vw,2.8rem);letter-spacing:-.05em}.balance-card p{margin:0;color:var(--text-muted)}.compact-balance-actions{display:grid;justify-items:end;gap:12px}.empty-state{border:1px dashed rgba(36,84,60,.16);border-radius:26px;padding:32px;background:var(--surface-muted)}.device-list{display:grid;gap:14px}.device-card{border:1px solid rgba(36,84,60,.1);border-radius:28px;padding:20px;background:#ffffffb8;box-shadow:var(--shadow-md)}.device-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}.device-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:6px}.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;font-size:.82rem;font-weight:600}.status-badge.active{color:var(--success);background:var(--success-soft)}.status-badge.paused{color:var(--danger);background:var(--danger-soft)}.status-badge.maintenance{color:#8c6a18;background:#c99e2a29}.device-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.device-summary{max-width:52ch}.traffic-card{margin-top:16px;display:grid;gap:12px;border:1px solid rgba(36,84,60,.08);border-radius:22px;background:#f2f7f3b8;padding:16px}.traffic-card-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.traffic-card-top strong{display:block;margin-top:4px;font-size:1.2rem;letter-spacing:-.04em}.traffic-badge{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:36px;padding:0 12px;border-radius:999px;background:#24543c1f;color:var(--accent-strong);font-weight:600}.traffic-bar{position:relative;overflow:hidden;width:100%;height:10px;border-radius:999px;background:#14201914}.traffic-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2f6a4a,#5ea47b)}.traffic-footnote{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.status-card{margin:auto;border-radius:36px}.guide-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0f181242;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.guide-modal{width:min(720px,100%);border:1px solid var(--surface-border);border-radius:30px;background:#ffffffeb;box-shadow:var(--shadow-lg);padding:24px}.guide-modal-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.guide-modal h2{margin:0 0 4px;letter-spacing:-.04em}.guide-steps{margin:0;padding-left:20px;display:grid;gap:12px}.guide-steps li{padding-left:4px}.guide-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}@media (max-width: 1080px){.dashboard-grid{grid-template-columns:1fr}.auth-panel{min-height:auto}.overview-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.server-grid{grid-template-columns:1fr}.sticky-card{position:static}.dashboard-heading-block h1{white-space:nowrap}}@media (max-width: 720px){.auth-layout,.dashboard-layout,.fullscreen-state{padding:14px}.auth-card,.panel-card,.status-card,.overview-card{border-radius:24px}.auth-card,.panel-card,.status-card{padding:20px}.auth-panel{align-items:stretch}.auth-card{align-content:start;min-height:auto}.dashboard-header h1,.status-card h1{max-width:none;font-size:clamp(1.8rem,9vw,2.5rem)}.segmented-control{margin-bottom:18px}.segment{padding:12px 10px}.dashboard-heading-block h1{white-space:normal}.dashboard-header,.device-card-top,.traffic-card-top,.guide-modal-top,.server-card-top{display:grid;grid-template-columns:1fr;align-items:stretch}.overview-strip{grid-template-columns:1fr}.device-actions,.guide-actions,.compact-balance-actions,.device-actions button,.ghost-button,.guide-actions button,.compact-balance-actions button{width:100%}.compact-balance-card{grid-template-columns:1fr;align-items:stretch}}
