/* Release preparation surfaces: storage and help stay outside the playfield. */
:root {
  --launch-ink: #f1e5c7;
  --launch-muted: #bfc4b1;
  --launch-border: #8d7954;
  --launch-surface: #182b28;
}
.launch-menu-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-top: 14px; }
.launch-menu-actions .button { min-height: 44px; padding: 10px 20px; font-size: 14px; }
.launch-dialog {
  color: var(--launch-ink); background: linear-gradient(135deg, #293b31, var(--launch-surface));
  border: 1px solid var(--launch-border); box-shadow: 0 0 0 3px #19231f, 0 24px 100px #000a;
  border-radius: 8px; padding: 0; width: min(640px, calc(100vw - 28px));
  max-height: min(820px, calc(100dvh - 32px)); overflow: auto; overscroll-behavior: contain;
}
.launch-dialog::backdrop { background: #07100ddd; }
.launch-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 15px;
  position: sticky; top: 0; z-index: 1; padding: 20px 24px; background: #22342ff5; border-bottom: 1px solid #9e865655; }
.launch-kicker { font-size: 12px; color: #d0b981; margin: 0 0 5px; letter-spacing: .1em; }
.launch-dialog h2 { margin: 0; font-size: 26px; color: var(--launch-ink); }
.launch-dialog h3, .launch-dialog label { display: block; margin: 0 0 12px; color: #eedba7; font-size: 17px; font-weight: 700; }
.launch-close { flex: 0 0 auto; min-width: 58px; min-height: 44px; border: 1px solid #9e865688; border-radius: 4px; background: #142420; color: var(--launch-ink); cursor: pointer; }
.launch-dialog-body { padding: 0 24px 8px; }
.launch-section { padding: 22px 0; border-bottom: 1px solid #ad95602e; }
.launch-section:last-child { border-bottom: none; }
.launch-section p { line-height: 1.75; margin: 8px 0; }
.launch-note { font-size: 13px; color: var(--launch-muted); line-height: 1.7; }
.launch-status { font-size: 14px; color: #c7e3b7; overflow-wrap: anywhere; }
.launch-status:empty { display: none; }
.launch-status[data-tone="error"] { color: #ffc2a7; }
.launch-name-row { display: flex; gap: 10px; align-items: stretch; }
.launch-name-row input { min-width: 0; flex: 1; padding: 10px 12px; min-height: 44px; border: 1px solid #96845b;
  border-radius: 4px; color: var(--launch-ink); background: #11221f; font: inherit; font-size: 16px; }
.launch-dialog .button { width: auto; min-height: 44px; padding: 10px 16px; font-size: 14px; white-space: normal; }
.launch-action-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 15px; }
.launch-action-row .button { flex: 1; }
.launch-save-summary { font-weight: 600; overflow-wrap: anywhere; }
.launch-import-preview { margin-top: 20px; padding: 16px; border: 1px solid #b89857; background: #353827; border-radius: 5px; }
.launch-import-preview[hidden] { display: none; }
.launch-steps { margin: 0; padding-left: 22px; line-height: 1.8; }
.launch-steps li + li { margin-top: 8px; }
.launch-controls { margin: 0; }
.launch-controls > div { display: grid; grid-template-columns: 100px 1fr; gap: 12px; padding: 8px 0; }
.launch-controls dt { color: #dfcb9e; }
.launch-controls dd { margin: 0; line-height: 1.6; }
.launch-feedback summary { min-height: 44px; display: list-item; align-content: center; color: #eedba7; cursor: pointer; }
.launch-dialog :focus-visible { outline: 2px solid #f4d58f; outline-offset: 3px; }
@media (max-width: 480px) {
  .launch-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); }
  .launch-dialog-header { padding: 14px 16px; }
  .launch-dialog-body { padding: 0 16px 8px; }
  .launch-dialog h2 { font-size: 23px; }
  .launch-name-row { flex-wrap: wrap; }
  .launch-name-row input { flex-basis: 100%; }
  .launch-name-row .button { width: 100%; }
  .launch-controls > div { grid-template-columns: 72px 1fr; gap: 8px; font-size: 14px; }
  .launch-menu-actions { margin-top: 8px; gap: 6px; }
}
@media (max-height: 580px) {
  .pause-panel { max-height: calc(100dvh - 24px); overflow-y: auto; }
  .launch-dialog-header { padding: 10px 16px; }
}
