[hidden] {
  display:none!important
}
input[type=checkbox],input[type=radio] {
  color-scheme:dark
}
/* Shared content, authoring and management surfaces. */
.page-shell,.publish,.admin,.mod,.servers:not(table),.notifications,.rules:not(.panel),.history:not(table) {
  width:min(1180px,100%);
  margin:0 auto;
  padding:32px 24px 40px;
  min-width:0
}
#main>section.mod+section.mod {
  padding-top:0
}
h1,h2,h3 {
  font-family:Outfit,sans-serif;
  line-height:1.2;
  overflow-wrap:anywhere
}
h1 {
  font-size:34px;
  letter-spacing:-.8px;
  margin:0 0 24px
}
h2 {
  font-size:23px;
  letter-spacing:-.3px;
  margin:32px 0 18px
}
h3 {
  font-size:18px;
  margin:0 0 12px
}
h1 small,h2 small {
  font:500 13px Inter,sans-serif;
  color:var(--muted);
  letter-spacing:0;
  margin-left:8px
}
p {
  overflow-wrap:anywhere
}
.hint,.m {
  color:var(--muted);
  font-size:13px;
  line-height:1.6
}
.hint {
  max-width:760px
}
small {
  line-height:1.5
}
.btn:disabled {
  opacity:.45;
  cursor:not-allowed
}
.btn small {
  font-weight:500
}
.btn:disabled:hover {
  background:var(--violet)
}
.form {
  display:flex;
  flex-direction:column;
  gap:18px;
  min-width:0
}
.form>.btn {
  align-self:flex-start
}
.field {
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
  font-size:14px;
  color:var(--text)
}
.field>span,.field legend {
  font-weight:600
}
.field small {
  display:inline-block;
  font-weight:400;
  color:var(--muted);
  font-size:12px;
  margin-left:6px
}
.field>span code {
  font-size:11px;
  margin-left:8px;
  font-weight:400
}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea {
  background:#151219;
  color:var(--text);
  border:1px solid #584b59;
  border-radius:7px;
  padding:11px 12px;
  min-width:0;
  max-width:100%;
  font:inherit;
  line-height:1.5;
  color-scheme:dark
}
input::placeholder,textarea::placeholder {
  color:#a99bab
}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]):focus,select:focus,textarea:focus {
  border-color:#d98b9b;
  outline:2px solid #d98b9b33;
  outline-offset:1px
}
textarea {
  resize:vertical;
  width:100%
}
input[type=checkbox],input[type=radio] {
  accent-color:#c43e56;
  width:17px;
  height:17px;
  flex:none;
  margin:0
}
input[type=file] {
  width:100%;
  padding:8px!important
}
input::file-selector-button {
  background:#342b37;
  border:1px solid #665366;
  color:var(--text);
  padding:7px 12px;
  border-radius:5px;
  margin-right:12px;
  cursor:pointer
}
.check,.field.check {
  display:flex;
  flex-direction:row;
  gap:10px;
  align-items:center;
  font-weight:400;
  min-height:30px
}
.check>span {
  font-weight:400
}
fieldset.field {
  border:1px solid var(--line);
  border-radius:8px;
  padding:16px;
  gap:8px;
  margin:0
}
fieldset legend {
  padding:0 6px;
  font-size:13px
}
.categories {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr))
}
.categories legend {
  grid-column:1/-1
}
.surface {
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:12px;
  padding:24px
}
.surface>h2:first-child {
  margin-top:0
}
.creator-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);
  gap:24px;
  align-items:start
}
.creator-layout .table-scroll {
  margin:0;
  border:0
}
.creator-layout .surface {
  min-width:0
}
.creator-layout .table th,.creator-layout .table td {
  padding:12px 10px
}
.creator-layout .table .btn {
  font-size:12px;
  padding:6px 10px
}
.publish.edit>.form.project,.publish.edit>.form.version,.server-form>.form {
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:12px;
  padding:24px;
  max-width:850px
}
.form.submit {
  background:#29202b;
  border:1px solid #634057;
  border-radius:10px;
  padding:20px;
  max-width:850px
}
.form.submit p {
  margin:0
}
.form.member-add {
  max-width:520px;
  flex-direction:row;
  align-items:flex-end
}
.form.member-add .field {
  flex:1
}
.form.member-add>.btn {
  align-self:auto
}
.form.visibility {
  display:inline-flex
}
.members,.notifs {
  list-style:none;
  margin:20px 0;
  padding:0
}
.member {
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 18px;
  border-bottom:1px solid var(--line);
  background:var(--panel);
  flex-wrap:wrap
}
.member .form {
  margin-left:auto
}
.table-scroll {
  width:100%;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel);
  margin:18px 0;
  scrollbar-color:#655368 #211c25
}
.table-scroll:focus-visible {
  outline-offset:3px
}
.table,.versions {
  width:100%;
  border-collapse:collapse;
  line-height:1.5;
  font-size:13px
}
.table th,.versions th {
  text-align:left;
  font-size:11px;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:#c4b5cb;
  padding:14px 16px;
  background:#242029;
  border-bottom:1px solid var(--line);
  white-space:nowrap
}
.table td,.versions td {
  padding:16px;
  border-bottom:1px solid var(--line);
  vertical-align:top;
  color:var(--text)
}
.table tr:last-child td,.versions tr:last-child td {
  border-bottom:0
}
.table td:first-child a {
  font-weight:600
}
.table a:not(.btn):not(.dl):hover {
  color:#e0a4b0;
  text-decoration:underline
}
.table .m,.versions .m {
  font-size:12px;
  color:var(--muted);
  margin-top:4px;
  max-width:280px
}
.table .form {
  gap:8px
}
.table .btn {
  white-space:nowrap
}
.table input:not([type=checkbox]) {
  min-width:120px;
  width:100%
}
.table select {
  min-width:120px
}
.table code.detail,.table .sha256 {
  display:block;
  max-width:260px;
  overflow-wrap:anywhere
}
.table.categories {
  display:table;
  min-width:1350px
}
.table.settings,.table.users {
  min-width:780px
}
.table.jobs {
  min-width:480px
}
.table.audit {
  min-width:720px
}
.table.versions {
  min-width:740px
}
.table.projects {
  min-width:380px
}
.status,.scan,.dot {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:3px 8px;
  border:1px solid #66516d;
  border-radius:4px;
  background:#302733;
  color:#d8c3e2;
  font-size:11px;
  font-weight:600;
  white-space:nowrap
}
.status-published,.scan-clean,.dot.online {
  color:#a3d5b8;
  border-color:#3c6550;
  background:#20352b
}
.status-pending,.scan-pending,.scan-scanning {
  color:#e5c891;
  border-color:#75613a;
  background:#3b3020
}
.status-hidden,.status-draft,.dot.offline {
  color:#c2b4c7;
  background:#2c2531;
  border-color:#55475e
}
.status-removed,.status-refused,.scan-infected,.scan-error {
  color:#f3a8b7;
  background:#42242d;
  border-color:#875063
}
.dot::before {
  content:'';
  width:6px;
  height:6px;
  border-radius:50%;
  background:currentColor
}
.scan::before {
  content:none
}
.scan-clean::before {
  content:'✓'
}
.flash,.alert,.notice {
  padding:14px 18px;
  border:1px solid #6e4c5d;
  background:#2c202a;
  border-radius:8px;
  color:#e9b9c6;
  line-height:1.6
}
.flash,.alert {
  width:min(1132px,calc(100% - 48px));
  margin:18px auto 0
}
.alert.admin {
  padding:14px 18px
}
.flash.ok {
  background:#20352b;
  border-color:#40634e;
  color:#b5ddc2
}
.flash.err,.notice.refused {
  border-color:#915160;
  color:#ffc1cb
}
.notice {
  margin:16px 0
}
.alert p {
  margin:0
}
.admin-nav,.servers>.sort {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin:0 0 30px;
  border-bottom:1px solid var(--line);
  padding-bottom:14px
}
.admin-nav a,.servers>.sort a {
  padding:8px 12px;
  border-radius:6px;
  color:var(--muted);
  border:1px solid transparent
}
.admin-nav a.on,.servers>.sort a.on {
  color:var(--text);
  background:#3a2730;
  border-color:#693947
}
.admin-nav a:hover,.servers>.sort a:hover {
  color:var(--text);
  background:#2b242e
}
dl {
  margin:18px 0
}
dl.health,dl.counts,dl.user-meta,dl.meta {
  display:grid;
  grid-template-columns:minmax(120px,1fr) minmax(0,2fr);
  gap:0;
  font-size:13px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:10px;
  overflow:hidden;
  max-width:850px;
  padding:0
}
dl dt,dl dd {
  padding:12px 18px;
  margin:0;
  border-bottom:1px solid var(--line);
  overflow-wrap:anywhere
}
dl dt {
  color:var(--muted)
}
dl dd {
  font-weight:500
}
dl dt:last-of-type,dl dd:last-child {
  border-bottom:0
}
.admin.dashboard dl.counts {
  grid-template-columns:1fr auto;
  max-width:520px
}
.admin .setting {
  padding:22px;
  margin:0 0 16px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:10px;
  max-width:850px
}
.admin .setting:not(.setting-rules_md) {
  flex-direction:row;
  align-items:flex-end
}
.admin .setting .field {
  flex:1
}
.admin .setting>.btn {
  align-self:auto
}
.admin .form.new {
  background:var(--panel);
  border:1px solid var(--line);
  padding:22px;
  border-radius:10px;
  max-width:650px
}
.form.filter {
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:16px;
  padding:20px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:10px;
  margin-bottom:20px
}
.form.filter .field {
  flex:1;
  min-width:140px
}
.form.filter>.btn {
  align-self:auto
}
.actions {
  display:flex;
  gap:16px;
  align-items:flex-start;
  flex-wrap:wrap;
  margin:18px 0
}
.actions .form.ban {
  background:var(--panel);
  padding:20px;
  border:1px solid var(--line);
  border-radius:10px;
  width:min(520px,100%)
}
.queue-item {
  padding:24px;
  margin:0 0 24px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel)
}
.queue-kind {
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#d89caa
}
.queue-item h2,.queue-item h3 {
  margin:12px 0
}
.queue-item .form {
  max-width:760px
}
.queue-item .actions .form {
  flex:1;
  min-width:200px
}
.reason {
  white-space:pre-wrap;
  overflow-wrap:anywhere
}
code {
  font-size:.9em;
  color:#d6c0df
}
.user-link {
  color:#dda1af;
  margin-left:8px
}
.notifs {
  max-width:900px
}
.notif {
  padding:22px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:10px;
  margin-bottom:12px
}
.notif.unread {
  border-left:3px solid #c74660
}
.notif time {
  display:block;
  font-size:12px;
  color:var(--muted);
  margin-bottom:8px
}
.notif b {
  font-size:16px
}
.notif p {
  color:var(--muted);
  margin:12px 0
}
.notif .form {
  margin-top:16px
}
.page-shell .crumb {
  padding:0;
  margin:0 0 22px;
  color:var(--muted);
  font-size:12px
}
.publish .crumb,.mod .crumb {
  margin-bottom:20px;
  font-size:12px;
  color:var(--muted)
}
.crumb a:hover {
  color:#e2b1bc
}
.head {
  display:flex;
  align-items:flex-start;
  gap:24px;
  padding:0 0 24px;
  flex-wrap:wrap;
  border-bottom:1px solid var(--line)
}
.project-identity {
  flex:1;
  min-width:220px
}
.head h1 {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:0 0 10px;
  font-size:34px
}
.head .by {
  color:var(--muted);
  font-size:13px
}
.project-summary {
  margin:16px 0 0;
  color:#d1c5d5;
  max-width:650px;
  line-height:1.65
}
.icon {
  width:84px;
  height:84px;
  flex:none;
  display:grid;
  place-items:center;
  background:#352b37;
  color:#ccb7c7;
  border:1px solid #66506b;
  border-radius:14px;
  font:700 48px Outfit,sans-serif
}
.pills {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:14px
}
.head .side {
  margin-left:auto;
  position:static;
  width:auto;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:12px;
  align-items:flex-end
}
.head .side .btn {
  justify-content:center
}
.like {
  display:inline-flex;
  margin:0
}
.like button {
  padding:8px 12px;
  border:1px solid #755063;
  border-radius:6px;
  color:#e0a7b9;
  background:#34232e;
  cursor:pointer;
  font:600 13px Inter,sans-serif
}
.like button.on {
  background:#672d40;
  color:#fff
}
.tabs {
  display:flex;
  gap:6px;
  margin:24px 0 0;
  padding:4px;
  width:fit-content;
  max-width:100%;
  border-radius:8px
}
.tabs a {
  padding:10px 16px;
  border-radius:5px;
  color:var(--muted);
  font-weight:500;
  font-size:13px
}
.tabs a.on {
  background:#3a2730;
  color:var(--text)
}
.tabs small {
  margin-left:8px;
  color:#d4b7c6;
  font-size:11px
}
.panel {
  padding:28px;
  margin:20px 0 0;
  min-width:0
}
.panel>.table-scroll {
  margin:0
}
.md {
  line-height:1.8;
  color:#d5cbd9;
  overflow-wrap:anywhere;
  max-width:850px
}
.md h2 {
  margin:26px 0 14px;
  color:var(--text)
}
.md h2:first-child {
  margin-top:0
}
.md h3 {
  margin:22px 0 12px
}
.md a {
  color:#e4acba;
  text-decoration:underline
}
.md img {
  max-width:100%;
  height:auto;
  border-radius:8px
}
.md pre {
  overflow-x:auto;
  padding:18px;
  background:#141118;
  border:1px solid var(--line);
  border-radius:6px
}
.md blockquote {
  margin-left:0;
  padding-left:20px;
  border-left:3px solid #95647f;
  color:var(--muted)
}
.cl {
  white-space:pre-wrap;
  margin-top:20px;
  padding:18px;
  background:#17131c;
  border-radius:8px;
  color:var(--muted);
  font-size:13px;
  line-height:1.7
}
.cl b {
  display:block;
  color:var(--text);
  margin-bottom:8px
}
.dl {
  display:inline-flex;
  padding:8px 12px;
  background:#ac2e46;
  border:1px solid #ca5168;
  color:#fff;
  border-radius:6px;
  font-size:12px;
  font-weight:600;
  white-space:nowrap
}
.dl.ext {
  background:#332937;
  border-color:#65546d
}
.report {
  max-width:850px;
  margin:28px 0 0;
  color:var(--muted);
  font-size:13px
}
.report summary {
  cursor:pointer;
  width:fit-content;
  padding:8px 0
}
.report .form {
  background:var(--panel);
  padding:20px;
  border:1px solid var(--line);
  border-radius:10px;
  margin-top:12px
}
.gallery-empty {
  padding:50px 20px;
  text-align:center;
  color:var(--muted)
}
.gallery-empty svg {
  width:40px;
  height:40px;
  color:#a98cae;
  margin-bottom:12px
}
.gallery-empty p {
  margin:0
}
.history:not(table) {
  width:100%;
  padding:0;
  margin-top:28px
}
.server dl.meta {
  max-width:750px;
  width:100%
}
.rules-body {
  padding:28px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:10px
}
@media(max-width:1000px) {
  .creator-layout {
    grid-template-columns:1fr
  }
  .creator-layout .surface {
    max-width:none
  }
  .creator-layout .form {
    max-width:850px
  }
}
@media(max-width:760px) {
  .page-shell,.publish,.admin,.mod,.servers:not(table),.notifications,.rules:not(.panel) {
    padding:24px 16px 32px
  }
  h1,.head h1 {
    font-size:28px;
    margin-bottom:20px
  }
  h2 {
    font-size:21px;
    margin-top:28px
  }
  .surface,.queue-item,.panel {
    padding:18px
  }
  .creator-layout {
    gap:18px
  }
  .publish.edit>.form.project,.publish.edit>.form.version,.server-form>.form {
    padding:18px
  }
  .field {
    font-size:13px
  }
  .categories {
    grid-template-columns:1fr
  }
  .head {
    gap:16px
  }
  .icon {
    width:64px;
    height:64px;
    font-size:36px
  }
  .head .side {
    width:100%;
    margin:0;
    align-items:flex-start
  }
  .head .side .btn {
    width:100%
  }
  .project-identity {
    min-width:180px
  }
  .tabs {
    width:100%;
    gap:2px
  }
  .tabs a {
    flex:1;
    text-align:center;
    padding:10px 6px;
    font-size:12px
  }
  .tabs small {
    margin-left:4px
  }
  .project-summary {
    font-size:14px
  }
  .panel {
    margin-top:16px
  }
  .table-scroll {
    margin:16px 0
  }
  .table th,.versions th {
    padding:12px
  }
  .table td,.versions td {
    padding:12px;
    font-size:12px
  }
  .admin-nav {
    gap:4px
  }
  .admin-nav a {
    padding:7px 9px;
    font-size:12px
  }
  .admin .setting:not(.setting-rules_md) {
    flex-direction:column;
    align-items:stretch;
    padding:18px
  }
  .admin .setting>.btn {
    align-self:flex-start
  }
  .field>span code {
    display:block;
    margin:5px 0 0
  }
  .form.filter {
    padding:16px;
    gap:14px
  }
  .form.filter .field {
    min-width:130px
  }
  .form.member-add {
    flex-direction:column;
    align-items:stretch
  }
  .form.member-add .btn {
    align-self:flex-start
  }
  .flash,.alert {
    width:calc(100% - 32px);
    margin-top:16px
  }
  dl dt,dl dd {
    padding:11px 12px;
    font-size:12px
  }
  .notif {
    padding:18px
  }
  .rules-body {
    padding:18px
  }
}
.dashboard-grid {
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);
  gap:28px
}
.dashboard-grid>section {
  min-width:0
}
.dashboard-grid h2 {
  margin-top:0
}
.dashboard-health {
  grid-column:1;
  grid-row:1
}
.dashboard-counts {
  grid-column:2;
  grid-row:1
}
.dashboard-jobs {
  grid-column:1/-1
}
.dashboard-grid dl {
  max-width:none
}
.dashboard-grid .table-scroll {
  margin-bottom:0
}
@media(max-width:760px) {
  .dashboard-grid {
    display:flex;
    flex-direction:column;
    gap:28px
  }
  .dashboard-counts {
    order:1
  }
  .dashboard-jobs {
    order:2
  }
}
.form.form-stub {
  display:none
}
.table-scroll .inactive {
  opacity:.65
}
.project-detail table.versions {
  min-width:780px
}
.project-detail table.versions td:first-child {
  min-width:220px
}
.table.servers {
  min-width:650px
}

body.aurora>.skip-link { position:fixed;left:16px;top:-100px;max-width:calc(100% - 32px);z-index:20!important;padding:12px 18px;background:#b62e45;color:white;border-radius:6px;transform:none; }
body.aurora>.skip-link:focus { top:12px; }
.unread-count { background:#b62e45;color:white;border-radius:4px;padding:2px 6px;font-size:10px;margin-left:8px; }
.bell small { margin-left:auto; }
.catalog-search { display:flex;align-items:stretch;background:#201b23;border:1px solid #554752;border-radius:8px;overflow:hidden; }
.catalog-search input { flex:1;min-width:0;border:0!important;border-radius:0!important;background:transparent!important; }
.catalog-search button { border:0;border-left:1px solid #554752;background:#30232c;color:#eac5ce;width:48px;flex:none;cursor:pointer;display:grid;place-items:center; }
.catalog-search button:hover { background:#51313e; }
.catalog-search button svg { width:20px;height:20px; }
.catalog-search:focus-within { outline:2px solid #d98b9b;outline-offset:2px; }
#grid[aria-busy=true] .grid { opacity:.6; }
.empty-row { padding:24px!important;color:var(--muted)!important;text-align:center; }

/* Management workspace */
section.admin { width:min(1360px,100%);display:grid;grid-template-columns:190px minmax(0,1fr);gap:32px;align-items:start; }
.admin-content { min-width:0; }
.admin-nav { display:flex;flex-direction:column;position:sticky;top:24px;margin:0;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:6px; }
.admin-nav .kicker { margin:0 0 12px;padding:0 8px; }
.admin-nav a { padding:10px 12px; }
.admin-content>h1 { margin-bottom:26px; }
.admin-content .surface { margin-top:24px; }
.category-editor,.review-entry { border:1px solid var(--line);border-radius:10px;background:var(--panel);margin:14px 0;overflow:hidden; }
.category-editor>summary,.review-entry>summary { cursor:pointer;padding:18px 20px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;list-style:none; }
.category-editor>summary::after,.review-entry>summary::after { content:'+';margin-left:auto;color:var(--muted); }
.category-editor[open]>summary::after,.review-entry[open]>summary::after { content:'−'; }
.category-editor[open]>summary,.review-entry[open]>summary { border-bottom:1px solid var(--line); }
.category-editor .category-edit { padding:22px; }
.field-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.field-grid .wide { grid-column:1/-1; }
.advanced-fields>summary { cursor:pointer;color:var(--muted);padding:10px 0; }
.advanced-fields .field-grid { margin-top:12px; }
.admin .role-update { flex-direction:row;align-items:center; }
.admin .role-update .btn { align-self:auto; }
.review-workspace { width:min(1180px,100%);padding:32px 24px 40px;margin:0 auto; }
.review-nav { display:flex;gap:10px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:24px;flex-wrap:wrap; }
.review-nav a { padding:10px 14px;border:1px solid var(--line);border-radius:7px;color:var(--muted); }
.review-nav a.on { color:var(--text);background:#3a2730;border-color:#774252; }
.review-nav small { margin-left:8px;background:#30242e;padding:2px 6px;border-radius:4px; }
.review-workspace section.mod { width:100%;padding:0;margin:0; }
.review-panel>h2 { margin-top:0; }
.review-entry .queue-item { border:0;border-radius:0;margin:0; }
.review-entry .queue-item h2 { display:none; }
.review-decisions { border-top:1px solid var(--line);padding-top:20px;align-items:flex-start; }
.queue-item .review-decisions>.form { flex:none;min-width:0; }
.decision { flex:1;min-width:200px;border:1px solid var(--line);border-radius:7px;padding:12px 16px; }
.decision>summary { cursor:pointer;color:#d8b7c3;font-weight:600;font-size:13px; }
.decision .form { padding-top:16px; }
@media(max-width:900px) { section.admin { grid-template-columns:1fr;gap:24px; }.admin-nav { position:static;flex-direction:row;flex-wrap:wrap;padding:10px; }.admin-nav .kicker { display:none; }.admin-nav a { font-size:12px;padding:8px 10px; } }
@media(max-width:760px) { .review-workspace { padding:24px 16px 32px; }.review-nav { gap:6px; }.review-nav a { padding:9px;font-size:12px; }.field-grid { grid-template-columns:1fr; }.category-editor .category-edit { padding:18px; }.review-entry>summary,.category-editor>summary { padding:16px;gap:10px; }.review-entry>summary .muted { width:100%; }.decision { flex-basis:100%; }.admin .role-update { flex-direction:column;align-items:stretch; } }

.review-entry .queue-item header>.queue-kind { display:none; }
.review-content-links { margin:16px 0; }
.queue-report fieldset.action { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }

.mod-feature { display:flex;align-items:center;gap:32px;margin:28px 0;color:var(--text); }
.mod-feature h2 { margin:0 0 10px;font-size:32px; }
.mod-feature p { color:var(--muted);margin:0 0 18px; }
.mod-feature:hover { border-color:#996071; }
.mod-title { display:flex;align-items:center;gap:28px;margin-bottom:30px; }
.mod-title h1 { margin:0; }
.release-section { margin:28px 0; }
.release-section table { min-width:740px; }
.official-management .inline-update { flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px; }
.official-management .inline-update>.btn { align-self:auto; }
.official-selection,.release-management { min-width:640px; }
.mod-menu { position:relative; }
.mod-menu summary { cursor:pointer;list-style:none;white-space:nowrap; }
.mod-menu summary::-webkit-details-marker { display:none; }
.mod-notifications { position:absolute;top:45px;left:0;min-width:270px;background:#211c24;border:1px solid #51434f;border-radius:8px;padding:8px;box-shadow:0 12px 32px #0008;z-index:8; }
.mod-notifications a { display:flex;justify-content:space-between;gap:16px;padding:12px;color:var(--muted);font-size:13px; }
.mod-notifications a:hover { background:#332631;color:var(--text); }
.mod-notifications b { color:#edb2c1;background:#4e2b39;border-radius:4px;padding:0 6px; }
@media(max-width:1000px) { .top { flex-wrap:wrap; }.top nav { order:3;width:100%; } }
@media(max-width:760px) { .mod-title,.mod-feature { align-items:flex-start;gap:16px; }.mod-title img,.mod-feature img { width:90px;height:45px; }.mod-feature h2 { font-size:26px; }.mod-feature p { font-size:13px; }.mod-notifications { left:auto;right:0;min-width:240px; } }
@media(max-width:760px) { .mod-menu { position:static; }.mod-notifications { top:calc(100% + 8px);left:16px;right:16px;min-width:0; } }
.release-card { margin:14px 0;padding:22px; }
.release-heading { display:flex;gap:20px;align-items:center;justify-content:space-between; }
.release-heading h3 { display:flex;align-items:center;gap:10px;margin:0 0 10px;font-size:21px; }
.release-meta { display:flex;gap:16px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:12px; }
.release-notes { margin-top:18px;border-top:1px solid var(--line);padding-top:14px; }
.release-notes summary { cursor:pointer;font-size:13px;color:#d6b2c0; }
.release-notes p { color:var(--muted);line-height:1.7;white-space:pre-wrap;font-size:13px; }
@media(max-width:760px) { .release-heading { flex-direction:column;align-items:stretch; }.release-heading .btn { justify-content:center; }.release-card { padding:18px; } }
@media(max-width:760px) {
 .official-management .release-management,.official-management .official-selection { min-width:0; }
 .official-management .release-management thead,.official-management .official-selection thead { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
 .official-management .release-management tbody,.official-management .official-selection tbody { display:block; }
 .official-management .release-management tr,.official-management .official-selection tr { display:grid;grid-template-columns:minmax(0,1fr) auto;border-bottom:1px solid var(--line);padding:8px; }
 .official-management .release-management tr:last-child,.official-management .official-selection tr:last-child { border-bottom:0; }
 .official-management .release-management td,.official-management .official-selection td { border:0; }
 .official-management .release-management td:first-child,.official-management .official-selection td:first-child { font-weight:600; }
 .official-management .release-management td:last-child,.official-management .official-selection td:last-child { grid-column:1/-1; }
 .official-management .inline-update { justify-content:space-between; }
 .official-management .inline-update select { flex:1;min-width:0; }
}

.download-dialog {width:min(440px,calc(100vw - 32px));padding:28px;border:1px solid #51404c;border-radius:16px;background:#201b23;color:#f3ece6;box-shadow:0 24px 80px #0008;}
.download-dialog::backdrop {background:#100b16b8;}
.download-dialog h2 {margin-top:0;}
.download-dialog p {line-height:1.6;}
.download-dialog progress {width:100%;accent-color:#c94858;margin:12px 0 24px;}
.download-dialog form {display:flex;justify-content:flex-end;}

.download-actions {display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;}
.download-dialog progress {height:8px;border-radius:8px;overflow:hidden;}
.download-dialog progress::-webkit-progress-bar {background:#42333f;}
.download-dialog progress::-webkit-progress-value {background:var(--accent,#c94858);}
@media (prefers-reduced-motion:reduce) {*,*::before,*::after {scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important;}}
/* Real project imagery, with compact controls in the creator workspace. */
.project-cover-icon {width:80px;height:80px;object-fit:contain;border-radius:12px;flex:none;background:#17131a;}
.project-detail .icon img {width:100%;height:100%;object-fit:contain;border-radius:inherit;}
.image-editor-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:20px;}
.image-editor-grid>.surface {min-width:0;padding:20px;}
.image-upload {margin-top:20px;}
.selected-image-preview {width:100%;max-width:260px;max-height:180px;object-fit:contain;background:#17131a;border:1px solid var(--line);border-radius:10px;}
.managed-gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.managed-image img {display:block;width:100%;max-height:150px;object-fit:contain;background:#17131a;border-radius:10px;}
.managed-image>a {display:block;}
.image-removal {margin-top:10px;font-size:12px;}
.image-removal summary {cursor:pointer;color:var(--muted);}
.image-removal form {gap:10px;margin-top:10px;}
.project-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.project-gallery a {display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#17131a;}
.project-gallery img {width:100%;height:250px;object-fit:contain;}
.project-gallery a>span {padding:0 14px 14px;font-size:13px;color:var(--muted);}
.image-dialog {width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--line);border-radius:16px;background:#201b23;color:var(--text);overscroll-behavior:contain;}
.image-dialog::backdrop {background:#100b16d9;}
.image-dialog-heading {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;}
.image-dialog-heading h2 {margin:0;font-size:18px;}
.image-dialog>img {display:block;width:100%;height:min(65dvh,720px);object-fit:contain;}
.image-dialog-controls {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;}
.image-dialog-controls span {color:var(--muted);font-size:13px;}
.table-search {max-width:440px;margin:18px 0;}
@media(max-width:760px) {
 .image-editor-grid {grid-template-columns:1fr;}
 .managed-gallery {grid-template-columns:repeat(2,minmax(0,1fr));}
 .project-gallery {grid-template-columns:1fr;}
 .project-gallery img {height:220px;}
 .project-cover-icon {width:56px;height:56px;}
 .image-dialog {padding:14px;}
 .image-dialog-heading h2 {font-size:15px;}
}

.logout-form {margin:0;}

@media(max-width:760px) {
 .table-scroll .owned-servers {min-width:0;}
 .owned-servers thead {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
 .owned-servers tbody,.owned-servers tr {display:block;}
 .owned-servers tr {padding:16px;border-bottom:1px solid var(--line);}
 .owned-servers td {display:block;border:0;padding:6px 0;}
 .owned-servers td:first-child {font-weight:600;}
}

/* Project discussion: plain-text, member-authored messages. */
.discussion {width:min(960px,100%);margin:0 auto;padding:32px 24px 40px;min-width:0;}
.discussion .discussion-header {display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:24px 0;}
.discussion .discussion-header h2 {margin:4px 0 10px;}
.discussion .discussion-header .btn {flex-shrink:0;}
.discussion .discussion-compose {padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:16px;margin-bottom:28px;}
.discussion .discussion-compose-footer {display:flex;align-items:center;justify-content:space-between;gap:20px;}
.discussion .discussion-compose-footer small {color:var(--muted);line-height:1.6;}
.discussion .discussion-list {display:grid;gap:16px;}
.discussion .discussion-comment {padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--panel);min-width:0;scroll-margin-top:100px;}
.discussion .discussion-comment-header {display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.discussion .discussion-author {display:flex;align-items:center;flex-wrap:wrap;gap:10px;overflow-wrap:anywhere;}
.discussion .discussion-author-badge {font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--text);border:1px solid var(--line);border-radius:20px;padding:4px 8px;}
.discussion .discussion-date {display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted);}
.discussion .discussion-text {white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;margin:20px 0;color:var(--text);}
.discussion .discussion-comment-actions {display:flex;flex-wrap:wrap;gap:12px 24px;border-top:1px solid var(--line);padding-top:14px;}
.discussion .discussion-comment-actions details {min-width:0;font-size:13px;color:var(--muted);}
.discussion .discussion-comment-actions details[open] {flex-basis:100%;}
.discussion .discussion-comment-actions summary {cursor:pointer;width:fit-content;}
.discussion .discussion-comment-actions details .form {margin-top:16px;width:100%;}
.discussion .discussion-empty {padding:36px 24px;border:1px dashed var(--line);border-radius:16px;text-align:center;}
@media(max-width:600px) {
 .discussion .discussion-header {display:block;}
 .discussion .discussion-header .btn {margin-top:12px;}
 .discussion .discussion-compose,.discussion .discussion-comment {padding:18px;}
 .discussion .discussion-compose-footer {align-items:flex-start;flex-direction:column;gap:12px;}
 .discussion .discussion-compose-footer .btn {width:100%;}
 .discussion .discussion-comment-header {flex-direction:column;gap:8px;}
}

.user-avatar {width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--panel);border:1px solid var(--line);}
.project-author {display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.account-menu .user-avatar {width:24px;height:24px;}

.project-detail .discussion {max-width:none;}
.project-detail .discussion .discussion-header {margin:0 0 20px;}
.project-detail .discussion .discussion-header .kicker {display:none;}
.project-detail .discussion .discussion-header h2 {font-size:24px;}

.account-menu summary {display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;line-height:1;}
.account-menu summary .user-avatar {display:block;margin:0;}
.account-menu summary .account-label {margin:0;line-height:1.2;}
.account-menu summary .account-chevron {margin:0 0 0 4px;line-height:1;}
.account-identity {display:flex;align-items:center;gap:10px;padding:4px 0 14px;border-bottom:1px solid var(--line);margin-bottom:12px;}
.account-identity .user-avatar {width:36px;height:36px;}
.account-identity strong,.account-identity small {display:block;overflow-wrap:anywhere;}
.account-identity small {margin-top:4px;color:var(--muted);font-size:12px;}

.section-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px;}
.section-heading h1 {margin-bottom:12px;}
.section-heading>.btn {flex-shrink:0;}
.rules-editor-form {max-width:none;}
.rules-editor-form textarea {min-height:360px;line-height:1.6;resize:vertical;}
.rules-editor-form .actions {display:flex;gap:12px;flex-wrap:wrap;}
.rules-preview {margin-top:28px;}
.rules-preview summary {cursor:pointer;font-weight:600;margin-bottom:16px;}
@media(max-width:600px) {.section-heading {flex-direction:column;gap:10px;}.rules-editor-form textarea {min-height:280px;}.rules-editor-form .actions .btn {flex:1;}}

/* Keep intermediate-width administration navigation balanced rather than
   leaving one isolated item on a second row. */
@media (max-width:1100px) {
 .admin-nav {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
 .admin-nav .kicker {display:none;}
 .admin-nav a {display:flex;align-items:center;min-height:38px;white-space:normal;}
}
@media (max-width:600px) {
 .admin-nav {grid-template-columns:repeat(2,minmax(0,1fr));}
 .admin-nav a {min-height:40px;}
 .tabs {max-width:100%;flex-wrap:wrap;}
 .project-author {row-gap:6px;}
}
