.server-page { min-height: 100vh; display: flex; flex-direction: column; }
.server-header {
  display: flex; justify-content: space-between; align-items: center; gap: 1rem;
  padding: 1rem clamp(1rem, 4vw, 3rem); border-bottom: 1px solid var(--line);
  background: rgb(7 16 22 / .96);
}
.server-brand { color: var(--text); font-size: 1.55rem; font-weight: 850; text-decoration: none; }
.server-header nav, .server-footer nav, .admin-nav {
  display: flex; flex-wrap: wrap; align-items: center; gap: .65rem;
}
.server-header nav a, .server-header nav button, .admin-nav a {
  display: inline-block; min-height: 44px; padding: .62rem .8rem;
  border: 1px solid var(--line); border-radius: 7px; background: var(--surface);
  color: var(--text); text-decoration: none;
}
.server-header form { margin: 0; }
.server-main { width: min(1180px, 100%); flex: 1; margin: 0 auto; padding: clamp(1rem, 4vw, 3rem); }
.server-main h1 { margin-top: .2rem; font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.08; }
.server-auth { width: min(620px, 100%); margin: 2rem auto; padding: clamp(1.2rem, 4vw, 2.4rem); border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); }
.server-form { display: grid; gap: .55rem; }
.server-form label:not(.check-label) { margin-top: .65rem; font-weight: 750; }
.server-form input:not([type="checkbox"]), .server-form select, .server-form textarea,
.admin-form input:not([type="checkbox"]), .admin-form select, .admin-form textarea {
  width: 100%; min-height: 44px; padding: .65rem .75rem; border: 1px solid var(--line-strong);
  border-radius: 6px; background: #07131a; color: var(--text);
}
.server-form textarea, .admin-form textarea { min-height: 7rem; resize: vertical; }
.server-form small { color: var(--muted); }
.check-label { display: flex; align-items: flex-start; gap: .6rem; margin: .7rem 0; }
.check-label input { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; }
.server-form .button { margin-top: 1rem; }
.server-document { padding: clamp(1rem, 4vw, 2.5rem); border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); }
.server-document h2 { margin-top: 2rem; }
.server-footer { padding: 1.5rem clamp(1rem, 4vw, 3rem); border-top: 1px solid var(--line); color: var(--muted); }
.server-footer nav a { min-height: 44px; padding: .65rem 0; }
.flash-stack { margin-bottom: 1rem; }
.server-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 1rem; }
.server-card { padding: 1.2rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); }
.server-card h2, .server-card h3 { margin-top: 0; }
.server-card dl { margin: 0; }
.server-card dt { margin-top: .7rem; color: var(--muted); }
.server-card dd { margin: 0; font-weight: 700; }
.server-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1rem; }
.server-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); }
.server-table { width: 100%; border-collapse: collapse; background: var(--surface); }
.server-table th, .server-table td { padding: .75rem; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.server-table th { color: var(--accent-2); }
.admin-nav { margin: 1rem 0 2rem; padding: .8rem; border: 1px solid var(--line); border-radius: var(--radius); }
.admin-nav a[aria-current="page"] { border-color: var(--accent); color: var(--accent); }
.admin-form { display: grid; gap: .7rem; margin: 1rem 0; }
.admin-form fieldset { border: 1px solid var(--line); padding: 1rem; }
.admin-form legend { padding: 0 .35rem; font-weight: 850; }
.admin-columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 1rem; }
.status-pill { display: inline-block; padding: .15rem .5rem; border: 1px solid var(--line-strong); border-radius: 999px; }
.definition-list { display: grid; grid-template-columns: minmax(9rem, .4fr) 1fr; gap: .5rem 1rem; }
.definition-list dt { color: var(--muted); }
.definition-list dd { margin: 0; }
@media (max-width: 760px) {
  .server-header { align-items: flex-start; flex-direction: column; }
  .definition-list { grid-template-columns: 1fr; }
}
