:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-background:#0b0f14;--color-brand-gradient:var(--color-background);--color-surface:var(--color-elevated);--color-elevated:#1a2233;--color-border:#253047;--color-text-primary:#e6eaf2;--color-text-secondary:#a7b0c0;--color-text-muted:#8795a9;--color-primary:#4c7dff;--color-primary-hover:#3b66d9;--color-primary-glow:#4c7dff1f;--color-success:#3fbf7f;--color-warning:#d9a441;--color-danger:#d16666;--color-success-strong:#166534;--color-warning-strong:#92400e;--color-danger-strong:#991b1b;--color-success-surface:#ecfdf5;--color-warning-surface:#fffbeb;--color-danger-surface:#fef2f2;--color-success-border:#a7f3d0;--color-warning-border:#fcd34d;--color-danger-border:#fca5a5;--color-text-inverse:#fff;--color-chart-blue:#3b82f6;--color-chart-green:#10b981;--color-chart-yellow:#f59e0b;--color-chart-red:#ef4444;--color-chart-purple:#8b5cf6;--color-chart-pink:#ec4899;--color-chart-teal:#14b8a6;--color-chart-indigo:#6366f1;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--spacing-3xl:64px;--space-1:var(--spacing-xs);--space-2:var(--spacing-sm);--space-3:var(--spacing-md);--space-4:var(--spacing-lg);--space-5:var(--spacing-xl);--space-6:var(--spacing-2xl);--space-7:var(--spacing-3xl);--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--shadow-sm:0 1px 3px #0003;--shadow-md:0 4px 12px #0000004d;--shadow-lg:0 8px 24px #0006;--transition-fast:.2s ease;--transition:background .3s ease, color .3s ease, border-color .3s ease, transform .3s ease;--bp-mobile:768px;--bp-tablet:1024px;--bp-desktop:1280px;--app-header-height:72px;--color-primary-600:var(--color-primary);--color-surface-muted:var(--color-surface);--color-on-brand:#0b0f14;--color-on-surface:var(--color-text-primary);--color-border-subtle:#253047;--color-info:var(--color-primary);--color-text-tertiary:var(--color-text-secondary);--color-background-primary:var(--color-background);--color-background-secondary:var(--color-surface);--color-background-info:var(--color-success);--color-background-alert:var(--color-danger);--color-secondary:var(--color-text-secondary);--color-border-primary:var(--color-border);--color-border-secondary:var(--color-border);--color-border-tertiary:var(--color-border);--color-primary-50:var(--color-background);--color-primary-100:var(--color-surface);--color-primary-200:var(--color-elevated);--color-primary-300:var(--color-border);--color-primary-950:var(--color-text-primary)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#f8fafc;--color-surface:#fff;--color-elevated:#f1f5f9;--color-border:#d7dee8;--color-text-primary:#172033;--color-text-secondary:#516075;--color-text-muted:#64748b;--color-primary:#2f64d6;--color-primary-hover:#2553b8;--color-primary-glow:#2f64d624;--color-on-brand:#fff;--color-on-surface:#172033;--color-border-subtle:#d7dee8;--color-background-primary:#f8fafc;--color-background-secondary:#fff;--color-primary-50:#eef4ff;--color-primary-100:#e3ecff;--color-primary-200:#d5e2ff;--color-primary-300:#c1d3fa;--color-primary-950:#172033;--shadow-sm:0 1px 3px #0f172a1a;--shadow-md:0 4px 12px #0f172a1f;--shadow-lg:0 8px 24px #0f172a29}:root{--bg-color:var(--color-background);--surface-color:var(--color-surface);--border-color:var(--color-border);--primary-color:var(--color-primary);--primary-hover:var(--color-primary-hover);--text-color-muted:var(--color-text-muted);--radius-lg:var(--radius-lg);--color-surface-hover:var(--color-elevated);--color-text-tertiary:var(--color-text-muted)}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:hidden}body{background:var(--color-brand-gradient);color:var(--color-text-primary);transition:var(--transition);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;overflow-x:hidden}select{background:var(--color-surface);border:.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);padding:var(--spacing-xs) var(--spacing-sm);outline:none;font-size:1rem}button{background:var(--color-surface);min-width:100px;min-height:44px;color:var(--color-text-primary);padding:var(--spacing-xs);border-radius:var(--radius-md);cursor:pointer;border:none;font-weight:500}button:hover{background:var(--color-surface-muted);color:var(--color-text-primary)}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}h1,h2{margin-bottom:var(--spacing-md)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.logo-file-field{gap:var(--spacing-xs);min-width:0;display:grid}.logo-file-field>label{color:var(--color-text-primary);font-weight:600}.logo-file-field>input[type=file]{box-sizing:border-box;width:100%;min-width:0;padding:var(--spacing-sm);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);background:var(--color-surface-muted);font:inherit}.logo-file-field__name,.logo-file-field__help{color:var(--color-text-secondary);font-size:var(--text-sm);overflow-wrap:anywhere;margin:0}.logo-file-field__help{font-size:var(--text-xs)}.header,.page-header{justify-content:space-between;gap:var(--spacing-xl);align-items:center;display:flex}.header{z-index:1000;width:100%;min-height:72px;padding:0 var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-background);box-shadow:var(--shadow-sm);transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;right:0}.header.is-scroll-hidden{transform:translateY(-100%)}.App-logo{flex-shrink:0;width:auto;height:64px}.page-header{margin-bottom:var(--spacing-xl)}.page-header-left{gap:var(--spacing-xs);flex-direction:column;display:flex}.page-header-actions{gap:var(--spacing-sm);flex-wrap:wrap;align-items:center;display:flex}.page-header h1{margin:0}.page-header p{margin:var(--spacing-xs) 0 0;color:var(--color-text-secondary)}.page-header-icon{margin-right:var(--spacing-sm)}.page-header-timer{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);display:flex}.page-header-timer-dot{border-radius:50%;width:10px;height:10px}.page-header-timer-content{flex-direction:column;display:flex}.page-header-timer-time{font-size:.95rem;font-weight:700}.page-header-timer-project{color:var(--color-text-secondary);font-size:.72rem}.timer-project-dot{border-radius:50%;width:10px;height:10px}.timer-bar{align-items:center;gap:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);flex-wrap:nowrap;flex:1;display:flex;position:relative;overflow:visible}.timer-visual-progress{background:var(--color-danger);z-index:0;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);height:4px;transition:width 1s linear;position:absolute;bottom:0;left:0}.timer-bar>:not(.timer-visual-progress){z-index:1;position:relative}.timer-status{background:var(--color-success);width:13px;height:13px;box-shadow:0 0 10px var(--color-success);border-radius:50%;flex-shrink:0}.timer-status.idle{background:var(--color-danger);box-shadow:0 0 10px var(--color-danger)}.timer-input{min-width:100px;color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;font-size:1rem}.timer-note{flex:auto;order:20;min-width:0}.timer-note__input{flex:auto;min-width:0}.timer-note__button{white-space:nowrap;flex:none;min-width:0}.timer-warning{flex:auto;order:21}.timer-input::placeholder{color:var(--color-text-secondary)}.timer-bar select{border:1px solid var(--color-border);background:var(--color-background);border-radius:var(--radius-sm);color:var(--color-text-primary);outline:none;min-width:120px;padding:8px 12px}@media (width<=1024px){.header{gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-xs);flex-wrap:wrap;height:auto;min-height:64px;overflow-x:hidden}.header::-webkit-scrollbar{display:none}.timer-project-dot{display:none}.App-logo{width:auto;height:40px;margin:0 auto}.timer-bar{justify-content:center;align-items:center;gap:var(--spacing-sm);scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;flex:100%;order:3;width:100%;min-width:0;padding:4px 0;display:flex;overflow-x:auto}.timer-bar::-webkit-scrollbar{display:none}.timer-bar .timer-input{flex:120px;order:1;width:auto;min-width:80px}.timer-bar .timer-note{flex:100px;order:2}.timer-bar .timer-warning{order:3}.timer-bar select{flex:0 auto;order:4;width:auto;min-width:60px;max-width:120px;padding:4px 6px;font-size:.85rem}.timer-bar .timer-active-project,.timer-bar .timer-play{order:5}.timer-bar .timer-live{order:6}.timer-bar .theme-toggle{order:7}.timer-bar .header-notifications{order:8}.timer-bar .activity-suggestion-badge,.timer-bar .timer-sync-status,.timer-bar .timer-tunnel{order:9}.timer-input{flex-shrink:1;min-width:60px;font-size:.9rem}.timer-live{flex-shrink:0;min-width:0;font-size:.85rem}.timer-live-time{font-size:.9rem}.timer-live-project,.timer-active-project{display:none}.timer-note{flex-wrap:nowrap;width:auto}.resume-projects{display:none}.timer-bar>button,.timer-bar>div>button,.timer-bar .theme-toggle,.timer-bar .timer-note__button{min-width:0;min-height:0}.timer-bar>div>button,.timer-bar .theme-toggle{width:40px}.activity-suggestion-badge{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.timer-play{flex-shrink:0;max-width:40px;max-height:40px;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important}.timer-play svg{width:18px;height:18px}.timer-status,.timer-project-dot{flex-shrink:0}}.timer-bar select:disabled,.timer-input:disabled{opacity:.65;cursor:not-allowed}.timer-bar select:focus,.timer-input:focus{box-shadow:0 0 0 2px var(--color-primary-glow);border-color:var(--color-primary)}.timer-clock{font-variant-numeric:tabular-nums;color:var(--color-text-primary);text-align:center;min-width:86px;font-size:1.15rem;font-weight:700}.timer-play{aspect-ratio:1;background:var(--color-success);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;max-width:46px;max-height:46px;display:flex;overflow:hidden;border-radius:9999px!important;width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:0!important}.timer-play:hover{opacity:.9;transform:scale(1.05)}.timer-play svg{width:20px;height:20px;fill:var(--color-on-brand)}.timer-tunnel{width:44px;min-width:44px;padding:var(--spacing-xs)!important}.timer-live{flex-direction:column;align-items:flex-end;min-width:110px;display:flex}.timer-live-time{color:var(--color-primary);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800}.timer-live-project{color:var(--color-text-secondary);white-space:nowrap;font-size:.72rem}.timer-active-project{background:var(--color-surface-muted);color:var(--color-text-secondary);border-radius:999px;align-items:center;padding:4px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.timer-warning{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);background:var(--color-elevated);border:1px solid var(--color-warning);color:var(--color-text-primary);justify-content:space-between;align-items:center;gap:var(--spacing-md);font-size:14px;font-weight:500;display:flex}.timer-warning__text{flex:1;line-height:1.35}.timer-warning__button{background:var(--color-warning);color:var(--color-on-brand);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:7px 10px;font-weight:700}.timer-warning__button:hover{filter:brightness(1.08)}.timer-note{flex:auto;order:20;gap:8px;width:auto;display:flex}.timer-note__input{border-radius:var(--radius-sm,8px);border:1px solid var(--color-border,#94a3b866);background:var(--color-elevated,#1a2233);color:var(--color-text-primary,#e6eaf2);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;flex:1;padding:8px 12px;font-size:.95rem}.timer-note__input::placeholder{color:var(--color-text-muted,#8795a9)}.timer-note__input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-glow)}.timer-note__button{border-radius:var(--radius-sm,8px);background:var(--color-primary);color:var(--color-text-inverse,#fff);cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast), transform var(--transition-fast);border:none;padding:8px 14px;font-size:.9rem;font-weight:700}.timer-note__button:hover{background:var(--color-primary-hover,#3b66d9);color:#fff}.timer-note__button:active{transform:scale(.98)}.header-notifications{order:20;align-items:center;display:flex;position:relative}.header-notifications-toggle{cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;font-size:20px;display:flex;position:relative}.header-notifications-toggle:hover{background:var(--color-surface-muted,#94a3b826)}.header-notifications-badge{background:var(--color-danger,#ef4444);color:var(--color-text-inverse,#fff);pointer-events:none;border-radius:9999px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1;position:absolute;top:-2px;right:-2px}.header-notifications-panel{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:var(--radius-md);width:340px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg,0 10px 25px -5px #0003);z-index:1200;max-height:420px;color:var(--color-text-primary);position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto}.header-notifications-panel-header{border-bottom:1px solid var(--color-border);background:var(--color-elevated,#f1f5f9);border-radius:calc(var(--radius-md) - 1px) calc(var(--radius-md) - 1px) 0 0;color:var(--color-text-primary);justify-content:space-between;align-items:center;padding:12px 16px;font-size:.95rem;font-weight:700;display:flex}.header-notifications-empty{text-align:center;color:var(--color-text-secondary);padding:24px 16px;font-size:.9rem}.header-notification-item{border-bottom:1px solid var(--color-border);transition:background-color var(--transition-fast);padding:12px 16px}.header-notification-item:last-child{border-bottom:none}.header-notification-item:hover{background:var(--color-elevated,#f8fafc)}.header-notification-item.is-read{opacity:.65;cursor:default}.header-notification-item:not(.is-read){cursor:pointer}.header-notification-date{color:var(--color-text-secondary);margin-bottom:4px;font-size:11px}.header-notification-message{color:var(--color-text-primary);font-size:13.5px;line-height:1.4}.timer-tunnel{order:20}.mobile-menu-button{color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;flex-shrink:0;width:40px;height:40px;padding:8px;font-size:24px;transition:color .2s;display:none}.mobile-menu-button:hover{color:var(--color-primary)}.mobile-menu-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}@media (width<=1024px){.mobile-menu-button{order:-1;justify-content:center;align-items:center;display:flex}}.header-quick-support-btn{background:var(--color-elevated,#3b82f614);border:1px solid var(--color-border,#cbd5e1);color:var(--color-text-primary,#0f172a);cursor:pointer;white-space:nowrap;border-radius:20px;flex-shrink:0;align-items:center;gap:5px;padding:5px 11px;font-size:12.5px;font-weight:600;transition:all .2s;display:inline-flex}.header-quick-support-btn:hover{background:var(--color-primary-subtle,#3b82f626);border-color:var(--color-primary,#3b82f6);transform:translateY(-1px)}@media (width<=860px){.header-quick-support-label{display:none}.header-quick-support-btn{padding:6px 8px}}@media (width<=768px){.header{padding:0 var(--spacing-md);gap:var(--spacing-md);min-height:64px}.App-logo{height:48px}.timer-bar{gap:var(--spacing-sm);padding:var(--spacing-sm);flex-wrap:nowrap}.timer-input{min-width:60px;font-size:.9rem}.timer-bar select{min-width:70px;padding:4px 6px;font-size:.85rem}.timer-live{min-width:auto;font-size:.85rem}.timer-live-time{font-size:.9rem}.timer-live-project,.timer-active-project{display:none}.timer-note{flex-wrap:nowrap;width:auto}.resume-projects{display:none}.main{padding:var(--spacing-md);width:100%;overflow-x:hidden}.page-container{padding:var(--spacing-md);max-width:100%}.two-col{grid-template-columns:1fr}.card,.dashboard-metric-card{width:100%;max-width:100%}.activity-chart-wrapper{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.activity-summary-card{width:100%;max-width:100%}}@media (width<=480px){.ai-copilot-launcher{width:48px;height:48px;font-size:20px}.ai-copilot-window{width:calc(100vw - 24px);height:350px;max-height:70vh}}@media (width<=768px){body,html{width:100%;max-width:100vw;overflow-x:hidden}.app,.container,.main{width:100%;max-width:100%;overflow-x:clip}}@supports (padding:max(0px)){@media (width<=768px){.main{padding-left:max(var(--spacing-md), env(safe-area-inset-left));padding-right:max(var(--spacing-md), env(safe-area-inset-right));padding-bottom:max(var(--spacing-md), env(safe-area-inset-bottom))}.header{padding-left:max(var(--spacing-md), env(safe-area-inset-left));padding-right:max(var(--spacing-md), env(safe-area-inset-right))}}}@media (width<=768px){.ts-week-label{flex:1;width:auto;min-width:0}.ts-entry-head,.ts-entry{gap:var(--spacing-sm);grid-template-columns:18px 1fr}.ts-date,.ts-desc,.ts-client,.ts-duration,.ts-badge,.ts-actions{display:none}.ts-entry{padding:var(--spacing-md);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:var(--spacing-sm);border:none}.ts-entry:hover{background:var(--color-elevated)}.timesheet-stats{grid-template-columns:1fr}.timesheet-week-stats{grid-template-columns:repeat(2,1fr)}.clients-grid,.projects-grid{grid-template-columns:1fr}.client-details{z-index:1000;border-radius:16px 16px 0 0;width:100%;max-height:80vh;position:fixed;inset:auto 0 0;overflow-y:auto}.projects-toolbar select{flex:1;min-width:auto}.project-info-grid{grid-template-columns:repeat(2,1fr)}.project-detail-grid,.invoices-list{grid-template-columns:1fr}.create-invoice-form,.edit-invoice-form,.view-invoice{min-width:0}.form-row,.value-meta{grid-template-columns:1fr}.view-invoice-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.view-invoice-table{font-size:.75rem}.view-invoice-table th,.view-invoice-table td{padding:.3rem .4rem}.report-head,.report-row,.report-total{gap:var(--spacing-sm);grid-template-columns:1fr}.report-head span:not(:first-child),.report-row span:not(:first-child),.report-total span:not(:first-child){text-align:left}.analytics-charts-grid{grid-template-columns:1fr}.analytics-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.desktop-privacy-settings,.client-form{max-width:100%}.ai-copilot-container{z-index:40;bottom:calc(24px + var(--mobile-safe-bottom));right:calc(16px + var(--mobile-safe-right))}.ai-copilot-launcher{width:48px;height:48px;font-size:20px}.ai-copilot-window{z-index:41;width:calc(100vw - 32px);max-width:350px;height:400px;bottom:calc(80px + var(--mobile-safe-bottom))}.ts-modal-overlay{z-index:1001}.ts-modal{width:90vw;max-width:100%}.accounting-page table{-webkit-overflow-scrolling:touch;white-space:nowrap;display:block;overflow-x:auto}.accounting-page section{padding:0 var(--spacing-sm,.5rem)}}.ai-copilot-container{bottom:calc(88px + env(safe-area-inset-bottom));z-index:9999;pointer-events:none;flex-direction:column;align-items:flex-end;display:flex;position:fixed;right:16px}@media (width<=480px){.ai-copilot-container{bottom:calc(88px + env(safe-area-inset-bottom));right:16px}}.mobile-drawer.open~.ai-copilot-container,.modal-backdrop~.ai-copilot-container{display:none}.ai-copilot-container>*{pointer-events:auto}.ai-copilot-launcher{background-color:var(--color-primary,var(--color-chart-blue));color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-top:16px;font-size:24px;transition:transform .2s,background-color .2s;display:flex;box-shadow:0 4px 12px #00000026}.ai-copilot-launcher:hover{background-color:var(--color-primary-dark,var(--color-primary));transform:scale(1.05)}.ai-copilot-window{background-color:var(--color-surface,var(--color-surface));border:1px solid var(--color-border-secondary,var(--color-border));border-radius:12px;flex-direction:column;width:350px;height:500px;animation:.3s cubic-bezier(.16,1,.3,1) slideUpFade;display:flex;overflow:hidden;box-shadow:0 8px 30px #0003}.ai-copilot-header{background-color:var(--color-primary);color:var(--color-background);padding:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.ai-copilot-header h3{margin:0;font-size:1rem;font-weight:600}.ai-copilot-close{color:#fff;cursor:pointer;opacity:.8;background:0 0;border:none;font-size:24px;line-height:1}.ai-copilot-close:hover{opacity:1}.ai-copilot-messages{padding:var(--spacing-md);gap:var(--spacing-md);background-color:var(--color-background);flex-direction:column;flex:1;display:flex;overflow-y:auto}.ai-message{width:100%;display:flex}.ai-message.user{justify-content:flex-end}.ai-message.assistant{justify-content:flex-start}.ai-message-bubble{max-width:80%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);white-space:pre-wrap;word-wrap:break-word;font-size:.9rem;line-height:1.4}.ai-message.user .ai-message-bubble{background-color:var(--color-primary,var(--color-chart-blue));color:#fff;border-bottom-right-radius:2px}.ai-message.assistant .ai-message-bubble{color:var(--color-text-primary,var(--color-text-primary));border:1px solid var(--color-border-secondary,var(--color-border));background-color:#fff;border-bottom-left-radius:2px}.ai-copilot-input-area{padding:var(--spacing-md);gap:var(--spacing-sm);background-color:var(--color-surface);border-top:1px solid var(--color-border);display:flex}.ai-copilot-input-area input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:20px;outline:none;flex:1;font-size:.9rem}.ai-copilot-input-area input:focus{border-color:var(--color-primary,var(--color-chart-blue))}.loading-dots span{font-size:20px;line-height:10px;animation:1.4s ease-in-out infinite both loadingDots;display:inline-block}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes loadingDots{0%,80%,to{opacity:.3;transform:scale(0)}40%{opacity:1;transform:scale(1)}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.ai-copilot-window{width:calc(100vw - 32px);height:400px;bottom:80px;right:16px}.ai-copilot-launcher{bottom:16px;right:16px}}.copilot-creation-form{border:1px solid var(--color-border);border-radius:8px;margin-top:12px;padding:12px}.copilot-creation-form fieldset{border:1px solid var(--color-border);min-width:0;margin:8px 0}.copilot-creation-form label{margin:8px 0;display:block}.copilot-creation-form input:not([type=checkbox]),.copilot-creation-form select,.copilot-creation-form textarea{box-sizing:border-box;width:100%;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;padding:8px}.copilot-creation-form button{cursor:pointer;margin:6px 4px 0 0;padding:8px}.copilot-creation-form button:disabled{cursor:default;opacity:.6}.ui-button{border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:var(--spacing-sm);transition:var(--transition);border:1px solid #0000;font-weight:500;display:inline-flex}.ui-button--sm{padding:4px var(--spacing-sm);font-size:13px}.ui-button--md{padding:var(--spacing-sm) var(--spacing-md);font-size:14px}.ui-button--primary{background:var(--color-primary);color:var(--color-text-primary);border-color:var(--color-primary)}.ui-button--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ui-button--secondary{color:var(--color-text-secondary);border-color:var(--color-border);background:0 0}.ui-button--secondary:hover{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-text-secondary)}.ui-button--danger{color:var(--color-danger);border-color:var(--color-danger);background:0 0}.ui-button--danger:hover{background:var(--color-danger);color:var(--color-text-primary)}.ui-button:active{transform:scale(.98)}.ui-card{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--spacing-lg);color:var(--color-text-primary);border-radius:16px;box-shadow:0 8px 24px #00000014}.ui-card-title{margin-bottom:var(--spacing-md);color:var(--color-text-primary);font-size:16px;font-weight:600}.client-card-ui{gap:var(--spacing-md);flex-direction:column;display:flex}.form-group,.input-wrapper{gap:var(--spacing-xs);flex-direction:column;width:100%;margin-bottom:1.25rem;display:flex}.form-label,.input-label{color:var(--color-text-secondary);margin-left:2px;font-size:.875rem;font-weight:600}.input-description{color:var(--color-text-secondary);margin-left:2px;font-size:.8rem;line-height:1.4}.input-field{appearance:none;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast);cursor:pointer;outline:none;font-size:.95rem}.select-field{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7' /%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.select-container{width:100%;position:relative}.input-field::placeholder{color:var(--color-text-secondary)}.input-field:hover{border-color:var(--color-border)}.input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-soft);background-color:var(--color-surface)}.has-error .input-field,.input-error{background-color:var(--color-danger-soft);border-color:var(--color-danger)!important}.has-error .input-field:focus{box-shadow:0 0 0 4px var(--color-danger-soft)}.error-message,.field-error-text{color:var(--color-danger);align-items:center;margin-top:2px;margin-left:2px;font-size:.8rem;animation:.2s ease-out slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.error-message,.field-error-text{animation:none}}.input-field:disabled{background-color:var(--color-surface-muted);color:var(--color-text-secondary);cursor:not-allowed;border-color:var(--color-border-subtle)}.ui-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary)}.ui-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-soft);outline:none}.ui-modal-backdrop{background:var(--color-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;overscroll-behavior:contain;padding:var(--space-4);place-items:center;display:grid;position:fixed;inset:0;overflow:auto}.ui-modal{width:min(100%,34rem);max-height:calc(100dvh - (var(--space-4) * 2));background:var(--color-surface);color:var(--color-text-primary);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-lg);flex-direction:column;min-height:0;display:flex;overflow:hidden}.ui-modal--small{width:min(100%,28rem)}.ui-modal--large{width:min(100%,44rem)}.ui-modal--xlarge{width:min(100%,64rem)}.ui-modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex:none;display:flex}.ui-modal-header h2{min-width:0;margin:0}.ui-modal-close{color:var(--color-text-primary);cursor:pointer;min-width:auto;min-height:auto;padding:var(--space-1);background:0 0;border:none;flex:none;font-size:2rem;line-height:1}.ui-modal-body{gap:var(--spacing-md);overscroll-behavior:contain;min-width:0;min-height:0;padding-right:var(--spacing-xs);flex-direction:column;flex:auto;display:flex;overflow:auto}.ui-modal-body>*,.ui-modal .form-row>*{min-width:0}.ui-modal .form-group,.ui-modal .input-wrapper{margin-bottom:0}.ui-modal .ui-select,.ui-modal .input-field,.ui-modal textarea{width:100%;min-width:0}@media (width<=768px){.ui-modal-backdrop{padding:var(--space-2)}.ui-modal{width:100%;max-height:calc(100dvh - (var(--space-2) * 2));padding:var(--space-3);border-radius:var(--radius-md)}.ui-modal-header h2{font-size:var(--text-xl)}.ui-modal .form-row{grid-template-columns:1fr}.ui-modal .form-actions,.ui-modal .modal-actions{grid-template-columns:1fr;display:grid}.ui-modal .form-actions>*,.ui-modal .modal-actions>*{width:100%}}@media (width<=430px){.ui-modal-backdrop{place-items:end center;padding:0}.ui-modal{max-height:calc(100dvh - env(safe-area-inset-top));border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom))}}.confirm-overlay{background:var(--color-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;padding:var(--space-3);place-items:center;display:grid;position:fixed;inset:0;overflow:auto}.confirm-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);width:min(100%,26rem);max-height:calc(100dvh - (var(--space-3) * 2));gap:var(--spacing-lg);flex-direction:column;display:flex;overflow:auto}.confirm-message{color:var(--color-text-primary);margin:0;font-size:15px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.confirm-btn{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border:none;border-radius:8px;font-size:14px;font-weight:500;transition:opacity .15s}.confirm-btn:hover{opacity:.85}.confirm-btn--cancel{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border)}.confirm-btn--danger{background:var(--color-danger);color:var(--color-on-brand)}.confirm-btn--primary{background:var(--color-primary);color:var(--color-on-brand)}.ui-empty-state{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.ui-empty-state h3{color:var(--color-text-primary);margin-bottom:8px}.ui-loader{gap:var(--spacing-md);color:var(--color-text-secondary);flex-direction:column;display:flex}.ui-loader-label{color:var(--color-text-secondary);font-size:.95rem}.ui-loader-skeleton{gap:var(--spacing-md);flex-direction:column;width:100%;display:flex}.ui-skeleton-metrics{gap:var(--spacing-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ui-skeleton-grid-two{gap:var(--spacing-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ui-skeleton-card,.ui-skeleton-row{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.ui-skeleton-card{gap:var(--spacing-sm);padding:var(--spacing-md);flex-direction:column;display:flex}.ui-skeleton-card--metric{min-height:96px}.ui-skeleton-card--wide{min-height:120px;margin-bottom:8px}.ui-skeleton-card--panel{min-height:210px}.ui-skeleton-row{gap:var(--spacing-md);padding:var(--spacing-md);grid-template-columns:18px minmax(80px,.5fr) minmax(180px,2fr) minmax(120px,1fr) minmax(70px,.5fr) minmax(75px,.5fr);align-items:center;display:grid}.ui-skeleton-line,.ui-skeleton-chart{background:var(--color-surface-muted);display:block;position:relative;overflow:hidden}.ui-skeleton-line{border-radius:999px;width:70%;height:12px}.ui-skeleton-line--dot{width:12px;height:12px}.ui-skeleton-line--short{width:42%}.ui-skeleton-line--medium{width:58%}.ui-skeleton-line--wide{width:88%}.ui-skeleton-line--value{width:64%;height:24px}.ui-skeleton-line--title{width:38%;height:32px}.ui-skeleton-chart{border-radius:var(--radius-md);width:100%;min-height:150px}.ui-skeleton-line:after,.ui-skeleton-chart:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-text-primary) 10%, transparent), transparent);animation:1.4s ease-in-out infinite ui-skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes ui-skeleton-shimmer{to{transform:translate(100%)}}@media (width<=900px){.ui-skeleton-metrics,.ui-skeleton-grid-two{grid-template-columns:1fr}.ui-skeleton-row{grid-template-columns:18px 1fr}.ui-loader--table .ui-skeleton-row .ui-skeleton-line:nth-child(n+4){display:none}}.ui-stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.ui-stat-label{color:var(--color-text-secondary);font-size:.85rem}.ui-stat-value{margin:var(--spacing-sm) 0;color:var(--color-text-primary);font-size:1.8rem;font-weight:800}.ui-stat-sub{color:var(--color-text-secondary);font-size:.8rem}.badge{width:fit-content;padding:var(--spacing-xs) var(--spacing-sm);border-radius:999px;align-items:center;font-size:.72rem;font-weight:600;display:inline-flex}.badge--default{background:var(--color-surface);color:var(--color-text-secondary)}.badge--success{background:var(--color-success-soft);color:var(--color-success)}.badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge--info{background:var(--color-info-soft);color:var(--color-info)}.textarea-wrapper{flex-direction:column;gap:.35rem;display:flex}.textarea-label{color:var(--text-secondary,var(--color-text-muted));font-size:.875rem;font-weight:500}.textarea-field{border:1px solid var(--border-color,var(--color-border));resize:vertical;background:var(--input-bg,var(--color-surface));width:100%;min-height:80px;color:var(--text-primary,var(--color-text-primary));border-radius:6px;padding:.625rem .875rem;font-family:inherit;font-size:.9rem;transition:border-color .15s}.textarea-field:focus{border-color:var(--primary-color,var(--color-chart-indigo));outline:none;box-shadow:0 0 0 3px #6366f11f}.textarea-field.textarea-error{border-color:var(--color-chart-red)}.textarea-error-msg{color:var(--color-chart-red);font-size:.8rem}.collapsible-module-section{background:0 0;border:none;margin:0;padding:0;display:block}.human-resources-page>section.collapsible-module-section,.human-resources-page section.collapsible-module-section,.sst-tab-panel>section.collapsible-module-section,.sst-page section.collapsible-module-section,.payroll-page>section.collapsible-module-section,.payroll-page section.collapsible-module-section,.accounting-page>section.collapsible-module-section,.accounting-page section.collapsible-module-section{background:0 0;border:none;gap:0;margin:0 0 .75rem;padding:0;display:block}.collapsible-module{border:1px solid var(--border-color,var(--color-border,#334155));background:var(--surface-card,var(--color-surface,#0f172a));border-radius:.95rem;margin-bottom:0;transition:border-color .2s,box-shadow .2s;overflow:hidden}.collapsible-module:hover{border-color:var(--color-primary,#38bdf8)}.collapsible-module-summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.25rem;list-style:none;transition:background-color .15s;display:flex}.collapsible-module-summary::-webkit-details-marker{display:none}.collapsible-module-summary::marker{display:none}.collapsible-module-summary:hover{background-color:var(--surface-subtle,#ffffff08)}.collapsible-module-left{align-items:center;gap:.85rem;min-width:0;display:flex}.collapsible-module-chevron{background:var(--surface-subtle,#ffffff0d);width:28px;height:28px;color:var(--text-secondary,var(--color-text-muted,#94a3b8));border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.4,0,.2,1),background-color .15s,color .15s;display:inline-flex}.collapsible-module.is-open .collapsible-module-chevron{color:var(--color-primary,#38bdf8);background:#38bdf81f;transform:rotate(90deg)}.collapsible-module-titles{flex-direction:column;gap:.15rem;min-width:0;display:flex}.collapsible-module-kicker{letter-spacing:.07em;text-transform:uppercase;color:var(--text-secondary,var(--color-text-muted,#94a3b8));opacity:.85;margin:0;font-size:.72rem;font-weight:700}.collapsible-module-title{color:var(--text-primary,var(--color-text,#f8fafc));margin:0;font-size:1.125rem;font-weight:700;line-height:1.3}.collapsible-module-right{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.collapsible-module-badge{background:var(--surface-subtle,#ffffff0f);color:var(--text-secondary,var(--color-text-muted,#cbd5e1));border:1px solid var(--border-color,#ffffff1a);white-space:nowrap;border-radius:9999px;align-items:center;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.collapsible-module-pill{color:var(--text-secondary,#94a3b8);background:var(--surface-subtle,#ffffff0a);white-space:nowrap;border:1px solid #0000;border-radius:.375rem;align-items:center;padding:.25rem .65rem;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.collapsible-module-summary:hover .collapsible-module-pill{color:var(--text-primary,#f8fafc);border-color:var(--border-color,#ffffff26)}.collapsible-module-body{border-top:1px solid var(--border-color,var(--color-border,#334155));gap:1.25rem;padding:1.25rem;animation:.2s ease-out collapsibleModuleSlideDown;display:grid}@keyframes collapsibleModuleSlideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.module-accordion-toolbar{background:var(--surface-card,var(--color-surface,#0f172a99));border:1px solid var(--border-color,#ffffff14);color:var(--text-secondary,#94a3b8);border-radius:.75rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.65rem 1rem;font-size:.85rem;display:flex}.module-accordion-counter{color:var(--text-secondary,#cbd5e1);font-weight:600}.module-accordion-actions{gap:.5rem;display:flex}.module-accordion-btn{background:var(--surface-subtle,#ffffff0d);border:1px solid var(--border-color,#ffffff26);color:var(--text-secondary,#cbd5e1);cursor:pointer;border-radius:.45rem;padding:.35rem .75rem;font-size:.78rem;font-weight:600;transition:all .15s}.module-accordion-btn:hover{color:var(--text-primary,#fff);border-color:var(--color-primary,#38bdf8);background:#38bdf81a}.activity-suggestion-popup{z-index:9998;border:1px solid var(--color-border);background:var(--color-surface);width:340px;color:var(--color-text-primary);border-radius:16px;gap:12px;padding:16px;display:flex;position:fixed;bottom:88px;right:24px;box-shadow:0 16px 40px #00000047}.activity-suggestion-icon{font-size:1.8rem}.activity-suggestion-content{flex-direction:column;gap:4px;display:flex}.activity-suggestion-content span{font-weight:700}.activity-suggestion-content small{color:var(--color-text-secondary)}.activity-suggestion-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.activity-suggestion-actions button{background:var(--color-primary);color:var(--color-on-brand);cursor:pointer;border:none;border-radius:999px;padding:6px 10px;font-size:.78rem}.activity-suggestion-actions button.secondary{background:var(--color-surface-muted);color:var(--color-text-secondary)}.activity-suggestion-badge{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:999px;align-items:center;padding:6px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.modules-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.modules-grid--compact{grid-template-columns:1fr}.module-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;flex-direction:column;justify-content:space-between;gap:8px;min-width:0;padding:14px;display:flex}.module-card h3{color:var(--color-text-primary);overflow-wrap:anywhere;text-transform:capitalize;margin:0 0 4px;font-size:.95rem}.module-card p{color:var(--color-text-secondary);margin:0 0 6px;font-size:.8rem}.module-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.module-card .module-switch{min-height:44px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:0 2px;font-size:.75rem;font-weight:700;display:inline-flex}.module-switch-track{box-sizing:border-box;background:var(--color-text-secondary,#64748b);border-radius:999px;align-items:center;width:42px;height:24px;padding:3px;display:inline-flex}.module-switch-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s}.module-switch[aria-checked=true] .module-switch-track{background:var(--color-primary,#2563eb)}.module-switch[aria-checked=true] .module-switch-thumb{transform:translate(18px)}.module-card .module-switch:disabled{cursor:not-allowed;opacity:.65}.module-switch:focus-visible{outline:3px solid var(--color-primary,#2563eb);outline-offset:3px}@media (prefers-reduced-motion:reduce){.module-switch-thumb{transition:none}}.mobile-drawer-overlay{z-index:998;background:#00000080;animation:.2s ease-out fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-drawer{background:var(--color-background);border-right:1px solid var(--color-border);z-index:999;-webkit-overflow-scrolling:touch;width:min(320px,86vw);max-width:100vw;height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow:hidden auto;transform:translate(-100%)}.mobile-drawer.open{transform:translate(0)}.mobile-drawer-header{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);display:flex}.mobile-drawer-brand{border-radius:var(--radius-sm);width:auto;height:48px}.mobile-drawer-user{gap:var(--spacing-xs);flex-direction:column;min-width:0;display:flex}.mobile-drawer-user strong{color:var(--color-text-primary);word-break:break-word;font-size:.95rem}.mobile-drawer-role{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.mobile-drawer-close{color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:color .2s;display:flex}.mobile-drawer-close:hover{color:var(--color-primary)}.mobile-drawer-close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:4px}.mobile-drawer-content{-webkit-overflow-scrolling:touch;min-width:0;padding:var(--spacing-md) 0;flex:1;overflow:hidden auto}.mobile-nav-section{min-width:0;padding:0 var(--spacing-sm);margin-bottom:var(--spacing-md)}.mobile-nav-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:0 var(--spacing-md);margin-bottom:var(--spacing-sm);font-size:.75rem;font-weight:600;display:block}.mobile-nav-item{align-items:center;gap:var(--spacing-sm);width:100%;min-width:0;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--color-text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;margin-bottom:4px;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.mobile-nav-item:hover{background:var(--color-surface);color:var(--color-text-primary)}.mobile-nav-item>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mobile-nav-item.active{background:var(--color-surface);color:var(--color-primary)}.mobile-nav-item:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.mobile-nav-item:active{background:var(--color-elevated)}.mobile-nav-icon{object-fit:contain;flex-shrink:0;max-width:18px;max-height:18px;width:18px!important;height:18px!important}.mobile-drawer-footer{padding:var(--spacing-md);border-top:1px solid var(--color-border);margin-top:auto}.mobile-drawer-logout{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-danger);cursor:pointer;background:0 0;font-size:.95rem;font-weight:500;transition:all .2s}.mobile-drawer-logout:hover{border-color:var(--color-danger);background:#d166661a}.mobile-drawer-logout:focus-visible{outline:2px solid var(--color-danger);outline-offset:-2px}@media (width>=1025px){.mobile-drawer,.mobile-drawer-overlay{display:none}}@media (height<=600px){.mobile-drawer{height:100vh}.mobile-drawer-content{max-height:calc(100vh - 140px)}}.sidebar{min-height:calc(100dvh - var(--app-header-height,72px));background:var(--color-background);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;align-self:stretch;width:280px;min-width:280px;display:flex;position:static;overflow:hidden}@media (width<=1024px){.sidebar{display:none}}.logo,.sidebar-brand{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-md)}.sidebar-navigation{min-height:0;padding-bottom:var(--spacing-md);flex:none;overflow:hidden visible}.sidebar-footer{padding:0 var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border);flex-shrink:0}.logo-name{color:var(--color-text-primary);margin-bottom:var(--spacing-xs);font-size:16px;font-weight:600}.logo-sub{color:var(--color-text-secondary);margin-top:2px;margin-bottom:var(--spacing-xs);font-size:13px}.sidebar-user-info{color:var(--color-text-primary);flex-direction:column;font-size:14px;display:flex}.sidebar-user-row{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.sidebar-user-info span{color:var(--color-text-secondary);font-size:13px}.logout-button{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:var(--transition);text-align:left;background:0 0;border:1px solid #0000;width:100%;font-size:13px;font-weight:500}.logout-button:hover{color:var(--color-text-primary);background:var(--color-surface)}.logout-button--header{width:auto;padding:var(--spacing-xs) var(--spacing-sm);white-space:nowrap;flex:none}.nav-section{padding:0 var(--spacing-sm);margin-bottom:var(--spacing-md)}.nav-label{white-space:nowrap;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em;align-items:center;padding:0;font-size:13px;font-weight:600;display:flex}.nav-section-toggle{width:100%;padding:0 var(--spacing-sm);border-radius:var(--radius-sm);color:inherit;font:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;display:flex}.nav-section-toggle:hover{color:var(--color-text-primary)}.nav-section-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.nav-section-chevron{margin-left:var(--spacing-sm);color:var(--color-text-secondary);font-size:12px;line-height:1}.nav-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:var(--transition);margin-bottom:4px;font-size:14px;text-decoration:none;display:flex}.nav-item:hover{background:var(--color-surface);color:var(--color-text-primary)}.nav-item.active{background:var(--color-surface);color:var(--color-primary);font-weight:500}.nav-item.coming-soon{opacity:.4;cursor:default}.nav-icon{color:currentColor;flex-shrink:0;width:18px;height:18px}.mad-icon{object-fit:contain;filter:saturate(.85);width:100%;height:100%;display:block}.nav-item.active .mad-icon,.nav-item:hover .mad-icon{filter:none}.nav-link-text{white-space:nowrap;align-items:center;display:flex}.sidebar-badge{width:fit-content;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success);color:var(--color-background);border-radius:999px;align-items:center;margin-left:auto;font-size:12px;font-weight:600;display:inline-flex}:root{--mobile-safe-bottom:env(safe-area-inset-bottom,0px);--mobile-safe-top:env(safe-area-inset-top,0px);--mobile-safe-left:env(safe-area-inset-left,0px);--mobile-safe-right:env(safe-area-inset-right,0px)}.skip-link{top:calc(var(--mobile-safe-top) + var(--spacing-sm));left:calc(var(--mobile-safe-left) + var(--spacing-sm));z-index:10000;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-lg);transition:transform .12s;position:fixed;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}.app{min-height:100dvh;padding-top:var(--app-header-height);flex-direction:column;display:flex;overflow-x:clip}.container{min-height:calc(100dvh - var(--app-header-height));background:var(--color-background);align-items:flex-start;display:flex;position:relative}.main{min-width:0;padding:var(--spacing-xl);width:100%;padding-bottom:calc(var(--spacing-xl) + var(--mobile-safe-bottom));flex:1;max-width:100vw;margin-left:0;overflow-x:hidden}.main:focus{outline:none}.main>.page-container{width:100%;max-width:none;margin:0;padding:0}@media (width<=768px){.main{padding:16px;padding-bottom:calc(16px + var(--mobile-safe-bottom) + 96px);width:100%;max-width:100vw;margin-left:0;overflow-x:hidden}.container{min-height:calc(100dvh - var(--app-header-height));width:100%;margin-left:0}.app{padding-top:var(--app-header-height)}}.page-container{max-width:1200px;padding:var(--space-5);width:100%;margin:0 auto}@media (width<=768px){.page-container{padding:var(--space-3)}}@media (width>=769px) and (width<=1024px){.page-container{padding:var(--space-4)}}@media (prefers-reduced-motion:reduce){.skip-link{transition:none}}.cookie-notice{z-index:10000;color:#f8fafc;background:#0f172a;border:1px solid #334155;border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;max-width:52rem;margin:0 auto;padding:1rem;display:flex;position:fixed;bottom:1rem;left:1rem;right:1rem;box-shadow:0 12px 32px #0f172a59}.cookie-notice h2,.cookie-notice p{margin:0}.cookie-notice p{max-width:42rem;margin-top:.35rem}.cookie-notice a{color:#7dd3fc;margin-top:.5rem;display:inline-block}.cookie-notice button{color:#0f172a;font:inherit;cursor:pointer;background:#e2e8f0;border:0;border-radius:.45rem;flex:none;padding:.65rem .9rem;font-weight:700}.cookie-notice button:focus-visible,.cookie-notice a:focus-visible{outline-offset:3px;outline:3px solid #facc15}@media (width<=640px){.cookie-notice{flex-direction:column;align-items:stretch}}
