:root{--ink: #121417;--paper: #eef1eb;--surface: #f7f8f4;--line: #c9cec4;--muted: #5c6358;--accent: #1f6f4a;--danger: #9b2f2f;--sent: #dce8e0;--inbound: #ffffff;font-family:Manrope,Segoe UI,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(1200px 400px at 10% -10%,#d7e4d6 0%,transparent 55%),var(--paper)}a{color:var(--accent)}button,textarea,input{font:inherit}.app{max-width:430px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;background:var(--surface);box-shadow:0 0 0 1px var(--line)}.top{padding:18px 20px 10px}.brand{font-weight:700;letter-spacing:-.04em;font-size:22px}.sub{color:var(--muted);font-size:13px;margin-top:4px}.screen{flex:1;overflow:auto;padding:8px 16px 88px}.nav{position:sticky;bottom:0;display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);background:var(--surface);padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.nav button{border:0;background:transparent;color:var(--muted);padding:8px}.nav button.active{color:var(--accent);font-weight:600}.card-empty{padding:28px 8px}.card-empty h1{font-size:28px;letter-spacing:-.03em;margin:0 0 8px}.row{display:flex;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line);width:100%;text-align:left;background:transparent;border-left:0;border-right:0;border-top:0;color:inherit}.avatar{width:44px;height:44px;border-radius:50%;background:#d5ddd2;display:grid;place-items:center;font-weight:700;flex:none}.meta{flex:1;min-width:0}.meta strong{display:block}.preview{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time{color:var(--muted);font-size:12px;flex:none}.dot{width:8px;height:8px;border-radius:50%;background:var(--accent);margin-top:6px}.dot.sent_ok{background:var(--line)}.dot.replied{background:var(--accent)}.dot.unavailable,.dot.failed{background:var(--danger)}.toolbar{display:flex;align-items:center;gap:8px;padding:12px 16px 0}.toolbar button.back{border:0;background:transparent;font-size:20px}.chat{flex:1;overflow:auto;padding:12px 16px;display:flex;flex-direction:column;gap:8px}.bubble{max-width:80%;padding:10px 12px;border-radius:14px;line-height:1.35}.bubble.outbound{margin-left:auto;background:var(--sent)}.bubble.inbound{background:var(--inbound);border:1px solid var(--line)}.composer{display:flex;gap:8px;padding:8px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.composer textarea{flex:1;border:1px solid var(--line);border-radius:10px;padding:10px;resize:none;min-height:44px;background:var(--paper)}.composer button,.primary{background:var(--ink);color:#fff;border:0;border-radius:10px;padding:10px 14px}.ghost{background:transparent;border:1px solid var(--line);border-radius:10px;padding:8px 12px}.status{font-size:12px;color:var(--muted)}.error{color:var(--danger);padding:16px}h2{font-size:15px;font-weight:600;margin:18px 0 8px}.stack{display:flex;flex-direction:column;gap:12px;margin:12px 0 20px}.stack label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.stack input,.stack textarea{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--paper);color:var(--ink)}.price-box{padding:14px;border-radius:12px;background:#e4eee6;border:1px solid var(--line)}.price-box strong{font-size:28px;letter-spacing:-.03em}
