.access-control-page { max-width: 960px; margin-inline: auto; }
.access-mode { font-weight: bold; }
.access-block, .access-candidate { border: 1px solid var(--border-color, #8a8180); border-radius: .4rem; padding: 1rem; margin-block: 1rem; }
.access-block > header, .access-candidate > header { display: flex; justify-content: space-between; gap: .8rem; flex-wrap: wrap; }
.access-ip { overflow-wrap: anywhere; }
.access-state { font-weight: bold; }
.access-pagination { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1rem; margin-block: 1rem; }
.access-pagination a { padding-block: .25rem; }
.access-search-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem 1.2rem; }
.access-search label { display: block; min-width: 0; }
.access-search input, .access-search select { display: block; box-sizing: border-box; width: 100%; max-width: 100%; margin-top: .35rem; }
.access-search-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; margin-block: 1rem; }
.access-search a { padding-block: .25rem; }
@media (max-width: 520px) { .access-search-fields { grid-template-columns: minmax(0,1fr); } }
.access-block dl, .access-candidate dl { display: grid; grid-template-columns: max-content minmax(0,1fr); gap: .4rem 1rem; }
.access-block dd, .access-candidate dd, .access-notices dd { margin-inline-start: 0; overflow-wrap: anywhere; }
.access-release summary, .access-manual-block summary, .access-candidate-block summary { cursor: pointer; text-decoration: underline; padding-block: .4rem; }
.access-release form, .access-manual-block form, .access-candidate-block form { margin-block-start: .8rem; }
.access-release label, .access-manual-block label, .access-candidate-block label { display: block; }
.access-release input[name=reason], .access-manual-block input[name=reason], .access-manual-block input[name=ip], .access-candidate-block input[name=reason] { display: block; box-sizing: border-box; width: 100%; margin-block: .4rem; }
.access-rate-notice { border: 1px solid currentColor; border-radius: .3rem; padding: .7rem; margin: .7rem; overflow-wrap: anywhere; }
