.adm{max-width:1150px}.adm .card{background:#fff;border-radius:18px;padding:18px;margin:16px 0;box-shadow:0 5px 0 #e2e8f0}
.adm table{width:100%;border-collapse:collapse;font-size:14px}.adm th,.adm td{text-align:left;padding:8px 6px;border-bottom:1px solid #e2e8f0;vertical-align:top}
.adm th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#475569}
.adm .tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.adm .tabs button.on{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff}
.adm .tabs button{border:2px solid #2563eb;background:#fff;color:#2563eb;border-radius:999px;padding:8px 16px;font-weight:800;cursor:pointer}
.adm .badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700;background:#e2e8f0}
.adm .yes{background:#dcfce7;color:#166534}.adm .no{background:#fee2e2;color:#991b1b}.adm .ov{background:#fef3c7;color:#92400e}
.adm .act button,.adm .cl button{margin:2px;padding:5px 10px;border-radius:999px;border:1.5px solid #2563eb;background:#fff;color:#2563eb;font-weight:700;cursor:pointer;font-size:12px}
.adm .act button.danger,.adm .cl button.danger{border-color:#dc2626;color:#dc2626}
.adm form.sf{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));align-items:end}
.adm label{font-weight:700;font-size:13px;display:block}.adm input,.adm select{width:100%;padding:9px;border:1px solid #cbd5e1;border-radius:10px;font-size:15px;box-sizing:border-box}
.adm .secret{font:700 20px ui-monospace,monospace;letter-spacing:.12em;background:#fef3c7;padding:12px;border-radius:12px;word-break:break-all}
.adm .sp-thumb{width:110px;height:44px;object-fit:contain}.adm .err{color:#b91c1c}.adm .okm{color:#047857}
.adm .narrow{max-width:460px;margin:30px auto}.adm .audit td{font-family:ui-monospace,monospace;font-size:12px}
