@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=DM+Sans:wght@400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=DM+Sans:wght@400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=DM+Sans:wght@400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500&family=Manrope:wght@700;800&display=swap";.app{background:var(--bg);flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex}.main{flex:1;padding:20px 16px 90px}.bottom-nav{width:100%;max-width:480px;padding:10px 8px;padding-bottom:calc(10px + env(safe-area-inset-bottom));z-index:100;background:#fff;border-top:none;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 32px #6d28d914,0 -2px 8px #0000000f}.nav-item{color:#9ca3af;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px 4px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.nav-item span{font-size:10px;font-family:var(--font-display);letter-spacing:.03em;font-weight:500}.nav-item.active{color:var(--accent)}.nav-item.active svg{filter:drop-shadow(0 0 6px #7c3aed66)}.nav-item.active span{color:var(--accent);font-weight:700}.nav-item.active:before{content:"";background:linear-gradient(90deg,#8b5cf6,#7c3aed);border-radius:0 0 6px 6px;width:32px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 0 8px #7c3aed80}.nav-item:active{background:#7c3aed0f;transform:scale(.88)}.home{background:#f0f0f7;flex-direction:column;gap:20px;min-height:100vh;margin:-20px -16px;padding:24px 16px;display:flex}.home-hero{background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 40%,#4f46e5 70%,#0ea5e9 100%);border-radius:28px;padding:28px 24px 32px;position:relative;overflow:hidden;box-shadow:0 16px 40px #6d28d966,0 6px 16px #6d28d940,inset 0 1px #fff3,inset 0 -2px #0000001a}.hero-circles{pointer-events:none;position:absolute;inset:0}.hero-circle{border:1px solid #ffffff1a;border-radius:50%;position:absolute}.hero-circle-1{background:#ffffff0d;width:180px;height:180px;top:-60px;right:-40px}.hero-circle-2{background:#ffffff0a;width:100px;height:100px;bottom:-30px;right:40px}.hero-circle-3{background:#ffffff0f;width:60px;height:60px;top:20px;right:80px}.hero-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;letter-spacing:.04em;background:#ffffff26;border:1px solid #fff3;border-radius:20px;align-items:center;gap:6px;margin-bottom:20px;padding:5px 12px;font-family:Syne,sans-serif;font-size:12px;display:inline-flex}.badge-dot{background:#4ade80;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite blink;box-shadow:0 0 8px #4ade80}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.hero-title{color:#fff;letter-spacing:-.5px;margin-bottom:6px;font-family:Syne,sans-serif;font-size:34px;font-weight:800;line-height:1.1}.hero-sub{color:#ffffffa6;font-size:14px}.warning-card{cursor:pointer;transition:all var(--transition);background:#fff8ed;border:1px solid #fde68a;border-radius:16px;align-items:center;gap:12px;padding:14px 16px;display:flex}.warning-card:active{transform:scale(.98)}.warning-icon{color:#d97706;background:#fef3c7;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.warning-text{flex-direction:column;flex:1;gap:2px;display:flex}.warning-text span:first-child{color:#92400e;font-size:14px;font-weight:600}.warning-text span:last-child{color:#b45309;font-size:12px}.warning-arrow{color:#d97706;font-size:18px}.stats-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stat-card{cursor:pointer;background:#fff;border:1px solid #6d28d914;border-radius:22px;flex-direction:column;gap:8px;min-height:130px;padding:20px 18px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 16px #6d28d90f,0 1px 4px #0000000a,inset 0 1px #ffffffe6}.stat-card:active{transform:translateY(1px)scale(.98);box-shadow:0 2px 8px #6d28d90a,0 1px 2px #00000008}.stat-card--accent{background:linear-gradient(145deg,#8b5cf6 0%,#7c3aed 40%,#6d28d9 100%);border-color:#0000;transition:all .25s cubic-bezier(.4,0,.2,1);transform:translateY(0);box-shadow:0 12px 32px #6d28d973,0 4px 12px #6d28d94d,inset 0 1px #fff3,inset 0 -1px #00000026}.stat-card--accent:active{transform:translateY(2px)scale(.97);box-shadow:0 4px 12px #6d28d959,0 2px 6px #6d28d933,inset 0 1px #ffffff26}.stat-card--accent2{background:linear-gradient(145deg,#38bdf8 0%,#0ea5e9 40%,#0284c7 100%);border-color:#0000;transition:all .25s cubic-bezier(.4,0,.2,1);transform:translateY(0);box-shadow:0 12px 32px #0ea5e966,0 4px 12px #0ea5e940,inset 0 1px #ffffff40,inset 0 -1px #0000001f}.stat-card--accent2:active{transform:translateY(2px)scale(.97);box-shadow:0 4px 12px #0ea5e94d,0 2px 6px #0ea5e926,inset 0 1px #fff3}.stat-top{justify-content:space-between;align-items:center;display:flex}.stat-label{letter-spacing:.08em;text-transform:uppercase;font-family:Syne,sans-serif;font-size:11px}.stat-card--accent .stat-label,.stat-card--accent2 .stat-label{color:#fff9}.stat-plus{width:26px;height:26px;transition:all var(--transition);border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-plus--purple,.stat-plus--cyan{color:#fff;background:#fff3}.stat-plus:active{background:#ffffff59;transform:scale(.88)}.stat-value{letter-spacing:-1px;color:#fff;font-family:Manrope,sans-serif;font-size:30px;font-weight:800;line-height:1}.stat-hint{color:#fff9;font-size:12px}.section-title{color:#9ca3af;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-family:Syne,sans-serif;font-size:12px;font-weight:600}.features{flex-direction:column;display:flex}.features-list{flex-direction:column;gap:8px;display:flex}.feature-item{background:#fff;border:1px solid #6d28d912;border-radius:18px;align-items:center;gap:14px;padding:16px;transition:all .2s;display:flex;box-shadow:0 4px 16px #0000000f,0 1px 4px #0000000a,inset 0 1px #ffffffe6}.feature-item:active{transform:translateY(1px)scale(.98);box-shadow:0 2px 8px #0000000a}.feature-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.feature-icon--purple{color:#7c3aed;background:#f3f0ff}.feature-icon--cyan{color:#0284c7;background:#e0f7ff}.feature-icon--green{color:#16a34a;background:#edfcf2}.feature-text{flex-direction:column;gap:2px;display:flex}.feature-text span:first-child{color:#1a1a2e;font-size:14px;font-weight:600}.feature-text span:last-child{color:#6b7280;font-size:12px}.support-card{background:#fff;border:1px solid #6d28d914;border-radius:22px;flex-direction:column;gap:14px;padding:18px;display:flex;box-shadow:0 4px 16px #6d28d90f,0 1px 4px #0000000a,inset 0 1px #ffffffe6}.support-row{align-items:center;gap:12px;display:flex}.support-icon{width:38px;height:38px;color:var(--accent);background:#f3f0ff;border:1px solid #7c3aed26;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.support-icon--cyan{color:var(--accent2);background:#e0f7ff;border-color:#0ea5e933}.support-text{flex-direction:column;gap:2px;display:flex}.support-text span:first-child{color:#9ca3af;font-size:12px;font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase}.support-link{color:var(--accent);font-size:15px;font-weight:600;font-family:var(--font-display);text-decoration:none}.support-id{color:#1a1a2e;font-size:15px;font-weight:700;font-family:var(--font-numbers);letter-spacing:.5px}.support-divider{background:#0000000f;height:1px}.stat-devices-breakdown{flex-direction:column;gap:2px;margin-top:2px;display:flex}.breakdown-item{font-size:11px}.breakdown-item--active{color:#fffc}.breakdown-item--paused{color:#fbbf24}.devices{flex-direction:column;gap:16px;display:flex}.devices-header{justify-content:space-between;align-items:center;display:flex}.page-title{font-family:var(--font-display);color:var(--text-primary);font-size:28px;font-weight:800}.page-sub{color:var(--text-secondary);margin-top:2px;font-size:13px}.btn-fab{background:linear-gradient(135deg, var(--accent-bright), var(--accent));color:#fff;width:44px;height:44px;transition:all var(--transition);box-shadow:var(--shadow-accent);border:none;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-fab--close{background:var(--bg-elevated);box-shadow:var(--shadow-sm);color:var(--text-secondary);border:1px solid var(--border-subtle)}.btn-fab:active{transform:scale(.92)}.create-form{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-md);flex-direction:column;gap:12px;padding:18px;display:flex}.form-field{background:var(--bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:12px 14px;display:flex}.field-icon{color:var(--text-muted);flex-shrink:0}.form-field input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:15px}.form-field input::placeholder{color:var(--text-muted)}.form-error{color:var(--danger);background:var(--danger-bg);border:1px solid #dc262626;border-radius:8px;padding:8px 12px;font-size:13px}.btn-primary{background:linear-gradient(135deg, var(--accent-bright), var(--accent));color:#fff;border-radius:var(--radius-sm);font-size:15px;font-weight:600;font-family:var(--font-display);width:100%;transition:all var(--transition);box-shadow:var(--shadow-accent);border:none;justify-content:center;align-items:center;gap:8px;padding:13px 20px;display:flex}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-primary:active:not(:disabled){transform:scale(.97)translateY(1px);box-shadow:0 4px 12px #6d28d940}.page-error{color:var(--danger);background:var(--danger-bg);border-radius:var(--radius-sm);border:1px solid #dc262626;padding:10px 14px;font-size:13px}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.empty-icon{background:var(--accent-subtle);border:1px solid var(--accent-border);width:72px;height:72px;color:var(--accent);box-shadow:var(--shadow-md);border-radius:22px;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.empty-state h3{font-family:var(--font-display);color:var(--text-primary);font-size:18px;font-weight:700}.empty-state p{color:var(--text-secondary);max-width:240px;margin-bottom:8px;font-size:13px;line-height:1.6}.devices-list{flex-direction:column;gap:12px;display:flex}.device-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);transition:all var(--transition);flex-direction:column;gap:12px;padding:16px;display:flex}.device-card--inactive{opacity:.55}.device-top{justify-content:space-between;align-items:center;display:flex}.device-info{align-items:center;gap:12px;display:flex}.device-icon{background:var(--accent-subtle);border:1px solid var(--accent-border);width:40px;height:40px;color:var(--accent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.device-name{color:var(--text-primary);font-size:15px;font-weight:600;font-family:var(--font-display);display:block}.device-status{align-items:center;gap:5px;margin-top:2px;font-size:12px;display:flex}.status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.status--active{color:var(--success)}.status--active .status-dot{background:var(--success);box-shadow:0 0 6px var(--success);animation:2s ease-in-out infinite blink}.status--blocked{color:var(--danger)}.status--blocked .status-dot{background:var(--danger)}.btn-icon{border:1px solid var(--border-subtle);background:var(--bg-elevated);width:36px;height:36px;transition:all var(--transition);color:var(--text-muted);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-icon--danger:hover{color:var(--danger);background:var(--danger-bg);border-color:#dc262633}.btn-icon:active{transform:scale(.9)}.device-url{flex-direction:column;gap:8px;display:flex}.url-box{background:var(--bg);border:1px solid var(--border-subtle);border-radius:10px;padding:10px 12px}.url-text{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:11px;display:block;overflow:hidden}.btn-copy{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);transition:all var(--transition);font-size:13px;font-weight:500;font-family:var(--font-display);border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px;display:flex}.btn-copy--copied{color:var(--success);background:var(--success-bg);border-color:#16a34a40}.btn-copy:active{transform:scale(.97)}.device-hint{color:var(--text-muted);text-align:center;font-size:11px}.btn-setup{background:var(--accent-subtle);border:1px solid var(--accent-border);border-radius:var(--radius-sm);width:100%;color:var(--accent);font-size:13px;font-weight:600;font-family:var(--font-display);transition:all var(--transition);text-align:center;padding:10px 14px}.btn-setup:active{transform:scale(.97)}.device-confirmed{color:var(--success);font-size:12px;font-family:var(--font-display);align-items:center;gap:6px;padding:6px 0 2px;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#00000080;align-items:flex-end;padding:0;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:28px 28px 0 0;width:100%;max-height:90vh;padding:24px 20px 40px;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-header h2{font-family:var(--font-display);color:var(--text-primary);font-size:20px;font-weight:800}.modal-close{width:34px;height:34px;color:var(--text-secondary);transition:all var(--transition);background:#f3f4f6;border:none;border-radius:10px;justify-content:center;align-items:center;display:flex}.modal-close:active{transform:scale(.9)}.device-type-selector{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:24px;display:grid}.type-btn{border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition);font-size:13px;font-weight:500;font-family:var(--font-display);background:#f9fafb;border:1.5px solid #e5e7eb;align-items:center;gap:8px;padding:10px 12px;display:flex}.type-btn--active{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent)}.type-btn:active{transform:scale(.96)}.setup-steps{flex-direction:column;gap:20px;margin-bottom:24px;display:flex}.setup-step{gap:14px;display:flex}.step-num{background:linear-gradient(135deg, var(--accent-bright), var(--accent));width:28px;height:28px;font-size:13px;font-weight:700;font-family:var(--font-display);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 10px #7c3aed4d}.step-content{flex-direction:column;gap:6px;padding-top:3px;display:flex}.step-title{color:var(--text-primary);font-size:14px;font-weight:600;font-family:var(--font-display)}.step-hint{color:var(--text-secondary);font-size:12px;line-height:1.5}.step-link{color:var(--accent2);font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.btn-happ{color:#fff;border-radius:var(--radius-sm);font-size:14px;font-weight:700;font-family:var(--font-display);transition:all var(--transition);box-shadow:var(--shadow-accent2);background:linear-gradient(135deg,#0ea5e9,#0284c7);border:none;align-items:center;gap:8px;margin-top:4px;padding:11px 16px;display:flex}.btn-happ:disabled{opacity:.5;cursor:not-allowed}.btn-happ:active:not(:disabled){transform:scale(.97)translateY(1px)}.btn-confirm{background:linear-gradient(135deg, var(--accent-bright), var(--accent));color:#fff;border-radius:var(--radius-md);font-size:16px;font-weight:700;font-family:var(--font-display);width:100%;transition:all var(--transition);box-shadow:var(--shadow-accent);border:none;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex}.btn-confirm:disabled{opacity:.5;cursor:not-allowed}.btn-confirm:active:not(:disabled){transform:scale(.97)translateY(1px)}.modal-success{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:32px 0 16px;display:flex}.success-icon{background:var(--success-bg);width:72px;height:72px;color:var(--success);border:2px solid #16a34a33;border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:flex}.modal-success h3{font-family:var(--font-display);color:var(--text-primary);font-size:22px;font-weight:800}.modal-success p{color:var(--text-secondary);font-size:14px}.btn-happ--copied{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 8px 24px #16a34a4d}.device-actions{flex-direction:column;gap:8px;display:flex}.btn-copy-sub{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);font-size:12px;font-weight:500;font-family:var(--font-display);transition:all var(--transition);background:0 0;justify-content:center;align-items:center;gap:6px;padding:9px 14px;display:flex}.btn-copy-sub:active{color:var(--success);border-color:#16a34a4d;transform:scale(.97)}.device-actions{align-items:center;gap:8px;display:flex}.status--paused{color:#f59e0b}.status--paused .status-dot{background:#f59e0b}.btn-icon--warning{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b33}.btn-icon--warning:hover{background:#f59e0b33}.btn-icon--success{color:#10b981;background:#10b9811a;border-color:#10b98133}.btn-icon--success:hover{background:#10b98133}.device-card--paused{opacity:.8}.pause-confirm-body{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:16px 20px;display:flex}.pause-confirm-icon{font-size:40px}.pause-confirm-body p{color:var(--text-primary);font-size:14px;line-height:1.6}.pause-confirm-hint{color:var(--text-secondary)!important;font-size:12px!important}.pause-confirm-btns{gap:10px;padding:0 20px 20px;display:flex}.btn-pause-cancel{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:12px;flex:1;padding:12px;font-size:14px;font-weight:600}.btn-pause-confirm{color:#fff;cursor:pointer;background:#f59e0b;border:none;border-radius:12px;flex:1;padding:12px;font-size:14px;font-weight:600}.balance{flex-direction:column;gap:20px;display:flex}.balance-hero{border-radius:var(--radius-xl);background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 40%,#4f46e5 70%,#0ea5e9 100%);padding:28px 24px;position:relative;overflow:hidden;box-shadow:0 16px 40px #6d28d966,0 6px 16px #6d28d940,inset 0 1px #fff3}.balance-glow{pointer-events:none;background:radial-gradient(circle,#0ea5e94d 0%,#0000 70%);width:220px;height:220px;position:absolute;bottom:-60px;left:-40px}.balance-hero-label{color:#fff9;font-size:12px;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:10px;display:flex}.balance-hero-amount{font-family:var(--font-numbers);color:#fff;letter-spacing:-1px;margin-bottom:8px;font-size:44px;font-weight:800;line-height:1}.balance-hero-hint{color:#fff9;font-size:13px}.section-label{font-family:var(--font-display);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:600}.topup-section{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);flex-direction:column;gap:12px;padding:20px;display:flex}.amount-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.amount-btn{background:var(--bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:14px;font-weight:700;font-family:var(--font-numbers);color:var(--text-secondary);transition:all var(--transition);box-shadow:var(--shadow-sm);padding:12px 0}.amount-btn--selected{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent);box-shadow:0 2px 8px #7c3aed26}.amount-btn:active{transform:scale(.95)}.custom-field{background:var(--bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:12px 14px}.custom-field input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:15px}.custom-field input::placeholder{color:var(--text-muted)}.methods-grid{flex-direction:column;gap:8px;display:flex}.method-btn{background:var(--bg);border:1.5px solid var(--border-subtle);border-radius:var(--radius-md);transition:all var(--transition);text-align:left;box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:14px 16px;display:flex}.method-btn--selected{border-color:var(--accent);background:var(--accent-subtle);box-shadow:0 2px 12px #7c3aed1f}.method-btn:active{transform:scale(.98)}.method-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.method-icon--stars{color:#ca8a04;background:#fefce8;border:1px solid #fde68a}.method-icon--card{background:var(--accent-subtle);color:var(--accent);border:1px solid var(--accent-border)}.method-info{flex-direction:column;flex:1;gap:2px;display:flex}.method-info span:first-child{color:var(--text-primary);font-size:14px;font-weight:600;font-family:var(--font-display)}.method-info span:last-child{color:var(--text-secondary);font-size:12px}.method-check{background:var(--accent);border:2px solid var(--accent-bright);border-radius:50%;flex-shrink:0;width:18px;height:18px}.msg{border-radius:var(--radius-sm);padding:10px 14px;font-size:13px}.msg--error{color:var(--danger);background:var(--danger-bg);border:1px solid #dc262626}.msg--success{color:var(--success);background:var(--success-bg);border:1px solid #16a34a33}.btn-pay{background:linear-gradient(135deg, var(--accent-bright), var(--accent));color:#fff;border-radius:var(--radius-md);font-size:16px;font-weight:700;font-family:var(--font-display);width:100%;transition:all var(--transition);box-shadow:var(--shadow-accent);border:none;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex}.btn-pay:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-pay:active:not(:disabled){transform:scale(.97)translateY(1px);box-shadow:0 4px 12px #6d28d940}.transactions{flex-direction:column;gap:12px;display:flex}.tx-loading{justify-content:center;padding:24px;display:flex}.tx-empty{text-align:center;color:var(--text-muted);background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);padding:24px;font-size:14px}.tx-list{flex-direction:column;gap:8px;display:flex}.tx-item{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:14px;display:flex}.tx-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.tx-icon--in{background:var(--success-bg);color:var(--success);border:1px solid #16a34a26}.tx-icon--out{background:var(--danger-bg);color:var(--danger);border:1px solid #dc26261f}.tx-info{flex-direction:column;flex:1;gap:2px;display:flex}.tx-label{color:var(--text-primary);font-size:14px;font-weight:500}.tx-date{color:var(--text-muted);font-size:11px}.tx-amount{font-size:15px;font-weight:700;font-family:var(--font-numbers)}.tx-amount--pos{color:var(--success)}.tx-amount--neg{color:var(--danger)}.method-btn:disabled{opacity:.5;cursor:not-allowed}.referral{flex-direction:column;gap:20px;display:flex}.ref-header h1{font-family:var(--font-display);color:var(--text-primary);font-size:28px;font-weight:800}.ref-header p{color:var(--text-secondary);margin-top:2px;font-size:13px}.bonus-hero{border-radius:var(--radius-lg);background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 40%,#0ea5e9 100%);align-items:center;gap:18px;padding:24px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 32px #6d28d959,0 4px 12px #6d28d933,inset 0 1px #fff3}.bonus-glow{pointer-events:none;background:radial-gradient(circle,#ffffff1a 0%,#0000 70%);width:180px;height:180px;position:absolute;top:-50px;right:-50px}.bonus-icon-wrap{color:#fff;background:#ffffff26;border:1px solid #fff3;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.bonus-content{flex-direction:column;gap:4px;display:flex}.bonus-amount{font-family:var(--font-numbers);color:#fff;letter-spacing:-1px;font-size:34px;font-weight:800}.bonus-desc{color:#ffffffb3;font-size:13px;line-height:1.5}.ref-stats-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ref-stat-card{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:6px;padding:14px;display:flex}.ref-stat-card--accent{background:linear-gradient(135deg,#8b5cf61a,#6366f11a);border-color:#8b5cf633}.ref-stat-card .ref-stat-icon{color:#8b5cf6;background:#8b5cf61a;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.ref-stat-card .ref-stat-value{color:var(--text-primary);font-size:20px;font-weight:700}.ref-stat-card .ref-stat-label{color:var(--text-secondary);font-size:12px}.ref-stat-icon{background:var(--accent-subtle);border:1px solid var(--accent-border);width:36px;height:36px;color:var(--accent);border-radius:10px;justify-content:center;align-items:center;display:flex}.ref-stat-value{font-family:var(--font-numbers);color:var(--text-primary);font-size:22px;font-weight:800}.ref-stat-label{color:var(--text-muted);font-size:11px;font-family:var(--font-display);letter-spacing:.05em}.ref-stat-divider{background:var(--border-subtle);width:1px;height:48px}.ref-link-section{flex-direction:column;gap:10px;display:flex}.section-label{font-family:var(--font-display);color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.ref-link-box{background:var(--bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:12px 14px;display:flex}.ref-link-text{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.btn-copy-inline{background:var(--bg-elevated);border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--text-secondary);transition:all var(--transition);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-copy-inline--copied{color:var(--success);background:var(--success-bg);border-color:#16a34a40}.btn-copy-inline:active{transform:scale(.9)}.btn-share{background:linear-gradient(135deg, var(--accent-bright), var(--accent));color:#fff;border-radius:var(--radius-md);font-size:15px;font-weight:700;font-family:var(--font-display);width:100%;transition:all var(--transition);box-shadow:var(--shadow-accent);border:none;justify-content:center;align-items:center;gap:10px;padding:15px;display:flex}.btn-share:active{transform:scale(.97)translateY(1px);box-shadow:0 4px 12px #6d28d940}.ref-list{flex-direction:column;gap:10px;display:flex}.ref-items{flex-direction:column;gap:8px;display:flex}.ref-item{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:14px;display:flex}.ref-avatar{background:var(--accent-subtle);border:1px solid var(--accent-border);width:40px;height:40px;font-family:var(--font-display);color:var(--accent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.ref-info{flex-direction:column;flex:1;gap:2px;display:flex}.ref-name{color:var(--text-primary);font-size:14px;font-weight:500}.ref-date{color:var(--text-muted);font-size:11px}.ref-bonus{font-size:14px;font-weight:700;font-family:var(--font-numbers)}.ref-bonus--paid{color:var(--success)}.ref-bonus--pending{color:var(--text-muted)}.page-loading{justify-content:center;padding:60px 0;display:flex}.ref-conditions{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;align-items:center;gap:0;padding:16px;display:flex}.ref-condition{flex:1;align-items:center;gap:12px;display:flex}.ref-condition-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.ref-condition-icon--purple{color:#8b5cf6;background:#8b5cf626}.ref-condition-icon--green{color:#10b981;background:#10b98126}.ref-condition-text{flex-direction:column;gap:2px;display:flex}.ref-condition-amount{color:var(--text-primary);font-size:18px;font-weight:700}.ref-condition-desc{color:var(--text-secondary);font-size:11px;line-height:1.3}.ref-condition-divider{background:var(--border);flex-shrink:0;width:1px;height:40px;margin:0 16px}.admin{flex-direction:column;gap:20px;display:flex}.admin-header{justify-content:space-between;align-items:center;display:flex}.admin-badge{background:var(--accent-subtle);border:1px solid var(--accent-border);font-size:13px;font-family:var(--font-display);color:var(--accent);letter-spacing:.05em;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-weight:600;display:inline-flex}.btn-refresh{background:var(--bg-card);border:1px solid var(--border-subtle);width:40px;height:40px;color:var(--text-secondary);transition:all var(--transition);box-shadow:var(--shadow-sm);border-radius:12px;justify-content:center;align-items:center;display:flex}.btn-refresh--spinning svg{animation:.7s linear infinite spin}.btn-refresh:active{transform:scale(.92)}.admin-stats{flex-direction:column;gap:8px;display:flex}.admin-stat{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);align-items:center;gap:14px;padding:16px;display:flex}.admin-stat-icon{background:var(--accent-subtle);border:1px solid var(--accent-border);width:46px;height:46px;color:var(--accent);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.admin-stat-info{flex-direction:column;gap:2px;display:flex}.admin-stat-value{font-family:var(--font-numbers);color:var(--text-primary);letter-spacing:-.5px;font-size:24px;font-weight:800}.admin-stat-label{color:var(--text-secondary);font-size:12px}.admin-topup{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);flex-direction:column;gap:12px;padding:20px;display:flex}.admin-section-title{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.topup-fields{flex-direction:column;gap:8px;display:flex}.admin-field{background:var(--bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:12px 14px;display:flex}.admin-field-icon{color:var(--text-muted);flex-shrink:0}.admin-field input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:15px}.admin-field input::placeholder{color:var(--text-muted)}.topup-result{border-radius:var(--radius-sm);padding:10px 14px;font-size:13px}.topup-result--success{color:var(--success);background:var(--success-bg);border:1px solid #16a34a33}.topup-result--error{color:var(--danger);background:var(--danger-bg);border:1px solid #dc262626}.btn-topup{background:linear-gradient(135deg, var(--accent-bright), var(--accent));color:#fff;border-radius:var(--radius-md);font-size:15px;font-weight:700;font-family:var(--font-display);width:100%;transition:all var(--transition);box-shadow:var(--shadow-accent);border:none;justify-content:center;align-items:center;gap:8px;padding:14px;display:flex}.btn-topup:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-topup:active:not(:disabled){transform:scale(.97)translateY(1px);box-shadow:0 4px 12px #6d28d940}.admin-servers{flex-direction:column;gap:12px;display:flex}.servers-loading{justify-content:center;padding:24px;display:flex}.servers-list{flex-direction:column;gap:10px;display:flex}.server-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);flex-direction:column;gap:12px;padding:16px;display:flex}.server-header{align-items:center;gap:10px;display:flex}.server-name{font-size:15px;font-weight:600;font-family:var(--font-display);color:var(--text-primary);flex:1}.server-status{font-size:12px;font-family:var(--font-display);font-weight:600}.server-status--online{color:var(--success)}.server-status--offline{color:var(--danger)}.server-url{color:var(--text-muted);background:var(--bg);text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--border-subtle);border-radius:8px;padding:8px 12px;font-family:monospace;font-size:12px;overflow:hidden}.metric-value--online{color:var(--success)}.server-metric{background:var(--bg);border:1px solid var(--border-subtle);border-radius:10px;flex-direction:column;gap:4px;padding:10px;display:flex}.metric-label{color:var(--text-muted);font-size:10px;font-family:var(--font-display);letter-spacing:.05em}.metric-value{font-size:14px;font-weight:700;font-family:var(--font-numbers);color:var(--text-primary)}.spinner-sm-white{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.admin-servers-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.admin-servers-header .admin-section-title{margin-bottom:0}.server-header-btns{gap:8px;display:flex}.btn-instruction{color:#0284c7;font-size:13px;font-weight:600;font-family:var(--font-display);transition:all var(--transition);background:#e0f7ff;border:1px solid #0ea5e933;border-radius:10px;align-items:center;gap:6px;padding:8px 12px;display:flex}.btn-instruction:active{transform:scale(.96)}.btn-add-server{background:var(--accent-subtle);border:1px solid var(--accent-border);color:var(--accent);font-size:13px;font-weight:600;font-family:var(--font-display);transition:all var(--transition);border-radius:10px;align-items:center;gap:6px;padding:8px 12px;display:flex}.btn-add-server:active{transform:scale(.96)}.add-server-form{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--accent-border);flex-direction:column;gap:10px;margin-bottom:12px;padding:16px;display:flex}.form-subtitle{font-family:var(--font-display);color:var(--text-primary);font-size:14px;font-weight:700}.server-form-grid{flex-direction:column;gap:8px;display:flex}.btn-delete-server{background:var(--danger-bg);width:28px;height:28px;color:var(--danger);transition:all var(--transition);border:1px solid #dc262626;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.btn-delete-server:active{transform:scale(.9)}.instructions-modal{flex-direction:column;max-height:85vh;display:flex}.instructions-content{flex-direction:column;flex:1;gap:20px;padding-top:4px;display:flex;overflow-y:auto}.instruction-step{flex-direction:column;gap:8px;display:flex}.step-title{font-family:var(--font-display);color:var(--accent);font-size:14px;font-weight:700}.step-text{color:var(--text-secondary);white-space:pre-line;font-size:13px;line-height:1.6}.code-text{color:#c4b5fd;white-space:pre-wrap;word-break:break-all;margin:0;font-family:monospace;font-size:12px}.btn-copy-code{color:#c4b5fd;width:26px;height:26px;transition:all var(--transition);background:#ffffff1a;border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;top:8px;right:8px}.btn-copy-code:active{transform:scale(.9)}.spinner-sm{border:2px solid #dc26264d;border-top-color:var(--danger);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}.btn-open-panel{background:linear-gradient(135deg, var(--accent-bright), var(--accent));color:#fff;font-size:13px;font-weight:600;font-family:var(--font-display);transition:all var(--transition);box-shadow:0 4px 12px var(--accent-glow);border:none;border-radius:12px;align-items:center;gap:6px;padding:8px 14px;display:flex}.btn-open-panel:disabled{opacity:.7;cursor:not-allowed}.btn-open-panel:active{transform:scale(.96)}.spinner-sm-purple{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}.legal{flex-direction:column;gap:20px;display:flex}.legal-list{flex-direction:column;gap:8px;display:flex}.legal-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);transition:all var(--transition);background:#fff;overflow:hidden}.legal-card--open{box-shadow:var(--shadow-md);border-color:var(--accent-border)}.legal-card-header{cursor:pointer;width:100%;color:var(--text-secondary);transition:color var(--transition);background:0 0;border:none;justify-content:space-between;align-items:center;padding:16px;display:flex}.legal-card--open .legal-card-header{color:var(--accent)}.legal-card-title{align-items:center;gap:12px;display:flex}.legal-card-title span{font-size:14px;font-weight:600;font-family:var(--font-display);color:var(--text-primary)}.legal-icon{background:var(--accent-subtle);border:1px solid var(--accent-border);width:36px;height:36px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.legal-card-content{border-top:1px solid var(--border-subtle);margin-top:0;padding:0 16px 16px;animation:.2s fadeInUp}.doc-heading{color:var(--text-primary);font-size:13px;font-weight:700;font-family:var(--font-display);margin-top:14px;margin-bottom:4px}.doc-item{color:var(--text-secondary);padding-left:8px;font-size:13px;line-height:1.6}.doc-text{color:var(--text-secondary);font-size:13px;line-height:1.6}.trial{background:linear-gradient(135deg,#f0f0f7 0%,#e8e4ff 100%);flex-direction:column;align-items:center;max-width:480px;min-height:100vh;margin:0 auto;padding:24px 16px 40px;display:flex}.trial-hero{text-align:center;width:100%;padding:40px 24px 32px;position:relative}.trial-hero-glow{pointer-events:none;background:radial-gradient(circle,#7c3aed26 0%,#0000 70%);width:300px;height:300px;position:absolute;top:0;left:50%;transform:translate(-50%)}.trial-logo{color:#fff;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-radius:22px;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 20px;display:flex;box-shadow:0 12px 32px #7c3aed66}.trial-hero h1{font-family:var(--font-display);color:#1a1a2e;margin-bottom:8px;font-size:28px;font-weight:800}.trial-hero p{color:#6b7280;font-size:14px;line-height:1.6}.trial-card{background:#fff;border:1px solid #6d28d914;border-radius:28px;width:100%;padding:28px 24px;box-shadow:0 8px 32px #6d28d91a,0 2px 8px #0000000a,inset 0 1px #ffffffe6}.trial-card h2{font-family:var(--font-display);color:#1a1a2e;margin-bottom:8px;font-size:20px;font-weight:800}.trial-card p{color:#6b7280;margin-bottom:20px;font-size:14px;line-height:1.6}.trial-features{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}.trial-feature{color:#374151;align-items:center;gap:10px;font-size:14px;display:flex}.trial-feature svg{color:var(--accent);flex-shrink:0}.trial-btn{color:#fff;width:100%;font-size:16px;font-weight:700;font-family:var(--font-display);cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:16px;transition:all .2s;display:flex;box-shadow:0 8px 24px #7c3aed59}.trial-btn--copied{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 8px 24px #16a34a4d}.trial-btn:active{transform:scale(.97)translateY(1px)}.trial-timer{color:#15803d;background:#f0fdf4;border:1px solid #16a34a33;border-radius:12px;align-items:center;gap:8px;margin-bottom:20px;padding:10px 14px;font-size:13px;display:flex}.trial-url-box{word-break:break-all;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:12px;padding:12px 14px}.trial-url-text{color:#6b7280;font-family:monospace;font-size:11px}.trial-steps{border-top:1px solid #f3f4f6;margin-top:20px;padding-top:20px}.trial-steps h3{color:#1a1a2e;font-size:14px;font-weight:600;font-family:var(--font-display);margin-bottom:12px}.trial-steps ol{flex-direction:column;gap:8px;padding-left:20px;display:flex}.trial-steps li{color:#6b7280;font-size:13px;line-height:1.5}.trial-bot-link{text-align:center;color:var(--accent);font-size:14px;font-weight:600;font-family:var(--font-display);margin-top:16px;text-decoration:none;display:block}.trial-loading{flex-direction:column;align-items:center;gap:16px;padding:20px 0;display:flex}.trial-loading p{color:#6b7280;margin:0}.trial-blocked-icon{color:#d97706;background:#fef3c7;border-radius:20px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;display:flex}.trial-countdown{font-family:var(--font-numbers);color:#1a1a2e;text-align:center;margin:16px 0;font-size:36px;font-weight:800}.loading-screen{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.loading-screen p{color:var(--text-secondary);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;font-size:13px}.spinner{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}.error-screen{min-height:100vh;color:var(--danger);text-align:center;background:var(--bg);justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex}.sidebar{z-index:100;background:#0f172a;flex-direction:column;width:220px;min-height:100vh;padding:20px 12px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-logo{border-bottom:1px solid #ffffff0f;flex-direction:column;align-items:flex-start;gap:2px;margin-bottom:16px;padding:4px 8px 20px;display:flex}.sidebar-logo-icon{margin-bottom:6px;font-size:20px}.sidebar-logo span{color:#f8fafc;letter-spacing:-.3px;font-family:IBM Plex Mono,monospace;font-size:15px;font-weight:600}.sidebar-logo small{color:#475569;text-transform:uppercase;letter-spacing:.08em;font-family:IBM Plex Mono,monospace;font-size:10px}.sidebar-nav{flex-direction:column;flex:1;gap:2px;display:flex}.sidebar-link{color:#64748b;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.sidebar-link:hover{color:#cbd5e1;background:#ffffff0a}.sidebar-link--active{color:#818cf8;background:#6366f126}.sidebar-link--active svg{color:#6366f1}.sidebar-logout{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .15s;display:flex}.sidebar-logout:hover{color:#f87171;background:#ef444414}.dashboard{flex-direction:column;gap:20px;font-family:DM Sans,sans-serif;display:flex}.dash-header{justify-content:space-between;align-items:flex-start;display:flex}.dash-title{color:#0f172a;letter-spacing:-.3px;margin-bottom:2px;font-family:IBM Plex Mono,monospace;font-size:22px;font-weight:700}.dash-sub{color:#94a3b8;font-size:13px}.dash-refresh{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;transition:all .15s;display:flex}.dash-refresh:hover{background:#f8fafc}.dash-refresh.spinning svg{animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.stats-row{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-tile{background:#fff;border:1px solid #f1f5f9;border-radius:12px;align-items:center;gap:12px;padding:16px;transition:box-shadow .15s;display:flex;box-shadow:0 1px 4px #0000000a}.stat-tile:hover{box-shadow:0 4px 12px #00000014}.stat-tile-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.stat-tile--indigo .stat-tile-icon{color:#6366f1;background:#eef2ff}.stat-tile--cyan .stat-tile-icon{color:#06b6d4;background:#ecfeff}.stat-tile--emerald .stat-tile-icon{color:#10b981;background:#ecfdf5}.stat-tile--amber .stat-tile-icon{color:#f59e0b;background:#fffbeb}.stat-tile-body{flex-direction:column;gap:1px;min-width:0;display:flex}.stat-tile-val{color:#0f172a;letter-spacing:-.5px;font-family:IBM Plex Mono,monospace;font-size:20px;font-weight:700;line-height:1.2}.stat-tile-label{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.charts-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.chart-card{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:20px;box-shadow:0 1px 4px #0000000a}.chart-card-header{justify-content:space-between;align-items:baseline;margin-bottom:20px;display:flex}.chart-card-title{color:#0f172a;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:600}.chart-card-sub{color:#94a3b8;font-size:11px}.chart-loading{color:#94a3b8;justify-content:center;align-items:center;height:160px;font-size:13px;display:flex}.chart-wrap{height:160px}.chart-bars{align-items:flex-end;gap:6px;height:100%;display:flex}.chart-bar-col{flex-direction:column;flex:1;align-items:center;gap:6px;height:100%;display:flex}.chart-bar-track{background:#f8fafc;border-radius:4px;flex:1;align-items:flex-end;width:100%;display:flex;position:relative;overflow:visible}.chart-bar-fill{background:linear-gradient(#6366f1 0%,#818cf8 100%);border-radius:4px;width:100%;min-height:2px;transition:height .5s cubic-bezier(.4,0,.2,1);position:relative}.chart-bar-fill:hover .chart-tooltip{opacity:1;transform:translateY(0)}.chart-tooltip{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#0f172a;border-radius:5px;padding:3px 7px;font-family:IBM Plex Mono,monospace;font-size:11px;transition:all .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)translateY(4px)}.chart-label{color:#94a3b8;white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:10px}.donut-wrap{align-items:center;gap:20px;display:flex}.donut-svg{flex-shrink:0;width:140px;height:140px}.donut-segment{transition:opacity .2s}.donut-segment:hover{opacity:.8}.donut-total-num{fill:#0f172a;font-family:IBM Plex Mono,monospace;font-size:16px;font-weight:700}.donut-total-label{fill:#94a3b8;font-size:8px}.donut-legend{flex-direction:column;flex:1;gap:8px;display:flex}.legend-item{align-items:center;gap:8px;display:flex}.legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.legend-name{color:#475569;text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;overflow:hidden}.legend-val{color:#0f172a;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600}.donut-empty{color:#94a3b8;justify-content:center;align-items:center;height:140px;font-size:13px;display:flex}.servers-page{flex-direction:column;gap:16px;font-family:DM Sans,sans-serif;display:flex}.page-header{justify-content:space-between;align-items:flex-start;display:flex}.page-title{color:#0f172a;letter-spacing:-.3px;margin-bottom:2px;font-family:IBM Plex Mono,monospace;font-size:22px;font-weight:700}.page-sub{color:#94a3b8;font-size:13px}.server-header-btns{flex-wrap:wrap;gap:8px;display:flex}.btn-instruction{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:6px 11px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:all .15s;display:flex}.btn-instruction:hover{color:#0f172a;background:#f1f5f9}.btn-instruction--relay{color:#b45309;background:#fef3c7;border-color:#f59e0b33}.btn-add{color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 11px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;transition:all .15s;display:flex}.btn-add--direct{background:#6366f1}.btn-add--direct:hover{background:#4f46e5}.btn-add--relay{background:#0f172a}.btn-add--relay:hover{background:#1e293b}.btn-add--active{opacity:.7}.sync-result{border-radius:8px;padding:9px 14px;font-family:IBM Plex Mono,monospace;font-size:12px}.sync-result--success{color:#065f46;background:#ecfdf5}.sync-result--error{color:#991b1b;background:#fef2f2}.spinning{animation:.7s linear infinite spin}.add-form{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex;box-shadow:0 1px 4px #0000000a}.form-title-row{justify-content:space-between;align-items:center;display:flex}.form-title-row h3{color:#0f172a;text-transform:uppercase;letter-spacing:.05em;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600}.form-close{cursor:pointer;color:#94a3b8;background:0 0;border:none;align-items:center;transition:color .15s;display:flex}.form-close:hover{color:#0f172a}.form-grid{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.form-input{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;outline:none;padding:7px 10px;font-family:DM Sans,sans-serif;font-size:12px;transition:border-color .15s}.form-input:focus{background:#fff;border-color:#6366f1}.form-input::placeholder{color:#94a3b8}.result{border-radius:7px;padding:7px 10px;font-family:IBM Plex Mono,monospace;font-size:12px}.result--success{color:#059669;background:#ecfdf5}.result--error{color:#dc2626;background:#fef2f2}.btn-submit{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:8px;align-self:flex-start;padding:8px 18px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;transition:all .15s}.btn-submit:hover{background:#4f46e5}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.servers-section{flex-direction:column;gap:8px;display:flex}.section-label-row{align-items:center;display:flex}.section-label{text-transform:uppercase;letter-spacing:.08em;border-radius:5px;padding:3px 8px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600}.section-label--relay{color:#b45309;background:#fef3c7}.section-label--direct{color:#4f46e5;background:#eef2ff}.loading-state{text-align:center;color:#94a3b8;padding:40px;font-family:IBM Plex Mono,monospace;font-size:13px}.servers-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.server-card{background:#fff;border:1px solid #f1f5f9;border-radius:10px;padding:12px;transition:box-shadow .15s;box-shadow:0 1px 3px #0000000a}.server-card:hover{box-shadow:0 3px 10px #00000012}.server-card--relay{border-left:3px solid #f59e0b}.server-card--linked{border-left:3px solid #6366f1}.server-card-header{align-items:center;gap:6px;margin-bottom:7px;display:flex}.server-indicator{border-radius:50%;flex-shrink:0;width:6px;height:6px}.server-card-name{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;overflow:hidden}.server-status{text-transform:uppercase;letter-spacing:.04em;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600}.online{color:#10b981}.offline{color:#ef4444}.btn-delete{color:#ef4444;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:all .15s;display:flex}.btn-delete:hover{background:#fee2e2}.btn-link{color:#6366f1;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:all .15s;display:flex}.btn-link:hover{background:#e0e7ff}.server-url-text{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;background:#f8fafc;border-radius:5px;margin-bottom:8px;padding:4px 8px;font-family:IBM Plex Mono,monospace;font-size:10px;overflow:hidden}.server-metrics{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.metric{background:#f8fafc;border-radius:5px;flex-direction:column;gap:1px;padding:5px 6px;display:flex}.metric-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;font-family:IBM Plex Mono,monospace;font-size:9px}.metric-value{color:#0f172a;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:700}.linked-servers{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:7px;display:flex}.linked-label{color:#94a3b8;font-family:IBM Plex Mono,monospace;font-size:10px}.linked-tag{color:#4f46e5;background:#eef2ff;border-radius:4px;padding:1px 6px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600}.relay-badge{color:#6366f1;background:#eef2ff;border-radius:4px;margin-bottom:7px;padding:2px 6px;font-family:IBM Plex Mono,monospace;font-size:10px;display:inline-block}.link-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;flex-direction:column;gap:6px;margin-bottom:8px;padding:8px;display:flex}.link-select{color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:5px;outline:none;width:100%;padding:6px 8px;font-family:DM Sans,sans-serif;font-size:12px}.link-btns{gap:5px;display:flex}.btn-link-save{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:5px;flex:1;padding:6px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:600;transition:all .15s}.btn-link-save:hover{background:#4f46e5}.btn-link-save:disabled{opacity:.5;cursor:not-allowed}.btn-link-cancel{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:5px;flex:1;padding:6px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:600;transition:all .15s}.btn-link-cancel:hover{background:#e2e8f0}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0f172a99;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-box{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:580px;max-height:80vh;display:flex;box-shadow:0 24px 60px #0003}.modal-head{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.modal-head h2{color:#0f172a;text-transform:uppercase;letter-spacing:.05em;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600}.modal-head button{cursor:pointer;color:#94a3b8;background:0 0;border:none;align-items:center;transition:color .15s;display:flex}.modal-head button:hover{color:#0f172a}.modal-body{flex-direction:column;gap:14px;padding:16px 18px;display:flex;overflow-y:auto}.instr-step{flex-direction:column;gap:6px;display:flex}.instr-step h3{color:#6366f1;text-transform:uppercase;letter-spacing:.06em;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.instr-text{color:#64748b;white-space:pre-line;font-family:DM Sans,sans-serif;font-size:12px;line-height:1.6}.code-block{background:#0f172a;border-radius:7px;padding:10px 36px 10px 12px;position:relative}.code-text{color:#818cf8;white-space:pre-wrap;margin:0;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.6}.btn-copy-code{color:#64748b;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;transition:all .15s;display:flex;position:absolute;top:7px;right:7px}.btn-copy-code:hover{color:#818cf8}.clients{flex-direction:column;gap:20px;display:flex}.search-bar{background:#fff;border:1px solid #6d28d91a;border-radius:14px;align-items:center;gap:10px;padding:12px 16px;display:flex;box-shadow:0 2px 8px #0000000a}.search-icon{color:#9ca3af;flex-shrink:0}.search-bar input{color:#1e1b4b;background:0 0;border:none;outline:none;width:100%;font-size:14px}.search-bar input::placeholder{color:#9ca3af}.clients-table-wrap{background:#fff;border:1px solid #6d28d912;border-radius:20px;overflow:auto;box-shadow:0 2px 16px #6d28d90f}.clients-table{border-collapse:collapse;width:100%;font-size:14px}.clients-table th{text-align:left;color:#9ca3af;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-bottom:1px solid #6d28d912;padding:14px 16px;font-family:Syne,sans-serif;font-size:12px;font-weight:600}.clients-table td{color:#374151;white-space:nowrap;border-bottom:1px solid #6d28d90d;padding:14px 16px}.clients-table tr:last-child td{border-bottom:none}.clients-table tr:hover td{background:#7c3aed05}.table-loading,.table-empty{text-align:center;color:#9ca3af;padding:40px!important}.user-id-link{color:#7c3aed;font-family:monospace;font-size:13px;text-decoration:none}.user-id-link:hover{text-decoration:underline}.user-info{flex-direction:column;gap:2px;display:flex}.user-name{color:#1e1b4b;font-weight:600}.user-username{color:#9ca3af;font-size:12px}.balance-badge{border-radius:8px;padding:3px 10px;font-family:Manrope,sans-serif;font-size:13px;font-weight:600;display:inline-block}.balance-badge--ok{color:#16a34a;background:#edfcf2}.balance-badge--low{color:#dc2626;background:#fef2f2}.text-center{text-align:center}.active-count{color:#16a34a;font-weight:700}.inactive-count{color:#9ca3af}.date-cell{color:#9ca3af;font-size:13px}.pagination{justify-content:center;align-items:center;gap:16px;display:flex}.pagination button{color:#7c3aed;cursor:pointer;background:#fff;border:1px solid #6d28d91a;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{color:#6b7280;font-family:Syne,sans-serif;font-size:14px}.clients-table-row{cursor:pointer;transition:background .1s}.clients-table-row:hover td{background:#6366f10a}.client-modal{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:620px;max-height:85vh;display:flex;box-shadow:0 24px 60px #0003}.client-modal-head{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;padding:18px 20px;display:flex}.client-modal-name{color:#0f172a;font-family:IBM Plex Mono,monospace;font-size:16px;font-weight:700}.client-modal-username{color:#94a3b8;font-weight:400}.client-modal-id{color:#94a3b8;margin-top:2px;font-family:IBM Plex Mono,monospace;font-size:12px}.client-modal-loading{text-align:center;color:#94a3b8;padding:40px;font-size:13px}.modal-close-btn{cursor:pointer;color:#94a3b8;background:0 0;border:none;align-items:center;transition:color .15s;display:flex}.modal-close-btn:hover{color:#0f172a}.btn-delete-user{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;transition:all .15s;display:flex}.btn-delete-user:hover{background:#fee2e2}.btn-delete-user:disabled{opacity:.5;cursor:not-allowed}.client-modal-body{flex-direction:column;gap:20px;padding:16px 20px;display:flex;overflow-y:auto}.cm-section{flex-direction:column;gap:10px;display:flex}.cm-section-title{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.cm-balance-val{color:#0f172a;font-family:IBM Plex Mono,monospace;font-size:28px;font-weight:700}.cm-balance-edit{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cm-input{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;outline:none;flex:1;padding:7px 10px;font-family:DM Sans,sans-serif;font-size:13px}.cm-input--sm{flex:none;max-width:100px}.cm-input:focus{border-color:#6366f1}.cm-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:5px;padding:7px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;transition:all .15s;display:flex}.cm-btn--green{color:#059669;background:#ecfdf5}.cm-btn--green:hover{background:#d1fae5}.cm-btn--red{color:#dc2626;background:#fef2f2}.cm-btn--red:hover{background:#fee2e2}.cm-btn:disabled{opacity:.5;cursor:not-allowed}.cm-error{color:#dc2626;font-family:IBM Plex Mono,monospace;font-size:12px}.cm-empty{color:#94a3b8;font-family:DM Sans,sans-serif;font-size:13px}.cm-devices{flex-direction:column;gap:6px;display:flex}.cm-device{background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.cm-device--inactive{opacity:.6}.cm-device-info{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.cm-device-name{color:#0f172a;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600}.cm-device-status{border-radius:4px;padding:2px 6px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600}.cm-device-status.active{color:#059669;background:#ecfdf5}.cm-device-status.inactive{color:#dc2626;background:#fef2f2}.cm-device-date{color:#94a3b8;font-family:IBM Plex Mono,monospace;font-size:11px}.cm-device-servers{flex-wrap:wrap;gap:4px;display:flex}.cm-server-tag{color:#4f46e5;background:#eef2ff;border-radius:4px;padding:1px 6px;font-family:IBM Plex Mono,monospace;font-size:10px}.cm-device-delete{color:#ef4444;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:all .15s;display:flex}.cm-device-delete:hover{background:#fee2e2}.cm-device-delete:disabled{opacity:.5;cursor:not-allowed}.cm-transactions{flex-direction:column;gap:4px;display:flex}.cm-tx{border-bottom:.5px solid #f1f5f9;align-items:center;gap:10px;padding:6px 0;font-size:12px;display:flex}.cm-tx:last-child{border-bottom:none}.cm-tx-type{min-width:90px;font-family:IBM Plex Mono,monospace;font-weight:600}.cm-tx-desc{color:#64748b;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.cm-tx-amount{white-space:nowrap;font-family:IBM Plex Mono,monospace;font-weight:700}.cm-tx-date{color:#94a3b8;white-space:nowrap;font-family:IBM Plex Mono,monospace}.client-modal--sm{max-width:480px}.cm-status-grid{flex-direction:column;gap:8px;display:flex}.cm-status-row{background:#f8fafc;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.cm-status-label{color:#0f172a;flex:1;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600}.cm-status-badge{border-radius:5px;padding:2px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.badge--green{color:#059669;background:#ecfdf5}.badge--red{color:#dc2626;background:#fef2f2}.badge--amber{color:#b45309;background:#fffbeb}.badge--gray{color:#64748b;background:#f1f5f9}.cm-toggle-btn{cursor:pointer;background:0 0;border:none;align-items:center;padding:2px;transition:opacity .15s;display:flex}.cm-toggle-btn:disabled{opacity:.4;cursor:not-allowed}.cm-device-status-btn{color:#6366f1;cursor:pointer;background:#eef2ff;border:1px solid #c7d2fe;border-radius:5px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .15s;display:flex}.cm-device-status-btn:hover{background:#e0e7ff}.cm-device-status.paused{color:#b45309;background:#fffbeb}.cm-btn--gray{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0}.filters-bar{background:#fff;border:1px solid #f1f5f9;border-radius:12px;flex-direction:column;gap:10px;padding:12px 16px;display:flex}.filters-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filters-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;min-width:70px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.filter-input{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;outline:none;width:120px;padding:5px 10px;font-family:DM Sans,sans-serif;font-size:12px}.filter-input:focus{border-color:#6366f1}.filter-toggle{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;padding:5px 10px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:all .15s}.filter-toggle:hover{background:#f1f5f9}.filter-toggle--active{color:#4f46e5;background:#eef2ff;border-color:#6366f1;font-weight:600}.filter-reset{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-left:auto;padding:5px 10px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:all .15s}.filter-reset:hover{background:#fee2e2}.sort-btn{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;align-items:center;gap:4px;padding:5px 10px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:all .15s;display:flex}.sort-btn:hover{background:#f1f5f9}.sort-btn--active{color:#4f46e5;background:#eef2ff;border-color:#6366f1;font-weight:600}.sort-icon{font-size:12px}.sort-icon--inactive{color:#cbd5e1}.sort-icon--active{color:#6366f1}.referral-count{color:#7c3aed;background:#f3e8ff;border-radius:5px;padding:2px 8px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600}.payments{flex-direction:column;gap:20px;display:flex}.payments-filters{flex-direction:column;gap:8px;display:flex}.filter-group{flex-wrap:wrap;gap:8px;display:flex}.filter-btn{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #6d28d91f;border-radius:10px;padding:7px 14px;font-family:Syne,sans-serif;font-size:13px;font-weight:500;transition:all .2s}.filter-btn--active{color:#7c3aed;background:#7c3aed14;border-color:#7c3aed;font-weight:700}.payments-table-wrap{background:#fff;border:1px solid #6d28d912;border-radius:20px;overflow:auto;box-shadow:0 2px 16px #6d28d90f}.tx-type{white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.tx-type--in{color:#16a34a}.tx-type--out{color:#dc2626}.amount{font-family:Manrope,sans-serif;font-size:14px;font-weight:700}.amount--pos{color:#16a34a}.amount--neg{color:#dc2626}.provider-badge{color:#7c3aed;white-space:nowrap;background:#f3f0ff;border-radius:6px;padding:3px 8px;font-size:12px;font-weight:600}.desc-cell{text-overflow:ellipsis;white-space:nowrap;color:#9ca3af;max-width:200px;font-size:13px;overflow:hidden}.docs{flex-direction:column;gap:20px;display:flex}.docs-grid{flex-direction:column;gap:12px;display:flex}.doc-card{background:#fff;border:1px solid #6d28d912;border-radius:20px;padding:24px;box-shadow:0 2px 12px #0000000a}.doc-title{color:#1e1b4b;margin-bottom:12px;font-family:Syne,sans-serif;font-size:16px;font-weight:800}.doc-content{color:#6b7280;white-space:pre-line;font-size:14px;line-height:1.8}.auth-page{background:#f0eeff;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{text-align:center;background:#fff;border-radius:24px;width:100%;max-width:400px;padding:40px 32px;box-shadow:0 8px 32px #6d28d91a}.auth-logo{color:#fff;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 20px;display:flex;box-shadow:0 8px 24px #7c3aed4d}.auth-card h1{color:#1e1b4b;margin-bottom:20px;font-size:22px;font-weight:800}.auth-spinner{border:3px solid #7c3aed33;border-top-color:#7c3aed;border-radius:50%;width:36px;height:36px;margin:0 auto 16px;animation:.7s linear infinite spin}.auth-card p{color:#6b7280;font-size:14px}.auth-success{color:#16a34a!important}.auth-error{color:#dc2626!important}.arch-page{flex-direction:column;gap:20px;display:flex}.arch-wrap-h{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:20px;overflow-x:auto;box-shadow:0 1px 4px #0000000a}.arch-loading{text-align:center;color:#94a3b8;padding:60px;font-family:IBM Plex Mono,monospace;font-size:13px}.eco-page{flex-direction:column;gap:20px;display:flex}.eco-grid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.eco-col{flex-direction:column;gap:16px;display:flex}.eco-card{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:18px;box-shadow:0 1px 4px #0000000a}.eco-card-title{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.eco-slider-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.eco-slider-label{color:var(--color-text-secondary,#64748b);min-width:170px;font-family:DM Sans,sans-serif;font-size:12px}.eco-slider{flex:1}.eco-slider-val{color:#0f172a;text-align:right;min-width:48px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600}.eco-metrics{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:4px;display:grid}.eco-metrics--3{grid-template-columns:repeat(3,1fr)}.eco-metric{background:#f8fafc;border-radius:8px;padding:12px}.eco-metric-label{color:#94a3b8;margin-bottom:3px;font-family:DM Sans,sans-serif;font-size:11px}.eco-metric-value{color:#0f172a;font-family:IBM Plex Mono,monospace;font-size:16px;font-weight:600}.eco-metric-sub{color:#94a3b8;margin-top:2px;font-size:10px}.eco-metric--green .eco-metric-value{color:#0f6e56}.eco-metric--red .eco-metric-value{color:#a32d2d}.eco-metric--amber .eco-metric-value{color:#854f0b}.eco-metric--blue .eco-metric-value{color:#185fa5}.eco-table{border-collapse:collapse;width:100%;font-family:DM Sans,sans-serif;font-size:12px}.eco-table td{color:#475569;border-bottom:.5px solid #f1f5f9;padding:7px 0}.eco-table td:last-child{text-align:right;color:#0f172a;font-family:IBM Plex Mono,monospace;font-weight:600}.eco-table-total td{color:#0f172a;border-top:1px solid #e2e8f0;border-bottom:none;padding-top:10px;font-weight:600}.eco-cap-status{border-radius:8px;margin-top:10px;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:12px}.eco-cap-status--ok{color:#065f46;background:#ecfdf5}.eco-cap-status--warn{color:#92400e;background:#fffbeb}.eco-cap-status--danger{color:#991b1b;background:#fef2f2}.eco-cap-detail{color:#64748b;margin-top:8px;font-family:DM Sans,sans-serif;font-size:12px}.eco-servers-section{margin-bottom:14px}.eco-servers-label{color:#64748b;justify-content:space-between;align-items:center;margin-bottom:8px;font-family:IBM Plex Mono,monospace;font-size:11px;display:flex}.eco-add-btn{color:#6366f1;cursor:pointer;background:#eef2ff;border:none;border-radius:6px;padding:3px 8px;font-family:DM Sans,sans-serif;font-size:11px}.eco-server-row{align-items:center;gap:6px;margin-bottom:6px;display:flex}.eco-server-input{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;outline:none;padding:6px 8px;font-family:IBM Plex Mono,monospace;font-size:11px}.eco-server-input--name{flex:1}.eco-server-input--num{width:72px}.eco-remove-btn{color:#ef4444;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex}.eco-server-hint{color:#cbd5e1;font-family:IBM Plex Mono,monospace;font-size:10px}.an-page{flex-direction:column;gap:12px;display:flex}.an-loading{text-align:center;color:#94a3b8;padding:60px;font-family:IBM Plex Mono,monospace;font-size:13px}.an-section-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;margin-top:8px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.an-refresh-btn{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:7px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:all .15s;display:flex}.an-refresh-btn:hover{background:#f1f5f9}.an-grid{gap:10px;display:grid}.an-grid--5{grid-template-columns:repeat(5,1fr)}.an-grid--4{grid-template-columns:repeat(4,1fr)}.an-grid--3{grid-template-columns:repeat(3,1fr)}.an-card{background:#fff;border:1px solid #f1f5f9;border-radius:10px;align-items:flex-start;gap:10px;padding:14px;display:flex;box-shadow:0 1px 3px #0000000a}.an-card-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.an-card--purple .an-card-icon{color:#6366f1;background:#eef2ff}.an-card--teal .an-card-icon{color:#0ea5e9;background:#e0f2fe}.an-card--green .an-card-icon{color:#10b981;background:#ecfdf5}.an-card--amber .an-card-icon{color:#f59e0b;background:#fffbeb}.an-card--red .an-card-icon{color:#ef4444;background:#fef2f2}.an-card--pink .an-card-icon{color:#ec4899;background:#fdf2f8}.an-card-body{flex:1;min-width:0}.an-card-value{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-family:IBM Plex Mono,monospace;font-size:18px;font-weight:700;overflow:hidden}.an-card-label{color:#64748b;margin-top:2px;font-size:11px}.an-card-sub{color:#94a3b8;margin-top:2px;font-size:10px}.an-chart-card{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000000a}.an-chart-head{color:#0f172a;justify-content:space-between;align-items:center;margin-bottom:14px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;display:flex}.an-chart-legend{gap:12px;font-size:11px;font-weight:500;display:flex}.an-two-col{grid-template-columns:1fr 1fr;gap:10px;display:grid}.an-canvas{width:100%;height:180px;display:block}.an-barchart{flex-direction:column;gap:6px;display:flex}.an-bars{align-items:flex-end;gap:3px;height:140px;display:flex}.an-bar-wrap{flex:1;align-items:flex-end;height:100%;display:flex}.an-bar{border-radius:3px 3px 0 0;width:100%;min-height:2px;transition:height .3s}.an-bar-labels{color:#94a3b8;justify-content:space-between;font-family:IBM Plex Mono,monospace;font-size:9px;display:flex}.an-donut-wrap{align-items:center;gap:20px;padding:8px 0;display:flex}.an-donut-legend{flex-direction:column;gap:8px;display:flex}.an-legend-item{align-items:center;gap:6px;font-size:12px;display:flex}.an-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.an-legend-label{color:#64748b;flex:1}.an-legend-val{color:#0f172a;font-family:IBM Plex Mono,monospace;font-weight:600}.an-acq-stats{border-top:1px solid #f1f5f9;margin-top:12px;padding-top:10px}.an-acq-item{color:#64748b;justify-content:space-between;font-size:12px;display:flex}.an-acq-item span:last-child{color:#0f172a;font-family:IBM Plex Mono,monospace;font-weight:600}.an-top-list{flex-direction:column;gap:10px;display:flex}.an-top-item{align-items:center;gap:10px;display:flex}.an-top-rank{color:#94a3b8;min-width:24px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:700}.an-top-name{color:#0f172a;min-width:100px;font-size:13px;font-weight:600}.an-top-id{color:#94a3b8;min-width:100px;font-family:IBM Plex Mono,monospace;font-size:11px}.an-top-bar-wrap{background:#f1f5f9;border-radius:3px;flex:1;height:6px;overflow:hidden}.an-top-bar{background:#6366f1;border-radius:3px;height:100%;transition:width .5s}.an-top-val{color:#0f172a;text-align:right;min-width:50px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600}.admin-layout{background:#f8fafc;min-height:100vh;display:flex}.admin-main{flex:1;min-height:100vh;margin-left:220px;padding:28px 32px}.admin-loading{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;display:flex}.admin-spinner{border:2px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f0f0f7;--bg-card:#fff;--bg-elevated:#f8f7ff;--accent:#7c3aed;--accent-bright:#8b5cf6;--accent-glow:#7c3aed59;--accent-subtle:#f3f0ff;--accent-border:#7c3aed26;--accent2:#0ea5e9;--accent2-bright:#38bdf8;--accent2-glow:#0ea5e94d;--accent2-subtle:#e0f7ff;--accent2-border:#0ea5e933;--text-primary:#1a1a2e;--text-secondary:#6b7280;--text-muted:#9ca3af;--success:#16a34a;--success-bg:#edfcf2;--danger:#dc2626;--danger-bg:#fef2f2;--warning:#d97706;--warning-bg:#fff8ed;--border:#6d28d91a;--border-subtle:#0000000f;--radius-sm:12px;--radius-md:18px;--radius-lg:24px;--radius-xl:32px;--font-display:"Syne", sans-serif;--font-body:"DM Sans", sans-serif;--font-numbers:"Manrope", sans-serif;--shadow-sm:0 2px 8px #0000000f, 0 1px 3px #0000000a;--shadow-md:0 4px 16px #00000014, 0 1px 4px #0000000a, inset 0 1px 0 #ffffffe6;--shadow-lg:0 8px 32px #0000001a, 0 2px 8px #0000000f, inset 0 1px 0 #fffffff2;--shadow-accent:0 12px 32px #6d28d959, 0 4px 12px #6d28d933, inset 0 1px 0 #fff3;--shadow-accent2:0 12px 32px #0ea5e959, 0 4px 12px #0ea5e933, inset 0 1px 0 #ffffff40;--transition:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}html,body,#root{background:var(--bg);height:100%;color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}button{cursor:pointer;font-family:var(--font-body)}input,textarea{font-family:var(--font-body)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--accent-border);border-radius:4px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-up{animation:.45s cubic-bezier(.4,0,.2,1) both fadeInUp}.animate-fade-up-1{animation-delay:50ms}.animate-fade-up-2{animation-delay:.1s}.animate-fade-up-3{animation-delay:.15s}.animate-fade-up-4{animation-delay:.2s}.animate-fade-up-5{animation-delay:.25s}
