:root{--bg: #0f0e0c;--bg-2: #14120f;--card: #1a1713;--card-2: #201c17;--text: #efe9dd;--hint: #9a9082;--gold: #c9a227;--gold-2: #e2c766;--gold-dim: rgba(201, 162, 39, .16);--gold-line: rgba(201, 162, 39, .22);--on-gold: #14120b;--border: #2b2620;--danger: #c05a52;--ok: #6faf7d;--serif: Georgia, "Cormorant Garamond", "Times New Roman", serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif}*{box-sizing:border-box}html,body{background:var(--bg)}body{margin:0;font-family:var(--sans);color:var(--text);background:radial-gradient(1200px 500px at 50% -200px,rgba(201,162,39,.08),transparent 70%),var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh}#root{max-width:640px;margin:0 auto}.app{padding:20px 16px 96px}h1{font-family:var(--serif);font-weight:600;font-size:26px;letter-spacing:.2px;margin:6px 0 14px}h1:after{content:"";display:block;width:40px;height:2px;margin-top:10px;background:linear-gradient(90deg,var(--gold),transparent)}h2{font-family:var(--serif);font-weight:600;font-size:18px;margin:22px 0 10px;color:var(--text)}.hint{color:var(--hint);font-size:13px;line-height:1.5}.brand{text-align:center;margin:18px 0 6px}.brand .mark{font-family:var(--serif);font-size:13px;letter-spacing:5px;text-transform:uppercase;color:var(--gold)}.brand .rule{width:46px;height:1px;margin:12px auto 0;background:var(--gold-line)}.card{background:linear-gradient(180deg,var(--card-2),var(--card));border:1px solid var(--border);border-radius:16px;padding:16px;margin:12px 0;box-shadow:0 1px #ffffff05 inset}label{display:block;font-size:12px;color:var(--hint);margin:12px 0 5px;letter-spacing:.2px}input,textarea,select{width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:11px;background:var(--bg-2);color:var(--text);font-size:15px;font-family:inherit;transition:border-color .15s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--gold)}input::placeholder,textarea::placeholder{color:#6b6459}textarea{min-height:84px;resize:vertical}button{border:none;border-radius:11px;padding:12px 16px;font-size:15px;font-weight:600;font-family:inherit;background:linear-gradient(180deg,var(--gold-2),var(--gold));color:var(--on-gold);cursor:pointer;transition:filter .15s,opacity .15s}button:hover{filter:brightness(1.06)}button:disabled{opacity:.4;filter:none;cursor:default}button.ghost{background:transparent;color:var(--gold);border:1px solid var(--gold-line)}button.sec{background:var(--card-2);color:var(--text);border:1px solid var(--border)}button.danger{background:transparent;color:var(--danger);border:1px solid rgba(192,90,82,.4)}button.small{padding:8px 12px;font-size:13px}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.grow{flex:1 1 auto}.badge{display:inline-block;font-size:10.5px;padding:3px 9px;border-radius:999px;background:var(--border);color:var(--hint);letter-spacing:.3px;text-transform:lowercase}.badge.pending,.badge.needs_info,.badge.proposed{background:#c9a22724;color:var(--gold-2)}.badge.approved,.badge.active,.badge.accepted,.badge.confirmed{background:#6faf7d29;color:var(--ok)}.badge.rejected,.badge.declined,.badge.banned{background:#c05a5229;color:var(--danger)}.tabbar{position:fixed;bottom:0;left:0;right:0;max-width:640px;margin:0 auto;display:flex;background:#0f0e0ceb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--gold-line)}.tabbar button{flex:1;background:transparent;color:var(--hint);border-radius:0;padding:10px 2px 12px;font-size:10.5px;font-weight:500;letter-spacing:.2px}.tabbar button.active{color:var(--gold)}.tabbar .ic{display:flex;justify-content:center;margin-bottom:3px;opacity:.95}.tabbar .ic svg{display:block}.msg{padding:11px 13px;border-radius:13px;margin:8px 0;white-space:pre-wrap;line-height:1.5}.msg.user{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:var(--on-gold);margin-left:44px}.msg.assistant{background:var(--card);border:1px solid var(--border);margin-right:44px}.center{text-align:center;padding:44px 12px}.spinner{color:var(--hint)}.err{color:var(--danger);font-size:13px;margin:8px 0}.chips{display:flex;gap:6px;flex-wrap:wrap}.small-hint{font-size:12px;color:var(--hint);line-height:1.5}.score{color:var(--gold-2);font-size:12px;font-weight:600}
