@import"https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;1,400&family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap";:root{--bg: #f7f5f0;--bg-warm: #f0ede6;--surface: #ffffff;--surface-2: #faf9f6;--border: #e5e0d8;--border-strong:#cdc6bc;--text: #1e1b16;--text-2: #6b6359;--text-3: #9c9389;--accent: #c8651a;--accent-light: #f5e8da;--accent-dark: #a04f12;--green: #3a7d44;--green-light: #e8f4ea;--red: #c0392b;--red-light: #fde8e6;--sidebar-w: 240px;--ai-panel-w: 440px;--pms-panel-w: 440px;--radius: 10px;--radius-sm: 6px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow: 0 4px 12px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.05);--shadow-lg: 0 20px 48px rgba(0,0,0,.14), 0 4px 12px rgba(0,0,0,.06)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:DM Sans,sans-serif;font-size:14px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}.loading-screen{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-2);font-size:13px;background:var(--bg)}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:18px 16px 12px;border-bottom:1px solid var(--border)}.app-brand{display:flex;align-items:center;gap:8px}.brand-mark{font-size:18px;color:var(--accent);line-height:1}.brand-name{font-family:Lora,serif;font-weight:600;font-size:16px;color:var(--text);letter-spacing:-.3px}.sidebar-add-section{padding:12px 12px 8px}.add-child-btn{width:100%;display:flex;align-items:center;gap:7px;padding:8px 12px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.add-child-btn:hover{background:var(--accent-dark)}.add-child-form{display:flex;flex-direction:column;gap:7px}.add-input{padding:8px 10px;border:1.5px solid var(--accent);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;background:var(--surface);color:var(--text);outline:none}.add-form-actions{display:flex;gap:6px}.btn-confirm,.btn-cancel{flex:1;padding:6px;border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:background .12s}.btn-confirm{background:var(--accent);color:#fff}.btn-confirm:hover{background:var(--accent-dark)}.btn-cancel{background:var(--bg-warm);color:var(--text-2)}.btn-cancel:hover{background:var(--border)}.sidebar-label{padding:8px 16px 4px;font-size:10px;font-weight:600;letter-spacing:.8px;color:var(--text-3);display:flex;align-items:center;justify-content:space-between}.sidebar-label-add-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:none;border:none;border-radius:4px;color:var(--text-2);cursor:pointer;flex-shrink:0}.sidebar-label-add-btn:hover{background:var(--border);color:var(--accent)}.sidebar-add-child-form{margin:0 8px 8px;padding:10px 12px;background:var(--surface-2, var(--bg-warm));border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:6px}.sidebar-add-child-input,.sidebar-add-child-select{width:100%;padding:7px 10px;font-family:DM Sans,sans-serif;font-size:13px;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-sm);color:var(--text-1);box-sizing:border-box}.sidebar-add-child-input:focus,.sidebar-add-child-select:focus{outline:none;border-color:var(--accent)}.sidebar-add-child-actions{display:flex;gap:6px;margin-top:2px}.sidebar-nav-btn{display:flex;align-items:center;gap:8px;width:calc(100% - 16px);margin:6px 8px 2px;padding:8px 10px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--text-2, #6b7280);background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background .12s,color .12s}.sidebar-nav-btn:hover{background:var(--bg-warm, #f3f4f6);color:var(--text, #111827)}.sidebar-nav-btn--active{background:var(--accent-light, #eff6ff);color:var(--accent, #3b82f6);font-weight:600}.sidebar-nav-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center;flex-shrink:0}.child-list{flex:1;overflow-y:auto;padding:4px 8px}.child-list-empty{padding:16px 8px;font-size:12px;color:var(--text-3);text-align:center}.sidebar-search-wrap{padding:4px 8px 6px}.sidebar-search{width:100%;box-sizing:border-box;padding:5px 10px;font-size:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);outline:none;transition:border-color .15s}.sidebar-search:focus{border-color:var(--accent)}.sidebar-search::placeholder{color:var(--text-3)}.child-avatar--icon{background:var(--bg-warm);color:var(--accent)}.child-item.active .child-avatar--icon{background:var(--accent-dark);color:#fff}.kg-item-info{flex:1;display:flex;flex-direction:column;gap:1px;overflow:hidden}.kg-item-meta{font-size:10px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-clear-filter-btn{background:none;border:none;padding:0;font-size:12px;color:var(--accent);cursor:pointer;display:inline-flex;align-items:center;gap:4px;margin-top:2px}.admin-clear-filter-btn:hover{text-decoration:underline}.child-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:background .12s;position:relative}.child-item:hover{background:var(--bg-warm)}.child-item.active{background:var(--accent-light)}.child-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.child-item.active .child-avatar{background:var(--accent-dark)}.child-name{flex:1;font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.child-subscribed-icon{flex-shrink:0;color:var(--accent);opacity:.75;margin-right:3px}.child-ctx-menu{position:fixed;z-index:1100;min-width:180px;max-width:220px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 20px #0000002e;padding:4px 0;animation:ctx-fade-in .12s ease}@keyframes ctx-fade-in{0%{opacity:0;transform:scale(.96) translateY(-4px)}to{opacity:1;transform:none}}.child-ctx-title{padding:8px 14px 7px;font-size:12px;font-weight:600;color:var(--text-2);border-bottom:1px solid var(--border);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.child-ctx-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:none;border:none;cursor:pointer;color:var(--text);font-size:13px;text-align:left;min-height:44px;transition:background .1s}.child-ctx-item:hover,.child-ctx-item:focus-visible{background:var(--bg-warm);outline:none}.child-ctx-item--danger{color:#e53e3e}.child-ctx-item--danger:hover{background:#fff5f5}.child-item-right{display:flex;align-items:center;margin-left:auto}.child-delete-btn{background:none;border:none;padding:3px;cursor:pointer;color:var(--text-3);border-radius:4px;display:flex;transition:color .12s,background .12s}.child-delete-btn:hover{color:var(--red);background:var(--red-light)}.child-active-arrow{color:var(--accent)}.org-kindergarten{margin-bottom:2px}.org-group{margin-left:4px}.org-header{display:flex;align-items:center;gap:5px;width:100%;background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);text-align:left;transition:background .12s;color:var(--text)}.org-header:hover{background:var(--bg-warm)}.org-header--kindergarten{padding:6px 8px;font-size:12px;font-weight:700;color:var(--text);letter-spacing:.01em}.org-header--group{padding:4px 8px 4px 20px;font-size:11.5px;font-weight:600;color:var(--text-2)}.org-group-header-row{display:flex;align-items:center;width:100%}.org-group-header-row .org-header{flex:1;width:auto;min-width:0}.org-group-rename-btn,.org-group-delete-btn{flex-shrink:0;background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);color:var(--text-3);display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px}.org-group-rename-btn:hover,.org-group-rename-btn:focus-visible{background:var(--bg-warm);color:var(--text)}.org-group-delete-btn:hover,.org-group-delete-btn:focus-visible{background:#fee2e2;color:var(--red, #dc2626)}.org-kg-header-row{display:flex;align-items:center;width:100%}.org-kg-header-row .org-header{flex:1;width:auto;min-width:0}.org-kg-add-group-btn{flex-shrink:0;background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);color:var(--accent);display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px}.org-kg-add-group-btn:hover,.org-kg-add-group-btn:focus-visible{background:var(--bg-warm)}.org-create-group-form{display:flex;align-items:center;gap:4px;padding:4px 8px 4px 28px}.org-create-group-input{flex:1;min-width:0;border:1px solid var(--accent);border-radius:var(--radius-sm);padding:2px 6px;outline:none;color:var(--text);background:var(--bg);height:26px;font-size:16px}@media (min-width: 640px){.org-create-group-input{font-size:11.5px;font-weight:600}}.org-group-header-row--renaming{padding:4px 8px 4px 20px;gap:4px}.org-rename-input{flex:1;font-size:11.5px;font-weight:600;border:1px solid var(--accent);border-radius:var(--radius-sm);padding:2px 6px;outline:none;min-width:0;color:var(--text);background:var(--bg);height:26px;font-size:16px}@media (min-width: 640px){.org-rename-input{font-size:11.5px}}.org-rename-save-btn,.org-rename-cancel-btn{flex-shrink:0;background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;min-width:24px;min-height:24px}.org-rename-save-btn{color:var(--green, #16a34a)}.org-rename-save-btn:hover:not(:disabled){background:#dcfce7}.org-rename-save-btn:disabled{opacity:.5;cursor:not-allowed}.org-rename-cancel-btn{color:var(--text-3)}.org-rename-cancel-btn:hover{background:var(--bg-warm)}.org-rename-error{font-size:10px;color:var(--red, #dc2626);padding:0 4px;white-space:nowrap}.org-header--unassigned{padding:6px 8px;font-size:12px;font-weight:700;color:var(--text);letter-spacing:.01em;margin-top:4px;border-top:1px solid var(--border)}.org-icon{flex-shrink:0;color:var(--text-3)}.org-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.org-count{font-size:10px;font-weight:600;color:var(--text-3);background:var(--bg-warm);border-radius:999px;padding:1px 6px;margin-left:2px}.child-item--indented,.child-list-empty--indented{padding-left:28px}.org-teacher-row{display:flex;align-items:center;gap:5px;padding:3px 8px 3px 28px;border-radius:var(--radius-sm);transition:background .12s}.org-teacher-row:hover{background:var(--bg-warm)}.org-teacher-row--readonly{cursor:default}.org-teacher-row--readonly:hover{background:transparent}.org-icon--teacher{color:#7c3aed;flex-shrink:0}.org-teacher-name{flex:1;font-size:11.5px;font-weight:500;color:var(--text-2);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-reassign-btn{background:none;border:none;padding:2px 4px;cursor:pointer;color:var(--text-3);border-radius:4px;display:flex;align-items:center;transition:color .12s,background .12s,opacity .12s;flex-shrink:0}.teacher-reassign-btn:hover{color:var(--accent);background:var(--accent-light)}@media (hover: hover){.teacher-reassign-btn{opacity:0}.org-teacher-row:hover .teacher-reassign-btn{opacity:1}}@media (hover: none){.teacher-reassign-btn{padding:8px;min-width:44px;min-height:44px;justify-content:center}}.reassign-panel{margin:4px 8px 6px 28px;padding:8px 10px;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:6px}.reassign-label{font-size:11px;font-weight:600;color:var(--text-2)}.reassign-select{width:100%;font-size:12px;font-family:DM Sans,sans-serif;padding:4px 6px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;color:var(--text);cursor:pointer}.reassign-select:focus{outline:2px solid var(--accent);outline-offset:1px}.reassign-actions{display:flex;gap:6px}.teacher-group-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:2px}.teacher-group-chip{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:2px 7px;background:var(--accent-light, #ede9fe);color:#4c1d95;border-radius:999px}.chip-remove{background:none;border:none;cursor:pointer;color:#7c3aed;font-size:13px;line-height:1;padding:0 0 0 2px;display:flex;align-items:center}.chip-remove:hover{color:#dc2626}.teacher-group-context-entry{display:inline-flex;align-items:center;gap:4px;flex-wrap:nowrap}.teacher-group-context{display:flex;align-items:center;gap:5px;padding:8px 12px 6px;font-size:11.5px;font-weight:500;color:var(--text-2);border-bottom:1px solid var(--border);flex-wrap:wrap}.teacher-group-context .org-icon{color:var(--text-3);flex-shrink:0}.teacher-group-sep{color:var(--text-3);font-size:14px;line-height:1}.sidebar-footer{padding:12px 8px;border-top:1px solid var(--border)}.sidebar-footer-row{display:flex;align-items:center;gap:6px}.sidebar-settings-wrap{position:relative}.sidebar-settings-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2, #6b7280);cursor:pointer;flex-shrink:0;transition:background .15s,color .15s,border-color .15s}.sidebar-settings-btn:hover,.sidebar-settings-btn--active{background:var(--accent-light, #eff6ff);color:var(--accent, #3b82f6);border-color:var(--accent, #3b82f6)}.sidebar-settings-popover{position:absolute;left:0;bottom:calc(100% + 6px);min-width:210px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 4px 16px #0000001a;padding:4px;z-index:200;display:flex;flex-direction:column;gap:2px}.sidebar-settings-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:none;border:none;border-radius:calc(var(--radius-sm) - 2px);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--text-1, #111827);cursor:pointer;text-align:left;transition:background .12s,color .12s}.sidebar-settings-item:hover{background:var(--accent-light, #eff6ff);color:var(--accent, #3b82f6)}.sidebar-settings-item--active{background:var(--accent-light, #eff6ff);color:var(--accent, #3b82f6);font-weight:600}.logout-btn--inline{flex:1;margin-top:0}.sidebar-user{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin-top:4px}.sidebar-user-name{font-size:.72rem;color:var(--text-2, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px}.role-badge{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:999px}.role-badge.role-admin{background:#fef3c7;color:#92400e}.role-badge.role-executive{background:#dbeafe;color:#1e40af}.role-badge.role-teacher{background:#dcfce7;color:#166534}.logout-btn{width:100%;display:flex;align-items:center;gap:7px;padding:8px 12px;margin-top:6px;background:none;border:1px solid transparent;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--text-2, #6b7280);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.logout-btn:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.settings-btn{width:100%;display:flex;align-items:center;gap:7px;padding:8px 12px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--text-2);cursor:pointer;transition:border-color .12s,color .12s,background .12s}.settings-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.main-content{flex:1;display:flex;overflow:hidden;background:var(--bg)}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-2)}.empty-icon{font-size:40px}.empty-state h2{font-family:Lora,serif;font-size:18px;color:var(--text)}.empty-state p{font-size:13px;color:var(--text-3)}.note-view{flex:1;display:flex;flex-direction:column;overflow:hidden}.note-view-header{padding:18px 28px 14px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.note-view-title-row{display:flex;align-items:center;gap:12px}.nv-back-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2, #6b7280);cursor:pointer;flex-shrink:0;transition:background .12s,color .12s,border-color .12s}.nv-back-btn:hover{background:var(--accent-light, #eff6ff);color:var(--accent, #3b82f6);border-color:var(--accent, #3b82f6)}.child-header-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center}.note-view-title{font-family:Lora,serif;font-size:22px;font-weight:600;color:var(--text);letter-spacing:-.3px}.note-view-subscribe-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;min-height:32px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;transition:background .12s,color .12s,border-color .12s;flex-shrink:0}.note-view-subscribe-btn:hover:not(:disabled){background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.note-view-subscribe-btn.active{background:var(--accent-light);color:var(--accent-dark);border-color:var(--accent)}.note-view-subscribe-btn.active:hover:not(:disabled){background:#fde8d8;color:var(--accent-dark)}.note-view-subscribe-btn:disabled{opacity:.6;cursor:not-allowed}.note-count-badge{background:var(--bg-warm);border:1px solid var(--border);border-radius:20px;padding:2px 10px;font-size:11px;color:var(--text-2);font-weight:500}.load-more-notes{display:flex;justify-content:center;padding:16px 0 8px}.ai-toggle-btn{display:flex;align-items:center;gap:7px;padding:8px 16px;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--text-2);cursor:pointer;transition:all .15s}.ai-toggle-btn:hover,.ai-toggle-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.ai-toggle-btn--danger{color:#dc2626;border-color:#fca5a5}.ai-toggle-btn--danger:hover{background:#dc2626;border-color:#dc2626;color:#fff}.child-edit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.child-edit-form{width:100%;max-width:480px;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:24px;background:var(--surface, #fff);border-radius:var(--radius, 12px);box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;gap:6px}.child-edit-form-title{font-size:13px;font-weight:600;color:var(--text-1);margin-bottom:4px}.child-edit-label{font-size:12px;font-weight:500;color:var(--text-2)}.child-edit-input,.child-edit-select{width:100%;padding:8px 10px;font-family:DM Sans,sans-serif;font-size:14px;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-sm);color:var(--text-1);box-sizing:border-box}.child-edit-input:focus,.child-edit-select:focus{outline:none;border-color:var(--accent)}.child-edit-actions{display:flex;gap:8px;margin-top:4px}.child-edit-error{font-size:12px;color:#dc2626;margin:2px 0 0}.child-edit-textarea{resize:vertical;min-height:60px}.sidebar-add-child-label{font-size:10px;font-weight:600;letter-spacing:.5px;color:var(--text-3);text-transform:uppercase;margin-top:4px}.sidebar-add-child-textarea{resize:vertical;min-height:48px}.child-info-panel{padding:10px 24px;background:var(--surface-2, var(--bg-warm));border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:14px 32px}.child-info-field{display:flex;flex-direction:column;gap:2px;min-width:160px}.child-info-label{font-size:10px;font-weight:600;letter-spacing:.5px;color:var(--text-3);text-transform:uppercase}.child-info-value{font-size:13px;font-weight:500;color:var(--text-1)}.child-info-text{font-size:13px;color:var(--text-2);white-space:pre-wrap;margin:0;line-height:1.5}.note-view-body{flex:1;display:flex;overflow:hidden}.notes-column{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:24px 28px;gap:20px}.note-composer{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);flex-shrink:0}.composer-label{padding:10px 14px 6px;font-size:11px;font-weight:600;letter-spacing:.5px;color:var(--text-3);text-transform:uppercase;border-bottom:1px solid var(--border)}.composer-textarea{width:100%;padding:12px 14px;border:none;background:none;font-family:Lora,serif;font-size:14px;line-height:1.6;color:var(--text);resize:none;outline:none}.composer-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--surface-2);border-top:1px solid var(--border)}.composer-hint{font-size:11px;color:var(--text-3);font-family:DM Mono,monospace}.composer-submit{display:flex;align-items:center;gap:6px;padding:7px 14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:background .12s}.composer-submit:hover:not(:disabled){background:var(--accent-dark)}.composer-submit:disabled{opacity:.5;cursor:not-allowed}.notes-list{display:flex;flex-direction:column;gap:0;padding-bottom:24px}.notes-loading,.notes-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:48px;color:var(--text-3);font-size:13px}.notes-empty-icon{font-size:32px}.note-card{display:flex;gap:0;animation:fadeSlideIn .3s ease both;opacity:0;animation-fill-mode:forwards}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.note-card-timeline{width:28px;display:flex;flex-direction:column;align-items:center;flex-shrink:0;padding-top:10px}.note-timeline-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);border:2px solid var(--bg);box-shadow:0 0 0 2px var(--accent);flex-shrink:0;z-index:1}.note-timeline-line{flex:1;width:1px;background:var(--border);min-height:20px;margin-top:4px}.note-card-body{flex:1;padding:8px 4px 20px 12px}.note-card-meta{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.note-date{font-size:11px;font-weight:600;color:var(--text-2);font-family:DM Sans,sans-serif}.note-time{font-size:11px;color:var(--text-3);font-family:DM Mono,monospace}.note-edited-badge{font-size:10px;background:var(--bg-warm);border:1px solid var(--border);padding:1px 6px;border-radius:3px;color:var(--text-3)}.note-updated-label{font-size:11px;color:var(--text-3);font-style:italic;margin:4px 0 0}.ai-badge{font-size:10px;background:#ede9fe;border:1px solid #a78bfa;padding:1px 6px;border-radius:3px;color:#6d28d9;font-weight:600}.analysis-timeline-dot{width:10px;height:10px;border-radius:50%;background:#8b5cf6;border:2px solid var(--bg);box-shadow:0 0 0 2px #8b5cf6;flex-shrink:0;z-index:1}.ap-timeline-dot{width:10px;height:10px;border-radius:50%;background:#2563eb;border:2px solid var(--bg);box-shadow:0 0 0 2px #2563eb;flex-shrink:0;z-index:1}.ap-badge-inline{display:inline-flex;align-items:center;padding:1px 7px;border-radius:10px;background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:600}.ap-badge-done{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--green)}.ap-timeline-content{font-size:13px;color:var(--text-1);line-height:1.6;white-space:pre-wrap;margin:2px 0 0}.ap-comment-section{margin-top:10px}.ap-comment-toggle{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid var(--border);border-radius:5px;padding:4px 9px;font-size:12px;color:var(--text-2);cursor:pointer;transition:background .15s,color .15s}.ap-comment-toggle:hover{background:var(--surface-1);color:var(--text-1)}.ap-comment-toggle.has-comments{color:var(--accent);border-color:var(--accent)}.ap-comment-thread{margin-top:8px;display:flex;flex-direction:column;gap:0}.ap-comment-loading{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2);padding:4px 0}.note-actions{display:flex;gap:4px;margin-top:8px}.note-action-btn{background:none;border:1px solid var(--border);padding:4px 8px;border-radius:4px;cursor:pointer;color:var(--text-2);display:inline-flex;align-items:center;gap:4px;font-family:DM Sans,sans-serif;font-size:12px;transition:color .12s,background .12s,border-color .12s}.note-action-btn:hover{color:var(--text);background:var(--bg-warm)}.note-action-btn.danger:hover{color:var(--red);background:var(--red-light)}.note-action-btn.success:hover{color:var(--green);background:var(--green-light)}.note-action-btn:disabled{opacity:.4;cursor:not-allowed}.note-content{font-family:Lora,serif;font-size:14px;line-height:1.7;color:var(--text);white-space:pre-wrap}.note-author{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-3)}.note-edit-textarea{width:100%;border:1.5px solid var(--accent);border-radius:var(--radius-sm);padding:8px 10px;font-family:Lora,serif;font-size:14px;line-height:1.7;color:var(--text);background:var(--surface);outline:none;resize:none}.note-edit-textarea--error{border-color:var(--red)}.note-edit-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:4px;min-height:16px;flex-wrap:wrap}.note-char-count{font-size:11px;color:var(--text-3);font-family:DM Mono,monospace}.note-char-count--over{color:var(--red);font-weight:600}.note-inline-error{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--red);margin:0}.note-error-dismiss{margin-left:auto;background:none;border:none;padding:2px;cursor:pointer;color:var(--text-3);display:flex;transition:color .12s}.note-error-dismiss:hover{color:var(--text-2)}.note-delete-confirm{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;background:var(--bg-warm, #f3f4f6);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;color:var(--text-2);flex-wrap:wrap}.note-confirm-yes{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:var(--red);color:#fff;border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:opacity .12s}.note-confirm-yes:hover:not(:disabled){opacity:.85}.note-confirm-yes:disabled{opacity:.6;cursor:not-allowed}.note-confirm-no{padding:4px 10px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;color:var(--text-2);cursor:pointer;transition:border-color .12s,background .12s}.note-confirm-no:hover:not(:disabled){background:var(--surface);border-color:var(--border-strong)}.note-confirm-no:disabled{opacity:.6;cursor:not-allowed}.composer-options{padding:4px 14px 0}.composer-comments-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-family:DM Sans,sans-serif;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.composer-comments-toggle input[type=checkbox]{accent-color:var(--accent);width:13px;height:13px;cursor:pointer}.composer-comments-toggle--locked{opacity:.6;cursor:default}.composer-comments-toggle--locked input[type=checkbox]{cursor:not-allowed}.note-comments-section{margin-top:10px;border-top:1px solid var(--border);padding-top:8px}.note-comments-toggle{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:12px;color:var(--text-3);cursor:pointer;transition:color .12s}.note-comments-toggle:hover{color:var(--accent)}.note-comments-body{margin-top:10px;display:flex;flex-direction:column;gap:8px}.note-comments-loading{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-3)}.note-comment{background:var(--bg-warm, #f9fafb);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px}.note-comment-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px}.note-comment-author{font-size:11px;font-weight:600;color:var(--text-2);font-family:DM Sans,sans-serif}.note-comment-date{font-size:11px;color:var(--text-3);font-family:DM Mono,monospace}.note-comment-action,.note-comment-delete{background:none;border:none;padding:2px;cursor:pointer;color:var(--text-3);display:flex;border-radius:3px;transition:color .12s,background .12s}.note-comment-action{margin-left:auto}.note-comment-action:hover{color:var(--accent);background:var(--accent-light)}.note-comment-delete:hover:not(:disabled){color:var(--red);background:var(--red-light)}.note-comment-delete:disabled,.note-comment-action:disabled{opacity:.4;cursor:not-allowed}.note-comment-edit{display:flex;flex-direction:column;gap:4px;margin-top:4px}.note-comment-edit-actions{display:flex;gap:6px;align-items:center}.note-comment-content{font-family:Lora,serif;font-size:13px;line-height:1.6;color:var(--text);margin:0;white-space:pre-wrap}.note-comment-compose{margin-top:4px;display:flex;flex-direction:column;gap:6px}.note-comment-textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 10px;font-family:Lora,serif;font-size:13px;line-height:1.5;color:var(--text);background:var(--surface);outline:none;resize:none;transition:border-color .12s}.note-comment-textarea:focus{border-color:var(--accent)}.note-comment-submit{align-self:flex-end;display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:background .12s}.note-comment-submit:hover:not(:disabled){background:var(--accent-dark, #2563eb)}.note-comment-submit:disabled{opacity:.5;cursor:not-allowed}.note-comment-citation{display:flex;flex-direction:column;gap:2px;border-left:3px solid var(--accent);background:var(--bg-warm);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:4px 8px;margin-bottom:6px}.note-comment-citation-author{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--accent)}.note-comment-citation-text{font-size:11px;color:var(--text-3);white-space:pre-wrap;overflow-wrap:break-word;line-height:1.4}.note-comment-reply-btn{margin-top:4px;display:inline-flex;align-items:center;gap:4px}.note-comment-compose--reply{margin-top:6px}.pms-panel{width:var(--pms-panel-w);min-width:var(--pms-panel-w);border-left:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;overflow:hidden}.pms-header{padding:12px 14px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.pms-title-row{display:flex;align-items:center;justify-content:space-between}.pms-title{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--text-1)}.pms-title svg{color:var(--accent)}.panel-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;flex-shrink:0;transition:background .15s,color .15s}.panel-close-btn:hover{background:var(--bg);color:var(--text-1)}.pms-header-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pms-date-range{display:flex;gap:8px;flex-wrap:wrap}.pms-range-label{display:flex;flex-direction:column;gap:3px;font-size:11px;font-weight:500;color:var(--text-2)}.pms-range-input{height:28px;padding:0 6px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);font-family:DM Sans,sans-serif;font-size:12px;color:var(--text-1);cursor:pointer}.pms-range-input:disabled{opacity:.5;cursor:not-allowed}.pms-action-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--text-2);cursor:pointer;transition:all .15s}.pms-action-btn:hover:not(:disabled){background:var(--surface-2, var(--bg));border-color:var(--text-3);color:var(--text-1)}.pms-action-btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.pms-action-btn--primary:hover:not(:disabled){opacity:.88}.pms-action-btn:disabled{opacity:.5;cursor:not-allowed}.pms-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px;display:flex;flex-direction:column;gap:12px}.pms-child-info{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--border)}.pms-child-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pms-child-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.pms-child-name{font-size:14px;font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pms-child-detail{font-size:12px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pms-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:32px 0;font-size:13px;color:var(--text-3)}.pms-error{display:flex;align-items:flex-start;gap:8px;padding:12px 14px;background:var(--red-bg, #fef2f2);border:1px solid var(--red-border, #fecaca);border-radius:var(--radius-sm);font-size:13px;color:var(--red, #ef4444)}.pms-error svg{flex-shrink:0;margin-top:1px}.pms-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 16px;gap:10px}.pms-empty-icon{color:var(--text-4, var(--text-3));opacity:.4}.pms-empty-title{font-size:14px;font-weight:600;color:var(--text-2);margin:0}.pms-empty-sub{font-size:13px;color:var(--text-3);margin:0;line-height:1.5}.pms-meta{display:flex;flex-direction:column;flex-wrap:wrap;gap:4px;font-size:11px;color:var(--text-3)}.pms-ai-badge{display:inline-flex;align-items:center;padding:2px 7px;background:var(--accent-light, #eff6ff);color:var(--accent);border-radius:99px;font-size:10px;font-weight:600;letter-spacing:.02em}.pms-content{font-size:13px;line-height:1.65;color:var(--text-1)}.pms-content p{margin:0 0 8px}.pms-content p:last-child{margin-bottom:0}.pms-regenerating{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--accent-light, #eff6ff);border-radius:var(--radius-sm);font-size:12px;color:var(--accent)}.ai-panel{width:var(--ai-panel-w);min-width:var(--ai-panel-w);border-left:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;overflow:hidden}.ai-panel-header{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.ai-panel-title{display:flex;align-items:center;gap:7px;font-weight:600;font-size:13px;color:var(--text)}.ai-panel-title svg{color:var(--accent)}.ai-provider-badge{font-size:10px;font-family:DM Mono,monospace;background:var(--accent-light);color:var(--accent-dark);padding:3px 8px;border-radius:20px;border:1px solid #e8c9a8}.ai-quick-prompts{padding:20px 16px;display:flex;flex-direction:column;gap:14px}.ai-welcome{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;text-align:center}.ai-welcome-icon{color:var(--accent);opacity:.6}.ai-welcome p{font-size:12px;color:var(--text-2)}.quick-prompt-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.quick-prompt-btn{padding:9px 10px;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:11.5px;color:var(--text-2);cursor:pointer;transition:all .12s;text-align:left;line-height:1.3}.quick-prompt-btn:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent-dark)}.ai-messages{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:12px}.ai-message{display:flex;gap:8px;animation:fadeSlideIn .2s ease both;opacity:0;animation-fill-mode:forwards}.ai-message.user{flex-direction:row-reverse}.ai-message-avatar{width:24px;height:24px;border-radius:50%;background:var(--accent-light);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-message-bubble{max-width:85%;padding:9px 13px;border-radius:var(--radius);font-size:13px;line-height:1.6}.ai-message.ai .ai-message-bubble{background:var(--bg-warm);border:1px solid var(--border);color:var(--text);border-radius:2px var(--radius) var(--radius) var(--radius)}.ai-message.user .ai-message-bubble{background:var(--accent);color:#fff;border-radius:var(--radius) 2px var(--radius) var(--radius)}.ai-thinking{display:flex;gap:5px;align-items:center;padding:12px 16px!important}.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.4;animation:dotPulse 1.2s ease-in-out infinite}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,to{opacity:.2;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.ai-error{display:flex;align-items:flex-start;gap:7px;padding:10px 13px;background:var(--red-light);border:1px solid #f4c4bf;border-radius:var(--radius-sm);color:var(--red);font-size:12px;line-height:1.5}.ai-input-footer{display:flex;flex-direction:column;border-top:1px solid var(--border);background:var(--surface-2);flex-shrink:0}.ai-comments-toggle{display:inline-flex;align-items:center;gap:6px;padding:7px 14px 0;font-size:11px;font-family:DM Sans,sans-serif;color:var(--text-3);cursor:pointer;-webkit-user-select:none;user-select:none}.ai-comments-toggle input[type=checkbox]{accent-color:var(--accent);width:12px;height:12px;cursor:pointer}.ai-comments-toggle:has(input:disabled){opacity:.5;cursor:default}.ai-input-row{display:flex;gap:7px;padding:12px 14px;align-items:flex-end}.ai-clear-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px;cursor:pointer;color:var(--text-3);display:flex;align-items:center;transition:all .12s;flex-shrink:0}.ai-clear-btn:hover{color:var(--text);background:var(--bg-warm)}.ai-input{flex:1;border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;font-family:DM Sans,sans-serif;font-size:13px;color:var(--text);background:var(--surface);resize:none;outline:none;transition:border-color .12s;line-height:1.5}.ai-input:focus{border-color:var(--accent)}.ai-input:disabled{opacity:.6}.ai-send-btn{background:var(--accent);border:none;border-radius:var(--radius-sm);padding:9px 10px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .12s;flex-shrink:0}.ai-send-btn:hover:not(:disabled){background:var(--accent-dark)}.ai-send-btn:disabled{opacity:.4;cursor:not-allowed}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--surface);border-radius:14px;width:480px;max-width:95vw;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:modalIn .2s ease both}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{padding:18px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-title{font-family:Lora,serif;font-size:18px;font-weight:600;color:var(--text)}.modal-close{background:none;border:none;padding:6px;cursor:pointer;color:var(--text-3);border-radius:6px;transition:background .12s,color .12s;display:flex}.modal-close:hover{background:var(--bg-warm);color:var(--text)}.modal-body{padding:20px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;max-height:60vh}.modal-footer{padding:14px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;background:var(--surface-2)}.settings-section{display:flex;flex-direction:column;gap:6px}.settings-group{display:flex;flex-direction:column;gap:12px;padding:14px;background:var(--bg-warm);border-radius:var(--radius);border:1px solid var(--border)}.settings-label{font-size:12px;font-weight:600;color:var(--text-2)}.settings-input{width:100%;padding:9px 11px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;color:var(--text);background:var(--surface);outline:none;transition:border-color .12s}.settings-input:focus{border-color:var(--accent)}select.settings-input{cursor:pointer}textarea.settings-input{resize:vertical;line-height:1.6;min-height:80px}.input-with-icon{position:relative}.input-with-icon .settings-input{padding-right:38px}.input-icon-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-3);padding:4px;border-radius:4px;display:flex;transition:color .12s}.input-icon-btn:hover{color:var(--text)}.settings-hint{font-size:11px;color:var(--text-3);line-height:1.5}.settings-hint a{color:var(--accent);text-decoration:none}.settings-hint a:hover{text-decoration:underline}.settings-hint code{font-family:DM Mono,monospace;background:var(--bg-warm);padding:1px 5px;border-radius:3px;font-size:11px}.provider-toggle{display:flex;gap:8px}.provider-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;background:var(--bg-warm);border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--text-2);cursor:pointer;transition:all .15s}.provider-btn:hover{border-color:var(--accent);color:var(--accent)}.provider-btn.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent-dark)}.btn-primary,.btn-secondary{display:flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;transition:all .12s;border:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-warm);color:var(--text-2);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.composer-actions{display:flex;gap:7px;align-items:center}.mic-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--text-2);cursor:pointer;transition:all .15s}.mic-btn:hover{border-color:var(--accent);color:var(--accent)}.mic-btn.active{background:#fee2e2;border-color:#ef4444;color:#ef4444;animation:micPulse 1.5s ease-in-out infinite}.composer-textarea.listening{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441f}@keyframes micPulse{0%,to{box-shadow:0 0 #ef44444d}50%{box-shadow:0 0 0 6px #ef444400}}.dictate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:300;display:flex;align-items:center;justify-content:center}.dictate-modal{background:var(--surface);border-radius:20px;padding:40px 48px;display:flex;flex-direction:column;align-items:center;gap:24px;max-width:340px;width:88%;box-shadow:0 24px 64px #00000047}.dictate-topic-label{font-size:11px;font-weight:700;color:var(--text-2);letter-spacing:.08em;text-transform:uppercase;margin:0}.dictate-rings-wrap{position:relative;width:148px;height:148px;display:flex;align-items:center;justify-content:center}.dictate-ring{position:absolute;border-radius:50%;transition:transform .07s ease-out}.dictate-ring-3{width:148px;height:148px;background:#c8651a1a}.dictate-ring-2{width:112px;height:112px;background:#c8651a2e}.dictate-ring-1{width:80px;height:80px;background:#c8651a47}.dictate-mic-circle{position:relative;width:62px;height:62px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 6px 24px #c8651a66;z-index:1;animation:dictateBreath 2s ease-in-out infinite}@keyframes dictateBreath{0%,to{box-shadow:0 6px 24px #c8651a66}50%{box-shadow:0 6px 36px #c8651ab3}}.dictate-hint{font-size:13px;color:var(--text-2);margin:0;text-align:center}.dictate-limit-banner{display:flex;align-items:flex-start;gap:8px;margin:8px 0 0;padding:10px 14px;background:#fffbeb;border:1px solid #fcd34d;border-left:3px solid #f59e0b;border-radius:var(--radius-sm, 6px);font-size:13px;color:#92400e;line-height:1.45}.dictate-limit-banner__icon{flex-shrink:0;margin-top:1px;color:#f59e0b}.dictate-limit-banner span{flex:1}.dictate-limit-banner__close{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:2px;cursor:pointer;color:#a16207;border-radius:3px;line-height:1}.dictate-limit-banner__close:hover{background:#fde68a}.dictate-error{font-size:13px;color:#ef4444;margin:0;text-align:center}.mic-btn-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.dictate-error--inline{text-align:right;max-width:260px}.dictate-stop-btn{display:flex;align-items:center;gap:8px;padding:11px 32px;background:#ef4444;border:none;border-radius:8px;color:#fff;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s;min-height:44px;min-width:44px}.dictate-stop-btn:hover{background:#dc2626}.alert-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.alert-dot.yellow{background:#f59e0b;box-shadow:0 0 0 2px #fef3c7}.alert-dot.red{background:#ef4444;box-shadow:0 0 0 2px #fee2e2}.alert-dot.ok{background:var(--green)}.alert-dot.active-plan{background:#3b82f6;box-shadow:0 0 0 2px #dbeafe}.alert-dot.addressed{background:var(--green);box-shadow:0 0 0 2px var(--green-light)}.topic-panel{flex:1;display:flex;flex-direction:column;overflow:hidden}.topic-tabs{display:flex;gap:0;padding:14px 28px 0;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.topic-tabs::-webkit-scrollbar{display:none}.topic-tab{display:flex;align-items:center;gap:7px;padding:8px 18px;background:none;border:1.5px solid transparent;border-bottom:none;border-radius:6px 6px 0 0;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--text-2);flex-shrink:0;white-space:nowrap;cursor:pointer;transition:all .15s;position:relative;bottom:-1px}.topic-tab:hover{background:var(--bg-warm);color:var(--text)}.topic-tab.active{background:var(--bg);border-color:var(--border);border-bottom-color:var(--bg);color:var(--text);font-weight:600}.topic-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;scrollbar-gutter:stable;padding:24px 28px;gap:16px}.topic-analyze-bar{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex-shrink:0;flex-wrap:wrap}.topic-analyze-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex:1;justify-content:flex-end}.topic-analyze-hint{flex:1;font-size:12px;color:var(--text-3);font-style:italic}.topic-alert-result{display:flex;align-items:flex-start;gap:8px;min-width:0}.topic-alert-result .alert-dot{margin-top:3px;flex-shrink:0}.topic-alert-texts{display:flex;flex-direction:column;gap:4px;min-width:0}.topic-alert-summary{font-size:12px;color:var(--text-2);line-height:1.5}.topic-alert-sources{display:flex;flex-direction:column;gap:5px;margin-top:4px}.topic-alert-sources-label{font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.topic-alert-source-item{display:flex;flex-direction:column;gap:2px;padding:6px 8px;background:var(--surface-2);border-left:2px solid var(--border-strong);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.source-meta{font-size:11px;color:var(--text-3)}.source-excerpt{font-size:12px;color:var(--text-2);font-style:italic;line-height:1.4}.topic-alert-suggestion{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--accent-dark);line-height:1.5}.topic-alert-suggestion-body{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.topic-alert-suggestion-label{font-weight:700;color:var(--accent-dark)}.topic-alert-suggestion ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.topic-alert-suggestion li:before{content:"• "}.topic-alert-legal{margin-top:8px;border-top:1px solid var(--border);padding-top:6px}.topic-alert-legal-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;padding:2px 0;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;color:var(--text-2);cursor:pointer;width:100%;text-align:left}.topic-alert-legal-toggle:hover{color:var(--text-1)}.topic-alert-legal-list{margin:6px 0 0;padding:0 0 0 16px;list-style:disc;display:flex;flex-direction:column;gap:0;font-size:12px;color:var(--text-2);line-height:1.5}.legal-ref-btn{background:none;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:12px;color:var(--accent, #4f7ef7);cursor:pointer;text-align:left;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;min-height:28px;display:inline-flex;align-items:center;line-height:1.5}.legal-ref-btn:hover{color:var(--accent-hover, #2d5cd4);text-decoration-style:solid}.legal-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1200;display:flex;align-items:flex-end;justify-content:center;padding:0}@media (min-width: 640px){.legal-modal-overlay{align-items:center;padding:24px}}.legal-modal{background:var(--surface, #fff);border-radius:16px 16px 0 0;width:100%;max-height:80dvh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 -4px 24px #0000002e}@media (min-width: 640px){.legal-modal{border-radius:12px;max-width:600px;max-height:75dvh;box-shadow:0 8px 40px #00000038}}.legal-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.legal-modal-title{font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;color:var(--text-1);flex:1;margin-right:12px}.legal-modal-close{background:none;border:none;font-size:18px;line-height:1;color:var(--text-2);cursor:pointer;padding:4px 8px;border-radius:6px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.legal-modal-close:hover{background:var(--surface-hover, #f1f5f9)}.legal-modal-body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 20px 24px;display:flex;flex-direction:column;gap:12px}.legal-modal-body p{font-family:DM Sans,sans-serif;font-size:13px;color:var(--text-2);line-height:1.65;margin:0;white-space:pre-line}.analysis-author-line{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.analysis-author{font-size:11px;color:var(--text-3);font-style:italic}.analysis-create-plan-row{display:none}.analysis-create-plan-btn{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;background:none;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;color:var(--text-2);cursor:pointer;transition:all .15s;min-height:26px;white-space:nowrap}.analysis-create-plan-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.topic-analyze-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--text-2);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s}@media (max-width: 768px){.topic-analyze-bar{flex-direction:column;align-items:stretch;gap:10px}.topic-analyze-btns{justify-content:flex-start}.topic-analyze-btn{align-self:flex-end}}.topic-analyze-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.topic-analyze-btn:disabled{opacity:.5;cursor:not-allowed}.topic-analyze-btn--secondary{background:var(--surface-2, #f8fafc);border-color:var(--border);color:var(--text-3);font-style:italic}.topic-analyze-btn--secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-light);font-style:normal}.mobile-topbar,.mobile-menu-btn,.sidebar-backdrop{display:none}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-3)}@media (max-width: 1024px){:root{--ai-panel-w: 300px}}@media (max-width: 768px){.sidebar{position:fixed;top:0;left:0;height:100%;z-index:200;transform:translate(-100%);transition:transform .25s ease;box-shadow:var(--shadow-lg)}.sidebar.open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:199;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.main-content{width:100%}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px;cursor:pointer;color:var(--text-2);transition:all .12s;flex-shrink:0}.mobile-menu-btn:hover{background:var(--bg-warm);color:var(--text)}.note-view-header{padding:12px 16px;gap:10px}.note-view-title{font-size:18px}.child-header-avatar{width:30px;height:30px;font-size:13px}.ai-panel,.pms-panel{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;min-width:unset;z-index:150;border-left:none;border-top:none}.notes-column{padding:14px}.composer-hint{display:none}.mobile-topbar{display:flex;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0;z-index:10;flex-shrink:0}.composer-textarea,.note-edit-textarea,.ai-input,.settings-input,.login-card input{font-size:16px}.topic-content{padding:14px}.um-actions-trigger{width:44px;height:44px}.db-follow-chip{min-height:44px;padding:8px 14px}.um-view{padding:16px 12px}.admin-view{padding:1rem}.support-inbox-layout{flex-direction:column}.support-inbox-layout.has-detail .support-table-wrap{max-width:none}}@media (max-width: 480px){.note-view-title-row{gap:8px}.note-count-badge{display:none}.ai-toggle-btn{padding:7px 10px;font-size:12px}.notes-column{padding:10px}.note-card-timeline{width:20px}.note-timeline-dot{width:8px;height:8px}.note-view-header{flex-wrap:wrap}.modal{border-radius:20px 20px 0 0;align-self:flex-end;width:100%;max-width:100%}.modal-overlay{align-items:flex-end}}.ap-tab{position:relative}.ap-badge{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;border-radius:99px;line-height:1}.ap-panel{display:flex;flex-direction:column;gap:16px}.ap-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;color:var(--text-3);font-size:13px;text-align:center}.ap-empty-icon{color:var(--green)}.ap-panel-header{display:flex;justify-content:flex-end;padding:0 0 8px}.ap-manual-form{border:1.5px dashed var(--border);border-radius:var(--radius);padding:14px;margin-bottom:4px}.ap-topic-select{display:block;width:100%;margin-top:4px;padding:7px 10px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;color:var(--text);background:var(--surface);outline:none;cursor:pointer}.ap-topic-select:focus{border-color:var(--accent)}.ap-manual-toggle-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 10px;font-size:12px;font-family:DM Sans,sans-serif;color:var(--accent);cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.ap-manual-toggle-btn:hover{background:var(--accent);color:#fff}.ap-topic-section{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:10px}.ap-topic-section.active-plan{border-color:#93c5fd;background:#eff6ff}.ap-topic-section.completed-plan{border-color:#a8d5b0;background:var(--green-light)}.ap-topic-header{display:flex;align-items:center;gap:8px}.ap-topic-label{font-weight:600;font-size:13px;color:var(--text)}.ap-topic-date{font-size:11px;color:var(--text-3);margin-left:auto}.ap-alert-delete-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--text-3);padding:4px;border-radius:4px;min-width:28px;min-height:28px;flex-shrink:0}.ap-alert-delete-btn:hover{color:var(--danger, #e53e3e);background:var(--danger-bg, #fff5f5)}.ap-topic-header:not(:has(.ap-topic-date)) .ap-alert-delete-btn{margin-left:auto}.ap-addressed-badge{font-size:11px;font-weight:600;padding:2px 7px;border-radius:99px;margin-left:auto}.ap-addressed-badge.active{color:#1d4ed8;background:#dbeafe}.ap-addressed-badge.done{color:var(--green);background:#c6e9cc}.ap-alert-summary{font-size:12px;color:var(--text-2);line-height:1.5;padding:8px 10px;background:var(--bg-warm);border-left:2px solid var(--border-strong);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.ap-toggle-btn{align-self:flex-start;background:none;border:none;padding:2px 0;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--accent);cursor:pointer;transition:opacity .15s}.ap-toggle-btn:hover{opacity:.7}.ap-alert-suggestion{font-size:12px;color:var(--accent-dark);line-height:1.5;padding:8px 10px;background:var(--accent-light);border-left:2px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;display:flex;flex-direction:column;gap:6px}.ap-alert-suggestion strong{font-weight:700}.ap-alert-suggestion ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px}.ap-alert-suggestion li:before{content:"• "}.ap-alert-sources{display:flex;flex-direction:column;gap:5px}.ap-alert-sources-label{font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.ap-alert-source-item{display:flex;flex-direction:column;gap:2px;padding:6px 8px;background:var(--surface-2);border-left:2px solid var(--border-strong);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.ap-alert-source-item .source-meta{font-size:11px;color:var(--text-3)}.ap-alert-source-item .source-excerpt{font-size:12px;color:var(--text-2);font-style:italic;line-height:1.4}.ap-form{display:flex;flex-direction:column;gap:8px}.ap-form-update{opacity:.85}.ap-form-label{font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.ap-textarea{padding:10px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;color:var(--text);background:var(--surface);resize:vertical;outline:none;transition:border-color .15s;line-height:1.5}.ap-textarea:focus{border-color:#3b82f6}.ap-form-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.ap-form-footer-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ap-level-picker{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:4px}.ap-level-btn{display:flex;align-items:center;gap:6px;padding:5px 12px;border:1.5px solid var(--border);border-radius:20px;background:var(--surface-2);font-size:12px;font-weight:500;color:var(--text-2);cursor:pointer;transition:border-color .15s,background .15s,color .15s;min-height:32px}.ap-level-btn:hover{border-color:var(--primary);color:var(--text)}.ap-level-btn--active{border-color:var(--primary);background:var(--primary-light, #e8f0ff);color:var(--primary);font-weight:600}.ap-days-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2)}.ap-days-input{width:52px;padding:4px 6px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;color:var(--text);background:var(--surface);text-align:center;outline:none}.ap-days-input:focus{border-color:#3b82f6}.ap-days-select{padding:4px 24px 4px 8px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;color:var(--text);background:var(--surface);outline:none;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ap-days-select:focus{border-color:#3b82f6}.colleague-picker{margin:8px 0 6px}.colleague-picker-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;color:var(--text-2);cursor:pointer;text-align:left;transition:border-color .15s,color .15s;min-height:36px}.colleague-picker-toggle:hover,.colleague-picker-toggle.has-selection{border-color:#3b82f6;color:var(--text)}.colleague-picker-count{background:#3b82f6;color:#fff;font-size:10px;font-weight:600;border-radius:10px;padding:2px 7px;margin-left:2px}.cp-chevron{margin-left:auto;flex-shrink:0;color:var(--text-2)}.colleague-picker-list{border:1.5px solid #3b82f6;border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);padding:4px 0;display:flex;flex-direction:column}.colleague-picker-item{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:12px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;min-height:36px;transition:background .1s}.colleague-picker-item:hover{background:var(--bg)}.colleague-picker-item input[type=checkbox]{width:15px;height:15px;min-width:15px;cursor:pointer;accent-color:#3b82f6}.colleague-picker-role{margin-left:auto;font-size:10px;color:var(--text-2);background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:1px 5px;pointer-events:none;flex-shrink:0}.ap-save-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:#2563eb;color:#fff;border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s;white-space:nowrap}.ap-save-btn:hover:not(:disabled){background:#1d4ed8}.ap-save-btn:disabled{opacity:.5;cursor:not-allowed}.ap-save-error{margin:6px 0 0;font-size:12px;color:#dc2626}.ap-cancel-btn{padding:7px 12px;background:none;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;color:var(--text-2);cursor:pointer;transition:all .15s}.ap-cancel-btn:hover{background:var(--bg-warm)}.ap-existing-plan{background:var(--surface-2);border:1.5px solid #a8d5b0;border-radius:var(--radius-sm);padding:10px 12px;display:flex;flex-direction:column;gap:6px}.ap-plan-card{background:var(--surface-2);border-radius:var(--radius-sm);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.ap-plan-card.ap-plan-active{border:1.5px solid #93c5fd;background:#f0f7ff}.ap-plan-card.ap-plan-done{border:1.5px solid #a8d5b0;background:var(--green-light)}.ap-plan-analysis{border-top:1px solid rgba(0,0,0,.07);margin-top:4px;padding-top:8px;display:flex;flex-direction:column;gap:6px}.ap-plan-card-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ap-plan-card-topic{font-weight:600;font-size:13px;color:var(--text)}.ap-existing-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ap-existing-date{font-size:11px;color:var(--text-3)}.ap-updated-date{font-style:italic}.ap-updated-tag{font-style:normal;color:var(--text-3)}.ap-followup-date{display:flex;align-items:center;gap:4px;font-size:11px;color:#2563eb;font-weight:500}.ap-followup-late{display:inline-flex;color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:var(--radius-sm);padding:3px 7px;font-weight:600;align-self:flex-start}.ap-plan-overdue-icon{margin-left:auto;color:#dc2626;display:flex;align-items:center;flex-shrink:0}.ap-existing-content{font-size:12px;color:var(--text-2);line-height:1.6;white-space:pre-wrap}.ap-schedule-trigger{display:flex;align-items:center;gap:6px;padding:6px 12px;background:none;border:1.5px dashed #93c5fd;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;color:#2563eb;cursor:pointer;transition:all .15s;align-self:flex-start}.ap-schedule-trigger:hover{background:#eff6ff;border-style:solid}.ap-schedule-form{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:#eff6ff;border:1.5px solid #93c5fd;border-radius:var(--radius-sm)}.ap-schedule-actions{display:flex;gap:8px}.followup-banners{display:flex;flex-direction:column;gap:6px;padding:0 28px 4px;flex-shrink:0}.followup-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid;font-size:12px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.followup-banner.unaddressed{background:#fffbeb;border-color:#fde68a;color:#92400e}.followup-banner.review{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.followup-banner.overdue{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.followup-banner-icon{flex-shrink:0;opacity:.8}.followup-banner-body{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.followup-banner-topic{font-weight:600;font-size:12px}.followup-banner-desc{font-size:11px;opacity:.85}.followup-banner-date{font-size:11px;font-weight:500;opacity:.9}.followup-banner-done{display:flex;align-items:center;gap:5px;padding:5px 10px;border:1.5px solid currentColor;border-radius:var(--radius-sm);background:none;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;color:inherit;cursor:pointer;opacity:.8;white-space:nowrap;flex-shrink:0;transition:opacity .15s}.followup-banner-done:hover{opacity:1}@media (max-width: 768px){.followup-banners{padding:0 16px 4px}.followup-banner{flex-wrap:wrap}.followup-banner-done{align-self:flex-end}}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary, #f5f5f5);padding:1rem}.login-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e0e0e0);border-radius:12px;padding:2.5rem 2rem;width:100%;max-width:380px;box-shadow:0 4px 24px #00000014}.login-card h1{font-size:1.4rem;font-weight:700;margin:0 0 1.75rem;text-align:center;color:var(--text-primary, #111)}.login-card label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:500;color:var(--text-secondary, #555);margin-bottom:1rem}.login-card input{padding:.6rem .75rem;border:1px solid var(--border-color, #d0d0d0);border-radius:6px;font-size:.95rem;background:var(--bg-primary, #fff);color:var(--text-primary, #111);outline:none;transition:border-color .15s}.login-card input:focus{border-color:var(--accent, #4f46e5)}.login-card button[type=submit]{width:100%;margin-top:.5rem;padding:.65rem;background:var(--accent, #4f46e5);color:#fff;border:none;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .15s}.login-card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.login-error{font-size:.85rem;color:#dc2626;margin:.25rem 0 .5rem}.login-consent{margin-top:1.25rem;padding:1.1rem;background:var(--bg-warm, #fdf8f4);border:1px solid var(--border, #e5e7eb);border-radius:8px}.login-consent-title{font-size:.95rem;font-weight:700;color:var(--text, #111);margin-bottom:.6rem}.login-consent-body{font-size:.82rem;color:var(--text-2, #555);line-height:1.55;margin-bottom:.5rem}.login-consent-actions{display:flex;gap:.6rem;margin-top:1rem}.login-consent-btn{flex:1;padding:.6rem;border-radius:6px;border:none;font-size:.88rem;font-weight:600;cursor:pointer;transition:opacity .15s}.login-consent-btn--yes{background:var(--accent, #c8651a);color:#fff}.login-consent-btn--no{background:var(--surface, #fff);color:var(--text-2, #555);border:1px solid var(--border, #d1d5db)}.login-consent-btn:hover{opacity:.85}.login-consent-status{font-size:.76rem;color:var(--text-3, #9ca3af);margin-top:.75rem;text-align:center}.login-consent-change{background:none;border:none;font-size:.76rem;color:var(--accent, #c8651a);cursor:pointer;text-decoration:underline;padding:0}.mock-credentials{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border, #e5e7eb)}.mock-credentials-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-2, #6b7280);margin-bottom:.5rem}.mock-credentials-table{width:100%;border-collapse:collapse;font-size:.8rem;color:var(--text-1, #374151)}.mock-credentials-table th{text-align:left;font-weight:600;padding:3px 6px;color:var(--text-2, #6b7280)}.mock-credentials-table td{padding:3px 6px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.78rem}.mock-credentials-table tr:first-child td{padding-top:4px}.admin-view{padding:2rem;max-width:1200px;flex:1;overflow-y:auto;min-height:0}.admin-view-header{margin-bottom:1.5rem}.admin-view-title{font-family:Lora,serif;font-size:1.4rem;font-weight:600;color:var(--text)}.admin-view-subtitle{font-size:.8rem;color:var(--text-3);margin-top:.2rem}.admin-kg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.admin-kg-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.75rem}.admin-kg-card-header{display:flex;align-items:center;gap:.5rem}.admin-kg-icon{color:var(--accent);flex-shrink:0}.admin-kg-name{font-weight:600;font-size:.95rem;color:var(--text)}.admin-kg-stats{display:flex;flex-wrap:wrap;gap:.5rem}.admin-kg-stat{display:flex;align-items:center;gap:.3rem;font-size:.78rem;color:var(--text-2);background:var(--bg-warm);padding:.2rem .55rem;border-radius:99px}.admin-kg-section-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);display:block;margin-bottom:.3rem}.admin-kg-no-exec{font-size:.8rem;color:var(--text-3);font-style:italic}.admin-kg-exec-row{display:flex;align-items:center;gap:.4rem;font-size:.82rem;padding:.15rem 0}.admin-kg-exec-icon{color:var(--text-3);flex-shrink:0}.admin-kg-exec-name{font-weight:500;color:var(--text)}.admin-kg-exec-email{color:var(--text-3);font-size:.76rem;margin-left:auto}.admin-kg-ai-usage{border-top:1px solid var(--border);padding-top:.65rem}.admin-kg-ai-stats{display:flex;gap:.5rem}.admin-kg-ai-stat{flex:1;display:flex;flex-direction:column;align-items:center;background:var(--bg-warm);border-radius:var(--radius-sm, 6px);padding:.35rem .4rem;gap:.1rem}.admin-kg-ai-stat-value{font-size:.88rem;font-weight:600;color:var(--accent);line-height:1.1}.admin-kg-ai-stat-label{font-size:.65rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.03em}.admin-create-company-bar{margin-bottom:1rem}.admin-company-section{border:1px solid var(--border);border-radius:10px;margin-bottom:.75rem;overflow:hidden;background:var(--surface)}.admin-company-header{display:flex;align-items:center;gap:.5rem;padding:.65rem .85rem;background:var(--surface-2, #f8f9fb);border-bottom:1px solid transparent}.admin-company-section:has(.admin-company-body) .admin-company-header{border-bottom-color:var(--border)}.admin-company-toggle{background:none;border:none;cursor:pointer;color:var(--text-2);display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;min-width:44px;min-height:44px;border-radius:6px}.admin-company-toggle:hover{background:var(--hover);color:var(--text-1)}.admin-company-icon{color:var(--primary, #4f46e5);flex-shrink:0}.admin-company-name{font-size:.9rem;font-weight:600;color:var(--text-1);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-company-meta{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.admin-company-stat{display:flex;align-items:center;gap:3px;font-size:.72rem;color:var(--text-2);white-space:nowrap}.admin-company-stat--cost{font-family:var(--font-mono, monospace);color:var(--text-3)}.admin-company-stat--cost-weekly{font-family:var(--font-mono, monospace);color:var(--accent, #6366f1);background:var(--accent-light, #eef2ff);border-radius:4px;padding:0 4px}.admin-kg-ai-weekly{display:flex;align-items:center;gap:.5rem;margin-top:.4rem;padding:.3rem .5rem;background:var(--accent-light, #eef2ff);border-radius:6px;flex-wrap:wrap}.admin-kg-ai-weekly-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent, #6366f1);flex:1;min-width:max-content}.admin-kg-ai-weekly-stat{font-size:.78rem;font-weight:600;color:var(--text-2);white-space:nowrap}.admin-kg-ai-weekly-stat--cost{font-family:var(--font-mono, monospace);color:var(--accent, #6366f1)}.admin-company-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.admin-company-delete-btn{background:none;border:1px solid transparent;cursor:pointer;color:var(--text-3);display:flex;align-items:center;justify-content:center;padding:4px;min-width:28px;min-height:28px;border-radius:6px;transition:color .15s,border-color .15s,background .15s}.admin-company-delete-btn:hover:not(:disabled){color:#dc2626;border-color:#dc2626;background:#fef2f2}.admin-company-delete-btn:disabled{opacity:.35;cursor:not-allowed}.admin-company-body{padding:.75rem .85rem .85rem}.admin-company-empty{font-size:.8rem;color:var(--text-3);padding:.5rem 0}.admin-create-kg-bar{margin-bottom:.65rem}.admin-inline-form{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.admin-inline-input{flex:1;min-width:0;padding:.35rem .6rem;font-size:.85rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-1)}.admin-inline-input:focus{outline:none;border-color:var(--primary, #4f46e5);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary, #4f46e5) 15%,transparent)}.admin-inline-submit{display:inline-flex;align-items:center;gap:4px;padding:.35rem .7rem;font-size:.82rem;font-weight:500;background:var(--primary, #4f46e5);color:#fff;border:none;border-radius:6px;cursor:pointer;white-space:nowrap;min-height:34px}.admin-inline-submit:disabled{opacity:.5;cursor:not-allowed}.admin-inline-cancel{display:inline-flex;align-items:center;justify-content:center;padding:.35rem;min-width:34px;min-height:34px;background:none;border:1px solid var(--border);border-radius:6px;cursor:pointer;color:var(--text-2)}.admin-inline-cancel:hover{background:var(--hover);color:var(--text-1)}.admin-inline-error{font-size:.78rem;color:#dc2626;width:100%}.admin-create-btn{display:inline-flex;align-items:center;gap:4px;padding:.38rem .8rem;font-size:.82rem;font-weight:500;background:var(--surface-2, #f8f9fb);border:1px dashed var(--border-strong, #b0b7c3);border-radius:6px;cursor:pointer;color:var(--text-2);transition:background .15s,color .15s;min-height:34px}.admin-create-btn:hover{background:var(--hover);color:var(--primary, #4f46e5);border-color:var(--primary, #4f46e5)}.admin-create-btn--sm{padding:.28rem .6rem;font-size:.76rem;min-height:28px}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .7s linear infinite}@media (max-width: 480px){.admin-company-meta{display:none}}.admin-deleted-view{display:flex;flex-direction:column;gap:2rem}.admin-deleted-loading{display:flex;align-items:center;gap:8px;color:var(--text-3);font-size:.85rem;padding:1rem 0}.admin-deleted-section{display:flex;flex-direction:column;gap:.5rem}.admin-deleted-section-title{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:.25rem}.admin-deleted-empty{font-size:.82rem;color:var(--text-3);font-style:italic;padding:.5rem 0}.admin-deleted-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.admin-deleted-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);opacity:.75}.admin-deleted-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;opacity:.75;display:flex;flex-direction:column;gap:0}.admin-deleted-card-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.admin-deleted-card-actions{display:flex;align-items:center;gap:.6rem;margin-left:auto;flex-shrink:0}.admin-deleted-item-info{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.admin-deleted-item-icon{color:var(--text-3);flex-shrink:0}.admin-deleted-item-name{font-size:.88rem;font-weight:500;color:var(--text-2);text-decoration:line-through;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-deleted-item-date{font-size:.74rem;color:var(--text-3);white-space:nowrap;margin-left:auto}.admin-deleted-item-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.admin-restore-btn{display:inline-flex;align-items:center;gap:4px;padding:.3rem .7rem;font-size:.78rem;font-weight:500;color:var(--accent);background:var(--accent-light, #ede9fe);border:1px solid var(--accent-light, #ede9fe);border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s;min-height:30px;white-space:nowrap}.admin-restore-btn:hover:not(:disabled){background:var(--accent-hover, #ddd6fe);border-color:var(--accent)}.admin-restore-btn:disabled{opacity:.5;cursor:not-allowed}.ap-summary{flex:1;overflow-y:auto;padding:2rem;max-width:860px}.ap-summary-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.ap-summary-title{font-family:Lora,serif;font-size:1.4rem;font-weight:600;color:var(--text)}.ap-summary-close{background:none;border:none;cursor:pointer;color:var(--text-3);padding:4px;border-radius:var(--radius-sm)}.ap-summary-close:hover{background:var(--bg-warm);color:var(--text)}.ap-summary-controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-bottom:1.5rem;padding:1rem 1.2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.ap-summary-control{display:flex;flex-direction:column;gap:4px}.ap-summary-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.ap-summary-select,.ap-summary-date{font-size:13px;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:5px 8px;outline:none}.ap-summary-select:focus,.ap-summary-date:focus{border-color:var(--accent)}.ap-summary-fetch-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.ap-summary-fetch-btn:hover:not(:disabled){background:var(--accent-dark)}.ap-summary-fetch-btn:disabled{opacity:.5;cursor:not-allowed}.ap-summary-error{font-size:13px;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);padding:8px 12px;margin-bottom:1rem}.ap-summary-results{display:flex;flex-direction:column;gap:1.25rem}.ap-summary-header{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.ap-summary-scope-name{font-size:1.05rem;font-weight:600;color:var(--text)}.ap-summary-range{font-size:12px;color:var(--text-3)}.ap-summary-stats{display:flex;gap:.75rem;flex-wrap:wrap}.ap-stat-card{display:flex;flex-direction:column;align-items:center;gap:2px;padding:.7rem 1.2rem;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius);min-width:80px}.ap-stat-card--done{background:var(--green-light);border-color:#a8d5b0}.ap-stat-card--active{background:#eff6ff;border-color:#bfdbfe}.ap-stat-value{font-size:1.6rem}.support-contact-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--text-2);cursor:pointer;transition:background .12s,color .12s;margin-bottom:6px}.support-contact-btn:hover{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.admin-view-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.admin-view-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem;width:100%}.admin-tabs{display:flex;flex-wrap:wrap;gap:4px;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px}.admin-tab{display:flex;align-items:center;gap:5px;padding:5px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--text-2);background:none;border:none;border-radius:4px;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.admin-tab:hover{background:var(--surface);color:var(--text)}.admin-tab.active{background:var(--surface);color:var(--accent);font-weight:600;box-shadow:var(--shadow-sm)}.support-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.support-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;overflow-y:auto}.support-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.4rem .8rem;border-bottom:1px solid var(--border)}.support-modal-title{font-family:Lora,serif;font-size:1.1rem;font-weight:600;color:var(--text)}.support-modal-close{background:none;border:none;cursor:pointer;color:var(--text-3);padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center}.support-modal-close:hover{background:var(--bg-warm);color:var(--text)}.support-form{display:flex;flex-direction:column;gap:1rem;padding:1.2rem 1.4rem 1.4rem}.support-field{display:flex;flex-direction:column;gap:5px}.support-label{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3)}.support-required{color:var(--accent)}.support-pill-row{display:flex;flex-wrap:wrap;gap:6px}.support-category-pill,.support-priority-pill{display:flex;align-items:center;gap:5px;padding:5px 11px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;border:1px solid var(--border);border-radius:99px;background:var(--bg-warm);color:var(--text-2);cursor:pointer;transition:all .12s}.support-category-pill:hover{border-color:var(--accent);color:var(--accent)}.support-category-pill.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent);font-weight:600}.support-priority-pill.active.priority-low{background:var(--green-light);border-color:var(--green);color:var(--green);font-weight:600}.support-priority-pill.active.priority-medium{background:#fef3c7;border-color:#d97706;color:#b45309;font-weight:600}.support-priority-pill.active.priority-high{background:var(--red-light);border-color:var(--red);color:var(--red);font-weight:600}.support-input{padding:8px 10px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;background:var(--surface);color:var(--text);outline:none;transition:border-color .12s}.support-input:focus{border-color:var(--accent)}.support-textarea{padding:8px 10px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;background:var(--surface);color:var(--text);outline:none;resize:vertical;transition:border-color .12s}.support-textarea:focus{border-color:var(--accent)}.support-textarea--sm{min-height:56px}.support-bug-fields{background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.75rem}.support-bug-header{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--red)}.support-error{font-size:12px;color:var(--red);background:var(--red-light);border:1px solid #fca5a5;border-radius:var(--radius-sm);padding:6px 10px}.support-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.support-cancel-btn{padding:7px 16px;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--text-2);cursor:pointer}.support-cancel-btn:hover{background:var(--border)}.support-submit-btn{display:flex;align-items:center;gap:6px;padding:7px 18px;background:var(--accent);border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;color:#fff;cursor:pointer;transition:background .12s}.support-submit-btn:hover:not(:disabled){background:var(--accent-dark)}.support-submit-btn:disabled{opacity:.5;cursor:not-allowed}.support-success{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.4rem;text-align:center}.support-success-icon{width:48px;height:48px;border-radius:50%;background:var(--green-light);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700}.support-success-title{font-family:Lora,serif;font-size:1.2rem;font-weight:600;color:var(--text)}.support-success-body{font-size:13px;color:var(--text-2);max-width:320px}.support-inbox{display:flex;flex-direction:column;gap:0;flex:1;min-height:0}.support-inbox-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.support-inbox-badge{display:inline-block;padding:2px 10px;background:var(--red-light);color:var(--red);border:1px solid #fca5a5;border-radius:99px;font-size:11px;font-weight:700}.support-inbox-empty-label{font-size:12px;color:var(--text-3)}.support-inbox-filters{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.support-filter-label{font-size:11px;color:var(--text-3);margin-right:2px}.support-filter-btn{padding:3px 10px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;border:1px solid var(--border);border-radius:99px;background:var(--bg-warm);color:var(--text-2);cursor:pointer;transition:all .12s}.support-filter-btn:hover{border-color:var(--accent);color:var(--accent)}.support-filter-btn.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.support-refresh-btn{display:flex;align-items:center;justify-content:center;padding:4px 8px;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;transition:all .12s}.support-refresh-btn:hover{background:var(--bg-warm);color:var(--text)}.support-inbox-error{font-size:13px;color:var(--red);padding:8px 0}.support-inbox-loading{font-size:13px;color:var(--text-3);padding:8px 0}.support-inbox-empty{font-size:13px;color:var(--text-3);padding:2rem 0;text-align:center}.support-inbox-layout{display:flex;gap:1rem;align-items:flex-start;min-height:0}.support-table-wrap{flex:1;overflow-x:auto;min-width:0}.support-inbox-layout.has-detail .support-table-wrap{max-width:55%}.support-table{width:100%;border-collapse:collapse;font-size:12px}.support-th{text-align:left;padding:7px 10px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);background:var(--bg-warm);border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}.support-th.sortable{cursor:pointer}.support-th.sortable:hover{color:var(--text)}.support-tr{border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.support-tr:hover{background:var(--bg-warm)}.support-tr.selected{background:var(--accent-light)}.support-tr.resolved-row td{opacity:.55}.support-td{padding:8px 10px;vertical-align:middle}.support-td-subject{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--text)}.support-td-date{font-size:11px;color:var(--text-3);white-space:nowrap}.status-badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}.status-open{background:var(--red-light);color:var(--red);border:1px solid #fca5a5}.status-inprogress{background:#fef3c7;color:#b45309;border:1px solid #fcd34d}.status-resolved{background:var(--green-light);color:var(--green);border:1px solid #a8d5b0}.priority-badge{display:inline-block;padding:2px 7px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}.priority-high{background:var(--red-light);color:var(--red);border:1px solid #fca5a5}.priority-medium{background:#fef3c7;color:#b45309;border:1px solid #fcd34d}.priority-low{background:var(--bg-warm);color:var(--text-3);border:1px solid var(--border)}.category-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;white-space:nowrap}.cat-bug{color:var(--red)}.cat-feature{color:#b45309}.cat-help{color:var(--accent)}.sender-name{display:block;font-weight:500;color:var(--text);font-size:12px}.sender-role{display:block;font-size:10px;color:var(--text-3)}.sort-placeholder{display:inline-block;width:11px}.support-detail{width:44%;min-width:300px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.9rem;max-height:calc(100vh - 200px);overflow-y:auto;flex-shrink:0}.support-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.support-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.support-detail-date{font-size:11px;color:var(--text-3)}.support-detail-close{background:none;border:none;cursor:pointer;color:var(--text-3);padding:2px;border-radius:var(--radius-sm);display:flex;align-items:center;flex-shrink:0}.support-detail-close:hover{background:var(--bg-warm);color:var(--text)}.support-detail-subject{font-family:Lora,serif;font-size:1rem;font-weight:600;color:var(--text);line-height:1.3}.support-detail-sender{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px}.support-detail-sender-name{font-weight:600;color:var(--text)}.support-detail-sender-role{background:var(--bg-warm);border:1px solid var(--border);border-radius:99px;padding:1px 7px;font-size:10px;color:var(--text-2)}.support-detail-kg{font-size:11px;color:var(--text-3)}.support-detail-body{font-size:13px;color:var(--text);line-height:1.55;white-space:pre-wrap;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.7rem .9rem}.support-detail-section-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);display:block;margin-bottom:.4rem}.support-detail-bug{background:var(--red-light);border:1px solid #fca5a5;border-radius:var(--radius-sm);padding:.7rem .9rem;display:flex;flex-direction:column;gap:.5rem}.support-detail-bug-item{display:flex;flex-direction:column;gap:2px}.support-detail-bug-q{font-size:10px;font-weight:600;color:var(--red);text-transform:uppercase;letter-spacing:.04em}.support-detail-bug-a{font-size:12px;color:var(--text)}.support-detail-tech{background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.7rem .9rem}.support-detail-tech-row{display:flex;align-items:baseline;gap:.5rem;font-size:12px;padding:2px 0}.support-detail-tech-row span{width:70px;flex-shrink:0;color:var(--text-3);font-size:11px}.support-detail-tech-row code{font-family:DM Mono,monospace;font-size:11px;color:var(--text-2);word-break:break-all}.support-ua{word-break:break-all}.support-detail-admin{display:flex;flex-direction:column;gap:.5rem}.support-admin-notes{width:100%;padding:7px 9px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;color:var(--text);background:var(--surface);outline:none;resize:vertical;transition:border-color .12s}.support-admin-notes:focus{border-color:var(--accent)}.support-admin-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem}.support-admin-status-wrap{display:flex;flex-direction:column;gap:4px}.support-status-select{font-family:DM Sans,sans-serif;font-size:12px;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:5px 8px;outline:none}.support-status-select:focus{border-color:var(--accent)}.support-save-btn{display:flex;align-items:center;gap:5px;padding:6px 14px;background:var(--accent);border:none;border-radius:var(--radius-sm);font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;color:#fff;cursor:pointer;transition:background .12s;white-space:nowrap}.support-save-btn:hover:not(:disabled){background:var(--accent-dark)}.support-save-btn:disabled{opacity:.5;cursor:not-allowed}.support-save-error{font-size:11px;color:var(--red)}.ap-stat-label{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.ap-summary-empty{font-size:13px;color:var(--text-3);font-style:italic}.ap-summary-children{display:flex;flex-direction:column;gap:1rem}.ap-summary-group-section{display:flex;flex-direction:column;gap:.6rem}.ap-summary-group-header{display:flex;align-items:center;justify-content:space-between;padding:.4rem .75rem;background:var(--surface-2, #f1f5f9);border-radius:8px;border-left:3px solid var(--blue, #3b82f6)}.ap-summary-group-name{font-size:13px;font-weight:700;color:var(--text)}.ap-summary-group-count{font-size:11px;color:var(--text-3)}.ap-summary-child{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.ap-summary-child-header{display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;background:var(--bg-warm);border-bottom:1px solid var(--border)}.ap-summary-child-avatar{width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ap-summary-child-name{font-weight:600;font-size:14px;color:var(--text)}.ap-summary-child-count{font-size:11px;color:var(--text-3);margin-left:auto}.ap-summary-plans{display:flex;flex-direction:column;gap:0}.ap-summary-plan{padding:.85rem 1rem;border-bottom:1px solid var(--border)}.ap-summary-plan:last-child{border-bottom:none}.ap-summary-plan.done{background:var(--green-light)}.ap-summary-plan.active{background:#eff6ff}.ap-summary-plan-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.ap-summary-plan-status{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 7px;border-radius:99px}.ap-summary-plan-status.done{color:var(--green);background:#c6e9cc}.ap-summary-plan-status.active{color:#1d4ed8;background:#dbeafe}.ap-summary-plan-topic{font-size:12px;color:var(--text-3);margin-left:auto}.ap-summary-plan-content{font-size:13px;color:var(--text);line-height:1.5;margin-bottom:.4rem}.ap-summary-plan-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:11px;color:var(--text-3)}.ap-summary-notes{margin-top:.6rem}.ap-summary-notes-toggle{font-size:12px;color:var(--accent);cursor:pointer;font-weight:500}.ap-summary-notes-list{margin-top:.4rem;display:flex;flex-direction:column;gap:.4rem;padding-left:.5rem;border-left:2px solid var(--border-strong)}.ap-summary-note-meta{display:block;font-size:11px;color:var(--text-3);margin-bottom:2px}.ap-summary-note-content{font-size:12px;color:var(--text-2);line-height:1.4}.ap-summary-analysis{margin-top:8px}.ap-summary-analysis-toggle{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--accent);background:none;border:none;cursor:pointer;padding:0}.ap-summary-analysis-toggle:hover{text-decoration:underline}.ap-summary-analysis-body{margin-top:6px;padding:8px 10px;background:var(--bg-warm);border-left:2px solid var(--border-strong);border-radius:0 var(--radius-sm) var(--radius-sm) 0;display:flex;flex-direction:column;gap:8px}.ap-summary-analysis-summary{font-size:12px;color:var(--text-2);line-height:1.5;margin:0}.ap-summary-analysis-suggestion{font-size:12px;color:var(--text-2);line-height:1.5}.ap-summary-analysis-suggestion ul{margin:4px 0 0;padding-left:1.2rem}.ap-summary-analysis-suggestion li{margin-bottom:2px}.summary-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:12.5px;font-weight:500;color:var(--text-2);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:left}.summary-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.ap-complete-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;font-size:12px;font-weight:600;color:var(--green);background:var(--green-light);border:1px solid #a8d5b0;border-radius:var(--radius-sm);cursor:pointer}.ap-complete-btn:hover:not(:disabled){background:#c6e9cc}.ap-complete-btn:disabled{opacity:.5;cursor:not-allowed}.ap-plan-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.ap-abort-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;font-size:12px;font-weight:600;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);cursor:pointer}.ap-abort-btn:hover:not(:disabled){background:#fee2e2}.ap-abort-btn:disabled{opacity:.5;cursor:not-allowed}.ap-edit-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;font-size:12px;font-weight:600;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-sm);cursor:pointer}.ap-edit-btn:hover:not(:disabled){background:#dbeafe}.ap-edit-btn:disabled{opacity:.5;cursor:not-allowed}.ap-edit-inline{display:flex;flex-direction:column;gap:10px;margin-top:10px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:var(--radius-sm)}.ap-edit-row{display:flex;flex-direction:column;gap:4px}.ap-edit-error{font-size:12px;color:#b91c1c;margin:0}.ap-completed-at{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:12px;font-weight:600;color:var(--green)}.completed-plans-section{margin-top:12px;border:1px solid #a8d5b0;border-radius:var(--radius-sm);background:var(--surface-2)}.completed-plans-toggle{display:flex;align-items:center;gap:6px;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;color:var(--green);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.completed-plans-toggle::-webkit-details-marker{display:none}.completed-plans-section[open] .completed-plans-toggle{border-bottom:1px solid #a8d5b0}.completed-plans-list{display:flex;flex-direction:column;gap:8px;padding:10px 14px}.completed-plan-card{background:var(--surface-1);border:1px solid #d1e7dd;border-radius:var(--radius-sm);padding:10px 12px;display:flex;flex-direction:column;gap:6px}.completed-plan-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.completed-plan-date{font-size:11px;color:var(--text-3)}.completed-plan-done{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--green)}.completed-plan-content{font-size:12px;color:var(--text-2);line-height:1.6;white-space:pre-wrap}.um-view{flex:1;display:flex;flex-direction:column;padding:28px 32px;gap:20px;overflow-y:auto;min-width:0}.um-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px}.um-title{font-family:Lora,serif;font-size:22px;font-weight:600;color:var(--text);margin-bottom:2px}.um-subtitle{font-size:12px;color:var(--text-3)}.um-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.um-toggle-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.um-toggle-label input[type=checkbox]{cursor:pointer;accent-color:var(--accent)}.um-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;border-radius:var(--radius-sm);border:1.5px solid transparent;cursor:pointer;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.um-btn:disabled{opacity:.45;cursor:not-allowed}.um-btn--primary{background:var(--accent);color:#fff;border-color:var(--accent)}.um-btn--primary:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.um-btn--ghost{background:transparent;color:var(--text-2);border-color:var(--border-strong)}.um-btn--ghost:hover:not(:disabled){background:var(--bg-warm);color:var(--text)}.um-btn--danger{background:var(--red);color:#fff;border-color:var(--red)}.um-btn--danger:hover:not(:disabled){background:#a02d20;border-color:#a02d20}.um-error-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:var(--red-light);border:1px solid #fca5a5;border-radius:var(--radius-sm);font-size:13px;color:var(--red)}.um-error-dismiss{background:none;border:none;cursor:pointer;color:var(--red);padding:2px;display:flex;border-radius:4px;flex-shrink:0}.um-error-dismiss:hover{background:#00000014}.um-success-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--green-light);border:1px solid #86efac;border-radius:var(--radius-sm);font-size:13px;color:var(--green)}.um-loading{display:flex;align-items:center;justify-content:center;padding:48px}.um-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.um-table{width:100%;border-collapse:collapse;font-size:13px}.um-table thead th{padding:10px 14px;text-align:left;font-size:11px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.045em;background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap}.um-table tbody tr{border-bottom:1px solid var(--border);transition:background .1s}.um-table tbody tr:last-child{border-bottom:none}.um-table tbody tr:hover{background:var(--bg-warm)}.um-table tbody td{padding:11px 14px;vertical-align:middle;color:var(--text)}.um-row--inactive{opacity:.6}.um-row--inactive:hover{opacity:.8}.um-cell-name{font-weight:500}.um-cell-username{font-family:DM Mono,monospace;font-size:12px;color:var(--text-2)}.um-cell-actions{width:40px;padding:4px 8px!important}.um-no-value{color:var(--text-3)}.um-status{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:600}.um-status--active{background:var(--green-light);color:var(--green)}.um-status--inactive{background:var(--bg-warm);color:var(--text-3);border:1px solid var(--border)}.um-actions-menu{position:relative}.um-actions-trigger{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:1.5px solid transparent;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-3);transition:background .12s,border-color .12s,color .12s}.um-actions-trigger:hover,.um-actions-trigger[aria-expanded=true]{background:var(--bg-warm);border-color:var(--border);color:var(--text)}.um-actions-dropdown{position:absolute;right:0;top:calc(100% + 4px);z-index:200;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);list-style:none;min-width:168px;overflow:hidden;animation:modalIn .12s ease both}.um-actions-dropdown--fixed{position:fixed;top:unset;right:unset}.um-action-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 14px;background:none;border:none;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;color:var(--text);text-align:left;transition:background .1s}.um-action-item:hover{background:var(--bg-warm)}.um-action-item--danger{color:var(--red)}.um-action-item--danger:hover{background:var(--red-light)}.um-modal-info{font-size:13px;color:var(--text-2);line-height:1.55}.um-readonly-field{display:flex;flex-direction:column;gap:4px}.um-readonly-value{font-family:DM Mono,monospace;font-size:13px;color:var(--text-2);padding:8px 10px;background:var(--bg-warm);border-radius:var(--radius-sm);border:1px solid var(--border)}.um-field-hint{font-size:11px;color:var(--text-3);margin-top:3px}.um-field-hint--error{color:var(--red)}.settings-input--error{border-color:var(--red)!important}.um-select-wrap{position:relative}.um-select-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-3)}.summary-btn--active{background:var(--accent-light);color:var(--accent);font-weight:600}.org-teacher-name--link{all:unset;cursor:pointer;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--text-2);transition:color .1s}.org-teacher-name--link:hover{color:var(--accent);text-decoration:underline}.td-view{flex:1;display:flex;flex-direction:column;padding:28px 32px;gap:0;overflow-y:auto;min-width:0;max-width:680px}.td-header{display:flex;flex-direction:column;gap:6px;margin-bottom:28px}.td-back-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-size:12px;font-family:DM Sans,sans-serif;color:var(--text-3);padding:0;margin-bottom:6px;transition:color .12s}.td-back-btn:hover{color:var(--accent)}.td-title-row{display:flex;align-items:center;gap:10px}.td-title-icon{color:var(--accent);flex-shrink:0}.td-title{font-family:Lora,serif;font-size:22px;font-weight:600;color:var(--text)}.td-subtitle{font-size:12px;color:var(--text-3);margin-left:34px}.td-body{display:flex;flex-direction:column;gap:20px}.td-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-sm)}.td-section-title{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--text-2)}.td-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:34px}.td-no-groups{font-size:13px;color:var(--text-3);font-style:italic}.td-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px 4px 12px;background:var(--accent-light);border:1px solid #dda876;border-radius:99px;font-size:12px;font-weight:500;color:var(--accent-dark)}.td-chip-name{font-weight:600}.td-chip-kg{color:var(--text-3);font-size:11px}.td-chip-remove{display:flex;align-items:center;background:none;border:none;cursor:pointer;color:var(--accent);padding:1px;border-radius:50%;margin-left:2px;transition:background .1s,color .1s}.td-chip-remove:hover{background:var(--accent);color:#fff}.td-add-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.td-group-select{flex:1;min-width:180px}.td-footer{display:flex;justify-content:flex-end;padding-top:4px}.mp-form{display:flex;flex-direction:column;gap:14px}.mp-field{display:flex;flex-direction:column;gap:5px}.mp-label{font-size:12px;font-weight:600;color:var(--text-2, #6b7280)}.mp-footer{justify-content:flex-start;padding-top:4px}.ai-consent-warning{display:flex;gap:12px;align-items:flex-start;background:#fff7ed;border:1px solid #fb923c;border-radius:8px;padding:12px 14px;color:#9a3412;font-size:13px;line-height:1.5;margin-bottom:12px}.ai-consent-warning svg{flex-shrink:0;margin-top:2px;color:#ea580c}.ai-consent-warning strong{display:block;margin-bottom:4px;font-size:13.5px}.ai-consent-warning p{margin:0}.ai-consent-status-ok{display:flex;gap:10px;align-items:center;background:#f0fdf4;border:1px solid #4ade80;border-radius:8px;padding:10px 14px;color:#166534;font-size:13px;margin-bottom:12px}.ai-consent-status-ok svg{flex-shrink:0;color:#16a34a}.db-root{flex:1;min-width:0;display:flex;flex-direction:column;height:100%;overflow-y:scroll;overflow-x:hidden;scrollbar-gutter:stable;padding:24px 28px;gap:16px;background:var(--bg, #f9fafb)}.db-header{display:flex;align-items:center;gap:12px;flex-wrap:nowrap}.db-header-left{display:flex;flex-direction:row;align-items:center;gap:10px}.db-menu-btn{display:none;flex-shrink:0}.db-header-titles{display:flex;flex-direction:column;gap:2px}.db-title{font-size:1.1rem;font-weight:700;color:var(--text, #111827);margin:0;white-space:nowrap}.db-subtitle{font-size:12px;color:var(--text-2, #6b7280);white-space:nowrap}.db-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.db-settings-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;background:var(--surface, #fff);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;transition:border-color .12s,color .12s,background .12s}.db-settings-btn:hover,.db-settings-btn--active{border-color:var(--accent);color:var(--accent);background:var(--accent-light, #eff6ff)}.db-refresh-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:var(--surface, #fff);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;transition:border-color .12s,color .12s}.db-refresh-btn:hover{border-color:var(--accent);color:var(--accent)}.db-settings-panel{background:var(--surface, #fff);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.db-settings-label{font-size:12px;font-weight:600;color:var(--text-2, #6b7280)}.db-lookback-pills{display:flex;flex-wrap:wrap;gap:6px}.db-lookback-pill{padding:4px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;border:1px solid var(--border);border-radius:999px;background:none;color:var(--text-2);cursor:pointer;transition:border-color .12s,color .12s,background .12s}.db-lookback-pill:hover{border-color:var(--accent);color:var(--accent)}.db-lookback-pill--active{background:var(--accent, #3b82f6);border-color:var(--accent, #3b82f6);color:#fff}.db-follow-section{display:flex;align-items:flex-start;gap:10px;padding:10px 0 14px;border-bottom:1px solid var(--border, #e5e7eb);margin-bottom:12px;flex-wrap:wrap}.db-follow-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3, #9ca3af);padding-top:5px;white-space:nowrap;flex-shrink:0}.db-follow-chips{display:flex;flex-wrap:wrap;gap:6px}.db-follow-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;border:1px solid var(--border, #e5e7eb);background:var(--bg-warm, #f9fafb);color:var(--text-2, #6b7280);font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,color .12s,border-color .12s;min-height:28px}.db-follow-chip:hover{background:var(--bg-warm, #f3f4f6);color:var(--text, #111827);border-color:#d1d5db}.db-follow-chip--active{background:var(--accent-light, #eff6ff);color:var(--accent, #3b82f6);border-color:var(--accent, #3b82f6)}.db-follow-chip:disabled{opacity:.55;cursor:default}.db-follow-empty{font-size:12px;color:var(--text-3, #9ca3af);padding-top:4px}.db-follow-add-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;border:1px dashed var(--border, #d1d5db);background:transparent;color:var(--text-3, #9ca3af);font-size:12px;font-weight:500;cursor:pointer;transition:color .12s,border-color .12s;min-height:28px}.db-follow-add-btn:hover{color:var(--text, #111);border-color:var(--text-3, #9ca3af)}.db-follow-picker-wrap{position:relative}.db-follow-picker{position:absolute;top:calc(100% + 6px);left:0;z-index:50;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:8px;box-shadow:0 4px 16px #0000001a;width:220px;max-height:260px;display:flex;flex-direction:column}.db-follow-picker-search{padding:8px 10px;border:none;border-bottom:1px solid var(--border, #e5e7eb);border-radius:8px 8px 0 0;font-size:13px;outline:none;background:var(--bg-warm, #f9fafb);color:var(--text, #111)}.db-follow-picker-list{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:4px 0;flex:1}.db-follow-picker-item{display:flex;align-items:center;gap:7px;width:100%;padding:7px 12px;border:none;background:transparent;font-size:13px;color:var(--text-2, #374151);cursor:pointer;text-align:left}.db-follow-picker-item:hover{background:var(--bg-warm, #f3f4f6);color:var(--text, #111)}.db-follow-picker-empty{display:block;padding:8px 12px;font-size:12px;color:var(--text-3, #9ca3af)}.db-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex:1;color:var(--text-2);font-size:14px}.db-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:48px 24px;text-align:center}.db-empty-icon{color:var(--text-3, #9ca3af)}.db-empty-title{font-size:15px;font-weight:600;color:var(--text, #111827);margin:0}.db-empty-sub{font-size:13px;color:var(--text-2, #6b7280);margin:0}.db-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.db-section{min-width:0;background:var(--surface, #fff);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.db-section-header{display:flex;align-items:center;gap:8px;width:100%;padding:12px 14px;background:none;border:none;cursor:pointer;text-align:left;transition:background .12s}.db-section-header:hover{background:var(--bg-warm, #f3f4f6)}.db-section--notes .db-section-header{border-left:3px solid #3b82f6}.db-section--analysis .db-section-header{border-left:3px solid #8b5cf6}.db-section--ap .db-section-header{border-left:3px solid #10b981}.db-section-icon{display:flex;align-items:center;color:var(--text-2)}.db-section--notes .db-section-icon{color:#3b82f6}.db-section--analysis .db-section-icon{color:#8b5cf6}.db-section--ap .db-section-icon{color:#10b981}.db-section-title{flex:1;font-size:13px;font-weight:700;color:var(--text, #111827)}.db-section-count{font-size:11px;font-weight:600;color:var(--text-3, #9ca3af);background:var(--bg-warm, #f3f4f6);border-radius:999px;padding:1px 8px}.db-section-chevron{color:var(--text-3);display:flex}.db-section-body{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:0}.db-card{border-bottom:1px solid var(--border)}.db-card:last-child{border-bottom:none}.db-card-header{display:flex;align-items:center;gap:6px;width:100%;padding:10px 14px;background:none;border:none;cursor:pointer;text-align:left;transition:background .12s;flex-wrap:nowrap;overflow:hidden}.db-card-header:hover{background:var(--bg-warm, #f3f4f6)}.db-card--analysis.db-card--yellow .db-card-header{border-left:3px solid #f59e0b}.db-card--analysis.db-card--red .db-card-header{border-left:3px solid #ef4444}.db-card-chevron{color:var(--text-3);display:flex;flex-shrink:0}.db-card-child{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--text, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.db-card-child svg{flex-shrink:0}.db-card-topic{display:none}.db-card-date{font-size:11px;color:var(--text-3, #9ca3af);white-space:nowrap;flex-shrink:0}.db-card-author{font-size:11px;color:var(--text-2);white-space:nowrap;flex-shrink:0;font-weight:500}.db-alert-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:999px;flex-shrink:0}.db-alert-badge--yellow{background:#fef3c7;color:#92400e}.db-alert-badge--red{background:#fee2e2;color:#991b1b}.db-ap-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:999px;flex-shrink:0}.db-ap-badge--open{background:#dbeafe;color:#1e40af}.db-ap-badge--done{background:#dcfce7;color:#166534}.db-card-body{padding:10px 14px 12px 32px}.db-card-body--flush{padding-left:14px;display:flex;flex-direction:column;gap:8px;background:var(--bg, #f9fafb)}.db-ap-child-row{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text, #111827)}.db-ap-child-row svg{flex-shrink:0;color:var(--text-2, #6b7280)}.db-ap-child-sep{color:var(--text-3, #9ca3af)}.db-card-navigate{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;padding:4px 10px;font-size:12px;color:#2563eb;background:transparent;border:1px solid #93c5fd;border-radius:6px;cursor:pointer;transition:background .15s}.db-card-navigate:hover{background:#eff6ff}.db-card-dismiss{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--text-3, #9ca3af);cursor:pointer;transition:background .12s,color .12s}.db-card-dismiss:hover{background:#fee2e2;color:#ef4444}.db-card--open .db-card-date,.db-card--open .db-alert-badge,.db-ap-badge--body{padding-left:0}.db-card--open .db-ap-badge:not(.db-ap-badge--body){display:none}.db-card--open .db-card-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.db-card-content{font-size:13px;line-height:1.6;color:var(--text, #111827);margin:0;white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word}.db-card-content--suggestion{display:flex;flex-direction:column;gap:3px}.db-suggestion-line{font-size:13px;line-height:1.5;color:var(--text)}.db-card-updated{font-size:11px;color:var(--text-3);margin:0}.db-card-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-3);margin:0}.db-analysis-row{display:flex;flex-direction:column;gap:4px}.db-analysis-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.db-ap-meta-row{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--text-3)}.analytics-dash{display:flex;flex-direction:column;gap:2rem;padding:.25rem 0}.analytics-dash-header{display:flex;align-items:center;gap:1rem}.analytics-period-tabs{display:flex;gap:.4rem}.analytics-period-btn{padding:.3rem .85rem;border:1px solid var(--border);border-radius:99px;background:transparent;font-size:.78rem;color:var(--text-2);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.analytics-period-btn:hover{background:var(--bg-warm)}.analytics-period-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.analytics-spinner{color:var(--text-3)}.analytics-error{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#dc2626}.analytics-retry-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:.75rem;color:var(--text-2);cursor:pointer}.analytics-empty{font-size:.82rem;color:var(--text-3);text-align:center;padding:2rem 0}.analytics-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.analytics-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.analytics-stat-icon{color:var(--accent);margin-bottom:.25rem}.analytics-stat-value{font-size:1.5rem;font-weight:700;color:var(--text);line-height:1.1}.analytics-stat-label{font-size:.72rem;color:var(--text-3);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.analytics-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.2rem 1.4rem;box-shadow:var(--shadow-sm)}.analytics-section-title{font-family:Lora,serif;font-size:1rem;font-weight:600;color:var(--text);margin-bottom:.25rem}.analytics-section-subtitle{font-size:.76rem;color:var(--text-3);margin-bottom:1rem}.analytics-legend{display:flex;gap:1rem;margin-bottom:1rem;font-size:.78rem;color:var(--text-2)}.analytics-legend-item{display:flex;align-items:center;gap:.4rem}.analytics-legend-swatch{display:inline-block;width:12px;height:12px;border-radius:3px}.analytics-legend-exec{background:var(--accent)}.analytics-legend-teacher{background:var(--accent-light);border:1px solid var(--border)}.analytics-bars{display:flex;flex-direction:column;gap:.55rem}.analytics-bar-row{display:grid;grid-template-columns:180px 1fr 48px;align-items:center;gap:.75rem}.analytics-bar-label{font-size:.8rem;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-bar-track{height:12px;border-radius:99px;background:var(--bg-warm);display:flex;overflow:hidden}.analytics-bar-exec{height:100%;background:var(--accent);border-radius:99px 0 0 99px;transition:width .4s ease;flex-shrink:0}.analytics-bar-teach{height:100%;background:color-mix(in srgb,var(--accent) 35%,#fff);border-radius:0 99px 99px 0;transition:width .4s ease;flex-shrink:0}.analytics-bar-count{font-size:.76rem;color:var(--text-3);text-align:right}.analytics-heatmap{display:flex;flex-direction:column;gap:3px;overflow-x:auto;-webkit-overflow-scrolling:touch}.analytics-heatmap-col-header{display:flex;gap:3px}.analytics-heatmap-corner{width:44px;flex-shrink:0}.analytics-heatmap-col-label{flex:1;min-width:32px;text-align:center;font-size:.7rem;color:var(--text-3);font-weight:600}.analytics-heatmap-row{display:flex;gap:3px;align-items:center}.analytics-heatmap-row-label{width:44px;flex-shrink:0;font-size:.68rem;color:var(--text-3);text-align:right;padding-right:6px}.analytics-heatmap-cell{flex:1;min-width:32px;height:18px;border-radius:4px;cursor:default;transition:opacity .15s}.analytics-heatmap-cell:hover{opacity:.75}.analytics-heatmap-scale{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;font-size:.7rem;color:var(--text-3)}.analytics-heatmap-scale-bar{display:flex;height:12px;width:96px;border-radius:99px;overflow:hidden}.analytics-heatmap-scale-step{flex:1;height:100%}@media (max-width: 768px){.analytics-stat-grid{grid-template-columns:repeat(2,1fr)}.analytics-bar-row{grid-template-columns:120px 1fr 40px}}@media (max-width: 480px){.analytics-stat-grid{grid-template-columns:1fr 1fr}.analytics-section{padding:1rem}}.analytics-subsection-title{font-size:.84rem;font-weight:600;color:var(--text-2);margin:1.2rem 0 .6rem}.analytics-paths{display:flex;flex-direction:column;gap:.5rem}.analytics-path-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem .6rem;background:var(--bg-warm);border-radius:var(--radius-sm, 6px);border:1px solid var(--border);min-height:36px}.analytics-path-steps{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem;flex:1;min-width:0}.analytics-path-step{display:flex;align-items:center;gap:.2rem;font-size:.78rem;color:var(--text-2);white-space:nowrap}.analytics-path-arrow{color:var(--text-3);font-size:.72rem;margin:0 .1rem}.analytics-path-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.analytics-path-count{font-size:.8rem;font-weight:600;color:var(--text);min-width:24px;text-align:right}.analytics-path-pct{font-size:.74rem;color:var(--text-3);min-width:38px;text-align:right}.analytics-spinner--inline{display:inline-block;margin-left:.5rem;vertical-align:middle}@media (max-width: 640px){.analytics-path-row{flex-direction:column;align-items:flex-start;gap:.3rem}.analytics-path-meta{align-self:flex-end}}@media (max-width: 768px){.db-root{padding:14px 16px;gap:14px}.db-sections{grid-template-columns:1fr}.db-header{flex-direction:column;align-items:stretch;gap:8px}.db-menu-btn{display:flex}.db-header-right{justify-content:flex-end}.db-lookback-pills{gap:5px}.db-lookback-pill{padding:4px 10px;font-size:11px}}@media (max-width: 480px){.db-root{padding:10px 12px;gap:10px}.db-title{font-size:1rem}.db-card-date{font-size:10px}.db-card-body,.db-section-header{padding:10px 12px}.db-card-header{padding:8px 12px}}.notif-wrapper{position:relative;z-index:300}.notif-bell-btn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--surface);border:1.5px solid var(--border);color:var(--text-2);cursor:pointer;transition:background .12s,color .12s,border-color .12s;box-shadow:0 1px 4px #0000000f}.notif-bell-btn:hover,.notif-bell-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.notif-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;background:#ef4444;color:#fff;border-radius:9px;font-size:10px;font-weight:700;line-height:18px;text-align:center;font-family:DM Sans,sans-serif;pointer-events:none}.notif-panel{position:fixed;top:auto;right:16px;width:340px;max-height:480px;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 28px #0000001f;display:flex;flex-direction:column;overflow:hidden;z-index:600}.notif-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.notif-panel-title{font-size:13px;font-weight:600;color:var(--text)}.notif-panel-actions{display:flex;align-items:center;gap:6px}.notif-mark-all-btn{display:flex;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-family:DM Sans,sans-serif;background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.notif-mark-all-btn:hover{background:var(--bg-warm);color:var(--text)}.notif-close-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;transition:background .12s,color .12s}.notif-close-btn:hover{background:var(--bg-warm);color:var(--text)}.notif-list{overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.notif-loading{display:flex;justify-content:center;padding:2rem;color:var(--text-3)}.notif-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:2.5rem 1rem;color:var(--text-3);font-size:13px;text-align:center}.notif-empty-icon{opacity:.35}.notif-item{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer;border-bottom:1px solid var(--border);transition:background .1s}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:var(--bg-warm)}.notif-item.unread{background:color-mix(in srgb,var(--accent) 5%,transparent)}.notif-item.unread:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.notif-item.mention{border-left:3px solid #f59e0b;padding-left:11px}.notif-item.mention .notif-item-type{color:#d97706}.notif-item.mention.unread{background:color-mix(in srgb,#f59e0b 8%,transparent)}.notif-item.mention.unread:hover{background:color-mix(in srgb,#f59e0b 14%,transparent)}.notif-item.mention .notif-unread-dot{background:#f59e0b}.notif-item-content{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.notif-item-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}.notif-item-child{font-size:12px;font-weight:600;color:var(--text)}.notif-item-group{font-weight:400;color:var(--text-2)}.notif-item-title{font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-item-date{font-size:11px;color:var(--text-3)}.notif-item-body{font-size:11px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-item-meta{display:flex;flex-direction:column;gap:2px;margin:3px 0 0;padding:5px 7px;background:color-mix(in srgb,var(--bg-warm) 80%,transparent);border-radius:4px;border:1px solid var(--border)}.notif-item-meta-row{display:flex;gap:5px;font-size:11px;min-width:0}.notif-item-meta-row dt{color:var(--text-3);white-space:nowrap;flex-shrink:0}.notif-item-meta-row dt:after{content:":"}.notif-item-meta-row dd{color:var(--text);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-severity-icon{flex-shrink:0}.notif-severity--warning{color:#d97706}.notif-severity--error{color:#dc2626}.notif-severity--info{color:#2563eb}.notif-item.platform-event .notif-item-type{color:#d97706}.notif-item.platform-event.unread{background:color-mix(in srgb,#f59e0b 8%,transparent)}.notif-item.platform-event.unread:hover{background:color-mix(in srgb,#f59e0b 14%,transparent)}.notif-item.platform-event .notif-unread-dot{background:#d97706}.notif-unread-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0}.notif-dismiss-btn{display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;flex-shrink:0;border:none;border-radius:4px;background:transparent;color:var(--text-3);cursor:pointer;transition:background .1s,color .1s}.notif-dismiss-btn:hover,.notif-dismiss-btn:focus-visible{background:color-mix(in srgb,#ef4444 12%,transparent);color:#ef4444;outline:none}@media (max-width: 639px){.notif-wrapper{top:8px;right:8px}.notif-panel{position:fixed;top:56px;left:8px;right:8px;width:auto;max-height:calc(100dvh - 72px);border-radius:var(--radius)}}.feedback-fab{position:fixed;bottom:24px;right:24px;z-index:1100;width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #00000038;transition:background .15s,transform .15s;flex-shrink:0}.feedback-fab:hover{background:var(--accent-dark);transform:scale(1.06)}.feedback-fab:active{transform:scale(.97)}.feedback-panel{position:fixed;bottom:84px;right:24px;z-index:1099;width:300px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 28px #00000029;overflow:hidden}.feedback-panel__header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);font-weight:600;font-size:.875rem}.feedback-panel__close{background:none;border:none;cursor:pointer;color:inherit;display:flex;align-items:center;padding:4px;border-radius:4px;opacity:.6}.feedback-panel__close:hover{background:var(--surface-2);opacity:1}.feedback-panel__body{padding:12px 14px;display:flex;flex-direction:column;gap:10px}.feedback-panel__hint{font-size:.75rem;color:var(--text-muted, #6b7280);margin:0;line-height:1.4}.feedback-panel__textarea{width:100%;resize:vertical;border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:16px;line-height:1.5;background:var(--surface-2);color:inherit;font-family:inherit;box-sizing:border-box;min-height:90px}.feedback-panel__textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.feedback-panel__send-btn{align-self:flex-end;display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;min-height:36px;transition:background .15s}.feedback-panel__send-btn:hover:not(:disabled){background:var(--accent-dark)}.feedback-panel__send-btn:disabled{opacity:.5;cursor:not-allowed}.feedback-panel__error{font-size:.75rem;color:var(--error, #dc2626);margin:0}.feedback-panel__success{padding:24px 14px;text-align:center;font-size:.875rem;color:var(--text-muted, #6b7280)}.feedback-panel__success p{margin:0}@media (max-width: 639px){.feedback-panel{width:calc(100vw - 48px)}}@media (max-width: 768px){.feedback-fab,.feedback-panel{right:16px}}.broadcast-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.broadcast-card{background:var(--surface);border-radius:16px;width:100%;max-width:520px;padding:36px 32px 28px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:14px;animation:modalIn .22s ease both}.broadcast-card__icon-wrap{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--accent-light);margin-bottom:4px;flex-shrink:0}.broadcast-card__icon{color:var(--accent)}.broadcast-card__counter{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);background:var(--accent-light);padding:3px 10px;border-radius:99px;align-self:flex-start}.broadcast-card__subject{font-family:Lora,serif;font-size:1.25rem;font-weight:600;color:var(--text);line-height:1.3;margin:0}.broadcast-card__body{color:var(--text-2);font-size:.9rem;line-height:1.6;display:flex;flex-direction:column;gap:6px}.broadcast-card__body p{margin:0}.broadcast-card__meta{font-size:.75rem;color:var(--text-3);margin:0}.broadcast-card__error{font-size:.8rem;color:var(--red, #c0392b);margin:0}.broadcast-card__btn{align-self:flex-end;display:inline-flex;align-items:center;gap:7px;padding:10px 22px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;min-height:44px;transition:background .15s;margin-top:4px}.broadcast-card__btn:hover:not(:disabled){background:var(--accent-dark)}.broadcast-card__btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.broadcast-card{padding:24px 18px 20px;border-radius:12px}.broadcast-card__btn{align-self:stretch;justify-content:center}}.bc-compose-wrap{display:flex;flex-direction:column;gap:32px;max-width:680px;padding:24px 28px;overflow-y:auto}.bc-compose-form{display:flex;flex-direction:column;gap:14px}.bc-compose-title{font-family:Lora,serif;font-size:1rem;font-weight:600;color:var(--text);margin:0}.bc-compose-hint{font-size:.8rem;color:var(--text-2);line-height:1.5;margin:0}.bc-label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:500;color:var(--text-2)}.bc-input,.bc-textarea,.bc-select{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:7px;font-size:16px;font-family:inherit;background:var(--surface-2);color:var(--text);transition:border-color .15s;box-sizing:border-box}.bc-input:focus,.bc-textarea:focus,.bc-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.bc-textarea{resize:vertical;min-height:100px}.bc-select-wrap{position:relative;display:flex;align-items:center}.bc-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;cursor:pointer}.bc-select-icon{position:absolute;right:10px;pointer-events:none;color:var(--text-3)}.bc-send-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;padding:10px 22px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;min-height:44px;transition:background .15s}.bc-send-btn:hover:not(:disabled){background:var(--accent-dark)}.bc-send-btn:disabled{opacity:.5;cursor:not-allowed}.bc-error{font-size:.8rem;color:var(--red, #c0392b);margin:0}.bc-success{font-size:.8rem;color:var(--green, #3a7d44);font-weight:500;margin:0}.bc-sent-list{display:flex;flex-direction:column;gap:10px}.bc-sent-title{font-size:.85rem;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;margin:0 0 2px}.bc-sent-empty{font-size:.85rem;color:var(--text-3);margin:0}.bc-sent-item{border:1px solid var(--border);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;background:var(--surface)}.bc-sent-item-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.bc-sent-subject{font-weight:600;font-size:.875rem;color:var(--text)}.bc-sent-meta{font-size:.75rem;color:var(--text-3);white-space:nowrap}.bc-sent-body{font-size:.8rem;color:var(--text-2);line-height:1.5;margin:0;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ai-cost-limits-wrap,.ai-cost-log-wrap{padding:0}.ai-cost-log-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius)}.ai-cost-log-table{width:100%;border-collapse:collapse;font-size:12px}.ai-cost-log-table th{background:var(--bg-warm);color:var(--text-2);font-weight:600;text-align:left;padding:8px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.ai-cost-log-table td{padding:8px 12px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;white-space:nowrap}.ai-cost-log-table tbody tr:last-child td{border-bottom:none}.ai-cost-log-table tbody tr:hover{background:var(--bg-warm)}.ai-cost-log-cost{font-variant-numeric:tabular-nums;text-align:right}.ai-cost-log-user-name{display:block;font-weight:500;color:var(--text)}.ai-cost-log-user-email{display:block;font-size:11px;color:var(--text-3)}.ai-cost-log-limit-badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}.ai-cost-log-limit-badge--per_user_daily{background:color-mix(in srgb,#3b82f6 12%,transparent);color:#1d4ed8}.ai-cost-log-limit-badge--per_tenant_daily{background:color-mix(in srgb,#f59e0b 12%,transparent);color:#b45309}.ai-cost-overrides-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.ai-cost-overrides-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.ai-cost-overrides-title{font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:700;color:var(--text);display:flex;align-items:center;gap:6px;margin:0 0 3px}.ai-cost-overrides-hint{font-size:.78rem;color:var(--text-3);margin:0}.ai-cost-overrides-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ai-cost-overrides-history-toggle{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.ai-cost-overrides-add-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.ai-cost-overrides-add-btn:hover{background:var(--accent-dark)}.ai-cost-override-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm);max-width:520px}.ai-cost-override-form-title{font-family:DM Sans,sans-serif;font-size:.9rem;font-weight:700;margin:0 0 1rem;color:var(--text)}.ai-cost-overrides-error{display:flex;align-items:center;gap:6px;font-size:12px;color:#dc2626;margin-bottom:.75rem}.ai-cost-overrides-error button{background:none;border:none;cursor:pointer;color:var(--text-3);display:flex;padding:2px}.ai-cost-overrides-error button:hover{color:var(--accent)}.override-empty{padding:1.25rem 0;font-size:13px;color:var(--text-3)}.override-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}.override-status-badge--active{background:color-mix(in srgb,#16a34a 12%,transparent);color:#15803d}.override-status-badge--expired{background:var(--bg-warm);color:var(--text-3)}.override-type-badge{display:inline-block;padding:2px 7px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}.override-type-badge--USER{background:color-mix(in srgb,#3b82f6 10%,transparent);color:#1d4ed8}.override-type-badge--TENANT{background:color-mix(in srgb,#7c3aed 10%,transparent);color:#5b21b6}.ai-cost-overrides-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius)}.ai-cost-overrides-table{width:100%;border-collapse:collapse;font-size:12px}.ai-cost-overrides-table th{background:var(--bg-warm);color:var(--text-2);font-weight:600;text-align:left;padding:7px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.ai-cost-overrides-table td{padding:8px 12px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle}.ai-cost-overrides-table tbody tr:last-child td{border-bottom:none}.ai-cost-overrides-table tbody tr:hover{background:var(--bg-warm)}.ai-cost-overrides-table tbody tr.expired-row{opacity:.55}.override-meta{display:block;font-size:10px;color:var(--text-3);margin-top:1px}.override-revoke-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:600;font-family:DM Sans,sans-serif;background:none;border:1px solid #fca5a5;border-radius:var(--radius-sm);color:#dc2626;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s}.override-revoke-btn:hover:not(:disabled){background:#fef2f2;border-color:#ef4444}.override-revoke-btn:disabled{opacity:.5;cursor:not-allowed}.ai-cost-limits-loading{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-2);padding:1rem 0}.ai-cost-limits-hint{font-size:.82rem;color:var(--text-2);line-height:1.55;margin:0 0 1.25rem}.ai-cost-limits-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.ai-cost-limits-dl{display:flex;flex-direction:column;gap:.65rem;margin:0 0 1rem}.ai-cost-limits-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-size:.875rem}.ai-cost-limits-row dt{color:var(--text-2);font-weight:400;flex-shrink:0}.ai-cost-limits-row dd{font-weight:600;color:var(--text);margin:0;text-align:right}.ai-cost-limits-row--derived dt,.ai-cost-limits-row--derived dd{color:var(--accent, #6366f1)}.ai-cost-limits-row--meta dt,.ai-cost-limits-row--meta dd{font-size:.78rem;font-weight:400;color:var(--text-3)}.ai-cost-limits-edit-btn{display:inline-flex;align-items:center;gap:5px;padding:.35rem .85rem;font-size:.82rem;font-weight:500;background:var(--surface-2, #f8f9fb);border:1px solid var(--border-strong, #b0b7c3);border-radius:6px;cursor:pointer;color:var(--text-2);transition:background .15s,color .15s;min-height:34px}.ai-cost-limits-edit-btn:hover{background:var(--surface-3, #eff1f5);color:var(--text)}.ai-cost-limits-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem}.ai-cost-limits-form-title{font-size:.95rem;font-weight:600;color:var(--text);margin:0}.ai-cost-limits-label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:500;color:var(--text-2)}.ai-cost-limits-input{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:7px;font-size:16px;font-family:inherit;background:var(--surface-2);color:var(--text);transition:border-color .15s;box-sizing:border-box}.ai-cost-limits-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.ai-cost-limits-preview{font-size:.82rem;color:var(--text-2);margin:0;background:var(--bg-warm, #faf9f7);border:1px solid var(--border);border-radius:6px;padding:.45rem .75rem}.ai-cost-limits-preview strong{color:var(--accent, #6366f1)}.ai-cost-limits-error{font-size:.8rem;color:var(--alert-red, #dc2626);margin:0}.ai-cost-limits-form-actions{display:flex;gap:.6rem;flex-wrap:wrap}.ai-cost-limits-save-btn{display:inline-flex;align-items:center;gap:6px;padding:.5rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:7px;font-size:.875rem;font-weight:600;cursor:pointer;min-height:40px;transition:background .15s}.ai-cost-limits-save-btn:hover:not(:disabled){background:var(--accent-dark)}.ai-cost-limits-save-btn:disabled{opacity:.5;cursor:not-allowed}.ai-cost-limits-cancel-btn{display:inline-flex;align-items:center;padding:.5rem 1rem;background:transparent;color:var(--text-2);border:1px solid var(--border);border-radius:7px;font-size:.875rem;cursor:pointer;min-height:40px;transition:background .15s,color .15s}.ai-cost-limits-cancel-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.ai-cost-limits-cancel-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.ai-cost-limits-wrap{max-width:100%}.ai-cost-limits-row{flex-direction:column;gap:.1rem}.ai-cost-limits-row dd{text-align:left}}
