:root{--bg:#f1f5f4;--card:#fff;--fg:#10231f;--muted:#5b716b;--line:#d7e1de;--primary:#0f766e;--accent:#f59e0b;--on-primary:#fff;--danger:#b42318;--r:10px;
  --font:'Bricolage Grotesque','Segoe UI',system-ui,-apple-system,sans-serif;--mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace}
[data-theme=dark]{--bg:#0b1412;--card:#13211e;--fg:#e4eeeb;--muted:#8ba39c;--line:#23342f;--danger:#f97066;--on-primary:#06201d}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 var(--font)}
h1,h2,h3{line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}h1{font-size:clamp(2.1rem,6vw,3.6rem)}h2{font-size:1.5rem}h3{font-size:1.1rem}
a{color:var(--primary)}p{margin:.4em 0 1em}.muted{color:var(--muted)}.small{font-size:.85rem}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;background:var(--card);border-bottom:1px solid var(--line)}
.top b{font-size:1.15rem;margin-right:auto;display:flex;align-items:center;gap:.5rem}.top img{height:28px;border-radius:6px}
.top nav{display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none}
.top nav a{padding:.35rem .7rem;border-radius:999px;text-decoration:none;color:var(--fg);white-space:nowrap;font-size:.92rem}
.top nav a.on,.top nav a:hover{background:var(--primary);color:var(--on-primary)}
.badge{display:inline-block;min-width:1.3em;padding:0 .4em;border-radius:999px;background:var(--accent);color:#111;font-size:.75rem;text-align:center;margin-left:.25rem}
.wrap{max-width:980px;margin:0 auto;padding:1rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1rem;margin-bottom:1rem}
.stack{display:flex;flex-direction:column;gap:.55rem}.row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
label{font-size:.88rem;color:var(--muted)}.chk{display:flex;gap:.5rem;align-items:center;color:var(--fg)}
input,select,textarea{width:100%;padding:.6rem .7rem;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--fg);font:inherit}
input[type=checkbox]{width:auto}input[type=color]{padding:.15rem;height:2.4rem}
input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:1px}
fieldset{border:1px solid var(--line);border-radius:8px}
.btn{display:inline-block;border:0;border-radius:8px;padding:.65rem 1.1rem;background:var(--primary);color:var(--on-primary);font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
.btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--line)}.btn.sm{padding:.3rem .7rem;font-size:.85rem}.btn.danger{background:var(--danger);color:#fff}
.btn:disabled{opacity:.55;cursor:wait}
.tabs{display:flex;gap:.35rem;overflow-x:auto;margin-bottom:1rem;padding-bottom:.25rem}
.tabs button{flex:none;border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:999px;padding:.35rem .85rem;font:inherit;cursor:pointer}
.tabs button.on{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}
.tbl{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{padding:.5rem .6rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--muted);font-weight:600}
.toast{position:fixed;left:50%;bottom:1.2rem;transform:translateX(-50%);background:var(--fg);color:var(--bg);padding:.65rem 1rem;border-radius:8px;z-index:20;max-width:92vw}.toast.bad{background:var(--danger);color:#fff}
.receipt{font-family:var(--mono);font-size:.9rem;background:var(--card);border:1px dashed var(--muted);border-radius:6px;padding:1rem}
.receipt .ln{display:flex;justify-content:space-between;gap:1rem;padding:.15rem 0}.receipt .tot{border-top:1px dashed var(--muted);margin-top:.4rem;padding-top:.4rem;font-weight:700}
.post{display:flex;flex-direction:column;gap:.5rem}.post .hd{display:flex;gap:.6rem;align-items:center}.post .hd img,.av{width:38px;height:38px;border-radius:50%;object-fit:cover;background:var(--line)}
.post .body{white-space:pre-wrap;overflow-wrap:anywhere}.post .media{max-width:100%;border-radius:8px}.acts{display:flex;gap:.4rem;flex-wrap:wrap}
.chat{display:flex;flex-direction:column;gap:.35rem;max-height:55vh;overflow-y:auto;padding:.5rem}
.bub{max-width:80%;padding:.45rem .75rem;border-radius:14px;background:var(--line);overflow-wrap:anywhere}.bub.me{align-self:flex-end;background:var(--primary);color:var(--on-primary)}
.conv{display:flex;justify-content:space-between;gap:.5rem;padding:.6rem;border-bottom:1px solid var(--line);cursor:pointer}.conv:hover{background:var(--bg)}
code.key{display:block;padding:.7rem;background:var(--bg);border:1px solid var(--line);border-radius:8px;word-break:break-all;font-family:var(--mono)}
@media (prefers-reduced-motion:no-preference){.toast{animation:up .2s ease-out}@keyframes up{from{opacity:0;transform:translate(-50%,8px)}}}
@media print{.top,.btn,.noprint{display:none!important}body{background:#fff}}
[hidden],.hide{display:none!important}
