.info-tooltip-wrap[data-v-ff23e284]{position:relative;display:inline-flex;align-items:center;margin-left:6px;cursor:help}.info-icon[data-v-ff23e284]{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:#3b82f647;color:#60a5fa;font-size:11px;font-style:normal;font-weight:700;line-height:1;transition:background .2s,color .2s}.info-tooltip-wrap:hover .info-icon[data-v-ff23e284]{background:#3b82f680;color:#bfdbfe}.tip-bubble[data-v-ff23e284]{position:fixed;z-index:1000;min-width:180px;max-width:340px;padding:8px 12px;border-radius:6px;background:#0f172af5;border:1px solid rgba(148,163,184,.25);color:#e2e8f0;font-size:12px;line-height:1.6;white-space:pre-line;pointer-events:none;box-shadow:0 4px 12px #0006;opacity:0;transition:opacity .15s}.tip-bubble.ready[data-v-ff23e284]{opacity:1}.tip-bubble[data-v-ff23e284]:after{content:"";position:absolute;left:50%;transform:translate(-50%);border:5px solid transparent}.tip-bubble[data-v-ff23e284]:not(.below):after{top:100%;border-top-color:#0f172af5}.tip-bubble.below[data-v-ff23e284]:after{bottom:100%;border-bottom-color:#0f172af5}.global-header[data-v-8aefb778]{flex-shrink:0;background:var(--nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--hero-border);padding:0 24px;height:48px;display:flex;align-items:center;position:relative;z-index:100}.global-header-inner[data-v-8aefb778]{width:100%;display:flex;align-items:center;justify-content:space-between}.global-header-left[data-v-8aefb778]{display:flex;align-items:center;gap:12px}.header-badge[data-v-8aefb778]{background:var(--badge-gradient);color:var(--badge-text);font-size:11px;font-weight:700;padding:3px 10px;border-radius:4px;letter-spacing:1px}.header-school[data-v-8aefb778]{font-size:13px;color:var(--text-secondary);font-weight:500}.header-divider[data-v-8aefb778]{color:var(--border);font-size:12px;margin:0 2px}.header-standard[data-v-8aefb778]{font-size:10px;color:var(--text-muted);letter-spacing:.4px;white-space:nowrap}.global-title[data-v-8aefb778]{position:absolute;left:50%;transform:translate(-50%);font-size:26px;font-weight:800;letter-spacing:8px;background:var(--title-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.global-header-right[data-v-8aefb778]{display:flex;align-items:center;gap:16px}.header-subtitle[data-v-8aefb778]{font-size:13px;color:var(--text-secondary);font-weight:400;letter-spacing:2px}.month-picker[data-v-8aefb778]{position:relative}.month-picker-btn[data-v-8aefb778]{font-size:12px;padding:4px 10px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;white-space:nowrap;transition:border-color .2s}.month-picker-btn[data-v-8aefb778]:hover,.month-picker-btn.open[data-v-8aefb778]{border-color:var(--accent-primary)}.month-caret[data-v-8aefb778]{font-size:10px;color:var(--text-muted);margin-left:2px}.month-dropdown[data-v-8aefb778]{position:absolute;top:calc(100% + 6px);right:0;min-width:110px;max-height:260px;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--dropdown-shadow);padding:4px;z-index:200}.month-option[data-v-8aefb778]{display:block;width:100%;text-align:left;font-size:12px;padding:6px 12px;border:none;border-radius:6px;background:transparent;color:var(--text-primary);cursor:pointer;white-space:nowrap}.month-option[data-v-8aefb778]:hover{background:var(--bg-tertiary)}.month-option.active[data-v-8aefb778]{color:var(--accent-primary);font-weight:700}.theme-toggle[data-v-46e63aa8]{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-pill);border:1px solid var(--nav-item-border);background:transparent;color:var(--nav-item-text);cursor:pointer;font-size:var(--font-caption);font-family:inherit;transition:all .3s var(--ease-out-expo);user-select:none;flex-shrink:0}.theme-toggle[data-v-46e63aa8]:hover{color:var(--text-secondary);border-color:var(--nav-active);background:var(--nav-item-hover-bg)}.theme-toggle[data-v-46e63aa8]:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;opacity:1}.theme-icon[data-v-46e63aa8]{width:14px;height:14px;flex-shrink:0}.theme-label[data-v-46e63aa8]{font-weight:500;letter-spacing:.5px}.bottom-nav[data-v-9c3ab77f]{position:relative;height:var(--bottom-nav-h);background:var(--nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--nav-border);box-shadow:0 -2px 20px var(--shadow);display:flex;align-items:center;justify-content:center;z-index:100;flex-shrink:0}.flat-nav[data-v-9c3ab77f]{display:flex;gap:6px;align-items:center;justify-content:center;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding:0 12px;flex:1;min-width:0;scrollbar-width:none;-ms-overflow-style:none}.nav-side[data-v-9c3ab77f]{flex-shrink:0;display:flex;align-items:center;padding-left:16px}.nav-side-right[data-v-9c3ab77f]{padding-left:0;padding-right:20px}.build-timestamp[data-v-9c3ab77f]{font-size:var(--font-caption);color:var(--text-muted);white-space:nowrap;user-select:none}.flat-nav[data-v-9c3ab77f]::-webkit-scrollbar{display:none}.nav-item[data-v-9c3ab77f]{padding:8px 18px;border-radius:var(--radius-pill);border:1px solid var(--nav-item-border);background:transparent;color:var(--nav-item-text);cursor:pointer;font-size:var(--font-body);font-weight:var(--weight-medium);transition:all .3s var(--ease-out-expo);white-space:nowrap;font-family:inherit;flex-shrink:0}.nav-item[data-v-9c3ab77f]:hover{color:var(--text-secondary);border-color:var(--nav-active);background:var(--nav-item-hover-bg)}.nav-item.active[data-v-9c3ab77f]{background:var(--nav-active);border-color:var(--nav-active);color:var(--nav-active-text);font-weight:var(--weight-semibold);box-shadow:var(--nav-active-glow);transform:scale(1.05)}.screen-viewport[data-v-09916a62]{position:fixed;inset:0;width:100vw;height:100vh;background:var(--viewport-bg, var(--bg-primary));display:flex;align-items:center;justify-content:center;overflow:hidden}.app[data-v-09916a62]{width:1920px;height:1080px;flex-shrink:0;transform-origin:center center;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary);overflow:hidden;position:relative}.content-area[data-v-09916a62]{flex:1;overflow:hidden;position:relative}.page-enter-active[data-v-09916a62],.page-leave-active[data-v-09916a62]{transition:opacity .35s var(--ease-out-expo),transform .35s var(--ease-out-expo);position:absolute;inset:0}.page-enter-from[data-v-09916a62]{opacity:0;transform:translate(24px)}.page-leave-to[data-v-09916a62]{opacity:0;transform:translate(-24px)}.school-error[data-v-09916a62]{height:100%;display:flex;align-items:center;justify-content:center}.school-error-box[data-v-09916a62]{text-align:center;padding:48px 64px;border-radius:12px;background:var(--bg-tertiary);border:1px solid var(--border)}.school-error-icon[data-v-09916a62]{font-size:48px;margin-bottom:16px}.school-error-box h2[data-v-09916a62]{margin:0 0 12px;font-size:22px;color:var(--text-primary)}.school-error-box p[data-v-09916a62]{margin:0;font-size:14px;color:var(--text-secondary)}.school-error-box b[data-v-09916a62]{color:#ef4444}.login-card[data-v-c8a55e59]{max-width:360px;margin:80px auto;padding:32px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 16px #0000000f}.login-card h2[data-v-c8a55e59]{margin:0 0 24px;font-size:20px;text-align:center;color:var(--text-primary)}.field[data-v-c8a55e59]{margin-bottom:16px}.field label[data-v-c8a55e59]{display:block;margin-bottom:6px;font-size:13px;color:var(--text-secondary);font-weight:600}.field input[data-v-c8a55e59]{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;box-sizing:border-box}.field input[data-v-c8a55e59]:focus{outline:none;border-color:var(--accent-primary)}button[data-v-c8a55e59]{width:100%;padding:12px;border:none;border-radius:8px;background:var(--accent-primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .2s}button[data-v-c8a55e59]:disabled{opacity:.7;cursor:not-allowed}.error[data-v-c8a55e59]{color:#ef4444;font-size:13px;margin-bottom:12px}.dashboard[data-v-49b3209d]{max-width:600px;margin:0 auto}.card[data-v-49b3209d]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:0 4px 16px #0000000a}.card h2[data-v-49b3209d]{margin:0 0 20px;font-size:18px;color:var(--text-primary)}.field[data-v-49b3209d]{margin-bottom:16px}.field label[data-v-49b3209d]{display:block;margin-bottom:6px;font-size:13px;color:var(--text-secondary);font-weight:600}.field input[data-v-49b3209d],.field select[data-v-49b3209d]{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;box-sizing:border-box}.field input[data-v-49b3209d]:focus,.field select[data-v-49b3209d]:focus{outline:none;border-color:var(--accent-primary)}button[data-v-49b3209d]{width:100%;padding:12px;border:none;border-radius:8px;background:var(--accent-primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer}button[data-v-49b3209d]:disabled{opacity:.7;cursor:not-allowed}.msg[data-v-49b3209d]{margin:12px 0;font-size:13px}.msg.success[data-v-49b3209d]{color:#22c55e}.msg.error[data-v-49b3209d]{color:#ef4444}.dashboard[data-v-cfd8b15e]{max-width:600px;margin:0 auto}.card[data-v-cfd8b15e]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:0 4px 16px #0000000a}.card h2[data-v-cfd8b15e]{margin:0 0 20px;font-size:18px;color:var(--text-primary)}.field[data-v-cfd8b15e]{margin-bottom:16px}.field label[data-v-cfd8b15e]{display:block;margin-bottom:6px;font-size:13px;color:var(--text-secondary);font-weight:600}.checkbox label[data-v-cfd8b15e]{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400;color:var(--text-primary)}.checkbox input[data-v-cfd8b15e]{width:auto;cursor:pointer}.field input[data-v-cfd8b15e],.field select[data-v-cfd8b15e]{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;box-sizing:border-box}.field input[data-v-cfd8b15e]:focus,.field select[data-v-cfd8b15e]:focus{outline:none;border-color:var(--accent-primary)}button[data-v-cfd8b15e]{width:100%;padding:12px;border:none;border-radius:8px;background:var(--accent-primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer}button[data-v-cfd8b15e]:disabled{opacity:.7;cursor:not-allowed}.msg[data-v-cfd8b15e]{margin:12px 0;font-size:13px}.msg.success[data-v-cfd8b15e]{color:#22c55e}.msg.error[data-v-cfd8b15e]{color:#ef4444}.dashboard[data-v-7a555cde]{max-width:600px;margin:0 auto}.card[data-v-7a555cde]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:0 4px 16px #0000000a}.card h2[data-v-7a555cde]{margin:0 0 20px;font-size:18px;color:var(--text-primary)}.field[data-v-7a555cde]{margin-bottom:16px}.field label[data-v-7a555cde]{display:block;margin-bottom:6px;font-size:13px;color:var(--text-secondary);font-weight:600}.field input[data-v-7a555cde]{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;box-sizing:border-box}.field input[data-v-7a555cde]:focus{outline:none;border-color:var(--accent-primary)}button[data-v-7a555cde]{width:100%;padding:12px;border:none;border-radius:8px;background:var(--accent-primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer}button[data-v-7a555cde]:disabled{opacity:.7;cursor:not-allowed}.msg[data-v-7a555cde]{margin:12px 0;font-size:13px}.msg.success[data-v-7a555cde]{color:#22c55e}.msg.error[data-v-7a555cde]{color:#ef4444}.admin-app[data-v-f168193d]{min-height:100vh;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.admin-header[data-v-f168193d]{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border);box-shadow:0 2px 8px #0000000a}.admin-header h1[data-v-f168193d]{margin:0;font-size:18px;font-weight:700;color:var(--accent-primary)}.admin-nav[data-v-f168193d]{display:flex;gap:16px;align-items:center}.admin-nav a[data-v-f168193d]{cursor:pointer;font-size:14px;color:var(--text-secondary);padding:6px 12px;border-radius:6px;transition:all .2s}.admin-nav a[data-v-f168193d]:hover{color:var(--accent-primary);background:var(--bg-tertiary)}.admin-nav a.active[data-v-f168193d]{color:#fff;background:var(--accent-primary)}.admin-main[data-v-f168193d]{padding:24px;max-width:960px;margin:0 auto}:root{--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-display: 40px;--font-title: 24px;--font-subtitle: 18px;--font-body: 14px;--font-caption: 12px;--font-micro: 10px;--font-kpi: 48px;--font-header: 28px;--weight-bold: 700;--weight-semibold: 600;--weight-medium: 500;--weight-normal: 400;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--bottom-nav-h: 56px;--male-color: #3b82f6;--female-color: #ec4899;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--text-primary: #020617;--text-secondary: #334155;--text-muted: #64748b;--accent-primary: #0369a1;--accent-secondary: #0284c7;--accent-green: #059669;--accent-amber: #d97706;--accent-red: #dc2626;--accent-purple: #7c3aed;--border: #e2e8f0;--shadow: rgba(0, 0, 0, .04);--dropdown-shadow: 0 8px 24px rgba(0, 0, 0, .18);--card-shadow: 0 1px 2px rgba(0, 0, 0, .03), 0 4px 12px rgba(0, 0, 0, .04);--card-hover-shadow: 0 4px 16px rgba(0, 0, 0, .08);--card-hover-border: rgba(3, 105, 161, .2);--nav-bg: rgba(255, 255, 255, .96);--nav-border: #e2e8f0;--nav-item-border: rgba(0, 0, 0, .12);--nav-item-hover-bg: rgba(3, 105, 161, .05);--nav-item-text: #64748b;--nav-active: #0369a1;--nav-active-bg: rgba(3, 105, 161, .08);--nav-active-glow: 0 2px 8px rgba(3, 105, 161, .25);--nav-active-text: #ffffff;--title-gradient: linear-gradient(135deg, #0369a1 0%, #0284c7 50%, #7c3aed 100%);--badge-gradient: linear-gradient(135deg, #0369a1, #075985);--badge-text: #ffffff;--progress-bg: rgba(0, 0, 0, .05);--glow-primary: none;--glow-secondary: none;--kpi-text-shadow: none;--hero-glow: none;--hero-border: rgba(3, 105, 161, .15);--hero-gradient: linear-gradient(135deg, rgba(3,105,161,.06) 0%, rgba(2,132,199,.05) 50%, rgba(124,58,237,.06) 100%);--slogan-gradient: linear-gradient(135deg, #b45309 0%, #be185d 100%);--mascot-glow: drop-shadow(0 4px 12px rgba(3, 105, 161, .18));--mission-gradient-from: rgba(15, 23, 42, .04);--mission-gradient-to: rgba(51, 65, 85, .04);--mission-border: rgba(3, 105, 161, .12);--mission-quote-gradient: linear-gradient(135deg, #0f172a 0%, #334155 100%);--mission-highlight-color: #0369a1;--divider-color: #e2e8f0;--viewport-bg: #eef2f7;--chart-1: #2563eb;--chart-2: #d97706;--chart-3: #0891b2;--chart-4: #7c3aed;--chart-5: #0d9488;--chart-6: #db2777;--plate-grain: #65a30d;--heatmap-0: #e0f2fe;--heatmap-1: #bae6fd;--heatmap-2: #7dd3fc;--heatmap-3: #38bdf8;--heatmap-4: #0284c7;--heatmap-5: #075985;--chart-axis: #64748b;--chart-grid: rgba(0, 0, 0, .06);--chart-tooltip-bg: rgba(255, 255, 255, .98);--chart-tooltip-text: #020617;--chart-tooltip-border: #e2e8f0;--success-text: #15803d;--success: #16a34a;--success-bg: #dcfce7;--warning-text: #b45309;--warning: #d97706;--warning-bg: #fef3c7;--danger-text: #b91c1c;--danger: #dc2626;--danger-bg: #fee2e2;--info-text: #1d4ed8;--info: #2563eb;--info-bg: #dbeafe}.theme-dark{--bg-primary: #0a0e27;--bg-secondary: #121830;--bg-tertiary: #1a2140;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-primary: #10b981;--accent-secondary: #3b82f6;--accent-green: #22c55e;--accent-amber: #f59e0b;--accent-red: #ef4444;--accent-purple: #8b5cf6;--border: rgba(255, 255, 255, .08);--shadow: rgba(0, 0, 0, .3);--dropdown-shadow: 0 8px 24px rgba(0, 0, 0, .5);--card-shadow: 0 2px 8px rgba(0, 0, 0, .3), 0 0 1px rgba(255, 255, 255, .05);--card-hover-shadow: 0 4px 20px rgba(0, 0, 0, .4), 0 0 2px rgba(16, 185, 129, .15);--card-hover-border: rgba(16, 185, 129, .2);--nav-bg: rgba(10, 14, 39, .95);--nav-border: rgba(255, 255, 255, .08);--nav-item-border: rgba(255, 255, 255, .1);--nav-item-hover-bg: rgba(16, 185, 129, .06);--nav-item-text: #94a3b8;--nav-active: #10b981;--nav-active-bg: rgba(16, 185, 129, .15);--nav-active-glow: 0 0 12px rgba(16, 185, 129, .4), 0 2px 8px rgba(16, 185, 129, .3);--nav-active-text: #0a0e27;--title-gradient: linear-gradient(135deg, #10b981 0%, #3b82f6 50%, #8b5cf6 100%);--badge-gradient: linear-gradient(135deg, #10b981, #059669);--badge-text: #0a0e27;--progress-bg: rgba(255, 255, 255, .06);--glow-primary: 0 0 12px rgba(16, 185, 129, .3);--glow-secondary: 0 0 12px rgba(59, 130, 246, .3);--kpi-text-shadow: 0 0 12px rgba(16, 185, 129, .3), 0 2px 4px rgba(0, 0, 0, .3);--hero-glow: 0 0 20px rgba(16, 185, 129, .06);--hero-border: rgba(16, 185, 129, .2);--hero-gradient: linear-gradient(135deg, rgba(16,185,129,.08) 0%, rgba(59,130,246,.06) 50%, rgba(139,92,246,.08) 100%);--slogan-gradient: linear-gradient(135deg, #f59e0b 0%, #ec4899 100%);--mascot-glow: drop-shadow(0 4px 12px rgba(16, 185, 129, .35));--mission-gradient-from: rgba(245, 158, 11, .08);--mission-gradient-to: rgba(236, 72, 153, .08);--mission-border: rgba(245, 158, 11, .2);--mission-quote-gradient: linear-gradient(135deg, #fbbf24 0%, #f472b6 100%);--mission-highlight-color: #fbbf24;--divider-color: rgba(255, 255, 255, .08);--viewport-bg: #05081a;--chart-1: #60a5fa;--chart-2: #fbbf24;--chart-3: #22d3ee;--chart-4: #a78bfa;--chart-5: #2dd4bf;--chart-6: #f472b6;--heatmap-0: #0f1e2e;--heatmap-1: #0d3d52;--heatmap-2: #0b5f7a;--heatmap-3: #0a7e9e;--heatmap-4: #10b981;--heatmap-5: #34d399;--chart-axis: #94a3b8;--chart-grid: rgba(255, 255, 255, .06);--chart-tooltip-bg: rgba(15, 23, 42, .95);--chart-tooltip-text: #e2e8f0;--chart-tooltip-border: rgba(16, 185, 129, .4);--success-text: #4ade80;--success: #22c55e;--success-bg: rgba(34, 197, 94, .15);--warning-text: #fbbf24;--warning: #f59e0b;--warning-bg: rgba(245, 158, 11, .15);--danger-text: #f87171;--danger: #ef4444;--danger-bg: rgba(239, 68, 68, .15);--info-text: #60a5fa;--info: #3b82f6;--info-bg: rgba(59, 130, 246, .15);--plate-grain: #a3e635}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}#app{width:100%;height:100%;background:#eef2f7}.content-area>*{height:100%;width:100%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,rgba(128,128,128,.08) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.data-status{font-size:11px;padding:4px 10px;border-radius:12px;border:1px solid transparent;white-space:nowrap}.data-status.live{background:var(--success-bg);color:var(--success-text);border-color:var(--success)}.data-status.demo{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger)}.data-status.stale{background:var(--warning-bg);color:var(--warning-text);border-color:var(--warning)}.data-status.offline{background:var(--bg-tertiary);color:var(--text-muted);border-color:var(--border)}.app{display:flex;flex-direction:column;width:100vw;height:100vh;background:var(--bg-primary);color:var(--text-primary);overflow:hidden}.content-area{flex:1;overflow:hidden;position:relative}.page-enter-active,.page-leave-active{transition:opacity .35s var(--ease-out-expo),transform .35s var(--ease-out-expo);position:absolute;inset:0}.page-enter-from{opacity:0;transform:translate(24px)}.page-leave-to{opacity:0;transform:translate(-24px)}.screen-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:var(--text-muted)}.screen-placeholder h2{font-size:32px;font-weight:var(--weight-bold);color:var(--text-secondary)}.screen-placeholder p{font-size:14px;color:var(--text-muted)}.lock-light{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--text-primary: #020617;--text-secondary: #334155;--text-muted: #64748b;--border: #e2e8f0;--shadow: rgba(0, 0, 0, .04);--success-text: #15803d;--warning-text: #b45309;--danger-text: #b91c1c;--info-text: #1d4ed8;background:var(--bg-primary);color:var(--text-primary)}html{transition:background-color .4s ease}html,body{background-color:var(--bg-primary);color:var(--text-primary)}
