*{box-sizing:border-box}body{margin:0;font:16px system-ui,sans-serif;background:#f6f8fb;color:#172033}aside{position:fixed;width:220px;top:0;bottom:0;background:#12335b;color:white;padding:22px;display:flex;flex-direction:column}aside strong{font-size:20px}nav{display:grid;gap:7px;margin-top:25px}a{color:#155ea8;text-decoration:none}aside a,aside button{color:white;background:transparent;border:0;text-align:left;padding:8px;font:inherit}aside a:hover,aside button:hover{background:#214b7d}aside footer{margin-top:auto}main{margin-left:220px;padding:22px;max-width:1500px}header{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #d6deea;padding-bottom:14px}.top{display:flex;gap:14px;flex-wrap:wrap}input,select,textarea,button{font:inherit;padding:9px;border:1px solid #b9c6d8;border-radius:5px}button,.button{background:#155ea8;color:white;border:0;cursor:pointer;padding:10px 14px;display:inline-block}.global input{width:280px}.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.cards>div,.timer,details{background:white;border:1px solid #dce4ef;border-radius:8px;padding:16px}.cards b{font-size:26px}.title,.controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.title{justify-content:space-between}.controls input{min-width:260px}.tablewrap{overflow:auto;max-height:340px;border:1px solid #d6deea;background:white;margin:10px 0}table{border-collapse:collapse;min-width:760px;width:100%}th,td{padding:10px;text-align:left;border-bottom:1px solid #e4e9f0;white-space:nowrap}th{background:#edf3fa;cursor:pointer;position:sticky;top:0}tr:hover{background:#f6faff}label{display:grid;gap:4px;margin:8px 0}dialog{border:0;border-radius:8px;box-shadow:0 10px 35px #0005}.login{max-width:420px;margin:12vh auto;background:white;padding:28px;border-radius:10px}.login form{display:grid;gap:10px}.tabs{display:flex;gap:10px;overflow:auto;border-bottom:1px solid #d6deea;padding-bottom:10px}.tabs a{white-space:nowrap}.internal{color:#8a2500;font-weight:bold}.flash{background:#e7f3ff;padding:10px;border-radius:5px}.find{width:min(500px,100%)}textarea{width:100%;min-height:75px}@media(max-width:760px){aside{position:static;width:auto;min-height:0}aside nav{grid-template-columns:repeat(3,1fr);margin-top:10px}aside footer{margin-top:15px}main{margin:0;padding:14px}header{display:block}.global input{width:100%;margin-top:12px}.cards{grid-template-columns:repeat(2,1fr)}}
