*{box-sizing:border-box}body{margin:0;font:15px/1.45 "Segoe UI",Arial;color:#0b1728;background:#f3f6fa}header{background:#17365d;color:#fff;min-height:66px;padding:14px 25px;display:flex;align-items:center;gap:15px}header h1{font-size:21px;margin:0 auto 0 0}.btn,button{border:1px solid #17365d;border-radius:5px;background:#fff;color:#17365d;padding:9px 14px;font-weight:700;cursor:pointer}.primary{background:#17365d;color:#fff}.danger{background:#a32621;color:#fff;border-color:#a32621}main{padding:22px;max-width:1900px;margin:auto}.panel{background:#fff;border:1px solid #8d98a8;border-radius:7px;padding:18px;margin-bottom:20px}.panel h2{margin:0 0 5px;font-size:20px}.table-wrap{overflow:auto;border:1px solid #525d6b;margin-top:12px}table{border-collapse:collapse;width:100%;white-space:nowrap}th,td{border:1px solid #525d6b;padding:9px 10px;text-align:left}th{background:#e1e6ed;color:#000}.count{border:0;padding:0;background:none;color:#064f91;text-decoration:underline}.split button{margin-right:5px;padding:3px 6px}.muted{color:#5a6472}.login{min-height:100vh;display:grid;place-items:center}.login .box{width:min(410px,92vw);background:#fff;padding:30px;border-radius:8px;box-shadow:0 8px 30px #17365d22}.login input,.upload input,.upload select{width:100%;padding:10px;margin:6px 0 12px}.status{min-height:22px}.error{color:#a32621}.modal{position:fixed;inset:0;background:#0009;display:grid;place-items:center;padding:18px;z-index:20}.modal.hidden{display:none}.dialog{background:#fff;width:min(1500px,97vw);max-height:92vh;overflow:auto;padding:20px;border-radius:7px}.dialog-head{display:flex;align-items:center}.dialog-head h2{margin-right:auto}.upload{display:grid;grid-template-columns:180px minmax(260px,1fr) 330px 150px;gap:10px;align-items:end}.hidden{display:none}@media(max-width:850px){.upload{grid-template-columns:1fr}}
