:root{font-family:Inter,"Segoe UI",system-ui,sans-serif;color:#253a38;background:#f6f8f7;font-synthesis:none;--green:#176454;--muted:#73817d;--line:#e0e7e3}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea,summary{outline-offset:4px}button{cursor:pointer;transition:background .15s}button:disabled{cursor:not-allowed;opacity:.45}button,textarea,input{border-radius:8px}button{font-size:13px;font-weight:600}button:hover:not(:disabled){filter:brightness(.95)}[hidden]{display:none!important}.topbar{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px}.brand{display:flex;align-items:center;gap:13px}.brand-icon{background:var(--green);color:white;width:43px;height:43px;display:grid;place-items:center;font-size:29px;font-weight:700;border-radius:12px}.brand strong{font-size:20px;letter-spacing:-.6px}.brand strong span{font-weight:400;color:#64716d;margin-left:5px}.brand small{display:block;font-size:11px;color:var(--muted);margin-top:3px;letter-spacing:.3px}.connection{display:flex;align-items:center;gap:16px}.pill{display:inline-block;font-size:11px;background:#edf2ef;color:#526b61;padding:6px 10px;border-radius:20px}.pill.connected{background:#e5f1e9;color:#347451}.secondary,.icon-button{border:1px solid var(--line);background:#fff;color:#3d5850;padding:10px 14px}.icon-button{font-size:22px;padding:4px 11px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;color:#88948e}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading h1,.section-heading h2{font-size:19px;letter-spacing:-.5px;margin:7px 0 0}.section-heading h1 span{font-size:11px;background:#e5ece7;padding:3px 7px;vertical-align:middle;margin-left:5px;border-radius:5px}#workspace{display:grid;grid-template-columns:300px minmax(0,1fr);height:calc(100vh - 88px);min-height:600px}.inbox{padding:27px 18px 16px;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.search{display:flex;align-items:center;border:1px solid var(--line);background:white;border-radius:8px;padding:0 11px;margin:24px 0 18px;color:#94a09a}.search span{font-size:24px}.search input{width:100%;border:0;background:transparent;padding:12px 8px;font-size:12px;min-width:0}.list-caption{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin:0 3px 13px}#tickets{overflow:auto;flex:1}.ticket-row{display:block;text-align:left;border:1px solid transparent;background:transparent;width:100%;padding:15px 13px;margin-bottom:7px;color:#334b42}.ticket-row:hover{background:#edf2ee}.ticket-row.selected{border-color:#bbd4c5;background:#e8f1ea}.ticket-row-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#7b8e80}.ticket-row strong{display:block;font-size:13px;line-height:1.5;margin:7px 0;overflow-wrap:anywhere;font-weight:600}.ticket-row small{font-size:10px;color:var(--muted)}.inbox-footer{border-top:1px solid var(--line);padding-top:17px;margin-top:15px;font-size:10px;color:var(--muted)}.dot{display:inline-block;width:6px;height:6px;background:#5b8d70;border-radius:50%;margin-right:5px}.conversation{background:#fff;overflow:auto;min-width:0}.empty-state{display:flex;height:100%;min-height:400px;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px;color:var(--muted)}.empty-icon{font-size:32px;background:#f0f5f1;border:1px solid #e3ebe4;color:#739881;border-radius:18px;padding:14px 22px}.empty-state h2{font-weight:500;font-size:21px;color:#466254;margin:23px 0 0;letter-spacing:-.5px}.empty-state p{font-size:13px;line-height:1.9}.ticket-heading{padding:28px 30px 20px;border-bottom:1px solid var(--line)}.ticket-meta{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px;flex-wrap:wrap}.ticket-meta a{margin-left:auto;text-decoration:none;color:var(--green);font-size:11px}.ticket-heading h2{font-size:23px;line-height:1.35;letter-spacing:-.6px;font-weight:600;overflow-wrap:anywhere;margin:18px 0 12px}.text-button{background:none;border:none;color:var(--green);padding:0;font-size:11px}.messages{padding:25px 30px}.message{border:1px solid var(--line);border-radius:10px;margin-bottom:18px;overflow:hidden}.message.private{background:#fffaf0;border-color:#e9dfc3}.message.agent{background:#f6f9f7}.message-header{padding:14px 17px;display:flex;justify-content:space-between;gap:8px;font-size:11px;border-bottom:1px solid #e8ede9}.message-header span{color:var(--muted);font-size:10px}.message-body{padding:17px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8}.attachments{padding:0 17px 15px;color:#8a7959;font-size:11px}.editor-panel{margin:0 30px 32px;padding:26px;border:1px solid var(--line);border-radius:12px;background:#fcfdfb;display:flex;flex-direction:column}.generate{align-self:flex-start;max-width:250px}.send-area{max-width:440px;align-self:flex-end;width:100%}.ai-badge{font-size:11px;border:1px solid #d9e5d7;border-radius:6px;background:#eef4e9;color:#668255;padding:6px}.editor-intro{font-size:12px;color:var(--muted);line-height:1.8;margin:17px 0 21px}.generate{border:1px solid #cdded0;background:#eef4ed;color:#315e3e;width:100%;padding:13px}.editor-label{display:flex;justify-content:space-between;gap:5px;margin:25px 0 10px;font-size:9px;letter-spacing:.6px;color:var(--muted)}.editor-label label{font-weight:700}.editor-label span{letter-spacing:0}#answer{resize:vertical;min-height:320px;width:100%;border:1px solid var(--line);background:#fff;padding:16px;color:#2c4437;font-size:13px;line-height:1.8}#answer:disabled{background:#f7f9f5}#answer::placeholder{color:#9aa59a}details{font-size:11px;color:var(--muted);padding-top:12px}details ul{padding-left:18px;overflow-wrap:anywhere;max-height:120px;overflow:auto}.send-area{padding-top:20px}.approval{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.6;color:#637469}.approval input{accent-color:var(--green);margin-top:3px}.primary{background:var(--green);color:#fff;border:0;padding:14px 18px;width:100%;margin-top:15px;text-align:left}.primary span{float:right}.send-area p{text-align:center;font-size:9px;color:#8b978f;margin:12px 0 0}.send-area p strong{font-weight:500}.draft-warning{font-size:11px;line-height:1.6;padding:10px;background:#fff2db;color:#836025;border-radius:7px;margin-top:12px}#reconcile{margin-top:10px}#notice{padding:12px 32px;background:#e6f1e8;color:#315c3c;font-size:13px;border-bottom:1px solid #ccdecf}#notice.error{background:#fff0e9;color:#a84d30;border-color:#f1d9cb}.empty-list{padding:25px 10px;color:#819187;font-size:12px;line-height:1.7}.load-more{margin-top:10px}.setup{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:35px auto;padding:35px;max-width:950px;background:#fff;border:1px solid var(--line);border-radius:14px}.setup h1{font-size:30px;letter-spacing:-1px;margin:15px 0}.setup p{font-size:13px;line-height:1.8;color:var(--muted)}.setup code{font-size:11px;overflow-wrap:anywhere;color:#52694f}.setup-details{border-left:1px solid var(--line);padding-left:30px}.setup-details strong{font-size:14px}body:has(#notice:not([hidden])) #workspace{height:calc(100vh - 132px)}body:has(#setup:not([hidden])) #workspace{height:650px}@media(min-width:1550px){#workspace{grid-template-columns:330px minmax(0,1fr)}.editor-panel{margin:0 44px 36px;padding:30px}.inbox{padding:30px 22px}.messages{padding:30px 44px}.ticket-heading{padding:30px 44px}}@media(max-width:1100px){#workspace{grid-template-columns:245px minmax(0,1fr)}.editor-panel{margin:0 20px 24px;padding:22px}.section-heading h1,.section-heading h2{font-size:17px}.messages,.ticket-heading{padding:20px}.inbox{padding:24px 12px}}@media(max-width:850px){#workspace{grid-template-columns:220px minmax(0,1fr)}.editor-panel{padding:18px}.topbar{padding:0 20px}.connection{gap:8px}.connection .pill{max-width:150px}.setup{margin:20px;gap:20px;padding:24px}}@media(max-width:570px){.topbar{height:auto;min-height:90px;padding:15px;gap:15px;flex-wrap:wrap}.brand strong{font-size:18px}#workspace{display:block;height:auto!important}.inbox{position:static;max-height:350px;min-height:240px}.conversation{min-height:300px;overflow:visible}.setup{display:block}.setup-details{border:0;padding:15px 0 0}.editor-panel{margin:0 14px 24px;padding:16px}.generate{max-width:none}.send-area{max-width:none}.empty-state{min-height:300px}.connection .pill{max-width:none}}

.usage-summary{display:flex;align-items:center;gap:18px;padding-right:18px;border-right:1px solid var(--line)}.usage-summary div{display:flex;flex-direction:column;gap:4px}.usage-summary small{font-size:9px;letter-spacing:1px;color:var(--muted)}.usage-summary strong{font-size:12px;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.usage-summary>span{font-size:10px;color:var(--muted);cursor:help}.answer-cost{font-size:11px;color:var(--muted);line-height:1.7;margin:12px 0 0}@media(max-width:1000px){.topbar{height:auto;min-height:88px;gap:16px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}.connection{flex-wrap:wrap}.usage-summary{gap:12px}.usage-summary>span{display:none}}
.app-navigation{display:flex;gap:8px;padding:10px 32px;border-bottom:1px solid var(--line);background:white}.app-navigation button{border:0;background:transparent;padding:9px 20px;color:var(--muted)}.app-navigation button[aria-pressed=true]{background:#e5f1e9;color:var(--green)}#workspace{height:calc(100vh - 146px)}body:has(#notice:not([hidden])) #workspace{height:calc(100vh - 190px)}.system-page{max-width:1250px;margin:0 auto;padding:32px}.system-page>p,.system-page .section-heading p{color:var(--muted);font-size:13px;line-height:1.7}.system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}.system-card{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;min-width:0}.system-card h2{font-size:18px;margin:8px 0 18px}.system-card p{font-size:12px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}.system-card label{display:flex;flex-direction:column;gap:8px;font-size:12px;margin:15px 0}.system-card input:not([type=checkbox]){border:1px solid var(--line);padding:11px;width:100%;background:#fcfdfb;color:#253a38}.system-card .check-label{flex-direction:row;align-items:center}.system-card input[type=checkbox]{accent-color:var(--green)}.system-jobs{margin-top:24px}.system-job{padding:12px 0;border-top:1px solid var(--line)}.system-job summary{cursor:pointer;color:var(--green);font-size:13px}.system-job pre{max-height:420px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f8f7;padding:16px;font-size:12px;line-height:1.6;color:#253a38}@media(max-width:700px){.system-grid{grid-template-columns:1fr}.system-page{padding:20px}.app-navigation{padding:10px 20px}}
.learning-toolbar{display:flex;align-items:end;gap:14px;margin:20px 0}.learning-toolbar label,.learning-sync label{display:flex;flex:1;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}.learning-toolbar input,.learning-toolbar select,.learning-sync input{border:1px solid var(--line);padding:10px;background:white;color:#253a38;min-width:120px}.learning-sync{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.learning-sync-heading{min-width:180px}.learning-sync-range{display:flex;gap:12px;flex:1}.learning-sync p{margin:6px 0 0}.learning-layout{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:20px;align-items:start}.learning-list{padding:12px;position:sticky;top:12px}.learning-ticket{display:block;width:100%;text-align:left;background:white;border:1px solid transparent;padding:12px;border-radius:8px;color:#253a38}.learning-ticket:hover{background:#f2f6f3}.learning-ticket.selected{border-color:#bbd4c5;background:#e8f1ea}.learning-ticket strong,.learning-ticket small{display:block;line-height:1.6}.learning-ticket strong{font-size:12px}.learning-ticket small{font-size:10px;color:var(--muted)}.learning-pages{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--line);margin-top:10px;font-size:11px}.learning-detail{min-width:0}.learning-thread{margin:18px 0}.review-form{border-top:1px solid var(--line);padding-top:16px}.review-form h3{font-size:16px}.review-form>label{display:flex;flex-direction:column;gap:7px;margin:15px 0;font-size:12px}.review-form input:not([type=radio]),.review-form select,.review-form textarea{border:1px solid var(--line);background:white;padding:11px;color:#253a38}.review-form textarea{min-height:180px;resize:vertical;font:inherit;line-height:1.7}.rating-choice{display:flex;gap:18px;margin:16px 0}.rating-choice label{display:flex;align-items:center;gap:7px;font-size:12px}.rating-choice input{accent-color:var(--green)}.review-form p{color:var(--muted);font-size:11px;line-height:1.7}.learning-detail .primary{max-width:240px}@media(max-width:850px){.learning-toolbar{flex-wrap:wrap}.learning-layout{grid-template-columns:1fr}.learning-list{position:static}.learning-sync{align-items:flex-start;flex-direction:column}.learning-sync-range{width:100%}}

.learning-review-badge {
  display: inline-block;
  margin-bottom: 6px;
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.5;
}
.learning-review-badge.good { background: #dff0e5; color: #205d3b; }
.learning-review-badge.needs-work { background: #fff0d5; color: #80520a; }
.learning-review-badge.unreviewed { background: #eef1ef; color: #596861; }

.learning-labels { margin: 0 0 20px; }
.learning-labels summary { cursor: pointer; font-weight: 600; }
.label-catalog { display: flex; flex-wrap: wrap; gap: 8px; }
.label-catalog button[aria-pressed=true] { background: #e5f1e9; border-color: #176454; }
.label-manager { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; margin-top: 18px; }
.label-manager label { flex: 1; min-width: 160px; }
.label-manager select { padding: 10px; border: 1px solid var(--line); background: white; border-radius: 8px; }
.ticket-label-form { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; border-bottom: 1px solid var(--line); margin-bottom: 16px; }
.ticket-label-form label { flex: 1; min-width: 180px; }

.login-page { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.login-card { width: 100%; max-width: 420px; }
.login-card .primary { width: 100%; }
.account { display: flex; align-items: center; gap: 12px; font-size: 12px; }

.system-users { margin-top: 24px; }
.user-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0; border-top: 1px solid var(--line); font-size: 13px; }
.user-row small { display: block; margin-top: 4px; color: var(--muted); }
.users-forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.users-forms h3 { margin: 24px 0 0; font-size: 15px; }
.system-card select { width: 100%; padding: 11px; border: 1px solid var(--line); background: #fcfdfb; color: #253a38; }
.password-dialog { width: calc(100% - 32px); max-width: 420px; }
.password-dialog::backdrop { background: rgb(0 0 0 / 0.3); }
.password-dialog .dialog-error { color: #a84d30; }
.dialog-actions { display: flex; justify-content: flex-end; align-items: end; gap: 12px; }
.dialog-actions .primary { width: auto; }
@media (max-width: 700px) { .users-forms { grid-template-columns: 1fr; } }
