.access-admin { background:#f3f5f7; }
.access-page { padding-top:2rem; padding-bottom:2rem; }
.access-header,.access-list-header { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.access-header { margin-bottom:1.5rem; }
.access-admin .access-header h1 { font-weight:800; letter-spacing:-.035em; margin:.25rem 0 .5rem; }
.access-header p,.access-summary p { color:#637083; margin-bottom:0; }
.access-admin .page-kicker,.access-eyebrow { text-transform:uppercase; letter-spacing:.08em; font-size:.72rem; font-weight:750; color:#68788b; }
.access-environment { color:#0a58ca; background:#e8f0ff; padding:.4rem .8rem; border-radius:2rem; font-size:.85rem; font-weight:650; }
.access-summary { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:1.25rem; }
.access-count { display:block; margin:.4rem 0; font-size:1.9rem; font-weight:750; font-variant-numeric:tabular-nums; }
.access-admin-email { display:block; margin:.65rem 0; font-size:1.25rem; overflow-wrap:anywhere; }
.access-summary p { font-size:.87rem; }
.access-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:1.25rem; align-items:start; }
.access-panel { min-width:0; border:1px solid #dce3ec; border-radius:.9rem; padding:1.5rem; background:#fff; margin-bottom:1.25rem; }
.access-panel h2 { font-size:1.1rem; font-weight:750; margin-bottom:.5rem; }
.access-panel label { display:block; margin-bottom:1rem; font-size:.88rem; font-weight:650; }
.access-panel label input { margin-top:.4rem; }
.access-presets,.access-form-actions { display:flex; flex-wrap:wrap; gap:.5rem; }
.access-hint { color:#637083; font-size:.85rem; line-height:1.55; margin:.5rem 0 1rem; }
.access-pages { max-height:24rem; overflow:auto; border:1px solid #e1e7ed; border-radius:.6rem; padding:.7rem; }
.access-pages details + details { margin-top:.7rem; }
.access-pages summary { font-weight:650; font-size:.88rem; margin-bottom:.4rem; cursor:pointer; }
.access-pages label { display:flex; align-items:flex-start; gap:.5rem; padding:.5rem; margin:0; font-size:.87rem; font-weight:400; overflow-wrap:anywhere; }
.access-pages input { flex:0 0 auto; margin:.25rem 0 0; }
.access-pages p { color:#637083; font-size:.87rem; margin:0; }
.access-grant { border:1px solid #dce5ee; padding:1rem; border-radius:.65rem; margin-top:1rem; overflow-wrap:anywhere; }
.access-grant h3 { font-size:.97rem; font-weight:700; }
.access-grant[data-active="true"] { border-left:3px solid #198754; }
.access-grant[data-active="false"] { background:#f7f8fa; }
.access-grant details,.access-grant-content { margin:.6rem 0; font-size:.87rem; }
.access-grant summary { cursor:pointer; }
.access-grant ul { margin-top:.4rem; padding-left:1.2rem; }
.access-grant li + li { margin-top:.3rem; }
.access-grant-content > span { color:#637083; font-size:.75rem; font-weight:650; }
.access-login-note { margin-top:1.2rem; padding-top:1rem; border-top:1px solid #e8ecf1; font-size:.85rem; }
.access-login-note p { color:#637083; margin:.4rem 0 0; }
.access-empty { text-align:center; padding:2.5rem 1rem; background:#f7f9fc; border:1px dashed #dce3ec; border-radius:.7rem; }
.access-empty i { font-size:1.6rem; color:#8194ad; display:block; margin-bottom:.7rem; }
.access-empty strong { display:block; font-size:.96rem; margin-bottom:.3rem; }
.access-empty p { margin:0; color:#637083; font-size:.85rem; }
.access-bottom-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; align-items:start; }
.access-help p,.access-help li { font-size:.85rem; color:#637083; line-height:1.6; }
.access-help ul { padding-left:1.15rem; margin:1rem 0; }
.access-help li + li { margin-top:.6rem; }
.access-login { max-width:800px; }
.access-login .access-panel { margin-top:1rem; }
.access-visibility { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem; align-items:end; }
.access-visibility label:first-child { grid-column:1 / -1; }
.access-visibility label { margin:0; min-width:0; }
.access-visibility select { margin-top:.5rem; }
.access-seats-values { display:flex; flex-wrap:wrap; align-items:baseline; gap:.75rem; margin:1.25rem 0 .75rem; }
.access-seats-values strong { font-size:2rem; font-weight:750; font-variant-numeric:tabular-nums; }
.access-seats-values span { color:#637083; font-size:.9rem; }
.access-seats .access-list-header { flex-wrap:wrap; gap:.75rem; }
.access-seats .access-list-header > div:first-child { flex:1 1 26rem; }
.access-seats .access-form-actions { align-items:center; font-size:.85rem; }
.access-seats-source { border-top:1px solid #e8ecf1; padding-top:.85rem; font-size:.8rem; color:#637083; }
.access-seats-source p { margin-bottom:.4rem; }
.access-official-links { display:flex; flex-wrap:wrap; gap:1rem; margin-bottom:0; }
@media(max-width:850px) { .access-grid,.access-bottom-grid { grid-template-columns:1fr; } .access-page { padding-top:1.2rem; } }
@media(max-width:560px) { .access-summary { grid-template-columns:1fr; gap:0; } .access-panel { padding:1rem; } .access-visibility { grid-template-columns:1fr; } .access-visibility label:first-child { grid-column:auto; } .access-list-header { flex-wrap:wrap; } .access-header { gap:.5rem; } }
