:root{--navy:#122d50;--green:#71bd43;--ink:#243448;--muted:#657488;--line:#dfe6ed;--bg:#f3f6fa}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 "Segoe UI",Arial,sans-serif}a{color:var(--navy);text-underline-offset:3px}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid #2874bd;outline-offset:3px}.topbar{background:#fff;border-bottom:1px solid var(--line);padding:20px 4vw;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;letter-spacing:1.4px;font-size:10px;font-weight:700;line-height:1.6}.brand strong{display:block;letter-spacing:1.1px;font-size:17px}.brand-icon{display:grid;place-items:center;background:#edf7e7;width:48px;height:48px;border-radius:14px;font-size:26px}.header-label{border-left:1px solid var(--line);padding-left:28px;color:var(--muted)}.topbar form{margin-left:auto}main{max-width:1440px;margin:auto;padding:38px 4vw 50px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:1.6px;color:#496a44;font-size:11px;font-weight:800}h1,h2,h3{color:var(--navy);line-height:1.2}h1{font-size:35px;letter-spacing:-1px;margin:7px 0 10px}h2{font-size:22px;margin:0 0 15px}h3{font-size:18px}p{margin:10px 0 18px}.page-heading p{color:var(--muted);margin:0}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;text-decoration:none;border:1px solid #cbd6e0;border-radius:9px;background:#fff;color:var(--navy);padding:11px 17px;cursor:pointer;font-weight:650;line-height:1.35}.button:hover{background:#f0f5f9}.button.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.button.primary:hover{background:#214b77}.button.quiet{border:0;background:transparent}.button.small{padding:7px 11px;font-size:13px}.button.danger{background:#a62928;color:white;border-color:#a62928}.danger-text{color:#ab2b28}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:28px}.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:21px 24px;box-shadow:0 3px 8px #17304d04}.stat span{display:block;color:var(--muted);font-size:13px}.stat strong{display:block;font-size:34px;color:var(--navy);font-weight:750;margin-top:5px}.stat:first-child{border-top:3px solid var(--green);padding-top:19px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tabs a{padding:10px 17px;color:var(--muted);border-radius:9px;text-decoration:none;font-weight:650}.tabs a[aria-current=page]{background:var(--navy);color:#fff}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 6px 20px #112d5004}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.section-heading h2{margin:0}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;background:#f7f9fc;border-radius:10px;padding:16px;margin-bottom:22px}label{display:block;font-size:13px;font-weight:650}input:not([type=checkbox]),select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #c7d2df;background:#fff;border-radius:8px;color:var(--ink);margin-top:6px;min-height:44px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--navy);cursor:pointer}.filters label{flex:1;min-width:170px}.filters .search-label{flex:1.5;min-width:220px}.filters .button{min-height:44px}.reset-link{padding:10px 2px;font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{color:var(--muted);font-size:11px;letter-spacing:.5px;text-transform:uppercase;background:#f7f9fc;font-weight:700;white-space:nowrap}td,th{padding:15px 12px;border-bottom:1px solid var(--line);vertical-align:middle}td strong{font-size:14px}td strong a{text-decoration:none}td small{display:block;color:var(--muted);font-size:12px;margin-top:3px;overflow-wrap:anywhere}.badge{display:inline-block;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:700;white-space:nowrap}.badge.new{background:#eaf2ff;color:#21569d}.badge.planned{background:#fff3d9;color:#865918}.badge.enrolled{background:#e8f5e4;color:#36742a}.row-actions{min-width:100px}.row-actions>a{display:block;font-size:12px;margin:4px 0}.table-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px;flex-wrap:wrap}.pagination{display:flex;gap:15px;align-items:center;font-size:13px}.actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:22px}.table-footer .actions{margin-top:0}.muted{color:var(--muted);font-size:13px}.notice{border:1px solid #cddced;background:#eef5ff;border-radius:9px;padding:15px 18px;margin-bottom:22px}.notice.error{background:#fff0ee;color:#8c2420;border-color:#e9b6b1}.notice.success{background:#edf8e8;color:#34602c;border-color:#b9dca9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .wide{grid-column:1/-1}.form-grid small{display:block;color:var(--muted);font-weight:400;margin-top:6px}.details{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.details>div{padding:16px 0;border-bottom:1px solid var(--line)}dt{font-size:12px;color:var(--muted)}dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.export-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:25px}.export-grid>div{padding:22px;background:#f7f9fc;border-radius:12px}.export-grid h3{margin:0 0 12px}.last-export{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}.location-choice{display:flex;align-items:center;gap:13px;padding:20px;border:1px solid var(--line);border-radius:9px;margin:16px 0;font-size:15px}.full{color:#b32820;margin-left:8px}.login{max-width:440px;margin:60px auto}.login label{margin:25px 0 18px}.login .button{width:100%}.empty-state{padding:55px 20px;text-align:center;color:var(--muted)}.empty-state strong{font-size:18px;color:var(--navy)}.footer-note{font-size:12px;color:var(--muted);margin-top:28px}.footer-note a{margin-left:8px}@media(max-width:1000px){.stats{gap:12px}.stat{padding:17px}.header-label{display:none}.page-heading{align-items:flex-start}td,th{padding:12px 9px}table{min-width:870px}}@media(max-width:650px){main{padding:24px 14px 35px}.topbar{padding:14px 16px}.brand-icon{width:39px;height:39px;font-size:22px}.brand strong{font-size:14px}.topbar .button{padding:8px}.page-heading{display:block}.page-heading .button{margin-top:20px}h1{font-size:30px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat span{font-size:11px}.stat strong{font-size:29px}.tabs{gap:4px}.tabs a{font-size:12px;padding:9px 10px}.panel{padding:19px 15px}.section-heading{align-items:flex-start}.section-heading h2{font-size:20px}.filters{padding:12px;gap:12px}.filters label,.filters .search-label{min-width:100%}.form-grid,.details,.export-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.login{margin:30px auto}.table-footer{display:block}.pagination{margin-top:20px;justify-content:center}.location-choice{padding:15px;font-size:13px}.export-grid>div{padding:18px}}

.trash-empty{margin-bottom:20px}.trash-empty summary{font-weight:700;color:#ab2b28;cursor:pointer}.trash-empty[open] summary{margin-bottom:24px}.trash-empty form{max-width:420px}

.mail-settings{max-width:540px;margin-top:24px}.mail-settings .muted{margin-top:10px}

.member-new td{background:#edf5ff}.member-new td:first-child{box-shadow:inset 4px 0 #2874bd}.new-member-label{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:5px;background:#1f5f9e;color:#fff;font-size:10px;font-weight:800;letter-spacing:.6px;vertical-align:middle}.member-new:hover td{background:#e3efff}
