:root{font:16px/1.6 system-ui;color:#282724;background:#f5f3ee}*{box-sizing:border-box}main{max-width:960px;margin:40px auto;padding:0 24px}header{border-bottom:1px solid #d9d4c9;padding-bottom:24px}header span{font-size:12px;letter-spacing:2px;color:#956a4e}h1{font-size:34px;margin:12px 0}h2{font-size:19px}small,footer{color:#6c685f;overflow-wrap:anywhere}section{margin:28px 0}article{padding:20px 24px;border-radius:12px;background:white;margin:16px 0;border:1px solid #e3ddd1}article[data-role=user]{background:#eae6dc;margin-left:60px}article b{font-size:12px;color:#8a6044}pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere}textarea{width:100%;min-height:110px;background:white;padding:14px;border:1px solid #bdb6a7;border-radius:8px;font:inherit}button{background:#8c5239;color:#fff;border:0;border-radius:6px;padding:10px 20px;cursor:pointer}button:disabled{opacity:.4;cursor:default}#queue div{padding:12px;background:#fff;margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}#queue button{margin-left:16px}#notice{color:#914b2e}footer{font-size:13px;border-top:1px solid #d9d4c9;padding:20px 0}
#register{display:flex;align-items:center;gap:10px;flex-wrap:wrap}#url{flex:1;min-width:220px;padding:10px;font:inherit}nav{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}nav button[aria-pressed=false]{background:#e4ddd1;color:#282724}#controls label{display:block;margin:8px 0}#downloads button{margin:4px}#send[hidden],#detail[hidden]{display:none}
#login,#account-form{max-width:620px}#login label,#account-form label{display:block;margin:10px 0}#login input:not([type=checkbox]),#account-form input:not([type=checkbox]){padding:8px;font:inherit;border:1px solid #bdb6a7;border-radius:4px}#account-form fieldset{border:1px solid #d9d4c9;margin:14px 0}#account-list button{margin-left:8px}#account-form button{margin-right:8px}
[hidden]{display:none!important}
body.chat-layout{margin:0;height:100dvh;overflow:hidden}
.chat-layout main{max-width:none;height:100%;margin:0;padding:0;display:flex;flex-direction:column}
.chat-layout header{flex:none;display:flex;align-items:center;gap:18px;padding:10px 22px;background:#fff;border-bottom:1px solid #e3ddd1}
.chat-layout header h1{font-size:19px;margin:0}.chat-layout header p{margin:0;font-size:13px}
.chat-layout #status{flex:1;overflow-wrap:anywhere;color:#756452}
#workspace{display:grid;grid-template-columns:220px minmax(0,1fr) 270px;flex:1;min-height:0}
#left-rail,#right-rail{overflow:auto;padding:20px 14px;min-width:0;background:#efede7}
#left-rail{border-right:1px solid #ded9cf}#right-rail{border-left:1px solid #ded9cf}
#left-rail h2{margin:0 0 12px;font-size:14px;color:#6c685f}
#pages{display:flex;flex-direction:column;gap:8px;margin:0 0 16px}
#pages button{text-align:left;overflow-wrap:anywhere;padding:12px;font-size:14px}
#new-chat{width:100%;font-size:13px}#new-chat-hint{font-size:12px;color:#746b5d}
#detail{display:flex;flex-direction:column;margin:0;min-height:0;min-width:0}
#chat-heading{padding:14px 26px;background:#faf9f6;border-bottom:1px solid #e3ddd1;flex:none}
#chat-heading h2{margin:0;font-size:17px;overflow-wrap:anywhere}#connection{font-size:12px;color:#6a7865;margin:2px 0 0}
#messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:10px 24px 24px;scrollbar-gutter:stable;overflow-anchor:none}
#messages article{max-width:850px;margin:14px auto;padding:16px 20px}
#messages article[data-role=user]{margin-left:12%;background:#e9e3d9}
#messages pre{margin:6px 0 0;font-size:15px;line-height:1.8}
#composer-dock{flex:none;padding:10px 22px 18px;border-top:1px solid #ded9cf;background:#faf9f6}
#send{display:flex;gap:10px;align-items:flex-end}#send textarea{resize:vertical;min-height:75px;max-height:180px;font-size:15px}#send button{height:42px;flex:none}
#latest{display:block;margin:0 auto 8px;background:transparent;color:#79634d;padding:3px 12px;font-size:12px}
#right-rail section{margin:12px 0}#right-rail summary{font-size:14px;font-weight:600;cursor:pointer}
#right-rail details{border-bottom:1px solid #d7d1c6;padding:0 0 16px;margin-bottom:18px}
#right-rail button{font-size:12px;max-width:100%;overflow-wrap:anywhere;padding:8px 10px}
#upload{font-size:12px}#upload input{display:block;width:100%;margin:10px 0}#upload p{color:#756f64}
#queue{font-size:12px}#queue div{padding:10px}#queue button{margin:8px 0 0}
@media(max-width:1050px){#workspace{grid-template-columns:170px minmax(0,1fr) 210px}#left-rail,#right-rail{padding:14px 10px}}
@media(max-width:720px){.chat-layout header{padding:8px 12px;gap:10px;flex-wrap:wrap}.chat-layout header #status{flex-basis:100%;font-size:11px}#workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto}#left-rail{padding:8px;max-height:100px;border:0}#left-rail h2,#new-chat-hint{display:none}#pages{flex-direction:row;flex-wrap:nowrap;overflow:auto;margin:0}#pages button{white-space:nowrap}#new-chat{width:auto;margin-top:6px}#right-rail{max-height:140px;padding:8px;display:flex;gap:18px;border:0;border-top:1px solid #ded9cf}#right-rail details{flex:1;min-width:0;margin:0}#messages{padding:6px 10px}#chat-heading{padding:10px 14px}#composer-dock{padding:8px 10px}#send textarea{min-height:65px}}
