#paidPlanChoices {
  border: 1px solid #5b7086;
  border-radius: 8px;
  padding: 16px;
}
#paidPlanChoices legend { padding: 0 6px; color: #f8fafc; font-weight: 700; }
#paidPlanChoices .choice-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; margin-bottom: 10px; }
#paidPlanChoices .choice-row label { display: flex; min-height: 34px; align-items: center; gap: 8px; margin: 0; }
#paidPlanChoices .choice-row input[type="radio"] { flex: 0 0 18px; width: 18px; height: 18px; min-height: 0; margin: 0; padding: 0; }
.platform-shell { padding: clamp(18px, 4vw, 40px); }
.platform-shell .primary { background: var(--platform-brand, var(--brand)); }
.platform-logo { display: block; width: auto; max-width: min(240px, 70vw); max-height: 96px; margin-bottom: 18px; object-fit: contain; }
.platform-stage-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 16px; margin: 20px 0; }
.platform-stage { border: 1px solid var(--line); border-radius: 8px; padding: 16px; background: #fff; }
.platform-stage[data-state="open"] { border-color: var(--brand); box-shadow: 0 0 0 2px rgba(23, 112, 91, .12); }
.platform-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.platform-form + .platform-form { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--line); }
.platform-form fieldset { min-width: 0; border: 1px solid var(--line); border-radius: 8px; padding: 14px; }
.platform-form fieldset label, .platform-form .wide label { display: flex; align-items: flex-start; gap: 8px; margin: 8px 0; }
.platform-form input[type="radio"], .platform-form input[type="checkbox"] { flex: 0 0 18px; width: 18px; height: 18px; min-height: 0; margin: 3px 0 0; padding: 0; }
.platform-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 14px; }
.platform-gallery img, .platform-gallery video { width: 100%; max-height: 520px; border-radius: 8px; background: #102033; object-fit: contain; }
.platform-gallery figure { margin: 0; display: grid; gap: 10px; align-content: start; }
.platform-gallery a { justify-self: start; text-decoration: none; }
.platform-form .wide { grid-column: 1 / -1; }
.platform-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.platform-status { min-height: 24px; margin-top: 12px; }
.platform-empty { padding: 28px; border: 1px dashed var(--line-strong); border-radius: 8px; color: var(--muted); text-align: center; }
.platform-read-only { margin: 0 0 18px; padding: 14px; border: 1px solid #ead08a; border-radius: 8px; background: var(--soft-gold); color: #59400b; }
.platform-admin { margin-top: 24px; padding: clamp(18px, 3vw, 28px); }
.platform-admin-heading { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; }
.platform-admin-heading h3, .platform-admin-heading h4 { margin-bottom: 4px; }
.platform-admin-section { margin-top: 18px; border: 1px solid var(--line); border-radius: 8px; padding: 18px; background: var(--paper); }
.platform-admin-section > summary { cursor: pointer; font-weight: 700; }
.platform-admin-section > summary + * { margin-top: 18px; }
.platform-picker { display: flex; gap: 12px; align-items: end; margin: 20px 0; }
.platform-picker label { flex: 1; margin: 0; }
.platform-admin-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 18px; }
.platform-table { margin-top: 12px; }
.platform-table td:last-child { min-width: 160px; }
.platform-form.compact { margin-top: 16px; }
.platform-schedule { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.platform-schedule input, .platform-schedule select, .platform-schedule button { width: auto; min-width: 120px; }
@media (max-width: 560px) {
  #paidPlanChoices .choice-row, .platform-form { grid-template-columns: 1fr; }
  .platform-form .wide { grid-column: 1; }
  #paidPlanChoices .choice-row label { justify-content: flex-start; }
  .platform-admin-heading, .platform-picker { align-items: stretch; flex-direction: column; }
  .platform-admin-grid { grid-template-columns: 1fr; }
  .platform-table { overflow-x: auto; }
  .platform-table table { min-width: 680px; }
}
