:root{font-family:system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;color:#172943;background:#f5f7fb;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:12px;background:#2363a0;color:white;padding:10px 18px;font-weight:650}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary,.secondary{color:#194b7c;background:#edf4fa;border:1px solid #cbdbe9}.nav-link{margin-left:auto;color:#eff6ff;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.app-shell{height:100dvh;display:flex;flex-direction:column;max-width:1050px;margin:auto;background:#fff;box-shadow:0 12px 38px #1e396018}.header{display:flex;align-items:center;gap:13px;background:#142a46;padding:15px 22px;color:white;flex-shrink:0}.brand-symbol{width:42px;height:42px;border-radius:13px;background:#3f729e;display:grid;place-items:center;font-weight:800;letter-spacing:.04em}.brand{display:flex;flex-direction:column;gap:3px}.brand strong{font-size:18px}.brand span{color:#bfd3e7;font-size:12px}.header-controls{margin-left:auto}.header-controls button{color:white;background:#345574;border:1px solid #5f7893}.chat-main{flex:1;overflow:auto;min-height:0;padding:24px clamp(16px,4vw,45px)}.intro{max-width:650px;text-align:center;margin:9vh auto 35px}.intro-icon{font-size:38px;color:#2b6eb0}.intro h1{font-size:clamp(23px,3vw,32px);margin:10px 0}.intro p{line-height:1.9;color:#5b7088}.messages{display:flex;flex-direction:column;gap:17px;padding-bottom:20px}.bubble{max-width:min(87%,750px);padding:16px 19px;border-radius:20px;line-height:1.75;box-shadow:0 2px 8px #12345c0b}.bubble.user{align-self:flex-end;background:#255f92;color:white;border-bottom-right-radius:6px}.bubble.assistant{align-self:flex-start;background:#f1f5fa;border:1px solid #e0e9f3;border-bottom-left-radius:6px}.bubble-label{opacity:.78;font-size:12px;font-weight:750;margin-bottom:6px}.bubble-text{white-space:pre-wrap;overflow-wrap:anywhere}.citations{border-top:1px solid #d5e2ef;margin-top:12px;padding-top:10px;display:flex;flex-direction:column;gap:5px;font-size:12px}.citation{overflow-wrap:anywhere;color:#3a5c7b}.composer-box{padding:12px clamp(12px,4vw,40px) 16px;border-top:1px solid #e3ebf3;background:white}.composer{display:flex;gap:10px;align-items:flex-end;border:1px solid #ccdceb;border-radius:19px;padding:8px;background:#fff}.composer textarea{flex:1;min-width:0;max-height:130px;resize:vertical;border:0;padding:9px;outline:none;line-height:1.5}.composer button{height:40px;width:43px;flex-shrink:0;display:grid;place-items:center;border-radius:13px}.below{display:flex;justify-content:space-between;gap:10px;color:#73869d;font-size:11px;padding:8px 4px 0}.admin-shell{max-width:1100px;margin:0 auto;background:#f6f9fc;min-height:100vh}.admin-shell main{padding:26px 20px}.admin-shell h1{font-size:25px}.admin-shell h2{font-size:19px}.panel{background:white;border:1px solid #dfe8f2;border-radius:18px;padding:22px;margin-bottom:20px;box-shadow:0 4px 15px #102f4910}.panel p{color:#526780;line-height:1.7}.panel form{display:flex;flex-direction:column;gap:12px;max-width:540px}.panel input{border:1px solid #c7d7e4;border-radius:11px;padding:12px;background:#fff}.panel label{font-weight:650}.admin-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.note{font-size:13px}.document-list{display:flex;flex-direction:column}.doc-item{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:14px 0;border-top:1px solid #e4ebf4}.doc-info{min-width:0;display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.doc-info small{color:#627990}.doc-actions{display:flex;flex-shrink:0;gap:6px}.doc-actions button{padding:8px 10px;font-size:12px}.alert{color:#124978;min-height:24px;font-weight:600}@media(max-width:600px){.header{padding:12px}.brand strong{font-size:15px}.brand span{font-size:10px}.chat-main{padding:14px}.bubble{max-width:95%}.intro{margin-top:4vh}.doc-item{align-items:flex-start;flex-direction:column}.doc-actions{flex-wrap:wrap}}

.preview-content{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;background:#f2f6fa;border-radius:12px;padding:18px;max-height:500px;overflow:auto}
.panel select{border:1px solid #c7d7e4;border-radius:11px;padding:12px;background:#fff;color:#142a46;width:100%;max-width:100%;font:inherit;overflow-wrap:anywhere}
.panel .model-confirm{display:flex;gap:9px;align-items:flex-start;font-weight:500;line-height:1.6}
.panel .model-confirm input{width:20px;height:20px;flex-shrink:0;padding:0;margin:2px 0 0}
