:root{--ink: #14201c;--muted: #5c6b64;--paper: #f3efe6;--accent: #0f6b4c;--accent-2: #1a8f66;--line: rgba(20, 32, 28, .12);--user: #dfece6;--assistant: rgba(255, 255, 255, .72);--shadow: 0 18px 50px rgba(20, 32, 28, .08);--radius: 18px;font-family:DM Sans,sans-serif;color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,#d7efe4 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#f0e2c8 0%,transparent 50%),linear-gradient(180deg,#f7f3ea,#ebe4d6)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{min-height:100%}.shell{max-width:920px;margin:0 auto;min-height:100%;display:grid;grid-template-rows:auto 1fr;padding:28px 20px 20px;gap:18px}.top{display:flex;justify-content:space-between;align-items:end;gap:16px;animation:rise .6s ease both}.brand{margin:0;font-family:"Instrument Serif",serif;font-size:clamp(2rem,5vw,3rem);letter-spacing:-.02em;line-height:1}.tagline{margin:8px 0 0;color:var(--muted);font-size:.95rem}.meta-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.chip{border:1px solid var(--line);background:#ffffff8c;padding:6px 10px;border-radius:999px;font-size:.75rem;color:var(--accent)}.chip.muted{color:var(--muted)}.chat{display:grid;grid-template-rows:1fr auto;min-height:0;background:#ffffff59;border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;animation:rise .7s ease .05s both}.thread{overflow:auto;padding:22px;display:flex;flex-direction:column;gap:14px}.bubble{max-width:min(720px,92%);padding:14px 16px;border-radius:16px;border:1px solid var(--line);animation:fade-in .35s ease both;white-space:pre-wrap}.bubble.user{align-self:flex-end;background:var(--user)}.bubble.assistant{align-self:flex-start;background:var(--assistant)}.bubble header{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.bubble header em{font-style:normal;color:var(--accent)}.bubble .body code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em;background:#14201c0f;padding:1px 5px;border-radius:6px}.composer{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;border-top:1px solid var(--line);background:#f3efe6b3}.composer input{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px 16px;font:inherit;color:var(--ink);outline:none}.composer input:focus{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.composer button{border:0;border-radius:14px;padding:0 18px;background:linear-gradient(180deg,var(--accent-2),var(--accent));color:#f7fff9;font:inherit;font-weight:600;cursor:pointer;transition:transform .15s ease,opacity .15s ease}.composer button:hover:not(:disabled){transform:translateY(-1px)}.composer button:disabled{opacity:.55;cursor:not-allowed}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.top{flex-direction:column;align-items:start}.composer{grid-template-columns:1fr}.composer button{height:46px}}
