:root{--bg:#f6f7fb;--card:#fff;--ink:#162033;--muted:#6b7280;--line:#e5e7eb;--red:#d72d4a;--dark:#111827;--green:#107a4d;--gold:#d49410}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--ink)}.shell{display:flex;min-height:100vh}.sidebar{width:250px;background:#111827;color:#fff;padding:24px;position:sticky;top:0;height:100vh}.brand{font-size:24px;font-weight:800;line-height:1}.brand span{color:#ff6b82}.sidebar nav{margin-top:32px;display:grid;gap:8px}.sidebar a{color:#d1d5db;text-decoration:none;padding:11px 12px;border-radius:12px}.sidebar a:hover{background:#1f2937;color:#fff}.main{flex:1;padding:32px;max-width:1180px}.centered{display:grid;place-items:center;max-width:none}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 8px 24px rgba(17,24,39,.05);margin-bottom:20px}.grid{display:grid;gap:18px}.grid.cols{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line)}.stat strong{font-size:28px;display:block}.muted{color:var(--muted)}label{font-weight:700;display:block;margin:14px 0 8px}input,textarea,select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font:inherit;background:#fff}textarea{min-height:180px}.btn{border:0;border-radius:12px;padding:12px 16px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}.btn.primary{background:var(--red);color:white}.btn.dark{background:var(--dark);color:white}.btn.light{background:#fff;border:1px solid var(--line);color:var(--ink)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.alert{padding:12px 14px;border-radius:12px;margin-bottom:16px}.success{background:#e8fff3;color:#065f46}.error{background:#fff0f0;color:#991b1b}table{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden}td,th{padding:12px;border-bottom:1px solid var(--line);text-align:left}th{font-size:13px;color:var(--muted);text-transform:uppercase}.badge{padding:5px 9px;border-radius:999px;background:#eef2ff;font-size:12px;font-weight:800}.preview{white-space:pre-wrap;background:#f9fafb;border:1px solid var(--line);border-radius:14px;padding:16px}.login-card{width:min(450px,92vw)}@media(max-width:800px){.shell{display:block}.sidebar{width:100%;height:auto;position:relative}.main{padding:18px}.grid.cols{grid-template-columns:1fr 1fr}}@media(max-width:520px){.grid.cols{grid-template-columns:1fr}}
