:root{--bg: #ffffff;--bg-alt: #f5f5f3;--border: #e3e3df;--text: #1c1b18;--muted: #6b6a64;--accent: #6b4f2a;--accent-soft: #efe7d8;--user-bubble: #eef3f8;--danger: #b4231f;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme: dark){:root{--bg: #1a1917;--bg-alt: #232220;--border: #34322e;--text: #ece9e2;--muted: #9a978d;--accent: #c9a86a;--accent-soft: #2c2a25;--user-bubble: #2a3038;--danger: #e2756f}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text)}button{cursor:pointer;font:inherit}.boot,.empty{display:grid;place-content:center;height:100%;text-align:center;color:var(--muted);gap:.5rem}.empty button{margin-top:.5rem;padding:.6rem 1.2rem;border:none;border-radius:8px;background:var(--accent);color:#fff}.auth{display:grid;place-content:center;height:100%;background:var(--bg-alt)}.auth-card{width:min(380px,90vw);background:var(--bg);border:1px solid var(--border);border-radius:14px;padding:2rem;box-shadow:0 10px 40px #0000000f}.auth-card h1{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:2rem}.auth-sub{color:var(--muted);margin:.2rem 0 1.4rem;font-size:.9rem}.auth-card form{display:flex;flex-direction:column;gap:.35rem}.auth-card label{font-size:.8rem;color:var(--muted);margin-top:.6rem}.auth-card input{padding:.6rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text)}.auth-card button[type=submit]{margin-top:1rem;padding:.65rem;border:none;border-radius:8px;background:var(--accent);color:#fff;font-weight:600}.auth-card button[type=submit]:disabled{opacity:.55}.auth-switch{margin-top:1rem;width:100%;background:none;border:none;color:var(--accent);font-size:.85rem}.auth-error{color:var(--danger);font-size:.85rem;margin-top:.6rem}.layout{display:grid;grid-template-columns:270px 1fr;height:100%}.sidebar{display:flex;flex-direction:column;background:var(--bg-alt);border-right:1px solid var(--border);min-height:0}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border)}.brand{font-family:Cormorant Garamond,Georgia,serif;font-size:1.3rem;font-weight:600}.new-btn{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:.35rem .6rem;font-size:.85rem}.threads{flex:1;overflow-y:auto;padding:.5rem}.threads-empty{color:var(--muted);font-size:.85rem;padding:1rem}.thread{display:flex;align-items:center;justify-content:space-between;padding:.55rem .65rem;border-radius:8px;cursor:pointer;gap:.4rem}.thread:hover,.thread.active{background:var(--accent-soft)}.thread-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.thread-del{border:none;background:none;color:var(--muted);font-size:1.1rem;line-height:1;opacity:0}.thread:hover .thread-del{opacity:1}.sidebar-foot{border-top:1px solid var(--border);padding:.8rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.user-email{font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout{border:none;background:none;color:var(--accent);font-size:.82rem}.main{min-width:0;min-height:0}.chat{display:flex;flex-direction:column;height:100%}.messages{flex:1;overflow-y:auto;padding:1.5rem clamp(1rem,8vw,6rem);display:flex;flex-direction:column;gap:1rem}.chat-status,.thinking{color:var(--muted);font-size:.9rem}.msg.user{align-self:flex-end;max-width:80%}.msg.user .bubble{background:var(--user-bubble);padding:.6rem .9rem;border-radius:14px 14px 2px;white-space:pre-wrap}.msg.assistant{align-self:flex-start;max-width:95%}.md{line-height:1.55}.md :first-child{margin-top:0}.md :last-child{margin-bottom:0}.md a{color:var(--accent)}.md pre{background:var(--bg-alt);padding:.7rem;border-radius:8px;overflow-x:auto}.md code{background:var(--bg-alt);padding:.1rem .3rem;border-radius:4px}.md table{border-collapse:collapse}.md th,.md td{border:1px solid var(--border);padding:.3rem .5rem}.attachments,.composer-atts{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}.att-chip{font-size:.78rem;background:var(--accent-soft);border-radius:6px;padding:.15rem .45rem;display:inline-flex;align-items:center;gap:.3rem}.att-chip button{border:none;background:none;color:var(--muted);font-size:.95rem;line-height:1}.att-chip.error{color:var(--danger)}.tool-chip{align-self:flex-start;font-size:.8rem;color:var(--muted);background:var(--bg-alt);border:1px solid var(--border);border-radius:999px;padding:.2rem .6rem}.tool-chip.error{color:var(--danger)}.live{display:flex;flex-direction:column;gap:.5rem;align-self:stretch}.chat-error{color:var(--danger);font-size:.9rem}.composer{border-top:1px solid var(--border);padding:.8rem clamp(1rem,8vw,6rem);background:var(--bg)}.composer-row{display:flex;align-items:flex-end;gap:.4rem}.composer textarea{flex:1;resize:none;max-height:180px;padding:.6rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);font:inherit;line-height:1.4}.icon-btn{border:1px solid var(--border);background:var(--bg);border-radius:8px;width:38px;height:38px;font-size:1.05rem}.icon-btn:disabled,.send-btn:disabled{opacity:.5}.send-btn{border:none;background:var(--accent);color:#fff;border-radius:8px;width:42px;height:38px;font-size:1.05rem}.pricing{max-width:880px;margin:0 auto;padding:2.5rem clamp(1rem,6vw,3rem) 4rem}.pricing-head{margin-bottom:1.5rem}.pricing-back{color:var(--accent);font-size:.85rem;text-decoration:none}.pricing h1{font-family:Cormorant Garamond,Georgia,serif;font-size:2.2rem;margin:.6rem 0 .2rem}.pricing-sub{color:var(--muted);margin:0}.pricing-section{font-size:1.1rem;margin:2rem 0 .8rem}.pricing-status,.pricing-error{color:var(--muted);margin:1rem 0}.pricing-error{color:var(--danger)}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.plan-card{border:1px solid var(--border);border-radius:14px;background:var(--bg-alt);padding:1.4rem;display:flex;flex-direction:column;gap:.5rem}.plan-card h3{margin:0;font-size:1.15rem}.plan-price{font-size:1.7rem;font-weight:700}.plan-price span{font-size:.85rem;font-weight:400;color:var(--muted)}.plan-quota{color:var(--muted);font-size:.9rem;flex:1}.plan-card button{margin-top:.6rem;padding:.6rem;border:none;border-radius:8px;background:var(--accent);color:#fff;font-weight:600}.plan-card button:disabled{opacity:.55}.paywall-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;place-items:center;z-index:50;padding:1rem}.paywall-modal{width:min(440px,92vw);background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:1.8rem;box-shadow:0 20px 60px #00000040}.paywall-modal h2{margin:0 0 .6rem;font-size:1.3rem}.paywall-modal p{color:var(--muted);margin:0 0 1.2rem}.paywall-actions{display:flex;gap:.6rem}.paywall-primary{flex:1;padding:.65rem;border:none;border-radius:8px;background:var(--accent);color:#fff;font-weight:600}.paywall-secondary{padding:.65rem 1rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text)}.billing-return{display:grid;place-content:center;height:100%;text-align:center;gap:.5rem;padding:2rem}.billing-return h1{font-family:Cormorant Garamond,Georgia,serif;margin:0}.billing-return p{color:var(--muted);margin:0}.billing-return-slow a{color:var(--accent)}@media (max-width: 720px){.layout{grid-template-columns:1fr}.sidebar{display:none}}
