:root{color:#2e2925;font-synthesis:none;background:#efe8df;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(#f4eee7 0%,#e9dfd4 100%);min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled{opacity:.55;cursor:default}.center{place-items:center;min-height:100vh;padding:24px;display:grid}.card{background:#ffffffb8;border:1px solid #4a392c1a;border-radius:18px;padding:22px;box-shadow:0 10px 35px #422e200f}.login{width:min(100%,380px)}h1,h2,p{margin-top:0}h1{font-family:Georgia,serif;font-weight:500}.eyebrow{color:#8a6651;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700}.muted{color:#776e67}.error{color:#9a3f3a}label{color:#5c534d;gap:7px;font-size:14px;display:grid}input,textarea{color:#2e2925;background:#ffffffdb;border:1px solid #d5c8bd;border-radius:12px;outline:none;width:100%;padding:12px 13px}input:focus,textarea:focus{border-color:#a98068;box-shadow:0 0 0 3px #a9806821}.primary{color:#fff;background:#5c4437;border-radius:12px;padding:12px 17px;font-weight:650}.login .primary{width:100%;margin-top:15px}.app-shell{min-height:100vh;padding-top:env(safe-area-inset-top)}header{height:58px;top:env(safe-area-inset-top);z-index:5;padding:0 max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f4eee7e6;border-bottom:1px solid #4a392c14;justify-content:space-between;align-items:center;display:flex;position:sticky}.brand{color:#3d3029;background:0 0;font:600 20px Georgia,serif}nav{gap:4px;display:flex}nav button{color:#776e67;background:0 0;border-radius:10px;padding:8px 10px}nav button.active{color:#3d3029;background:#e4d6ca}.chat-page{min-height:calc(100vh - 58px - env(safe-area-inset-top));flex-direction:column;display:flex}.history{flex:1;width:min(100%,760px);margin:0 auto;padding:24px 16px 150px}.empty{text-align:center;color:#776e67;padding:20vh 20px 0}.empty h2{color:#4a3b32;font:500 22px Georgia,serif}.turn{gap:10px;margin-bottom:18px;display:grid}.bubble-row{display:flex}.bubble-row.user{justify-content:flex-end}.bubble{background:#ffffffc7;border-radius:17px;max-width:min(82%,570px);padding:11px 14px;box-shadow:0 3px 15px #422e200a}.bubble-row.user .bubble{color:#fffaf6;background:#715447;border-bottom-right-radius:5px}.bubble-row.assistant .bubble{border-bottom-left-radius:5px}.bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}time,.state{opacity:.68;margin-top:5px;font-size:11px;display:block}.bubble.interrupted{border:1px solid #d99c72}.bubble.failed{border:1px solid #c9827d}.composer{padding:10px max(14px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));background:linear-gradient(#eee5db00,#eee5db 25%);position:fixed;bottom:0;left:0;right:0}.compose-row{align-items:flex-end;gap:9px;width:min(100%,730px);margin:auto;display:flex}textarea{resize:none;min-height:46px;max-height:140px}.compose-row .primary{min-height:46px}.notice,.mode{width:min(100%,730px);margin:0 auto 6px;font-size:12px}.mode{color:#897d74;margin-top:5px}.page{width:min(100%,760px);padding:32px 16px max(32px, env(safe-area-inset-bottom));margin:auto}.stack{gap:16px;display:grid}.event-list{gap:12px;display:grid}.event{padding:17px}.event-head{justify-content:space-between;gap:12px;display:flex}.event-head span{color:#9a574b;font-size:12px}.event code{color:#786b62;overflow-wrap:anywhere;font-size:11px}@media (width>=720px){.history{padding-left:24px;padding-right:24px}.bubble{max-width:70%}}
