:root{--navy: #122947;--navy-dark: #0c1d33;--navy-light: #1c3d66;--blue: #175796;--blue-hover: #12467a;--cyan: #8ddddd;--bg: #eef3fa;--surface: #ffffff;--border: #d2deeb;--border-strong: #9aafc5;--text: #11233c;--muted: #4a627a;--danger: #9c2635;--danger-bg: #fdf2f4;--success: #146c43;--success-bg: #e8f6ef;--warning: #8a5300;--warning-bg: #fff6e5;font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text)}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-screen.admin-auth{background:linear-gradient(160deg,#0d1f36,#173459 55%,#eef3fa 55.1%)}.auth-screen.client-auth{background:radial-gradient(circle at top,#dce8f6,#eef3fa 65%)}.auth-card{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 14px 36px #12294724}.auth-header{background:var(--navy);color:#fff;padding:22px 26px}.auth-header h1{margin:4px 0;font-size:1.55rem;line-height:1.2}.auth-header p{margin:0;color:#cfdfef;font-size:.92rem}.eyebrow{display:inline-block;margin:0;color:var(--cyan);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.auth-body{padding:24px 26px}.app-shell{display:grid;grid-template-columns:262px minmax(0,1fr);min-height:100vh;min-height:100dvh;transition:grid-template-columns .22s ease}.app-shell.sidebar-collapsed{grid-template-columns:0px minmax(0,1fr)}.sidebar-backdrop{display:none}.sidebar{background:linear-gradient(180deg,#0d213a,#102a49 58%,#0a1b30);color:#fff;display:flex;flex-direction:column;padding:18px 14px;border-right:1px solid rgba(255,255,255,.08);box-shadow:4px 0 22px #09162824;overflow-x:hidden;overflow-y:auto;z-index:40}.app-shell.sidebar-collapsed .sidebar{padding-left:0;padding-right:0;border-right:0;box-shadow:none;opacity:0;pointer-events:none}.sidebar-brand{padding:4px 6px 16px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:14px}.sidebar-brand-top{display:flex;align-items:flex-start;gap:11px}.sidebar-avatar{width:40px;height:40px;border-radius:11px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:.92rem;font-weight:800;letter-spacing:.04em;color:#fff;background:linear-gradient(135deg,#1f6fc1,#16949b);border:1px solid rgba(141,221,221,.42);box-shadow:0 4px 12px #0000003d;margin-top:2px}.sidebar-brand-meta{flex:1;min-width:0}.sidebar-close-btn,button.sidebar-close-btn{display:none;width:32px;height:32px;padding:0;border-radius:8px;background:#ffffff14;color:#d6e4f2;border:1px solid rgba(255,255,255,.14);flex-shrink:0}button.sidebar-close-btn:hover:not(:disabled){background:#ffffff2e;color:#fff}.sidebar-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px}.admin-shell .sidebar-badge{background:#8ddddd26;color:var(--cyan);border:1px solid rgba(141,221,221,.32)}.client-shell .sidebar-badge{background:#ffffff1f;color:#dbeafe}.sidebar-title{margin:0;font-size:1.08rem;font-weight:750;letter-spacing:-.01em;line-height:1.22;color:#fff;overflow-wrap:break-word}.sidebar-subtitle{margin:2px 0 0;font-size:.77rem;color:#9fb8d3;overflow-wrap:break-word}.sidebar-nav{display:flex;flex-direction:column;gap:4px;flex:1}.sidebar-group-label{display:block;padding:6px 12px 4px;font-size:.67rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#7ea3c8}.sidebar-group-spaced{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.sidebar .nav-item,button.nav-item{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:11px;width:100%;text-align:left;padding:10px 13px;border-radius:10px;border:1px solid transparent;background:transparent;color:#cfe0f2;font:inherit;font-size:.91rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.nav-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#8fb4d8;transition:color .16s ease}.nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.sidebar .nav-item:hover:not(:disabled),button.nav-item:hover:not(:disabled){background:#ffffff14;color:#fff;transform:translate(2px)}.sidebar .nav-item:hover:not(:disabled) .nav-icon,button.nav-item:hover:not(:disabled) .nav-icon{color:#fff}.sidebar .nav-item.active,button.nav-item.active,.sidebar .nav-item[aria-current=page],button.nav-item[aria-current=page],button.nav-item.active:hover:not(:disabled){background:linear-gradient(135deg,#1f6fc1f2,#154e8aeb);border-color:#8ddddd47;color:#fff;box-shadow:0 5px 14px #06122252;transform:none}.sidebar .nav-item.active:before,button.nav-item.active:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:3px;border-radius:999px;background:var(--cyan)}.sidebar .nav-item.active .nav-icon,button.nav-item.active .nav-icon{color:var(--cyan)}.sidebar-footer{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:6px}.sidebar-footer .nav-item,.sidebar-footer button.nav-item{font-size:.86rem;padding:9px 13px}.workspace{display:flex;flex-direction:column;min-width:0;min-height:100vh;min-height:100dvh}.topbar{min-height:56px;background:var(--surface);border-bottom:1px solid var(--border);padding:8px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.topbar-left{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0}button.menu-toggle-btn{width:36px;height:36px;padding:0;border-radius:9px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--navy);background:#f1f6fc;border:1px solid #cddced}button.menu-toggle-btn:hover:not(:disabled){background:#e1ecf9;border-color:#b4cae3}.topbar-company{font-size:1.08rem;font-weight:750;color:var(--navy)}.topbar-section{font-size:1.02rem;font-weight:700;color:var(--navy)}.domain-pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;background:#e6eff9;color:var(--navy);font-size:.78rem;font-weight:600}.topbar-source{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:.88rem;font-weight:650;color:var(--muted)}.topbar-source select{margin:0;padding:5px 10px;font-size:.88rem;font-weight:600;color:var(--navy);border-color:var(--border-strong);background:#f8fbff}.topbar-right{display:flex;align-items:center;gap:12px}.user-chip{font-size:.86rem;color:var(--muted);font-weight:600}.content-area{flex:1;padding:20px 24px;width:100%;max-width:none}.toolbar-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.toolbar-title{margin:0;font-size:1.3rem;color:var(--navy)}.search-box{flex:1;min-width:220px;max-width:380px}.search-box input{margin:0;width:100%;padding:8px 12px;border:1px solid var(--border-strong);border-radius:8px;font:inherit;background:#fff}.search-box-with-mic{position:relative;display:flex;align-items:center}.search-box-with-mic input{padding-right:40px}.search-mic-btn,button.search-mic-btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:30px;height:30px;padding:0;border-radius:7px;border:1px solid transparent;background:transparent;color:var(--navy);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.search-mic-btn:hover:not(:disabled),button.search-mic-btn:hover:not(:disabled){background:#eaf2fb;color:#175796}.search-mic-btn.listening,button.search-mic-btn.listening,button.search-mic-btn.listening:hover:not(:disabled){background:#dc2626!important;color:#fff!important;border-color:#b91c1c!important;animation:voicePulse 1.5s infinite}.panel,.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px}.card-flush{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:18px}.card-header-navy{background:var(--navy);color:#fff;padding:12px 18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.card-header-navy h2,.card-header-navy h3{margin:0;font-size:1rem;font-weight:700}.card-header-navy p{margin:2px 0 0;font-size:.82rem;color:#c5d8ec}.card-body{padding:18px 20px}fieldset{border:0;margin:0;padding:0;min-width:0}legend{font-weight:750;color:var(--navy);margin-bottom:12px;font-size:1rem}label{display:block;font-weight:650;margin-bottom:12px;font-size:.92rem}label.checkbox-inline{display:inline-flex;align-items:center;gap:8px;font-weight:600;margin-right:18px;cursor:pointer}[hidden]{display:none!important}input:not([type=checkbox]):not([type=radio]):not([hidden]),textarea,select{display:block;width:100%;font:inherit;padding:8px 11px;border:1px solid var(--border-strong);border-radius:8px;margin-top:4px;background:#fff;color:var(--text)}input:not([type=checkbox]):not([type=radio]):focus,textarea:focus,select:focus{outline:2px solid rgba(23,87,150,.25);border-color:var(--blue)}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}button,.btn,.actions a{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:8px;padding:8px 14px;font:inherit;font-size:.9rem;font-weight:650;white-space:nowrap;background:var(--blue);color:#fff;text-decoration:none;cursor:pointer;transition:background .15s}button:hover:not(:disabled),.btn:hover,.actions a:hover{background:var(--blue-hover)}button:disabled{opacity:.52;cursor:default}.btn-secondary,a.btn-secondary,.actions a.btn-secondary{background:#e7eff8;color:var(--navy);border:1px solid #c3d4e6}.btn-secondary:hover:not(:disabled),a.btn-secondary:hover,.actions a.btn-secondary:hover{background:#d8e6f5}.btn-sm{padding:5px 10px;font-size:.83rem}.btn-link-inline,.btn-link-inline:hover:not(:disabled){background:transparent;color:var(--blue);padding:2px 4px;font-size:.82rem;font-weight:600;text-decoration:underline}.db-picker-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.db-picker-row input:not([type=checkbox]):not([type=radio]),.db-picker-row select{margin-top:0}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:700;white-space:nowrap}.status-active{background:var(--success-bg);color:var(--success)}.status-inactive{background:#edf1f6;color:#4f6277}.status-pending{background:var(--warning-bg);color:var(--warning)}.alert{padding:11px 15px;border-radius:9px;margin-bottom:14px;font-weight:600;font-size:.92rem}.alert-error,.error{background:var(--danger-bg);color:var(--danger);border:1px solid #f1c2c8}.alert-ok{background:var(--success-bg);color:var(--success);border:1px solid #bce3ce}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px 13px;text-align:left;border-bottom:1px solid var(--border);overflow-wrap:break-word;word-break:normal;font-size:.92rem}.history-table .history-col-question{line-height:1.46;min-width:240px}.history-table .history-col-date{white-space:nowrap;width:1%;color:var(--muted);font-size:.86rem;font-variant-numeric:tabular-nums}.history-table th.history-col-date{color:#fff}.history-table .history-col-action{white-space:nowrap;width:1%;text-align:right}@media screen and (min-width:761px){table.mobile-cards:not(.result-table) thead th:last-child,table.mobile-cards:not(.result-table) tbody td.card-actions{width:1%;white-space:nowrap;text-align:right}table.mobile-cards:not(.result-table) tbody td.card-actions .actions{justify-content:flex-end;flex-wrap:nowrap}}thead th{background:var(--navy);color:#fff;font-weight:650;font-size:.84rem;letter-spacing:.02em;white-space:nowrap}tbody tr:hover{background:#f5f9fe}tbody tr.clickable-row{cursor:pointer}td code{background:#edf3fb;color:var(--navy);padding:2px 7px;border-radius:5px;font-size:.84rem}.app-shell.chat-locked,.app-shell.chat-locked .workspace{height:100vh;height:100dvh;overflow:hidden}.perm-tags{display:flex;flex-wrap:wrap;gap:5px}.perm-tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:650}.perm-tag.perm-on{background:#e5f3ec;color:#146c43;border:1px solid #bde0ce}.perm-tag.perm-off{background:#f3f5f8;color:#63758a;border:1px solid #dce3ec}.perm-box{background:#f7faff;border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin:10px 0 14px}.perm-box h4{margin:0 0 10px;font-size:.92rem;color:var(--navy)}.perm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.perm-card{display:flex;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;background:#fff;border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s}.perm-card.active{border-color:var(--blue);background:#f0f7ff}.perm-card input[type=checkbox]{margin-top:3px}.perm-card strong{display:block;font-size:.88rem;color:var(--navy)}.perm-card span{display:block;font-size:.79rem;font-weight:450;color:var(--muted);margin-top:2px}.ai-provider-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-bottom:16px}.ai-tab{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:12px;text-align:left}.ai-tab:hover:not(:disabled){background:#f5f9fe;border-color:var(--border-strong)}.ai-tab.selected{background:#f1f7ff;border-color:var(--blue);box-shadow:0 3px 12px #1757961f}.ai-tab-top{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px}.ai-tab-top strong{font-size:1rem;color:var(--navy)}.ai-tab-model{font-size:.85rem;color:var(--muted);font-weight:550}.ai-tab-rate{font-size:.8rem;font-weight:700;color:var(--blue);background:#eaf3fd;border:1px solid #c9dff7;padding:2px 8px;border-radius:999px}.ai-tab-key{font-size:.78rem;font-weight:650}.ai-tab-key.ok{color:var(--success)}.ai-tab-key.pending{color:var(--warning)}.model-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.chip{padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:600;background:#eaf1fa;color:var(--navy);border:1px solid #c9daec}.chip:hover:not(:disabled){background:#dbe8f8}.chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}.company-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.company-link-card{display:flex;flex-direction:column;gap:6px;padding:16px 18px;background:#f7faff;border:1px solid var(--border);border-radius:10px;text-decoration:none;color:var(--text);transition:border-color .15s,background .15s}.company-link-card:hover{background:#edf5ff;border-color:var(--blue)}.company-link-card strong{font-size:1.02rem;color:var(--navy)}.company-link-card code{font-size:.83rem;color:var(--blue)}.company-link-card span{font-size:.84rem;font-weight:650;color:var(--navy);margin-top:2px}.chat-workspace{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0}.chat-stream{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden;padding:20px 24px}.chat-inner{width:100%;max-width:none;min-width:0;display:flex;flex-direction:column;gap:18px}.chat-empty{width:100%;max-width:720px;min-width:0;margin:32px auto;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px 22px}.chat-empty h2{margin:0 0 8px;color:var(--navy);font-size:1.22rem;overflow-wrap:break-word}.chat-empty p{margin:0 0 16px;color:var(--muted);overflow-wrap:break-word}.prompt-suggestion,button.prompt-suggestion{display:block;width:100%;max-width:100%;white-space:normal;line-height:1.45;overflow-wrap:break-word;background:#f1f6fd;color:var(--navy);border:1px solid #c5d7ec;text-align:left;padding:11px 14px;font-weight:600;border-radius:10px}.prompt-suggestion:hover:not(:disabled),button.prompt-suggestion:hover:not(:disabled){background:#e2eefc}.chat-turn{display:flex;flex-direction:column;gap:10px;min-width:0;max-width:100%}.bubble-user{align-self:flex-end;max-width:min(760px,90%);background:var(--navy);color:#fff;padding:11px 16px;border-radius:14px 14px 3px;box-shadow:0 2px 6px #1229471a}.bubble-user p{margin:0;white-space:pre-wrap}.bubble-images{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.bubble-image-btn{padding:0;margin:0;border:1.5px solid rgba(255,255,255,.28);border-radius:8px;overflow:hidden;background:#ffffff14;cursor:zoom-in;display:block;line-height:0}.bubble-image-btn:hover:not(:disabled){border-color:var(--cyan);background:#ffffff26}.bubble-image-btn img{display:block;max-width:220px;max-height:150px;width:auto;height:auto;object-fit:cover}.bubble-meta{display:block;margin-top:4px;font-size:.75rem;color:#b8cde3}.bubble-assistant{align-self:stretch;width:100%;min-width:0;max-width:100%;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #1229470d}.assistant-header{background:#f4f8fd;border-bottom:1px solid var(--border);padding:9px 16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.assistant-title{font-weight:700;color:var(--navy);font-size:.9rem}.assistant-body{padding:16px 18px;min-width:0;max-width:100%}.answer{margin:0 0 14px;min-width:0;max-width:100%;white-space:pre-wrap;overflow-wrap:break-word;line-height:1.58}.result-section{margin-top:14px;min-width:0;max-width:100%}.result-section h4{margin:0 0 8px;color:var(--navy);font-size:.92rem}.result-section .table-scroll,.answer .table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:8px;background:#fff}.result-section .table-scroll{max-height:560px;overflow:auto}.result-section .result-table thead th{position:sticky;top:0;z-index:2}.result-section .result-table,.answer .result-table{width:max-content;min-width:100%;border-collapse:collapse}.result-table th,.result-table td{padding:10px 14px;overflow-wrap:break-word;word-break:normal;vertical-align:middle}.result-table th:last-child,.result-table td:last-child{padding-right:20px}.result-table tbody tr:last-child td{border-bottom:0}.result-table th.col-num,.result-table td.cell-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.result-table td.cell-nowrap{white-space:nowrap}.result-table td.cell-text{min-width:190px;max-width:340px;white-space:normal;overflow-wrap:break-word}.answer .table-wrap .result-table td{max-width:340px;white-space:normal;overflow-wrap:break-word}.usage{display:block;margin-top:10px;color:var(--muted);font-size:.78rem}.chat-composer{background:var(--surface);border-top:1px solid var(--border);padding:12px 24px;transition:background .15s,border-color .15s}.chat-composer.drag-over{background:#eef5ff;border-top-color:var(--blue)}.composer-container{width:100%;max-width:none;display:flex;flex-direction:column;gap:10px}.composer-attachments{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;background:#f5f9fe;border:1px solid var(--border);border-radius:10px}.attachment-chip{position:relative;display:inline-flex}.attachment-thumb-btn{padding:0;margin:0;width:66px;height:52px;border-radius:7px;border:1px solid #c5d7ec;overflow:hidden;background:#fff;cursor:zoom-in;display:block}.attachment-thumb-btn:hover:not(:disabled){border-color:var(--blue);background:#fff}.attachment-thumb-btn img{width:100%;height:100%;object-fit:cover;display:block}.attachment-remove{position:absolute;top:-7px;right:-7px;width:21px;height:21px;padding:0;border-radius:999px;background:var(--navy);color:#fff;border:1.5px solid #fff;font-size:.9rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #12294740}.attachment-remove:hover:not(:disabled){background:#b91c1c}.attachment-hint{font-size:.8rem;color:var(--muted);font-weight:600}.composer-form{display:flex;gap:10px;align-items:flex-end}.composer-attach-btn,.composer-mic-btn{width:46px;height:46px;padding:0!important;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--navy)}.composer-mic-btn.listening,button.composer-mic-btn.listening{background:#dc2626!important;border-color:#b91c1c!important;color:#fff!important;animation:voicePulse 1.5s infinite}.voice-listening-pill{display:inline-flex;align-items:center;gap:8px;margin-bottom:8px;padding:5px 12px;border-radius:999px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:.81rem;font-weight:600}.voice-dot{width:8px;height:8px;border-radius:999px;background:#dc2626;flex-shrink:0;animation:voiceDotBlink 1s ease-in-out infinite}@keyframes voicePulse{0%{box-shadow:0 0 #dc262673}70%{box-shadow:0 0 0 8px #dc262600}to{box-shadow:0 0 #dc262600}}@keyframes voiceDotBlink{0%,to{opacity:1}50%{opacity:.3}}.composer-form textarea{margin:0;flex:1;min-width:0;min-height:46px;max-height:140px;padding:10px 13px}.composer-form>button:last-child{height:46px;padding:0 20px;white-space:nowrap}.composer-pending-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.composer-analyzing-btn,.composer-cancel-btn{height:46px;padding:0 16px;white-space:nowrap}.composer-cancel-btn,button.composer-cancel-btn{background:#fff5f5;color:#b42318;border:1.5px solid #f0988e;font-weight:700}.composer-cancel-btn:hover:not(:disabled),button.composer-cancel-btn:hover:not(:disabled){background:#dc2626;color:#fff;border-color:#b91c1c}.pending-analysis-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.composer-quota-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 14px;margin-bottom:8px;padding:6px 12px;border-radius:9px;background:#f4f8fd;border:1px solid #d5e3f2;font-size:.82rem;color:#2c435c}.composer-quota-bar.exhausted{background:#fef2f2;border-color:#fecaca;color:#991b1b}.composer-quota-stats{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}.quota-num{color:var(--navy);font-variant-numeric:tabular-nums}.quota-num.danger{color:#b91c1c}.quota-sep{color:#94a3b8}.composer-quota-meter{width:140px;height:7px;border-radius:999px;background:#dbe7f4;overflow:hidden;flex-shrink:0}.composer-quota-fill{height:100%;background:linear-gradient(90deg,#175796,#16949b);border-radius:999px;transition:width .25s ease}.composer-quota-fill.warn{background:#d97706}.composer-quota-fill.danger{background:#dc2626}.token-plan-box{margin-top:14px;padding:16px 18px;border-radius:11px;background:#f7faff;border:1px solid #d4e2f2}.token-plan-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;margin-bottom:10px}.token-plan-header strong{display:block;font-size:.96rem;color:var(--navy)}.token-plan-header p{margin:2px 0 0;font-size:.84rem;color:var(--muted)}.token-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:12px}.token-kpi-card{padding:10px 14px;border-radius:9px;background:#fff;border:1px solid #d5e3f2;display:flex;flex-direction:column;gap:2px}.token-kpi-card.available{background:#effaf5;border-color:#b7e4ce}.token-kpi-card.exhausted{background:#fef2f2;border-color:#fecaca}.token-kpi-label{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.token-kpi-value{font-size:1.12rem;color:var(--navy);font-variant-numeric:tabular-nums}.token-kpi-card.available .token-kpi-value{color:#0f6840}.token-kpi-card.exhausted .token-kpi-value{color:#b91c1c}.token-kpi-bar-wrap{grid-column:1 / -1;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.token-progress-track{flex:1;min-width:160px;height:8px;border-radius:999px;background:#dce8f5;overflow:hidden}.token-progress-fill{height:100%;background:linear-gradient(90deg,#175796,#16949b);border-radius:999px;transition:width .25s ease}.token-progress-fill.warn{background:#d97706}.token-progress-fill.danger{background:#dc2626}.token-progress-caption{font-size:.8rem;font-weight:600;color:var(--muted)}.token-conversion-note{margin:8px 0 0;padding:9px 12px;border-radius:8px;background:#eaf3fd;border:1px solid #c5dcf5;color:#123c69;font-size:.86rem}.ai-rate-comparison{margin-top:10px;padding:10px 12px;border-radius:9px;background:#fff;border:1px solid #d5e3f2;display:flex;flex-direction:column;gap:8px}.ai-rate-comparison-label{font-size:.82rem;color:var(--muted)}.ai-rate-pills{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}button.ai-rate-pill{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 11px;border-radius:8px;background:#f8fbff;border:1.5px solid #d4e2f2;color:var(--text);font-size:.81rem;font-weight:500;text-align:left}button.ai-rate-pill strong{color:var(--navy);font-weight:700}button.ai-rate-pill:hover:not(:disabled){background:#eff6ff;border-color:var(--blue)}button.ai-rate-pill.active,button.ai-rate-pill.active:hover:not(:disabled){background:#eaf3fd;border-color:var(--blue);box-shadow:0 2px 8px #1757961f}.db-image-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin:12px 0 16px}.db-image-card{margin:0;border-radius:10px;border:1px solid #cdddf0;background:#f8fbff;overflow:hidden}.db-image-card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:10px 14px;background:#edf4fc;border-bottom:1px solid #d5e3f3}.db-image-card-header strong{font-size:.88rem;color:var(--navy)}.db-image-frame{padding:14px;display:flex;align-items:center;justify-content:center;background:#fff;cursor:zoom-in}.db-image-frame img,.db-inline-img-wrap img{max-width:100%;max-height:540px;width:auto;height:auto;object-fit:contain;border-radius:6px;border:1px solid #e2e8f0;box-shadow:0 4px 16px #0f29421a}button.table-img-btn{display:inline-flex;align-items:center;gap:8px;padding:4px 9px;border-radius:7px;background:#f1f7ff;border:1px solid #c5dcf5;color:var(--blue);font-size:.8rem;font-weight:650}button.table-img-btn:hover:not(:disabled){background:#e3efff;border-color:var(--blue)}button.table-img-btn img{width:38px;height:38px;object-fit:cover;border-radius:4px;border:1px solid #cbd5e1;background:#fff}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#0b182ad1;display:flex;align-items:center;justify-content:center;padding:28px}.image-lightbox img{max-width:min(94vw,1360px);max-height:88vh;border-radius:10px;background:#fff;box-shadow:0 18px 48px #00000073}.lightbox-close{position:fixed;top:18px;right:22px;width:38px;height:38px;padding:0;border-radius:999px;background:#ffffff29;color:#fff;border:1px solid rgba(255,255,255,.35);font-size:1.4rem;line-height:1}.lightbox-close:hover:not(:disabled){background:#ffffff47}.chart{margin:12px 0 16px;padding:16px;background:#f8fbff;border:1px solid var(--border);border-radius:10px}.chart-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:11px;border-bottom:1px solid #e1ebf5}.chart-type-tabs{display:inline-flex;flex-wrap:wrap;gap:5px;background:#eaf1fa;padding:4px;border-radius:9px}.chart-tab{padding:5px 11px;font-size:.82rem;font-weight:650;border-radius:6px;background:transparent;color:var(--navy)}.chart-tab:hover:not(:disabled){background:#ffffffb3}.chart-tab.active,.chart-tab.active:hover:not(:disabled){background:var(--navy);color:#fff}.chart-selectors{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.chart-selectors label{display:inline-flex;align-items:center;gap:7px;margin:0;font-size:.85rem;color:var(--muted)}.chart-selectors select{width:auto;margin:0;padding:5px 10px;font-size:.85rem}.chart-note{margin:0 0 10px;font-size:.84rem;color:var(--muted)}.bar-row{display:grid;grid-template-columns:minmax(90px,210px) minmax(60px,1fr) auto;gap:12px;align-items:center;margin:7px 0;font-size:.88rem}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:500}.bar-value{font-variant-numeric:tabular-nums;font-weight:650;color:var(--navy)}.track{background:#e5ecf5;border-radius:5px;overflow:hidden}.bar{min-height:14px;border-radius:5px;background:#217f85}.negative{background:#a8444e}.pie-layout{display:grid;grid-template-columns:minmax(210px,250px) minmax(240px,1fr);gap:22px;align-items:center;padding:4px 0}.pie-layout.wide-legend{grid-template-columns:minmax(200px,240px) minmax(300px,1fr)}@media(max-width:720px){.pie-layout,.pie-layout.wide-legend{grid-template-columns:1fr;justify-items:center}.pie-legend{width:100%}}.pie-svg{width:100%;max-width:245px;height:auto;display:block;margin:0 auto}.pie-slice-label{fill:#fff;font-size:11px;font-weight:700;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.35)}.donut-total-caption{fill:var(--muted);font-size:11px;font-weight:600}.donut-total-value{fill:var(--navy);font-size:14px;font-weight:750}.pie-legend,.pie-legend-list{display:flex;flex-direction:column;gap:6px}.pie-legend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:5px 8px}.pie-legend.multi-col .pie-legend-row{padding:4px 7px;font-size:.8rem;gap:7px;grid-template-columns:11px minmax(75px,1fr) auto 46px}.chart-selectors label.chart-check{color:var(--navy);font-weight:600;margin-right:4px}.pie-legend-row{display:grid;grid-template-columns:12px minmax(90px,1fr) auto 54px;gap:10px;align-items:center;padding:5px 8px;background:#fff;border:1px solid #e4edf7;border-radius:7px;font-size:.86rem}.pie-swatch{width:12px;height:12px;border-radius:3px;display:inline-block}.pie-legend-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:550}.pie-legend-val{font-variant-numeric:tabular-nums;color:var(--navy)}.pie-legend-pct{text-align:right;font-variant-numeric:tabular-nums;font-weight:650;color:var(--muted)}.pie-legend-total{display:grid;grid-template-columns:minmax(90px,1fr) auto 54px;gap:10px;align-items:center;padding:6px 8px 2px;border-top:1.5px solid #cbd9ea;margin-top:2px;font-size:.86rem;color:var(--navy);font-weight:700}.pie-legend-total span:last-child{text-align:right}.column-chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(46px,1fr));gap:10px;align-items:end;padding-top:8px}.column-item{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}.column-val{font-size:.76rem;font-weight:650;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}.column-track{width:100%;max-width:42px;height:165px;background:#e7eff8;border-radius:6px 6px 3px 3px;display:flex;align-items:flex-end;overflow:hidden}.column-bar{width:100%;background:linear-gradient(180deg,#175796,#217f85);border-radius:5px 5px 0 0}.column-bar.negative{background:#a8444e}.column-label{font-size:.76rem;color:var(--text);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-svg{width:100%;height:auto;max-height:250px;display:block}.axis-label{fill:var(--muted);font-size:11px}.point-label{fill:var(--navy);font-size:10.5px;font-weight:700}.print-only-header{display:none}@media(max-width:920px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1090;background:#0916288a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar,.app-shell.sidebar-collapsed .sidebar{position:fixed;top:0;left:0;bottom:0;width:min(286px,84vw);padding:18px 14px;border-right:1px solid rgba(255,255,255,.12);box-shadow:12px 0 36px #06101e6b;transform:translate(-104%);opacity:1;pointer-events:auto;transition:transform .24s cubic-bezier(.22,1,.36,1);z-index:1100}.app-shell.mobile-menu-open .sidebar{transform:translate(0)}.sidebar-close-btn,button.sidebar-close-btn{display:inline-flex;align-items:center;justify-content:center}.topbar{padding:8px 14px;gap:8px}.chat-stream{padding:14px}.chat-composer{padding:10px 14px}.content-area{padding:16px 14px}}@media screen and (max-width:760px){.topbar{flex-wrap:nowrap;padding:8px 12px;gap:8px}.topbar-left{flex:1;min-width:0;flex-wrap:nowrap;gap:8px}.topbar-company,.topbar-section{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.98rem}.topbar .domain-pill{display:none}.topbar-right{flex-shrink:0;gap:8px}.search-box{width:100%;flex:1 1 100%}.chat-empty{margin:14px auto;padding:20px 16px}.card-body{padding:14px}.perm-tag{white-space:normal}.chart-selectors{width:100%;min-width:0}.chart-selectors label{width:100%;min-width:0;justify-content:space-between}.chart-selectors select{flex:1 1 auto;min-width:0;max-width:100%}html:not(.da-print-measure) .mobile-cards-container,html:not(.da-print-measure) .result-section .table-scroll,html:not(.da-print-measure) .answer .table-wrap{overflow:visible;max-height:none;border:0;background:transparent}html:not(.da-print-measure) .card-flush>.mobile-cards-container{padding:12px;background:#f4f7fc}html:not(.da-print-measure) table.mobile-cards,html:not(.da-print-measure) table.mobile-cards tbody{display:flex!important;flex-direction:column;gap:12px;width:100%!important;min-width:0!important}html:not(.da-print-measure) table.mobile-cards thead{display:none!important}html:not(.da-print-measure) table.mobile-cards tbody tr{display:flex;flex-direction:column;gap:8px;width:100%;background:#fff;border:1px solid #cddaea;border-radius:12px;padding:14px 15px;box-shadow:0 2px 8px #1229470d}html:not(.da-print-measure) table.mobile-cards tbody tr:hover{background:#f9fbff}html:not(.da-print-measure) table.mobile-cards tbody td{border:0!important;padding:0!important;width:100%!important;min-width:0!important;max-width:none!important;white-space:normal!important;text-align:left!important;font-size:.9rem}html:not(.da-print-measure) table.mobile-cards tbody td.card-primary{font-size:.97rem;color:var(--navy);line-height:1.44;padding-bottom:8px!important;border-bottom:1px solid #e8eff7!important}html:not(.da-print-measure) table.mobile-cards tbody td.card-kv,html:not(.da-print-measure) table.result-table.mobile-cards tbody td{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:3px 0!important;border-bottom:1px dashed #eef3f9!important}html:not(.da-print-measure) table.result-table.mobile-cards tbody td:last-child{border-bottom:0!important}html:not(.da-print-measure) table.mobile-cards tbody td.card-kv{border-bottom:0!important}html:not(.da-print-measure) table.mobile-cards tbody td.card-kv:before,html:not(.da-print-measure) table.result-table.mobile-cards tbody td:before{content:attr(data-label);font-size:.74rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;flex:0 0 42%;max-width:45%;text-align:left;overflow-wrap:break-word}html:not(.da-print-measure) table.result-table.mobile-cards tbody td.cell-text{flex-direction:column;align-items:flex-start;gap:3px}html:not(.da-print-measure) table.result-table.mobile-cards tbody td.cell-text:before{flex:none;max-width:100%}html:not(.da-print-measure) table.mobile-cards tbody td.card-stack{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding-top:3px!important}html:not(.da-print-measure) table.mobile-cards tbody td.card-stack:before{content:attr(data-label);font-size:.73rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}html:not(.da-print-measure) table.mobile-cards tbody td.card-actions{padding-top:9px!important;margin-top:2px;border-top:1px solid #e8eff7!important;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}}@media screen and (max-width:540px){.topbar .user-chip{display:none}.composer-form{gap:6px}.composer-attach-btn,.composer-mic-btn{width:42px;height:42px}.composer-form textarea{min-height:42px;padding:8px 10px}.composer-form>button:last-child,.composer-cancel-btn{height:42px;padding:0 12px}.composer-analyzing-btn{display:none}.composer-quota-meter{width:100%}}html.da-print-measure .result-section .table-scroll,html.da-print-measure .answer .table-wrap{max-height:none!important;overflow:visible!important;border:0!important}html.da-print-measure .result-section .result-table,html.da-print-measure .answer .result-table{width:max-content!important;min-width:0!important;zoom:1!important;font-size:11px!important}html.da-print-measure .result-table thead th{position:static!important;white-space:normal!important;max-width:140px!important;padding:5px 6px!important;font-size:10.5px!important;line-height:1.18!important}html.da-print-measure .result-table thead th.col-num{max-width:90px!important}html.da-print-measure .result-table td{padding:5px 6px!important;font-size:11px!important;line-height:1.26!important}html.da-print-measure .result-table th:last-child,html.da-print-measure .result-table td:last-child{padding-right:8px!important}html.da-print-measure .result-table td.cell-num,html.da-print-measure .result-table td.cell-nowrap{white-space:nowrap!important}html.da-print-measure .result-table td.cell-text,html.da-print-measure .answer .table-wrap .result-table td{min-width:105px!important;max-width:210px!important;white-space:normal!important;overflow-wrap:break-word!important}.badge-pending{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.btn-danger-outline{background:#fff5f5;color:#b42318;border:1px solid #f5b7b1}.btn-danger-outline:hover:not(:disabled){background:#fee4e2;border-color:#ef8b80}.topbar-req-btn{display:inline-flex;align-items:center;gap:6px}.topbar-req-btn.has-pending{background:#122947;color:#fff;border-color:#122947}.req-pill-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d92d20;color:#fff;font-size:.74rem;font-weight:700;line-height:1}.nav-item .req-pill-count{margin-left:auto}.device-gate-card{max-width:470px}.device-gate-meta{display:flex;flex-direction:column;gap:8px;padding:12px 14px;margin-bottom:14px;background:#f5f9ff;border:1px solid #d5e3f3;border-radius:10px}.device-gate-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.88rem;color:#354b63}.device-pending-box{padding:14px 16px;margin-bottom:4px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.device-pending-box strong{display:block;margin-bottom:4px;font-size:.94rem}.device-pending-box p{margin:0;font-size:.86rem;line-height:1.45;color:#1e40af}.device-status-note{margin:0 0 12px;padding:9px 12px;border-radius:8px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:.85rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:260;background:#0a16288f;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:16px}.modal-card{width:100%;max-width:640px;max-height:88vh;display:flex;flex-direction:column;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px #0a162859}.modal-scroll-body{overflow-y:auto;flex:1}.device-req-list{display:flex;flex-direction:column;gap:14px}.device-req-card{padding:14px 16px;border-radius:10px;border:1px solid #d5e3f3;background:#f8fbff}.device-req-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px}@media print{html,body,#root{background:#fff!important;color:#000!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.sidebar,.sidebar-backdrop,.topbar,.chat-composer,.actions,.usage,.chart label,.chart-toolbar,.bubble-user,.image-lightbox,.modal-backdrop{display:none!important}.app-shell,.app-shell.chat-locked,.workspace,.app-shell.chat-locked .workspace,.chat-workspace,.chat-stream,.chat-inner,.chat-turn:not(.not-printing),.bubble-assistant,.assistant-body,.result-section{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:0!important;margin:0!important;max-width:none!important}.result-section{margin-top:14px!important}.chat-turn.not-printing{display:none!important}.print-only-header{display:block;margin-bottom:12px;border-bottom:2px solid #122947;padding-bottom:8px}.bubble-assistant{border:0;box-shadow:none;overflow:visible}.assistant-body{padding:0}.table-scroll,.result-section .table-scroll,.answer .table-wrap{max-height:none!important;overflow:visible!important;border:0!important}.result-section .result-table,.answer .result-table{width:var(--print-width, 100%)!important;min-width:0!important;zoom:var(--print-zoom, 1);font-size:11px!important;border:1px solid #cbd5e1}.result-table thead th{position:static!important;white-space:normal!important;max-width:140px!important;padding:5px 6px!important;font-size:10.5px!important;line-height:1.18!important;background:#e4edf8!important;color:#000!important;border-bottom:1.5px solid #94a3b8!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.result-table thead th.col-num{max-width:90px!important}.result-table td{padding:5px 6px!important;font-size:11px!important;line-height:1.26!important}.result-table th:last-child,.result-table td:last-child{padding-right:8px!important}.result-table td.cell-num,.result-table td.cell-nowrap{white-space:nowrap!important}.result-table td.cell-text,.answer .table-wrap .result-table td{min-width:105px!important;max-width:210px!important;white-space:normal!important;overflow-wrap:break-word!important}thead{display:table-header-group}thead th{background:#e4edf8!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}tr,.chart{break-inside:avoid;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
