/* Контент-хаб — мобильная вёрстка, без внешних зависимостей */
:root{
  --bg:#f5f6f7; --card:#fff; --text:#14171a; --muted:#6b7280; --line:#e5e7eb;
  --accent:#0b6e4f; --accent-2:#0e8a63; --danger:#b42318; --warn:#b54708;
  --ok-bg:#e7f6ee; --err-bg:#fdecea; --warn-bg:#fff4e5; --sent-bg:#e8f1fb; --new-bg:#eef0f2;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);
  font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
a{color:var(--accent);text-decoration:none}
header.top{position:sticky;top:0;z-index:20;background:var(--card);border-bottom:1px solid var(--line);
  padding:calc(10px + env(safe-area-inset-top)) 14px 10px;display:flex;align-items:center;gap:10px}
header.top .title{font-weight:600;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
header.top .back{font-size:1.4rem;line-height:1;padding:4px 6px;color:var(--text)}
main{padding:12px 12px calc(96px + env(safe-area-inset-bottom));max-width:820px;margin:0 auto}
footer.nav{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--card);border-top:1px solid var(--line);
  display:flex;padding:6px 0 calc(6px + env(safe-area-inset-bottom))}
footer.nav a{flex:1;text-align:center;padding:8px 4px;color:var(--muted);font-size:.78rem;font-weight:500}
footer.nav a.active{color:var(--accent)}
footer.nav a span{display:block;font-size:1.15rem;line-height:1.2}
.bar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--card);border-top:1px solid var(--line);
  padding:10px 12px calc(10px + env(safe-area-inset-bottom))}
.bar .row{display:flex;gap:8px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:10px}
.card.link{display:block;color:inherit}
.card h2{font-size:1.02rem;margin:0 0 6px;line-height:1.35}
.card .muted,.muted{color:var(--muted);font-size:.86rem}
.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.74rem;font-weight:600;white-space:nowrap}
.st-new{background:var(--new-bg);color:#374151}
.st-sent{background:var(--sent-bg);color:#1d4ed8}
.st-ok{background:var(--ok-bg);color:#067647}
.st-err{background:var(--err-bg);color:var(--danger)}
.st-warn{background:var(--warn-bg);color:var(--warn)}
.st-off{background:var(--new-bg);color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 16px;
  border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--text);font-size:.95rem;font-weight:600;
  cursor:pointer;text-decoration:none}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.primary:active{background:var(--accent-2)}
.btn.danger{color:var(--danger);border-color:#f3c1bd}
.btn.block{width:100%}
.row{display:flex;gap:8px;align-items:center}
.row > *{min-width:0}
.grow{flex:1}
.chips{display:flex;gap:6px;overflow-x:auto;padding:4px 0 8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;
  font-size:.85rem;color:var(--muted);white-space:nowrap}
.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}
.flash{border-radius:12px;padding:11px 14px;margin-bottom:12px;font-size:.9rem}
.flash.ok{background:var(--ok-bg);color:#067647}
.flash.err{background:var(--err-bg);color:var(--danger)}
label{display:block;font-size:.82rem;font-weight:600;color:var(--muted);margin:12px 0 5px}
input[type=text],input[type=password],input[type=url],input[type=number],textarea,select{
  width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;
  font-size:1rem;font-family:inherit;color:var(--text)}
textarea{min-height:120px;resize:vertical}
textarea.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}
input[type=submit],button{font-family:inherit}
.hint{font-size:.78rem;color:var(--muted);margin-top:4px}
.secret{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;background:#f3f4f6;
  padding:10px;border-radius:10px;word-break:break-all}
h1.page{font-size:1.15rem;margin:2px 0 12px}
.tiles{display:grid;gap:10px}
.tile{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;display:block;color:inherit}
.tile .name{font-size:1.05rem;font-weight:650;margin-bottom:2px}
.counts{display:flex;gap:14px;margin-top:10px;font-size:.8rem;color:var(--muted)}
.counts b{display:block;font-size:1.15rem;color:var(--text)}
details{border-top:1px solid var(--line);padding:10px 0}
details:first-of-type{border-top:0}
summary{cursor:pointer;font-weight:600;font-size:.9rem;list-style:none}
summary::-webkit-details-marker{display:none}
summary::before{content:"▸ ";color:var(--muted)}
details[open] summary::before{content:"▾ "}
pre.body{white-space:pre-wrap;word-break:break-word;font-size:.85rem;background:#f9fafb;padding:10px;border-radius:10px;max-height:280px;overflow:auto}
iframe.preview{width:100%;height:420px;border:1px solid var(--line);border-radius:12px;background:#fff}
.meta-line{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:.8rem;color:var(--muted);margin:2px 0 10px}
.attempt{border-radius:12px;padding:10px 12px;font-size:.85rem;margin-bottom:10px}
.events{font-size:.82rem;color:var(--muted)}
.events div{padding:5px 0;border-top:1px dashed var(--line)}
.q{position:fixed;right:14px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:25;
  background:var(--card);border:1px solid var(--line);border-radius:999px;padding:10px 14px;box-shadow:0 2px 10px rgba(0,0,0,.06)}
