:root{color:#15212a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#eef3f5}*{box-sizing:border-box}body{background:linear-gradient(180deg,#e7eff1 0,#f7fafb 240px 100%);margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{align-items:center;background:#166344;border:0;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:40px;padding:0 14px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}button:hover{background:#0f5137}button.secondary{background:#fff;border:1px solid #cfd9dd;color:#344054}button.secondary:hover{background:#eef4f5;border-color:#b8c8ce}button.active{background:#123f32;border:1px solid #123f32;box-shadow:0 8px 18px #123f3229}input,select,textarea,pre{background:#fff;border:1px solid #cfd8dc;border-radius:8px;color:#172026;width:100%}input:focus,select:focus,textarea:focus{border-color:#2c8f6a;box-shadow:0 0 0 3px #2c8f6a24;outline:0}input,select{height:40px;padding:0 10px}input[type=file]{align-items:center;display:flex;height:auto;min-height:44px;padding:9px}input[type=checkbox]{height:auto;width:auto}textarea{min-height:84px;padding:10px;resize:vertical}textarea.large{min-height:190px}label{color:#52636b;font-size:13px;font-weight:650;margin-top:10px}pre{margin:0;overflow:auto;padding:12px;white-space:pre-wrap}.shell{margin:0 auto;max-width:1440px;padding:28px 32px 40px}.topbar{align-items:center;display:flex;gap:24px;justify-content:space-between;margin-bottom:18px}.app-hero{background:#ffffffd1;border:1px solid rgba(197,212,218,.88);border-radius:10px;box-shadow:0 18px 48px #1e354014;padding:20px}.hero-title{align-items:center;display:flex;gap:16px;min-width:0}.brand-mark{align-items:center;background:#123f32;border-radius:8px;color:#fff;display:flex;flex:0 0 auto;font-size:20px;font-weight:800;height:48px;justify-content:center;width:48px}.eyebrow{color:#607078;display:block;font-size:12px;font-weight:750;letter-spacing:0;margin-bottom:3px;text-transform:uppercase}.topbar h1{font-size:30px;line-height:1.08;margin:0 0 5px}.topbar p{color:#52636b;margin:0;overflow-wrap:anywhere}.system-picker{display:grid;gap:8px;grid-template-columns:180px 110px}.toolbar{background:#fff;border:1px solid #dce6ea;border-radius:10px;display:grid;gap:12px;grid-template-columns:minmax(220px,280px) 136px minmax(220px,280px) 164px;margin-bottom:18px;padding:12px}.top-actions{display:grid;gap:12px;justify-items:end}.tabs{background:#edf3f5;border:1px solid #d5e0e4;border-radius:10px;display:flex;gap:6px;padding:5px}.tabs button,.subtabs button{min-height:38px}.subtabs{background:#fff;border:1px solid #dce6ea;border-radius:10px;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px;padding:8px}.section-tabs{background:#fff;border:1px solid #dce6ea;border-radius:10px;display:flex;flex-wrap:wrap;gap:6px;grid-column:1 / -1;margin-bottom:0;padding:8px}.overview-strip{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.overview-item{background:#fff;border:1px solid #dce6ea;border-radius:10px;display:grid;gap:4px;min-width:0;padding:14px 16px}.overview-item span{color:#607078;font-size:12px;font-weight:750;text-transform:uppercase}.overview-item strong{color:#172026;font-size:18px;overflow-wrap:anywhere}.auth-field{display:grid;gap:4px;width:290px}.login-box{background:#fff;border:1px solid #dce4e8;border-radius:10px;display:grid;gap:8px;padding:12px;width:320px}.session-box{align-items:center;background:#fff;border:1px solid #dce6ea;border-radius:10px;display:flex;gap:10px;justify-content:flex-end;padding:6px}.session-box span{color:#344054;font-weight:700;padding:0 6px}.auth-field label{margin:0}.auth-note,.muted{color:#52636b;margin:0}.layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(280px,1fr) minmax(300px,1fr) 420px}.config-screen{align-items:start;display:grid;max-width:820px}.config-settings-screen{max-width:none}.layout-editor{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 420px}.widget-preview-panel{min-width:0}.sticky-preview{position:sticky;top:18px}.training-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}.training-main{min-width:0}.training-panel{min-height:360px}.training-section{display:grid;gap:14px}.topics-crud{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(240px,.8fr) minmax(300px,1.2fr)}.topic-editor,.topic-catalog{display:grid;gap:10px;min-width:0}.topic-editor textarea{min-height:104px}.topic-form-actions,.topic-actions{align-items:center;display:flex;gap:8px}.topic-list{display:grid;gap:8px;max-height:460px;overflow:auto}.topic-item{align-items:center;background:#f9fbfc;border:1px solid #dce4e8;border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto auto;padding:10px}.topic-item.inactive{background:#f4f4f4;color:#667085}.topic-item>div:first-child{display:grid;gap:3px;min-width:0}.topic-item span{color:#52636b;font-size:13px;overflow-wrap:anywhere}.topic-status{align-items:center;display:flex;gap:4px;white-space:nowrap}.panel{background:#fff;border:1px solid #dce4e8;border-radius:10px;box-shadow:0 12px 34px #1e35400f;display:grid;gap:12px;padding:20px}.panel h2{align-items:center;display:flex;font-size:17px;gap:8px;margin:0 0 4px}.settings-panel{gap:18px}.panel-heading,.section-heading{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.panel-title{display:grid;gap:4px}.panel-heading h2,.section-heading h3,.section-heading p,.panel-title p{margin:0}.section-heading h3{font-size:16px}.settings-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(220px,320px)}.field-group{display:grid;gap:7px;min-width:0}.field-group label{margin:0}.span-2{grid-column:1 / -1}.color-field{align-items:center;display:grid;gap:10px;grid-template-columns:72px 1fr}.color-field input[type=color]{height:40px;padding:4px}.color-field code{background:#eef4f5;border:1px solid #d7e2e6;border-radius:8px;color:#344054;min-height:40px;padding:10px}.guardrails-input{min-height:132px}.rules-section{border-top:1px solid #edf1f3;display:grid;gap:12px;padding-top:16px}.status{background:#edf7f2;border:1px solid #cbe7da;border-radius:8px;color:#12583b;font-weight:650;margin:0;padding:10px 12px}.danger{background:#b42318;border:1px solid #b42318}.danger:hover{background:#912018}.icon-button{aspect-ratio:1;min-height:36px;padding:0;width:36px}.sources-panel{margin-top:0}.ops-layout,.users-layout{align-items:start;display:grid;gap:18px;grid-template-columns:380px 1fr}.conversation-list{max-height:720px;overflow:auto}.conversation-item{align-items:start;background:#fff;border:1px solid #dce4e8;color:#172026;display:grid;gap:4px;height:auto;justify-content:stretch;min-height:68px;padding:12px;text-align:left}.conversation-item.active{background:#123f32;border-color:#14532d;box-shadow:inset 3px 0 #14532d;color:#fff}.conversation-item span,.operator-meta span{color:#52636b;font-size:13px}.conversation-item.active span{color:#d7e9e2}.operator-chat{min-height:720px}.operator-meta{align-items:center;display:flex;gap:10px;justify-content:space-between}.operator-messages{background:#f1f6f7;border:1px solid #dce4e8;border-radius:8px;min-height:470px}.operator-messages small{display:block;font-size:11px;font-weight:700;margin-bottom:4px;text-transform:uppercase}.operator-chat form{display:grid;gap:8px;grid-template-columns:1fr 48px}.checks{align-items:start;display:grid;gap:8px}.checks label{align-items:center;display:flex;gap:8px;margin:0}.source-list{display:grid;gap:10px}.rules-list{border:1px solid #dce4e8;border-radius:10px;display:grid;gap:10px;max-height:460px;overflow:auto;padding:10px}.rule-item{background:#f9fbfc;border:1px solid #e4ecef;border-radius:10px;display:grid;gap:8px;padding:12px}.rule-item:last-child{border-bottom:1px solid #e4ecef}.rule-header{align-items:center;display:flex;justify-content:space-between}.source-library{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(320px,460px) 1fr}.source-row{align-items:center;border:1px solid #dce4e8;border-radius:10px;display:flex;gap:14px;justify-content:space-between;padding:12px}.source-row.active{border-color:#14532d;box-shadow:inset 3px 0 #14532d}.source-row div,.source-main,.source-detail>div{display:grid;gap:4px;min-width:0}.source-main{background:transparent;color:#172026;flex:1;height:auto;justify-content:stretch;min-height:0;padding:0;text-align:left}.source-row strong{overflow-wrap:anywhere}.source-row span,.source-detail span{color:#52636b;font-size:13px}.source-row code{background:#eef2f3;border-radius:6px;color:#172026;padding:5px 7px;width:fit-content}.source-detail{background:#f8fbfc;border:1px solid #dce4e8;border-radius:10px;display:grid;gap:10px;min-height:260px;min-width:0;padding:14px}.content-preview{max-height:520px}.metadata-preview{background:#eef2f3;max-height:180px}.widget{background:#eef2f3;border-radius:8px;box-shadow:0 18px 50px #0f172a29;display:grid;grid-template-rows:52px 1fr 58px;height:100vh;overflow:hidden}.widget.preview{border:1px solid #dce4e8;box-shadow:none;height:430px}.widget header{align-items:center;color:#fff;display:flex;gap:9px;padding:0 16px}.messages{align-content:start;display:grid;gap:10px;overflow:auto;padding:14px}.messages p{border-radius:8px;line-height:1.4;margin:0;max-width:86%;padding:10px 12px}.messages .assistant{background:#fff;border:1px solid #dce4e8}.messages .user{background:#14532d;color:#fff;justify-self:end}.widget form{align-items:center;background:#fff;border-top:1px solid #dce4e8;display:grid;gap:8px;grid-template-columns:1fr 42px;padding:8px}.widget form button{min-height:42px;padding:0}@media(max-width:980px){.shell{padding:16px}.topbar{align-items:stretch;display:grid}.hero-title{align-items:start}.top-actions{justify-items:stretch}.tabs,.subtabs,.section-tabs{display:grid}.panel-heading,.section-heading{align-items:stretch;display:grid}.settings-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.overview-strip{grid-template-columns:1fr 1fr}.layout,.layout-editor,.training-layout,.topics-crud{grid-template-columns:1fr}.sticky-preview{position:static}.source-library,.toolbar,.ops-layout,.users-layout{grid-template-columns:1fr}.source-row{align-items:stretch;display:grid}}@media(max-width:560px){.overview-strip{grid-template-columns:1fr}.brand-mark{height:42px;width:42px}.topbar h1{font-size:25px}}
