:root{--bg:#0e1116;--card:#171c24;--line:#252c37;--text:#e8edf4;--muted:#8b96a5;--accent:#3b82f6;--accent2:#22c55e;--danger:#ef4444;--warn:#f59e0b;--radius:14px}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,'Segoe UI',Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}
a{color:var(--accent);text-decoration:none}.hl{color:var(--accent2)}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;flex-wrap:wrap;gap:8px}
.brand{font-weight:800;font-size:1.15rem;color:var(--text)}.brand span{color:var(--accent)}
nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}nav a{color:var(--muted)}nav a.active,nav a:hover{color:var(--text)}
.container{max-width:1080px;margin:24px auto;padding:0 16px;display:flex;flex-direction:column;gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.stat-label{color:var(--muted);font-size:.85rem}.stat-val{font-size:1.4rem;font-weight:700}
.btn{display:inline-block;background:var(--accent);color:#fff;border:0;padding:10px 18px;border-radius:10px;font-weight:600;cursor:pointer;font-size:1rem}
.btn:hover{filter:brightness(1.1)}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--text)}
.btn.danger{background:var(--danger)}.btn.small{padding:5px 10px;font-size:.85rem}.btn.big{padding:13px 26px;font-size:1.1rem}
.btn-link{background:none;border:0;color:var(--accent);cursor:pointer;font-size:.9rem;padding:0}
.flash{padding:12px 16px;border-radius:10px;margin-bottom:6px}.flash.success{background:#14321f;color:#7ee2a8}.flash.error{background:#3a1a1c;color:#fda4af}.flash.warn{background:#3a2c12;color:#fcd34d}.flash.info{background:#153048;color:#93c5fd}
.stack{display:flex;flex-direction:column;gap:12px;max-width:440px}.stack label{display:flex;flex-direction:column;gap:5px;font-size:.92rem;color:var(--muted)}
.stack-compact{display:inline-flex;gap:4px;align-items:center;margin:2px 0}
input,select,textarea{background:#0d1117;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:10px 12px;font-size:1rem;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent)}
.inline{display:inline}.inline-form{display:flex;gap:8px;margin-bottom:12px}.inline-form input{max-width:260px}
.hp{position:absolute;left:-9999px}
table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--muted);font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}
.pos{color:var(--accent2);font-weight:600}.neg{color:var(--danger);font-weight:600}
.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.78rem;background:var(--line)}.pill.ok{background:#14321f;color:#7ee2a8}.pill.warn{background:#3a2c12;color:#fcd34d}.pill.danger{background:#3a1a1c;color:#fda4af}.pill.pending{background:#153048;color:#93c5fd}
code{background:#0d1117;padding:2px 6px;border-radius:6px;font-size:.88rem}
.copybox{display:block;padding:10px 14px;word-break:break-all;user-select:all}
.auth{max-width:460px;margin:0 auto}
.hero{text-align:center;padding:48px 12px}.hero h1{font-size:2rem;max-width:720px;margin:0 auto 12px}.lead{color:var(--muted);max-width:560px;margin:0 auto 22px}
.cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.balance-card{background:linear-gradient(135deg,#1d2b4a,#171c24);border:1px solid var(--line);border-radius:var(--radius);padding:28px;text-align:center}
.bal-label{color:var(--muted)}.bal{font-size:2.4rem;font-weight:800;color:var(--accent2);margin:6px 0}.bal-sub{color:var(--muted);font-size:.9rem}
.tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.tab{padding:6px 14px;border-radius:8px;background:var(--line);color:var(--muted);font-size:.88rem}.tab.active{background:var(--accent);color:#fff}
.kv th{width:180px}.muted{color:var(--muted)}.big{font-size:1.3rem;font-weight:700}
.center{text-align:center;padding:60px 20px}.footer{color:var(--muted);text-align:center;font-size:.85rem;padding:24px}
.pager{display:flex;gap:10px;margin-top:14px;justify-content:flex-end}
.actions{display:flex;flex-direction:column;gap:4px}
@media(max-width:640px){table{font-size:.8rem}th,td{padding:6px 6px}.bal{font-size:1.8rem}}
---

/* Telegram register */
.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}
.btn-tg{background:#2AABEE;color:#fff;border:0}
.btn-tg:active{opacity:.85}

/* === Pro polish === */
.topbar{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:rgba(13,17,23,.82);box-shadow:0 1px 0 var(--line)}
.brand{font-weight:800;letter-spacing:.02em}.brand span{color:var(--accent2)}
.bal-chip{margin-left:auto;margin-right:14px;padding:7px 14px;border-radius:999px;background:linear-gradient(135deg,#173123,#0f2a1a);border:1px solid #1f5c38;color:#7ee2a8;font-weight:700;white-space:nowrap}
nav{gap:2px}nav a{padding:8px 12px;border-radius:9px;transition:background .15s,color .15s}nav a:hover{background:var(--line);color:var(--text)}
.btn{border-radius:10px;font-weight:600;transition:transform .08s,filter .15s}.btn:hover{filter:brightness(1.1)}.btn:active{transform:scale(.98)}
.card{box-shadow:0 8px 24px rgba(0,0,0,.25)}
.table-wrap{overflow-x:auto}
h3{margin-top:0}
.hint{color:var(--muted);font-size:.85rem}
.score-bar{position:relative;height:18px;background:var(--line);border-radius:10px;overflow:hidden;margin:3px 0}
.score-bar.small{height:14px}
.score-fill{height:100%;background:linear-gradient(90deg,#10b981,#22c55e);border-radius:10px;transition:width .3s}
.score-val{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:700}
.score-mini{display:inline-block;padding:3px 10px;background:var(--line);border-radius:999px;font-size:.78rem;font-weight:700}
.pill.small{font-size:.65rem;padding:2px 8px}
.hint.small{font-size:.75rem}


/* Task cards */
.page-head{display:flex;flex-direction:column;gap:4px;margin:6px 0 18px}
.task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.task-card{display:flex;flex-direction:column;gap:10px;padding:16px;transition:transform .15s,box-shadow .15s}
.task-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.35)}
.task-card.state-off{opacity:.55}
.task-card.state-ok .reward{color:#7ee2a8}
.task-card.state-ok{border-color:rgba(34,197,94,.35)}
.task-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.task-name{font-weight:700;line-height:1.35}
.reward{color:#7ee2a8;font-weight:800;font-size:1.05rem;white-space:nowrap}
.task-meta{display:flex;flex-direction:column;gap:6px;font-size:.85rem}
