:root{font-family:Tahoma,"Leelawadee UI",sans-serif;color:#192c3b;background:#f1f5f7;font-size:16px;line-height:1.65;--teal:#006f65;--line:#dae3e8;--muted:#5c6d7a}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #bacbd2;border-radius:8px;background:white;color:#243d4b;padding:.6rem 1rem;font-weight:600}button:hover{background:#edf4f5}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:var(--teal);color:white;border-color:var(--teal)}.primary:hover{background:#00594f}.quiet{border:0;background:transparent}input,textarea,select{border:1px solid #bdcdd4;border-radius:8px;padding:.7rem;background:white;color:#192c3b;width:100%;min-width:0}textarea{resize:vertical}input:focus,textarea:focus,select:focus,button:focus-visible{outline:3px solid #70c9bf;outline-offset:2px}label{display:block;font-size:.9rem;font-weight:600;margin:.8rem 0}label input,label select{margin-top:.3rem}h1,h2,p{margin:0 0 .65rem}h1{font-size:1.5rem}h2{font-size:1.15rem}.muted,small{color:var(--muted)}small{font-size:.8rem}.eyebrow{font-size:.75rem;letter-spacing:.1em;font-weight:700;color:var(--teal)}[hidden]{display:none!important}.login{min-height:100dvh;display:grid;place-items:center;background:linear-gradient(120deg,#102d3c 0 46%,#e5eeef 46%);padding:1.2rem}.login-card{width:100%;max-width:430px;background:white;padding:2.4rem;border-radius:18px;box-shadow:0 20px 70px #0b293333}.login-card .primary{width:100%;margin-top:1rem}.brand-mark{display:grid;place-items:center;background:var(--teal);color:white;font-size:1.5rem;font-weight:700;width:60px;height:60px;border-radius:16px;margin-bottom:1.4rem}.brand-mark.small{width:43px;height:43px;border-radius:12px;font-size:1.1rem;margin:0}.topbar{height:84px;background:#102d3c;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;gap:1rem}.brand{display:flex;gap:.85rem;align-items:center;color:white;text-decoration:none;font-weight:700}.brand small{display:block;color:#bdd0da;font-size:.75rem;font-weight:400}.user{display:flex;align-items:center;gap:1rem;font-size:.9rem}.user button{color:white}.user button:hover{background:#224554}.tabs{display:flex;gap:.4rem;background:white;padding:.5rem 2rem;border-bottom:1px solid var(--line);overflow:auto}.tabs button{border:0;white-space:nowrap;color:var(--muted)}.tabs .active{background:#e1f3ef;color:#005d53}.system-status{padding:.45rem 2rem;background:#fff3d5;border-bottom:1px solid #eadbb4;font-size:.85rem;margin:0}#notice{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);background:#112f3e;color:white;border-radius:10px;padding:.85rem 1.3rem;z-index:20;max-width:90vw;box-shadow:0 5px 25px #0003}.inbox{display:grid;grid-template-columns:340px minmax(0,1fr);min-height:calc(100dvh - 175px);max-width:1600px;margin:auto}.conversation-pane{background:#f8fafb;border-right:1px solid var(--line);padding:1.3rem 1rem}.pane-heading{display:flex;align-items:center;justify-content:space-between}.count{padding:.1rem .6rem;border-radius:20px;background:#e0eaee;font-size:.85rem}.filter-label{margin:0 0 1rem}.conversation-item{display:block;text-align:left;width:100%;border:1px solid transparent;background:transparent;padding:1rem .8rem;margin:.3rem 0}.conversation-item.selected{background:white;border-color:#69b6aa;box-shadow:0 2px 8px #183b4510}.conversation-item strong{font-size:.95rem}.conversation-item p{font-size:.85rem;font-weight:400;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:.4rem 0}.list-meta{display:flex;justify-content:space-between;align-items:center;gap:.4rem;font-size:.75rem;font-weight:400}.badge{display:inline-block;font-size:.8rem;padding:.12rem .55rem;border-radius:20px;background:#e8eef2;color:#39586b}.badge.waiting{background:#ffedc0;color:#785000}.badge.human{background:#e1edff;color:#214982}.badge.ai{background:#d8f2e8;color:#126447}.chat{background:white;min-width:0}.chat-header{padding:1.3rem 1.6rem;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:1rem}.actions{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.85rem}.messages{height:46dvh;min-height:260px;max-height:650px;overflow:auto;padding:1.2rem 1.6rem;background:#f8fbfc;display:flex;flex-direction:column;gap:1rem}.message{max-width:80%;align-self:flex-start}.message.out{align-self:flex-end}.bubble{background:white;border:1px solid var(--line);border-radius:12px 12px 12px 3px;padding:.75rem 1rem;white-space:pre-wrap;overflow-wrap:anywhere}.out .bubble{background:#e0f3ee;border-color:#c6e3da;border-radius:12px 12px 3px 12px}.message small{display:block;margin-top:.2rem;font-size:.75rem}.out small{text-align:right}.message.failed .bubble{border-color:#d44949}.composer{padding:1rem 1.6rem;border-top:1px solid var(--line)}.composer label{margin:0 0 .4rem}.composer-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:.6rem}.propose{margin:0 1.6rem 1.5rem;border-top:1px solid var(--line);padding-top:1rem}.propose summary{cursor:pointer;color:var(--teal);font-weight:600}.propose p{font-size:.85rem;margin-top:.5rem}.empty{display:grid;place-content:center;text-align:center;min-height:450px;color:var(--muted);padding:2rem}.empty h2{color:#2d4657}.empty-icon{font-size:3rem;color:#51a99b}.older{display:block;margin:.5rem auto;border:0;font-size:.8rem;padding:.2rem .6rem}.secondary{max-width:1150px;margin:auto;padding:2rem}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem}.panel,.review-card,.person{background:white;border:1px solid var(--line);border-radius:12px;padding:1.3rem;margin-bottom:1rem}.review-card header{display:flex;justify-content:space-between;gap:1rem}.review-card .actions{margin-top:1rem}.review-card textarea{min-height:100px}.team-grid{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:1.4rem}.person .actions{margin-top:.8rem}.audit-row{padding:.8rem 1rem;background:white;border-bottom:1px solid var(--line);display:flex;gap:1rem;justify-content:space-between;flex-wrap:wrap}.audit-row small{overflow-wrap:anywhere}#login-error{color:#9f2020;font-size:.9rem;margin-top:1rem}@media(max-width:900px){.inbox{grid-template-columns:280px minmax(0,1fr)}.chat-header{align-items:flex-start;flex-direction:column}.topbar{padding:0 1rem}.tabs{padding:.5rem 1rem}}@media(max-width:650px){.topbar{height:auto;min-height:80px;padding:.8rem 1rem}.brand small{display:none}.user{gap:.25rem;flex-direction:column;align-items:flex-end}.user button{padding:.2rem .4rem;font-size:.8rem}.inbox{display:block}.conversation-pane{border-right:0;border-bottom:1px solid var(--line);padding:1rem}#conversation-list{max-height:230px;overflow:auto}.conversation-item{padding:.6rem}.chat-header,.composer{padding:1rem}.messages{padding:1rem;height:45dvh}.message{max-width:92%}.composer-footer{align-items:flex-end}.composer-footer small{max-width:55%}.propose{margin:0 1rem 1rem}.system-status{padding:.6rem 1rem}.secondary{padding:1rem}.team-grid{grid-template-columns:1fr}.login-card{padding:1.6rem}.empty{min-height:260px}.section-heading{align-items:flex-start}.section-heading p{font-size:.9rem}}

/* Keep each inbox column within the available viewport; scrolling one never moves the other. */
@media(min-width:651px){
 #workspace{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
 .topbar,.tabs,.system-status{flex-shrink:0}
 .inbox{flex:1;min-height:0;width:100%;overflow:hidden}
 .conversation-pane{min-height:0;display:flex;flex-direction:column;overflow:hidden}
 .pane-heading,.filter-label{flex-shrink:0}
 #conversation-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}
 .chat{min-height:0;overflow-y:auto;overscroll-behavior-y:contain}
 .secondary{min-height:0;width:100%;overflow-y:auto}
}
input[type=checkbox]{width:auto;margin-right:.5rem}details.panel summary{cursor:pointer;font-weight:700;color:var(--teal)}#setup-error{color:#9f2020;font-size:.9rem;margin-top:1rem}

.knowledge-row{display:flex;align-items:center;gap:1rem;width:100%;text-align:left;padding:1rem;margin:.5rem 0;background:white;min-width:0}.knowledge-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.knowledge-title small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400}.knowledge-row .badge{flex-shrink:0}.badge.pending{background:#fff0c7;color:#785000}.badge.approved{background:#d8f2e8;color:#126447}.badge.rejected{background:#fce3e3;color:#8e2929}.knowledge-toolbar{display:grid;grid-template-columns:1fr 200px;gap:1rem}.knowledge-pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0 2rem}#knowledge-detail{width:min(760px,94vw);max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:14px;padding:1.5rem}#knowledge-detail::backdrop{background:#102d3c99}#knowledge-detail .review-card{border:0;padding:0;margin:0}#knowledge-detail textarea{min-height:130px}#knowledge-detail .section-heading{position:sticky;top:-1.5rem;background:white;padding:.5rem 0;z-index:1}@media(max-width:650px){.knowledge-toolbar{grid-template-columns:1fr}.knowledge-row{gap:.5rem;padding:.8rem}.knowledge-pagination{flex-wrap:wrap}#knowledge-detail{padding:1rem}.knowledge-row .badge{font-size:.7rem}}

.message-image{display:block;max-width:min(320px,100%);max-height:360px;object-fit:contain;border-radius:8px}.message-image-link{display:block}

.conversation-item{display:flex;gap:10px;align-items:center}.customer-avatar{width:44px;height:44px;border-radius:50%;background:#dbece8;display:grid;place-items:center;flex-shrink:0;overflow:hidden}.customer-avatar img{width:100%;height:100%;object-fit:cover}.conversation-summary{flex:1;min-width:0}.conversation-title{display:flex;align-items:center;gap:8px}.conversation-title strong{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-title time{font-size:.7rem;font-weight:400;color:var(--muted);white-space:nowrap}

/* Keep text bubbles compact even when the status line is wider than the message. */
.messages{gap:.55rem}
.message{max-width:min(80%,480px)}
.message.text .bubble{width:fit-content;max-width:100%;padding:8px 12px;font-family:Meiryo,-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",sans-serif;font-size:14px;line-height:17.5px;border:0;border-radius:16px;background:#f2f3f5}
.message.out.text .bubble{background:#bbd6fe;border-radius:16px}
.message.failed .bubble{outline:1px solid #d44949}
.message.out .bubble{margin-left:auto}
.message small{margin-top:.12rem;font-size:.7rem;line-height:1.3}
@media(max-width:650px){.message{max-width:85%}}

/* Assistant workspace: review work first, then reusable knowledge and optional details. */
#knowledge{max-width:1120px}
#knowledge .section-heading{margin-bottom:1rem}
.knowledge-live-summary{padding:.8rem 1rem;margin:0 0 1rem;border:1px solid #bfded5;border-radius:10px;background:#e9f5f1;color:#174e46;font-weight:700}
.knowledge-block#knowledge-review{width:100%}
#knowledge-review .knowledge-live-summary{padding:.4rem .7rem;margin:.45rem 0 .7rem;font-size:.85rem}
#knowledge-review .knowledge-toolbar{gap:.5rem;margin-bottom:.45rem}
.knowledge-filters{margin:.2rem 0 .55rem}.knowledge-filters>summary{cursor:pointer;color:var(--teal);font-size:.82rem;font-weight:700}.knowledge-filters[open]>.knowledge-toolbar{margin-top:.45rem}
#knowledge-review .knowledge-row{padding:.45rem .7rem;margin:.25rem 0;gap:.6rem;font-size:.9rem}
#knowledge-review .knowledge-title small{font-size:.72rem}
#knowledge-review .knowledge-pagination{margin:.65rem 0 0;font-size:.82rem}
#knowledge-review #draft-status:not(:empty){margin-top:1rem}
.knowledge-block{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.4rem 1.5rem;margin-bottom:1rem;box-shadow:0 2px 10px #1739470a}
.knowledge-block>h2{margin:0 0 .25rem;font-size:1.2rem}
.knowledge-block>.muted{margin-bottom:1rem}
.knowledge-block .knowledge-row{background:#f8fafb;border-color:#dfe8eb;margin:.45rem 0}
.knowledge-block .knowledge-pagination{margin:1rem 0 0}
.knowledge-disclosure{padding:0}
.knowledge-disclosure>summary{cursor:pointer;padding:1.15rem 1.5rem;color:#174e46;font-size:1.05rem;font-weight:700}
.knowledge-disclosure>summary small{display:block;font-weight:400;margin-left:1.15rem}
.knowledge-disclosure[open]>summary{border-bottom:1px solid var(--line)}
.knowledge-disclosure>#assistant-panel,.knowledge-disclosure>details{margin:1rem 1.5rem}
.knowledge-disclosure>#assistant-panel h2{margin-top:1rem}
.billing-link{color:#d8f3ec;font-size:.8rem;font-weight:600;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.billing-link:hover{color:#fff}.billing-link:focus-visible{outline:3px solid #70c9bf;outline-offset:3px;border-radius:3px}
.knowledge-disclosure>#assistant-panel .panel{padding:1rem;margin-bottom:.7rem}
@media(max-width:650px){.knowledge-block{padding:1rem}.knowledge-disclosure{padding:0}.knowledge-disclosure>summary{padding:1rem}.knowledge-disclosure>#assistant-panel,.knowledge-disclosure>details{margin:1rem}}
@media(max-width:650px){.billing-link{font-size:.7rem;white-space:nowrap;text-align:right}}
