:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#193145;background:#f4f7f9;font-synthesis:none}*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}:focus-visible{outline:3px solid #169282}header{padding:1.2rem max(1.5rem,calc((100vw - 1250px)/2));background:#112332;color:#eff8fc;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.8rem;color:inherit;text-decoration:none;font-size:1.2rem;font-weight:750}.brand small{display:block;font-size:.7rem;color:#a2bdc9;margin-top:.15rem;font-weight:500}.mark{display:grid;place-items:center;width:42px;height:42px;background:white;border-radius:11px;overflow:hidden;flex-shrink:0}.mark img{display:block;width:84%;height:84%;object-fit:contain}.skip{position:fixed;left:1rem;top:-80px;padding:1rem;background:white;z-index:20}.skip:focus{top:1rem}#account{display:flex;align-items:center;gap:1.2rem;font-size:.85rem}header .text-button{color:#d2ece7}main{max-width:1250px;margin:0 auto;padding:3rem 1.5rem;min-height:calc(100vh - 160px)}.eyebrow{color:#167e72;font-size:.71rem;letter-spacing:.13em;font-weight:800}h1{font-size:clamp(1.9rem,3.4vw,2.8rem);letter-spacing:-.055em;line-height:1.15;margin:.8rem 0 1rem}h2{font-size:1.4rem;letter-spacing:-.035em;margin:0 0 1.4rem}.muted{color:#637f8f;line-height:1.6;font-size:.9rem}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem}.page-heading p{margin-bottom:0}.button{border-radius:8px;padding:.8rem 1.15rem;border:1px solid transparent;cursor:pointer;font-size:.8rem;font-weight:750;min-height:44px}.primary{background:#107f72;color:white;box-shadow:0 5px 14px #0d78631a}.primary:hover{background:#08675d}.secondary{border-color:#cadce6;background:white;color:#375d70}.danger{background:#b33345;color:white}.text-button{border:0;background:transparent;padding:.4rem;color:#137a6c;font-size:.8rem;font-weight:700;cursor:pointer}.icon-button{border:1px solid #d5e3e9;background:white;border-radius:6px;width:34px;height:34px;color:#405d6e;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.auth-card{max-width:450px;margin:2rem auto;background:white;border:1px solid #d9e4ea;border-radius:16px;padding:2rem}.auth-card h1{font-size:2rem}label{display:block;font-size:.78rem;font-weight:700;margin:.95rem 0 .5rem}input:not([type=checkbox]),select{padding:.8rem;border:1px solid #cadce5;border-radius:7px;background:white;color:#243e53;width:100%;min-width:0;font-size:.85rem}.auth-card .button{width:100%;margin-top:1.3rem}.notice{padding:.9rem 1rem;border:1px solid #b8dacb;background:#eef9f3;border-radius:8px;font-size:.84rem;line-height:1.5}.notice.error{border-color:#efc2c7;color:#a43543;background:#fff4f4}.field-help{font-size:.72rem;color:#698494;line-height:1.5;margin:.45rem 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.metric{background:white;border:1px solid #d9e5eb;border-radius:12px;padding:1.3rem}.metric span{font-size:.75rem;color:#698391}.metric strong{font-size:1.9rem;display:block;margin-top:.5rem}.card{background:white;border:1px solid #d7e4eb;border-radius:13px;overflow:hidden}.table-toolbar{display:grid;grid-template-columns:2fr 1.3fr auto;align-items:end;gap:1rem;padding:1.5rem}.table-toolbar label{margin-top:0}.table-count{font-size:.75rem;color:#667f8e;padding:0 1.5rem;margin:0 0 1rem}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.82rem}th{background:#17364b;color:#e5f0f7;font-size:.7rem}th,td{padding:1.1rem;border-top:1px solid #dce7ec;vertical-align:middle}tbody tr:nth-child(even){background:#f7fafb}.role-badges{display:flex;gap:.4rem;flex-wrap:wrap}.badge{padding:.25rem .5rem;border-radius:5px;font-size:.67rem;background:#e8f4f0;color:#217564;font-weight:700}.badge.disabled{color:#8b651e;background:#fcf0d6}.row-actions{display:flex;gap:.5rem}.row-actions button{font-size:.75rem;white-space:nowrap}.row-actions .text-button:last-child{color:#a6414f}.empty{padding:3rem;text-align:center;color:#6b8391}dialog{max-height:90dvh;overflow:auto;width:min(520px,calc(100vw - 2rem));border:1px solid #cddde6;border-radius:14px;padding:1.5rem;color:#213c50}dialog::backdrop{background:#0e2331aa}.dialog-heading{display:flex;justify-content:space-between;gap:1rem}.dialog-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:1.5rem}fieldset{border:0;padding:0;margin:1.2rem 0}legend{font-size:.8rem;font-weight:700;margin-bottom:.4rem}.check-row{display:flex;align-items:flex-start;gap:.65rem;background:#f6faf9;border:1px solid #d9e7e4;border-radius:8px;padding:.85rem;cursor:pointer;margin:.5rem 0}.check-row input{accent-color:#148775;width:17px;height:17px;flex-shrink:0}.check-row strong{font-size:.78rem}.check-row small{display:block;color:#698493;font-size:.72rem;font-weight:400;line-height:1.5;margin-top:.25rem}footer{max-width:1250px;margin:auto;padding:1.2rem 1.5rem;color:#78919f;font-size:.72rem}code{font-size:.76rem;overflow-wrap:anywhere}@media(max-width:650px){main{padding:2rem 1rem}.page-heading{align-items:stretch;flex-direction:column}.page-heading>.button{align-self:flex-start}.table-toolbar{grid-template-columns:1fr;padding:1rem}.metrics{gap:.5rem}.metric{padding:1rem .7rem}.metric span{font-size:.65rem}.metric strong{font-size:1.5rem}table{min-width:680px}.auth-card{padding:1.5rem;margin:1rem auto}header{padding:1rem}#account{gap:.5rem;font-size:.7rem}.brand{font-size:1rem}}

.field-error{margin:.45rem 0 .8rem;color:#ae2c3b;font-size:.8rem;line-height:1.5}input[aria-invalid="true"]{border-color:#bc3d4d;box-shadow:0 0 0 2px #bc3d4d15}

.organization-context{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem;margin-bottom:1.5rem}.organization-selector{flex:1;max-width:620px}.organization-context .row-actions{flex-wrap:wrap}.organization-selector select{width:100%}.organization-context .field-help{margin-bottom:0}dialog{max-height:90dvh;overflow:auto}#organization-administrator{border-top:1px solid #d8e4eb;margin-top:1.4rem;padding-top:.5rem}@media(max-width:700px){.organization-context{align-items:stretch;flex-direction:column}.organization-context .row-actions{display:flex}.organization-context .row-actions button{flex:1}}

#organization-dialog .dialog-actions{position:sticky;bottom:-1.5rem;background:#fff;padding:1rem 0 .5rem;border-top:1px solid #d8e4eb}
