:root{color:#f9edd7;font-synthesis:none;text-rendering:optimizelegibility;background:#081632;font-family:Quattrocento Sans,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 16% 12%,#cda34938,#0000 26rem),radial-gradient(circle at 88% 0,#7b1b365c,#0000 30rem),linear-gradient(135deg,#071329 0%,#122b5b 48%,#55152b 100%);min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #f7d27a}.shell{place-items:center;min-height:100vh;padding:clamp(.75rem,3vw,2rem);display:grid}.chat-layout{align-items:stretch;gap:1rem;width:min(1160px,100%);display:grid}.chat-layout.is-centered{grid-template-columns:minmax(320px,760px);justify-content:center}.chat-layout.has-recommendation{grid-template-columns:minmax(320px,760px) minmax(280px,380px)}.chat-panel,.recommendation{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #cda3493d;border-radius:1.6rem;box-shadow:0 24px 80px #040a1a57}.chat-panel{background:#081632db;flex-direction:column;min-height:min(760px,100vh - 2rem);padding:clamp(1rem,2.2vw,1.5rem);display:flex}.chat-layout.has-recommendation .chat-panel{animation:.26s ease-out both chat-shift-left}.chat-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1rem;display:flex}.brand{align-items:center;gap:.8rem;display:flex}.brand img{background:#fffaf2;border:2px solid #cda349;border-radius:1rem;width:4.4rem;height:auto;padding:.35rem}.brand p{color:#f7d27a;letter-spacing:.14em;text-transform:uppercase;margin:0;font-weight:900}.brand span{color:#d6e3ff;letter-spacing:.08em;text-transform:uppercase;margin-top:.2rem;font-size:.78rem;font-weight:800;display:block}.quick-actions{flex-wrap:wrap;gap:.45rem;display:flex}.quick-actions button,.composer button,.recommendation a{color:#081632;cursor:pointer;white-space:nowrap;background:#d8aa3c;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.42rem;min-width:0;font-weight:800;text-decoration:none;transition:transform .16s,opacity .16s;display:inline-flex}.quick-actions button{color:#f7d27a;background:#f7d27a1a;border:1px solid #f7d27a47;flex:9.5rem;padding:.58rem .78rem;font-size:.9rem}.quick-actions button:hover{background:#f7d27a29}.button-icon{flex:none;width:1.05rem;height:1.05rem}.button-label{text-overflow:ellipsis;min-width:0;overflow:hidden}button:hover,.recommendation a:hover{transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.55}.messages{flex-direction:column;flex:1;gap:.85rem;padding-right:.4rem;display:flex;overflow-y:auto}.message{border-radius:1.2rem;max-width:82%;padding:.95rem 1rem;line-height:1.5}.message p{margin:0}.message p+p{margin-top:.5rem}.message a{color:#081632;background:#f7d27a;border-radius:999px;margin-top:.1rem;padding:.54rem .8rem;font-weight:900;text-decoration:none;display:inline-flex}.message a:hover{transform:translateY(-1px)}.message.assistant{color:#f9edd7;background:#ffffff1a;align-self:flex-start}.message.user{color:#fff8ed;background:#7b1b36;align-self:flex-end}.typing{opacity:.72}.recommendation{color:#fff8ed;background:linear-gradient(160deg,#55152bf5,#081632f5);align-self:start;padding:1.2rem;animation:.26s ease-out both recommendation-enter;box-shadow:0 24px 80px #040a1a57,inset 0 0 0 1px #f7d27a14}@keyframes recommendation-enter{0%{opacity:0;transform:translateY(.75rem)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes chat-shift-left{0%{transform:translate(1.4rem)}to{transform:translate(0)}}.recommendation span{color:#f7d27a;letter-spacing:.16em;text-transform:uppercase;font-size:.75rem;font-weight:900}.recommendation h2{margin:.45rem 0;font-size:clamp(1.2rem,3vw,1.8rem)}.recommendation p{color:#d6e3ff;line-height:1.55}.tags{flex-wrap:wrap;gap:.45rem;margin-bottom:1rem;display:flex}.tags small{color:#f9edd7;background:#cda3492e;border-radius:999px;padding:.32rem .55rem}.recommendation a{background:#cda349;padding:.75rem 1rem;display:inline-flex}.composer{margin-top:1rem}.composer label{color:#f7d27a;margin-bottom:.45rem;font-weight:800;display:block}.composer-row{grid-template-columns:minmax(7.4rem,auto) minmax(0,1fr) auto;gap:.7rem;display:grid}.voice-button{background:#f7d27a;min-width:0}.voice-button.recording{color:#fff8ed;background:#9c1c1c}.voice-status{color:#f7d27a;margin:.55rem 0 0;font-weight:800}.composer input{color:#f9edd7;background:#ffffff14;border:1px solid #cda34952;border-radius:999px;outline:none;width:100%;min-height:3.2rem;padding:0 1.1rem}.composer input:focus{border-color:#f7d27a;box-shadow:0 0 0 4px #cda34929}.composer button{min-width:6.5rem;padding:0 1.2rem}.error{color:#ffb4b4;background:#9c1c1c2e;border:1px solid #ff8f8f52;border-radius:1rem;margin:.8rem 0 0;padding:.7rem .85rem;font-weight:700}@media (width<=920px){.shell{place-items:start center}.chat-layout{grid-template-columns:1fr}.chat-panel{min-height:72vh}}@media (width<=560px){.shell{padding:.75rem}.chat-panel,.recommendation{border-radius:1.2rem}.message{max-width:94%}.composer-row{grid-template-columns:1fr}.composer input{order:1}.composer button[type=submit]{order:2}.voice-button{order:3}.composer input,.composer button{border-radius:1rem}.composer button{min-height:3rem}}@media (prefers-reduced-motion:reduce){.chat-layout.has-recommendation .chat-panel,.recommendation{animation:none}}
