:root{--color-primary-50: #F0EDF5;--color-primary-100: #D6CFEA;--color-primary-200: #8E8BB0;--color-primary-300: #5E6080;--color-primary-400: #3D4468;--color-primary-500: #2A3555;--color-primary-600: #1F2D48;--color-primary-700: #1B2A4A;--color-primary-800: #162240;--color-primary-900: #101A30;--color-slate-50: #FAF7F2;--color-slate-100: #F2EDE4;--color-slate-200: #E8E2DA;--color-slate-300: #D0C8BC;--color-slate-400: #9A9590;--color-slate-500: #6B6560;--color-slate-600: #524D47;--color-slate-700: #3D3832;--color-slate-800: #2A2520;--color-slate-900: #1B2A4A;--color-success-50: #E8F5EC;--color-success-100: #C8E6D0;--color-success-500: #2D8F5C;--color-success-600: #247A4B;--color-success-700: #1B653B;--color-warning-50: #FEF6E0;--color-warning-100: #FDEAB3;--color-warning-500: #D4920B;--color-warning-600: #B87D09;--color-warning-700: #9C6908;--color-danger-50: #FDEBE9;--color-danger-100: #F9D0CC;--color-danger-500: #C4392D;--color-danger-600: #A93025;--color-danger-700: #8E271E;--color-info-50: #E8ECF0;--color-info-100: #C8D2DC;--color-info-500: #3D5068;--color-info-600: #344458;--color-info-700: #2B3848;--color-accent-300: #DDB86A;--color-accent-400: #D4A84E;--color-accent-500: #C4943D;--color-accent-600: #A87B2E;--color-accent-700: #8C6524;--shadow-sm: 0 1px 2px rgba(27, 42, 74, .05);--shadow-md: 0 1px 3px rgba(27, 42, 74, .08), 0 1px 2px rgba(27, 42, 74, .04);--shadow-lg: 0 4px 12px rgba(27, 42, 74, .1);--shadow-xl: 0 8px 24px rgba(27, 42, 74, .12);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--transition-fast: .15s ease;--transition-normal: .2s ease;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg-primary: #ffffff;--bg-secondary: var(--color-slate-50);--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-inset: var(--color-slate-100);--bg-hover: var(--color-slate-50);--bg-active: var(--color-slate-100);--text-primary: var(--color-slate-800);--text-secondary: var(--color-slate-600);--text-tertiary: var(--color-slate-500);--text-muted: var(--color-slate-400);--text-heading: var(--color-slate-900);--text-on-primary: #ffffff;--border-primary: var(--color-slate-200);--border-secondary: var(--color-slate-300);--border-focus: var(--color-primary-600);--input-bg: #ffffff;--input-border: var(--color-slate-200);--input-text: var(--color-slate-800);--input-disabled-bg: var(--color-slate-100);color:var(--text-primary);background-color:var(--bg-primary)}[data-theme=dark]{color-scheme:dark;--bg-primary: #101A30;--bg-secondary: #1B2A4A;--bg-surface: #1B2A4A;--bg-elevated: #2A3555;--bg-inset: #101A30;--bg-hover: #2A3555;--bg-active: #3D4468;--text-primary: #E8E2DA;--text-secondary: #9A9590;--text-tertiary: #6B6560;--text-muted: #524D47;--text-heading: #F2EDE4;--text-on-primary: #ffffff;--border-primary: #2A3555;--border-secondary: #3D4468;--border-focus: var(--color-primary-400);--input-bg: #1B2A4A;--input-border: #2A3555;--input-text: #E8E2DA;--input-disabled-bg: #101A30;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .4);--shadow-xl: 0 8px 24px rgba(0, 0, 0, .5);--color-success-50: #0A2A18;--color-success-100: #14452A;--color-warning-50: #1A1500;--color-warning-100: #352400;--color-danger-50: #1C0505;--color-danger-100: #350A08;--color-info-50: #0A1520;--color-info-100: #152838}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:1.75em;line-height:1.2;font-weight:600;color:var(--text-heading)}h2,h3,h4{color:var(--text-primary)}a{color:var(--color-primary-600);text-decoration:none}a:hover{color:var(--color-primary-700);text-decoration:underline}button{border-radius:var(--radius-md);border:1px solid transparent;padding:.5em 1em;font-size:.875em;font-weight:500;font-family:inherit;background-color:var(--color-primary-600);color:#fff;cursor:pointer;transition:background-color var(--transition-normal),box-shadow var(--transition-normal)}button:hover{background-color:var(--color-primary-700)}button:focus,button:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:14px;line-height:1;transition:all var(--transition-normal)}.btn-icon:hover{background:var(--bg-inset);border-color:var(--border-secondary);color:var(--text-heading)}.btn-icon.btn-icon--danger,.btn-icon.btn-danger{background:transparent;border:1px solid var(--border-primary);color:var(--text-secondary)}.btn-icon.btn-icon--danger:hover,.btn-icon.btn-danger:hover{background:var(--color-danger-50);border-color:var(--color-danger-500);color:var(--color-danger-700)}.btn-icon.btn-icon--success:hover{background:var(--color-success-50);border-color:var(--color-success-500);color:var(--color-success-700)}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;line-height:1;transition:all var(--transition-normal)}.modal-close:hover{background:var(--bg-inset);color:var(--text-heading)}.mfa-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.mfa-modal{background:var(--bg-surface);border-radius:8px;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;max-width:450px;width:100%;overflow:hidden}.mfa-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;display:flex;align-items:center;justify-content:space-between}.mfa-modal-header h2{margin:0;font-size:20px;font-weight:600}.mfa-modal-close{background:transparent;border:none;color:#fff;font-size:32px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.mfa-modal-close:hover:not(:disabled){background-color:#ffffff1a}.mfa-modal-close:disabled{opacity:.5;cursor:not-allowed}.mfa-modal-body{padding:24px}.mfa-modal-description{margin:0 0 20px;color:var(--text-secondary);font-size:14px;text-align:center}.mfa-form{display:flex;flex-direction:column;gap:16px}.mfa-code-input{width:100%;padding:14px 16px;font-size:24px;text-align:center;letter-spacing:8px;border:2px solid var(--input-border);border-radius:8px;font-family:Courier New,monospace;background:var(--input-bg);color:var(--input-text);transition:border-color .2s}.mfa-code-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.mfa-code-input:disabled{background-color:var(--input-disabled-bg);cursor:not-allowed}.mfa-error{padding:12px 16px;background-color:#fff5f5;border:1px solid #feb2b2;border-radius:6px;color:#c53030;font-size:14px;text-align:center}.mfa-verify-button{padding:14px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;display:flex;align-items:center;justify-content:center;gap:8px}.mfa-verify-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.mfa-verify-button:active:not(:disabled){transform:translateY(0)}.mfa-verify-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.mfa-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:mfa-spin .6s linear infinite}@keyframes mfa-spin{to{transform:rotate(360deg)}}.mfa-toggle-backup{padding:10px 16px;background:transparent;color:#667eea;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background-color .2s;text-decoration:underline}.mfa-toggle-backup:hover:not(:disabled){background-color:var(--bg-inset)}.mfa-toggle-backup:disabled{opacity:.5;cursor:not-allowed}@media(max-width:480px){.mfa-modal{margin:0}.mfa-modal-header{padding:20px}.mfa-modal-header h2{font-size:18px}.mfa-modal-body{padding:20px}.mfa-code-input{font-size:20px;letter-spacing:6px}}.language-selector{position:relative}.language-selector-button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;color:inherit;transition:background-color .2s,border-color .2s}.language-selector-button:hover{background-color:var(--bg-inset)}.language-selector-button:focus{outline:2px solid var(--color-primary-600);outline-offset:2px}.language-icon{font-size:1rem}.language-name{min-width:60px}.language-arrow{font-size:.625rem;margin-left:.25rem}.language-dropdown{position:absolute;top:100%;right:0;margin-top:.25rem;padding:.25rem 0;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;list-style:none;min-width:120px;z-index:1000;color:var(--text-primary)}.language-option{display:block;width:100%;padding:.5rem 1rem;background:transparent;border:none;text-align:left;cursor:pointer;font-size:.875rem;color:var(--text-primary);transition:background-color .2s}.language-option:hover{background-color:var(--bg-hover)}.language-option:focus{outline:none;background-color:var(--bg-hover)}.language-option--active{background-color:var(--color-primary-100);font-weight:500}.language-option--active:hover{background-color:var(--color-primary-100)}.notification-center{position:relative;display:inline-block}.notification-bell-button{position:relative;background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.notification-bell-button:hover{background-color:#0000000d}.bell-icon{font-size:1.5rem;display:block}.notification-badge{position:absolute;top:.25rem;right:.25rem;background-color:var(--color-danger-500);color:#fff;border-radius:10px;padding:.125rem .375rem;font-size:.75rem;font-weight:600;min-width:18px;text-align:center;animation:badge-pulse 2s infinite}@keyframes badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.notification-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 10px 40px #00000026;width:400px;max-height:600px;display:flex;flex-direction:column;z-index:1000}.notification-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-primary)}.notification-dropdown-header h3{margin:0;font-size:1.125rem;font-weight:600}.btn-text-link{background:none;border:none;color:var(--color-primary-600);cursor:pointer;font-size:.875rem;padding:.25rem .5rem;border-radius:4px;transition:background-color .2s}.btn-text-link:hover{background-color:#3182ce1a}.notification-dropdown-body{flex:1;overflow-y:auto;max-height:400px}.notification-dropdown-footer{border-top:1px solid var(--border-primary);padding:.75rem;text-align:center}.btn-view-all{display:block;width:100%;padding:.5rem;background-color:var(--bg-secondary);color:var(--color-primary-600);text-decoration:none;border-radius:4px;font-weight:500;transition:background-color .2s}.btn-view-all:hover{background-color:var(--bg-inset)}.notification-list{display:flex;flex-direction:column}.notification-list-loading,.notification-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-tertiary)}.notification-list-empty .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.notification-list-empty p{margin:0;font-size:.875rem}.notification-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-bottom:1px solid var(--border-primary);cursor:pointer;transition:background-color .2s;position:relative}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:var(--bg-hover)}.notification-item.unread{background-color:var(--color-primary-100)}.notification-item.unread:hover{background-color:var(--color-primary-300)}.notification-item.priority-urgent{border-left:4px solid var(--color-danger-500)}.notification-item.priority-high{border-left:4px solid var(--color-warning-500)}.notification-icon{font-size:1.5rem;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-header{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.25rem}.notification-title{margin:0;font-size:.875rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-item.unread .notification-title{font-weight:700}.notification-time{font-size:.75rem;color:var(--text-tertiary);white-space:nowrap}.notification-message{margin:0;font-size:.875rem;color:var(--text-tertiary);line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notification-actions{display:none;gap:.25rem;flex-shrink:0}.notification-item:hover .notification-actions{display:flex}.notification-action-btn{background:none;border:none;cursor:pointer;padding:.25rem .5rem;font-size:1rem;color:var(--text-tertiary);border-radius:4px;transition:all .2s}.notification-action-btn:hover{background-color:var(--bg-inset);color:var(--text-primary)}.notification-delete-btn:hover{background-color:var(--color-danger-100);color:var(--color-danger-500)}.notifications-page{max-width:1200px;margin:0 auto;padding:2rem}.notifications-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.notifications-page-header h1{margin:0;font-size:2rem;font-weight:700}.notifications-toolbar{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.filter-group{display:flex;gap:.5rem;align-items:center}.filter-select{padding:.5rem .75rem;border:1px solid var(--input-border);border-radius:4px;font-size:.875rem;background-color:var(--input-bg);color:var(--input-text);cursor:pointer}.filter-select:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 3px #3182ce1a}.notifications-page-content{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:8px;overflow:hidden}.notifications-page .notification-item{border-radius:0}.notifications-empty{text-align:center;padding:4rem 2rem;color:var(--text-tertiary)}.notifications-empty .empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.notifications-empty h3{margin:0 0 .5rem;font-size:1.25rem;color:var(--text-primary)}.notifications-empty p{margin:0;font-size:.875rem}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-primary)}.pagination-info{font-size:.875rem;color:var(--text-tertiary)}.bulk-actions{display:flex;gap:.5rem;padding:1rem;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-tertiary)}.error-message{padding:1rem;background-color:var(--color-danger-100);border:1px solid var(--color-danger-500);border-radius:4px;color:var(--color-danger-700);margin-bottom:1rem}.spinner{border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:var(--color-primary-600);width:2rem;height:2rem;animation:spin 1s linear infinite;margin-bottom:.5rem}.notifications-tabs{display:flex;gap:0;border-bottom:2px solid var(--border-primary)}.tab-button{padding:.75rem 1.5rem;border:none;background:none;cursor:pointer;font-size:.9375rem;font-weight:500;color:var(--text-tertiary);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s}.tab-button:hover{color:var(--text-primary)}.tab-button.active{color:var(--color-primary-600);border-bottom-color:var(--color-primary-600)}.notification-preferences{margin-top:1.5rem}.preferences-header{margin-bottom:2rem}.preferences-header h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.preferences-description{margin:0;color:var(--text-tertiary);font-size:.875rem;line-height:1.5}.preference-category{margin-bottom:2rem}.category-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-primary)}.preference-table{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:8px;overflow:hidden}.preference-table-header{display:grid;grid-template-columns:1fr 80px 80px 160px;gap:1rem;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);font-size:.75rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.preference-row{display:grid;grid-template-columns:1fr 80px 80px 160px;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-primary);align-items:center;transition:opacity .2s}.preference-row:last-child{border-bottom:none}.preference-row.saving{opacity:.6;pointer-events:none}.pref-col-type .type-label{font-size:.875rem;color:var(--text-secondary)}.pref-col-toggle{display:flex;justify-content:center}.pref-col-digest{display:flex;justify-content:flex-start}.toggle-switch{position:relative;display:inline-block;width:40px;height:22px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background-color:var(--border-secondary);border-radius:11px;transition:background-color .3s}.toggle-slider:before{content:"";position:absolute;height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform .3s}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-primary-600)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.digest-select{padding:.375rem .625rem;border:1px solid var(--input-border);border-radius:4px;font-size:.8125rem;background-color:var(--input-bg);color:var(--input-text);cursor:pointer;width:100%}.digest-select:disabled{background-color:var(--input-disabled-bg);cursor:not-allowed;opacity:.6}.digest-select:focus{outline:none;border-color:var(--color-primary-600);box-shadow:0 0 0 2px #3182ce1a}@media(max-width:768px){.notification-dropdown{width:calc(100vw - 2rem);max-width:400px;right:-1rem}.notifications-page{padding:1rem}.notifications-page-header{flex-direction:column;align-items:flex-start;gap:1rem}.notifications-toolbar,.filter-group{flex-direction:column;align-items:stretch}.notification-item{padding:.75rem}.notification-icon{font-size:1.25rem}.notification-title,.notification-message{font-size:.8125rem}}.global-search{position:relative;width:320px;transition:width var(--transition-fast, .15s ease)}.global-search:focus-within{width:480px}.global-search-input-wrapper{position:relative;display:flex;align-items:center}.global-search-icon{position:absolute;left:10px;display:flex;align-items:center;color:var(--text-muted);pointer-events:none;z-index:1}.global-search-input{width:100%;height:36px;padding:0 32px 0 34px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md, 6px);font-size:.875rem;color:var(--input-text);outline:none;transition:all var(--transition-fast, .15s ease)}.global-search-input::placeholder{color:var(--text-muted)}.global-search-input:hover{border-color:var(--border-secondary);background:var(--bg-surface)}.global-search-input:focus{border-color:var(--color-primary-400);background:var(--bg-surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary-500) 15%,transparent)}.global-search-clear{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:var(--border-secondary);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:background-color var(--transition-fast, .15s ease)}.global-search-clear:hover{background:var(--text-muted);color:#fff}.global-search-spinner{position:absolute;right:8px;width:16px;height:16px;border:2px solid var(--border-primary);border-top-color:var(--color-primary-500);border-radius:50%;animation:global-search-spin .6s linear infinite}@keyframes global-search-spin{to{transform:rotate(360deg)}}.global-search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-xl, 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1));z-index:1100;max-height:400px;overflow-y:auto;overflow-x:hidden}.global-search-dropdown::-webkit-scrollbar{width:6px}.global-search-dropdown::-webkit-scrollbar-track{background:transparent}.global-search-dropdown::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:3px}.global-search-dropdown::-webkit-scrollbar-thumb:hover{background:var(--border-secondary)}.global-search-error{padding:12px 16px;font-size:.8125rem;color:var(--color-red-600, #dc2626);background:var(--color-red-50, #fef2f2)}.global-search-empty{padding:20px 16px;font-size:.875rem;color:var(--text-tertiary);text-align:center}.global-search-group{padding:4px 0}.global-search-group+.global-search-group{border-top:1px solid var(--border-primary)}.global-search-group-label{padding:8px 16px 4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.global-search-result{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:8px 16px;background:none;border:none;cursor:pointer;text-align:left;transition:background-color var(--transition-fast, .15s ease)}.global-search-result:hover{background:var(--bg-hover)}.global-search-result:focus-visible{outline:none;background:var(--bg-hover)}.global-search-result-header{display:flex;align-items:center;gap:8px;width:100%}.global-search-result-title{flex:1;font-size:.875rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result-description{margin-top:2px;font-size:.75rem;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.global-search-badge{flex-shrink:0;padding:2px 7px;border-radius:9999px;font-size:.6875rem;font-weight:500;white-space:nowrap}.global-search-badge--contracts{background:var(--color-blue-100, #dbeafe);color:var(--color-blue-700, #1d4ed8)}.global-search-badge--policies{background:var(--color-purple-100, #f3e8ff);color:var(--color-purple-700, #7e22ce)}.global-search-badge--incidents{background:var(--color-red-100, #fee2e2);color:var(--color-red-700, #b91c1c)}.global-search-badge--tasks{background:var(--color-amber-100, #fef3c7);color:var(--color-amber-700, #b45309)}.global-search-badge--processing-activities{background:var(--color-teal-100, #ccfbf1);color:var(--color-teal-700, #0f766e)}.global-search-badge--risk-register-entries{background:var(--color-orange-100, #ffedd5);color:var(--color-orange-700, #c2410c)}.global-search-badge--dpa-contracts{background:var(--color-green-100, #dcfce7);color:var(--color-green-700, #15803d)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.theme-toggle:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-primary)}.theme-toggle:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.theme-toggle-icon{display:block}.app-header{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 24px;background-color:var(--bg-primary);color:var(--text-primary);border-bottom:1px solid var(--border-primary)}.header-brand{display:flex;align-items:center}.brand-link{color:var(--text-heading);text-decoration:none;font-size:1.125rem;font-weight:700;letter-spacing:-.01em}.brand-link:hover{color:var(--color-primary-600);text-decoration:none}.header-search{flex:1;display:flex;justify-content:center;max-width:600px;margin:0 24px}.header-nav{display:flex;align-items:center;gap:.25rem}.user-menu{position:relative}.user-menu-button{display:flex;align-items:center;gap:8px;padding:6px 12px;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-secondary);font-size:.8125rem;cursor:pointer;transition:all var(--transition-fast)}.user-menu-button:hover{background:var(--bg-inset);border-color:var(--border-primary)}.user-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:var(--color-primary-100);color:var(--color-primary-700);border-radius:50%;font-size:.75rem;font-weight:600}.user-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-arrow{font-size:.5rem;margin-left:2px;color:var(--text-muted)}.user-menu-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:220px;background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:1000;overflow:hidden}.user-menu-info{padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.user-menu-email{display:block;font-size:.8125rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis}.user-menu-tenant{display:block;margin-top:2px;font-size:.75rem;color:var(--text-tertiary)}.user-menu-divider{margin:0;border:none;border-top:1px solid var(--border-primary)}.user-menu-item{display:block;width:100%;padding:10px 16px;background:none;border:none;font-size:.8125rem;color:var(--text-secondary);text-align:left;cursor:pointer;text-decoration:none;transition:background-color var(--transition-fast)}.user-menu-item:hover{background-color:var(--bg-hover);color:var(--text-heading);text-decoration:none}.header-nav .notification-center .notification-bell-button{background:transparent;color:var(--text-tertiary);border:1px solid transparent;border-radius:var(--radius-md)}.header-nav .notification-center .notification-bell-button:hover{background:var(--bg-inset);color:var(--text-secondary)}.header-nav .notification-center .bell-icon{color:var(--text-tertiary);font-size:1.125rem}.app-sidebar{width:240px;background-color:var(--bg-primary);border-right:1px solid var(--border-primary);min-height:calc(100vh - 56px);overflow-y:auto}.sidebar-nav{padding:8px 0 16px}.nav-section{margin-bottom:4px}.nav-section-header{padding:12px 20px 4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);-webkit-user-select:none;user-select:none}.nav-section:first-child .nav-section-header{padding-top:4px}.nav-list{list-style:none;margin:0;padding:0}.nav-item{margin:1px 8px}.nav-item-row{display:flex;align-items:center;position:relative}.nav-link{display:flex;align-items:center;gap:10px;padding:8px 12px;color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);font-size:.8125rem;transition:all var(--transition-fast);flex:1;min-width:0}.nav-link:hover{background-color:var(--bg-hover);color:var(--text-primary);text-decoration:none}.nav-link--active{background-color:var(--color-primary-50);color:var(--color-primary-700);font-weight:500}.nav-link--active:hover{background-color:var(--color-primary-100)}.nav-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;color:var(--text-muted)}.nav-link--active .nav-icon{color:var(--color-primary-600)}.nav-label{font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-fav-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;cursor:pointer;color:var(--text-muted);opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast);border-radius:var(--radius-md);flex-shrink:0;padding:0;position:absolute;right:4px}.nav-fav-btn:hover{color:var(--color-warning-500, #f59e0b);background-color:var(--bg-hover)}.nav-fav-btn--active{color:var(--color-warning-500, #f59e0b);opacity:1}.nav-item-row:hover .nav-fav-btn{opacity:1}.nav-fav-btn:focus-visible{opacity:1;outline:2px solid var(--color-primary-500);outline-offset:-2px}.nav-link--locked{opacity:.55;cursor:pointer;color:var(--text-muted);text-decoration:none;display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius-md);font-size:.8125rem;transition:all var(--transition-fast);flex:1;min-width:0;background:none;border:none;width:100%;text-align:left}.nav-link--locked:hover{opacity:.85;background-color:var(--bg-hover);color:var(--text-secondary);text-decoration:none}.nav-lock-icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;margin-left:auto;color:var(--text-muted);opacity:.7}.feedback-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1001;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.feedback-modal{background:var(--bg-surface);border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:24px;box-shadow:0 20px 60px #00000026;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.feedback-modal h2{margin:0 0 20px;font-size:1.25rem;font-weight:600;color:var(--text-heading)}.feedback-form-group{margin-bottom:16px}.feedback-form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:.875rem;color:var(--text-secondary)}.feedback-form-group input,.feedback-form-group select,.feedback-form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--input-text);border-radius:8px;font-size:.875rem;font-family:inherit;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.feedback-form-group input:focus,.feedback-form-group select:focus,.feedback-form-group textarea:focus{outline:none;border-color:var(--primary-color, var(--color-primary-600, #1F2D48));box-shadow:0 0 0 3px #1f2d481a}.feedback-form-group textarea{min-height:120px;resize:vertical}.feedback-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.feedback-btn{padding:10px 20px;border-radius:8px;font-weight:500;font-size:.875rem;cursor:pointer;border:1px solid var(--border-primary);background:var(--bg-surface);color:var(--text-secondary);transition:all .15s}.feedback-btn:hover{background:var(--bg-inset)}.feedback-btn:disabled{opacity:.5;cursor:not-allowed}.feedback-btn-primary{background:var(--primary-color, var(--color-primary-600, #1F2D48));color:#fff;border-color:var(--primary-color, var(--color-primary-600, #1F2D48))}.feedback-btn-primary:hover{opacity:.9;background:var(--primary-color, var(--color-primary-600, #1F2D48))}.feedback-btn-primary:disabled{opacity:.5;cursor:not-allowed}.feedback-success-msg{text-align:center;padding:40px 20px;color:#247a4b;font-weight:500;display:flex;flex-direction:column;align-items:center;gap:12px}.feedback-success-icon{width:48px;height:48px;border-radius:50%;background:#c8e6d0;display:flex;align-items:center;justify-content:center;color:#247a4b}.feedback-error-msg{color:#a93025;font-size:.875rem;margin-bottom:12px;padding:8px 12px;background:#fdebe9;border-radius:6px;border:1px solid #F9D0CC}.feedback-widget-btn{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--primary-color, var(--color-primary-600, #1F2D48));color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;z-index:1000;transition:transform .2s,box-shadow .2s}.feedback-widget-btn:hover{transform:scale(1.05);box-shadow:0 6px 16px #0003}.feedback-widget-btn:active{transform:scale(.95)}.ai-chat-widget-btn{position:fixed;bottom:90px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--color-primary-600);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);z-index:1000;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.ai-chat-widget-btn:hover{transform:scale(1.05);box-shadow:var(--shadow-xl);background:var(--color-primary-700)}.ai-chat-widget-btn:active{transform:scale(.95)}.ai-chat-panel{position:fixed;bottom:90px;right:24px;width:420px;max-height:calc(100vh - 120px);background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:999;display:flex;flex-direction:column;animation:slideUpPanel .3s ease-out;overflow:hidden}@keyframes slideUpPanel{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-chat-panel__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--color-primary-600);color:#fff;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.ai-chat-panel__header-title{display:flex;align-items:center;gap:10px;font-weight:600;font-size:1rem}.ai-chat-panel__header-actions{display:flex;gap:8px}.ai-chat-panel__header-btn{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast)}.ai-chat-panel__header-btn:hover{background:#ffffff4d}.ai-chat-panel__header-btn--close{margin-left:4px}.ai-chat-panel__messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;background:var(--bg-secondary)}.ai-chat-panel__welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px;color:var(--text-tertiary)}.ai-chat-panel__welcome svg{color:var(--color-primary-400);margin-bottom:16px}.ai-chat-panel__welcome h3{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.ai-chat-panel__welcome p{margin:0;font-size:.875rem;color:var(--text-tertiary)}.ai-chat-panel__message{display:flex;gap:10px;animation:fadeInMessage .3s ease-out}@keyframes fadeInMessage{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-chat-panel__message--user{flex-direction:row-reverse}.ai-chat-panel__message-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-chat-panel__message--user .ai-chat-panel__message-avatar{background:var(--color-primary-600);color:#fff}.ai-chat-panel__message--assistant .ai-chat-panel__message-avatar{background:var(--border-secondary);color:var(--text-secondary)}.ai-chat-panel__message-bubble{max-width:75%;display:flex;flex-direction:column}.ai-chat-panel__message-content{padding:12px 16px;border-radius:var(--radius-lg);font-size:.875rem;line-height:1.5;word-wrap:break-word}.ai-chat-panel__message--user .ai-chat-panel__message-content{background:var(--color-primary-600);color:#fff;border-bottom-right-radius:4px}.ai-chat-panel__message--assistant .ai-chat-panel__message-content{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-primary);border-bottom-left-radius:4px}.ai-chat-panel__message-content code{background:#0000001a;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:.85em}.ai-chat-panel__message--user .ai-chat-panel__message-content code{background:#fff3}.ai-chat-panel__message-content pre{background:var(--color-slate-800);color:var(--color-slate-100);padding:12px;border-radius:var(--radius-md);overflow-x:auto;margin:8px 0}.ai-chat-panel__message-content pre code{background:none;padding:0;color:inherit}.ai-chat-panel__message-content ul{margin:8px 0;padding-left:20px}.ai-chat-panel__message-content li{margin:4px 0}.ai-chat-panel__message-content strong{font-weight:600}.ai-chat-panel__message-content em{font-style:italic}.ai-chat-panel__message-loading{display:flex;gap:6px;padding:12px 16px;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:var(--radius-lg);border-bottom-left-radius:4px}.ai-chat-panel__message-loading span{width:8px;height:8px;border-radius:50%;background:var(--text-muted);animation:loadingDot 1.4s infinite ease-in-out both}.ai-chat-panel__message-loading span:nth-child(1){animation-delay:-.32s}.ai-chat-panel__message-loading span:nth-child(2){animation-delay:-.16s}@keyframes loadingDot{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.ai-chat-panel__error{display:flex;align-items:center;gap:8px;padding:12px 16px;margin:0 20px;background:var(--color-danger-50);color:var(--color-danger-700);border:1px solid var(--color-danger-200);border-radius:var(--radius-md);font-size:.875rem}.ai-chat-panel__error svg{flex-shrink:0}.ai-chat-panel__input-form{display:flex;gap:12px;padding:16px 20px;background:var(--bg-surface);border-top:1px solid var(--border-primary)}.ai-chat-panel__input{flex:1;padding:10px 14px;border:1px solid var(--input-border);border-radius:var(--radius-lg);font-size:.875rem;font-family:inherit;background:var(--input-bg);color:var(--input-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ai-chat-panel__input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #2a35551a}.ai-chat-panel__input:disabled{background:var(--input-disabled-bg);cursor:not-allowed}.ai-chat-panel__send-btn{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--color-primary-600);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast);flex-shrink:0}.ai-chat-panel__send-btn:hover:not(:disabled){background:var(--color-primary-700)}.ai-chat-panel__send-btn:active:not(:disabled){transform:scale(.95)}.ai-chat-panel__send-btn:disabled{opacity:.5;cursor:not-allowed}.ai-chat-panel__conversation-list{flex:1;overflow-y:auto;padding:20px;background:var(--bg-surface)}.ai-chat-panel__conversation-list h3{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--text-primary)}.ai-chat-panel__conversation-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ai-chat-panel__conversation-list li{display:flex;align-items:center;gap:8px;min-width:0}.ai-chat-panel__conversation-item{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);font-size:.875rem;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);text-align:left;min-width:0;overflow:hidden}.ai-chat-panel__conversation-item:hover{background:var(--bg-hover);border-color:var(--border-secondary)}.ai-chat-panel__conversation-item-title{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.ai-chat-panel__conversation-item-date{font-size:.75rem;color:var(--text-tertiary)}.ai-chat-panel__conversation-item-delete{width:32px;height:32px;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-secondary);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.ai-chat-panel__conversation-item-delete:hover{background:var(--color-danger-50);border-color:var(--color-danger-300);color:var(--color-danger-600)}.ai-chat-panel__conversation-list-empty{text-align:center;color:var(--text-tertiary);font-size:.875rem;padding:40px 20px}.ai-chat-panel__sources{margin-top:8px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.ai-chat-panel__sources-label{display:block;font-size:.7rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.ai-chat-panel__sources-list{display:flex;flex-wrap:wrap;gap:6px}.ai-chat-panel__source-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:var(--radius-full, 9999px);font-size:.75rem;color:var(--color-primary-700);cursor:pointer;transition:all var(--transition-fast);max-width:100%}.ai-chat-panel__source-chip:hover{background:var(--color-primary-50);border-color:var(--color-primary-300);color:var(--color-primary-800)}.ai-chat-panel__source-chip--static{cursor:default;color:var(--text-tertiary)}.ai-chat-panel__source-chip--static:hover{background:var(--bg-surface);border-color:var(--border-primary);color:var(--text-tertiary)}.ai-chat-panel__source-chip-icon{font-size:.85rem;flex-shrink:0;display:inline-flex;align-items:center;color:inherit}.ai-chat-panel__source-chip-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-chat-panel__context-badge{margin-top:4px;font-size:.65rem;color:var(--text-muted);font-style:italic}.ai-chat-panel__actions{display:flex;flex-direction:column;gap:6px;margin-top:8px}.ai-chat-panel__action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-primary, var(--color-primary-500, #2A3555));border-radius:6px;background:var(--color-primary-light, var(--color-primary-50, #F0EDF5));color:var(--color-primary, var(--color-primary-500, #2A3555));font-size:13px;cursor:pointer;transition:background .15s;width:fit-content}.ai-chat-panel__action-btn:hover{background:var(--color-primary, var(--color-primary-500, #2A3555));color:#fff}.ai-chat-panel__entity-list{display:flex;flex-direction:column;gap:4px;margin-top:4px}.ai-chat-panel__entity-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border-primary, #E8E2DA);border-radius:6px;background:var(--bg-secondary, #FAF7F2);cursor:pointer;transition:all .15s;text-align:left;font-size:13px}.ai-chat-panel__entity-item:hover{border-color:var(--color-primary, var(--color-primary-500, #2A3555));background:var(--color-primary-50, #F0EDF5)}.ai-chat-panel__entity-item-icon{flex-shrink:0;color:var(--text-tertiary, #6B6560)}.ai-chat-panel__entity-item-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-chat-panel__entity-item-status{flex-shrink:0;font-size:11px;padding:2px 6px;border-radius:4px;background:var(--bg-inset, #E8E2DA);color:var(--text-secondary, #524D47)}.ai-chat-panel__entity-item-status--active,.ai-chat-panel__entity-item-status--approved{background:#c8e6d0;color:#1b653b}.ai-chat-panel__entity-item-status--draft{background:#fdeab3;color:#92400e}.ai-chat-panel__entity-more{padding:6px;border:none;background:transparent;color:var(--color-primary, var(--color-primary-500, #2A3555));font-size:13px;cursor:pointer;text-align:center}.ai-chat-panel__entity-more:hover{text-decoration:underline}.ai-chat-panel__task-created{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;background:#c8e6d0;color:#1b653b;font-size:13px}.ai-chat-panel__action-link{border:none;background:none;color:#247a4b;text-decoration:underline;cursor:pointer;font-size:13px;padding:0;margin-left:auto}.ai-chat-panel__action-link:hover{color:#1b653b}.ask-ai-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--color-primary, var(--color-primary-500, #2A3555));border-radius:6px;background:var(--bg-surface, white);color:var(--color-primary, var(--color-primary-500, #2A3555));font-size:13px;cursor:pointer;transition:all .15s}.ask-ai-btn:hover{background:var(--color-primary, var(--color-primary-500, #2A3555));color:#fff}.ask-ai-btn--icon{padding:6px;border-radius:50%}@media(max-width:768px){.ai-chat-panel{width:calc(100vw - 32px);max-height:calc(100vh - 120px);bottom:80px;right:16px}.ai-chat-widget-btn{bottom:16px;right:16px}}@media(max-width:480px){.ai-chat-panel{width:100vw;max-height:100vh;bottom:0;top:0;right:0;border-radius:0}.ai-chat-widget-btn{bottom:16px;right:16px}.ai-chat-panel__header{border-radius:0}.ai-chat-panel__message-bubble{max-width:85%}}.trial-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-radius:6px;margin-bottom:16px;background-color:#fef3c7;border:1px solid #f59e0b;color:#92400e}.trial-banner--urgent{background-color:#fee2e2;border-color:#ef4444;color:#991b1b}.trial-banner__text{font-size:14px;font-weight:500;flex:1}.trial-banner__button{padding:6px 14px;font-size:13px;font-weight:600;border:none;border-radius:4px;cursor:pointer;background-color:#d97706;color:#fff;white-space:nowrap;transition:background-color .2s;flex-shrink:0}.trial-banner--urgent .trial-banner__button{background-color:#dc2626}.trial-banner__button:hover{opacity:.9}.trial-expired-overlay{position:absolute;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:500;padding:24px}.trial-expired-card{background:var(--bg-surface, #fff);border-radius:12px;box-shadow:0 8px 32px #0000003d;max-width:480px;width:100%;padding:40px 36px;text-align:center}.trial-expired-card__icon{font-size:48px;margin-bottom:16px;line-height:1;display:block}.trial-expired-card__title{margin:0 0 12px;font-size:22px;font-weight:700;color:var(--text-primary, #111827)}.trial-expired-card__subtitle{margin:0 0 32px;font-size:15px;color:var(--text-secondary, #6b7280);line-height:1.5}.trial-expired-card__actions{display:flex;flex-direction:column;gap:12px}.trial-expired-card__btn-primary{padding:12px 24px;font-size:15px;font-weight:600;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:opacity .2s}.trial-expired-card__btn-primary:hover{opacity:.9}.trial-expired-card__btn-secondary{padding:10px 24px;font-size:14px;font-weight:500;background:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border-color, #d1d5db);border-radius:8px;cursor:pointer;transition:background-color .2s}.trial-expired-card__btn-secondary:hover{background-color:var(--bg-inset, #f3f4f6)}@media(max-width:480px){.trial-expired-card{padding:28px 20px}.trial-expired-card__title{font-size:19px}}.ow-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.ow-modal{background:var(--color-surface, #fff);border-radius:12px;box-shadow:0 20px 60px #0003;width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.ow-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--color-border, #e5e7eb);gap:1rem}.ow-close-btn{background:none;border:none;cursor:pointer;color:var(--color-text-muted, #6b7280);font-size:1.1rem;padding:.25rem;line-height:1;border-radius:4px;transition:background .15s;flex-shrink:0}.ow-close-btn:hover{background:var(--color-hover, #f3f4f6);color:var(--color-text, #111827)}.ow-progress{display:flex;align-items:center;gap:.75rem;flex:1}.ow-progress__bar{display:flex;gap:4px;flex:1}.ow-progress__segment{height:4px;border-radius:2px;flex:1;background:var(--color-border, #e5e7eb);transition:background .3s}.ow-progress__segment--done{background:var(--color-primary, #2563eb)}.ow-progress__segment--active{background:var(--color-primary-light, #93c5fd)}.ow-progress__label{font-size:.75rem;color:var(--color-text-muted, #6b7280);white-space:nowrap}.ow-content{flex:1;overflow-y:auto;padding:1.5rem}.ow-step{display:flex;flex-direction:column;gap:1rem}.ow-step__icon{font-size:2.5rem;line-height:1}.ow-step__title{font-size:1.375rem;font-weight:700;color:var(--color-text, #111827);margin:0}.ow-step__subtitle{font-size:1rem;color:var(--color-text-muted, #6b7280);margin:0}.ow-step__text{font-size:.9375rem;color:var(--color-text-secondary, #374151);margin:0;line-height:1.5}.ow-field{display:flex;flex-direction:column;gap:.375rem}.ow-field__label{font-size:.875rem;font-weight:500;color:var(--color-text, #111827)}.ow-field__select,.ow-field__input{border:1px solid var(--color-border, #d1d5db);border-radius:6px;padding:.5rem .75rem;font-size:.9375rem;background:var(--color-surface, #fff);color:var(--color-text, #111827);outline:none;transition:border-color .15s;width:100%;box-sizing:border-box}.ow-field__select:focus,.ow-field__input:focus{border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.ow-field__select--small{width:auto;flex-shrink:0}.ow-topics{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.ow-topic{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;border:2px solid var(--color-border, #e5e7eb);border-radius:8px;background:var(--color-surface, #fff);cursor:pointer;text-align:left;transition:border-color .15s,background .15s;font-size:.9375rem;color:var(--color-text, #111827)}.ow-topic:hover{border-color:var(--color-primary-light, #93c5fd);background:var(--color-primary-bg, #eff6ff)}.ow-topic--selected{border-color:var(--color-primary, #2563eb);background:var(--color-primary-bg, #eff6ff);color:var(--color-primary, #2563eb);font-weight:500}.ow-topic__icon{font-size:1.25rem}.ow-topic__label{flex:1}.ow-invites{display:flex;flex-direction:column;gap:.625rem}.ow-invite-row{display:flex;align-items:center;gap:.5rem}.ow-invite-row .ow-field__input{flex:1}.ow-remove-btn{background:none;border:none;cursor:pointer;color:var(--color-text-muted, #6b7280);font-size:.875rem;padding:.25rem;border-radius:4px;flex-shrink:0;line-height:1}.ow-remove-btn:hover{color:var(--color-danger, #dc2626);background:var(--color-danger-bg, #fef2f2)}.ow-add-btn{background:none;border:1px dashed var(--color-border, #d1d5db);border-radius:6px;padding:.5rem .75rem;cursor:pointer;color:var(--color-primary, #2563eb);font-size:.875rem;text-align:left;transition:background .15s,border-color .15s}.ow-add-btn:hover{background:var(--color-primary-bg, #eff6ff);border-color:var(--color-primary-light, #93c5fd)}.ow-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.ow-action-btn{padding:.875rem 1rem;border:2px solid var(--color-primary-light, #93c5fd);border-radius:8px;background:var(--color-primary-bg, #eff6ff);color:var(--color-primary, #2563eb);font-size:.9375rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.ow-action-btn:hover,.ow-action-btn--primary{background:var(--color-primary, #2563eb);border-color:var(--color-primary, #2563eb);color:#fff}.ow-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border, #e5e7eb)}.ow-btn{padding:.5rem 1.125rem;border-radius:6px;font-size:.9375rem;font-weight:500;cursor:pointer;border:none;transition:background .15s,color .15s}.ow-btn--primary{background:var(--color-primary, #2563eb);color:#fff}.ow-btn--primary:hover:not(:disabled){background:var(--color-primary-dark, #1d4ed8)}.ow-btn--primary:disabled{opacity:.6;cursor:not-allowed}.ow-btn--ghost{background:transparent;color:var(--color-text-muted, #6b7280);border:1px solid var(--color-border, #e5e7eb)}.ow-btn--ghost:hover{background:var(--color-hover, #f9fafb);color:var(--color-text, #111827)}@media(max-width:480px){.ow-topics,.ow-actions{grid-template-columns:1fr}.ow-invite-row{flex-wrap:wrap}.ow-invite-row .ow-field__input{min-width:0;flex-basis:100%}.ow-modal{max-height:100vh;border-radius:12px 12px 0 0}.ow-overlay{align-items:flex-end;padding:0}}.app-layout{display:flex;flex-direction:column;min-height:100vh}.main-container{display:flex;flex:1}.content{flex:1;padding:24px;background-color:var(--bg-secondary);overflow-y:auto;position:relative}.lazy-route-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:12px}.lazy-route-spinner{width:40px;height:40px;border:3px solid var(--border-primary, #e2e8f0);border-top-color:var(--color-primary-600, #2563eb);border-radius:50%;animation:lazy-route-spin 1s linear infinite}.lazy-route-text{font-size:.875rem;color:var(--text-tertiary, #64748b);margin:0}@keyframes lazy-route-spin{to{transform:rotate(360deg)}}.lazy-route-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px}.lazy-route-error-text{font-size:1rem;color:var(--text-secondary, #475569);margin:0}.lazy-route-error-button{padding:8px 20px;font-size:.875rem;color:#fff;background-color:var(--color-primary-600, #2563eb);border:none;border-radius:6px;cursor:pointer;transition:background-color .2s}.lazy-route-error-button:hover{background-color:var(--color-primary-700, #1d4ed8)}#root{width:100%;min-height:100vh}.page{padding:20px 24px}.page h1{margin-top:0;margin-bottom:16px;color:var(--text-heading)}.page p{color:var(--text-secondary);line-height:1.6}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--bg-secondary)}.login-container{background:var(--bg-primary);padding:48px;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);text-align:center;max-width:400px;width:100%}.login-brand{font-size:2rem;font-weight:700;color:var(--color-primary-700);letter-spacing:-.02em;margin-bottom:8px}.login-placeholder{margin-top:24px;padding:24px;background:var(--bg-inset);border-radius:var(--radius-md)}.login-form{margin-top:24px;text-align:left}.login-error{padding:12px 16px;margin-bottom:16px;background-color:var(--color-danger-50);border:1px solid var(--color-danger-500);border-radius:var(--radius-md);color:var(--color-danger-700);font-size:.875rem}.login-error-message{margin:0}.login-error-details-wrapper{margin-top:8px}.login-error-details-toggle{background:none;border:none;padding:0;color:var(--color-danger-700);font-size:.75rem;cursor:pointer;text-decoration:underline;font-family:inherit}.login-error-details-toggle:hover{color:var(--color-danger-800)}.login-error-details{margin:8px 0 0;padding:8px;background-color:var(--color-danger-100, rgba(0, 0, 0, .05));border-radius:var(--radius-sm, 4px);font-size:.7rem;font-family:monospace;white-space:pre-wrap;word-break:break-all;color:var(--color-danger-800)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:.875rem;color:var(--text-secondary)}.form-group input:not([type=checkbox]):not([type=radio]){width:100%;padding:10px 12px;border:1px solid var(--input-border);border-radius:var(--radius-md);font-size:.875rem;color:var(--input-text);background-color:var(--input-bg);box-sizing:border-box;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.form-group input[type=checkbox],.form-group input[type=radio]{width:auto;padding:0;flex-shrink:0}.form-group input:not([type=checkbox]):not([type=radio]):focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px var(--color-primary-100)}.form-group input:not([type=checkbox]):not([type=radio]):disabled{background-color:var(--input-disabled-bg);cursor:not-allowed}.form-group input:not([type=checkbox]):not([type=radio])[aria-invalid=true]{border-color:var(--color-danger-500)}.field-error{display:block;margin-top:4px;color:var(--color-danger-600);font-size:.75rem}.field-success{display:block;margin-top:4px;color:#1b653b;font-size:.75rem}.field-hint{display:block;margin-top:4px;color:#6b6560;font-size:.75rem}.login-button{width:100%;padding:10px 16px;margin-top:8px;background-color:var(--color-primary-600);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color var(--transition-normal)}.login-button:hover:not(:disabled){background-color:var(--color-primary-700)}.login-button:disabled{background-color:var(--color-primary-300);cursor:not-allowed}.login-loading{padding:24px;color:var(--color-slate-500)}.forgot-password-link{text-align:right;margin-top:-8px;margin-bottom:8px;font-size:.8125rem}.login-success{padding:12px 16px;margin-bottom:16px;background-color:var(--color-success-50, #E8F5EC);border:1px solid var(--color-success-500, #2D8F5C);border-radius:var(--radius-md);color:var(--color-success-700, #1B653B);font-size:.875rem;text-align:left}.auth-link-text{margin-top:16px;font-size:.875rem;color:var(--color-slate-600);text-align:center}.auth-link{color:var(--color-primary-600);text-decoration:none;font-weight:500}.auth-link:hover{color:var(--color-primary-700);text-decoration:underline}.loading-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--bg-secondary)}.loading-container{text-align:center;color:var(--text-tertiary)}.loading-spinner{width:40px;height:40px;margin:0 auto 16px;border:3px solid var(--border-primary);border-top-color:var(--color-primary-600);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.not-found-page{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;text-align:center;background-color:var(--bg-secondary)}.back-link{margin-top:24px;color:var(--color-primary-600);text-decoration:none}.back-link:hover{color:var(--color-primary-700);text-decoration:underline}
