:root{--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--success-50:#f0fdf4;--success-100:#dcfce7;--success-500:#10b981;--success-600:#059669;--warning-50:#fffbeb;--warning-100:#fef3c7;--warning-500:#f59e0b;--error-50:#fef2f2;--error-100:#fee2e2;--error-500:#ef4444;--error-600:#dc2626;--neutral-50:#f8fafc;--neutral-100:#f1f5f9;--neutral-200:#e2e8f0;--neutral-300:#cbd5e1;--neutral-400:#94a3b8;--neutral-500:#64748b;--neutral-600:#475569;--neutral-700:#334155;--neutral-800:#1e293b;--neutral-900:#0f172a;--bg:#f8fafc;--surface:#fff;--surface-elevated:#fff;--border:#e2e8f0;--border-light:#f1f5f9;--text:#334155;--text-muted:#64748b;--text-heading:#0f172a;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, "Cascadia Code", monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -2px #0000000a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;color:var(--text);background:var(--bg);font-size:14px;line-height:1.5;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}body{margin:0}#root{min-height:100vh}.app-layout{background:var(--bg);min-height:100vh;display:flex}.main-content{flex:1;min-height:100vh;margin-left:240px;overflow-x:hidden}.page{padding:var(--space-8);max-width:1200px}.page-header{margin-bottom:var(--space-8);justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-header h1{color:var(--text-heading);letter-spacing:-.5px;margin:0 0 4px;font-size:28px;font-weight:700}.page-header p{color:var(--text-muted);font-size:14px}.header-actions{align-items:center;gap:var(--space-3);display:flex}.navbar{background:var(--surface);border-right:1px solid var(--border);width:240px;padding:var(--space-6);gap:var(--space-6);z-index:100;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.navbar-brand{align-items:center;gap:var(--space-3);color:var(--primary-600);letter-spacing:-.3px;font-size:18px;font-weight:700;display:flex}.navbar-links{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.nav-link{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.nav-link:hover{background:var(--neutral-100);color:var(--text-heading)}.nav-link.active{background:var(--primary-50);color:var(--primary-600)}.navbar-user{align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);display:flex}.user-info{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.user-avatar{background:linear-gradient(135deg, var(--primary-500), var(--primary-700));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:600;display:flex}.user-details{flex-direction:column;min-width:0;display:flex}.user-name{color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-role{text-transform:capitalize;border-radius:999px;width:fit-content;padding:1px 6px;font-size:11px;font-weight:500}.user-role.admin{background:var(--primary-100);color:var(--primary-700)}.user-role.employee{background:var(--neutral-100);color:var(--neutral-600)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.card-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.card-header h2{color:var(--text-heading);flex:1;margin:0;font-size:16px;font-weight:600}.card h3{color:var(--text-heading);margin:0 0 var(--space-4) 0;font-size:14px;font-weight:600}.stats-grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(4,1fr);display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);align-items:center;gap:var(--space-4);box-shadow:var(--shadow-sm);display:flex}.stat-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.stat-icon.blue{background:var(--primary-50);color:var(--primary-600)}.stat-icon.green{background:var(--success-50);color:var(--success-600)}.stat-icon.amber{background:var(--warning-50);color:var(--warning-500)}.stat-icon.red{background:var(--error-50);color:var(--error-600)}.stat-content{flex-direction:column;display:flex}.stat-value{color:var(--text-heading);letter-spacing:-.5px;font-size:24px;font-weight:700;line-height:1.1}.stat-label{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:500}.dashboard-grid{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.session-detail{gap:var(--space-3);flex-direction:column;display:flex}.session-row{padding:var(--space-2) 0;border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;font-size:13px;display:flex}.session-row span:first-child{color:var(--text-muted)}.session-row span:last-child{color:var(--text-heading);font-weight:500}.event-list{gap:var(--space-2);flex-direction:column;display:flex}.event-item{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;display:flex}.event-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.event-dot.keyboard{background:var(--primary-500)}.event-dot.mouse{background:var(--success-500)}.event-dot.app_switch{background:var(--warning-500)}.event-dot.idle{background:var(--neutral-400)}.event-dot.url_visit{background:#06b6d4}.event-dot.screenshot{background:#8b5cf6}.event-info{flex-direction:column;display:flex}.event-type{color:var(--text-heading);font-size:13px;font-weight:500}.event-time{color:var(--text-muted);font-size:11px}.privacy-list{gap:var(--space-3);flex-direction:column;display:flex}.privacy-item{align-items:center;gap:var(--space-3);color:var(--text);font-size:13px;display:flex}.privacy-item .check{color:var(--success-500);flex-shrink:0}.privacy-item .warn{color:var(--warning-500);flex-shrink:0}.session-control,.session-active{align-items:center;gap:var(--space-3);display:flex}.session-timer{align-items:center;gap:var(--space-2);font-variant-numeric:tabular-nums;color:var(--text-heading);background:var(--success-50);border:1px solid var(--success-100);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:18px;font-weight:700;display:flex}.session-dot{background:var(--success-500);border-radius:50%;width:8px;height:8px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}button{cursor:pointer;font-family:var(--font-sans);align-items:center;gap:var(--space-2);border:none;outline:none;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--primary-600);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md)}.btn-primary:hover:not(:disabled){background:var(--primary-700);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--neutral-100);color:var(--text);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--neutral-200)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--error-600);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md)}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-full{justify-content:center;width:100%}.btn-icon{color:var(--text-muted);padding:var(--space-2);border-radius:var(--radius-sm);background:0 0}.btn-icon:hover{background:var(--neutral-100);color:var(--text-heading)}.btn-danger-icon{color:var(--error-500)}.btn-danger-icon:hover{background:var(--error-50)}.btn-small,.btn-sm{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:12px}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-group label{color:var(--text-heading);font-size:13px;font-weight:600}.form-group input,.form-group select,.form-group textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-heading);background:var(--surface);font-size:14px;font-family:var(--font-sans);outline:none;transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background:var(--neutral-100);color:var(--text-muted);cursor:not-allowed}.field-note{color:var(--text-muted);font-size:11px}.form-row{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.form-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-5);display:flex}.password-input{align-items:center;display:flex;position:relative}.password-input input{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;padding-right:40px;padding:var(--space-2) 40px var(--space-2) var(--space-3);color:var(--text-heading);background:var(--surface);outline:none;font-size:14px;transition:border-color .15s}.password-input input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61a}.password-input button{color:var(--text-muted);background:0 0;border-radius:4px;padding:4px;position:absolute;right:10px}.auth-container{min-height:100vh;padding:var(--space-6);background:linear-gradient(135deg,#f0f7ff 0%,#e8f4fd 100%);justify-content:center;align-items:center;display:flex}.auth-card{background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-10);width:100%;max-width:440px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-logo{background:linear-gradient(135deg, var(--primary-500), var(--primary-700));border-radius:var(--radius-lg);color:#fff;width:56px;height:56px;margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.auth-header h1{color:var(--text-heading);margin:0 0 var(--space-2) 0;letter-spacing:-.5px;font-size:28px;font-weight:700}.auth-header p{color:var(--text-muted);font-size:14px}.auth-tabs{background:var(--neutral-100);border-radius:var(--radius-md);margin-bottom:var(--space-6);gap:4px;padding:4px;display:flex}.auth-tab{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);color:var(--text-muted);background:0 0;flex:1;justify-content:center;font-size:14px;font-weight:500;transition:all .15s}.auth-tab.active{background:var(--surface);color:var(--text-heading);box-shadow:var(--shadow-sm)}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-error{align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--error-50);border:1px solid var(--error-100);border-radius:var(--radius-md);color:var(--error-600);font-size:13px;display:flex}.auth-notice{align-items:center;gap:var(--space-2);margin-top:var(--space-5);color:var(--text-muted);justify-content:center;font-size:12px;display:flex}.consent-container{min-height:100vh;padding:var(--space-8) var(--space-6);background:linear-gradient(135deg,#f0f7ff 0%,#e8f4fd 100%);justify-content:center;align-items:flex-start;display:flex}.consent-card{background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-8);width:100%;max-width:700px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.consent-header{text-align:center;margin-bottom:var(--space-6)}.consent-icon{background:linear-gradient(135deg, var(--primary-500), var(--primary-700));border-radius:var(--radius-lg);color:#fff;width:64px;height:64px;margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.consent-header h1{color:var(--text-heading);margin:0 0 var(--space-2);font-size:24px;font-weight:700}.consent-header p{color:var(--text-muted);font-size:14px}.consent-notice{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--warning-50);border:1px solid var(--warning-100);border-radius:var(--radius-md);color:#92400e;margin-bottom:var(--space-5);font-size:13px;display:flex}.policy-document{border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:var(--space-6);overflow:hidden}.policy-header{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--neutral-50);border-bottom:1px solid var(--border);color:var(--text-heading);font-size:13px;font-weight:600;display:flex}.policy-text{padding:var(--space-4);font-size:12px;line-height:1.7;font-family:var(--font-mono);color:var(--text);white-space:pre-wrap;word-wrap:break-word;background:var(--surface);max-height:360px;margin:0;overflow-y:auto}.consent-actions{gap:var(--space-4);flex-direction:column;display:flex}.consent-checkbox{align-items:flex-start;gap:var(--space-3);cursor:pointer;color:var(--text);font-size:13px;line-height:1.6;display:flex}.consent-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-600);flex-shrink:0;margin-top:2px}.consent-buttons{justify-content:flex-end;display:flex}.consent-footer{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--border);color:var(--text-muted);text-align:center;font-size:12px;line-height:1.6}.badge{border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge.active{background:var(--success-100);color:var(--success-600)}.badge.paused{background:var(--warning-100);color:#92400e}.badge.ended{background:var(--neutral-100);color:var(--neutral-600)}.monitor-grid{gap:var(--space-4);grid-template-columns:340px 1fr;align-items:start;display:grid}.monitor-panel,.session-control-card{gap:var(--space-4);flex-direction:column;display:flex}.session-status-row{justify-content:space-between;align-items:center;display:flex}.session-indicator{align-items:center;gap:var(--space-2);letter-spacing:.5px;font-size:12px;font-weight:700;display:flex}.session-indicator.active{color:var(--success-600)}.session-indicator.paused{color:var(--warning-500)}.session-indicator.stopped,.session-indicator.ended{color:var(--neutral-400)}.indicator-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.session-indicator.active .indicator-dot{animation:1.5s infinite pulse}.session-timer-display{font-variant-numeric:tabular-nums;color:var(--text-heading);font-size:22px;font-weight:700}.session-buttons{gap:var(--space-3);display:flex}.session-buttons>*{flex:1;justify-content:center}.counters-grid{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.counter-item{padding:var(--space-4);background:var(--neutral-50);border-radius:var(--radius-md);align-items:center;gap:var(--space-2);color:var(--primary-600);flex-direction:column;display:flex}.counter-value{color:var(--text-heading);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700}.counter-label{color:var(--text-muted);font-size:11px;font-weight:500}.counter-note{color:var(--text-muted);padding-top:var(--space-2);border-top:1px solid var(--border);margin:0;font-size:11px}.log-inputs{gap:var(--space-3);flex-direction:column;display:flex}.log-input-row{align-items:center;gap:var(--space-2);display:flex}.log-input-row input{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-heading);background:var(--surface);outline:none;flex:1;font-size:13px}.log-input-row input:focus{border-color:var(--primary-500)}.log-input-row svg{color:var(--text-muted);flex-shrink:0}.log-action-row{gap:var(--space-2);display:flex}.log-action-row>*{flex:1;justify-content:center}.feed-card{flex-direction:column;height:560px;display:flex}.feed-card .card-header{flex-shrink:0}.event-feed{flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.feed-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);animation:.2s slideIn;display:flex}.feed-item:hover{background:var(--neutral-50)}@keyframes slideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.feed-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.feed-icon.keyboard{background:var(--primary-50);color:var(--primary-600)}.feed-icon.mouse{background:var(--success-50);color:var(--success-600)}.feed-icon.url_visit{color:#0e7490;background:#ecfeff}.feed-icon.app_switch{background:var(--warning-50);color:var(--warning-500)}.feed-icon.idle{background:var(--neutral-100);color:var(--neutral-500)}.feed-icon.screenshot{color:#7c3aed;background:#f5f3ff}.feed-content{flex:1;justify-content:space-between;align-items:center;min-width:0;display:flex}.feed-label{color:var(--text-heading);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.feed-time{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-left:var(--space-3);flex-shrink:0;font-size:11px}.charts-grid{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.chart-card{flex-direction:column;display:flex}.chart-full{grid-column:1/-1}.range-select{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-sans);color:var(--text-heading);background:var(--surface);cursor:pointer;outline:none}.table-wrapper{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{text-align:left;padding:var(--space-3) var(--space-4);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:1px solid var(--border);font-size:11px;font-weight:600}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);color:var(--text)}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--neutral-50)}.table-empty{text-align:center;color:var(--text-muted);padding:var(--space-8)!important}.macros-list{gap:var(--space-4);flex-direction:column;display:flex}.macro-editor{margin-bottom:var(--space-4)}.macro-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.macro-info{flex:1;min-width:0}.macro-title{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.macro-title h3{color:var(--text-heading);margin:0;font-size:15px;font-weight:600}.macro-desc{color:var(--text-muted);margin:0 0 var(--space-2);font-size:13px}.macro-meta{color:var(--text-muted);font-size:11px;font-weight:500}.macro-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.toggle{cursor:pointer;border-radius:999px;width:32px;height:18px;transition:background .2s;display:inline-block;position:relative}.toggle:after{content:"";width:14px;height:14px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:left .2s;position:absolute;top:2px}.toggle.on{background:var(--success-500)}.toggle.on:after{left:16px}.toggle.off{background:var(--neutral-300)}.toggle.off:after{left:2px}.steps-section{margin:var(--space-5) 0 var(--space-4)}.steps-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.steps-header h3{color:var(--text-heading);margin:0;font-size:13px;font-weight:600}.step-row{align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border-light);display:flex}.step-num{background:var(--neutral-100);width:24px;height:24px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.step-row select,.step-row input{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-heading);font-size:13px;font-family:var(--font-sans);outline:none}.step-row select{min-width:110px}.step-row input{flex:1}.delay-input{flex:none!important;max-width:90px!important}.steps-preview{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border);gap:var(--space-2);flex-direction:column;display:flex}.step-preview-row{align-items:center;gap:var(--space-3);font-size:12px;display:flex}.step-type-badge{background:var(--primary-50);color:var(--primary-700);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.step-value{color:var(--text-heading);font-family:var(--font-mono);font-size:12px}.step-delay{color:var(--text-muted);margin-left:auto;font-size:11px}.settings-grid{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}.settings-form,.consent-status-section{gap:var(--space-4);flex-direction:column;display:flex}.consent-status-row{align-items:flex-start;gap:var(--space-3);display:flex}.consent-status-row .check{color:var(--success-500);flex-shrink:0;margin-top:2px}.consent-status-label{color:var(--text-heading);font-size:14px;font-weight:600;display:block}.consent-status-date{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.consent-meta{background:var(--neutral-50);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.meta-row{justify-content:space-between;font-size:13px;display:flex}.meta-row span:first-child{color:var(--text-muted)}.meta-row span:last-child{color:var(--text-heading);font-weight:500}.consent-warning{gap:var(--space-3);padding:var(--space-3);background:var(--warning-50);border:1px solid var(--warning-100);border-radius:var(--radius-md);color:#92400e;font-size:12px;line-height:1.6;display:flex}.consent-warning p{margin:0}.consent-warning svg{flex-shrink:0;margin-top:1px}.rights-list{gap:var(--space-4);flex-direction:column;display:flex}.right-item{gap:var(--space-3);font-size:13px;display:flex}.right-item .check{color:var(--success-500);flex-shrink:0;margin-top:2px}.right-item strong{color:var(--text-heading);margin-bottom:2px;font-weight:600;display:block}.right-item p{color:var(--text-muted);margin:0;line-height:1.5}.notification-settings{gap:var(--space-4);flex-direction:column;display:flex}.notif-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.notif-row strong{color:var(--text-heading);margin-bottom:2px;font-size:13px;font-weight:600;display:block}.notif-row p{color:var(--text-muted);margin:0;font-size:12px}.toggle-label{cursor:pointer;flex-shrink:0;width:40px;height:22px;display:inline-block;position:relative}.toggle-label input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{background:var(--neutral-300);border-radius:999px;transition:background .2s;position:absolute;inset:0}.toggle-slider:before{content:"";width:16px;height:16px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle-label input:checked+.toggle-slider{background:var(--success-500)}.toggle-label input:checked+.toggle-slider:before{transform:translate(18px)}.danger-zone{border-color:var(--error-100)}.danger-actions{gap:var(--space-3);display:flex}.loading-screen{justify-content:center;align-items:center;gap:var(--space-4);min-height:100vh;color:var(--text-muted);flex-direction:column;font-size:14px;display:flex}.loading-spinner{border:3px solid var(--border);border-top-color:var(--primary-600);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{padding:var(--space-10) var(--space-6);justify-content:center;align-items:center;gap:var(--space-3);color:var(--text-muted);text-align:center;flex-direction:column;display:flex}.empty-state.small{padding:var(--space-5)}.empty-state svg{opacity:.35}.empty-state h3{color:var(--text-heading);margin:0;font-size:16px}.empty-state p{max-width:280px;margin:0;font-size:13px}@media (width<=1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr}}@media (width<=768px){.main-content{margin-left:0}.navbar{display:none}.stats-grid{grid-template-columns:1fr 1fr}.dashboard-grid,.monitor-grid,.charts-grid{grid-template-columns:1fr}.chart-full{grid-column:1}.page{padding:var(--space-4)}}
