:root{--bg:#f5f6f8;--panel:#fff;--text:#111827;--muted:#6b7280;--line:#e5e7eb;--dark:#111827;--yellow:#f2c94c;--blue:#1d4ed8;--red:#dc2626;--green:#16a34a;--orange:#d97706;--shadow:0 18px 60px rgba(15,23,42,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.layout{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{background:#111827;color:white;padding:22px;position:sticky;top:0;height:100vh;overflow:auto}.logo{display:flex;gap:12px;align-items:center;margin-bottom:24px}.logo span,.brand-mark{width:42px;height:42px;border-radius:14px;background:var(--yellow);color:#111827;display:grid;place-items:center;font-weight:900}.logo small{display:block;color:#cbd5e1}.sidebar nav a{display:block;padding:10px 12px;border-radius:12px;text-decoration:none;color:#d1d5db;margin:3px 0;font-weight:650}.sidebar nav a.active,.sidebar nav a:hover{background:#f2c94c;color:#111827}.sidebar hr{border:0;border-top:1px solid #374151;margin:16px 0}.logout{margin-top:24px}.logout button{width:100%;border:1px solid #374151;background:transparent;color:white;padding:10px;border-radius:12px}.content{padding:28px;overflow:auto}.hero{display:flex;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#111827,#293241);color:white;border-radius:24px;padding:28px;margin-bottom:22px;box-shadow:var(--shadow)}.hero h1{margin:0 0 8px;font-size:32px}.hero p{margin:0;color:#d1d5db;max-width:850px}.hero-card{background:#ffffff10;border:1px solid #ffffff25;border-radius:18px;padding:18px;min-width:180px}.hero-card span{display:block;color:#d1d5db;margin-top:4px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 18px}.page-head h1{margin:0;font-size:30px}.page-head p{margin:6px 0 0;color:var(--muted)}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:18px}.kpi,.card{background:var(--panel);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.kpi{padding:18px}.kpi span{display:block;color:var(--muted);font-size:13px}.kpi strong{font-size:30px}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card{padding:20px;margin-bottom:18px;overflow:auto}.card h2{margin-top:0}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:#475569;background:#f8fafc}th,td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}small{color:var(--muted)}.badge{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;background:#eef2ff;color:#3730a3}.badge.success{background:#dcfce7;color:#166534}.badge.warning{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.badge.neutral{background:#f1f5f9;color:#475569}.btn{border:0;border-radius:12px;padding:11px 15px;font-weight:800;cursor:pointer}.btn.primary{background:var(--yellow);color:#111827}.btn.full{width:100%}.flash{padding:12px 14px;border-radius:12px;margin-bottom:14px;font-weight:700}.flash.ok{background:#dcfce7;color:#166534}.flash.err{background:#fee2e2;color:#991b1b}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#f2c94c55,transparent 40%),#111827}.login-card{max-width:430px;width:100%;background:white;padding:30px;border-radius:26px;box-shadow:0 30px 90px #0006}.login-card h1{margin:14px 0 8px}.login-card p{color:var(--muted)}label{display:flex;flex-direction:column;gap:6px;font-weight:750;color:#374151}input,select,textarea{border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;background:white}textarea{min-height:100px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide,fieldset.wide{grid-column:1/-1}fieldset{border:1px solid var(--line);border-radius:14px;padding:12px}.check{flex-direction:row;align-items:center;font-weight:600;display:inline-flex;margin-right:14px}.modal{display:none;position:fixed;inset:0;background:#0f172acc;align-items:flex-start;justify-content:center;overflow:auto;padding:40px;z-index:10}.modal.show{display:flex}.modal-box{background:white;border-radius:22px;box-shadow:0 20px 90px #0008;padding:24px;max-width:900px;width:100%;position:relative}.modal-close{position:absolute;right:14px;top:12px;border:0;background:#f1f5f9;border-radius:50%;font-size:24px;width:36px;height:36px;cursor:pointer}code{background:#f1f5f9;border-radius:6px;padding:2px 5px}@media(max-width:1100px){.layout{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.kpi-grid,.grid.two{grid-template-columns:1fr 1fr}}@media(max-width:700px){.content{padding:16px}.hero,.page-head{display:block}.kpi-grid,.grid.two,.form-grid{grid-template-columns:1fr}.modal{padding:12px}.sidebar nav{display:grid;grid-template-columns:1fr 1fr;gap:4px}}
