:root{--cirql-navy:#036;--cirql-teal:#0cc;--cirql-pink:#f39;--brand-bar:linear-gradient(90deg, var(--cirql-navy) 50%, var(--cirql-teal) 50%, var(--cirql-teal) 75%, var(--cirql-pink) 75%);--brand-bar-height:8px;--primary:var(--cirql-navy);--primary-hover:#024;--primary-light:#e8f4f8;--accent:var(--cirql-teal);--bg:#f7f8fa;--surface:#fff;--text:#1a2332;--text-muted:#6b7280;--border:#e5e7eb;--error:#ef4444;--success:#22c55e;--sidebar-width:260px;--header-height:48px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.app-shell{flex-direction:column;height:100vh;display:flex}.app-shell:after{content:"";height:var(--brand-bar-height);background:var(--brand-bar);z-index:100;position:fixed;bottom:0;left:0;right:0}.app-header{height:var(--header-height);background:var(--surface);flex-shrink:0;align-items:center;padding:0 1.25rem;display:flex}.app-brand-bar{height:var(--brand-bar-height);background:var(--brand-bar);flex-shrink:0}.header-breadcrumbs{align-items:center;display:flex}.header-logo{color:var(--cirql-navy);font-size:1rem;font-weight:700;text-decoration:none}.header-logo:hover{opacity:.8;text-decoration:none}.breadcrumb-sep{color:var(--border);margin:0 .5rem;font-size:.85rem}.breadcrumb-item{color:var(--text-muted);font-size:.85rem}.breadcrumb-item.active{color:var(--text);font-weight:500}.app-body{margin-bottom:var(--brand-bar-height);flex:1;display:flex;overflow:hidden}.app-sidebar{width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;display:flex}.app-main{flex:1;min-width:0;padding:1.5rem 2rem;overflow:hidden auto}.app-body{min-width:0}.sidebar-org-switcher{border-bottom:1px solid var(--border);padding:.75rem;position:relative}.org-switcher-row{border:1px solid var(--border);align-items:center;display:flex}.org-switcher-name{cursor:pointer;color:var(--text);text-align:left;background:0 0;border:none;flex:1;padding:.5rem .75rem;font-size:.85rem;font-weight:600}.org-switcher-name:hover{color:var(--cirql-teal)}.org-switcher-chevron{background:var(--bg);border:none;border-left:1px solid var(--border);cursor:pointer;color:var(--text-muted);align-items:center;padding:.5rem .625rem;display:flex}.org-switcher-chevron:hover{background:var(--border)}.org-dropdown{background:var(--surface);border:1px solid var(--border);z-index:50;max-height:250px;position:absolute;top:100%;left:.75rem;right:.75rem;overflow-y:auto;box-shadow:0 4px 12px #0000001a}.org-dropdown-item{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;padding:.5rem .75rem;font-size:.85rem;display:block}.org-dropdown-item:hover{background:var(--bg)}.org-dropdown-item.active{color:var(--cirql-navy);background:var(--primary-light);font-weight:600}.org-dropdown-empty{color:var(--text-muted);text-align:center;padding:.75rem;font-size:.8rem}.sidebar-nav{flex-direction:column;flex:1;display:flex;overflow-y:auto}.sidebar-section-header{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);justify-content:space-between;align-items:center;padding:.75rem .75rem .375rem;font-size:.65rem;font-weight:700;display:flex}.sidebar-add-btn{border:1px solid var(--border);cursor:pointer;width:20px;height:20px;color:var(--text-muted);background:0 0;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:flex}.sidebar-add-btn:hover{color:var(--cirql-navy);border-color:var(--cirql-navy)}.sidebar-inline-form{gap:.25rem;padding:.25rem .75rem .5rem;display:flex}.sidebar-inline-form.nested{padding-left:2.25rem}.sidebar-inline-form input{border:1px solid var(--border);outline:none;flex:1;padding:.3rem .5rem;font-size:.8rem}.sidebar-inline-form input:focus{border-color:var(--cirql-navy)}.sidebar-tree{flex:1;overflow-y:auto}.sidebar-project-row{align-items:center;display:flex}.sidebar-tree-toggle{cursor:pointer;color:var(--text-muted);background:0 0;border:none;align-items:center;padding:.4rem .375rem .4rem .75rem;display:flex}.sidebar-tree-toggle:hover{color:var(--text)}.sidebar-project-name{cursor:pointer;color:var(--text);text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:.375rem;padding:.4rem .5rem;font-size:.825rem;font-weight:500;display:flex}.sidebar-project-name:hover{color:var(--cirql-navy)}.sidebar-project-name.active{color:var(--cirql-navy);background:var(--primary-light)}.project-status-dot,.task-status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.sidebar-tasks-list{padding-left:.5rem}.sidebar-task-item{cursor:pointer;width:100%;color:var(--text);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-left:2px solid #0000;align-items:center;gap:.375rem;padding:.3rem .5rem .3rem 1.75rem;font-size:.8rem;display:flex;overflow:hidden}.sidebar-task-item:hover{background:var(--bg)}.sidebar-task-item.active{color:var(--cirql-navy);background:var(--primary-light);border-left-color:var(--cirql-navy);font-weight:600}.sidebar-task-row{align-items:center;display:flex}.sidebar-task-row .sidebar-task-item{flex:1}.sidebar-delete-btn{cursor:pointer;color:#0000;background:0 0;border:none;padding:.2rem .4rem;font-size:.85rem;line-height:1}.sidebar-project-row:hover .sidebar-delete-btn,.sidebar-task-row:hover .sidebar-delete-btn{color:var(--text-muted)}.sidebar-delete-btn:hover{color:var(--error)!important}.sidebar-add-task-btn{cursor:pointer;width:100%;color:var(--text-muted);text-align:left;background:0 0;border:none;padding:.25rem .5rem .25rem 1.75rem;font-size:.7rem;display:block}.sidebar-add-task-btn:hover{color:var(--cirql-navy)}.sidebar-empty{color:var(--text-muted);text-align:center;padding:1.5rem 1rem;font-size:.8rem}.sidebar-user{border-top:1px solid var(--border);position:relative}.sidebar-user-btn{cursor:pointer;width:100%;color:var(--text);text-align:left;background:0 0;border:none;align-items:center;gap:.625rem;padding:.625rem .75rem;display:flex}.sidebar-user-btn:hover{background:var(--bg)}.user-avatar{background:var(--cirql-navy);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.75rem;font-weight:700;display:flex}.user-info{overflow:hidden}.user-name-text{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:500;display:block;overflow:hidden}.user-agency-text{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;display:block;overflow:hidden}.user-context-menu{background:var(--surface);border:1px solid var(--border);z-index:50;padding:.25rem 0;position:absolute;bottom:100%;left:.5rem;right:.5rem;box-shadow:0 -4px 12px #00000014}.user-context-menu button{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;padding:.4rem .75rem;font-size:.85rem;display:block}.user-context-menu button:hover{background:var(--bg)}.menu-divider{background:var(--border);height:1px;margin:.25rem 0}.login-page{background:var(--cirql-navy);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-page:after{content:"";height:var(--brand-bar-height);background:var(--brand-bar);z-index:100;position:fixed;bottom:0;left:0;right:0}.login-card{background:var(--surface);width:100%;max-width:400px;padding:2.5rem;box-shadow:0 8px 32px #0000004d}.login-card h1{color:var(--cirql-navy);margin-bottom:.25rem;font-size:1.5rem}.pw-rules{border:1px solid var(--border);background:#f3f5f8;margin:0 0 1rem;padding:.75rem .875rem;list-style:none}.pw-rule{color:var(--text-muted);align-items:center;gap:.5rem;padding:.15rem 0;font-size:.8rem;display:flex}.pw-rule-icon{justify-content:center;align-items:center;width:1rem;height:1rem;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex}.pw-rule-passed,.pw-rule-passed .pw-rule-icon{color:var(--success)}.pw-rule-failed,.pw-rule-failed .pw-rule-icon{color:var(--error)}.pw-rule-neutral{color:var(--text-muted)}.login-subtitle{color:var(--text-muted);margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{margin-bottom:.25rem;font-size:.8rem;font-weight:600;display:block}.form-group input,.settings-table input{border:1px solid var(--border);outline:none;width:100%;padding:.5rem .75rem;font-size:.875rem}.form-group input:focus,.settings-table input:focus{border-color:var(--cirql-navy);box-shadow:0 0 0 2px #00336614}.btn-primary{background:var(--cirql-navy);color:#fff;cursor:pointer;border:none;width:100%;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.btn-primary:hover{background:var(--primary-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--surface);border:1px solid var(--border);cursor:pointer;padding:.375rem .75rem;font-size:.8rem}.btn-secondary:hover{border-color:var(--cirql-navy);color:var(--cirql-navy)}.btn-sm{margin-right:.25rem;padding:.25rem .5rem;font-size:.75rem}.btn-link{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:.875rem}.btn-link:hover{color:var(--cirql-navy)}.error-message{color:var(--error);background:#fef2f2;border:1px solid #fecaca;margin-bottom:1rem;padding:.5rem .75rem;font-size:.875rem}.loading{height:100%;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.settings-page h2{margin-bottom:1.5rem}.settings-group{margin-bottom:2rem}.settings-group h3{text-transform:capitalize;margin-bottom:.75rem;font-size:1rem}.settings-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);width:100%}.settings-table th,.settings-table td{text-align:left;border-bottom:1px solid var(--border);padding:.625rem 1rem;font-size:.85rem}.settings-table th{background:var(--bg);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.75rem;font-weight:600}.setting-key{color:var(--text-muted);font-family:SFMono-Regular,Consolas,monospace;font-size:.8rem}.chat-page{flex-direction:column;min-width:0;height:100%;display:flex;overflow:hidden}.chat-window{flex-direction:column;width:100%;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.chat-toolbar{z-index:5;gap:.35rem;display:inline-flex;position:absolute;top:.5rem;right:2.25rem}.chat-toolbar-btn{color:var(--text-muted);border:1px solid var(--border);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffeb;border-radius:6px;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.75rem;font-weight:500;transition:background .15s,color .15s,border-color .15s;display:inline-flex;box-shadow:0 1px 3px #0000000f}.chat-toolbar-btn:hover:not(:disabled){color:var(--cirql-navy);border-color:var(--cirql-teal);background:#fff}.chat-toolbar-btn:disabled{opacity:.6;cursor:wait}.message-metrics-btn{cursor:pointer;opacity:0;background:0 0;border:none;margin-left:.4rem;padding:0;font-size:.85rem;transition:opacity .15s}.message-row:hover .message-metrics-btn{opacity:.7}.message-metrics-btn:hover{opacity:1}.metrics-overlay{z-index:600;background:#0f172a8c;justify-content:center;align-items:flex-start;padding:4vh 2rem;display:flex;position:fixed;inset:0;overflow-y:auto}.metrics-modal{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-width:960px;display:flex;overflow:hidden;box-shadow:0 20px 50px #00000040}.metrics-header{border-bottom:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.5rem;display:flex}.metrics-header h2{color:var(--cirql-navy);margin:0;font-size:1.1rem}.metrics-subtitle{color:var(--text-muted);margin-top:.15rem;font-size:.8rem}.metrics-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:0 .25rem;font-size:1.6rem;line-height:1}.metrics-close:hover{color:var(--cirql-navy)}.metrics-tabs{border-bottom:1px solid var(--border);gap:.25rem;padding:.5rem 1.5rem 0;display:flex}.metrics-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem .9rem;font-size:.85rem;font-weight:500}.metrics-tab.active{color:var(--cirql-navy);border-bottom-color:var(--cirql-teal)}.metrics-tab:hover:not(.active){color:var(--text)}.metrics-body{flex-direction:column;gap:1.5rem;padding:1.25rem 1.5rem 1.5rem;display:flex}.metrics-loading,.metrics-error,.metrics-empty{text-align:center;color:var(--text-muted);padding:2rem 1.5rem;font-size:.9rem}.metrics-error{color:#991b1b}.metrics-cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.metrics-card{border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:.75rem 1rem}.metrics-card-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem;font-size:.7rem}.metrics-card-value{color:var(--cirql-navy);font-size:1.4rem;font-weight:600;line-height:1.2}.metrics-card-value.monospace{font-family:SFMono-Regular,Consolas,monospace;font-size:.85rem}.metrics-card-sub{color:var(--text-muted);margin-top:.25rem;font-size:.75rem}.metrics-section h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 .6rem;font-size:.85rem;font-weight:600}.metrics-grid-2col{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;display:grid}.metrics-table{border-collapse:collapse;width:100%;font-size:.8rem}.metrics-table th,.metrics-table td{border-bottom:1px solid var(--border);text-align:left;padding:.45rem .6rem}.metrics-table th{background:var(--bg);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.7rem;font-weight:600}.metrics-table td.num,.metrics-table th.num{text-align:right;font-variant-numeric:tabular-nums}.metrics-table code{background:#0000000a;border-radius:3px;padding:1px 5px;font-size:.75rem}.metrics-table code.muted{color:var(--text-muted)}.chat-messages{scrollbar-gutter:stable both-edges;flex-direction:column;flex:1;align-items:stretch;min-width:0;padding:1rem 2rem 1rem 0;display:flex;overflow:hidden auto}.chat-message{overflow-wrap:break-word;word-break:break-word;width:fit-content;min-width:0;max-width:85%;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem;line-height:1.6}.chat-message.user{background:var(--cirql-navy);color:#fff;margin-left:auto;margin-right:0}.chat-message.assistant{background:var(--surface);border:1px solid var(--border);margin-left:0;margin-right:auto}.chat-message.streaming{border-color:var(--cirql-teal);border-width:2px}.message-row{flex-direction:column;width:fit-content;max-width:85%;margin-bottom:1rem;display:flex}.message-row-user{align-self:flex-end}.message-row-assistant,.message-row-system{align-self:flex-start}.message-row .chat-message{box-sizing:border-box;width:100%;max-width:100%;margin:0}.message-timestamp{color:var(--text-muted);margin-bottom:.25rem;font-size:.7rem;line-height:1.25}.message-row-user .message-timestamp{text-align:left}.message-row-assistant .message-timestamp,.message-row-system .message-timestamp{text-align:right}.markdown-content p{margin:0 0 .5rem}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:.75rem 0 .25rem;line-height:1.3}.markdown-content h1{font-size:1.25rem}.markdown-content h2{font-size:1.1rem}.markdown-content h3{font-size:1rem}.markdown-content ul,.markdown-content ol{margin:.25rem 0 .5rem;padding-left:1.5rem}.markdown-content li{margin-bottom:.125rem}.markdown-content code{color:var(--cirql-navy);background:#00cccc1a;padding:.1rem .35rem;font-family:SFMono-Regular,Consolas,monospace;font-size:.8em}.chat-message.user .markdown-content code{color:#fff;background:#fff3}.markdown-content pre{background:var(--cirql-navy);color:#e2e8f0;max-width:100%;margin:.5rem 0;padding:.75rem 1rem;font-size:.8rem;line-height:1.5;overflow-x:auto}.markdown-content{overflow-wrap:break-word;word-break:break-word;min-width:0;max-width:100%}.markdown-content table{max-width:100%;display:block;overflow-x:auto}.markdown-content pre code{font-size:inherit;color:inherit;background:0 0;padding:0}.markdown-content blockquote{border-left:3px solid var(--cirql-teal);color:var(--text-muted);margin:.5rem 0;padding:.25rem .75rem}.markdown-content table{border-collapse:collapse;width:100%;margin:.5rem 0;font-size:.85rem}.markdown-content th,.markdown-content td{border:1px solid var(--border);text-align:left;padding:.375rem .625rem}.markdown-content th{background:var(--bg);font-weight:600}.markdown-content a{color:var(--cirql-navy);text-decoration:underline}.chat-message.user .markdown-content a{color:#fff}.markdown-content hr{border:none;border-top:1px solid var(--border);margin:.75rem 0}.thinking-indicator{color:var(--text-muted);align-items:center;gap:.625rem;padding:.75rem 0;font-size:.85rem;display:flex}.thinking-dots{gap:5px;display:flex}.thinking-dots span{background:var(--cirql-teal);border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite thinking-bounce}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes thinking-bounce{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.thinking-text{font-style:italic}.chat-input-wrapper{border-top:1px solid var(--border);padding-top:1rem;position:relative}.chat-input-wrapper.drag-active{background:var(--primary-light)}.chat-attachments-preview{flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem;display:flex}.attachment-pill{border:1px solid var(--border);width:64px;height:64px;position:relative;overflow:hidden}.attachment-pill.text,.attachment-pill.pdf{background:var(--bg);width:auto;min-width:180px;max-width:280px;height:64px}.attachment-pill img{object-fit:cover;width:100%;height:100%}.attachment-file{flex-direction:column;justify-content:center;gap:.125rem;height:100%;padding:.5rem .75rem .5rem .5rem;display:flex}.attachment-icon{font-size:1rem}.attachment-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:.75rem;font-weight:600;overflow:hidden}.attachment-size{color:var(--text-muted);font-size:.65rem}.attachment-pill button{color:#fff;cursor:pointer;background:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.85rem;line-height:1;display:flex;position:absolute;top:2px;right:2px}.attachment-pill button:hover{background:var(--error)}.chat-input-bar{align-items:stretch;gap:.5rem;display:flex}.chat-attach-btn{background:var(--bg);border:1px solid var(--border);cursor:pointer;width:44px;height:44px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.chat-attach-btn:hover:not(:disabled){color:var(--cirql-navy);border-color:var(--cirql-navy)}.chat-attach-btn:disabled{opacity:.5;cursor:not-allowed}.chat-input-bar textarea{border:1px solid var(--border);resize:none;outline:none;flex:1;min-width:0;min-height:44px;max-height:260px;padding:.625rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.5}.chat-input-bar textarea:focus{border-color:var(--cirql-navy)}.chat-send-btn{background:var(--cirql-navy);color:#fff;cursor:pointer;border:none;flex-shrink:0;height:44px;padding:0 1.25rem;font-size:.85rem;font-weight:600}.chat-send-btn:hover:not(:disabled){background:var(--primary-hover)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-stop-btn{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;background:#7f1d1d;border:none;flex-shrink:0;min-width:110px;height:44px;padding:0 1.25rem;font-size:.85rem;font-weight:600;position:relative;overflow:hidden}.chat-stop-btn:hover{background:#991b1b}.chat-stop-progress{background:#dc2626;transition:none;position:absolute;top:0;bottom:0;left:0}.chat-stop-label{z-index:1;position:relative}.drag-overlay{color:#fff;pointer-events:none;border:2px dashed var(--cirql-teal);background:#003366d9;justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;display:flex;position:absolute;inset:0}.message-attachments{flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem;display:flex}.message-attachment{border:1px solid var(--border);cursor:pointer;background:0 0;max-width:240px;max-height:240px;padding:0;transition:border-color .15s;display:block;overflow:hidden}.message-attachment:hover{border-color:var(--cirql-teal)}.message-attachment img{object-fit:contain;max-width:100%;max-height:240px;display:block}.chat-message.user .message-attachment{border-color:#fff3}.chat-message.user .message-attachment:hover{border-color:var(--cirql-teal)}.message-attachment-file{background:var(--bg);border:1px solid var(--border);color:var(--text);align-items:center;gap:.5rem;max-width:280px;padding:.5rem .75rem;font-size:.85rem;text-decoration:none;display:inline-flex}.message-attachment-file:hover{border-color:var(--cirql-teal);text-decoration:none}.message-attachment-file .attachment-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:600;overflow:hidden}.message-attachment-file .attachment-size{color:var(--text-muted);font-size:.7rem}.chat-message.user .message-attachment-file{color:#fff;background:#ffffff1a;border-color:#fff3}.chat-message.user .message-attachment-file:hover{border-color:var(--cirql-teal)}.chat-message.user .message-attachment-file .attachment-size{color:#ffffffb3}.lightbox-overlay{z-index:500;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.lightbox-overlay img{object-fit:contain;cursor:default;max-width:100%;max-height:100%;box-shadow:0 8px 32px #00000080}.lightbox-close{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;line-height:1;display:flex;position:absolute;top:1rem;right:1rem}.lightbox-close:hover{background:#ffffff40}.page-message{text-align:center;color:var(--text-muted);padding:4rem 1rem}.chat-error{color:var(--error);background:#fef2f2;border:1px solid #fecaca;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.85rem}.chat-notice{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-left:3px solid #f59e0b;flex-wrap:wrap;align-items:flex-start;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;font-size:.85rem;line-height:1.4;display:flex}.chat-notice-icon{flex-shrink:0;font-size:1rem;line-height:1.2}.chat-notice-text{flex:1;min-width:0}.chat-notice-error{color:#991b1b;background:#fef2f2;border-color:#fecaca #fecaca #fecaca #ef4444}.chat-notice-detail{color:#7f1d1d;white-space:pre-wrap;word-break:break-word;background:#0000000a;border-radius:3px;flex-basis:100%;margin-top:.35rem;padding:.4rem .55rem;font-family:SFMono-Regular,Consolas,monospace;font-size:.75rem}.chat-status-bar{background:var(--primary-light);border:1px solid var(--border);color:var(--cirql-navy);border-bottom:none;align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.8rem;display:flex}.chat-status-text{flex:1;font-weight:600}.chat-status-counter{color:var(--text-muted);font-family:SFMono-Regular,Consolas,monospace;font-size:.75rem}.tool-call-log{background:var(--bg);border:1px solid var(--border);margin-bottom:1rem;padding:.5rem;font-size:.75rem}.tool-log-entry{align-items:center;gap:.5rem;padding:.25rem .5rem;line-height:1.4;display:flex}.tool-log-entry.running{color:var(--cirql-navy);background:var(--primary-light)}.tool-log-entry.done{color:var(--text-muted)}.tool-log-icon{text-align:center;flex-shrink:0;width:12px;display:inline-block}.tool-log-entry.running .tool-log-icon{color:var(--cirql-teal);animation:1s infinite pulse}.tool-log-entry.done .tool-log-icon{color:var(--success)}.tool-log-name{flex-shrink:0;font-weight:600}.tool-log-input{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.7rem;overflow:hidden;background:0 0!important;padding:0!important}.account-page{max-width:600px}.account-page h2{margin-bottom:1.5rem}.account-section{background:var(--surface);border:1px solid var(--border);margin-bottom:1.5rem;padding:1.5rem}.account-section h3{margin-bottom:1rem;font-size:1rem}.form-message{margin-bottom:1rem;padding:.5rem .75rem;font-size:.85rem}.form-message.success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.form-message.error{color:var(--error);background:#fef2f2;border:1px solid #fecaca}.tool-calls-active{margin-bottom:.5rem}.tool-call-badge{background:var(--primary-light);color:var(--cirql-navy);border:1px solid var(--border);margin:.125rem .25rem;padding:.25rem .75rem;font-size:.75rem;font-weight:500;animation:1.5s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.tool-calls-list{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.5rem}.tool-call-item{margin-bottom:.25rem;font-size:.75rem}.tool-call-name{color:var(--cirql-navy);margin-right:.5rem;font-weight:600}.tool-call-input{color:var(--text-muted);word-break:break-all;font-size:.7rem}.crud-page h2{margin-bottom:1.5rem}.crud-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.crud-header h2{margin-bottom:0}.crud-form{background:var(--surface);border:1px solid var(--border);margin-bottom:1.5rem;padding:1.5rem}.crud-form h3{margin-bottom:1rem}.form-row{gap:1rem;display:flex}.form-row .form-group{flex:1}.form-actions{gap:.5rem;margin-top:.5rem;display:flex}select{border:1px solid var(--border);background:var(--surface);outline:none;width:100%;padding:.5rem .75rem;font-size:.875rem}select:focus{border-color:var(--cirql-navy)}.btn-active{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.btn-inactive{color:var(--error);background:#fef2f2;border:1px solid #fecaca}.users-section{margin-bottom:2rem}.users-section h3{margin-bottom:.75rem;font-size:.95rem}.org-assign-row{align-items:center;gap:.5rem;display:flex}.org-assign-row select{flex:1}.cred-status{padding:.5rem 0;font-size:.875rem}.cred-masked{background:var(--bg);padding:.125rem .5rem;font-family:monospace}.detail-page{width:100%}.detail-header{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.detail-header h2{margin:0;font-size:1.35rem}.detail-section{background:var(--surface);border:1px solid var(--border);margin-bottom:1.25rem;padding:1.25rem}.section-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.section-header h3{margin:0;font-size:1rem}.detail-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.125rem;font-size:.7rem;font-weight:600;display:block}.status-badge{padding:.125rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.status-badge.active{color:#15803d;background:#f0fdf4}.status-badge.inactive{color:var(--error);background:#fef2f2}.status-badge.cat-knowledge{color:#1d4ed8;background:#eff6ff}.status-badge.cat-task-management{color:#b45309;background:#fef3c7}.status-badge.cat-patchworks{color:#be185d;background:#fce7f3}.assign-row{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.assign-row select{flex:1}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--bg)}.empty-row{text-align:center;color:var(--text-muted);padding:1rem!important}.page-description{color:var(--text-muted);margin-bottom:1.5rem;font-size:.85rem;line-height:1.5}.settings-table .num{text-align:right;font-variant-numeric:tabular-nums}.tool-description{color:var(--text-muted);max-width:28rem;font-size:.8rem}.scope-pill{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);margin-right:.25rem;padding:.125rem .375rem;font-size:.65rem;font-weight:500;display:inline-block}.row-disabled{opacity:.45}.toggle-switch{cursor:pointer;width:2.5rem;height:1.25rem;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{background:#cbd5e1;border-radius:1rem;transition:background .15s;position:absolute;inset:0}.toggle-slider:before{content:"";background:#fff;border-radius:50%;width:.95rem;height:.95rem;transition:transform .15s;position:absolute;bottom:.15rem;left:.15rem}.toggle-switch input:checked+.toggle-slider{background:var(--cirql-navy)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(1.25rem)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.metrics-cards{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem;display:grid}.metric-card{background:var(--bg);border:1px solid var(--border);text-align:center;padding:1rem}.metric-value{color:var(--cirql-navy);font-size:1.5rem;font-weight:700}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;font-size:.7rem;font-weight:600}.metrics-breakdown{margin-bottom:1rem}.metrics-breakdown h4{color:var(--text-muted);margin-bottom:.5rem;font-size:.85rem}a{color:var(--cirql-navy);text-decoration:none}a:hover{text-decoration:underline}.audit-action{text-transform:uppercase;letter-spacing:.04em;padding:.125rem .5rem;font-size:.65rem;font-weight:700;display:inline-block}.audit-login{color:#1d4ed8;background:#dbeafe}.audit-logout{color:#475569;background:#e2e8f0}.audit-created{color:#15803d;background:#f0fdf4}.audit-updated{color:#a16207;background:#fef9c3}.audit-deleted{color:var(--error);background:#fef2f2}.audit-restored{color:#6d28d9;background:#ede9fe}.audit-force_password_change{color:#c2410c;background:#ffedd5}.audit-filters{flex-wrap:wrap;align-items:center}.audit-filters input[type=date]{border:1px solid var(--border);padding:.4rem .5rem;font-size:.85rem}.audit-table td.audit-changes-cell{vertical-align:top;max-width:380px}.audit-diff-table td{vertical-align:top}.audit-changes-clamp{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.35;display:-webkit-box;overflow:hidden}.htd-overlay{z-index:200;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.htd-dialog{background:var(--surface);width:100%;max-width:400px;padding:1.5rem;box-shadow:0 8px 32px #00000026}.htd-dialog h3{margin-bottom:.5rem;font-size:1rem}.htd-dialog p{color:var(--text-muted);margin-bottom:1.25rem;font-size:.875rem}.htd-actions{gap:.5rem;display:flex}.htd-delete-btn{color:var(--error);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fef2f2;border:1px solid #fecaca;flex:1;padding:.625rem 1rem;font-size:.85rem;font-weight:600;position:relative;overflow:hidden}.htd-progress{background:var(--error);transition:none;position:absolute;top:0;bottom:0;left:0}.htd-label{z-index:1;mix-blend-mode:difference;color:#fff;position:relative}.knowledge-filters{gap:.5rem;margin-bottom:1rem;display:flex}.knowledge-filters select{width:auto;min-width:140px}.knowledge-filters input{border:1px solid var(--border);outline:none;padding:.5rem .75rem;font-size:.875rem}.knowledge-filters input:focus{border-color:var(--cirql-navy)}.knowledge-scope{text-transform:uppercase;letter-spacing:.04em;padding:.125rem .5rem;font-size:.65rem;font-weight:700;display:inline-block}.scope-global{color:#1d4ed8;background:#dbeafe}.scope-agency{color:#a16207;background:#fef9c3}.scope-org{color:#15803d;background:#f0fdf4}.scope-project{color:#6d28d9;background:#ede9fe}.form-textarea{border:1px solid var(--border);resize:vertical;outline:none;width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.form-textarea:focus{border-color:var(--cirql-navy)}.knowledge-edit-page{height:calc(100vh - var(--header-height) - var(--brand-bar-height) - 8px);flex-direction:column;gap:1rem;min-height:0;padding:1rem 1.25rem;display:flex}.knowledge-edit-header{flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.knowledge-edit-header h2{margin:0}.knowledge-edit-meta{flex-shrink:0}.knowledge-edit-meta .form-group{margin-bottom:.5rem}.knowledge-edit-split{flex:1;grid-template-columns:1fr 1fr;gap:1rem;min-height:0;display:grid}.knowledge-edit-pane{background:var(--surface);border:1px solid var(--border);flex-direction:column;min-height:0;display:flex;overflow:hidden}.knowledge-edit-pane-header{background:var(--bg);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);flex-shrink:0;padding:.5rem .75rem;font-size:.75rem;font-weight:700}.knowledge-edit-textarea{resize:none;width:100%;min-height:0;color:var(--text);background:var(--surface);tab-size:2;border:none;outline:none;flex:1;padding:.75rem 1rem;font-family:SFMono-Regular,Consolas,Courier New,monospace;font-size:.85rem;line-height:1.5}.knowledge-edit-preview{flex:1;padding:.75rem 1rem;font-size:.875rem;overflow-y:auto}.knowledge-edit-preview-empty{color:var(--text-muted);font-style:italic}@media (width<=900px){.knowledge-edit-split{grid-template-columns:1fr}.knowledge-edit-page{height:auto}}.knowledge-view-meta{flex-direction:column;flex-shrink:0;gap:.75rem;display:flex}.knowledge-view-row{flex-wrap:wrap;gap:1rem;display:flex}.knowledge-view-field{flex-direction:column;flex:1;gap:.25rem;min-width:140px;display:flex}.knowledge-view-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.7rem;font-weight:700}.knowledge-view-value{color:var(--text);font-size:.875rem}.knowledge-view-value-block{background:var(--surface);border:1px solid var(--border);white-space:pre-wrap;padding:.5rem .75rem}.knowledge-view-answer{flex:1;width:100%;min-height:0}.billing-period h3{margin-bottom:.75rem}.usage-bar-container{background:var(--bg);border:1px solid var(--border);width:100px;height:18px;position:relative;overflow:hidden}.usage-bar{transition:width .3s;position:absolute;top:0;bottom:0;left:0}.usage-pct{z-index:1;color:var(--text);padding-left:4px;font-size:.65rem;font-weight:700;line-height:16px;position:relative}
