:root{--nc-blue:#0077cc;--nc-blue-dark:#005fa3;--nc-bg:#f6f9fc;--nc-card:#ffffff;--nc-text:#1f2937;--nc-muted:#6b7280;--nc-green:#22c55e;--nc-orange:#fb923c;--nc-red:#ef4444}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--nc-bg);color:var(--nc-text)}
a{color:var(--nc-blue);text-decoration:none}a:hover{color:var(--nc-blue-dark)}
.nav{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,var(--nc-blue) 0%, #0a4971 100%);color:#eaf2ff;padding:10px 16px;border-bottom:3px solid var(--nc-blue-dark);box-shadow:0 6px 20px rgba(0,0,0,.12)}
.nav .brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.3px}
.nav .brand img{height:28px;width:auto;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
.nav .brand span{font-size:1.05rem}
.nav a.link{color:#e9f2fb;font-weight:600;padding:8px 12px;border-radius:10px;display:flex;gap:8px;align-items:center}
.nav a.link:hover{background:rgba(255,255,255,.12)}.nav .spacer{flex:1}.nav .btn{background:#eaf2ff;color:var(--nc-blue);padding:8px 12px;border-radius:10px;font-weight:800}
.nav .btn:hover{background:#fff}.badge{display:inline-block;padding:2px 10px;border-radius:999px;background:#2dd4bf;color:#073b4c;font-weight:800;font-size:.78rem}
.container{max-width:1200px;margin:1.2rem auto;padding:0 1rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.card{background:var(--nc-card);border-radius:16px;padding:1rem;box-shadow:0 10px 30px rgba(2,6,23,.08);border:1px solid #e8eef6;transition:transform .1s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-1px);box-shadow:0 16px 36px rgba(2,6,23,.12)}.btn{display:inline-flex;align-items:center;gap:8px;background:var(--nc-blue);color:#fff;border:0;padding:10px 16px;border-radius:12px;font-weight:800}
.btn:hover{background:var(--nc-blue-dark)}.btn-danger{background:var(--nc-red)}.btn-danger:hover{background:#b91c1c}.btn-ghost{background:#eef5ff;color:var(--nc-blue)}
.alert{padding:10px;border-radius:12px;margin:.8rem 0}.alert.ok{background:#e7fbe9;border:1px solid #bbf7d0;color:#166534}.alert.warn{background:#fff3e7;border:1px solid #fed7aa;color:#7a5d00}.alert.err{background:#fee2e2;border:1px solid #fecaca;color:#7a1a1a}
.stat{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px;border-radius:16px;background:#fff;border:1px solid #e8eef6}.stat h3{margin:0;color:#111827;font-size:1.05rem}.stat .count{font-size:2.2rem;font-weight:900}
.stat.blue{border-top:6px solid var(--nc-blue)}.stat.green{border-top:6px solid var(--nc-green)}.stat.orange{border-top:6px solid var(--nc-orange)}.stat.red{border-top:6px solid var(--nc-red)}
input,select,textarea{width:100%;padding:10px;border:1px solid #d9e3f1;border-radius:12px;background:#fff}label{font-weight:800;font-size:.95rem;color:#0f172a}
h1{color:#0f172a;font-size:1.7rem;letter-spacing:.2px}h3{margin-top:0}.footer{margin:2rem 0;text-align:center;color:var(--nc-muted);font-size:.9rem}
.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;border-bottom:1px solid #e7edf5;text-align:left}.actions a{margin-right:8px}
.tooltip{position:relative;display:inline-block}.tooltip .tip{visibility:hidden;background:#111;color:#fff;padding:6px 8px;border-radius:8px;position:absolute;z-index:10;bottom:120%;left:50%;transform:translateX(-50%);white-space:nowrap}
.tooltip:hover .tip{visibility:visible}.header-stick{position:sticky;top:0;background:var(--nc-blue);color:#fff;display:flex;gap:12px;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:3px solid var(--nc-blue-dark);z-index:10}
.header-stick .btn{background:#fff;color:var(--nc-blue)}.tab-btn{border:0;background:#eef5ff;color:var(--nc-blue);padding:8px 12px;border-radius:10px;font-weight:800;cursor:pointer}
.tab-btn.active{background:var(--nc-blue);color:#fff}.tab{display:none}.tab.active{display:block}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:.8rem}.qr{border:1px dashed #e5e7eb;border-radius:12px;padding:6px;background:#fff}
