:root{--navy:#101a2c;--blue:#246bfd;--bg:#f4f7fb;--text:#172033;--muted:#718096;--green:#10a36a;--red:#e34b4b}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top right,#2e70ff 0,transparent 32%),var(--navy)}.panel{width:min(420px,92vw);padding:38px;background:white;border-radius:22px;box-shadow:0 30px 80px #0005}.brand{font-size:24px;font-weight:850;letter-spacing:-1px}.brand span{color:var(--blue)}.panel h1{margin:28px 0 6px}.panel p{color:var(--muted);margin:0 0 24px}input,select,textarea{width:100%;border:1px solid #dce3ee;border-radius:10px;padding:12px;margin:6px 0;background:white}.panel button,.primary{width:100%;border:0;border-radius:10px;padding:13px;background:var(--blue);color:white;font-weight:700;margin-top:10px}.panel small{display:block;color:var(--red);margin-top:10px}#app{min-height:100vh;display:grid;grid-template-columns:240px 1fr}aside{background:var(--navy);color:white;padding:28px 20px;display:flex;flex-direction:column;gap:36px}aside nav{display:grid;gap:7px}aside button{border:0;background:transparent;color:#b8c3d6;text-align:left;padding:12px 14px;border-radius:10px;cursor:pointer}aside button.active,aside button:hover{background:#ffffff12;color:white}.ghost{margin-top:auto}main{padding:0 34px 40px;overflow:hidden}header{height:100px;display:flex;justify-content:space-between;align-items:center}header small{color:var(--muted)}header h1{margin:4px 0 0;font-size:26px}.mobileMenu{display:none}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card,.tableWrap,.formCard{background:white;border:1px solid #e7ebf2;border-radius:16px;padding:20px;box-shadow:0 8px 26px #1b315108}.card small{color:var(--muted)}.card strong{display:block;font-size:24px;margin-top:9px}.card .positive{color:var(--green)}.card .negative{color:var(--red)}.grid2{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:18px}.tableWrap{overflow:auto}.sectionHead{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.sectionHead h2{font-size:17px;margin:0}.sectionHead button,.smallBtn{border:0;background:#eaf0ff;color:var(--blue);padding:9px 12px;border-radius:9px;font-weight:700;cursor:pointer}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:12px 10px;border-bottom:1px solid #edf0f4;text-align:left;font-size:14px}th{font-size:12px;color:var(--muted);text-transform:uppercase}.badge{padding:5px 9px;border-radius:999px;font-size:12px;background:#fff1df;color:#a65e00}.late{background:#ffebeb;color:#bf3030}.customerGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.customer{background:white;border:1px solid #e2e8f0;border-radius:15px;padding:18px}.customer h3{margin:0 0 5px}.customer p{color:var(--muted);font-size:13px}.customer strong{font-size:20px}.actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.actions button,.actions a{border:0;text-decoration:none;background:#eef3ff;color:var(--blue);padding:8px 10px;border-radius:8px;font-weight:650;font-size:12px}dialog{border:0;border-radius:18px;width:min(520px,94vw);padding:0;box-shadow:0 30px 90px #0005}dialog::backdrop{background:#0a142b99}dialog form{padding:26px;position:relative}.close{position:absolute;right:14px;top:12px;border:0;background:none;font-size:24px}.formRow{display:grid;grid-template-columns:1fr 1fr;gap:10px}.formCard{max-width:760px}.formCard button{max-width:240px} @media(max-width:900px){#app{grid-template-columns:1fr}aside{position:fixed;z-index:9;inset:0 auto 0 0;width:240px;transform:translateX(-100%);transition:.2s}aside.open{transform:none}main{padding:0 16px 30px}.mobileMenu{display:block;border:0;background:white;border-radius:9px;padding:10px}.cards{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}.customerGrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.cards,.customerGrid,.formRow{grid-template-columns:1fr}header{height:84px}.card strong{font-size:21px}}
