*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:Arial,Helvetica,sans-serif;color:#202123;background:#fff}button,input,textarea,select{font:inherit}.app{display:grid;grid-template-columns:260px 1fr;height:100vh}.sidebar{background:#f7f7f8;border-right:1px solid #e5e5e5;padding:12px;display:flex;flex-direction:column;gap:10px}.brand{height:46px;display:flex;align-items:center;gap:10px;padding:0 8px}.brandmark,.hero-logo,.logo{display:grid;place-items:center;background:#111;color:white;border-radius:10px;font-weight:700}.brandmark{width:30px;height:30px}.newchat{border:1px solid #ddd;background:#fff;border-radius:10px;padding:11px;text-align:left;cursor:pointer}.side-label{font-size:12px;color:#777;padding:10px 8px 0}.sidebar nav{overflow:auto;flex:1}.sidebar nav button{display:block;width:100%;border:0;background:transparent;text-align:left;border-radius:8px;padding:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.sidebar nav button:hover{background:#ececec}.side-foot{display:grid;gap:4px;border-top:1px solid #ddd;padding-top:8px}.side-foot a{color:#555;text-decoration:none;padding:7px 8px;border-radius:7px;font-size:13px}.side-foot a:hover{background:#ececec}.main{min-width:0;display:flex;flex-direction:column;height:100vh}.topbar{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid #eee}.muted{color:#888;font-weight:400}.plain{color:#333;text-decoration:none}.conversation{flex:1;overflow:auto}.welcome{max-width:780px;margin:12vh auto 0;padding:30px 24px;text-align:center}.hero-logo{width:46px;height:46px;margin:auto}.welcome h1{font-size:30px;margin:18px 0 8px}.welcome p{color:#666;line-height:1.5}.quick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.quick button,.suggestion-row button{border:1px solid #e0e0e0;background:#fff;border-radius:13px;padding:13px;text-align:left;cursor:pointer}.quick button:hover,.suggestion-row button:hover{background:#f7f7f7}.messages{max-width:820px;margin:0 auto;padding:30px 24px 0}.msg{margin:0 0 28px;line-height:1.65;font-size:16px}.msg.user{display:flex;justify-content:flex-end}.bubble{max-width:72%;background:#f1f1f1;padding:10px 16px;border-radius:20px}.assistant-label{font-size:12px;color:#6b6b6b;margin-bottom:7px}.answer p{margin:0 0 13px}.answer-actions{display:flex;gap:8px;margin-top:8px}.answer-actions button{border:0;background:transparent;color:#777;font-size:12px;cursor:pointer;padding:4px}.dots{display:flex;gap:5px;height:24px;align-items:center}.dots i{width:6px;height:6px;background:#777;border-radius:50%;animation:pulse 1s infinite}.dots i:nth-child(2){animation-delay:.16s}.dots i:nth-child(3){animation-delay:.32s}@keyframes pulse{0%,70%,100%{opacity:.25;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}.suggestion-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.suggestion-row button{font-size:13px}.bottom-space{height:170px}.composer-wrap{position:sticky;bottom:0;background:linear-gradient(transparent,#fff 22%);padding:24px 20px 14px}.contextbar{max-width:820px;margin:0 auto 7px;display:flex;gap:6px}.contextbar select{border:1px solid #ddd;border-radius:9px;background:#fafafa;padding:7px 9px;max-width:32%}.composer{max-width:820px;margin:auto;border:1px solid #d9d9d9;border-radius:24px;box-shadow:0 2px 10px #0000000c;display:flex;align-items:flex-end;padding:9px 10px 9px 16px;background:white}.composer textarea{border:0;outline:0;resize:none;flex:1;line-height:1.5;max-height:180px;padding:7px 4px}.send{width:38px;height:38px;border-radius:50%;border:0;background:#1f6feb;color:#fff;font-size:22px;cursor:pointer}.disclaimer{text-align:center;color:#999;font-size:11px;margin-top:7px}.setup{display:grid;place-items:center;background:#f7f7f8;min-height:100vh}.setup-card{background:#fff;border:1px solid #e2e2e2;border-radius:16px;padding:30px;width:min(440px,92vw);box-shadow:0 12px 40px #0000000a}.setup-card .logo{width:42px;height:42px}.setup-card h1{margin-bottom:6px}.setup-card form{display:grid;gap:8px;margin-top:18px}.setup-card input{padding:11px;border:1px solid #ccc;border-radius:9px}.setup-card button,.panel button,.buttonlink{border:0;background:#1f6feb;color:#fff;border-radius:9px;padding:10px 14px;cursor:pointer;text-decoration:none;display:inline-block}.check{padding:9px;border-radius:8px;margin-top:12px}.check.ok{background:#eef9ef}.check.bad,.error{background:#fff0f0;color:#a00;padding:9px;border-radius:8px}.adminbody{background:#f7f7f8}.adminhead{height:58px;background:white;border-bottom:1px solid #ddd;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.adminhead a{color:#333;text-decoration:none}.admin{max-width:1180px;margin:auto;padding:24px}.adminhero{display:flex;justify-content:space-between;gap:20px;align-items:center}.adminhero h1{margin:0}.adminhero p{color:#666}.adminhero select{padding:9px;border:1px solid #ccc;border-radius:8px}.stats{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.stats div{background:#fff;border:1px solid #e3e3e3;border-radius:10px;padding:10px 14px;display:flex;gap:7px}.stats span{color:#777}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.panel{background:#fff;border:1px solid #e1e1e1;border-radius:13px;padding:18px}.panel.wide{grid-column:1/-1}.panel h2{font-size:18px;margin:0 0 6px}.panel p{font-size:13px;color:#666;line-height:1.45}.panel textarea{width:100%;border:1px solid #ccc;border-radius:9px;padding:10px;font-family:monospace;line-height:1.45}.row{display:flex;gap:8px;align-items:center;margin-top:9px;flex-wrap:wrap}.secondary{background:#666!important}.buttonlink{margin-right:8px}@media(max-width:800px){.app{grid-template-columns:1fr}.sidebar{display:none}.quick,.admin-grid{grid-template-columns:1fr}.contextbar{overflow:auto}.contextbar select{max-width:none}.panel.wide{grid-column:auto}.messages{padding-left:15px;padding-right:15px}.bubble{max-width:88%}}
