*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f3f7fc;color:#10213d}.hidden{display:none!important}
.login{min-height:100vh;display:grid;place-items:center}.loginbox{width:min(440px,90%)}h1{margin:0 0 12px}input,select,textarea{width:100%;padding:14px;border:1px solid #cbd9eb;border-radius:10px;background:#fff;font-size:16px}
.login input{margin:10px 0}.login button,.primary,#eyeBtn,.small{border:0;border-radius:10px;background:#125bb5;color:#fff;padding:13px 18px;font-weight:700;cursor:pointer}
.app{min-height:100vh;display:flex}aside{width:240px;background:#0d2b52;color:#fff;padding:32px 18px;display:flex;flex-direction:column;gap:10px}aside h2{margin-bottom:24px}.nav,.logout{border:0;background:transparent;color:#fff;text-align:left;padding:14px;border-radius:9px;font-size:16px;cursor:pointer}.nav:hover,.nav.active{background:#174a84}.logout{margin-top:auto;background:#1b416d;text-align:center}
main{flex:1;padding:42px 36px}.top{display:flex;justify-content:space-between;align-items:start}.top p{color:#60728c}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.cards article,.panel{background:#fff;border:1px solid #e1eaf5;border-radius:18px;padding:24px;box-shadow:0 8px 30px #173c6910}.cards span{display:block;color:#65758d;margin-bottom:14px}.cards strong{font-size:25px}
.panel{max-width:650px}.panel.wide{max-width:none}.panel label{display:block;font-weight:700;margin:16px 0 7px}.panel label input,.panel label select,.panel label textarea{margin-top:8px}.inline{display:flex;gap:8px;align-items:center}.inline select{flex:1}.small{white-space:nowrap;background:#2878d0}.primary{width:100%;margin-top:18px}.msg{margin-top:10px;color:#345}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:15px;border-bottom:1px solid #e3ebf5}.tablewrap{overflow:auto}
@media(max-width:850px){aside{width:190px}.cards{grid-template-columns:1fr 1fr}main{padding:28px 18px}}@media(max-width:620px){.app{display:block}aside{width:100%;min-height:auto}.logout{margin-top:15px}.cards{grid-template-columns:1fr}.top{display:block}.inline{align-items:stretch;flex-direction:column}}
