:root{--nav:#123a63;--bg:#eef3f8;--card:#fff;--text:#17324d;--ok:#16856b;--warn:#d9822b;--bad:#c84b5b;--purple:#6c63a8;--blue:#1261a0}
*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Arial,sans-serif;background:var(--bg);color:#22384d}.top{background:var(--nav);color:#fff;padding:14px 22px;display:flex;align-items:center;gap:18px}.top h1{font-size:20px;margin:0;flex:1}.nav{background:#dce8f3;padding:9px 16px;display:flex;gap:8px;flex-wrap:wrap}.nav a{color:#17324d;text-decoration:none;font-weight:600;padding:7px 10px;border-radius:6px}.nav a:hover{background:#fff}.wrap{max-width:1500px;margin:auto;padding:16px}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.kpi{color:#fff;border-radius:10px;padding:14px;box-shadow:0 2px 8px #0001}.kpi small{font-weight:700;opacity:.9}.kpi b{display:block;font-size:25px;margin-top:4px}.blue{background:var(--blue)}.purple{background:var(--purple)}.green{background:var(--ok)}.orange{background:var(--warn)}.red{background:var(--bad)}.panel{background:#fff;border-radius:10px;padding:16px;margin-top:14px;box-shadow:0 2px 8px #0001}table{border-collapse:collapse;width:100%;font-size:14px}th{background:#f3f7fb;color:#17324d;text-align:left}th,td{padding:8px;border-bottom:1px solid #e4ebf2}.pos{color:#0a7b5a;font-weight:700}.neg{color:#b33b48;font-weight:700}.btn,button{background:#1261a0;color:#fff;border:0;border-radius:6px;padding:9px 13px;font-weight:700;cursor:pointer}.btn.secondary{background:#6c7783}.btn.good{background:#16856b}.btn.bad{background:#c84b5b}input,select,textarea{padding:8px;border:1px solid #bdcad7;border-radius:5px;min-width:120px}label{font-weight:600}.formgrid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px}.flash{padding:10px;border-radius:6px;background:#fff4ce;margin:8px 0}.login{max-width:420px;margin:90px auto;background:#fff;padding:26px;border-radius:12px;box-shadow:0 4px 18px #0002}.right{text-align:right}.muted{color:#73879a}.badge{padding:3px 7px;border-radius:12px;background:#e6eef6;font-size:12px}.scroll{overflow:auto}@media(max-width:1000px){.grid{grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.grid,.formgrid{grid-template-columns:1fr}.top{align-items:flex-start;flex-direction:column}}
