:root{font-family:Arial,Helvetica,sans-serif;color:#1d2940;background:#f5f7fc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}a,button,input,select{outline-offset:4px}button{cursor:pointer;border:1px solid #d4dfef;border-radius:9px;padding:10px 16px;background:white;color:#253550;font-weight:600}button:hover{background:#eef2ff;border-color:#9eafe7}button:disabled{opacity:.55;cursor:wait}.primary{background:#3049e6;color:white;border-color:#3049e6}.primary:hover{background:#263cc5;color:white}input,select{border:1px solid #d4dfef;border-radius:8px;padding:10px;background:white;color:inherit;min-width:0;width:100%}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}aside{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:#101e34;color:#c9d5e5;padding:28px 16px;overflow:auto}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 40px;font-size:25px;font-weight:700;color:white}.brand span{background:#425ff2;border-radius:13px;padding:10px 14px;font-size:30px}.brand small{display:block;letter-spacing:3px;font-size:10px;margin-top:8px;color:#a9bad3}nav{display:grid;gap:7px}nav button{text-align:left;border:0;color:#c9d5e5;background:transparent;font-weight:400;padding:14px}nav button:hover{background:#203451;color:white}nav button[aria-current]{background:#3049e6;color:white}footer{margin-top:auto;padding-top:36px}footer button{width:100%;background:transparent;color:#c9d5e5;border-color:#34465f}main{padding:40px;max-width:1700px;width:100%;margin:auto}header{margin-bottom:28px}h1{font-size:34px;margin:14px 0 24px}h2{font-size:19px;margin:0 0 20px}h3{font-size:15px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#6b7f9e}.toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.toolbar label{max-width:170px}.toolbar form{display:flex;align-items:end;gap:8px}.toolbar form input{max-width:150px}section{background:white;border:1px solid #dfe6f2;border-radius:14px;padding:24px;margin-bottom:20px;box-shadow:0 2px 4px #17264403}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metrics section{margin-bottom:0}.metrics{margin-bottom:20px}.metrics p{color:#667b98;font-size:13px}.metrics strong{font-size:24px}.compact strong{font-size:20px}.muted{color:#728199;font-size:13px;line-height:1.7}.actions{display:flex;gap:8px;flex-wrap:wrap}.section-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.section-title h2{margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:#667b98;background:#f7f9fe;padding:13px}td{padding:16px 13px;border-bottom:1px solid #edf0f7;line-height:1.5}td button{font-size:12px;padding:7px 10px}td .actions{min-width:190px}.empty{padding:30px;text-align:center}.alert{padding:16px;background:#fff0ed;color:#a23027;border-radius:10px;margin:16px 0}.alert button{margin-left:16px}.notice{color:#207059}.banner{background:#eaf0ff;padding:14px;border-radius:9px;margin-bottom:20px;font-size:13px}.shade{position:fixed;inset:0;background:#101e3480;z-index:10;display:flex;align-items:center;justify-content:center;padding:24px}.dialog{width:650px;max-height:90vh;overflow:auto}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:24px}.dialog .actions{justify-content:flex-end}.spinner{display:inline-block;width:19px;height:19px;border:2px solid #c8d2fa;border-top-color:#3049e6;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}@media(max-width:950px){.shell{grid-template-columns:190px minmax(0,1fr)}main{padding:24px}.metrics{grid-template-columns:1fr 1fr}.brand{font-size:19px;padding-left:0}}@media(max-width:640px){.shell{display:block}aside{position:static;height:auto;padding:16px}.brand{padding-bottom:20px}nav{display:flex;overflow:auto}nav button{white-space:nowrap}footer{padding-top:16px}footer button{width:auto}.fields,.metrics{grid-template-columns:1fr}.section-title{align-items:start;flex-direction:column}main{padding:20px}}dialog.dialog{border:1px solid #dfe6f2;border-radius:14px;padding:24px;background:white;color:inherit}dialog::backdrop{background:#101e3480}