.admin-page { background:#061b2a; font-size:16px; }
.admin-header-links { display:flex; gap:16px; }
.admin-header-links a { display:inline-flex; align-items:center; min-height:44px; }
.admin-layout { max-width:1320px; padding:40px 32px 80px; margin:auto; }
.admin-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.admin-heading h1 { font:400 36px/1.2 var(--display); letter-spacing:-.02em; }
.admin-heading p { color:var(--muted); line-height:1.6; }
.eyebrow { font-size:12px; letter-spacing:.12em; }
.admin-page button { min-height:44px; padding:10px 16px; color:var(--ink); background:#173c53; border:1px solid #53788e; border-radius:7px; cursor:pointer; font-size:14px; }
.admin-page button:hover { background:#235069; }
.admin-page button:disabled { opacity:.5; cursor:not-allowed; }
.admin-nav { margin-top:16px; }
.admin-section { margin-top:28px; padding:28px; background:#092335; border:1px solid var(--line); border-radius:12px; scroll-margin-top:24px; }
.admin-section h2 { margin:0 0 20px; font-size:22px; font-weight:500; }
.admin-section h3 { margin-top:32px; font-size:17px; font-weight:500; }
.admin-form { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:end; gap:20px; margin-top:24px; }
.admin-form label,.search-form label { display:grid; gap:8px; font-size:14px; color:var(--muted); }
.admin-form input:not([type=checkbox]),.admin-form select,.search-form input { min-width:0; width:100%; min-height:44px; border:1px solid #466a80; border-radius:6px; padding:10px 12px; background:#061b2a; color:var(--ink); }
.admin-form input[readonly] { color:#a4c2d3; }
.admin-form .check { display:flex; align-items:center; gap:10px; min-height:44px; }
.check input { width:18px; height:18px; accent-color:var(--accent); }
.hint { color:var(--muted); font-size:14px; line-height:1.7; }
.search-form { display:flex; gap:12px; align-items:end; margin-bottom:20px; }
.search-form label { flex:1; max-width:420px; }
.pagination { display:flex; gap:16px; align-items:center; justify-content:flex-end; margin-top:16px; }
.admin-section details { margin-top:24px; border-top:1px solid var(--line); padding-top:20px; }
.admin-section summary { cursor:pointer; padding:8px 0; }
#admin-status { min-height:24px; color:#b2e5ef; line-height:1.6; }
.admin-page .table-scroll td { max-width:280px; font-size:13px; }
.admin-page .table-scroll table { min-width:640px; }
.admin-page .table-scroll th { white-space:nowrap; }
#admin-denied { padding:32px; border:1px solid var(--line); border-radius:12px; line-height:1.8; }
@media(max-width:800px) { .admin-form { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) {
  .admin-layout { padding:24px 16px 48px; }
  .admin-heading { display:block; }.admin-heading h1 { font-size:30px; }
  .admin-section { padding:20px 16px; }.admin-form { grid-template-columns:1fr; }
  .admin-page .site-header { font-size:14px; }
  .search-form { align-items:end; }.pagination { justify-content:center; }
}
