:root{--bg:#0b1220;--surface:#141c2e;--surface-2:#1e2942;--surface-a:#141c2ed1;--border:#263149;--text:#eef1f8;--muted:#93a0bd;--primary:#0da5aa;--primary-dark:#0b8488;--primary-soft:#0da5aa24;--info:#3b82f6;--info-soft:#3b82f624;--warn:#f59e0b;--warn-soft:#f59e0b24;--danger:#ef4444;--danger-soft:#ef444424;--input-bg:#0e1526;--radius-sm:8px;--radius:14px;--shadow:0 1px 2px #00000059, 0 12px 28px -14px #0000008c;--shadow-sm:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f3f5fa;--surface:#fff;--surface-2:#eef1f8;--surface-a:#ffffffd1;--border:#e3e8f2;--text:#101828;--muted:#667085;--primary:#0da5aa;--primary-dark:#0b8488;--primary-soft:#0da5aa1a;--info:#2563eb;--info-soft:#2563eb1a;--warn:#d97706;--warn-soft:#d977061f;--danger:#dc2626;--danger-soft:#dc26261a;--input-bg:#fff;--shadow:0 1px 2px #1018280a, 0 12px 28px -14px #10182829;--shadow-sm:0 1px 2px #1018280f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#app{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background-color .2s,color .2s}a{color:inherit}h1,h2,h3{letter-spacing:-.01em}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:20;background:var(--surface-a);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 20px;display:flex;position:sticky;top:0}.topbar .brand{letter-spacing:-.01em;align-items:center;gap:8px;font-size:17px;font-weight:800;display:flex}.topbar nav{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.topbar nav a,.topbar nav button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 12px;font-family:inherit;font-size:13.5px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s}.topbar nav a:hover,.topbar nav button:hover{color:var(--text);background:var(--surface-2)}.topbar nav a.router-link-active{color:var(--text);background:var(--primary-soft);font-weight:600}main.content{flex:1;width:100%;max-width:960px;margin:0 auto;padding:20px 16px 40px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:18px;padding:22px}.btn{background:var(--primary);color:#04120a;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-family:inherit;font-size:14.5px;font-weight:600;transition:background-color .15s,transform .1s,box-shadow .15s,opacity .15s;display:inline-flex;box-shadow:0 1px 2px #0000001f}.btn:hover{background:var(--primary-dark)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.secondary{background:var(--surface-2);color:var(--text);box-shadow:none}.btn.secondary:hover{background:var(--border)}.btn.ghost{color:var(--text);box-shadow:none;background:0 0;padding:6px 10px;font-weight:500}.btn.ghost:hover{background:var(--surface-2)}.btn.danger{background:var(--danger);color:#fff}.btn.danger.ghost{color:var(--danger);background:0 0}.btn.danger.ghost:hover{background:var(--danger-soft)}.btn.danger:hover:not(.ghost){filter:brightness(.92)}.btn.info{background:var(--info);color:#fff}.btn.info:hover{filter:brightness(.92)}.btn.warn{background:var(--warn);color:#201400}.btn.warn:hover{filter:brightness(.94)}.btn:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}input,select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text);padding:11px 13px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--primary);cursor:pointer}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}input::placeholder{color:var(--muted);opacity:.8}label{color:var(--muted);margin-top:14px;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.table-wrap{margin:4px -2px 0;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:480px;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:12.5px;font-weight:600}tbody tr{transition:background-color .1s}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:none}@media (width>=768px){.admin-page{padding-top:10px}.admin-page h2{font-size:20px;font-weight:600}th,td{border-bottom:1px solid var(--surface-2);padding:12px 14px;font-size:13.5px}th{letter-spacing:.05em;color:var(--muted);background-color:var(--surface);font-size:11.5px;font-weight:600}tbody tr{background-color:var(--surface)}tbody tr:hover{background-color:var(--surface-2);box-shadow:none;transform:none}table{border-collapse:collapse;border-spacing:0}.card{border:1px solid var(--border);box-shadow:0 1px 3px #0000000d}}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.badge.success{background:var(--primary-soft);color:var(--primary)}.badge.muted-badge{background:var(--surface-2);color:var(--muted)}.video-wrap{border-radius:var(--radius);width:100%;max-width:480px;box-shadow:var(--shadow);background:#000;margin:0 auto;position:relative;overflow:hidden}.video-wrap video{width:100%;display:block;transform:scaleX(-1)}.status-banner{border-radius:var(--radius-sm);text-align:center;border-left:3px solid #0000;margin-top:14px;padding:13px 16px;font-size:14px;font-weight:500}.status-banner.success{background:var(--primary-soft);color:var(--primary);border-left-color:var(--primary)}.status-banner.error{background:var(--danger-soft);color:var(--danger);border-left-color:var(--danger)}.status-banner.info{background:var(--info-soft);color:var(--info);border-left-color:var(--info)}.muted{color:var(--muted);font-size:13px}.filters{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:18px;display:flex}.filters>div{flex:1;min-width:140px}.empty-state{text-align:center;color:var(--muted);padding:36px 16px;font-size:14px}
