:root{font-family:Inter,Arial,sans-serif;color:#172642;background:#f3f6fc}*{box-sizing:border-box}body{margin:0}a{text-decoration:none;color:inherit}.layout{display:flex;min-height:100vh}.side{width:252px;background:#101f3b;color:white;padding:24px 15px;flex-shrink:0}.brand{font-size:23px;font-weight:800;margin-bottom:32px}.brand small{font-size:12px;display:block;font-weight:400;color:#b8c9e8;margin-top:6px}.nav{display:block;padding:13px 14px;border-radius:10px;margin:5px 0;color:#d4def2}.nav.active,.nav:hover{background:#2759b5;color:#fff}.main{flex:1;min-width:0;padding:25px 30px}.top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px;flex-wrap:wrap}.top h1{margin:0;font-size:27px}.muted{color:#64748b;font-size:13px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card,.panel{background:white;border:1px solid #e0e8f3;border-radius:14px;padding:19px;box-shadow:0 3px 15px #0d245008}.card{background:linear-gradient(145deg,#fff,#eaf4ff)}.card b{display:block;font-size:28px;margin:14px 0 5px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.panel h3{margin:0 0 15px}.bar{display:flex;align-items:center;gap:12px;margin:12px 0}.bar label{width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.bar span{display:block;background:#3675e5;border-radius:4px;height:15px}.bar em{font-size:12px;font-style:normal;white-space:nowrap}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:11px;border-bottom:1px solid #e4ebf4;text-align:left}th{background:#edf4ff}input,select,button{font:inherit;padding:10px;border:1px solid #ccd8e9;border-radius:8px}input[type=checkbox]{width:17px;height:17px}button,.btn{background:#225ed1;color:white;border:0;padding:11px 17px;border-radius:8px;cursor:pointer;display:inline-block}.btn.secondary{background:#e8eef9;color:#153264}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.alert{padding:12px 15px;background:#fff1ed;border:1px solid #ffbda8;border-radius:8px;margin-bottom:16px}.ok{background:#ecfff4;border-color:#9dd9b2}.form{display:grid;gap:12px;max-width:520px}.form label{display:grid;gap:5px}.auth{max-width:420px;margin:10vh auto;padding:30px;background:white;border-radius:15px;box-shadow:0 10px 40px #182b4b20}.auth h1{margin-top:0}.hint{padding:13px;border-radius:10px;background:#edf4ff;margin-bottom:20px}.wide{grid-column:1/-1}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){.layout{display:block}.side{width:100%;padding:12px}.brand{margin-bottom:8px}.nav{display:inline-block}.main{padding:15px}.cards,.grid{grid-template-columns:1fr}}
