:root{--ink:#162033;--muted:#667085;--line:#e5e7eb;--bg:#f5f7fb;--card:#fff;--brand:#5b4bdb;--green:#168a55;--red:#c0392b;--amber:#b7791f}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#171c2d,#4b3bb8)}.login-card{background:#fff;padding:36px;border-radius:20px;width:min(420px,92vw);box-shadow:0 20px 60px #0004}.brand{font-size:28px;font-weight:800}.brand span{color:var(--brand)}.muted{color:var(--muted)}.field{display:flex;flex-direction:column;gap:6px;margin:12px 0}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff}.primary{background:var(--brand);color:#fff;border:0;border-radius:9px;padding:10px 15px;font-weight:700}.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:9px 13px}.danger{background:#fff;color:var(--red);border:1px solid #f0c5c1;border-radius:9px;padding:8px 11px}.shell{display:flex;min-height:100vh}.side{width:245px;background:#121827;color:#fff;padding:22px;position:sticky;top:0;height:100vh}.side .brand{margin-bottom:30px}.nav button{display:block;width:100%;text-align:left;background:none;border:0;color:#bfc6d4;padding:12px;border-radius:8px;margin:4px 0}.nav button.active,.nav button:hover{background:#252d40;color:#fff}.main{flex:1;padding:26px;min-width:0}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}.stat{font-size:28px;font-weight:800;margin-top:8px}.click{cursor:pointer}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px}.table{width:100%;border-collapse:collapse;min-width:760px}.table th,.table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}.table th{background:#fafafa;color:#555}.badge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700;background:#eef0f6}.badge.red{background:#fde9e7;color:#a22}.badge.green{background:#e5f6ed;color:#176b45}.badge.amber{background:#fff4d9;color:#8a6414}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.toolbar input,.toolbar select{border:1px solid var(--line);border-radius:9px;padding:9px;background:#fff}.modal{position:fixed;inset:0;background:#0007;display:grid;place-items:center;padding:20px;z-index:5}.modal-card{background:#fff;border-radius:16px;padding:22px;width:min(700px,96vw);max-height:90vh;overflow:auto}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px}.mini-grid{grid-template-columns:repeat(3,1fr);gap:10px}.notice{padding:10px 12px;border-radius:9px;background:#f0f3ff;color:#3e3b8f;margin:10px 0}.empty{padding:35px;text-align:center;color:var(--muted)}@media(max-width:900px){.side{width:72px;padding:12px}.side .brand .full,.nav button span{display:none}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.side{display:none}.main{padding:15px}.grid{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}}
