@import url("https://fonts.googleapis.com/css2?family=VT323&family=IBM+Plex+Mono:wght@400;500&display=swap");@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");:root{--bg:#faf8f3;--bg2:#f3ede0;--card:#fffefb;--ink:#1a1a1a;--warm:#5c5246;--cool:#888780;--line:#eae3d5;--coral:#ff6b5c;--sage:#91a88c;--mono:"IBM Plex Mono",ui-monospace,Menlo,Monaco,"Courier New",monospace;--disp:"VT323",var(--mono);--body:"Pretendard","Inter",system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--coral)}.wrap{max-width:920px;margin:0 auto;padding:24px 20px 80px}.topbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:28px}.logo{font-family:var(--disp);font-weight:400;font-size:26px;line-height:1;letter-spacing:.01em;text-decoration:none;color:var(--ink)}.logo .a,.logo .cur{color:var(--coral)}.logo .cur{animation:blink 1.1s steps(1) infinite}.logo .tag{font-family:var(--mono);font-size:12px;color:var(--cool);letter-spacing:.04em}@keyframes blink{0%,50%{opacity:1}50.01%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.logo .cur{animation:none}}.tag{font-family:var(--mono);font-size:12px;color:var(--cool);letter-spacing:.06em}h1{font-size:22px;margin:0 0 4px}.sub{font-family:var(--mono);font-size:12px;color:var(--cool);letter-spacing:.08em;text-transform:uppercase;margin:0 0 24px}form.search{display:flex;gap:8px;margin-bottom:24px}input[type=password],input[type=text]{flex:1 1;font:inherit;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink)}input:focus{outline:2px solid var(--coral);outline-offset:0}button{font:inherit;font-weight:500;cursor:pointer;border:none;border-radius:10px;padding:11px 16px;background:var(--ink);color:#fff}button.coral{background:var(--coral)}button.ghost{background:transparent;color:var(--warm);border:1px solid var(--line)}button.small{padding:7px 12px;font-size:13px;border-radius:8px}button:disabled{opacity:.5;cursor:default}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--cool)}td .uname{font-weight:600}td .email{font-size:12px;color:var(--cool)}.badge,td .email{font-family:var(--mono)}.badge{font-size:11px;padding:3px 8px;border-radius:999px;display:inline-block}.badge.pro{background:rgba(145,168,140,.18);color:#3f5a3a}.badge.free{background:var(--bg2);color:var(--cool)}.src{font-size:11px}.empty,.src{font-family:var(--mono);color:var(--cool)}.empty{padding:24px 0}.empty,.note{font-size:13px}.note{background:#ffe4dd;border-left:3px solid var(--coral);padding:12px 16px;border-radius:0 8px 8px 0;color:#5c3e2a;margin:0 0 24px}.err{color:#993c1d;font-size:13px;margin:8px 0 0}.login{max-width:360px;margin:14vh auto 0}.login form{display:flex;flex-direction:column;gap:12px;margin-top:18px}button.danger{background:transparent;color:#993c1d;border:1px solid rgba(153,60,29,.4)}.ok{color:#3f5a3a;font-size:13px;margin:8px 0 0}h2.section{font-family:var(--mono);font-size:12px;color:var(--cool);letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin:28px 0 12px}.navleft{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}.nav{display:flex;gap:14px}.nav a{font-family:var(--mono);font-size:13px;color:var(--cool);text-decoration:none}.nav a:hover{color:var(--ink)}.nav a.on{color:var(--coral)}.alert{background:rgba(255,107,92,.12);border:1px solid rgba(255,107,92,.35);border-radius:10px;padding:12px 16px;font-size:14px;margin:0 0 20px}.alert a{font-weight:600}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:8px}.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.stat-label{font-family:var(--mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--cool)}.stat-value{font-family:var(--display,"VT323"),var(--mono);font-size:30px;font-weight:600;line-height:1.1;margin-top:4px}.stat-hint{font-family:var(--mono);font-size:11px;color:var(--cool);margin-top:2px}.tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.tab{font-family:var(--mono);font-size:13px;text-decoration:none;color:var(--warm);border:1px solid var(--line);border-radius:999px;padding:6px 14px}.tab.on{background:var(--ink);color:#fff;border-color:var(--ink)}.rowform{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-end}.rowform .reason{flex:1 1 160px;min-width:120px;padding:7px 10px;font-size:13px}.rowform .dur,.rowform .reason{border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink)}.rowform .dur{font:inherit;font-size:13px;padding:7px 8px}.rowform .ops{display:flex;gap:6px;flex-wrap:wrap}.badge.suspended{background:rgba(255,107,92,.16);color:#993c1d}.badge.banned{background:rgba(153,60,29,.18);color:#993c1d}.badge.pending{background:rgba(255,107,92,.16);color:#993c1d}.badge.reason{background:var(--bg2);color:var(--warm)}.badge.p0badge{background:#993c1d;color:#fff}.reports{display:flex;flex-direction:column;gap:14px}.report-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px}.report-card.p0{border-color:rgba(153,60,29,.5)}.report-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.report-status,.report-time{margin-left:auto}.report-time{font-family:var(--mono);font-size:12px;color:var(--cool)}.report-body{font-size:14px;display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.report-body .k{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--cool);margin-right:6px}.report-body blockquote{margin:6px 0;padding:8px 12px;border-left:3px solid var(--line);color:var(--warm);font-size:14px}.code-block{font-family:var(--mono);font-size:12px;background:var(--bg2);border:1px solid var(--line);border-radius:8px;padding:10px 12px;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin:8px 0}.notify-form{display:flex;flex-direction:column;gap:8px;max-width:560px}.notify-form .reason{flex:none;width:100%}.textarea{width:100%;font:inherit;font-size:14px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);resize:vertical}.textarea:focus{outline:2px solid var(--coral);outline-offset:0}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:13px;text-decoration:none;color:var(--warm);border:1px solid var(--line);border-radius:999px;padding:4px 12px}.chip:hover{color:var(--ink)}.chip.muted{opacity:.5}.promo-form{display:flex;flex-direction:column;gap:10px;max-width:620px;margin-bottom:24px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.promo-row{display:flex;gap:10px;flex-wrap:wrap}.promo-form label{display:flex;flex-direction:column;gap:4px;font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--cool)}.promo-form input.dur{width:120px}@media (max-width:640px){.stat-grid{grid-template-columns:repeat(2,1fr)}}@media (prefers-color-scheme:dark){:root{--bg:#2a2419;--bg2:#211c13;--card:#322a1c;--ink:#faf8f3;--warm:#c4bba8;--cool:#7a7163;--line:#41372680}button.ghost{color:var(--warm)}button.danger{color:#ffb4a6;border-color:hsla(9,100%,83%,.4)}.note{background:rgba(255,107,92,.15);color:#ffd4cc}.badge.pro{background:rgba(145,168,140,.22);color:#b9d3b3}.badge.banned,.badge.pending,.badge.suspended{background:rgba(255,107,92,.2);color:#ffd4cc}.ok{color:#b9d3b3}.tab.on{background:var(--coral);border-color:var(--coral)}}