*{box-sizing:border-box}:root{--bg:var(--tg-theme-bg-color,#f4f5f8);--surface:var(--tg-theme-secondary-bg-color,#fff);--text:var(--tg-theme-text-color,#15181d);--text-muted:var(--tg-theme-hint-color,#6b7280);--border:#e5e7eb;--primary:var(--tg-theme-button-color,#6366f1);--primary-text:var(--tg-theme-button-text-color,#fff);--primary-soft:#eef0ff;--danger:#e11d48;--danger-soft:#fdecef;--success:#16a34a;--success-soft:#eafbef;--warning:#d97706;--warning-soft:#fef6e7;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--shadow:0 1px 2px #1018280f, 0 2px 8px #1018280f;--shadow-md:0 4px 12px #10182814, 0 2px 4px #1018280f}@media (prefers-color-scheme:dark){:root{--bg:var(--tg-theme-bg-color,#101114);--surface:var(--tg-theme-secondary-bg-color,#1a1c21);--text:var(--tg-theme-text-color,#f1f2f4);--text-muted:var(--tg-theme-hint-color,#9aa0ab);--border:#2a2d34;--primary-soft:#23253a;--danger-soft:#331b22;--success-soft:#17281c;--warning-soft:#302615}}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}::selection{background:var(--primary);color:var(--primary-text)}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border:2px solid var(--bg);border-radius:999px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.card-interactive{transition:transform .12s,box-shadow .12s}.card-interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}h1{letter-spacing:-.01em;margin:0 0 18px;font-size:22px;font-weight:700}h2{margin:0 0 4px;font-size:15px;font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-size:14px;font-weight:600;transition:transform 60ms,opacity .15s,background .15s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary);color:var(--primary-text)}.btn-primary:hover{opacity:.9}.btn-ghost{color:inherit;background:0 0;border:1px solid #ffffff40}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-danger:hover{opacity:.8}.input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);outline:none;padding:10px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.badge{border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge-success{background:var(--success-soft);color:var(--success)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-muted{background:var(--border);color:var(--text-muted)}.topbar{z-index:100;background:var(--tg-theme-header-bg-color,#15181d);color:#fff;position:sticky;top:0;box-shadow:0 1px #0003}.topbar-inner{flex-wrap:wrap;align-items:center;gap:16px;max-width:960px;margin:0 auto;padding:10px 20px;display:flex}.brand{margin-right:4px;font-size:15px;font-weight:700}.topbar nav{flex-wrap:wrap;flex:1;gap:4px;display:flex}.nav-link{color:#ffffffb3;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.nav-icon{font-size:13px}.nav-link:hover{color:#fff;background:#ffffff14}.nav-link.router-link-active{color:#fff;background:#ffffff29}.topbar-user{align-items:center;gap:10px;font-size:13px;display:flex}.user-avatar{color:#fff;background:#ffffff24;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:flex}.user-badge{color:#ffffffbf}@media (width<=480px){.user-badge{display:none}}.auth-alert{background:var(--warning-soft);color:var(--warning);text-align:center;margin:0;padding:10px 20px;font-size:14px;font-weight:500}main{max-width:960px;margin:0 auto;padding:24px 20px 60px}.page-enter{animation:.18s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.topbar-inner{padding:10px 14px}.topbar nav{order:2;gap:2px;width:100%}.nav-link{flex:1;justify-content:center;padding:8px 10px}.topbar-user{order:1;justify-content:space-between;width:100%}main{padding:16px 14px 40px}h1{font-size:19px}}
