@import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500;600;700&display=swap');
*{box-sizing:border-box}body{margin:0;font-family:'Jost',-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:#f5f7fa;color:#16202a}.topbar{position:sticky;top:0;z-index:20;background:#111827;color:#fff;padding:0 24px;display:flex;gap:32px;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08)}.brand{font-weight:700;font-size:15px;letter-spacing:.2px;padding:18px 0;white-space:nowrap;display:flex;align-items:center;gap:8px}.brand::before{content:"";width:7px;height:7px;border-radius:50%;background:#34d399}.topbar nav{display:flex;gap:2px;flex-wrap:wrap;align-items:center}.topbar a{color:#c7ccd4;text-decoration:none;font-size:14px;padding:10px 14px;border-radius:7px;transition:background .15s ease,color .15s ease}.topbar a:hover{background:rgba(255,255,255,.08);color:#fff}.topbar a:focus-visible{outline:2px solid #34d399;outline-offset:1px}.topbar a.active{background:rgba(255,255,255,.1);color:#fff}.topbar a[href*="logout"]{margin-left:8px;color:#f3a5a5}.topbar a[href*="logout"]:hover{background:rgba(153,27,27,.25);color:#fecaca}.container{max-width:1180px;margin:28px auto;padding:0 18px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:18px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat{font-size:32px;font-weight:700}.muted{color:#6b7280}.btn{display:inline-block;border:0;border-radius:8px;padding:10px 14px;background:#111827;color:#fff;text-decoration:none;cursor:pointer}.btn.secondary{background:#e5e7eb;color:#111827}.btn.danger{background:#991b1b}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:14px}.field label{display:block;font-weight:700;margin-bottom:6px}.field input,.field textarea,.field select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:8px}.field input[type="checkbox"],.field input[type="radio"]{width:16px;height:16px;padding:0;flex:0 0 auto;accent-color:#111827;border-radius:4px}.field textarea{min-height:120px}.full{grid-column:1/-1}.checkbox-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 24px}.checkbox-list label{display:flex;align-items:center;gap:10px;font-weight:400;margin-bottom:0;cursor:pointer}.field label:has(input[type="checkbox"]){display:flex;align-items:center;gap:10px;font-weight:400;cursor:pointer}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:13px 11px;border-bottom:1px solid #eef0f3;text-align:left;vertical-align:middle}thead th{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#6b7280;border-bottom:1px solid #e5e7eb}tbody tr:nth-child(even){background:#f8f9fb}tbody tr:hover{background:#f0f4ff}td a{color:#111827;text-decoration:none;font-weight:600}td a:hover{text-decoration:underline}td a[href*="edit"]{display:inline-block;padding:5px 12px;border:1px solid #d7dbe1;border-radius:7px;font-size:13px;font-weight:500;color:#374151;transition:background .15s ease,border-color .15s ease}td a[href*="edit"]:hover{background:#111827;border-color:#111827;color:#fff;text-decoration:none}.link-danger{appearance:none;-webkit-appearance:none;font:inherit;border:1px solid #f3c6c6;background:#fff;color:#b91c1c;font-size:13px;font-weight:500;padding:5px 12px;border-radius:7px;cursor:pointer;line-height:1.4;transition:background .15s ease,border-color .15s ease,color .15s ease}.link-danger:hover{background:#991b1b;border-color:#991b1b;color:#fff}.link-danger:focus-visible{outline:2px solid #991b1b;outline-offset:2px}.flash{padding:12px 14px;border-radius:8px;margin-bottom:14px}.flash.success{background:#dcfce7}.flash.error{background:#fee2e2}.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#e5e7eb}.badge.on{background:#dcfce7}@media(max-width:760px){.grid,.form-grid{grid-template-columns:1fr}.checkbox-list{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:stretch;gap:0;padding:0 18px}.brand{padding:16px 0 12px}.topbar nav{gap:2px;padding-bottom:12px;border-top:1px solid rgba(255,255,255,.08);padding-top:8px}.topbar a{padding:9px 10px}.topbar a[href*="logout"]{margin-left:0}table{font-size:13px}}
