/* Admin controls use the site's existing box, typography and button styles. */
#main .admin-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1.5em; padding: 1.5em 3em; }
#main .admin-toolbar h2 { margin: 0; font-size: 1.5em; }
#main .admin-logout { margin: 0; flex: 0 0 auto; }
.admin-document-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2em; text-align: left; }
.admin-document + .admin-document { border-left: 1px solid #e5e5e5; padding-left: 2em; }
.admin-document h3 { margin-bottom: .5em; }
.admin-document .upload-form { margin: 0; }
.admin-document input[type="file"] { display: block; width: 100%; max-width: 100%; margin: 0 0 1.5em; font: inherit; font-size: .9em; }
.admin-document input[type="file"]::file-selector-button { font: inherit; color: #666; background: #f8f8f8; border: 1px solid #ddd; border-radius: 6px; padding: .6em .8em; margin-right: .5em; cursor: pointer; }
.admin-document button { width: 100%; padding: 0 1em; }
.admin-document .status { margin: 1em 0 0; font-size: .9em; }
@media screen and (max-width: 840px) {
    .admin-document-grid { grid-template-columns: 1fr; }
    .admin-document + .admin-document { border-left: 0; border-top: 1px solid #e5e5e5; padding: 2em 0 0; }
    #main .admin-toolbar { padding: 1.5em 2em !important; }
}
@media screen and (max-width: 480px) {
    #main .admin-toolbar { gap: .75em; padding: 1.25em 1em !important; }
    #main .admin-toolbar h2 { font-size: 1.25em; }
}
