*{box-sizing:border-box}body{margin:0;background:#f4f7f8;color:#082d47;font:16px/1.5 system-ui,sans-serif}header{display:flex;align-items:center;gap:24px;background:#e1eef0;padding:18px 5vw;border-bottom:1px solid #bfd0d4}header img{width:240px;height:auto}header button{margin-left:auto}main{max-width:1250px;margin:32px auto;padding:0 24px}h1{font-size:30px;margin:0 0 8px}h2{font-size:21px}p{color:#405965}label{display:grid;gap:5px;font-weight:600;font-size:14px}input,select,textarea{width:100%;font:inherit;color:inherit;border:1px solid #8ba1ac;border-radius:6px;padding:10px;background:white}input[type=checkbox]{width:20px;height:20px}button{font:inherit;padding:10px 16px;border-radius:7px;border:1px solid #0e5a6b;color:#0e5a6b;background:white;cursor:pointer}button.primary{color:white;background:#0e5a6b}button:disabled{opacity:.6}form{display:grid;gap:16px}.login{max-width:480px;margin:60px auto;background:white;border:1px solid #d3dfe3;border-radius:12px;padding:30px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.modules{display:flex;gap:14px;flex-wrap:wrap}.modules label{display:flex;align-items:center;font-weight:400}.card{background:white;border:1px solid #d3dfe3;border-radius:12px;padding:24px;margin:24px 0;overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid #d3dfe3}td small{display:block;color:#405965}.actions{display:flex;gap:10px;flex-wrap:wrap}.error{color:#a8261c}dialog{width:min(760px,95vw);max-height:90vh;border:1px solid #8ba1ac;border-radius:12px;padding:24px}dialog::backdrop{background:#082d4766}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#eef4f5;padding:14px}#notice{position:fixed;bottom:12px;right:20px;background:#082d47;color:white;border-radius:8px;padding:12px;display:none;max-width:90vw}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #168da6;outline-offset:2px}@media(max-width:650px){header{flex-wrap:wrap;gap:12px}header img{width:180px}header span{font-size:13px}.grid{grid-template-columns:1fr}main{padding:0 16px}.card{padding:16px}table{min-width:750px}.login{padding:22px;margin:24px 0}}

.qr{width:240px;height:240px;max-width:100%;object-fit:contain;background:white}
