:root{--admin-navy:#102f45;--admin-dark:#081f30;--admin-teal:#147b76;--admin-gold:#d7a43a;--admin-bg:#f3f5f6;--admin-line:#dce3e6;--admin-muted:#667985;--admin-shadow:0 12px 35px rgba(12,40,55,.08)}
*{box-sizing:border-box}.admin-body{margin:0;background:var(--admin-bg);color:#1d3442;font-family:'DM Sans',Arial,sans-serif}.admin-topbar{position:fixed;inset:0 0 auto 0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 28px;background:#fff;border-bottom:1px solid var(--admin-line)}.admin-brand{display:flex;align-items:center;gap:12px;color:var(--admin-navy);text-decoration:none}.admin-brand img{width:45px;height:45px;object-fit:contain}.admin-brand small,.admin-brand strong{display:block}.admin-brand small{color:var(--admin-teal);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.admin-brand strong{font-family:'Source Serif 4',Georgia,serif;font-size:17px}.admin-user{display:flex;align-items:center;gap:18px;color:var(--admin-muted);font-size:12px}.admin-user a{color:var(--admin-navy);text-decoration:none}.admin-user>a:first-child{padding-right:18px;border-right:1px solid var(--admin-line)}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;padding-top:72px}.admin-sidebar{position:fixed;left:0;top:72px;bottom:0;width:240px;overflow-y:auto;padding:22px 14px;background:var(--admin-dark)}.admin-sidebar nav>a{display:flex;align-items:center;gap:12px;padding:10px 13px;border-radius:5px;color:#b9c8cf;font-size:12px;text-decoration:none}.admin-sidebar nav>a i{width:16px;color:#87aaa9;text-align:center}.admin-sidebar nav>a:hover,.admin-sidebar nav>a.is-active{background:rgba(255,255,255,.09);color:#fff}.admin-sidebar nav>a.is-active{box-shadow:inset 3px 0 var(--admin-gold)}.admin-nav-label{margin:19px 13px 6px;color:#68808c;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.admin-nav-label:first-child{margin-top:0}.admin-main{grid-column:2;padding:36px;min-width:0}.admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px}.admin-page-head>div>span,.admin-modal .modal-header span{color:var(--admin-teal);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.admin-page-head h1{margin:3px 0 4px;color:var(--admin-navy);font-family:'Source Serif 4',Georgia,serif;font-size:34px}.admin-page-head p{margin:0;color:var(--admin-muted);font-size:12px}.admin-primary-btn,.admin-secondary-btn{display:inline-flex;align-items:center;gap:7px;padding:11px 16px;border:0;border-radius:4px;background:var(--admin-teal);color:#fff;font-size:12px;font-weight:700;text-decoration:none}.admin-primary-btn:hover{background:#0d625e;color:#fff;text-decoration:none}.admin-secondary-btn{background:#edf1f2;color:var(--admin-navy)}.metric-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:24px}.metric-card{position:relative;padding:19px;background:#fff;border:1px solid #e4e9eb;box-shadow:0 5px 16px rgba(17,45,59,.03)}.metric-card>i{position:absolute;right:16px;top:17px;color:#92b5b3;font-size:17px}.metric-card span,.metric-card strong,.metric-card small{display:block}.metric-card span{padding-right:20px;color:var(--admin-muted);font-size:10px;font-weight:600}.metric-card strong{margin:12px 0 5px;color:var(--admin-navy);font-family:'Source Serif 4',Georgia,serif;font-size:24px}.metric-card small{color:#92a0a7;font-size:9px}.admin-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-panel{min-width:0;background:#fff;border:1px solid #e2e7e9;box-shadow:var(--admin-shadow)}.admin-panel--chart{padding-bottom:18px}.admin-panel--chart canvas{padding:0 20px}.admin-panel-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid #edf0f1}.admin-panel-head h2{margin:0;color:var(--admin-navy);font-family:'Source Serif 4',Georgia,serif;font-size:18px}.admin-panel-head p{margin:2px 0 0;color:var(--admin-muted);font-size:10px}.admin-panel-head>a{color:var(--admin-teal);font-size:11px;font-weight:700}.admin-list>div,.checkin-list>div{display:flex;align-items:center;gap:12px;padding:13px 22px;border-bottom:1px solid #edf0f1}.list-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#eaf4f3;color:var(--admin-teal)}.list-icon--alert{background:#fbf1dc;color:#ae7b17}.admin-list p,.checkin-list p{flex:1;margin:0}.admin-list strong,.admin-list small,.checkin-list strong,.checkin-list small{display:block}.admin-list strong,.checkin-list strong{color:var(--admin-navy);font-size:12px}.admin-list small,.checkin-list small{color:var(--admin-muted);font-size:9px}.admin-alert{display:flex;align-items:center;gap:9px;margin-bottom:18px;padding:12px 16px;border-left:3px solid #2e9b66;background:#e9f7ef;color:#236a49;font-size:12px}.admin-alert--error{border-color:#c84b4b;background:#fbecec;color:#8b3030}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;font-size:11px}.admin-table th{padding:12px 14px;background:#f7f9f9;color:#6e7e87;font-size:9px;letter-spacing:.05em;text-align:left;text-transform:uppercase}.admin-table td{max-width:220px;padding:13px 14px;border-top:1px solid #edf0f1;vertical-align:middle}.record-id{color:#87979f;font-family:monospace}.record-thumb{width:44px;height:44px;border-radius:4px;object-fit:cover}.record-text{display:block;overflow:hidden;color:#304955;text-overflow:ellipsis}.record-link{color:var(--admin-teal)}.status-badge{display:inline-block;padding:4px 8px;border-radius:20px;background:#eaf4f3;color:#246e6a;font-size:9px;font-weight:700}.icon-danger{border:0;background:none;color:#be5151}.admin-pagination{padding:15px 20px}.admin-pagination nav{display:flex;justify-content:flex-end}.admin-pagination svg{width:16px}.admin-pagination p{font-size:10px}.empty-state{display:flex!important;align-items:center;justify-content:center;flex-direction:column!important;gap:5px!important;min-height:120px;padding:25px!important;color:#8a9aa2;text-align:center}.empty-state>i{font-size:25px}.empty-state strong,.empty-state span{display:block}.admin-modal{border:0;border-radius:4px}.admin-modal .modal-header{align-items:flex-start;padding:20px 24px}.admin-modal .modal-header h2{margin:2px 0 0;color:var(--admin-navy);font-family:'Source Serif 4',Georgia,serif;font-size:23px}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-field{margin-bottom:15px}.admin-field--full{grid-column:1/-1}.admin-field label{display:block;margin-bottom:6px;color:#334d59;font-size:10px;font-weight:700;text-transform:uppercase}.admin-field label em{color:#c24646}.admin-field input,.admin-field select,.admin-field textarea{width:100%;padding:10px 11px;border:1px solid #ccd7db;border-radius:3px;background:#fff;color:#233e4a;font:12px 'DM Sans',Arial,sans-serif}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:var(--admin-teal);box-shadow:0 0 0 3px rgba(20,123,118,.1);outline:0}.attendance-summary{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:20px;background:var(--admin-navy);color:#fff}.attendance-summary>div{padding:22px 25px;border-right:1px solid rgba(255,255,255,.13)}.attendance-summary span,.attendance-summary strong,.attendance-summary small{display:block}.attendance-summary span{color:#b8cbd2;font-size:10px}.attendance-summary strong{margin:4px 0;font-family:'Source Serif 4',Georgia,serif;font-size:25px}.attendance-summary small{color:#91a9b3;font-size:9px}.attendance-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.session-card{display:grid;grid-template-columns:112px 1fr;gap:18px;padding:20px;border-bottom:1px solid #edf0f1}.session-qr{display:grid;place-items:center;width:112px;height:112px;padding:10px;border:1px solid var(--admin-line);background:#fff}.session-card h3{margin:9px 0 3px;color:var(--admin-navy);font-family:'Source Serif 4',Georgia,serif;font-size:17px}.session-card p{margin:0 0 7px;color:var(--admin-muted);font-size:10px}.session-card a{color:var(--admin-teal);font-size:10px;font-weight:700}.visitor-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--admin-navy);color:#fff;font-size:11px;font-weight:700}.checkin-list time{color:#7c8d95;font-size:9px}
.checkin-page{display:grid;place-items:center;min-height:100vh;margin:0;padding:22px;background:linear-gradient(135deg,#092234,#147b76);font-family:'DM Sans',Arial,sans-serif}.checkin-card{width:100%;max-width:440px;padding:34px;background:#fff;box-shadow:0 25px 60px rgba(0,0,0,.25)}.checkin-card>img{display:block;width:66px;height:66px;margin:0 auto 12px;object-fit:contain}.checkin-eyebrow{display:block;color:var(--admin-teal);font-size:9px;font-weight:700;letter-spacing:.12em;text-align:center;text-transform:uppercase}.checkin-card h1{margin:4px 0 18px;color:var(--admin-navy);font-family:'Source Serif 4',Georgia,serif;font-size:30px;text-align:center}.checkin-session{padding:10px;background:#eef6f5;color:var(--admin-teal);font-size:11px;text-align:center}.checkin-success,.checkin-error{margin:12px 0;padding:10px;background:#e9f7ef;color:#236a49;font-size:11px}.checkin-error{background:#fbecec;color:#8b3030}.checkin-button{width:100%;padding:13px;border:0;background:var(--admin-teal);color:#fff;font-weight:700}.privacy-note{display:block;margin-top:14px;color:#84959d;font-size:9px;text-align:center}
@media(max-width:1200px){.metric-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.admin-shell{display:block}.admin-sidebar{position:static;width:100%;height:auto}.admin-sidebar nav{display:flex;overflow-x:auto}.admin-sidebar .admin-nav-label{display:none}.admin-sidebar nav>a{flex:0 0 auto}.admin-main{padding:24px}.admin-dashboard-grid,.attendance-grid{grid-template-columns:1fr}.admin-topbar{position:static}.admin-shell{padding-top:0}.metric-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.admin-topbar{padding:0 15px}.admin-user>a:first-child,.admin-user span{display:none}.admin-main{padding:18px 12px}.admin-page-head{align-items:flex-start;flex-direction:column;gap:15px}.metric-grid,.attendance-summary,.admin-form-grid{grid-template-columns:1fr}.attendance-summary>div{border-bottom:1px solid rgba(255,255,255,.13)}.session-card{grid-template-columns:1fr}.checkin-card{padding:25px}.admin-brand strong{font-size:14px}}
.staff-shell{display:block;max-width:1380px;margin:0 auto}.staff-shell .admin-main{padding-top:42px}.staff-metrics{grid-template-columns:repeat(3,1fr)}.admin-panel--wide{grid-column:1/-1}.role-chip{display:inline-flex;padding:3px 8px;border-radius:20px;background:#eaf4f3;color:#26736e;font-size:8px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.role-chip--admin{background:#fbf0d8;color:#8a6317}.role-chip--staff{background:#e9f2f7;color:#3e6980}.admin-user .role-chip{margin-left:-10px}.audit-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:13px;padding:18px 22px;border-bottom:1px solid #edf0f1}.audit-filters label{display:block;margin-bottom:5px;color:#60717b;font-size:9px;font-weight:700;text-transform:uppercase}.audit-filters input,.audit-filters select{width:100%;height:39px;padding:0 10px;border:1px solid #ccd7db;background:#fff;font-size:11px}.audit-table td strong,.audit-table td small{display:block}.audit-table td small{color:#87969d;font-size:8px}.activity-badge{display:inline-block;padding:3px 7px;border-radius:3px;background:#e9f1f5;color:#4f7183;font-size:8px;font-weight:700}.activity-badge--post,.activity-badge--login{background:#e9f6ef;color:#34714f}.activity-badge--delete,.activity-badge--logout{background:#f9eaea;color:#963f3f}.audit-table code{color:#697c85;font-size:9px}.role-explainer{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px}.role-explainer>div{display:flex;align-items:center;gap:15px;padding:18px;background:#fff;border-left:3px solid var(--admin-teal)}.role-explainer>div:first-child{border-color:var(--admin-gold)}.role-explainer>div>i{color:var(--admin-teal);font-size:24px}.role-explainer p{margin:0}.role-explainer strong,.role-explainer span{display:block}.role-explainer strong{color:var(--admin-navy);font-size:12px}.role-explainer span{color:var(--admin-muted);font-size:9px}.account-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--admin-line)}.account-card{position:relative;display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:20px;background:#fff}.account-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--admin-navy);color:#fff;font-family:'Source Serif 4',Georgia,serif;font-size:20px}.account-card h3{margin:5px 0 1px;color:var(--admin-navy);font:600 15px 'Source Serif 4',Georgia,serif}.account-card p,.account-card small{margin:0;color:var(--admin-muted);font-size:9px}.current-account{color:var(--admin-teal);font-size:8px;font-weight:700;text-transform:uppercase}
.portal-login-body{margin:0;background:#eef2f3;font-family:'DM Sans',Arial,sans-serif}.portal-login-main{display:grid;place-items:center;min-height:100vh;padding:35px;background:radial-gradient(circle at 15% 20%,rgba(20,123,118,.11),transparent 35%),#eef2f3}.portal-login-card{display:grid;grid-template-columns:1.08fr .92fr;width:100%;max-width:1040px;min-height:590px;background:#fff;box-shadow:0 28px 75px rgba(11,39,54,.16)}.login-intro{display:flex;flex-direction:column;justify-content:space-between;padding:48px;background:linear-gradient(145deg,rgba(7,31,47,.97),rgba(12,74,72,.94)),url('../img/gallery/Shelves9.jpg') center/cover;color:#c8d8de}.login-brand{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none}.login-brand img{width:58px;height:58px;object-fit:contain}.login-brand small,.login-brand strong{display:block}.login-brand small{color:#90c6c2;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.login-brand strong{font:600 16px/1.25 'Source Serif 4',Georgia,serif}.login-eyebrow{color:var(--admin-teal);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.login-intro .login-eyebrow{color:#8ec6c2}.login-intro h1{margin:7px 0 14px;color:#fff;font:700 42px/1.08 'Source Serif 4',Georgia,serif}.login-intro p{max-width:470px;color:#c5d5db;font-size:13px;line-height:1.7}.login-intro ul{display:flex;gap:20px;list-style:none;margin:0;padding:0}.login-intro li{font-size:9px}.login-intro li i{display:block;margin-bottom:7px;color:var(--admin-gold);font-size:16px}.login-form-panel{display:flex;flex-direction:column;justify-content:center;padding:58px}.login-type-switch{display:flex;margin-bottom:40px;border-bottom:1px solid var(--admin-line)}.login-type-switch a{flex:1;padding:10px;color:#7b8d95;font-size:11px;font-weight:700;text-align:center;text-decoration:none}.login-type-switch a.is-active{border-bottom:3px solid var(--admin-teal);color:var(--admin-navy)}.login-form-panel h2{margin:5px 0;color:var(--admin-navy);font:700 31px 'Source Serif 4',Georgia,serif}.login-form-panel>p{margin-bottom:24px;color:var(--admin-muted);font-size:11px}.login-error{margin-bottom:16px;padding:10px 12px;border-left:3px solid #c34b4b;background:#fbecec;color:#8d3434;font-size:10px}.login-field{margin-bottom:16px}.login-field label{display:block;margin-bottom:6px;color:#405865;font-size:9px;font-weight:700;text-transform:uppercase}.login-field>div{display:flex;align-items:center;border:1px solid #cbd7da}.login-field i{width:42px;color:#81949d;text-align:center}.login-field input{width:100%;height:45px;border:0;outline:0;font-size:11px}.login-options{display:flex;justify-content:space-between;margin:4px 0 22px;color:#70838c;font-size:9px}.login-options a{color:var(--admin-teal)}.login-submit{display:flex;justify-content:space-between;width:100%;padding:14px 17px;border:0;background:var(--admin-teal);color:#fff;font-size:11px;font-weight:700}.login-submit:hover{background:#0c625e}.login-back{margin-top:25px;color:#71848d;font-size:9px;text-align:center;text-decoration:none}
@media(max-width:850px){.portal-login-card{grid-template-columns:1fr;max-width:560px}.login-intro{min-height:330px;padding:35px}.login-form-panel{padding:38px}.staff-shell .admin-main{padding-top:25px}.audit-filters{grid-template-columns:1fr 1fr}.account-grid{grid-template-columns:1fr}.role-explainer{grid-template-columns:1fr}}@media(max-width:560px){.portal-login-main{padding:0}.portal-login-card{min-height:100vh}.login-intro{min-height:290px;padding:27px}.login-intro h1{font-size:33px}.login-intro ul{display:none}.login-form-panel{padding:30px 25px}.staff-metrics{grid-template-columns:1fr}.audit-filters{grid-template-columns:1fr}.role-chip{display:none}}
.card-admin-form{display:grid;grid-template-columns:110px 120px 75px 1fr auto;gap:6px;min-width:650px}.card-admin-form select,.card-admin-form input{height:34px;padding:0 7px;border:1px solid #ccd7db;background:#fff;font-size:9px}.card-admin-form .admin-primary-btn{padding:8px 11px}.admin-table td>strong,.admin-table td>small{display:block}.admin-table td>small{color:#7f8f97;font-size:8px}
.membership-head-actions{display:flex;gap:8px}.membership-admin-metrics{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:18px}.membership-admin-metrics>div{position:relative;min-width:0;padding:16px;background:#fff;border:1px solid #e1e7e9}.membership-admin-metrics i{position:absolute;right:13px;top:14px;color:#88b1af}.membership-admin-metrics span,.membership-admin-metrics strong,.membership-admin-metrics small{display:block}.membership-admin-metrics span{padding-right:18px;color:#6d7f88;font-size:8px;font-weight:600}.membership-admin-metrics strong{margin:9px 0 3px;color:var(--admin-navy);font:700 21px 'Source Serif 4',Georgia,serif}.membership-admin-metrics small{overflow:hidden;color:#93a0a6;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.membership-chart-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin-bottom:18px}.membership-record-panel{box-shadow:none}.membership-filters{display:grid;grid-template-columns:minmax(260px,2fr) repeat(4,minmax(105px,.7fr)) auto 30px;align-items:end;gap:9px;padding:17px 18px;border-bottom:1px solid #e9edef}.membership-filters label{color:#687b84;font-size:8px;font-weight:700;text-transform:uppercase}.membership-filters input,.membership-filters select{display:block;width:100%;height:37px;margin-top:5px;padding:0 9px;border:1px solid #cad6da;background:#fff;color:#29444f;font-size:9px}.filter-search>div{display:flex;align-items:center;margin-top:5px;border:1px solid #cad6da;background:#fff}.filter-search>div i{width:34px;color:#7c929b;text-align:center}.filter-search input{margin:0;border:0}.membership-filters .admin-primary-btn{height:37px;justify-content:center}.filter-reset{display:grid;place-items:center;width:30px;height:37px;color:#7c8d95}.membership-table-summary{display:flex;justify-content:space-between;padding:11px 15px;background:#f8fafa;color:#73858d;font-size:8px}.membership-table-summary p{margin:0}.membership-data-table{min-width:1330px}.membership-data-table td{vertical-align:top}.member-identity{display:flex;gap:10px;min-width:180px}.member-identity>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;overflow:hidden;background:var(--admin-navy);color:#fff;font-weight:700}.member-identity img{width:100%;height:100%;object-fit:cover}.member-identity strong,.member-identity small{display:block}.member-identity strong{color:var(--admin-navy);font-size:10px}.member-identity small{color:#7f9098;font-size:8px}.member-expand{padding:0;border:0;background:none;color:var(--admin-teal);font-size:8px}.member-expand i{transition:.2s}.member-expand.is-open i{transform:rotate(180deg)}.member-primary-row td>strong{color:var(--admin-navy);font-size:10px}.member-primary-row td>small{margin-top:3px;line-height:1.5}.member-state,.card-state{display:inline-block;margin-bottom:5px;padding:4px 7px;border-radius:18px;font-size:7px;font-weight:700;text-transform:uppercase}.member-state--accepted{background:#e6f5ed;color:#32704d}.member-state--pending{background:#fbf1dc;color:#8e671c}.member-state--suspended{background:#f9e8e8;color:#973e3e}.card-state{background:#edf2f5;color:#4b6e80}.card-state--ready,.card-state--delivered{background:#e6f5ed;color:#32704d}.card-state--printing,.card-state--approved{background:#e9f1f8;color:#3f6f91}.card-state--rejected{background:#f9e8e8;color:#963d3d}.card-state--none{background:#f1f2f2;color:#89969c}.member-actions{display:flex;gap:5px}.member-actions a,.member-actions button{display:grid;place-items:center;width:28px;height:28px;border:1px solid #dbe3e5;background:#fff;color:var(--admin-teal)}.member-detail-row td{padding:0!important;background:#f4f7f7}.member-detail-grid{display:grid;grid-template-columns:1.3fr 1fr .8fr .8fr;gap:1px;background:#dfe6e8}.member-detail-grid>section{padding:18px;background:#f8fafa}.member-detail-grid h3{margin:0 0 11px;color:var(--admin-navy);font:700 12px 'Source Serif 4',Georgia,serif}.member-detail-grid dl{display:grid;grid-template-columns:95px 1fr;gap:6px;margin:0;font-size:8px}.member-detail-grid dt{color:#758791}.member-detail-grid dd{margin:0;color:#314b57}.document-buttons{display:flex;flex-wrap:wrap;gap:6px}.document-buttons a{padding:7px 8px;border:1px solid #d4dfe1;background:#fff;color:var(--admin-teal);font-size:8px;font-weight:700}.account-note{display:flex;align-items:center;gap:8px;margin:13px 0 0;padding:9px;background:#eaf4f3}.account-note i{color:var(--admin-teal)}.account-note strong,.account-note span{display:block}.account-note strong{font-size:8px}.account-note span{color:#6e8189;font-size:7px}.member-detail-grid form select{width:100%;height:34px;margin-bottom:7px;padding:0 7px;border:1px solid #cbd7da;background:#fff;font-size:8px}.member-detail-grid .admin-primary-btn{width:100%;justify-content:center;padding:9px}.delete-member-form{margin-top:9px}.delete-member-form button{width:100%;padding:8px;border:1px solid #e3bcbc;background:#fff;color:#a84242;font-size:8px}.no-card-message{color:#84949c;font-size:8px}
@media(max-width:1350px){.membership-admin-metrics{grid-template-columns:repeat(4,1fr)}.membership-filters{grid-template-columns:2fr repeat(3,1fr)}.membership-filters .filter-reset{display:none}}@media(max-width:900px){.membership-chart-grid{grid-template-columns:1fr}.membership-admin-metrics{grid-template-columns:repeat(2,1fr)}.membership-filters{grid-template-columns:1fr 1fr}.member-detail-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.membership-head-actions{flex-wrap:wrap}.membership-admin-metrics,.membership-filters,.member-detail-grid{grid-template-columns:1fr}.membership-table-summary{display:block}.membership-table-summary span{display:block;margin-top:4px}}
.profile-modal-open{overflow:hidden}.applicant-modal[hidden]{display:none}.applicant-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:28px}.applicant-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(5,25,38,.72);cursor:default}.applicant-modal-dialog{position:relative;width:min(1080px,100%);max-height:calc(100vh - 56px);overflow:hidden;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.3)}.applicant-modal-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:17px 22px;border-bottom:1px solid #e3e9eb;background:#fff}.applicant-modal-dialog>header span{color:var(--admin-teal);font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.applicant-modal-dialog>header h2{margin:2px 0 0;color:var(--admin-navy);font:700 22px 'Source Serif 4',Georgia,serif}.applicant-modal-close{display:grid;place-items:center;width:36px;height:36px;border:1px solid #dbe3e5;background:#f8fafa;color:var(--admin-navy)}.applicant-modal-body{max-height:calc(100vh - 130px);overflow-y:auto}.applicant-profile-modal{display:grid;grid-template-columns:250px 1fr;min-height:610px}.applicant-profile-modal>aside{padding:30px 24px;background:linear-gradient(160deg,var(--admin-navy),#0b4c58);color:#fff;text-align:center}.applicant-photo{display:grid;place-items:center;width:116px;height:132px;margin:0 auto 18px;overflow:hidden;border:4px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#a9c6cd;font-size:38px}.applicant-photo img{width:100%;height:100%;object-fit:cover}.applicant-profile-modal>aside h2{margin:12px 0 3px;color:#fff;font:700 21px/1.25 'Source Serif 4',Georgia,serif}.applicant-profile-modal>aside>p{margin:0;color:#aac2ca;font-size:10px}.applicant-profile-modal>aside dl{display:grid;grid-template-columns:1fr;gap:3px;margin:26px 0 0;text-align:left}.applicant-profile-modal>aside dt{margin-top:9px;color:#8fb0ba;font-size:7px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.applicant-profile-modal>aside dd{margin:0;color:#fff;font-size:9px}.applicant-profile-content{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:1px;background:#e3e9eb}.applicant-profile-content>section{min-width:0;padding:22px;background:#fff}.applicant-profile-content>section:nth-child(3),.applicant-profile-content>section:last-child{grid-column:1/-1}.applicant-profile-content h3{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:var(--admin-navy);font:700 14px 'Source Serif 4',Georgia,serif}.applicant-profile-content h3 i{color:var(--admin-teal);font-size:12px}.profile-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.profile-info-grid p{min-width:0;margin:0}.profile-info-grid p.wide{grid-column:1/-1}.profile-info-grid span,.profile-info-grid strong{display:block}.profile-info-grid span{margin-bottom:3px;color:#7b8c94;font-size:7px;font-weight:700;text-transform:uppercase}.profile-info-grid strong{overflow-wrap:anywhere;color:#28434f;font-size:9px;line-height:1.45}.profile-document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.profile-document-grid a{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #dbe4e6;background:#f8fafa;color:var(--admin-navy);text-decoration:none}.profile-document-grid a:hover{border-color:var(--admin-teal);background:#edf6f5}.profile-document-grid>a>i{display:grid;place-items:center;width:32px;height:32px;background:#e4f1f0;color:var(--admin-teal)}.profile-document-grid strong,.profile-document-grid small{display:block}.profile-document-grid strong{font-size:9px}.profile-document-grid small{margin-top:2px;color:#809098;font-size:7px}
@media(max-width:760px){.applicant-modal{padding:10px}.applicant-modal-dialog{max-height:calc(100vh - 20px)}.applicant-modal-body{max-height:calc(100vh - 90px)}.applicant-profile-modal{grid-template-columns:1fr}.applicant-profile-modal>aside{padding:22px}.applicant-profile-modal>aside dl{grid-template-columns:1fr 1fr;gap:7px 16px}.applicant-profile-content{grid-template-columns:1fr}.applicant-profile-content>section:nth-child(3),.applicant-profile-content>section:last-child{grid-column:auto}}@media(max-width:480px){.applicant-profile-content>section{padding:17px}.profile-info-grid,.profile-document-grid{grid-template-columns:1fr}.profile-info-grid p.wide{grid-column:auto}.applicant-profile-modal>aside dl{grid-template-columns:1fr}}
.membership-data-table thead th:last-child,.membership-data-table .member-primary-row>td:last-child{position:sticky;right:0;z-index:2;background:#fff;box-shadow:-8px 0 14px rgba(13,43,57,.06)}.membership-data-table thead th:last-child{z-index:3;background:#f7f9f9}.member-actions{display:grid;grid-template-columns:repeat(2,max-content);min-width:160px}.member-actions form{margin:0}.member-actions a,.member-actions button{display:inline-flex;width:auto;min-width:70px;padding:0 8px;gap:5px;font-size:8px;font-weight:700}.member-actions .member-action--accept{border-color:#b9dcc8;color:#2e7a50}.member-actions .member-action--block{border-color:#e5d09f;color:#956c1a}.member-actions .member-action--delete{border-color:#e4bcbc;color:#a64040}.member-actions button:hover,.member-actions a:hover{background:#f1f7f7;text-decoration:none}
.id-card-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.id-card-metrics>div{position:relative;padding:18px;background:#fff;border:1px solid #e1e7e9}.id-card-metrics>div>i{position:absolute;right:16px;top:16px;color:#83aaa9;font-size:16px}.id-card-metrics span,.id-card-metrics strong,.id-card-metrics small{display:block}.id-card-metrics span{color:#697c85;font-size:9px;font-weight:700}.id-card-metrics strong{margin:10px 0 3px;color:var(--admin-navy);font:700 24px 'Source Serif 4',Georgia,serif}.id-card-metrics small{color:#89989f;font-size:8px}.id-card-application-panel{margin-bottom:18px}.id-card-application-form{display:grid;grid-template-columns:1.25fr .8fr .9fr .55fr;align-items:end;gap:12px;padding:20px 22px}.id-card-application-form label span,.id-card-filters label>span{display:block;margin-bottom:5px;color:#687b84;font-size:8px;font-weight:700;text-transform:uppercase}.id-card-application-form input,.id-card-application-form select,.id-card-filters input,.id-card-filters select{width:100%;height:38px;padding:0 10px;border:1px solid #cad6da;background:#fff;color:#29444f;font-size:9px}.id-card-application-form label.wide{grid-column:span 2}.id-card-application-form .admin-primary-btn{height:38px;justify-content:center}.id-card-filters{display:grid;grid-template-columns:minmax(280px,2fr) 1fr 1fr auto 30px;align-items:end;gap:10px;padding:17px 18px;border-bottom:1px solid #e9edef}.id-card-filters .filter-search>div{margin:0}.id-card-filters .filter-search input{border:0}.id-card-filters .admin-primary-btn{height:38px}.id-card-table{min-width:1500px}.id-card-table td{vertical-align:top}.id-card-table td>small{margin-top:4px;line-height:1.55}.process-mark{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:18px;font-size:8px;font-weight:700}.process-mark--done{background:#e6f5ed;color:#2d724c}.process-mark--pending{background:#fbf1dc;color:#8e671c}.process-mark--neutral{background:#edf2f4;color:#617984}.card-processing-form{grid-template-columns:120px 115px 70px minmax(150px,1fr);min-width:620px}.card-processing-actions{display:flex;grid-column:1/-1;justify-content:flex-end;gap:6px}.card-processing-actions .admin-primary-btn,.card-processing-actions .admin-secondary-btn{padding:8px 10px;font-size:8px}
@media(max-width:900px){.id-card-metrics{grid-template-columns:1fr 1fr}.id-card-application-form{grid-template-columns:1fr 1fr}.id-card-application-form label.wide{grid-column:auto}.id-card-filters{grid-template-columns:1fr 1fr}.id-card-filters .filter-reset{display:none}}@media(max-width:560px){.id-card-metrics,.id-card-application-form,.id-card-filters{grid-template-columns:1fr}}
.portal-login-card--unified{min-height:650px}.portal-login-card--unified .login-form-panel{padding:42px 52px}.portal-login-card--unified .login-type-switch{margin-bottom:28px}.login-type-switch--three a{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px}.login-type-switch--three a i{font-size:13px}.portal-login-card--unified .login-eyebrow,.portal-login-card--unified .login-field label{font-size:12px}.portal-login-card--unified .login-form-panel>p,.portal-login-card--unified .login-field input,.portal-login-card--unified .login-options,.portal-login-card--unified .login-back{font-size:13px}.login-success{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 12px;border-left:3px solid #2e9b66;background:#e9f7ef;color:#236a49;font-size:12px}.numeric-captcha{margin:2px 0 15px}.numeric-captcha>label{display:block;margin-bottom:6px;color:#405865;font-size:12px;font-weight:700;text-transform:uppercase}.numeric-captcha>div{display:grid;grid-template-columns:92px 1fr 42px;height:45px;border:1px solid #cbd7da;background:#fff}.numeric-captcha>div>span{display:grid;place-items:center;background:#eaf4f3;color:var(--admin-navy);font:700 17px 'DM Sans',Arial,sans-serif;letter-spacing:.04em}.numeric-captcha input{width:100%;min-width:0;padding:0 12px;border:0;border-left:1px solid #dce4e6;outline:0;font-size:13px}.numeric-captcha button{border:0;border-left:1px solid #dce4e6;background:#f7f9f9;color:var(--admin-teal)}.numeric-captcha>small{display:block;margin-top:5px;color:#819199;font-size:12px}.numeric-captcha>small.is-error{color:#a83e3e}.portal-login-card--unified .login-submit{font-size:13px}
@media(max-width:850px){.portal-login-card--unified .login-form-panel{padding:36px}}@media(max-width:560px){.portal-login-card--unified .login-form-panel{padding:28px 22px}.login-type-switch--three a{font-size:12px}.login-type-switch--three a i{display:none}.numeric-captcha>div{grid-template-columns:82px 1fr 42px}}
.admin-head-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.statistics-admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.statistics-admin-metrics>div{position:relative;padding:18px 20px;border:1px solid #e0e7e9;background:#fff}.statistics-admin-metrics i{position:absolute;top:18px;right:18px;color:#7ba8a6;font-size:17px}.statistics-admin-metrics span,.statistics-admin-metrics strong{display:block}.statistics-admin-metrics span{padding-right:24px;color:#657a84;font-size:12px;font-weight:700}.statistics-admin-metrics strong{margin-top:10px;color:var(--admin-navy);font:700 26px 'Source Serif 4',Georgia,serif}.statistics-admin-grid{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(460px,1.2fr);gap:18px;margin-bottom:18px}.statistics-entry-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px 22px}.statistics-entry-form label span{display:block;margin-bottom:6px;color:#627780;font-size:12px;font-weight:700}.statistics-entry-form input,.statistics-entry-form textarea{width:100%;border:1px solid #cad6da;background:#fff;color:#27424e;font-size:13px}.statistics-entry-form input{height:41px;padding:0 11px}.statistics-entry-form textarea{min-height:82px;padding:10px;resize:vertical}.statistics-entry-form .wide{grid-column:1/-1}.statistics-entry-form .admin-primary-btn{grid-column:1/-1;justify-content:center;min-height:41px}.admin-panel--chart{padding-bottom:16px}.admin-panel--chart canvas{max-height:320px;padding:8px 18px 0}.statistics-admin-table{min-width:960px}.statistics-admin-table td{vertical-align:top}.statistics-admin-table td small{display:block;margin-top:4px;color:#7c8d94;font-size:11px}.statistics-admin-table .admin-secondary-btn{padding:7px 10px;white-space:nowrap}
@media(max-width:1100px){.statistics-admin-grid{grid-template-columns:1fr}.statistics-admin-metrics{grid-template-columns:1fr 1fr}}@media(max-width:580px){.statistics-admin-metrics,.statistics-entry-form{grid-template-columns:1fr}.statistics-entry-form .wide,.statistics-entry-form .admin-primary-btn{grid-column:auto}}
.repository-admin-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.repository-admin-metrics article{position:relative;min-width:0;padding:19px;border:1px solid #dfe7e9;background:#fff}.repository-admin-metrics article>i{position:absolute;top:18px;right:18px;color:#78a5a3;font-size:17px}.repository-admin-metrics span,.repository-admin-metrics strong,.repository-admin-metrics small{display:block}.repository-admin-metrics span{padding-right:24px;color:#627681;font-size:12px;font-weight:700}.repository-admin-metrics strong{margin:12px 0 4px;overflow:hidden;color:var(--admin-navy);font:700 25px 'Source Serif 4',Georgia,serif;text-overflow:ellipsis}.repository-admin-metrics small{color:#85949a;font-size:11px}.repository-admin-insights{display:grid;grid-template-columns:1.55fr .8fr .95fr;gap:18px;margin-bottom:18px}.repository-chart-wrap{min-height:270px;padding:8px 20px 20px}.repository-chart-wrap canvas{max-height:260px}.repository-chart-wrap--small canvas{max-height:250px}.repository-top-list>a{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid #e5eaec;color:#29444f}.repository-top-list>a:hover{background:#f2f7f6;text-decoration:none}.repository-top-list>a>span{color:#168078;font:700 12px 'Source Serif 4',Georgia,serif}.repository-top-list>a strong,.repository-top-list>a small{display:block}.repository-top-list>a strong{font-size:12px;line-height:1.3}.repository-top-list>a small{margin-top:3px;color:#819198;font-size:10px}.repository-top-list>a>i{color:#96a5aa}.repository-mini-empty{padding:32px 18px;color:#7c8e95;font-size:12px;text-align:center}.repository-admin-filters{display:grid;grid-template-columns:minmax(260px,1.8fr) 1fr .8fr .65fr auto 32px;align-items:end;gap:10px;padding:18px;border-bottom:1px solid #e3e9eb}.repository-admin-filters label>span{display:block;margin-bottom:5px;color:#60747e;font-size:11px;font-weight:700}.repository-admin-filters input,.repository-admin-filters select{width:100%;height:40px;padding:0 10px;border:1px solid #cad6da;background:#fff;color:#2d4854;font-size:12px}.repository-admin-filters label.wide>div{display:flex;align-items:center;border:1px solid #cad6da;background:#fff}.repository-admin-filters label.wide>div i{padding-left:11px;color:#74908f}.repository-admin-filters label.wide input{border:0}.repository-admin-filters .admin-primary-btn{height:40px}.repository-admin-filters .filter-reset{display:grid;place-items:center;width:32px;height:40px;color:#6f8189}.repository-admin-table{min-width:1350px}.repository-admin-table td{vertical-align:top}.repository-admin-table td>small{display:block;margin-top:4px;color:#819198;font-size:10px}.repository-document-cell{display:grid;grid-template-columns:36px minmax(200px,1fr);gap:10px}.repository-document-cell>i{display:grid;place-items:center;width:36px;height:40px;background:#e8f2f1;color:#147b76;font-size:16px}.repository-document-cell strong,.repository-document-cell small{display:block}.repository-document-cell strong{color:#173d4d;font-size:12px;line-height:1.35}.repository-document-cell small{max-width:330px;margin-top:4px;overflow:hidden;color:#7a8b92;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.repository-type-chip,.access-chip,.repository-status{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border-radius:14px;font-size:10px;font-weight:700}.repository-type-chip{background:#e7f1f0;color:#176d69}.access-chip--open{background:#e5f4eb;color:#307552}.access-chip--campus{background:#fff3d9;color:#8d681b}.access-chip--restricted{background:#f1e7e9;color:#8a4350}.repository-status--published{background:#e5f4eb;color:#307552}.repository-status--draft{background:#fff3d9;color:#8d681b}.repository-status--archived{background:#e9edef;color:#61757e}.repository-row-actions{display:flex;gap:5px}.repository-row-actions a,.repository-row-actions button{display:grid;place-items:center;width:31px;height:31px;border:1px solid #d8e1e3;background:#fff;color:#42606b}.repository-row-actions button{color:#a64646}.repository-admin-form{display:grid;gap:18px}.repository-admin-form .admin-panel-head>div>span{float:left;display:grid;place-items:center;width:32px;height:32px;margin-right:11px;border-radius:50%;background:#e4f1ef;color:#13766f;font-size:11px;font-weight:700}.repository-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 18px;padding:22px}.repository-form-grid label.full{grid-column:1/-1}.repository-form-grid label>span{display:block;margin-bottom:6px;color:#536b76;font-size:12px;font-weight:700}.repository-form-grid label>span em{color:#ae4b4b}.repository-form-grid input,.repository-form-grid select,.repository-form-grid textarea{width:100%;border:1px solid #c9d5d9;background:#fff;color:#29444f;font-size:13px}.repository-form-grid input,.repository-form-grid select{height:42px;padding:0 11px}.repository-form-grid textarea{padding:11px;line-height:1.6;resize:vertical}.repository-form-grid label>small{display:block;margin-top:5px;color:#7e8f96;font-size:11px}.repository-file-field{padding:18px;border:1px dashed #a9c1c3;background:#f6fafa}.repository-file-field input{padding:8px;background:#fff}.repository-file-field>strong,.repository-file-field>a{display:block;margin-top:9px;font-size:12px}.repository-file-field>strong{color:#176f6a}.repository-file-field>a{color:#154d68}.repository-form-actions{display:flex;justify-content:flex-end;gap:10px;padding:4px 0 24px}.repository-form-actions a,.repository-form-actions button{min-width:150px;justify-content:center}
@media(max-width:1250px){.repository-admin-metrics{grid-template-columns:repeat(3,1fr)}.repository-admin-insights{grid-template-columns:1fr 1fr}.repository-admin-insights>section:first-child{grid-column:1/-1}.repository-admin-filters{grid-template-columns:1fr 1fr 1fr}.repository-admin-filters label.wide{grid-column:span 2}}@media(max-width:700px){.repository-admin-metrics,.repository-admin-insights,.repository-form-grid,.repository-admin-filters{grid-template-columns:1fr}.repository-admin-insights>section:first-child,.repository-admin-filters label.wide,.repository-form-grid label.full{grid-column:auto}.repository-form-actions{flex-direction:column}.repository-form-actions a,.repository-form-actions button{width:100%}}
