:root{--bg-primary:#0a0e1a;--bg-secondary:#111827;--bg-tertiary:#1a2235;--bg-card:#11182799;--bg-glass:#ffffff08;--bg-glass-hover:#ffffff0f;--accent-primary:#6366f1;--accent-primary-light:#818cf8;--accent-primary-dark:#4f46e5;--accent-glow:#6366f140;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #a78bfa 100%);--success:#10b981;--success-glow:#10b98133;--warning:#f59e0b;--warning-glow:#f59e0b33;--error:#ef4444;--error-glow:#ef444433;--info:#3b82f6;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-muted:#475569;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-accent:#6366f14d;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 24px var(--accent-glow);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 50% at 20% 20%,#6366f114 0%,#0000 60%),radial-gradient(60% 40% at 80% 80%,#8b5cf60f 0%,#0000 50%),radial-gradient(50% 50%,#3b82f60a 0%,#0000 60%);position:fixed;inset:0}#root{z-index:1;min-height:100vh;position:relative}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}h1{letter-spacing:-.03em;font-size:2rem;font-weight:800;line-height:1.2}h2{letter-spacing:-.02em;font-size:1.5rem;font-weight:700;line-height:1.3}h3{letter-spacing:-.01em;font-size:1.25rem;font-weight:600}h4{font-size:1rem;font-weight:600}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:all var(--transition-base)}.glass-card:hover{border-color:var(--border-default);background:var(--bg-glass-hover)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;font-size:.875rem;font-weight:500;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-sm), 0 0 12px var(--accent-glow)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md), var(--shadow-glow);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border-subtle);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--border-default)}.input{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-family);transition:all var(--transition-fast);outline:none;padding:12px 16px;font-size:.9375rem}.input::placeholder{color:var(--text-muted)}.input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);background:#ffffff0d}.badge-success{background:var(--success-glow);color:var(--success)}.badge-warning{background:var(--warning-glow);color:var(--warning)}.badge-error{background:var(--error-glow);color:var(--error)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.animate-fade-in{animation:.4s ease-out fadeIn}.animate-fade-in-up{animation:.5s ease-out fadeInUp}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.skeleton{background:linear-gradient(90deg, var(--bg-tertiary) 25%, #ffffff0f 50%, var(--bg-tertiary) 75%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.5s ease-in-out infinite shimmer}.text-gradient{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.login-page{--left-bg:#eef1fb;--left-title:#14161f;--left-subtitle:#6b7080;--left-label:#4b4f5c;--left-input-bg:#fff;--left-input-border:#d9dce4;--left-input-text:#1a1d29;--left-input-placeholder:#a7abb8;--left-icon:#9aa0af;--left-divider:#dde0e8;--left-security-title:#23262f;--left-security-body:#7a7f8c;--left-meta:#9aa0af;--left-dot:#c3c7d1;color:#1a1d29;width:100%;height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){.login-page:not(.light){--left-bg:radial-gradient(120% 120% at 20% 0%, #1c2438 0%, #10131f 60%, #0b0d16 100%);--left-title:#f4f5f8;--left-subtitle:#9aa0af;--left-label:#c3c7d1;--left-input-bg:#171c2c;--left-input-border:#2b3247;--left-input-text:#f4f5f8;--left-input-placeholder:#6b7080;--left-icon:#8b8fa3;--left-divider:#262c40;--left-security-title:#eef0f5;--left-security-body:#9aa0af;--left-meta:#7a7f95;--left-dot:#3c4358}}.login-page.dark{--left-bg:radial-gradient(120% 120% at 20% 0%, #1c2438 0%, #10131f 60%, #0b0d16 100%);--left-title:#f4f5f8;--left-subtitle:#9aa0af;--left-label:#c3c7d1;--left-input-bg:#171c2c;--left-input-border:#2b3247;--left-input-text:#f4f5f8;--left-input-placeholder:#6b7080;--left-icon:#8b8fa3;--left-divider:#262c40;--left-security-title:#eef0f5;--left-security-body:#9aa0af;--left-meta:#7a7f95;--left-dot:#3c4358}.login-left{background:var(--left-bg);z-index:1;flex:50%;justify-content:center;align-items:center;height:100vh;padding:clamp(20px,4vh,48px) 32px;transition:background .3s;display:flex;overflow:hidden}.login-form-wrap{width:100%;max-width:464px}.login-title{color:var(--left-title);margin:0 0 10px;font-size:clamp(20px,2.4vh,24px);font-weight:700}.login-subtitle{color:var(--left-subtitle);margin:0 0 clamp(14px,2.5vh,28px);font-size:14px;line-height:1.5}.login-error{color:#b3261e;background:#fdecec;border:1px solid #f6c6c6;border-radius:8px;margin-bottom:clamp(10px,1.8vh,18px);padding:10px 14px;font-size:13.5px;overflow:hidden}.field-label{letter-spacing:.04em;color:var(--left-label);margin-bottom:8px;font-size:12px;font-weight:600;display:block}.password-row{justify-content:space-between;align-items:center;margin-top:clamp(10px,2vh,18px);display:flex}.password-row .field-label{margin-bottom:8px}.forgot-link{letter-spacing:.02em;color:#4c6ef5;font-size:12px;font-weight:600;text-decoration:none}.forgot-link:hover{text-decoration:underline}.input-wrap .input:-webkit-autofill{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.input-wrap .input:-webkit-autofill:hover{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.input-wrap .input:-webkit-autofill:focus{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.input-wrap .input:-webkit-autofill:active{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.submit-btn{color:#fff;cursor:pointer;background:#4c6ef5;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:clamp(10px,2vh,18px);padding:clamp(10px,1.8vh,14px) 16px;font-size:15px;font-weight:700;transition:background .15s,opacity .15s;display:flex}.login-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite login-spin}@keyframes login-spin{to{transform:rotate(360deg)}}.signup-line{text-align:center;color:var(--left-label);margin:clamp(10px,2vh,18px) 0 clamp(12px,2.2vh,20px);font-size:13.5px}.signup-link{color:#4c6ef5;font-weight:600;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:none}.signup-link:hover{text-decoration:underline}.login-right{color:#fff;text-align:center;z-index:1;background:radial-gradient(120% 120% at 20% 0,#1c2438 0%,#10131f 60%,#0b0d16 100%);flex-direction:column;flex:1 0 50%;justify-content:center;align-items:center;height:100vh;padding:clamp(24px,5vh,64px) clamp(24px,4vw,56px);display:flex;position:relative;overflow:hidden}.login-orb{filter:blur(60px);opacity:.35;pointer-events:none;z-index:0;border-radius:50%;animation:10s ease-in-out infinite login-orb-float;position:absolute}.login-orb-1{background:#4c6ef5;width:260px;height:260px;animation-delay:0s;top:-60px;right:-40px}.login-orb-2{background:#b58bf5;width:220px;height:220px;animation-delay:2.5s;bottom:10%;left:-60px}.login-orb-3{background:#34cf8e;width:180px;height:180px;animation-delay:5s;bottom:-60px;right:20%}@keyframes login-orb-float{0%,to{transform:translate(0)scale(1)}50%{transform:translate(20px,-20px)scale(1.08)}}.showcase-art{object-fit:cover;align-items:center;width:100%;height:auto;display:block}.copyright{z-index:1;letter-spacing:.04em;color:#6a6e80;align-items:center;font-size:11px;position:relative}@media (width<=900px){html,body{height:auto;overflow:hidden auto}.login-page{flex-direction:column;height:auto;min-height:100vh;overflow:hidden visible}.login-left{height:auto;padding:40px 24px;overflow:hidden}.login-right{flex-shrink:1;order:-1;height:auto;padding:40px 24px;overflow:hidden}.stat-row{margin-bottom:32px}}.input-wrap .input:focus,.input-wrap .input:focus-visible{box-shadow:none!important;outline:none!important}.input-wrap-error{border-color:#e5484d!important}.input-wrap-error:focus-within{box-shadow:0 0 0 3px #e5484d26!important}.field-error{color:#e5484d;margin:6px 0 0;font-size:12.5px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.two-factor-login-panel{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-bottom:20px;display:flex}.two-factor-login-icon{justify-content:center;align-items:center;margin-bottom:4px;display:flex}.two-factor-login-panel p{margin:0;line-height:1.5}.two-factor-otp-input{text-align:center;letter-spacing:.35em;font-size:20px;font-weight:600}.two-factor-login-panel+.login-success{margin-top:8px}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden}.signup-page{--left-bg:#eef1fb;--left-title:#14161f;--left-subtitle:#6b7080;--left-label:#4b4f5c;--left-input-bg:#fff;--left-input-border:#d9dce4;--left-input-text:#1a1d29;--left-input-placeholder:#a7abb8;--left-icon:#9aa0af;--left-divider:#dde0e8;--left-security-title:#23262f;--left-security-body:#7a7f8c;--left-meta:#9aa0af;--left-dot:#c3c7d1;--left-terms:#6b7080;color:#1a1d29;width:100%;height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;position:relative;overflow:hidden}.signup-page.dark{--left-bg:radial-gradient(120% 120% at 20% 0%, #1c2438 0%, #10131f 60%, #0b0d16 100%);--left-title:#f4f5f8;--left-subtitle:#9aa0af;--left-label:#c3c7d1;--left-input-bg:#171c2c;--left-input-border:#2b3247;--left-input-text:#f4f5f8;--left-input-placeholder:#6b7080;--left-icon:#8b8fa3;--left-divider:#262c40;--left-security-title:#eef0f5;--left-security-body:#9aa0af;--left-meta:#7a7f95;--left-dot:#3c4358;--left-terms:#9aa0af}.signup-left{background:var(--left-bg);z-index:1;scrollbar-width:thin;scrollbar-color:var(--left-input-border) transparent;flex:50%;justify-content:center;align-items:flex-start;height:100vh;padding:48px 32px;transition:background .3s;display:flex;overflow:hidden auto}.signup-left::-webkit-scrollbar{width:8px}.signup-left::-webkit-scrollbar-thumb{background:var(--left-input-border);border-radius:8px}.signup-form-wrap{width:100%;max-width:464px;margin:auto 0}.brand{align-items:center;gap:12px;margin-bottom:28px;display:flex}.brand-icon{color:#fff;background:linear-gradient(135deg,#8b7ce8,#6f6ee0);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.brand-name{color:#4c6ef5;font-size:22px;font-weight:700}.signup-title{color:var(--left-title);margin:0 0 10px;font-size:24px;font-weight:700}.signup-subtitle{color:var(--left-subtitle);margin:0 0 24px;font-size:14px;line-height:1.5}.signup-error{color:#b3261e;background:#fdecec;border:1px solid #f6c6c6;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13.5px;overflow:hidden}.field-label{letter-spacing:.04em;color:var(--left-label);margin:16px 0 8px;font-size:12px;font-weight:600;display:block}.signup-form .field-label:first-of-type{margin-top:0}.input-wrap{background:var(--left-input-bg);border:1px solid var(--left-input-border);border-radius:10px;align-items:center;padding:0 14px;transition:border-color .15s,box-shadow .15s,background .3s;display:flex;position:relative}.input-wrap:focus-within{border-color:#4c6ef5;box-shadow:0 0 0 3px #4c6ef526}.input-icon{color:var(--left-icon);flex-shrink:0;margin-right:10px}.input-wrap .input{color:var(--left-input-text);background:0 0;border:none;outline:none;flex:1;padding:13px 0;font-size:14px}.input-wrap .input::placeholder{color:var(--left-input-placeholder)}.input-wrap .input:-webkit-autofill{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.input-wrap .input:-webkit-autofill:hover{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.input-wrap .input:-webkit-autofill:focus{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.input-wrap .input:-webkit-autofill:active{-webkit-text-fill-color:var(--left-input-text);caret-color:var(--left-input-text);-webkit-box-shadow:0 0 0px 1000px var(--left-input-bg) inset;box-shadow:0 0 0px 1000px var(--left-input-bg) inset;transition:background-color 5000s ease-in-out}.eye-btn{color:var(--left-icon);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:inline-flex}.terms-line{color:var(--left-terms);margin:16px 0 20px;font-size:13px;line-height:1.5}.terms-line a{color:#4c6ef5;font-weight:600;text-decoration:none}.terms-line a:hover{text-decoration:underline}.submit-btn{color:#fff;cursor:pointer;background:#4c6ef5;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 16px;font-size:15px;font-weight:700;transition:background .15s,opacity .15s;display:flex}.submit-btn:hover:not(:disabled){background:#3f5edb}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.signup-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite signup-spin}@keyframes signup-spin{to{transform:rotate(360deg)}}.signin-line{text-align:center;color:var(--left-label);margin:18px 0 20px;font-size:13.5px}.signin-link{color:#4c6ef5;font-weight:600;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:none}.signin-link:hover{text-decoration:underline}.divider{border:none;border-top:1px solid var(--left-divider);margin:0 0 20px}.security-note{gap:10px;margin-bottom:18px;display:flex}.shield-icon{color:#2fa877;flex-shrink:0;margin-top:2px}.security-title{letter-spacing:.03em;color:var(--left-security-title);margin:0 0 4px;font-size:12px;font-weight:700}.security-body{color:var(--left-security-body);margin:0;font-size:12.5px;line-height:1.5}.footer-meta{color:var(--left-meta);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.footer-meta a{color:var(--left-meta);text-decoration:none}.footer-meta a:hover{color:#4c6ef5}.info-icon{color:var(--left-meta);flex-shrink:0}.dot{color:var(--left-dot)}.signup-right{color:#fff;text-align:center;z-index:1;background:radial-gradient(120% 120% at 20% 0,#1c2438 0%,#10131f 60%,#0b0d16 100%);flex-direction:column;flex:1 0 50%;justify-content:center;align-items:center;height:100vh;padding:clamp(24px,5vh,64px) clamp(24px,4vw,56px);display:flex;position:relative;overflow:hidden}.signup-orb{filter:blur(60px);opacity:.35;pointer-events:none;z-index:0;border-radius:50%;animation:10s ease-in-out infinite signup-orb-float;position:absolute}.signup-orb-1{background:#4c6ef5;width:260px;height:260px;animation-delay:0s;top:-60px;right:-40px}.signup-orb-2{background:#b58bf5;width:220px;height:220px;animation-delay:2.5s;bottom:10%;left:-60px}.signup-orb-3{background:#34cf8e;width:180px;height:180px;animation-delay:5s;bottom:-60px;right:20%}@keyframes signup-orb-float{0%,to{transform:translate(0)scale(1)}50%{transform:translate(20px,-20px)scale(1.08)}}.showcase-frame{z-index:1;background:#dfe2e9;border:1px solid #ffffff1f;border-radius:14px;width:80%;max-width:590px;margin-bottom:clamp(16px,3vh,36px);position:relative;overflow:hidden;box-shadow:0 20px 60px #00000059}.showcase-art{object-fit:cover;width:100%;height:auto;display:block}.showcase-title{z-index:1;max-width:520px;margin:0 0 clamp(8px,1.5vh,16px);font-size:clamp(10px,2vw,20px);font-weight:500;position:relative}.showcase-copy{z-index:1;color:#aeb3c4;max-width:480px;margin:0 0 clamp(16px,3vh,28px);font-size:12px;line-height:1.6;position:relative}.feature-grid{z-index:1;grid-template-columns:repeat(2,auto);gap:12px 40px;margin-bottom:clamp(20px,4vh,40px);display:grid;position:relative}.feature-item{color:#dfe2ea;align-items:center;gap:8px;font-size:10px;font-weight:500;display:flex}.feature-icon{color:#34cf8e;flex-shrink:0}.stat-row{z-index:1;align-items:center;gap:16px;display:flex;position:relative}.stat{text-align:center}.stat-value{margin:0 0 4px;font-size:16px;font-weight:600}.stat-blue{color:#5b8dfd}.stat-green{color:#34cf8e}.stat-purple{color:#b58bf5}.stat-label{letter-spacing:.06em;color:#8b8fa3;margin:0;font-size:8px}.stat-sep{background:#ffffff26;width:1px;height:34px}.copyright{z-index:1;letter-spacing:.04em;color:#6a6e80;font-size:11px;position:relative}@media (width<=900px){html,body{height:auto;overflow:hidden auto}.signup-page{flex-direction:column;height:auto;min-height:100vh;overflow:hidden visible}.signup-left{align-items:center;height:auto;overflow:hidden visible}.signup-right{flex-shrink:1;order:-1;height:auto;padding:40px 24px;overflow:hidden}.feature-grid{grid-template-columns:1fr;justify-items:start;margin-bottom:28px}.stat-row{margin-bottom:32px}}a:focus-visible,button:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #4c6ef5}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.password-requirements{background:#ffffff09;border:1px solid #ffffff14;border-radius:8px;margin-top:8px;margin-bottom:14px;padding:10px 12px}.password-requirements-title{color:#fff;margin-bottom:8px;font-size:13px;font-weight:600}.requirement{color:#ffffffb8;align-items:center;gap:8px;margin:5px 0;font-size:13px;font-weight:400;line-height:1.5;display:flex}.requirement svg{color:#ffffff80;flex-shrink:0;width:15px;height:15px}.requirement.valid{color:#fff;font-weight:400}.requirement.valid svg{color:#22c55e}.dashboard{--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:20px;--space-xl:28px;--space-2xl:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:999px;--transition-fast:.15s ease;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-primary:#eef0f8;--bg-secondary:#fff;--bg-tertiary:#eef1f7;--bg-card:#fff;--bg-glass:#fff;--bg-glass-hover:#f4f5fb;--border-subtle:#e6e8f2;--border-default:#d9dce8;--text-primary:#14161f;--text-secondary:#565b6c;--text-tertiary:#7b8094;--text-muted:#9a9fb0;--accent-primary:#4c6ef5;--accent-primary-light:#6f6ee0;--accent-gradient:linear-gradient(135deg, #8b7ce8, #6f6ee0);--error:#e5484d;--warning:#e08a2b;--success:#2fa877;--info:#4c6ef5;--shadow-sm:0 1px 2px #14161f0f;--shadow-lg:0 16px 36px #14161f1f;background:var(--bg-primary);height:100vh;color:var(--text-primary);font-family:var(--font-family);display:flex;overflow:hidden}.dashboard.dark{--bg-primary:#0b0d16;--bg-secondary:#10131f;--bg-tertiary:#171b2a;--bg-card:#141826;--bg-glass:#141826;--bg-glass-hover:#1a1f30;--border-subtle:#232838;--border-default:#2b3247;--text-primary:#f4f5f8;--text-secondary:#b4b9c9;--text-tertiary:#8b8fa3;--text-muted:#6b7080;--accent-primary:#6f6ee0;--accent-primary-light:#a7b3ff;--accent-gradient:linear-gradient(135deg, #201756, #090848);--error:#f87171;--warning:#fbbf24;--success:#34cf8e;--info:#6f6ee0;--shadow-sm:none;--shadow-lg:0 20px 50px #00000080}.settings-wrap{z-index:100;position:relative}.settings-dropdown{z-index:1000;border-radius:12px;width:220px;padding:14px;position:absolute;top:calc(100% + 10px);right:0}.settings-dropdown-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 12px;font-size:12px;font-weight:700}.settings-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.settings-row-label{color:var(--text-primary);align-items:center;gap:8px;font-size:13.5px;display:flex}.theme-switch-btn{border:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.theme-switch-btn:hover{color:#4c6ef5;border-color:#4c6ef5}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-subtle);width:260px;min-width:260px;padding:var(--space-lg) var(--space-md);gap:var(--space-md);flex-direction:column;transition:background .25s,border-color .25s;display:flex}.sidebar-header{justify-content:space-between;align-items:center;gap:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-subtle);display:flex}.sidebar-header-left{align-items:center;gap:var(--space-md);min-width:0;display:flex}.sidebar-collapse-btn{border-radius:var(--radius-md);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-collapse-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.sidebar-logo{background:var(--accent-gradient);border-radius:var(--radius-md);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.sidebar-title{color:var(--text-primary);font-size:1.05rem;font-weight:700}.sidebar-version{color:var(--text-muted);font-size:.7rem;font-weight:500}.sidebar-nav{padding-bottom:var(--space-md);border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:2px;display:flex}.nav-item{align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;padding:11px 14px;font-size:1rem;font-weight:500;display:flex}.nav-item:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.nav-item.active{color:var(--accent-primary-light);background:#6366f11f;font-weight:600}.sidebar.collapsed{width:72px;min-width:72px;padding:var(--space-lg) 10px}.sidebar.collapsed .sidebar-header{gap:var(--space-sm);flex-direction:column}.sidebar.collapsed .sidebar-header-left{justify-content:center}.sidebar.collapsed .nav-item{justify-content:center;padding:10px}.sidebar.collapsed .sidebar-footer{gap:var(--space-sm);flex-direction:column}.sidebar.collapsed .sidebar-user{justify-content:center}.recents-section{gap:var(--space-sm);flex-direction:column;flex:1;min-height:0;display:flex}.recents-section-header{justify-content:space-between;align-items:center;display:flex}.recents-new-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative}.recents-new-btn:hover{background:var(--bg-glass-hover);color:var(--accent-primary-light)}.recents-new-btn:after{content:attr(data-tooltip);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);white-space:nowrap;box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;pointer-events:none;z-index:30;padding:5px 9px;font-size:11px;font-weight:600;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-4px)}.recents-new-btn:before{content:"";background:var(--bg-card);border-left:1px solid var(--border-subtle);border-top:1px solid var(--border-subtle);opacity:0;visibility:hidden;pointer-events:none;z-index:30;width:8px;height:8px;transition:opacity .15s,visibility .15s;position:absolute;top:calc(100% + 4px);right:8px;transform:rotate(45deg)}.recents-new-btn:hover:after,.recents-new-btn:hover:before{opacity:1;visibility:visible;transform:translateY(0)}.recents-list{gap:var(--space-md);flex-direction:column;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.recents-list:not(.is-expanded){flex:none;overflow:visible}.recents-list.is-expanded{flex:auto}.recents-expand-toggle{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;gap:4px;margin-top:2px;padding:6px;font-size:.75rem;font-weight:600;display:flex}.recents-expand-toggle:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.recents-group{flex-direction:column;gap:1px;display:flex}.recents-group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:4px 10px;font-size:.65rem;font-weight:700}.recents-item{border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);justify-content:space-between;align-items:center;gap:6px;padding:8px 10px;display:flex}.recents-item:hover{background:var(--bg-glass-hover)}.recents-item.active{background:#6366f11f}.recents-item-title{min-width:0;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8125rem;overflow:hidden}.recents-item.active .recents-item-title{color:var(--accent-primary-light);font-weight:600}.recents-item.is-pinned .recents-item-title{color:var(--text-primary)}.recents-pin-icon{vertical-align:-1px;color:var(--accent-primary-light);flex-shrink:0;margin-right:5px}.recents-item-menu-wrap{flex-shrink:0;position:relative}.recents-item-menu-btn{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:none}.recents-item:hover .recents-item-menu-btn{display:flex}.recents-item-menu-wrap:has(.recents-item-dropdown) .recents-item-menu-btn{display:flex}.recents-item-menu-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.recents-item-dropdown{z-index:30;border-radius:var(--radius-md);border:1px solid var(--border-subtle,#ffffff14);background:var(--bg-secondary,#14141e);flex-direction:column;min-width:148px;padding:5px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0000004d}.recents-item-dropdown button{border-radius:var(--radius-sm);color:var(--text-secondary);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:8px 9px;font-size:.8rem;font-weight:500;display:flex}.recents-item-dropdown button:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.recents-item-dropdown button.is-danger:hover{color:var(--error);background:#ef44441f}.recents-rename-input{border-radius:var(--radius-sm);border:1px solid var(--accent-primary-light);background:var(--bg-primary,transparent);min-width:0;color:var(--text-primary);outline:none;flex:1;padding:3px 6px;font-size:.8125rem}.recents-item-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.recents-item-inline-btn{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.recents-item-inline-btn:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.recents-empty{color:var(--text-muted);padding:10px;font-size:.8125rem}.skeleton{background:var(--bg-tertiary);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";background-image:linear-gradient(90deg,#787d9600 0,#787d961f 20%,#787d9633 60%,#787d9600);animation:2s infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.skeleton-text{width:100%;height:.8em;margin-bottom:.5em}.skeleton-title{width:60%;height:1.2em;margin-bottom:.8em}.skeleton-circle{border-radius:var(--radius-md);width:34px;height:34px}.status-section{gap:var(--space-sm);flex-direction:column;display:flex}.status-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:var(--space-xs);font-size:.7rem;font-weight:700}.status-card{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 10px;border-radius:var(--radius-md);transition:background var(--transition-fast);background:0 0;display:flex}.status-card:hover{background:var(--bg-glass-hover)}.status-card-icon{color:var(--text-secondary);flex-shrink:0}.status-card-info{flex-direction:column;flex:1;min-width:0;display:flex}.status-card-label{color:var(--text-primary);font-size:.8125rem;font-weight:600}.status-card-detail{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;overflow:hidden}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 6px}.status-dot-ok{background:var(--success);color:var(--success)}.status-dot-warn{background:var(--warning);color:var(--warning)}.status-dot-error{background:var(--error);color:var(--error)}.schema-progress{padding:var(--space-md);gap:var(--space-sm);background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;display:flex}.schema-progress-title{align-items:center;gap:var(--space-sm);color:var(--accent-primary-light);font-size:.8125rem;font-weight:600;display:flex}.progress-bar-track{background:var(--bg-tertiary);border-radius:var(--radius-full);height:6px;overflow:hidden}.progress-bar-track.large{height:10px}.progress-bar-fill{background:var(--accent-gradient);border-radius:var(--radius-full);height:100%}.progress-text{color:var(--text-secondary);font-size:.75rem}.progress-current{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-family:JetBrains Mono,Fira Code,monospace;font-size:.6875rem;overflow:hidden}.sidebar-footer{padding-top:var(--space-md);border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:6px;margin-top:auto;display:flex}.sidebar-user-wrap{flex:1;min-width:0;position:relative}.sidebar-user{align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);cursor:pointer;width:100%;min-width:0;font-family:var(--font-family);text-align:left;transition:background var(--transition-fast);background:0 0;border:none;margin:-4px;padding:4px;display:flex}.sidebar-user:hover{background:var(--bg-glass-hover)}.sidebar-avatar{border-radius:var(--radius-full);background:var(--accent-gradient);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8125rem;font-weight:600;display:flex}.sidebar-username{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:500;overflow:hidden}.profile-dropdown{border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-default);width:230px;box-shadow:var(--shadow-lg);z-index:1000;padding:10px;position:absolute;bottom:calc(100% + 10px);left:0}.profile-dropdown-header{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--border-subtle);margin-bottom:6px;padding:6px 8px 12px;display:flex}.profile-dropdown-avatar{width:36px;height:36px;font-size:.875rem}.profile-dropdown-header-text{min-width:0}.profile-dropdown-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.875rem;font-weight:600;overflow:hidden}.profile-dropdown-role{color:var(--text-tertiary);margin:2px 0 0;font-size:.75rem}.profile-dropdown-item{border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;font-size:.8125rem;font-weight:500;font-family:var(--font-family);transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:10px;padding:9px 8px;display:flex}.profile-dropdown-item:hover{background:var(--bg-glass-hover)}.btn-ghost{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.btn-ghost:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.sidebar-theme-toggle,.sidebar-logout{padding:var(--space-sm);flex-shrink:0}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;background:#0a0c148c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:380px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);overflow:hidden}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.modal-header h3{color:var(--text-primary);margin:0;font-size:1rem;font-weight:700}.modal-close-btn{padding:6px}.modal-body{flex-direction:column;gap:14px;padding:18px 20px;display:flex}.modal-footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-secondary);font-size:.75rem;font-weight:600}.form-label-row{justify-content:space-between;align-items:center;display:flex}.form-show-pw-btn{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:.6875rem;font-weight:600;display:inline-flex}.form-show-pw-btn:hover{color:var(--text-primary)}.form-input{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-primary);width:100%;color:var(--text-primary);font-size:.8125rem;font-family:var(--font-family);transition:border-color var(--transition-fast);outline:none;padding:9px 12px}.form-input:focus{border-color:var(--accent-primary)}.form-input:disabled{color:var(--text-tertiary);cursor:not-allowed}.form-error{color:var(--error);margin:0;font-size:.75rem}.form-hint{color:var(--text-tertiary);margin:0;font-size:.6875rem}.main-content{background:var(--bg-primary);flex-direction:column;flex:1;min-width:0;transition:background .25s;display:flex;overflow:hidden}.global-topbar{padding:var(--space-md) var(--space-xl);border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0;justify-content:space-between;align-items:center;min-height:60px;transition:background .25s,border-color .25s;display:flex;overflow:visible}.topbar-spacer{flex:1}.topbar-actions{align-items:center;gap:14px;display:flex}.search-wrap{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-tertiary);pointer-events:none;position:absolute;left:12px}.search-wrap input{background:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);width:260px;font-size:13.5px;font-family:var(--font-family);color:var(--text-primary);transition:border-color var(--transition-fast);outline:none;padding:9px 12px 9px 36px}.search-wrap input::placeholder{color:var(--text-tertiary)}.search-wrap input:focus{border-color:var(--accent-primary)}.icon-btn{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-tertiary);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast);justify-content:center;align-items:center;display:inline-flex;position:relative}.icon-btn:hover{background:var(--bg-glass-hover)}.notification-wrap{position:relative}.notif-dot{background:var(--accent-primary-light);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;right:8px}.notif-badge{background:var(--accent-primary-light);color:#fff;border:2px solid var(--bg-secondary);border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:9px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-5px;right:-5px}.notification-panel{border:1px solid var(--border-default);z-index:1000;width:360px;max-width:min(360px,100vw - 32px);box-shadow:var(--shadow-lg);border-radius:14px;padding:0;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden}.notification-panel-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.notification-panel-header h3{color:var(--text-primary);margin:0;font-size:14px;font-weight:700}.notification-panel-header span{color:var(--text-muted);margin-top:3px;font-size:11px;display:block}.notification-mark-all{color:var(--accent-primary-light);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:4px;font-size:11px;font-weight:600}.notification-mark-all:hover{color:var(--accent-primary)}.notification-list{max-height:390px;overflow-y:auto}.notification-item{border:0;border-bottom:1px solid var(--border-subtle);width:100%;color:inherit;text-align:left;font-family:var(--font-family);cursor:pointer;transition:background var(--transition-fast);background:0 0;align-items:flex-start;gap:11px;padding:13px 15px;display:flex}.notification-item:last-child{border-bottom:0}.notification-item:hover,.notification-item.unread:hover{background:var(--bg-glass-hover)}.notification-item.unread{background:#6366f10b}.notification-item-icon{border-radius:9px;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;display:inline-flex}.notification-success{color:var(--success);background:#34cf8e1f}.notification-info{color:var(--accent-primary-light);background:#6366f11f}.notification-item-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.notification-item-top{align-items:center;gap:6px;display:flex}.notification-item-top strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);font-size:12.5px;font-weight:700;overflow:hidden}.notification-unread-dot{background:var(--accent-primary-light);border-radius:50%;width:6px;min-width:6px;height:6px}.notification-item-message{color:var(--text-secondary);font-size:11.5px;line-height:1.45}.notification-item-time{color:var(--text-muted);font-size:10px}.notification-empty{text-align:center;min-height:150px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:28px 18px;display:flex}.notification-empty svg{color:var(--accent-primary-light);margin-bottom:8px}.notification-empty p{color:var(--text-primary);margin:0 0 4px;font-size:12.5px;font-weight:600}.notification-empty span{font-size:10.5px}.topbar-avatar{width:36px;min-width:36px;height:36px;font-family:var(--font-family);color:#fff;background:var(--accent-gradient);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.8125rem;font-weight:700;display:flex}.topbar-avatar:hover{transform:translateY(-1px);box-shadow:0 0 0 3px #6366f124}@media (width<=520px){.notification-panel{width:auto;max-width:none;position:fixed;top:70px;left:16px;right:16px}}.tab-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.content-heading{padding:var(--space-md) var(--space-xl);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.content-heading-left{align-items:center;gap:var(--space-sm);display:flex}.content-heading-icon{color:var(--accent-primary-light)}.content-heading-left h2{color:var(--text-primary);font-size:1.1rem;font-weight:600}.badge{border-radius:var(--radius-full);align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{color:var(--success);background:#2fa8771f}.badge-info{color:var(--accent-primary-light);background:#6366f11f}.dashboard-content{padding:var(--space-xl);gap:var(--space-xl);flex-direction:column;flex:1;display:flex;overflow-y:auto}.badge-active{color:var(--accent-primary-light);border-radius:var(--radius-full);background:#6366f11f;border:1px solid #6366f13d;align-self:flex-start;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.page-heading-row{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.page-title{color:var(--text-primary);margin:0 0 8px;font-size:30px;font-weight:800}.page-subtitle{color:var(--text-secondary);max-width:640px;margin:0;font-size:14px;line-height:1.55}.heading-actions{flex-shrink:0;gap:10px;display:flex}.btn-outline{color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);font-size:13px;font-weight:600;font-family:var(--font-family);align-items:center;gap:8px;padding:9px 14px;display:inline-flex}.btn-outline:hover{background:var(--bg-glass-hover)}.stat-cards{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:#fff;background:linear-gradient(135deg,#1a2a4e 0%,#1e3a5f 100%);border:1px solid #4f6ef533;padding:18px}.stat-icon{border-radius:var(--radius-md);color:#ffffffe6;background:#ffffff26;justify-content:center;align-items:center;width:34px;height:34px;margin-bottom:14px;display:inline-flex}.stat-label{letter-spacing:.05em;color:#ffffffb3;margin:0 0 6px;font-size:11px;font-weight:700}.stat-value{color:#fff;margin:0 0 8px;font-size:26px;font-weight:800}.stat-delta{align-items:center;gap:4px;margin:0;font-size:12px;font-weight:600;display:flex}.stat-delta-up{color:var(--success)}.stat-delta-warn{color:var(--warning)}.mid-row{grid-template-columns:1fr 340px;gap:16px;display:grid}.mid-row-equal{grid-template-columns:.8fr 1.2fr}.scan-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px}.scan-card-idle{flex-direction:column;justify-content:center;display:flex}.scan-card-compact{align-items:center;padding:20px 24px;display:flex}.scan-card-compact-inner{justify-content:space-between;align-items:center;width:100%;display:flex}.scan-card-compact-left{align-items:center;gap:12px;display:flex}.scan-status-icon{border-radius:var(--radius-md);width:36px;height:36px;color:var(--success);background:#2fa8771f;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.scan-compact-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:700}.pill-success{letter-spacing:.03em;color:var(--success);border-radius:var(--radius-full);background:#2fa8771f;flex-shrink:0;padding:5px 12px;font-size:11.5px;font-weight:700}.scan-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.scan-header h2{color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.spin-icon{color:var(--accent-primary-light);animation:1.4s linear infinite dash-spin}@keyframes dash-spin{to{transform:rotate(360deg)}}.pill-deep{color:var(--accent-primary-light);border-radius:var(--radius-full);background:#6366f11f;padding:4px 10px;font-size:11.5px;font-weight:700}.scan-copy{color:var(--text-secondary);max-width:560px;margin:0 0 20px;font-size:13.5px;line-height:1.55}.scan-progress-row{color:var(--text-primary);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.progress-track{border-radius:var(--radius-full);background:var(--bg-tertiary);width:100%;height:7px;margin-bottom:12px;overflow:hidden}.progress-fill{border-radius:var(--radius-full);background:var(--accent-gradient);height:100%;transition:width .5s}.scan-footer-row{color:var(--text-tertiary);justify-content:space-between;align-items:center;gap:12px;font-size:12.5px;display:flex}.scan-footer-row span{align-items:center;gap:5px;display:inline-flex}.cta-card{background:var(--accent-gradient);border-radius:var(--radius-lg);color:#fff;flex-direction:column;padding:22px;display:flex}.cta-card-compact{flex-direction:row;justify-content:space-between;align-items:center;gap:20px;padding:18px 24px}.cta-card-text{min-width:0}.cta-card h2{margin:0 0 10px;font-size:18px;font-weight:700}.cta-card-compact h2{margin:0 0 4px;font-size:16px}.cta-card p{color:#ffffffd9;margin:0 0 20px;font-size:13px;line-height:1.55}.cta-card-compact p{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12.5px;overflow:hidden}.cta-btn{color:#6355d6;border-radius:var(--radius-md);cursor:pointer;transition:transform var(--transition-fast);font-size:13.5px;font-weight:700;font-family:var(--font-family);white-space:nowrap;background:#fff;border:none;flex-shrink:0;justify-content:center;align-items:center;gap:8px;margin-top:auto;padding:11px 16px;display:inline-flex}.cta-card-compact .cta-btn{margin-top:0}.cta-btn:hover{transform:translateY(-1px)}.system-info{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}.system-info-title{color:var(--text-primary);align-items:center;gap:8px;margin:0 0 20px;font-size:18px;font-weight:700;display:flex}.sysinfo-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.sysinfo-col-heading{letter-spacing:.06em;color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);margin:0 0 12px;padding-bottom:10px;font-size:11px;font-weight:700}.sysinfo-item{background:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:10px;padding:12px 14px}.sysinfo-item-label{letter-spacing:.03em;color:var(--text-tertiary);align-items:center;gap:6px;margin:0 0 6px;font-size:11px;font-weight:700;display:flex}.sysinfo-item-value{color:var(--text-primary);word-break:break-word;margin:0;font-size:13.5px;font-weight:600}.sysinfo-item-tip{background:#6366f114;border:1px solid #6366f133}.tip-label{color:var(--accent-primary-light)}.tip-body{color:var(--text-secondary);margin:0;font-size:12.5px;line-height:1.5}.kpi-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.kpi-card{padding:var(--space-lg);align-items:center;gap:var(--space-md);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex}.kpi-icon{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.kpi-info{flex-direction:column;display:flex}.kpi-value{letter-spacing:-.02em;color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2}.kpi-label{color:var(--text-secondary);margin-top:2px;font-size:.8125rem}.section-title{margin-bottom:var(--space-md);color:var(--text-primary);font-size:1rem;font-weight:600}.categories-grid{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.category-card{padding:var(--space-md);align-items:center;gap:var(--space-md);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex}.category-card.other{grid-column:span 2}.category-icon{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--accent-primary-light);flex-shrink:0;justify-content:center;align-items:center;display:flex}.category-info{flex-direction:column;display:flex}.category-name{color:var(--text-primary);font-size:.8125rem;font-weight:600}.category-count{color:var(--text-tertiary);font-size:.75rem}.insights-refresh-btn{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:600;display:flex}.insights-refresh-btn:hover:not(:disabled){background:var(--bg-glass-hover);color:var(--text-primary)}.insights-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.insights-pills{flex-wrap:wrap;gap:8px;display:flex}.insights-pill{border:1px solid var(--border-default);border-radius:var(--radius-full);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:600;display:flex}.insights-pill:hover{background:var(--bg-glass-hover);color:var(--text-primary)}.insights-pill.active{border-color:var(--accent-primary-light);color:var(--accent-primary-light);background:#6366f11f}.insights-feed{gap:var(--space-md);flex-direction:column;display:flex}.insight-card{gap:var(--space-md);padding:var(--space-lg);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:flex-start;display:flex}.insight-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.insight-icon.severity-warning{color:var(--warning);background:#e08a2b24}.insight-icon.severity-danger{color:var(--error);background:#e5484d24}.insight-icon.severity-success{color:var(--success);background:#2fa87724}.insight-icon.severity-info{color:var(--accent-primary-light);background:#6366f124}.insight-body{flex:1;min-width:0}.insight-head{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:4px;display:flex}.insight-title{color:var(--text-primary);font-size:.9375rem;font-weight:600}.badge-warning{color:var(--warning);background:#e08a2b24}.badge-danger{color:var(--error);background:#e5484d24}.insight-desc{color:var(--text-secondary);margin:0 0 8px;font-size:.8125rem;line-height:1.5}.insight-meta{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:10px;font-size:.75rem;display:flex}.insight-meta-dot{color:var(--text-muted)}.insight-ask-btn{border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--accent-primary-light);cursor:pointer;transition:background var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:600;display:flex}.insight-ask-btn:hover{background:#6366f11a}.schema-loading{justify-content:center;align-items:center;gap:var(--space-md);color:var(--text-secondary);flex-direction:column;flex:1;display:flex}.chat-container{flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-empty{padding:var(--space-2xl);flex:1;justify-content:center;align-items:center;display:flex}.chat-empty-inner{text-align:center;max-width:520px}.chat-empty-icon{width:80px;height:80px;margin:0 auto var(--space-lg);background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);color:var(--accent-primary-light);justify-content:center;align-items:center;display:flex}.chat-empty h2{margin-bottom:var(--space-sm);color:var(--text-primary)}.chat-empty p{color:var(--text-secondary);margin-bottom:var(--space-xl);font-size:.9375rem}.chat-suggestions{gap:var(--space-sm);flex-wrap:wrap;justify-content:center;display:flex}.suggestion-chip{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast);font-size:.8125rem}.suggestion-chip:hover{background:var(--bg-glass-hover);border-color:var(--accent-primary);color:var(--accent-primary-light);transform:translateY(-1px)}.chat-messages{padding:var(--space-lg) var(--space-xl);gap:var(--space-md);flex-direction:column;display:flex}.chat-message{display:flex}.chat-message.user{justify-content:flex-end}.chat-message.assistant{justify-content:flex-start}.msg-bubble{max-width:75%;padding:var(--space-md);border-radius:var(--radius-lg);font-size:.9375rem;line-height:1.55}.user-bubble{background:var(--accent-gradient);color:#fff;border-bottom-right-radius:var(--radius-sm)}.assistant-bubble{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-primary);border-bottom-left-radius:var(--radius-sm)}.error-bubble{background:#ef44440f;border-color:#ef44444d}.msg-error-icon{color:var(--error);margin-bottom:var(--space-xs)}.msg-text{margin:0 0 .3em;line-height:1.6}.msg-text:last-child{margin-bottom:0}.msg-formatted{line-height:1.6}.msg-formatted strong{color:var(--text-primary);font-weight:600}.msg-formatted em{color:var(--text-secondary);font-style:italic}.msg-list{margin:.4em 0;padding-left:1.4em;list-style:outside}.msg-list li{margin-bottom:.25em;line-height:1.5}.msg-list li:last-child{margin-bottom:0}.msg-sql{margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:#14161f0f;overflow-x:auto}.dashboard.dark .msg-sql{background:#0000004d}.msg-sql code{color:var(--accent-primary-light);white-space:pre;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8125rem}.msg-table-wrapper{margin-top:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.msg-table-header{padding:var(--space-sm) var(--space-md);background:var(--bg-tertiary);justify-content:space-between;align-items:center;display:flex}.msg-table-meta{color:var(--text-secondary);align-items:center;gap:6px;font-size:.75rem;display:flex}.meta-divider{color:var(--text-muted)}.btn-xs{min-width:unset;padding:4px}.msg-table-scroll{overflow-x:auto}.table-truncated{padding:var(--space-sm) var(--space-md);text-align:center;color:var(--text-tertiary);border-top:1px solid var(--border-subtle);background:var(--bg-tertiary);font-size:.75rem}.data-table{border-collapse:collapse;width:100%;font-size:.8125rem}.data-table th{text-align:left;padding:var(--space-sm) var(--space-md);background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-bottom:1px solid var(--border-subtle);font-size:.75rem;font-weight:600}.data-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:250px;overflow:hidden}.data-table tbody tr:hover{background:var(--bg-glass-hover)}.data-table tbody tr:last-child td{border-bottom:none}.typing-indicator{align-items:center;gap:5px;padding:4px 0;display:flex}.typing-indicator span{background:var(--text-muted);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite typingBounce}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.chat-input-area{padding:var(--space-md) var(--space-xl) var(--space-lg);border-top:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0;transition:background .25s,border-color .25s}.chat-input-wrapper{gap:var(--space-sm);align-items:center;display:flex}.input{background:var(--bg-tertiary);border:1px solid var(--border-default);color:var(--text-primary);font-family:var(--font-family);transition:border-color var(--transition-fast);outline:none}.input:focus{border-color:var(--accent-primary)}.chat-input{border-radius:var(--radius-lg);flex:1;padding:14px 18px;font-size:.9375rem}.btn{font-family:var(--font-family);cursor:pointer;border:none}.btn-primary{background:var(--accent-gradient);color:#fff;font-weight:600}.chat-send-btn{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:inline-flex}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-input-hint{text-align:center;color:var(--text-muted);margin-top:var(--space-sm);font-size:.6875rem}.history-search-bar{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:12px;margin-bottom:24px;padding:10px 16px;display:flex}.history-search-input-wrapper{background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid #0000;flex:1;align-items:center;gap:12px;padding:8px 12px;transition:all .2s;display:flex}.history-search-input-wrapper:focus-within{background:var(--bg-glass-hover);border-color:var(--accent-primary-light);box-shadow:0 0 0 3px #6366f11f}.history-search-icon{color:var(--text-muted);opacity:.7}.history-search-input{color:var(--text-primary);font-family:var(--font-family);background:0 0;border:none;flex:1;font-size:.9375rem;outline:none!important}.history-search-btn{border-radius:var(--radius-md);height:42px;padding:10px 20px}.history-clear-btn{color:var(--text-muted);height:42px;padding:0 12px;font-size:.8125rem}.history-clear-btn:hover{color:var(--text-primary);background:var(--bg-glass-hover)}.history-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.history-card{cursor:default;border:1px solid var(--border-subtle);background:var(--bg-card);flex-direction:column;padding:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.history-card:hover{border-color:var(--accent-primary-light);background:var(--bg-glass-hover);box-shadow:var(--shadow-lg), 0 0 0 1px #6366f133;transform:translateY(-4px)}.history-card-body{cursor:pointer;flex-direction:column;flex:1;gap:10px;padding:20px 20px 14px;display:flex}.history-card-top{justify-content:space-between;align-items:center;display:flex}.history-card-icon-wrap{border-radius:var(--radius-md);width:32px;height:32px;color:var(--accent-primary-light);background:#6366f11f;flex-shrink:0;justify-content:center;align-items:center;display:flex}.history-card-time{color:var(--text-tertiary);font-size:.75rem;font-weight:500}.history-card-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.95rem;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.history-card-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:5px;font-size:.75rem;display:flex}.history-meta-dot{color:var(--text-muted);opacity:.5}.history-card-actions{border-top:1px solid var(--border-subtle);align-items:center;gap:0;display:flex}.history-btn-view{color:var(--accent-primary-light);font-family:var(--font-family);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.8125rem;font-weight:500;transition:background .15s,color .15s;display:flex}.history-btn-view:hover{color:var(--accent-primary);background:#6366f114}.history-btn-delete{border:none;border-left:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:12px 16px;transition:background .15s,color .15s;display:flex}.history-btn-delete:hover{color:var(--error);background:#ef444414}@media (width<=1200px){.stat-cards{grid-template-columns:repeat(2,1fr)}.mid-row,.sysinfo-grid{grid-template-columns:1fr}}@media (width<=768px){.sidebar{display:none}.msg-bubble{max-width:90%}.stat-cards{grid-template-columns:1fr}.search-wrap input{width:160px}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.toast{pointer-events:auto;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);min-width:300px;max-width:450px;box-shadow:var(--shadow-lg);align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.toast-icon{flex-shrink:0;margin-top:2px}.toast-content{flex:1}.toast-title{color:var(--text-primary);margin-bottom:2px;font-size:.9375rem;font-weight:600}.toast-message{color:var(--text-secondary);font-size:.8125rem;line-height:1.4}.toast-close{opacity:.5;cursor:pointer;color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;transition:opacity .2s}.toast-close:hover{opacity:1}.toast-error{border-left:4px solid var(--error)}.toast-error .toast-icon{color:var(--error)}.toast-warning{border-left:4px solid var(--warning)}.toast-warning .toast-icon{color:var(--warning)}.toast-success{border-left:4px solid var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-info{border-left:4px solid var(--info)}.toast-info .toast-icon{color:var(--info)}.animate-spin{animation:1s linear infinite dash-spin}.chart-card{margin-top:20px;padding:24px}.history-card-top-right{align-items:center;gap:8px;margin-left:auto;display:flex}.history-card-export-btn{border:1px solid var(--border-subtle);background:var(--bg-elevated,#fff);width:26px;height:26px;color:var(--text-secondary,#666);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.history-card-export-btn:hover{background:var(--bg-muted,#f1f3f8);color:var(--text-primary,#333)}.finance-charts-section{margin-top:24px}.finance-charts-header-row{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.finance-charts-title{margin-bottom:0}.finance-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px;display:grid}.finance-charts-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.finance-chart-card{flex-direction:column;min-height:240px;margin-top:0;padding:18px;display:flex}.finance-chart-card-full{grid-column:1/-1;min-height:300px}.finance-kpi-value{color:var(--text-primary);margin:6px 0 8px;font-size:24px;font-weight:800}.finance-chart-empty{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 0;display:flex}.finance-stat-card{gap:6px;min-height:auto;padding:16px 18px}.finance-refresh-group{justify-content:flex-end;align-items:center;gap:10px;display:inline-flex}.finance-last-updated{color:var(--text-muted);white-space:nowrap;font-size:.72rem}.kpi-detail-modal{width:min(900px,100vw - 32px)}.kpi-detail-body{max-height:min(65vh,620px);overflow:auto}.kpi-detail-table-wrap{width:100%;overflow-x:auto}.kpi-detail-table{border-collapse:collapse;width:100%;font-size:.78rem}.kpi-detail-table th,.kpi-detail-table td{border-bottom:1px solid var(--border-subtle);text-align:left;white-space:nowrap;padding:9px 10px}.kpi-detail-table th{background:var(--bg-card);color:var(--text-secondary);font-weight:700;position:sticky;top:0}.kpi-detail-table td{color:var(--text-primary)}.kpi-detail-note{color:var(--text-muted);margin:10px 0 0;font-size:.72rem}.insight-trend-indicator{border-radius:var(--radius-full);align-items:center;gap:3px;margin-left:2px;padding:2px 6px;font-size:.68rem;font-weight:700;display:inline-flex}.insight-trend-indicator.up{color:var(--success);background:#2fa8771f}.insight-trend-indicator.down{color:var(--error);background:#e5484d1f}.insight-trend-indicator.flat{color:var(--text-secondary);background:var(--bg-tertiary)}@media (width<=700px){.finance-refresh-group{justify-content:space-between;width:100%}.finance-last-updated{text-overflow:ellipsis;overflow:hidden}}.finance-stat-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);font-size:11.5px;font-weight:700}.finance-stat-value{color:var(--text-primary);margin:4px 0 0;font-size:26px;font-weight:800}.finance-stat-loading{color:var(--text-tertiary);align-items:center;padding:6px 0 2px;display:flex}.finance-stat-empty{justify-content:space-between;align-items:center;gap:10px;margin-top:4px;display:flex}.finance-stat-empty-text{color:var(--text-tertiary);margin:0;font-size:12.5px}.finance-card-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.finance-sample-wrap{flex-shrink:0;align-items:center;gap:4px;display:flex}.finance-sample-badge{border:1px solid var(--warning);color:var(--warning);background:color-mix(in srgb, var(--warning) 12%, transparent);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:9.5px;font-weight:700}.finance-sample-retry{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.finance-sample-retry:hover{background:var(--bg-glass-hover);color:var(--accent-primary-light)}.btn-sm{padding:6px 10px;font-size:12px}@media (width<=900px){.cta-card-compact{flex-direction:column;align-items:flex-start}.cta-card-compact p{white-space:normal}.cta-btn{width:100%}.scan-card-compact-inner{flex-wrap:wrap;gap:10px}}@media (width<=1200px){.finance-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.finance-charts-grid,.finance-stats-grid{grid-template-columns:1fr}.finance-charts-header-row{flex-direction:column;align-items:flex-start}}.finance-filter-container{box-sizing:border-box;width:100%;margin:7px 0 8px;position:relative}.finance-filter-toggle{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);min-width:82px;height:30px;color:var(--text-primary);font-family:var(--font-family);cursor:pointer;box-shadow:var(--shadow-sm);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);outline:none;justify-content:space-between;align-items:center;gap:6px;padding:5px 9px;font-size:12px;font-weight:600;line-height:18px;display:inline-flex}.finance-filter-toggle:hover,.finance-filter-toggle.is-open{border-color:var(--accent-primary);background:var(--bg-glass-hover);color:var(--text-primary)}.finance-filter-toggle-chevron{color:var(--text-tertiary);transition:transform var(--transition-fast), color var(--transition-fast);flex-shrink:0}.finance-filter-toggle-chevron.rotate{color:var(--accent-primary-light);transform:rotate(180deg)}.finance-card-filters{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);box-sizing:border-box;align-items:flex-end;gap:8px;width:100%;margin:6px 0 0;padding:8px;display:flex}.finance-card-filter-heading{display:none}.finance-filter-field,.finance-card-filter-field{min-width:0;font-family:var(--font-family);color:var(--text-tertiary);flex-direction:column;flex:1 1 0;gap:3px;margin:0;font-size:10px;font-weight:600;line-height:1.1;display:flex}.finance-filter-field>span,.finance-card-filter-field>span{font-family:var(--font-family);color:var(--text-tertiary);margin:0;font-size:10px;font-weight:600;line-height:1.1;display:block}.finance-filter-label{color:var(--text-tertiary);margin:0;font-size:10px;font-weight:600;line-height:1.1;display:block}.finance-filter-input,.party-filter-trigger{box-sizing:border-box;border:1px solid var(--border-subtle);background:var(--bg-primary);width:100%;height:32px;min-height:32px;color:var(--text-primary);font-family:var(--font-family);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);border-radius:7px;outline:none;padding:5px 9px;font-size:11.5px;line-height:20px}.finance-filter-input::-webkit-calendar-picker-indicator{opacity:1;cursor:pointer}.dashboard.dark .finance-filter-input::-webkit-calendar-picker-indicator{filter:brightness(0)invert();opacity:1}.finance-filter-input:focus,.party-filter-trigger:focus,.party-filter-trigger.is-open{border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f11a}.party-filter-field{flex:1.7 1 0;min-width:0;position:relative}.party-filter-trigger{cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:6px;display:flex}.party-filter-trigger-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.party-filter-chevron{color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.party-filter-chevron.rotate{transform:rotate(180deg)}.party-filter-menu{z-index:1000;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);min-width:230px;box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:hidden}.party-filter-search-wrap{box-sizing:border-box;border:1px solid var(--border-subtle);background:var(--bg-primary);height:30px;color:var(--text-tertiary);border-radius:7px;align-items:center;gap:6px;margin:7px;padding:5px 8px;display:flex}.party-filter-search{min-width:0;color:var(--text-primary);font-family:var(--font-family);background:0 0;border:0;outline:0;flex:1;font-size:11.5px}.party-filter-options-scroll{max-height:240px;overflow-y:auto}.party-filter-option{width:100%;min-height:30px;color:var(--text-secondary);font-family:var(--font-family);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 9px;font-size:11.5px;display:flex}.party-filter-option:hover,.party-filter-option.selected{background:var(--bg-glass-hover);color:var(--text-primary)}.party-filter-checkbox{border:1px solid var(--border-default);background:var(--bg-card);color:#fff;box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;width:15px;min-width:15px;height:15px;display:inline-flex}.party-filter-checkbox.checked{border-color:var(--accent-primary);background:var(--accent-primary)}.party-filter-selected-summary{border-bottom:1px solid var(--border-subtle);color:var(--text-muted);padding:6px 10px;font-size:10.5px;font-weight:600}.party-filter-option-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.party-filter-status,.party-filter-footer{color:var(--text-muted);padding:7px 9px;font-size:10.5px}.party-filter-footer{border-top:1px solid var(--border-subtle)}.finance-card-filter-actions{flex:none;align-items:center;gap:5px;padding-bottom:0;display:flex}.finance-card-filter-actions .btn-sm{border-radius:7px;height:32px;min-height:32px;padding:5px 9px;font-size:11.5px}@media (width<=900px){.finance-card-filters{flex-wrap:wrap;align-items:flex-end}.party-filter-field{flex:100%}.finance-card-filter-field{flex:calc(50% - 4px)}}@media (width<=520px){.finance-card-filters{gap:6px;padding:7px}.finance-filter-field,.party-filter-field{flex-basis:100%}.finance-card-filter-actions{width:100%}.finance-card-filter-actions .btn-sm{flex:1}}.dashboard .finance-filter-input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:var(--accent-primary)}.dashboard.dark .finance-filter-input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.finance-filter-input[type=date]{appearance:auto}.dashboard.dark .finance-filter-input[type=date]::-webkit-datetime-edit{color:var(--text-primary)}.dashboard.dark .finance-filter-input[type=date]::-webkit-datetime-edit-fields-wrapper{color:var(--text-primary)}.dashboard.dark .finance-filter-input[type=date]::-webkit-datetime-edit-text{color:var(--text-primary)}.dashboard.dark .finance-filter-input[type=date]::-webkit-datetime-edit-month-field{color:var(--text-primary)}.dashboard.dark .finance-filter-input[type=date]::-webkit-datetime-edit-day-field{color:var(--text-primary)}.dashboard.dark .finance-filter-input[type=date]::-webkit-datetime-edit-year-field{color:var(--text-primary)}.dashboard .finance-filter-input[type=date]::-webkit-datetime-edit-month-field:focus{background:var(--accent-primary);color:#fff;border-radius:3px}.dashboard .finance-filter-input[type=date]::-webkit-datetime-edit-day-field:focus{background:var(--accent-primary);color:#fff;border-radius:3px}.dashboard .finance-filter-input[type=date]::-webkit-datetime-edit-year-field:focus{background:var(--accent-primary);color:#fff;border-radius:3px}.dashboard.dark .finance-filter-input[type=date]::-webkit-calendar-picker-indicator{filter:invert();opacity:.9}.dashboard:not(.dark) .finance-filter-input[type=date]::-webkit-calendar-picker-indicator{filter:none;opacity:.78}.aichat{--ac-accent:#2908ac;--ac-accent-strong:#8b6bff;--ac-accent-soft:#7c5cff29;--ac-green:#22c55e;--ac-amber:#f59e0b;--ac-red:#ef4444;height:100%;min-height:0;color:var(--ac-text-primary);flex-direction:column;font-family:inherit;display:flex}.aichat[data-theme=dark]{--ac-bg-page:#0a0a0f;--ac-bg-elevated:#14141e;--ac-bg-input:#12121b;--ac-border-subtle:#ffffff14;--ac-border-soft:#ffffff1f;--ac-text-primary:#f5f5f7;--ac-text-secondary:#a1a1ac;--ac-text-muted:#6b6b78;--ac-bubble-assistant:#14141e}.aichat[data-theme=light]{--ac-bg-page:#f4f4f6;--ac-bg-elevated:#f6f5fb;--ac-bg-input:#fff;--ac-border-subtle:#0f0f1914;--ac-border-soft:#0f0f191f;--ac-text-primary:#17171f;--ac-text-secondary:#6b6b78;--ac-text-muted:#9494a0;--ac-bubble-assistant:#fff}.aichat button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.aichat input{color:inherit;background:0 0;border:none;outline:none;font-family:inherit}.aichat-new-chat-btn{color:var(--aichat-text,#1a1d29);border:1px solid var(--aichat-border,#121212);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.aichat-new-chat-btn:hover:not(:disabled){color:#4c6ef5;background:#4c6ef514;border-color:#4c6ef5}.aichat-new-chat-btn:disabled{opacity:.5;cursor:not-allowed}.aichat-topbar{border-bottom:1px solid var(--ac-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 28px;display:flex}.aichat-crumb{font-size:14px;font-weight:600}.aichat-topbar-actions{align-items:center;gap:12px;display:flex}.aichat-search{border:1px solid var(--ac-border-soft);width:240px;color:var(--ac-text-muted);border-radius:8px;align-items:center;gap:8px;padding:8px 12px;display:flex}.aichat-search input{flex:1;font-size:13px}.aichat-search input::placeholder{color:var(--ac-text-muted)}.aichat-icon-btn{width:34px;height:34px;color:var(--ac-text-secondary);border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative}.aichat-icon-btn:hover{background:var(--ac-bg-elevated);color:var(--ac-text-primary)}.aichat-icon-dot{background:var(--ac-accent-strong);border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:8px}.aichat-avatar{background:var(--ac-bg-elevated);border:1px solid var(--ac-border-subtle);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:12.5px;font-weight:600;display:flex}.aichat-subheader{border-bottom:1px solid var(--ac-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 28px;display:flex}.aichat-subheader-title{align-items:center;gap:12px;display:flex}.aichat-subheader-icon{background:var(--ac-accent-soft);width:38px;height:38px;color:var(--ac-accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.aichat-subheader-title h1{margin:0;font-size:16px;font-weight:700}.aichat-subheader-title p{color:var(--ac-text-secondary);margin:2px 0 0;font-size:12.5px}.aichat-subheader-actions{align-items:center;gap:10px;display:flex}.aichat-download-wrap{position:relative}.aichat-download-menu{z-index:20;border:1px solid var(--ac-border-soft);background:var(--ac-bg-elevated);border-radius:10px;flex-direction:column;min-width:200px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #00000047}.aichat-download-menu button{color:var(--ac-text-primary);text-align:left;white-space:nowrap;border-radius:7px;align-items:center;gap:8px;padding:9px 10px;font-size:12.5px;font-weight:500;display:flex}.aichat-download-menu button:hover{background:var(--ac-accent-soft);color:var(--ac-accent)}.aichat-download-menu button:disabled{opacity:.45;cursor:not-allowed;color:var(--ac-text-primary);background:0 0}.aichat-body{flex:1;min-height:0;padding:32px 28px 12px;overflow-y:auto}.aichat-hero{text-align:center;flex-direction:column;align-items:center;max-width:620px;margin:24px auto 44px;display:flex}.aichat-hero-icon{background:var(--ac-accent-soft);width:68px;height:68px;color:var(--ac-accent);border-radius:18px;justify-content:center;align-items:center;margin-bottom:22px;display:flex}.aichat-hero h2{margin:0;font-size:27px;font-weight:700}.aichat-suggestion-chips{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.aichat-suggestion-chip{border:1px solid var(--ac-border-soft);background:var(--ac-bg-elevated);color:var(--ac-text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:8px 13px;font-size:12.5px;transition:border-color .15s,background .15s,color .15s;display:flex}.aichat-suggestion-chip:hover{border-color:var(--ac-accent);background:var(--ac-accent-soft);color:var(--ac-accent)}.aichat-messages{flex-direction:column;gap:20px;max-width:760px;margin:0 auto;display:flex}.aichat-message{align-items:flex-start;gap:12px;display:flex}.aichat-message--user{flex-direction:row-reverse}.aichat-message-avatar{background:var(--ac-accent-soft);width:32px;height:32px;color:var(--ac-accent);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.aichat-message--user .aichat-message-avatar{background:var(--ac-bg-elevated);color:var(--ac-text-secondary)}.aichat-message-body{flex-direction:column;gap:6px;max-width:82%;display:flex}.aichat-message-actions{align-items:center;gap:4px;display:flex}.aichat-msg-action-btn{width:26px;height:26px;color:var(--ac-text-muted)}.aichat-msg-action-btn:hover{color:var(--ac-text-primary)}.aichat-message--user .aichat-message-body{align-items:flex-end}.aichat-bubble{border:1px solid var(--ac-border-subtle);background:var(--ac-bubble-assistant);border-radius:14px;padding:14px 16px;font-size:14px;line-height:1.6}.aichat-bubble--user{background:var(--ac-accent);color:#fff;border-color:#0000}.aichat-bubble.is-error{border-color:var(--ac-red);color:var(--ac-red);align-items:flex-start;gap:8px;display:flex}.aichat-error-icon{flex-shrink:0;margin-top:2px}.aichat-typing{align-items:center;gap:4px;padding:16px;display:flex}.aichat-typing span{background:var(--ac-text-muted);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite aichat-bounce}.aichat-typing span:nth-child(2){animation-delay:.15s}.aichat-typing span:nth-child(3){animation-delay:.3s}@keyframes aichat-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.aichat-spin{animation:.9s linear infinite aichat-spin}@keyframes aichat-spin{to{transform:rotate(360deg)}}.aichat-formatted{flex-direction:column;gap:6px;display:flex}.aichat-text{margin:0}.aichat-list{flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.aichat-inline-code{background:var(--ac-bg-elevated);border:1px solid var(--ac-border-subtle);border-radius:4px;padding:1px 5px;font-family:SFMono-Regular,Consolas,monospace;font-size:12.5px}.aichat-sql{background:var(--ac-bg-page);border:1px solid var(--ac-border-subtle);border-radius:8px;margin-top:10px;padding:10px 12px;overflow-x:auto}.aichat-sql code{color:var(--ac-accent-strong);white-space:pre;font-family:SFMono-Regular,Consolas,monospace;font-size:12.5px}.aichat-table-wrapper{border:1px solid var(--ac-border-subtle);border-radius:10px;margin-top:12px;overflow:hidden}.aichat-table-header{background:var(--ac-bg-elevated);border-bottom:1px solid var(--ac-border-subtle);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.aichat-table-meta{color:var(--ac-text-muted);align-items:center;gap:6px;font-size:11.5px;display:flex}.aichat-meta-divider{color:var(--ac-text-muted)}.aichat-expand-btn{width:24px;height:24px;color:var(--ac-text-secondary);border-radius:6px;justify-content:center;align-items:center;display:flex}.aichat-expand-btn:hover{background:var(--ac-border-subtle)}.aichat-table-scroll{max-height:320px;overflow:auto}.aichat-data-table{border-collapse:collapse;width:100%;font-size:12.5px}.aichat-data-table th{text-align:left;background:var(--ac-bg-elevated);color:var(--ac-text-secondary);white-space:nowrap;border-bottom:1px solid var(--ac-border-subtle);padding:8px 12px;font-weight:600;position:sticky;top:0}.aichat-data-table td{white-space:nowrap;border-bottom:1px solid var(--ac-border-subtle);color:var(--ac-text-primary);padding:8px 12px}.aichat-table-truncated{color:var(--ac-text-muted);text-align:center;border-top:1px solid var(--ac-border-subtle);padding:8px 12px;font-size:11.5px}.aichat-composer{flex-shrink:0;width:100%;max-width:800px;margin:0 auto;padding:4px 28px 12px}.aichat-input-row{border:1px solid var(--ac-border-soft);background:var(--ac-bg-input);border-radius:14px;align-items:center;gap:10px;padding:10px 12px 10px 18px;display:flex}.aichat-input-row:focus-within{border-color:var(--ac-accent)}.aichat-input{flex:1;padding:6px 0;font-size:14px}.aichat-input::placeholder{color:var(--ac-text-muted)}.aichat-input:disabled{opacity:.6}.aichat-input-controls{align-items:center;gap:10px;display:flex}.aichat-kbd{border:1px solid var(--ac-border-soft);letter-spacing:.02em;color:var(--ac-text-muted);border-radius:6px;padding:4px 8px;font-family:inherit;font-size:10.5px;font-weight:600}.aichat-send-btn{background:var(--ac-accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,opacity .15s;display:flex}.aichat-send-btn:hover:not(:disabled){background:var(--ac-accent-strong)}.aichat-send-btn:disabled{opacity:.5;cursor:not-allowed}.aichat-send-btn.is-stop{background:var(--ac-text-primary);color:var(--ac-bg-page)}.aichat-send-btn.is-stop:hover{opacity:.85}.aichat-composer-meta{flex-wrap:wrap;align-items:center;gap:14px;padding:8px 6px 0;display:flex}.aichat-composer-meta span{letter-spacing:.03em;color:var(--ac-text-muted);align-items:center;gap:5px;font-size:9.5px;font-weight:600;display:flex}.aichat-session-tag{color:var(--ac-accent)!important}@media (width<=720px){.aichat-search{display:none}.aichat-subheader{flex-wrap:wrap;gap:12px}.aichat-download-menu{left:0;right:auto}}.aichat-sql{flex-direction:column;gap:8px;display:flex}.aichat-sql-code{overflow-x:auto}.aichat-sql-actions{gap:6px;display:flex}.aichat-sql-action-btn{border:1px solid var(--border-color,#d9dde3);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:5px;padding:4px 8px;font-size:11px;display:inline-flex}.aichat-sql-action-btn:disabled{opacity:.6;cursor:not-allowed}.aichat-processing-status{opacity:.85;align-items:center;gap:6px;margin-left:8px;font-size:12px;font-weight:500;animation:1.8s ease-in-out infinite aichat-status-fade;display:inline-flex}.aichat-processing-status:after{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite aichat-status-dots;display:inline-block;box-shadow:7px 0,14px 0}@keyframes aichat-status-fade{0%,to{opacity:.45;transform:translateY(0)}50%{opacity:1;transform:translateY(-1px)}}@keyframes aichat-status-dots{0%,20%{opacity:.25}50%{opacity:1}to{opacity:.25}}.aichat-typing{transition:all .25s}.aichat-typing>span{animation:1.4s ease-in-out infinite aichat-typing-dot}.aichat-typing>span:first-child{animation-delay:0s}.aichat-typing>span:nth-child(2){animation-delay:.15s}.aichat-typing>span:nth-child(3){animation-delay:.3s}@keyframes aichat-typing-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.profile-page{background:var(--bg-primary);min-width:0;min-height:0;color:var(--text-primary);font-family:var(--font-family);flex:1;padding:28px 32px 40px;overflow-y:auto}.profile-page-header{margin-bottom:24px}.profile-page-header h1{color:var(--text-primary);margin:10px 0 5px;font-size:1.55rem;font-weight:700}.profile-page-header p{color:var(--text-secondary);margin:0;font-size:.86rem}.profile-back-btn{color:var(--text-secondary);font-family:var(--font-family);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:.78rem;font-weight:600;display:inline-flex}.profile-back-btn:hover{color:var(--accent-primary-light)}.profile-grid{grid-template-columns:minmax(220px,.72fr) minmax(0,1.8fr);gap:16px;display:grid}.profile-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-sm);padding:20px}.profile-summary-card{text-align:center;flex-direction:column;align-items:center;min-height:300px;display:flex}.profile-avatar-large{border-radius:var(--radius-full);background:var(--accent-gradient);color:#fff;justify-content:center;align-items:center;width:72px;height:72px;font-size:1.35rem;font-weight:700;display:flex}.profile-summary-card h2{color:var(--text-primary);margin:13px 0 4px;font-size:1.05rem}.profile-role{color:var(--text-tertiary);font-size:.76rem;font-weight:600}.profile-summary-divider{background:var(--border-subtle);width:100%;height:1px;margin:20px 0 10px}.profile-summary-row{width:100%;color:var(--text-secondary);text-align:left;align-items:center;gap:8px;padding:8px 0;font-size:.78rem;display:flex}.profile-summary-row svg{color:var(--text-tertiary);flex:none}.profile-summary-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.profile-section-heading{align-items:center;gap:10px;margin-bottom:18px;display:flex}.profile-section-icon{border-radius:var(--radius-md);width:34px;height:34px;color:var(--accent-primary-light);background:#6366f11a;justify-content:center;align-items:center;display:flex}.profile-section-heading h2{color:var(--text-primary);margin:0;font-size:.96rem}.profile-section-heading p{color:var(--text-tertiary);margin:2px 0 0;font-size:.73rem}.profile-fields{flex-direction:column;gap:14px;display:flex}.profile-field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.profile-field{flex-direction:column;gap:6px;min-width:0;display:flex}.profile-field label{color:var(--text-tertiary);font-size:.71rem;font-weight:600}.profile-input,.profile-readonly{box-sizing:border-box;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-primary);width:100%;min-height:38px;color:var(--text-primary);font-family:var(--font-family);font-size:.79rem}.profile-input{outline:none;padding:9px 11px}.profile-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #4c6ef51a}.profile-readonly{color:var(--text-secondary);align-items:center;gap:7px;padding:9px 11px;display:flex}.profile-readonly svg{color:var(--text-tertiary);flex:none}.profile-readonly span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.profile-card-footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;margin-top:18px;padding-top:14px;display:flex}.profile-security-card{margin-top:16px}.profile-password-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.profile-password-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.profile-show-password{color:var(--text-secondary);cursor:pointer;align-items:center;gap:7px;font-size:.75rem;display:inline-flex}.profile-show-password input{accent-color:var(--accent-primary)}.profile-form-error{color:var(--error);margin:12px 0 0;font-size:.76rem}.profile-info-note{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-tertiary);align-items:center;gap:8px;margin-top:14px;padding:11px 13px;font-size:.73rem;display:flex}.profile-info-note svg{color:var(--success)}.profile-loading-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-card);align-items:center;gap:14px;padding:20px;display:flex}.profile-loading-avatar{border-radius:var(--radius-full);background:var(--bg-tertiary);width:64px;height:64px}.profile-loading-lines{flex-direction:column;gap:8px;display:flex}.profile-loading-lines div{border-radius:var(--radius-full);background:var(--bg-tertiary);width:180px;height:10px}.profile-loading-lines div:last-child{width:120px}.profile-alert{border-radius:var(--radius-md);color:var(--error);background:#e5484d14;margin-bottom:14px;padding:10px 12px;font-size:.76rem}@media (width<=900px){.profile-page{padding:22px 20px 32px}.profile-grid{grid-template-columns:1fr}.profile-summary-card{min-height:auto}.profile-password-grid{grid-template-columns:1fr}}@media (width<=620px){.profile-page{padding:18px 14px 28px}.profile-field-row{grid-template-columns:1fr}.profile-password-actions{flex-direction:column;align-items:flex-start}.profile-card{padding:16px}}:root{--settings-bg:#080b14;--settings-card:#111827;--settings-card-hover:#151d2e;--settings-border:#ffffff14;--settings-text:#f8fafc;--settings-text-secondary:#94a3b8;--settings-text-muted:#64748b;--settings-accent:#6366f1;--settings-accent-hover:#4f46e5;--settings-success:#22c55e;--settings-success-bg:#22c55e1f;--settings-warning:#f59e0b;--settings-warning-bg:#f59e0b1f;--settings-error:#ef4444;--settings-error-bg:#ef44441f;--settings-shadow:0 20px 60px #0000004d}[data-theme=light],.theme-light,.app-theme.light{--settings-bg:#f5f7fb;--settings-card:#fff;--settings-card-hover:#f8fafc;--settings-border:#e5e7eb;--settings-text:#111827;--settings-text-secondary:#6b7280;--settings-text-muted:#9ca3af;--settings-accent:#4f46e5;--settings-accent-hover:#4338ca;--settings-success:#059669;--settings-success-bg:#ecfdf5;--settings-warning:#c2410c;--settings-warning-bg:#fff7ed;--settings-error:#b91c1c;--settings-error-bg:#fef2f2;--settings-shadow:0 20px 60px #0f172a1a}.theme-light .settings-page,.app-theme.light .settings-page{background:radial-gradient(circle at 10% 10%, #6366f10d, transparent 30%), radial-gradient(circle at 90% 90%, #8b5cf60a, transparent 30%), var(--settings-bg);color:var(--settings-text)}.theme-dark .settings-page,.app-theme.dark .settings-page{background:radial-gradient(circle at 10% 10%, #6366f114, transparent 30%), radial-gradient(circle at 90% 90%, #8b5cf60f, transparent 30%), var(--settings-bg);color:var(--settings-text)}.settings-page{background:radial-gradient(circle at 10% 10%, #6366f114, transparent 30%), radial-gradient(circle at 90% 90%, #8b5cf60f, transparent 30%), var(--settings-bg);min-height:100vh;color:var(--settings-text);box-sizing:border-box;padding:32px;transition:background .3s,color .3s}.settings-header{max-width:1000px;margin:0 auto 28px}.settings-back-button{color:var(--settings-text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;margin-bottom:24px;padding:0;font-size:14px;transition:color .2s;display:inline-flex}.settings-back-button:hover{color:var(--settings-text)}.settings-header h1{letter-spacing:-.5px;margin:0;font-size:32px;font-weight:700}.settings-header p{color:var(--settings-text-secondary);margin:8px 0 0;font-size:14px}.settings-content{flex-direction:column;gap:20px;max-width:1000px;margin:0 auto;padding-bottom:40px;display:flex}.settings-card{background:var(--settings-card);border:1px solid var(--settings-border);box-sizing:border-box;box-shadow:var(--settings-shadow);border-radius:16px;padding:24px;transition:background .3s,border-color .3s}.settings-card-header{align-items:flex-start;gap:14px;margin-bottom:24px;display:flex}.settings-icon{color:#818cf8;background:#6366f11f;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.settings-icon.security{background:var(--settings-success-bg);color:var(--settings-success)}.appearance-icon{color:#f59e0b;background:#f59e0b1f}.settings-card-header h2{color:var(--settings-text);margin:0;font-size:19px}.settings-card-header p{color:var(--settings-text-secondary);margin:5px 0 0;font-size:14px;line-height:1.5}.email-settings-row{border-top:1px solid var(--settings-border);padding-top:18px}.email-details{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-small-label{color:var(--settings-text-muted);margin-bottom:5px;font-size:12px;display:block}.email-address{color:var(--settings-text);font-size:15px;font-weight:600}.verification-status{border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:600;display:inline-flex}.verification-status.verified{background:var(--settings-success-bg);color:var(--settings-success)}.verification-status.unverified{background:var(--settings-warning-bg);color:var(--settings-warning)}.two-factor-box{border:1px solid var(--settings-border);border-radius:12px;justify-content:space-between;align-items:center;gap:24px;padding:20px;display:flex}.two-factor-description{flex:1}.two-factor-title{align-items:flex-start;gap:12px;display:flex}.two-factor-title>svg{color:var(--settings-success);flex-shrink:0;margin-top:2px}.two-factor-title strong{color:var(--settings-text);font-size:15px}.two-factor-title p{color:var(--settings-text-secondary);margin:6px 0 0;font-size:14px;line-height:1.5}.two-factor-warning,.two-factor-active{border-radius:8px;align-items:flex-start;gap:8px;margin-top:16px;padding:11px 13px;font-size:13px;line-height:1.4;display:flex}.two-factor-warning{background:var(--settings-warning-bg);color:var(--settings-warning)}.two-factor-active{background:var(--settings-success-bg);color:var(--settings-success)}.two-factor-control{flex-direction:column;align-items:center;gap:8px;min-width:90px;display:flex}.toggle-status{font-size:12px;font-weight:600}.toggle-status.enabled{color:var(--settings-success)}.toggle-status.disabled{color:var(--settings-text-muted)}.two-factor-toggle{cursor:pointer;background:0 0;border:none;padding:0}.two-factor-toggle:disabled{cursor:not-allowed;opacity:.45}.toggle-track{box-sizing:border-box;background:#475569;border-radius:999px;align-items:center;width:50px;height:28px;padding:3px;transition:background .2s;display:flex}.two-factor-toggle.enabled .toggle-track{background:#059669}.toggle-thumb{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;transform:translate(0);box-shadow:0 1px 4px #0000004d}.two-factor-toggle.enabled .toggle-thumb{transform:translate(22px)}.two-factor-setup{border:1px solid var(--settings-border);background:var(--settings-card-hover);box-sizing:border-box;border-radius:12px;grid-template-columns:minmax(280px,.9fr) minmax(300px,1.1fr);align-items:start;gap:14px 42px;margin-top:20px;padding:26px;display:grid}.two-factor-setup-header{grid-column:1/-1;padding-bottom:4px}.two-factor-setup-header h3{color:var(--settings-text);margin:0 0 8px;font-size:18px}.two-factor-setup-header p{color:var(--settings-text-secondary);margin:0;font-size:14px;line-height:1.5}.two-factor-qr{grid-area:2/1/span 3;justify-content:center;align-items:flex-start;margin:4px 0 0;display:flex}.two-factor-qr img{box-sizing:border-box;background:#fff;border-radius:12px;width:180px;max-width:100%;height:180px;padding:14px;box-shadow:0 8px 24px #0003}.two-factor-manual-label{color:var(--settings-text);grid-area:2/2;margin:4px 0 0;font-size:14px;font-weight:600;line-height:1.5}.two-factor-manual-key{border:1px solid var(--settings-border);background:var(--settings-card);color:var(--settings-text);word-break:break-all;overflow-wrap:anywhere;box-sizing:border-box;border-radius:9px;grid-area:3/2;min-height:48px;margin:0;padding:14px 16px;font-family:monospace;font-size:14px;line-height:1.5}.two-factor-otp-label{color:var(--settings-text);grid-area:5/1;margin:4px 0 0;font-size:14px;font-weight:600;display:block}.two-factor-otp-input{box-sizing:border-box;border:1px solid var(--settings-border);background:var(--settings-card);width:100%;max-width:280px;color:var(--settings-text);text-align:center;letter-spacing:.3em;border-radius:9px;outline:none;grid-area:6/1;margin:0;padding:12px 14px;font-size:20px;font-weight:600;display:block}.two-factor-otp-input:focus{border-color:var(--settings-accent);box-shadow:0 0 0 3px #6366f11f}.two-factor-otp-input::placeholder{color:var(--settings-text-muted);opacity:1}.two-factor-setup-actions{grid-area:7/1;gap:10px;margin:0 0 2px;display:flex}.two-factor-verify-button,.two-factor-cancel-button{cursor:pointer;border-radius:8px;min-height:40px;padding:10px 16px;font-size:14px;font-weight:600}.two-factor-verify-button{border:1px solid var(--settings-accent);background:var(--settings-accent);color:#fff}.two-factor-verify-button:hover:not(:disabled){background:var(--settings-accent-hover);transform:translateY(-1px)}.two-factor-cancel-button{border:1px solid var(--settings-border);color:var(--settings-text);background:0 0}.two-factor-cancel-button:hover:not(:disabled){background:var(--settings-card)}.two-factor-verify-button:disabled,.two-factor-cancel-button:disabled{cursor:not-allowed;opacity:.55}.two-factor-steps{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.two-factor-step{border:1px solid var(--settings-border);background:var(--settings-card-hover);border-radius:10px;gap:12px;padding:16px;display:flex}.step-number{color:#818cf8;background:#6366f121;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.two-factor-step strong{color:var(--settings-text);font-size:14px}.two-factor-step p{color:var(--settings-text-secondary);margin:5px 0 0;font-size:13px;line-height:1.4}.appearance-options{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.theme-option{border:1px solid var(--settings-border);background:var(--settings-card-hover);color:var(--settings-text);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:13px;padding:16px;transition:border-color .2s,background .2s,transform .2s;display:flex;position:relative}.theme-option:hover{border-color:#6366f173;transform:translateY(-1px)}.theme-option.selected{border-color:var(--settings-accent);background:#6366f11a}.theme-option-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.dark-icon{color:#e2e8f0;background:#1e293b}.light-icon{color:#d97706;background:#fef3c7}.theme-option-content{flex-direction:column;gap:4px;display:flex}.theme-option-content strong{font-size:14px}.theme-option-content span{color:var(--settings-text-secondary);font-size:12px}.theme-check{color:var(--settings-accent);margin-left:auto}.settings-message{border-radius:9px;align-items:center;gap:9px;max-width:1000px;margin:0 auto 20px;padding:12px 15px;font-size:14px;display:flex}.settings-message.success{background:var(--settings-success-bg);color:var(--settings-success);border:1px solid #22c55e40}.settings-message.error{background:var(--settings-error-bg);color:var(--settings-error);border:1px solid #ef444440}.message-close{color:currentColor;cursor:pointer;background:0 0;border:none;align-items:center;margin-left:auto;display:flex}.logout-card{justify-content:space-between;align-items:center;gap:20px;display:flex}.logout-card h2{margin:0;font-size:17px}.logout-card p{color:var(--settings-text-secondary);margin:6px 0 0;font-size:14px}.logout-button{background:var(--settings-error-bg);color:var(--settings-error);cursor:pointer;border:1px solid #ef444459;border-radius:8px;align-items:center;gap:8px;padding:10px 15px;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.logout-button:hover{background:#ef44442e;transform:translateY(-1px)}.logout-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000a6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.logout-modal{background:var(--settings-card);border:1px solid var(--settings-border);text-align:center;border-radius:18px;width:100%;max-width:420px;padding:28px;animation:.2s ease-out modalAppear;box-shadow:0 30px 80px #00000073}@keyframes modalAppear{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.logout-modal-icon{background:var(--settings-error-bg);width:50px;height:50px;color:var(--settings-error);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.logout-modal h2{margin:0;font-size:20px}.logout-modal p{color:var(--settings-text-secondary);margin:10px 0 24px;font-size:14px;line-height:1.5}.logout-modal-actions{justify-content:center;gap:10px;display:flex}.logout-cancel-button,.logout-confirm-button{cursor:pointer;border-radius:8px;min-width:110px;padding:10px 16px;font-weight:600}.logout-cancel-button{border:1px solid var(--settings-border);color:var(--settings-text);background:0 0}.logout-cancel-button:hover{background:var(--settings-card-hover)}.logout-confirm-button{border:1px solid var(--settings-error);background:var(--settings-error);color:#fff}.logout-confirm-button:hover{opacity:.9}.settings-loading{min-height:100vh;color:var(--settings-text-secondary);background:var(--settings-bg);justify-content:center;align-items:center;display:flex}@media (width<=700px){.settings-page{padding:20px}.settings-header h1{font-size:27px}.two-factor-box{flex-direction:column;align-items:stretch}.two-factor-control{flex-direction:row;justify-content:space-between}.two-factor-steps,.appearance-options{grid-template-columns:1fr}.logout-card{flex-direction:column;align-items:stretch}.logout-button{justify-content:center}.email-details{flex-direction:column;align-items:flex-start}.logout-modal-actions{flex-direction:column}.logout-cancel-button,.logout-confirm-button{width:100%}}.settings-page{box-sizing:border-box;overscroll-behavior-y:contain;height:100dvh;min-height:100vh;padding-bottom:90px;overflow:hidden auto}.settings-page::-webkit-scrollbar{width:8px}.settings-page::-webkit-scrollbar-track{background:0 0}.settings-page::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:10px}.settings-page::-webkit-scrollbar-thumb:hover{background:#94a3b88c}.settings-page{scrollbar-width:thin;scrollbar-color:#94a3b859 transparent}.settings-message{box-sizing:border-box;z-index:9999;border-radius:10px;align-items:center;gap:12px;width:min(720px,100vw - 40px);min-height:52px;padding:14px 18px;animation:.25s ease-out settingsToastIn;display:flex;position:fixed;top:82px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #00000040}.settings-message.success{background:var(--settings-success-bg);border:1px solid var(--settings-success);color:var(--settings-success)}.settings-message.error{background:var(--settings-error-bg);border:1px solid var(--settings-error);color:var(--settings-error)}.settings-message span{flex:1;font-size:14px;font-weight:500;line-height:1.4}.settings-message .message-close{width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.settings-message .message-close:hover{background:#ffffff1a}@keyframes settingsToastIn{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}@media (width<=700px){.settings-message{width:calc(100vw - 24px);padding:12px 14px;top:70px}.settings-message span{font-size:13px}}:root{--bg-primary:#080b14;--bg-secondary:#0f1422;--card-bg:#141927eb;--card-border:#ffffff14;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent:#6366f1;--accent-hover:#4f46e5;--success:#22c55e;--success-bg:#22c55e1f;--error:#ef4444;--error-bg:#ef44441f;--button-text:#fff;--shadow:0 25px 70px #00000073}[data-theme=light]{--bg-primary:#f4f7fb;--bg-secondary:#fff;--card-bg:#fffffff5;--card-border:#0f172a14;--text-primary:#111827;--text-secondary:#64748b;--text-muted:#94a3b8;--accent:#4f46e5;--accent-hover:#4338ca;--success:#16a34a;--success-bg:#16a34a1a;--error:#dc2626;--error-bg:#dc26261a;--button-text:#fff;--shadow:0 25px 70px #0f172a1f}.verify-page{box-sizing:border-box;background:radial-gradient(circle at 20% 20%, #6366f11f, transparent 35%), radial-gradient(circle at 80% 80%, #8b5cf61a, transparent 35%), var(--bg-primary);width:100%;min-height:100vh;color:var(--text-primary);justify-content:center;align-items:center;padding:24px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:background .3s,color .3s;display:flex}.verify-card{box-sizing:border-box;background:var(--card-bg);border:1px solid var(--card-border);width:100%;max-width:500px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center;border-radius:24px;padding:42px 40px 28px;animation:.45s ease-out cardAppear}@keyframes cardAppear{0%{opacity:0;transform:translateY(15px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.verify-brand{color:var(--text-primary);justify-content:center;align-items:center;gap:11px;margin-bottom:42px;font-size:18px;font-weight:700;display:flex}.brand-icon{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:800;display:flex;box-shadow:0 8px 25px #6366f14d}.verify-content{flex-direction:column;align-items:center;display:flex}.verify-content h1{color:var(--text-primary);margin:20px 0 10px;font-size:30px;font-weight:700;line-height:1.2}.verify-content p{max-width:370px;color:var(--text-secondary);margin:0;font-size:15px;line-height:1.7}.status-icon{border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;font-size:38px;font-weight:700;display:flex}.success-icon{color:var(--success);background:var(--success-bg);border:1px solid #22c55e40;box-shadow:0 0 0 10px #22c55e0a}.error-icon{color:var(--error);background:var(--error-bg);border:1px solid #ef444440;box-shadow:0 0 0 10px #ef44440a}.loading-circle{background:#6366f11a;border:1px solid #6366f133;border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;display:flex}.loading-spinner{border:3px solid #6366f12e;border-top-color:var(--accent);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite spin}.success-message{color:var(--success)!important}.error-message{color:var(--error)!important}.continue-button{background:linear-gradient(135deg, var(--accent), #7c3aed);min-width:210px;color:var(--button-text);border-radius:10px;justify-content:center;align-items:center;gap:10px;margin-top:28px;padding:13px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s,opacity .2s;display:inline-flex;box-shadow:0 10px 25px #6366f140}.continue-button:hover{opacity:.95;transform:translateY(-2px);box-shadow:0 14px 30px #6366f159}.continue-button span{font-size:18px;transition:transform .2s}.continue-button:hover span{transform:translate(3px)}.verify-footer{border-top:1px solid var(--card-border);color:var(--text-muted);letter-spacing:.2px;justify-content:center;gap:8px;margin-top:38px;padding-top:22px;font-size:11px;display:flex}@media (width<=600px){.verify-page{padding:16px}.verify-card{border-radius:20px;padding:34px 24px 24px}.verify-brand{margin-bottom:34px;font-size:16px}.verify-content h1{font-size:25px}.status-icon,.loading-circle{width:70px;height:70px}.continue-button{width:100%}.verify-footer{flex-wrap:wrap}}
