.admin-page{background:#f4f7fb}
.admin-wrap{width:calc(100% - 64px);max-width:1320px;margin:auto}
.admin-header{background:#fff;border-bottom:1px solid #dce3ed}
.admin-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0}
.admin-brand img{display:block;width:248px;height:auto}
.admin-header-actions{display:flex;align-items:center;gap:22px;font-size:13px}
.admin-page h1{font-size:clamp(30px,4vw,44px);letter-spacing:-.03em;margin:0 0 12px}
.admin-page h2{font-size:25px;margin:0 0 14px}
.admin-title{padding:40px 0 25px}
.admin-title>p:last-child{font-family:"Source Serif 4",Georgia,serif;font-size:18px;color:#5c6b80;margin:0}
.admin-title .section-kicker{font-size:10px;margin-bottom:12px}
.admin-panel{background:#fff;border:1px solid #dce3ed;border-radius:5px;padding:28px;margin:0 0 25px;scroll-margin-top:20px}
.admin-panel>.admin-muted{margin-top:0}
.admin-login{max-width:470px;margin:10px auto 60px;border-top:3px solid #10243d;padding:32px}
.admin-login form{margin-top:25px}
.admin-muted{color:#5c6b80;font-size:13px;line-height:1.6}
.admin-mfa-qr{display:block;width:220px;height:220px;margin:18px auto;padding:8px;background:#fff;border:1px solid #dce3ed;image-rendering:pixelated}
.admin-mfa-secret{font-size:13px;letter-spacing:.06em;overflow-wrap:anywhere;user-select:all}
.admin-status{padding:14px 18px;background:#e8f0fc;border:1px solid #bfd0eb;border-radius:5px;color:#163f7a;margin:0 0 24px;font-size:14px;overflow-wrap:anywhere}
.admin-status.error{background:#fff0ee;border-color:#e5c2bc;color:#8e3025}
.admin-status.success{background:#eaf4ed;border-color:#c5ddcd;color:#275d3b}
.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
.admin-toolbar p{margin:0}
.admin-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:23px}
.admin-metric{border:1px solid #dce3ed;border-top:3px solid #2b5cad;background:#fff;padding:18px}
.admin-metric strong{display:block;font-size:30px;line-height:1.2;font-weight:600;color:#10243d;margin-bottom:7px}
.admin-metric span{font-size:12px;color:#5c6b80;line-height:1.4;display:block}
.admin-metric.alert{border-top-color:#a34837}
.admin-page:has(#dashboard:not([hidden])) .admin-header,.admin-page:has(#dashboard:not([hidden])) .admin-title,.admin-page:has(#dashboard:not([hidden])) .admin-footer{display:none}
.admin-page:has(#dashboard:not([hidden])) #admin-main{width:auto;max-width:none;margin:0;padding:28px 40px 60px 288px}
.admin-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:30;width:248px;display:flex;flex-direction:column;background:#fff;border-right:1px solid #dce3ed;padding:24px 14px 18px;overflow-y:auto}
.admin-sidebar-brand img{display:block;width:196px;height:auto;margin:0 8px}
.admin-sidebar-event{font-size:10px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;line-height:1.6;color:#5c6b80;margin:18px 10px 22px}
.admin-nav,.admin-sidebar-foot{display:flex;flex-direction:column;gap:2px}
.admin-nav button,.admin-sidebar-foot a,.admin-sidebar-foot button{display:flex;align-items:center;gap:11px;width:100%;min-height:40px;padding:9px 10px;border:0;border-radius:5px;background:none;color:#1a2433;font-size:14px;font-weight:500;line-height:1.3;text-align:left;text-decoration:none}
.admin-nav button:hover,.admin-sidebar-foot a:hover,.admin-sidebar-foot button:hover{background:#f4f7fb}
.admin-nav button[aria-current=page]{background:#eaf0f8;color:#10243d;box-shadow:inset 3px 0 0 #2b5cad}
.admin-nav-icon{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:#5c6b80}
.admin-nav button[aria-current=page] .admin-nav-icon{color:#2b5cad}
.admin-nav-count{margin-left:auto;min-width:22px;padding:1px 7px;border-radius:999px;background:#fcf3df;color:#79551c;font-size:11px;font-weight:600;text-align:center;font-variant-numeric:tabular-nums}
.admin-nav-count.alert{background:#fff0ee;color:#8e3025}
.admin-sidebar-foot{margin-top:auto;padding-top:14px;border-top:1px solid #e5eaf1}
.admin-sidebar-foot a,.admin-sidebar-foot button{font-size:13px;color:#5c6b80}
.admin-section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.admin-section-heading .section-kicker{font-size:10px;margin-bottom:8px}
.admin-section-heading .button{font-size:12px;min-height:40px;padding:9px 13px;flex-shrink:0}
.admin-explanation{padding:15px 17px;background:#f4f7fb;border-left:3px solid #2b5cad;font-size:15px;color:#10243d;margin:4px 0 14px}
.admin-capacity-form,.admin-protocol-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start;margin-top:22px}
.admin-capacity-form>.button,.admin-protocol-form>.button{justify-self:start;grid-column:1/-1}
.admin-capacity-form .field,.admin-protocol-form .field{margin:0}
.admin-page select{width:100%;border:1px solid #bdc9da;border-radius:3px;background:#fff;color:#1a2433;padding:12px;font:inherit;font-size:14px;line-height:1.45}
.admin-page input,.admin-page select{min-height:45px}
.admin-page input[type=number]{font-variant-numeric:tabular-nums}
.admin-page .button:disabled{cursor:wait;opacity:.6}
.admin-page button:disabled,.admin-page input:disabled,.admin-page select:disabled{opacity:.6}
.admin-page .button{border-radius:4px}
.admin-filters{display:grid;grid-template-columns:minmax(220px,1fr) 230px;gap:20px;margin:24px 0 12px}
.admin-filters label{font-size:12px}
.admin-list-summary{font-size:12px;color:#5c6b80;margin:12px 0}
.admin-table-region{overflow:auto}
.admin-table{border-collapse:collapse;width:100%;font-size:13px;table-layout:fixed}
.admin-table th{text-align:left;font-weight:500;color:#5c6b80;font-size:11px;text-transform:uppercase;letter-spacing:.04em;background:#f4f7fb;padding:12px 10px;border-top:1px solid #dce3ed;border-bottom:1px solid #dce3ed}
.admin-table td{border-bottom:1px solid #e5eaf1;vertical-align:top;padding:14px 10px;overflow-wrap:anywhere}
.admin-table tbody tr:last-child td{border-bottom:0}
.admin-table th:first-child,.admin-table td:first-child{padding-left:0}
.admin-table th:last-child,.admin-table td:last-child{width:190px;padding-right:0}
.admin-table .admin-person{font-size:14px;font-weight:500;color:#10243d;margin:0 0 4px}
.admin-table .admin-email{font-size:12px;color:#5c6b80}
.admin-table .admin-date{font-size:11px;color:#5c6b80;display:block;margin-top:7px}
.admin-table .admin-question-text{white-space:pre-wrap;line-height:1.55;margin:0}
.admin-table details{border:0;margin-top:7px}
.admin-table summary{font-size:11px;padding:4px 16px 4px 0}
.admin-table summary:after{font-size:15px;top:0;right:0}
.admin-table details p{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;margin:8px 0 0;white-space:pre-wrap}
.admin-tag{display:inline-block;font-size:11px;font-weight:500;line-height:1.4;padding:5px 8px;border-radius:3px;background:#eaf0f8;color:#3b577f}
.admin-tag.confirmed,.admin-tag.sent,.admin-tag.reviewed{background:#eaf4ed;color:#275d3b}
.admin-tag.waitlisted,.admin-tag.pending,.admin-tag.invited,.admin-tag.new{background:#fcf3df;color:#79551c}
.admin-tag.cancelled,.admin-tag.hidden{background:#edf0f3;color:#5c6b80}
.admin-tag.failed{background:#fff0ee;color:#8e3025}
.admin-row-action{display:grid;grid-template-columns:1fr;gap:8px}
.admin-row-action label{font-size:10px;margin:0;color:#5c6b80}
.admin-row-action select{font-size:12px;min-height:36px;padding:7px}
.admin-row-action .button{font-size:12px;min-height:35px;padding:7px 12px;justify-self:start}
.admin-row-action .hint{margin:0;font-size:10px}
.admin-empty{padding:25px;background:#f8fafc;color:#5c6b80;font-size:13px;border:1px dashed #dce3ed;text-align:center}
.admin-footer{margin-top:40px;background:#fff;font-size:11px;color:#5c6b80;padding:25px 0}
.admin-footer .admin-wrap{display:flex;justify-content:space-between;gap:25px}
.admin-footer p{margin:0;max-width:620px}
.admin-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1280px){.admin-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.admin-page:has(#dashboard:not([hidden])) #admin-main{padding:14px 14px 40px}.admin-sidebar{position:sticky;top:0;bottom:auto;width:auto;flex-direction:row;align-items:center;gap:4px;margin:0 -14px 18px;padding:8px 10px;border-right:0;border-bottom:1px solid #dce3ed;overflow-x:auto;overflow-y:hidden}.admin-sidebar-brand,.admin-sidebar-event,.admin-sidebar-foot a{display:none}.admin-nav{flex-direction:row}.admin-nav button,.admin-sidebar-foot button{width:auto;white-space:nowrap;font-size:13px;padding:8px 10px}.admin-nav button[aria-current=page]{box-shadow:inset 0 -2px 0 #2b5cad}.admin-sidebar-foot{margin:0 0 0 auto;padding:0 0 0 4px;border-top:0;border-left:1px solid #e5eaf1}}
@media(max-width:1080px){.admin-metrics{grid-template-columns:repeat(3,1fr)}.admin-wrap{width:calc(100% - 40px)}.admin-panel{padding:23px}.admin-table{font-size:12px}.admin-table th:last-child,.admin-table td:last-child{width:160px}}
@media(max-width:720px){.admin-header-inner{align-items:flex-start;flex-direction:column;gap:15px;padding:18px 0}.admin-header-actions{width:100%;justify-content:space-between}.admin-brand img{width:230px}.admin-wrap{width:calc(100% - 28px)}.admin-title{padding-top:28px}.admin-title>p:last-child{font-size:16px}.admin-metrics{grid-template-columns:repeat(2,1fr);gap:8px}.admin-metric{padding:14px}.admin-metric strong{font-size:27px}.admin-panel{padding:20px 16px}.admin-section-heading{align-items:flex-start;flex-direction:column;gap:3px}.admin-section-heading .button{margin-bottom:14px}.admin-capacity-form,.admin-protocol-form,.admin-filters{grid-template-columns:1fr;gap:15px}.admin-capacity-form>.button,.admin-protocol-form>.button{grid-column:auto;width:100%}.admin-page input,.admin-page select{font-size:16px}.admin-table-region{overflow:visible}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{display:block;width:100%}.admin-table thead{display:none}.admin-table tr{border:1px solid #dce3ed;border-radius:4px;margin-bottom:14px;padding:6px 14px;background:#fff}.admin-table td,.admin-table th:last-child,.admin-table td:last-child{width:100%;padding:11px 0;border-bottom:1px solid #edf0f5}.admin-table td:before{content:attr(data-label);display:block;font-size:10px;font-weight:500;color:#5c6b80;letter-spacing:.03em;text-transform:uppercase;margin-bottom:6px}.admin-table td:last-child{border-bottom:0}.admin-table .admin-row-action{grid-template-columns:1fr auto;gap:8px}.admin-row-action label,.admin-row-action .hint{grid-column:1/-1}.admin-row-action .button{min-height:40px;align-self:start}.admin-row-action select{font-size:16px;min-height:40px}.admin-toolbar{align-items:flex-start;gap:12px}.admin-toolbar .button{font-size:12px;min-height:42px;padding:10px 12px;flex-shrink:0}.admin-login{padding:25px 20px}.admin-footer .admin-wrap{display:block}.admin-footer p+p{margin-top:10px}}
@media print{.admin-page:has(#dashboard:not([hidden])) #admin-main{padding:0}.admin-header-actions,.admin-sidebar,.admin-filters,form,.admin-table td:last-child,.admin-table th:last-child,.export-button,.admin-toolbar button{display:none!important}.admin-page{background:#fff}.admin-panel{break-inside:auto}.admin-metrics{grid-template-columns:repeat(3,1fr)}.admin-wrap{width:100%}.admin-table{font-size:10px}.admin-table tr{break-inside:avoid}}
