:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--bg-main:#f5f5f7;--bg-card:#fff;--bg-card-hover:#fff;--border-color:#e5e5e7;--border-color-hover:#d2d2d7;--color-primary:#0071e3;--color-primary-glow:#0071e314;--color-secondary:#5856d6;--color-success:#34c759;--color-success-glow:#34c7591a;--color-warning:#ff9500;--color-danger:#ff3b30;--color-danger-glow:#ff3b301a;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-muted:#86868b;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000a;--shadow-lg:0 8px 20px #0000000f;--shadow-primary:0 4px 12px #0071e326;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--radius-xl:18px;--transition-fast:.12s ease;--transition-normal:.22s cubic-bezier(.25, 1, .5, 1);--transition-slow:.38s cubic-bezier(.25, 1, .5, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-main:#000;--bg-card:#1c1c1e;--bg-card-hover:#2c2c2e;--border-color:#2c2c2e;--border-color-hover:#3a3a3c;--color-primary:#0a84ff;--color-primary-glow:#0a84ff1f;--color-secondary:#5e5ce6;--color-success:#30d158;--color-success-glow:#30d1581f;--color-warning:#ff9f0a;--color-danger:#ff453a;--color-danger-glow:#ff453a1f;--text-primary:#f5f5f7;--text-secondary:#86868b;--text-muted:#6e6e73;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0003;--shadow-lg:0 8px 24px #0000004d}}:root[data-theme=dark]{--bg-main:#000;--bg-card:#1c1c1e;--bg-card-hover:#2c2c2e;--border-color:#2c2c2e;--border-color-hover:#3a3a3c;--color-primary:#0a84ff;--color-primary-glow:#0a84ff1f;--color-secondary:#5e5ce6;--color-success:#30d158;--color-success-glow:#30d1581f;--color-warning:#ff9f0a;--color-danger:#ff453a;--color-danger-glow:#ff453a1f;--text-primary:#f5f5f7;--text-secondary:#86868b;--text-muted:#6e6e73;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0003;--shadow-lg:0 8px 24px #0000004d}:root[data-theme=light]{--bg-main:#f5f5f7;--bg-card:#fff;--bg-card-hover:#fff;--border-color:#e5e5e7;--border-color-hover:#d2d2d7;--color-primary:#0071e3;--color-primary-glow:#0071e314;--color-secondary:#5856d6;--color-success:#34c759;--color-success-glow:#34c7591a;--color-warning:#ff9500;--color-danger:#ff3b30;--color-danger-glow:#ff3b301a;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-muted:#86868b;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000a;--shadow-lg:0 8px 20px #0000000f;--shadow-primary:0 4px 12px #0071e326}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-primary);letter-spacing:-.011em;min-height:100vh;transition:background-color var(--transition-normal);font-size:16px;font-weight:400;line-height:1.5;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}#root{flex-direction:column;width:100%;min-height:100vh;margin:0 auto;display:flex}h1,h2,h3,h4,h5,h6{letter-spacing:-.022em;color:var(--text-primary);font-weight:600}.container{width:100%;max-width:1300px;margin:0 auto;padding:1.5rem 1rem}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-normal), background-color var(--transition-normal), box-shadow var(--transition-normal);padding:1.5rem}.card:hover{box-shadow:var(--shadow-md)}.btn{cursor:pointer;transition:all var(--transition-fast);font-size:.875rem;font-weight:500;font-family:var(--font-sans);border:1px solid #0000;border-radius:980px;outline:none;justify-content:center;align-items:center;gap:.375rem;padding:.5rem 1rem;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{filter:brightness(1.05)}.btn-primary:active{filter:brightness(.95)}.btn-secondary{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--bg-main);border-color:var(--border-color-hover)}.btn-secondary:active{background-color:var(--border-color)}.btn-danger{background-color:var(--color-danger-glow);color:var(--color-danger);border:1px solid #ff3b3026}.btn-danger:hover{background-color:var(--color-danger);color:#fff;border-color:#0000}.btn-sm{padding:.25rem .75rem;font-size:.75rem}.form-group{margin-bottom:1.25rem}.form-label{color:var(--text-secondary);letter-spacing:-.01em;margin-bottom:.375rem;font-size:.8125rem;font-weight:600;display:block}.form-control{background-color:var(--bg-main);border:1px solid var(--border-color);width:100%;color:var(--text-primary);font-size:.875rem;font-family:var(--font-sans);transition:all var(--transition-fast);border-radius:8px;padding:.625rem .875rem}.form-control:focus{border-color:var(--color-primary);background-color:var(--bg-card);box-shadow:0 0 0 3px var(--color-primary-glow);outline:none}.form-control::placeholder{color:var(--text-muted)}.form-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;display:grid}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.table-responsive{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--bg-card);width:100%;overflow-x:auto}.table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.table th{background-color:var(--bg-main);color:var(--text-secondary);border-bottom:1px solid var(--border-color);text-transform:none;padding:.75rem 1rem;font-size:.8125rem;font-weight:500}.table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);transition:background-color var(--transition-fast);padding:.875rem 1rem}.table tr:last-child td{border-bottom:none}.table tr:hover td{background-color:var(--bg-main)}.badge{border-radius:4px;align-items:center;padding:.125rem .375rem;font-size:.75rem;font-weight:500;display:inline-flex}.badge-success{background-color:var(--color-success-glow);color:var(--color-success)}.badge-primary{background-color:var(--color-primary-glow);color:var(--color-primary)}.badge-danger{background-color:var(--color-danger-glow);color:var(--color-danger)}.app-header{z-index:900;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);transition:background-color var(--transition-normal), border-color var(--transition-normal);background:#f5f5f7d1;justify-content:space-between;align-items:center;margin-bottom:1.75rem;padding:.75rem 1.25rem;display:flex;position:sticky;top:0}@media (prefers-color-scheme:dark){.app-header{background:#000c}}:root[data-theme=dark] .app-header{background:#000000d1}:root[data-theme=light] .app-header{background:#f5f5f7d9}.logo-section{align-items:center;gap:.75rem;display:flex}.logo-icon{color:#fff;background:linear-gradient(135deg,#0071e3 0%,#5856d6 100%);border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.15rem;font-weight:700;display:flex;box-shadow:0 2px 8px #0071e340}.logo-text{color:var(--text-primary);letter-spacing:-.015em;font-size:1.15rem;font-weight:700}.tab-nav{background:#0000000d;border-radius:8px;padding:2px;display:flex}@media (prefers-color-scheme:dark){.tab-nav{background:#ffffff14}}.tab-btn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;align-items:center;gap:.375rem;padding:.3125rem 1rem;font-size:.8125rem;font-weight:500;display:flex}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:#1d1d1f;background:#fff;box-shadow:0 1px 3px #0000001a,0 1px 1px #0000000f}@media (prefers-color-scheme:dark){.tab-btn.active{color:#fff;box-shadow:none;background:#ffffff26}}.toast{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;align-items:center;gap:.625rem;padding:.75rem 1.25rem;animation:.3s cubic-bezier(.16,1,.3,1) forwards slideIn;display:flex;position:fixed;bottom:2rem;right:2rem}@keyframes slideIn{0%{opacity:0;transform:translateY(.75rem)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.footer{border-top:1px solid var(--border-color);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding:2.5rem 0;font-size:.75rem;display:flex}.payslip-modal-backdrop{-webkit-backdrop-filter:blur(12px);z-index:2000;background-color:#0006;justify-content:center;align-items:flex-start;padding:2rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.payslip-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:var(--shadow-lg);flex-direction:column;gap:1.25rem;margin:auto 0;padding:2rem;display:flex;position:relative}.payslip-header{align-items:center;gap:.875rem;display:flex;position:relative}.payslip-logo{background:var(--color-primary-glow);width:40px;height:40px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex}.payslip-close-btn{background:var(--bg-main);border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;line-height:1;display:flex;position:absolute;top:-.5rem;right:-.5rem}.payslip-close-btn:hover{background:var(--border-color);color:var(--text-primary)}.payslip-meta{background:var(--bg-main);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.5rem;padding:.875rem 1.125rem;font-size:.8125rem;display:flex}.meta-row{justify-content:space-between;display:flex}.meta-row span{color:var(--text-secondary)}.meta-row strong{color:var(--text-primary);font-weight:600}.payslip-section{flex-direction:column;gap:.5rem;display:flex}.section-title{text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border-color);letter-spacing:.05em;margin-bottom:.25rem;padding-bottom:.25rem;font-size:.75rem;font-weight:700}.payslip-item{color:var(--text-primary);justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.dot-leader{border-bottom:1px dotted var(--border-color);flex-grow:1;margin:0 .5rem;position:relative;top:-4px}.payslip-total-row{color:var(--text-primary);justify-content:space-between;margin-top:.25rem;padding-top:.25rem;font-size:.875rem;font-weight:600;display:flex}.payslip-item.deduction span:last-child,.payslip-total-row.deduction span:last-child{color:var(--color-danger)}.payslip-divider{border-bottom:1px dashed var(--border-color);margin:.25rem 0}.payslip-footer-row{justify-content:space-between;align-items:center;display:flex}.payslip-footer-row span:first-child{color:var(--text-primary);font-size:.9375rem;font-weight:600}.payslip-net-amount{color:var(--color-success);font-size:1.5rem;font-weight:700}.payslip-remark{color:var(--text-secondary);background:var(--bg-main);border-left:2.5px solid var(--color-primary);border-radius:0 4px 4px 0;padding:.5rem .75rem;font-size:.75rem}.payslip-actions{gap:.75rem;margin-top:.5rem;display:flex}.payslip-actions button{flex:1;height:38px}@media print{body *{visibility:hidden}.payslip-modal-backdrop,.payslip-modal-backdrop *{visibility:visible}.payslip-modal-backdrop{width:100%;height:auto;margin:0;padding:0;position:absolute;top:0;left:0;-webkit-backdrop-filter:none!important;background:0 0!important}.payslip-card{max-width:100%;margin:0 auto;padding:0;box-shadow:none!important;background:0 0!important;border:none!important}.no-print,.payslip-close-btn{display:none!important}}.auth-backdrop{z-index:9999;background:radial-gradient(circle at 15% 20%, #1677ff26 0%, transparent 40%), radial-gradient(circle at 85% 80%, #52c41a1f 0%, transparent 45%), radial-gradient(circle at 50% 50%, #722ed114 0%, transparent 50%), var(--bg-main,#f5f7fa);-webkit-backdrop-filter:blur(25px);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow:hidden}.auth-glow-orb-1{filter:blur(50px);pointer-events:none;background:radial-gradient(circle,#0071e359 0%,#0071e300 70%);border-radius:50%;width:320px;height:320px;animation:12s ease-in-out infinite alternate orbFloat;position:absolute;top:15%;left:20%}.auth-glow-orb-2{filter:blur(60px);pointer-events:none;background:radial-gradient(circle,#52c41a40 0%,#52c41a00 70%);border-radius:50%;width:380px;height:380px;animation:15s ease-in-out infinite alternate-reverse orbFloat;position:absolute;bottom:15%;right:20%}@keyframes orbFloat{0%{transform:translate(0)scale(1)}to{transform:translate(30px,-25px)scale(1.1)}}.auth-card{-webkit-backdrop-filter:blur(30px);z-index:2;width:100%;max-width:410px;position:relative;background:var(--bg-card)!important;border:1px solid #fff3!important;border-radius:16px!important;box-shadow:0 20px 40px #00000014,0 1px 3px #0000000d!important}.salary-row-clickable{cursor:pointer;transition:background-color .2s cubic-bezier(.16,1,.3,1)}.salary-row-clickable:hover>td{background-color:var(--color-primary-bg,#1677ff0a)!important}.privacy-masked{letter-spacing:2px;-webkit-user-select:none;user-select:none;filter:blur();font-family:monospace;transition:all .2s}.chart-tooltip-wrapper{pointer-events:none;background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-md);z-index:100;border-radius:8px;padding:8px 12px;font-size:.75rem;transition:opacity .15s,transform .15s}.page-view-container{animation:.26s cubic-bezier(.16,1,.3,1) forwards viewFadeIn}@keyframes viewFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.desktop-nav-wrapper{align-items:center;display:flex}@media (width<=820px){.desktop-nav-wrapper{display:none!important}}.feature-card{transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .2s!important}.feature-card:hover{transform:translateY(-2px);border-color:var(--color-primary)!important;box-shadow:0 8px 24px #00000014!important}.mobile-bottom-dock{-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-color);z-index:1000;background:#ffffffe0;justify-content:space-around;align-items:center;height:64px;padding:0 .5rem;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0000000a}@media (prefers-color-scheme:dark){.mobile-bottom-dock{background:#121214e0}}:root[data-theme=dark] .mobile-bottom-dock{background:#121214eb}:root[data-theme=light] .mobile-bottom-dock{background:#ffffffeb}@media (width<=820px){.mobile-bottom-dock{display:flex}main.main-content-area{padding-bottom:74px!important}.app-header .header-desktop-actions{display:none!important}}.mobile-dock-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:52px;padding:4px 8px;font-size:.7rem;font-weight:500;transition:all .15s;display:flex}.mobile-dock-btn.active{color:var(--color-primary);font-weight:600}.mobile-dock-btn.active .anticon{transform:scale(1.15)}.mobile-dock-btn-add{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0071e3 0%,#5856d6 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;transition:transform .15s,box-shadow .15s;display:flex;transform:translateY(-8px);box-shadow:0 4px 12px #0071e359}.mobile-dock-btn-add:active{transform:translateY(-6px)scale(.95)}.app-shell{background-color:var(--bg-main);min-height:100vh;color:var(--text-primary);width:100%;display:flex}.app-sidebar{background:var(--bg-card);border-right:1px solid var(--border-color);z-index:950;flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar-brand-wrapper{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.15rem 1rem;display:flex}.sidebar-brand-icon{color:#fff;background:linear-gradient(135deg,#0071e3 0%,#5856d6 100%);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.15rem;font-weight:700;display:flex;box-shadow:0 2px 8px #0071e340}.sidebar-brand-title{letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.sidebar-collapse-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.sidebar-collapse-btn:hover{color:var(--text-primary);background:#0000000d}:root[data-theme=dark] .sidebar-collapse-btn:hover{background:#ffffff14}.sidebar-menu-wrapper{flex:1;padding:1rem .75rem}.sidebar-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.5rem;padding-left:.5rem;font-size:.6875rem;font-weight:600}.sidebar-nav-list{flex-direction:column;gap:.25rem;display:flex}.sidebar-nav-item{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.75rem;width:100%;padding:.65rem .75rem;font-size:.875rem;font-weight:500;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.sidebar-nav-item:hover{color:var(--text-primary);background:#0000000a}:root[data-theme=dark] .sidebar-nav-item:hover{background:#ffffff0f}.sidebar-nav-item.active{background:var(--color-primary-glow,#0071e31a);color:var(--color-primary);font-weight:600}.nav-item-badge{color:#fff;background:linear-gradient(135deg,#0071e3 0%,#5856d6 100%);border-radius:4px;padding:1px 5px;font-size:.625rem;font-weight:700}.sidebar-footer-wrapper{border-top:1px solid var(--border-color);flex-direction:column;gap:.75rem;padding:1rem .75rem;display:flex}.sidebar-add-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.55rem;font-size:.85rem;font-weight:600;transition:all .15s;display:flex;box-shadow:0 2px 8px #0071e340}.sidebar-add-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.sidebar-security-chip{background:#34c75914;border:1px solid #34c75933;border-radius:6px;justify-content:space-between;align-items:center;padding:.4rem .6rem;display:flex}.sidebar-controls-row{justify-content:space-around;align-items:center;padding:.25rem 0;display:flex}.sidebar-icon-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.sidebar-icon-btn:hover{color:var(--text-primary);background:#0000000a}.sidebar-icon-btn.active-warning{background:#faad141a;border-color:#faad14}.sidebar-icon-btn.danger:hover{color:#ff4d4f;background:#ff4d4f14;border-color:#ff4d4f}.sidebar-user-card{background:#00000008;border-radius:8px;align-items:center;gap:.625rem;padding:.5rem .6rem;display:flex}:root[data-theme=dark] .sidebar-user-card{background:#ffffff0a}.sidebar-user-avatar{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:700;display:flex}.workspace-container{flex-direction:column;flex:1;min-width:0;display:flex;overflow-x:hidden}.workspace-top-bar{z-index:900;background:var(--bg-card);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 2rem;display:flex;position:sticky;top:0}.workspace-content{flex:1;min-width:0;padding:1.75rem 2rem 3rem}@media (width<=820px){.app-sidebar{display:none}.workspace-top-bar{padding:.75rem 1rem}.workspace-content{padding:1rem}}.ai-workspace-container{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-card);height:calc(100vh - 160px);min-height:580px;display:flex;overflow:hidden}.ai-session-sidebar{border-right:1px solid var(--border-color);background:#00000004;flex-direction:column;width:240px;padding:1.25rem 1rem;display:flex}.ai-new-chat-btn{border:1px solid var(--border-color);cursor:pointer;width:26px;height:26px;color:var(--text-secondary);background:0 0;border-radius:6px;justify-content:center;align-items:center;display:flex}.ai-new-chat-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ai-session-list{flex-direction:column;gap:.4rem;display:flex}.ai-session-item{color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:.625rem;padding:.6rem .75rem;font-size:.8rem;transition:all .15s;display:flex}.ai-session-item:hover{color:var(--text-primary);background:#0000000a}:root[data-theme=dark] .ai-session-item:hover{background:#ffffff0d}.ai-session-item.active{background:var(--color-primary-glow,#0071e31a);color:var(--color-primary);border-color:#0071e333;font-weight:600}.session-title{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.ai-chat-pane{background:var(--bg-card);flex-direction:column;flex:1;min-width:0;display:flex}.ai-chat-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:.85rem 1.75rem;display:flex}.ai-avatar-badge{color:#fff;background:linear-gradient(135deg,#0071e3 0%,#5856d6 100%);border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.ai-chat-messages{flex-direction:column;flex:1;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.ai-msg-row{gap:.75rem;max-width:85%;display:flex}.ai-msg-row.user{flex-direction:row-reverse;align-self:flex-end}.ai-msg-row.assistant{align-self:flex-start}.ai-msg-avatar{background:var(--color-primary);color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.ai-msg-bubble{background:#0000000a;border-radius:12px;padding:.85rem 1.1rem;font-size:.875rem;line-height:1.6}:root[data-theme=dark] .ai-msg-bubble{background:#ffffff0f}.ai-msg-row.user .ai-msg-bubble{background:var(--color-primary);color:#fff;border-bottom-right-radius:2px}.thinking-bubble{color:var(--text-secondary);align-items:center;gap:.5rem;font-style:italic;display:flex}.ai-reasoning-container{background:#00000008;border:1px dashed #0071e340;border-radius:8px;margin-bottom:.75rem;font-size:.8125rem;transition:all .2s;overflow:hidden}:root[data-theme=dark] .ai-reasoning-container{background:#ffffff0a;border-color:#0a84ff4d}.ai-reasoning-toggle{width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:6px 10px;font-size:.75rem;font-weight:500;display:flex}.ai-reasoning-toggle:hover{color:var(--color-primary);background:#0071e30d}.ai-reasoning-body{border-top:1px dashed var(--border-color);color:var(--text-muted);line-height:1.55;font-family:var(--font-mono,monospace);white-space:pre-wrap;max-height:280px;padding:8px 12px 10px;font-size:.78rem;overflow-y:auto}.ai-msg-content h3{color:var(--text-primary);margin:.6rem 0 .4rem;font-size:1.05rem;font-weight:700}.ai-msg-content h4{color:var(--text-primary);margin:.5rem 0 .3rem;font-size:.95rem;font-weight:600}.ai-msg-content ul,.ai-msg-content ol{margin:.4rem 0;padding-left:1.25rem}.ai-msg-content li{margin-bottom:.25rem}.ai-msg-content strong{color:var(--text-primary);font-weight:600}.ai-msg-content code{background:#0000000f;border-radius:4px;padding:2px 5px;font-family:monospace;font-size:.82rem}:root[data-theme=dark] .ai-msg-content code{background:#ffffff1a}.ai-markdown-table{border-collapse:collapse;width:100%;margin:.75rem 0;font-size:.8125rem}.ai-markdown-table th,.ai-markdown-table td{border:1px solid var(--border-color);text-align:left;padding:6px 10px}.ai-markdown-table th{background:var(--bg-card-hover);font-weight:600}.ai-msg-actions{border-top:1px solid var(--border-color);gap:.5rem;margin-top:.5rem;padding-top:.35rem;display:flex}.ai-msg-actions button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px}.ai-msg-actions button:hover{color:var(--text-primary)}.ai-quick-prompts{border-top:1px solid var(--border-color);background:#00000004;gap:.5rem;padding:.5rem 1.25rem;display:flex;overflow-x:auto}.ai-prompt-chip{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);white-space:nowrap;cursor:pointer;border-radius:16px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;transition:all .15s;display:flex}.ai-prompt-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.ai-input-bar{border-top:1px solid var(--border-color);background:var(--bg-card);gap:.625rem;padding:.85rem 1.25rem;display:flex}.ai-text-input{border:1px solid var(--border-color);color:var(--text-primary);background:#00000008;border-radius:8px;outline:none;flex:1;padding:.6rem .85rem;font-size:.875rem}:root[data-theme=dark] .ai-text-input{background:#ffffff0a}.ai-text-input:focus{border-color:var(--color-primary)}.ai-send-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0 1rem;display:flex}.ai-send-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.ai-session-sidebar{display:none}}.metrics-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;margin-bottom:1.5rem;display:grid}@media (width<=900px){.metrics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.metrics-kpi-grid{grid-template-columns:1fr}}.metric-kpi-card{border:1px solid var(--border-color);background:var(--bg-card);min-height:126px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;border-radius:14px!important;flex-direction:column!important;justify-content:space-between!important;padding:1.15rem 1.25rem!important;display:flex!important}.metric-kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-kpi-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.metric-kpi-title{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.metric-kpi-badge{border-radius:9999px;align-items:center;gap:2px;padding:2px 7px;font-size:.6875rem;font-weight:600;display:inline-flex}.metric-kpi-badge.positive{color:#34c759;background:#34c7591f}.metric-kpi-badge.negative{color:#ff3b30;background:#ff3b301f}.metric-kpi-badge.neutral{color:#0071e3;background:#0071e31f}.metric-kpi-value{color:var(--text-primary);letter-spacing:-.02em;align-items:baseline;gap:2px;font-size:1.45rem;font-weight:700;line-height:1.2;display:flex}.metric-kpi-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:.4rem;font-size:.75rem;overflow:hidden}.dashboard-chart-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;width:100%;display:flex}.dashboard-chart-title{align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;display:flex}.dashboard-chart-badge{border:1px solid #0000;border-radius:9999px;align-items:center;gap:6px;padding:3px 10px;font-size:.75rem;font-weight:500;display:inline-flex}.dashboard-chart-badge.success{color:#34c759;background:#34c75914;border-color:#34c75933}.dashboard-chart-badge.danger{color:#ff3b30;background:#ff3b3014;border-color:#ff3b3033}.dashboard-chart-badge.primary{color:#0071e3;background:#0071e314;border-color:#0071e333}.funnel-container{flex-direction:column;gap:.75rem;padding:.25rem 0;display:flex}.funnel-step-row{flex-direction:column;gap:.25rem;display:flex}.funnel-step-meta{justify-content:space-between;align-items:center;font-size:.78rem;display:flex}.funnel-step-label{color:var(--text-secondary);align-items:center;gap:6px;display:flex}.funnel-step-val{color:var(--text-primary);font-feature-settings:"tnum";font-weight:600}.funnel-bar-track{background:#0000000a;border-radius:4px;height:7px;position:relative;overflow:hidden}:root[data-theme=dark] .funnel-bar-track{background:#ffffff0f}.funnel-bar-fill{border-radius:4px;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1)}.pillars-stacked-bar{background:#0000000a;border-radius:5px;height:10px;margin:.65rem 0 .75rem;display:flex;overflow:hidden}.pillar-segment{height:100%;transition:width .6s}.pillars-legend-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:.4rem;display:grid}.pillar-legend-item{border:1px solid var(--border-color);background:#00000005;border-radius:8px;flex-direction:column;gap:2px;padding:.45rem .55rem;display:flex}:root[data-theme=dark] .pillar-legend-item{background:#ffffff08}.vault-metric-box{border:1px solid var(--border-color);background:#00000005;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.65rem .85rem;display:flex}:root[data-theme=dark] .vault-metric-box{background:#ffffff08}.company-comp-item{border-bottom:1px solid var(--border-color);flex-direction:column;gap:.35rem;padding:.65rem 0;display:flex}.company-comp-item:last-child{border-bottom:none}.spotlight-card{border-radius:var(--radius-lg,12px);border:1px solid var(--border-color,#e5e5e7);background-color:var(--bg-card,#fff);transition:border-color .25s,box-shadow .25s,transform .25s;position:relative;overflow:hidden}.spotlight-card:hover{border-color:var(--color-primary,#0071e3);box-shadow:0 10px 30px -10px #0071e31f}.spotlight-layer{pointer-events:none;z-index:1;transition:opacity .3s;position:absolute;inset:0}.spotlight-content{z-index:2;height:100%;position:relative}.shiny-text{color:var(--text-primary,#1d1d1f);background:linear-gradient(120deg,#fff0 30%,#fffc 50%,#fff0 70%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;animation:4s linear infinite shine;display:inline-block}:root[data-theme=light] .shiny-text{background:linear-gradient(120deg,#0071e3d9 20%,#5856d6 50%,#0071e3d9 80%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text}@keyframes shine{0%{background-position:100%}to{background-position:-100%}}.shiny-text.disabled{animation:none}
