.meridian-create-page { color: var(--color-text); background: var(--color-neutral-300); background-image: var(--page-art); }
.meridian-create-page .ws-main { width: min(calc(100% - 64px), 1232px); margin: 0 auto; padding: 44px 0 70px; }
/* Matches the My Trips page hero: a contained band with its own surface so the
   heading never sits flush against the page edge. The legacy gradient panel in
   trips-ui.css is fully neutralised here (background/radius/overflow/position),
   otherwise it kept clipping this text. */
.meridian-create-page .create-hero {
  max-width: none;
  margin: 0;
  padding: clamp(26px, 3.4vw, 40px) clamp(22px, 3vw, 40px);
  border: var(--rule) solid var(--rule-color);
  border-radius: var(--radius-card);
  text-align: left;
  color: var(--color-text);
  background:
    radial-gradient(125% 190% at 88% -40%, color-mix(in srgb, var(--color-accent) 18%, transparent), transparent 60%),
    var(--sheet);
  overflow: visible;
  position: static;
  box-shadow: none;
}
.meridian-create-page .create-hero p.eyebrow { color: var(--color-accent-700); font-size: 11px; letter-spacing: .14em; }
.meridian-create-page .create-hero h1 { margin: 9px 0 12px; font: 700 clamp(54px, 7vw, 86px)/.88 var(--font-display); letter-spacing: var(--heading-track); text-transform: var(--heading-case); }
.meridian-create-page .create-hero > p:not(.eyebrow) { max-width: 720px; margin: 0; color: var(--color-neutral-800); font-size: 18px; line-height: 1.5; }
.meridian-create-page .create-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; max-width: 650px; margin: 24px 0 0; }
.meridian-create-page .create-steps span { display: flex; align-items: flex-start; flex-direction: column; gap: 3px; min-width: 0; padding: 9px 0 0; border: 0; border-top: 5px solid var(--color-neutral-400); border-radius: 0; color: var(--color-neutral-700); background: none; box-shadow: none; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.meridian-create-page .create-steps span.is-current { color: var(--color-accent-700); border-color: var(--color-accent); background: none; }
.meridian-create-page .create-steps span i { display: none; }
.meridian-create-page .create-steps small { color: var(--color-neutral-700); font-size: 9px; }
.meridian-create-page .create-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 40px; max-width: none; margin: 30px 0 0; }
.meridian-create-page .create-card { padding: 0; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-card); background: var(--sheet); box-shadow: var(--shadow-lg); overflow: hidden; }
.meridian-create-page .create-card > .alert[hidden] { display: none; }
.meridian-create-page .create-card .form-section { margin: 0; padding: 24px 30px 27px; border-top: var(--rule) solid var(--rule-soft); }
.meridian-create-page .create-card .form-section:first-of-type { padding-top: 24px; border-top: 0; }
.meridian-create-page .create-card .form-section > h2 { margin: 0 0 17px; font: 700 23px/1 var(--font-display); letter-spacing: -.02em; text-transform: var(--heading-case); }
.meridian-create-page .field-row { align-items: start; gap: 16px; }
.meridian-create-page .field { gap: 7px; }
.meridian-create-page .field > span, .meridian-create-page .field > label > span { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.meridian-create-page .field input, .meridian-create-page .field select, .meridian-create-page .field textarea { min-height: 51px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: var(--sheet); box-shadow: none; font-size: 16px; }
.meridian-create-page .field input:focus, .meridian-create-page .field select:focus, .meridian-create-page .field textarea:focus { outline: 3px solid color-mix(in srgb, var(--color-accent) 22%, transparent); border-color: var(--color-accent); }
.meridian-create-page .form-hint { color: var(--color-neutral-700); line-height: 1.5; }
.meridian-create-page .create-card > div:last-of-type { padding: 24px 30px; border-top: var(--rule) solid var(--rule-color); }
.meridian-create-page .create-card > .form-hint:last-child { margin: 0; padding: 0 30px 24px; }
.meridian-create-page .create-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 17px; }
.meridian-create-page .create-section-heading h2 { margin: 4px 0 0; font: 700 26px/1 var(--font-display); text-transform: var(--heading-case); }
.meridian-create-page .create-section-heading > small { color: var(--color-neutral-700); font-size: 11px; }
.meridian-create-page .create-pace { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0; padding: 0; border: var(--rule) solid var(--rule-color); }
.meridian-create-page .create-pace label { min-width: 0; border-right: var(--rule) solid var(--rule-soft); cursor: pointer; }
.meridian-create-page .create-pace label:last-child { border-right: 0; }
.meridian-create-page .create-pace input { position: absolute; opacity: 0; pointer-events: none; }
.meridian-create-page .create-pace label > span { display: grid; align-content: start; min-height: 132px; padding: 16px 14px; color: var(--color-neutral-700); background: var(--sheet); }
.meridian-create-page .create-pace strong { margin-bottom: 13px; color: var(--color-text); font-size: 13px; }
.meridian-create-page .create-pace b { margin-bottom: 5px; color: var(--color-text); font-size: 11px; }
.meridian-create-page .create-pace small { font-size: 10px; line-height: 1.4; }
.meridian-create-page .create-pace input:checked + span { color: var(--select-ink); background: var(--select-bg); box-shadow: inset 0 0 0 var(--rule) var(--select-edge); }
.meridian-create-page .create-pace input:checked + span strong, .meridian-create-page .create-pace input:checked + span b { color: var(--select-ink); }
.meridian-create-page .create-pace input:focus-visible + span { outline: 3px solid var(--focus-ring); outline-offset: -3px; }
.meridian-create-page .create-party { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; border: var(--rule) solid var(--rule-color); }
.meridian-create-page .create-party label { min-width: 0; border-right: var(--rule) solid var(--rule-soft); cursor: pointer; }
.meridian-create-page .create-party label:last-child { border-right: 0; }
.meridian-create-page .create-party input { position: absolute; opacity: 0; pointer-events: none; }
.meridian-create-page .create-party label > span { display: grid; align-content: start; min-height: 112px; padding: 17px 14px; color: var(--color-neutral-700); background: var(--sheet); }
.meridian-create-page .create-party strong { margin-bottom: 9px; color: var(--color-text); font-size: 14px; }
.meridian-create-page .create-party small { font-size: 10px; line-height: 1.45; }
.meridian-create-page .create-party input:checked + span { color: var(--select-ink); background: var(--select-bg); box-shadow: inset 0 0 0 var(--rule) var(--select-edge); }
.meridian-create-page .create-party input:checked + span strong { color: var(--select-ink); }
.meridian-create-page .create-party input:focus-visible + span { outline: 3px solid var(--focus-ring); outline-offset: -3px; }
.meridian-create-page .create-pace-consequence { margin: 14px 0 0; color: var(--color-neutral-800); font-size: 13px; line-height: 1.5; }
.meridian-create-page details.form-section { display: block; }
.meridian-create-page details.form-section > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; list-style: none; cursor: pointer; }
.meridian-create-page details.form-section > summary::-webkit-details-marker { display: none; }
.meridian-create-page details.form-section > summary span { font: 700 22px/1 var(--font-display); text-transform: var(--heading-case); }
.meridian-create-page details.form-section > summary span::before { content: "+"; display: inline-block; width: 25px; font: 500 20px/1 var(--font-body); }
.meridian-create-page details.form-section[open] > summary span::before { content: "−"; }
.meridian-create-page details.form-section > summary small { color: var(--color-neutral-700); font-size: 11px; }
.meridian-create-page .create-disclosure-body { margin-top: 22px; padding-top: 22px; border-top: var(--rule) solid var(--rule-soft); }
.meridian-create-page .field > span > small { display: block; margin-top: 4px; color: var(--color-neutral-700); font-size: 9px; letter-spacing: 0; text-transform: none; }
.meridian-create-page .create-live-summary { margin: 0; padding: 26px 30px; border-top: var(--rule) solid var(--rule-color); color: var(--invert-ink); background: var(--invert-bg); }
.meridian-create-page .create-live-summary .eyebrow { margin: 0 0 7px; color: var(--invert-muted); font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.meridian-create-page .create-live-summary h2 { margin: 0 0 8px; font: 700 28px/1 var(--font-display); text-transform: var(--heading-case); }
.meridian-create-page .create-live-summary > p:not(.eyebrow) { margin: 0; color: var(--invert-muted); font-size: 12px; }
.meridian-create-page .create-live-summary dl { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 22px 0 0; border-top: var(--rule) solid color-mix(in srgb, var(--invert-ink) 25%, transparent); }
.meridian-create-page .create-live-summary dl div { padding: 13px 12px 0 0; }
.meridian-create-page .create-live-summary dt { color: var(--invert-muted); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.meridian-create-page .create-live-summary dd { margin: 5px 0 0; color: var(--invert-ink); font-size: 12px; font-weight: 700; }
.meridian-create-page .create-side { gap: 18px; }
.meridian-create-page .create-side .glass-panel, .meridian-create-page .create-side .panel { padding: 24px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-card); color: var(--color-text); background: var(--sheet); box-shadow: none; }
.meridian-create-page .create-side h3 { margin: 0 0 17px; font: 700 24px/1 var(--font-display); text-transform: var(--heading-case); }
.meridian-create-page .create-side-step { padding: 15px 0; border-top: var(--rule) solid var(--rule-soft); }
.meridian-create-page .create-side-step i { color: var(--color-accent-700); background: transparent; font: 700 20px/1 var(--font-display); }
.meridian-create-page .create-side-step strong { color: var(--color-text); }
.meridian-create-page .create-side-step small { color: var(--color-neutral-700); line-height: 1.45; }
.meridian-create-page .btn { border-radius: var(--radius-ctl); }
.meridian-create-page .btn--primary { color: var(--role-action-ink); background: var(--role-action); border-color: var(--role-action); }
.meridian-create-page .btn--ghost, .meridian-create-page .btn--soft { color: var(--color-text); background: transparent; border: var(--rule) solid var(--rule-color); }

@media (max-width: 900px) {
  .meridian-create-page .create-layout { grid-template-columns: 1fr; }
  .meridian-create-page .create-side { display: grid; grid-template-columns: 1fr 1fr; }
  .meridian-create-page .create-pace { grid-template-columns: repeat(3, 1fr); }
  .meridian-create-page .create-party { grid-template-columns: repeat(2, 1fr); }
  .meridian-create-page .create-party label:nth-child(2) { border-right: 0; }
  .meridian-create-page .create-party label:nth-child(n+3) { border-top: var(--rule) solid var(--rule-soft); }
  .meridian-create-page .create-pace label:nth-child(3) { border-right: 0; }
  .meridian-create-page .create-pace label:nth-child(n+4) { border-top: var(--rule) solid var(--rule-soft); }
}
@media (max-width: 640px) {
  .meridian-create-page .ws-main { width: 100%; padding: 26px 16px 48px; }
  .meridian-create-page .create-hero { padding: 24px 18px; }
  .meridian-create-page .create-hero h1 { font-size: 42px; }
  .meridian-create-page .create-hero > p:not(.eyebrow) { font-size: 16px; }
  .meridian-create-page .create-steps { gap: 4px; }
  .meridian-create-page .create-steps span { font-size: 9px; }
  .meridian-create-page .create-layout { margin-top: 20px; }
  .meridian-create-page .create-card .form-section { padding: 20px 16px 22px; }
  .meridian-create-page .field-row { grid-template-columns: 1fr; }
  .meridian-create-page .create-card > div:last-of-type { align-items: stretch !important; flex-direction: column; padding: 20px 16px; }
  .meridian-create-page .create-card > div:last-of-type .btn { width: 100%; }
  .meridian-create-page .create-card > .form-hint:last-child { padding-inline: 16px; }
  .meridian-create-page .create-side { display: block; }
  .meridian-create-page .create-pace { grid-template-columns: 1fr; }
  .meridian-create-page .create-pace label, .meridian-create-page .create-pace label:nth-child(3) { border-right: 0; border-top: var(--rule) solid var(--rule-soft); }
  .meridian-create-page .create-pace label:first-of-type { border-top: 0; }
  .meridian-create-page .create-pace label > span { grid-template-columns: 1fr auto; min-height: 0; padding: 14px; }
  .meridian-create-page .create-pace strong { margin: 0; }
  .meridian-create-page .create-pace b { margin: 0; }
  .meridian-create-page .create-pace small { grid-column: 1 / -1; margin-top: 5px; }
  .meridian-create-page .create-party { grid-template-columns: 1fr; }
  .meridian-create-page .create-party label, .meridian-create-page .create-party label:nth-child(2) { border-right: 0; border-top: var(--rule) solid var(--rule-soft); }
  .meridian-create-page .create-party label:first-of-type { border-top: 0; }
  .meridian-create-page .create-party label > span { min-height: 0; }
  .meridian-create-page .create-live-summary { padding: 22px 16px; }
  .meridian-create-page .create-live-summary dl { grid-template-columns: 1fr 1fr; }
}
