:root {
  --account-bg: #f3f7fc;
  --account-surface: #ffffff;
  --account-soft: #f7f9fc;
  --account-blue: #edf3fa;
  --account-ink: #111b30;
  --account-text: #26334a;
  --account-muted: #667085;
  --account-line: #e2e7ef;
  --account-gold: #93671f;
  --account-gold-dark: #755015;
  --account-gold-soft: #fbf5e9;
  --account-radius: 15px;
  --account-shadow: 0 16px 42px rgba(25, 39, 65, .06);
}

/* The organizer area is intentionally isolated from public contest themes. */
.auth-body,
.panel-page {
  color: var(--account-ink);
  background: var(--account-bg);
  font-family: "Thicccboi", Arial, sans-serif;
  font-size: 16px;
}

.auth-body button,
.auth-body input,
.auth-body select,
.auth-body textarea,
.panel-page button,
.panel-page input,
.panel-page select,
.panel-page textarea { font-family: inherit; }

/* Authentication */
.auth-shell {
  grid-template-columns: minmax(440px, .92fr) minmax(560px, 1.08fr);
  min-height: 100svh;
  background: var(--account-bg);
}

.auth-visual {
  min-height: 100svh;
  padding: 46px clamp(42px, 5.5vw, 88px);
  overflow: hidden;
  border-right: 1px solid var(--account-line);
  color: var(--account-ink);
  background:
    linear-gradient(135deg, rgba(147, 103, 31, .09) 0 12%, transparent 12% 100%),
    linear-gradient(154deg, transparent 0 71%, rgba(204, 219, 238, .34) 71% 83%, transparent 83% 100%),
    linear-gradient(145deg, #fff 0%, #f4f7fb 55%, #eaf1f9 100%);
}

.auth-visual::before {
  inset: 0;
  opacity: .48;
  background:
    repeating-linear-gradient(125deg, rgba(17, 27, 48, .04) 0 1px, transparent 1px 64px);
  clip-path: polygon(0 0, 62% 0, 34% 100%, 0 100%);
  mask-image: linear-gradient(90deg, rgba(0,0,0,.75), transparent 92%);
}

.auth-visual::after {
  right: -15%;
  bottom: -11%;
  width: 68%;
  height: 48%;
  border: 1px solid rgba(147, 103, 31, .16);
  border-radius: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.16), rgba(205,220,239,.3));
  box-shadow: -54px -44px 0 rgba(255,255,255,.2);
  transform: skewX(-18deg);
  transform-origin: bottom right;
}

.auth-visual .site-logo--light { color: var(--account-ink); }
.auth-visual .site-logo--light .site-logo-wordmark strong > span,
.auth-visual .site-logo--light .site-logo-wordmark strong > em { color: var(--account-gold); }

.auth-visual-content { max-width: 680px; margin: auto 0; padding: 70px 0 42px; }
.auth-visual h1 {
  max-width: 680px;
  margin: 20px 0;
  color: var(--account-ink);
  font-size: clamp(52px, 4.5vw, 74px);
  font-weight: 700;
  line-height: .99;
  letter-spacing: -.045em;
}
.auth-visual p {
  max-width: 580px;
  color: var(--account-muted);
  font-size: 16px;
  line-height: 1.7;
}
.auth-visual .auth-step,
.auth-kicker { color: var(--account-gold); font-size: 11px; letter-spacing: .14em; }

.auth-benefits {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  max-width: 690px;
  margin-top: 36px;
  border: 0;
}
.auth-benefits span,
.auth-benefits span + span {
  min-height: 112px;
  padding: 18px;
  border: 1px solid rgba(202, 212, 226, .9);
  border-radius: 12px;
  color: var(--account-text);
  background: rgba(255,255,255,.72);
  box-shadow: 0 8px 26px rgba(25,39,65,.035);
  font-size: 12px;
  line-height: 1.45;
}
.auth-benefits b { margin-bottom: 13px; color: var(--account-gold); font-size: 12px; }
.auth-visual-footer {
  border-top-color: rgba(17,27,48,.1);
  color: #7a8496;
  font-size: 10px;
}

.auth-card {
  align-self: center;
  justify-content: center;
  width: min(620px, calc(100% - 64px));
  margin: 38px auto;
  padding: clamp(38px, 4.5vw, 56px);
  border: 1px solid var(--account-line);
  border-radius: 18px;
  background: rgba(255,255,255,.96);
  box-shadow: var(--account-shadow);
}
.auth-login .auth-card { max-width: 610px; }
.auth-card h2 {
  margin: 13px 0 9px;
  color: var(--account-ink);
  font-size: clamp(38px, 3.6vw, 48px);
  font-weight: 700;
  letter-spacing: -.035em;
}
.auth-card > p { margin-bottom: 30px; color: var(--account-muted); font-size: 15px; line-height: 1.65; }
.auth-back { margin-bottom: 42px; color: var(--account-muted); font-size: 13px; font-weight: 650; }
.auth-back:hover { color: var(--account-gold-dark); }
.auth-form-grid { gap: 20px; }
.field { gap: 8px; }
.field span { color: var(--account-text); font-size: 13px; font-weight: 700; }
.field input,
.field select,
.field textarea {
  min-height: 57px;
  padding: 13px 16px;
  border: 1px solid #dce2eb;
  border-radius: 11px;
  color: var(--account-ink);
  background: #fff;
  font-size: 15px;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.field input::placeholder,
.field textarea::placeholder { color: #9aa4b4; }
.field textarea { min-height: 126px; border-radius: 12px; line-height: 1.55; }
.field input:focus,
.field select:focus,
.field textarea:focus {
  border-color: var(--account-gold);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(147, 103, 31, .09);
}
.field small { color: #7b8799; font-size: 11px; line-height: 1.45; }
.check-field { gap: 10px; color: var(--account-muted); font-size: 12px; line-height: 1.5; }
.check-field input { width: 17px; height: 17px; accent-color: var(--account-gold); }
.check-field a,
.auth-alt a { color: var(--account-gold-dark); font-weight: 750; }
.form-submit {
  min-height: 56px;
  border: 0;
  border-radius: 11px;
  color: #fff;
  background: var(--account-gold);
  box-shadow: 0 10px 22px rgba(117,80,21,.15);
  font-size: 14px;
  font-weight: 750;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.form-submit:hover {
  color: #fff;
  background: var(--account-gold-dark);
  box-shadow: 0 14px 28px rgba(117,80,21,.2);
  transform: translateY(-1px);
}
.auth-alt { margin-top: 24px; color: var(--account-muted); font-size: 13px; }
.notice { padding: 15px 17px; border: 1px solid transparent; border-left-width: 1px; border-radius: 10px; font-size: 13px; }
.notice.error { border-color: #f1d1cb; background: #fff4f2; }
.notice.success { border-color: #cce6d9; background: #f1faf5; }

/* Organizer panel shell */
.panel-page { min-height: 100svh; }
.panel-layout { grid-template-columns: 280px minmax(0, 1fr); min-height: 100svh; }
.panel-sidebar {
  width: 280px;
  height: 100svh;
  padding: 34px 24px 25px;
  overflow-y: auto;
  border-right: 1px solid var(--account-line);
  color: var(--account-ink);
  background: rgba(255,255,255,.98);
  box-shadow: none;
}
.panel-sidebar::after { display: none; }
.panel-sidebar .site-logo { margin: 0 7px 42px; }
.panel-sidebar .site-logo--light { color: var(--account-ink); }
.panel-sidebar .site-logo--light .site-logo-wordmark strong > span,
.panel-sidebar .site-logo--light .site-logo-wordmark strong > em { color: var(--account-gold); }
.sidebar-label { color: #929cad; font-size: 10px; letter-spacing: .14em; }
.panel-sidebar nav { gap: 6px; }
.panel-sidebar nav a {
  position: relative;
  min-height: 52px;
  padding: 0 13px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: #5d687b;
  background: transparent;
  font-size: 14px;
  font-weight: 650;
}
.panel-sidebar nav a b {
  width: 25px;
  color: var(--account-gold);
  font-size: 10px;
  letter-spacing: .06em;
}
.panel-sidebar nav a:hover,
.panel-sidebar nav a.active {
  border-color: #eadfcf;
  color: var(--account-ink);
  background: var(--account-gold-soft);
  box-shadow: none;
}
.panel-sidebar nav a.active::before {
  content: "";
  position: absolute;
  top: 13px;
  bottom: 13px;
  left: -1px;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: var(--account-gold);
}
.sidebar-help {
  margin-top: auto;
  padding: 17px;
  border: 1px solid var(--account-line);
  border-radius: 11px;
  color: var(--account-muted);
  background: var(--account-soft);
}
.sidebar-help small { color: #8a95a7; font-size: 9px; }
.sidebar-help a { color: var(--account-gold-dark); font-size: 13px; }
.panel-logout { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--account-line); }
.panel-logout button {
  border: 1px solid var(--account-line);
  border-radius: 10px;
  color: #697589;
  background: #fff;
  font-size: 12px;
  font-weight: 700;
}
.panel-logout button:hover { border-color: #d4dae4; color: var(--account-ink); background: var(--account-soft); }

.panel-main { min-width: 0; background: var(--account-bg); }
.panel-topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  min-height: 86px;
  padding: 0 42px;
  border-bottom: 1px solid var(--account-line);
  background: rgba(255,255,255,.9);
  box-shadow: none;
  backdrop-filter: blur(18px);
}
.panel-company small { color: #8d97a8; font-size: 9px; letter-spacing: .11em; }
.panel-company b { color: var(--account-ink); font-size: 14px; }
.panel-company span { color: var(--account-muted); font-size: 11px; }
.panel-avatar {
  width: 40px;
  height: 40px;
  border: 1px solid #e6dac5;
  border-radius: 50%;
  color: var(--account-gold-dark);
  background: var(--account-gold-soft);
  font-size: 11px;
}
.panel-user { gap: 12px; }
.panel-user span { color: var(--account-ink); font-size: 12px; }
.panel-user small { color: var(--account-muted); font-size: 10px; }
.panel-content { width: 100%; max-width: 1380px; margin: 0 auto; padding: 50px 42px 84px; }

/* Headings and controls */
.panel-heading { align-items: center; margin-bottom: 32px; }
.panel-heading > div > span {
  color: var(--account-gold);
  font-size: 10px;
  letter-spacing: .14em;
}
.panel-heading > div > span::before { width: 22px; height: 2px; background: var(--account-gold); }
.panel-heading h1 {
  margin: 9px 0 7px;
  color: var(--account-ink);
  font-size: clamp(38px, 3.3vw, 50px);
  line-height: 1.06;
  letter-spacing: -.04em;
}
.panel-heading p { max-width: 720px; color: var(--account-muted); font-size: 15px; line-height: 1.6; }
.panel-button,
.panel-secondary-button {
  min-height: 50px;
  padding: 0 20px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 750;
}
.panel-button {
  border: 1px solid var(--account-gold);
  color: #fff;
  background: var(--account-gold);
  box-shadow: 0 9px 20px rgba(117,80,21,.14);
}
.panel-button:hover { border-color: var(--account-gold-dark); background: var(--account-gold-dark); }
.panel-secondary-button {
  border: 1px solid var(--account-line);
  color: var(--account-ink);
  background: #fff;
  box-shadow: 0 5px 16px rgba(25,39,65,.035);
}
.panel-secondary-button:hover { border-color: #cdd5e1; background: var(--account-soft); }

/* Cards and dashboard */
.stats-grid { gap: 17px; }
.stat-card,
.panel-card,
.format-option,
.moderation-stats article {
  border: 1px solid var(--account-line);
  border-radius: var(--account-radius);
  background: #fff;
  box-shadow: var(--account-shadow);
}
.stat-card {
  min-height: 170px;
  padding: 25px;
  overflow: hidden;
}
.stat-card::before { height: 3px; background: #dbe2ec; }
.stat-card.is-active::before,
.stat-card.is-review::before,
.stat-card.is-draft::before { background: var(--account-gold); }
.stat-card .stat-number { color: #a4adba; font-size: 11px; font-weight: 700; }
.stat-card > small { color: #6f7a8d; font-size: 10px; letter-spacing: .09em; }
.stat-card strong { margin: 19px 0 6px; color: var(--account-ink); font-size: 40px; }
.stat-card p { color: var(--account-muted); font-size: 12px; }
.panel-card { margin-top: 18px; overflow: hidden; }
.panel-card > header {
  min-height: 84px;
  padding: 0 28px;
  border-bottom: 1px solid var(--account-line);
  background: #fff;
}
.panel-card header > div small { color: var(--account-gold); font-size: 9px; }
.panel-card header h2 { margin-top: 5px; color: var(--account-ink); font-size: 22px; }
.panel-card header a { color: var(--account-gold-dark); font-size: 12px; font-weight: 750; }
.panel-card header > span,
.editor-section > header > span,
.moderation-section > header > span { color: var(--account-muted); font-size: 12px; }

.contest-list-row {
  grid-template-columns: 88px minmax(200px, 1.5fr) .7fr .7fr .65fr 74px;
  gap: 18px;
  min-height: 102px;
  padding: 12px 28px;
  border-bottom-color: var(--account-line);
  background: #fff;
}
.contest-list-row:hover { background: #fafcff; }
.contest-list-thumb {
  width: 76px;
  height: 76px;
  border: 1px solid var(--account-line);
  border-radius: 10px;
  color: var(--account-gold-dark);
  background: var(--account-soft);
  font-size: 12px;
}
.contest-list-thumb img { width: 100%; height: 100%; padding: 5px; object-fit: contain; }
.contest-list-row b { color: var(--account-ink); font-size: 14px; }
.contest-list-row small { color: var(--account-muted); font-size: 11px; }
.contest-edit-link { color: var(--account-gold-dark); font-size: 12px; font-weight: 750; }
.panel-status { padding: 7px 10px; border-radius: 999px; font-size: 10px; }
.panel-status.active { color: #2a6b50; background: #eaf7f0; }
.panel-status.review { color: #7a5c17; background: #fff5d9; }
.panel-status.draft { color: #657082; background: #eef1f5; }
.panel-empty { display: flex; align-items: center; justify-content: center; gap: 22px; min-height: 240px; color: var(--account-muted); }
.panel-empty > span { color: #d5b77d; font-size: 36px; }
.panel-empty h3 { margin: 0 0 7px; color: var(--account-ink); font-size: 20px; }
.panel-empty p { margin: 0; font-size: 13px; }
.panel-empty a { color: var(--account-gold-dark); font-weight: 750; }

/* Forms and format selection */
.panel-form { padding: clamp(26px, 3vw, 40px); }
.panel-form .auth-form-grid { max-width: 980px; }
.format-fieldset { padding: 0; border: 0; }
.format-fieldset legend { margin-bottom: 20px; color: var(--account-ink); font-size: 25px; }
.format-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 17px; margin-bottom: 28px; }
.format-option,
.format-option.is-submit-format,
.format-option.is-submit-format:has(input:checked) {
  grid-column: span 2;
  min-height: 250px;
  padding: 27px 24px;
  border: 1px solid var(--account-line);
  border-radius: 14px;
  color: var(--account-ink);
  background: #fff;
  box-shadow: 0 10px 30px rgba(25,39,65,.045);
}
.format-option:hover,
.format-option.is-submit-format:hover {
  border-color: #d5dce7;
  box-shadow: 0 18px 40px rgba(25,39,65,.075);
  transform: translateY(-2px);
}
.format-option:has(input:checked),
.format-option.is-submit-format:has(input:checked) {
  padding: 26px 23px;
  border: 2px solid var(--account-gold);
  background: linear-gradient(145deg, #fff, #fdfaf4);
  box-shadow: 0 16px 38px rgba(147,103,31,.09);
}
.format-option.is-submit-format::before {
  color: var(--account-gold);
  font-size: 8px;
}
.format-option i,
.format-option.is-submit-format i {
  width: 52px;
  height: 52px;
  color: var(--account-gold-dark);
  background: var(--account-gold-soft);
}
.format-option b,
.format-option.is-submit-format b { color: var(--account-ink); font-size: 17px; }
.format-option p,
.format-option.is-submit-format p { color: var(--account-muted); font-size: 13px; }
.format-option small,
.format-option small strong,
.format-option.is-submit-format small,
.format-option.is-submit-format small strong { color: var(--account-gold-dark); font-size: 12px; }
.format-option small strong,
.format-option.is-submit-format small strong { font-size: 15px; }
.contest-details-form { margin-top: 0; }

.moderation-banner {
  padding: 17px 19px;
  border: 1px solid #ecdba9;
  border-left: 4px solid var(--account-gold);
  border-radius: 11px;
  background: #fff9e9;
}
.moderation-banner.verified { border-color: #c7e5d5; background: #f0faf5; }
.moderation-banner.rejected { border-color: #f0d1ca; background: #fff4f2; }
.moderation-banner b { color: var(--account-ink); font-size: 14px; }
.moderation-banner span { color: var(--account-muted); font-size: 12px; }
.company-logo-editor {
  width: 170px;
  height: 135px;
  border: 1px solid var(--account-line);
  border-radius: 12px;
  background: var(--account-soft);
}

/* Contest editor */
.contest-editor-form { gap: 20px; }
.editor-section { margin-top: 0; }
.editor-section-body { padding: clamp(27px, 3vw, 42px); }
.brand-upload-grid { gap: 20px; }
.upload-card {
  gap: 11px;
  padding: 21px;
  border: 1px solid var(--account-line);
  border-radius: 12px;
  background: var(--account-soft);
}
.upload-card > span { color: var(--account-ink); font-size: 14px; }
.upload-card > small { color: var(--account-muted); font-size: 11px; }
.upload-preview { border-radius: 10px; background: #fff; }
.template-choice {
  gap: 17px;
  padding: 14px;
  border: 1px solid var(--account-line);
  border-radius: 12px;
  background: var(--account-soft);
}
.template-choice:has(input:checked) {
  border: 2px solid var(--account-gold);
  box-shadow: 0 14px 34px rgba(147,103,31,.09);
}
.template-choice > div > b { color: var(--account-ink); font-size: 15px; }
.template-choice > div > p { color: var(--account-muted); font-size: 12px; }
.palette-choice {
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--account-line);
  border-radius: 10px;
  background: #fff;
}
.palette-choice:has(input:checked) { border: 2px solid var(--account-gold); }
.palette-choice > span { overflow: hidden; border-radius: 7px; }
.palette-choice > b { color: var(--account-text); font-size: 11px; }
.custom-colors-toggle { color: var(--account-text); font-size: 13px; }
.custom-colors-toggle input { accent-color: var(--account-gold); }
.current-rules {
  border-color: #dce4ef;
  border-radius: 10px;
  color: var(--account-gold-dark);
  background: var(--account-blue);
}
.editor-save-bar {
  position: sticky;
  bottom: 16px;
  z-index: 20;
  padding: 17px 20px;
  border: 1px solid #d8e0ea;
  border-radius: 13px;
  color: var(--account-ink);
  background: rgba(255,255,255,.94);
  box-shadow: 0 18px 48px rgba(25,39,65,.13);
  backdrop-filter: blur(16px);
}
.editor-save-bar small { color: var(--account-muted); font-size: 10px; }
.editor-save-bar b { font-size: 14px; }
.editor-save-bar .form-submit { min-width: 270px; }

/* Entries and moderation */
.entries-table th,
.entries-table td { padding: 18px 20px; border-bottom-color: var(--account-line); font-size: 12px; }
.entries-table th { color: #6c778a; background: var(--account-soft); font-size: 10px; }
.entries-table td small { color: var(--account-muted); }
.entries-table a { color: var(--account-gold-dark); }
.moderation-stats { gap: 16px; }
.moderation-stats article { padding: 23px; }
.moderation-stats small { color: var(--account-muted); font-size: 10px; }
.moderation-stats strong { color: var(--account-ink); font-size: 34px; }
.moderation-row { border-bottom-color: var(--account-line); }
.moderation-row h3 { color: var(--account-ink); font-size: 16px; }
.moderation-row p,
.moderation-row small { color: var(--account-muted); font-size: 11px; }
.moderation-links a { color: var(--account-gold-dark); font-size: 11px; }
.moderation-actions textarea { border-color: var(--account-line); border-radius: 9px; background: var(--account-soft); }
.moderation-actions .approve { border-radius: 8px; background: var(--account-gold); }
.moderation-actions .reject { border-radius: 8px; }
.company-mini-logo { border-radius: 10px; color: var(--account-gold-dark); background: var(--account-gold-soft); }

@media (max-width: 1180px) {
  .auth-shell { grid-template-columns: minmax(390px, .82fr) minmax(500px, 1.18fr); }
  .panel-layout { grid-template-columns: 240px minmax(0, 1fr); }
  .panel-sidebar { width: 240px; padding-inline: 18px; }
  .panel-content { padding-inline: 28px; }
  .contest-list-row { grid-template-columns: 78px minmax(180px, 1.5fr) .7fr .65fr 72px; }
  .contest-list-row > :nth-child(4) { display: none; }
}

@media (max-width: 900px) {
  .auth-shell { display: block; }
  .auth-visual { min-height: 430px; padding: 32px 34px; border-right: 0; border-bottom: 1px solid var(--account-line); }
  .auth-visual-content { padding: 42px 0 28px; }
  .auth-visual h1 { font-size: clamp(44px, 8vw, 60px); }
  .auth-card { width: min(650px, calc(100% - 40px)); margin-block: 30px; }

  .panel-layout { display: block; }
  .panel-sidebar {
    position: relative;
    top: auto;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 20px;
    overflow: visible;
    border-right: 0;
    border-bottom: 1px solid var(--account-line);
  }
  .panel-sidebar .site-logo { margin: 0 6px 18px; }
  .sidebar-label,
  .sidebar-help { display: none; }
  .panel-sidebar nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .panel-sidebar nav a { justify-content: flex-start; padding-inline: 12px; }
  .panel-sidebar nav a span { display: inline; }
  .panel-logout { display: block; margin-top: 12px; padding-top: 12px; }
  .panel-logout button { max-width: 210px; }
  .panel-topbar { min-height: 76px; padding: 0 22px; }
  .panel-content { padding: 38px 22px 68px; }
  .format-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .format-option,
  .format-option:nth-child(4),
  .format-option.is-submit-format,
  .format-option.is-submit-format:has(input:checked) { grid-column: auto; }
  .format-option:last-child:nth-child(odd) { grid-column: 1 / -1; width: calc(50% - 9px); justify-self: center; }
  .moderation-stats { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 620px) {
  .auth-visual { min-height: 350px; padding: 25px 20px; }
  .auth-visual-content { padding: 34px 0 18px; }
  .auth-visual h1 { font-size: 42px; }
  .auth-visual p { font-size: 14px; }
  .auth-benefits { display: none; }
  .auth-visual-footer { font-size: 8px; }
  .auth-card { width: calc(100% - 24px); margin: 12px auto 24px; padding: 30px 22px; border-radius: 14px; }
  .auth-back { margin-bottom: 32px; }
  .auth-card h2 { font-size: 36px; }
  .auth-form-grid { grid-template-columns: 1fr; }
  .field.full,
  .form-submit.full { grid-column: auto; }

  .panel-sidebar { padding: 16px 12px; }
  .panel-sidebar nav { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .panel-sidebar nav a { min-height: 46px; font-size: 12px; }
  .panel-sidebar nav a b { font-size: 8px; }
  .panel-logout button { max-width: none; }
  .panel-company span { display: none; }
  .panel-user > span { display: none; }
  .panel-content { padding: 30px 14px 55px; }
  .panel-heading { align-items: flex-start; flex-direction: column; margin-bottom: 25px; }
  .panel-heading h1 { font-size: 34px; }
  .panel-heading p { font-size: 13px; }
  .panel-button,
  .panel-secondary-button { width: 100%; }
  .panel-heading-actions { width: 100%; display: grid; grid-template-columns: 1fr; }
  .panel-heading-actions form,
  .panel-heading-actions form .panel-button { width: 100%; }
  .stats-grid,
  .format-grid,
  .moderation-stats { grid-template-columns: 1fr; }
  .format-option,
  .format-option:nth-child(4),
  .format-option:last-child:nth-child(odd),
  .format-option.is-submit-format,
  .format-option.is-submit-format:has(input:checked) { grid-column: auto; width: 100%; min-height: 225px; }
  .contest-list-row { grid-template-columns: 66px minmax(0,1fr) 55px; gap: 12px; padding: 11px 14px; }
  .contest-list-thumb { width: 60px; height: 60px; }
  .contest-list-row > :nth-child(3),
  .contest-list-row > :nth-child(4),
  .contest-list-row > :nth-child(5) { display: none; }
  .contest-list-row b { font-size: 13px; }
  .contest-edit-link { font-size: 11px; }
  .panel-card > header { min-height: 76px; padding: 0 18px; }
  .panel-card header h2 { font-size: 19px; }
  .panel-form,
  .editor-section-body { padding: 22px 18px; }
  .brand-upload-grid,
  .rules-editor,
  .template-choice-grid { grid-template-columns: 1fr; }
  .template-choice { grid-template-columns: 1fr; }
  .palette-grid { grid-template-columns: repeat(2, 1fr); }
  .editor-save-bar { position: relative; bottom: auto; display: grid; }
  .editor-save-bar .form-submit { min-width: 0; width: 100%; }
  .panel-empty { align-items: flex-start; flex-direction: column; text-align: left; }
}
