:root{--bg:#fff;--ink:#111;--mute:#6b6b70;--bot:#e9e9eb;--me:#c000d0;--me-ink:#fff;--line:#dcdce0;--card:#f6f6f8;--err:#c62828}@media (prefers-color-scheme:dark){:root{--bg:#000;--ink:#f2f2f2;--mute:#9a9aa0;--bot:#26262a;--line:#333338;--card:#141416;--err:#ff6b6b}}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);margin:0}body{-webkit-text-size-adjust:100%;font:17px/1.35 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}button,input{font:inherit;color:inherit}.app{flex-direction:column;max-width:560px;height:100dvh;margin:0 auto;display:flex}.top{padding:calc(10px + env(safe-area-inset-top)) 16px 10px;border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex}.avatar{background:var(--me);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:700;display:grid}.title{font-weight:700}.sub{color:var(--mute);font-size:13px}.thread{flex-direction:column;flex:1;gap:4px;padding:12px 16px 8px;display:flex;overflow-y:auto}.row{display:flex}.row.me{justify-content:flex-end;margin:6px 0}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px;max-width:80%;padding:8px 13px;animation:.25s both pop}.bubble.bot{background:var(--bot);border-bottom-left-radius:6px}.bubble.me{background:var(--me);color:var(--me-ink);border-bottom-right-radius:6px}@keyframes pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.bubble{animation:none}}.summary{background:var(--card);border:1px solid var(--line);border-radius:16px;margin:6px 0;padding:6px 14px}.sumrow{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:7px 0;font-size:15px;display:flex}.sumrow:last-child{border-bottom:0}.sumrow span{color:var(--mute)}.sumrow b{text-align:right;font-weight:600}.dock{border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom));flex-direction:column;gap:8px;max-height:60dvh;display:flex;overflow-y:auto}.col{flex-direction:column;gap:8px;display:flex}.grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.btn{border:1px solid var(--line);background:var(--bg);cursor:pointer;text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:48px;padding:10px 14px;font-weight:600;text-decoration:none;display:flex}.btn small{color:var(--mute);margin-top:2px;font-size:12px;font-weight:400}.btn.opt.on{border-color:var(--me);background:color-mix(in srgb, var(--me) 12%, var(--bg))}.btn.primary{background:var(--me);border-color:var(--me);color:#fff}.btn.primary:disabled{opacity:.45}.btn:active{transform:scale(.98)}.btn.ghost{color:var(--me)}.compose{flex-wrap:wrap;gap:8px;display:flex}.compose input{border:1px solid var(--line);background:var(--bg);border-radius:23px;outline:none;flex:1;min-width:0;min-height:46px;padding:0 16px;font-size:17px}.compose input:focus{border-color:var(--me)}.send{background:var(--me);color:#fff;cursor:pointer;border:0;border-radius:50%;width:46px;height:46px;font-size:22px;font-weight:700}.send:disabled{opacity:.35}.err{width:100%;color:var(--err);font-size:14px}.link{color:var(--mute);cursor:pointer;background:0 0;border:0;align-self:center;padding:4px;font-size:14px}.trap{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}
