/* Only Wedding Event Details. No rules target other steps or journeys. */
body.context-wedding:has([data-step="details"].is-active) { background:radial-gradient(ellipse at 0 0,rgba(113,68,94,.09),transparent 60%),linear-gradient(135deg,#f3ebe0,#eeece1 65%,#e4e8dc); }
body.context-wedding .step[data-step="details"] { --wedding-edge:linear-gradient(125deg,#71445e,#9b8c72 48%,#7f9a78); --white:#513f49; --muted:#6b5b62; --green:#71445e; --green-soft:#586044; --border:rgba(113,68,94,.24); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; background:linear-gradient(135deg,#f9f3ea,#f1efe5); border-color:transparent; box-shadow:0 18px 50px rgba(72,57,62,.11); }
body.context-wedding .step[data-step="details"]::before { inset:0; height:auto; padding:1px; border-radius:inherit; background:var(--wedding-edge); opacity:.8; pointer-events:none; -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }
body.context-wedding .step[data-step="details"] h1 { max-width:19ch; font-family:'Arial Narrow','Helvetica Neue',Arial,sans-serif; font-size:clamp(2.25rem,5vw,3.5rem); font-weight:800; line-height:1.05; letter-spacing:-.035em; color:#513f49; border:0; outline:none; box-shadow:none; }
body.context-wedding .step[data-step="details"] h1:focus { outline:none; }
body.context-wedding .step[data-step="details"] .wedding-details-accent { display:inline-block; color:transparent; background:linear-gradient(100deg,#71445e,#70684f 52%,#52694e); background-clip:text; -webkit-background-clip:text; }
body.context-wedding .step[data-step="details"] .eyebrow { font-family:inherit; font-weight:750; letter-spacing:.19em; color:#71445e; }
body.context-wedding .step[data-step="details"] .wedding-only legend { font-size:1.15rem; font-weight:650; color:#59454f; }
body.context-wedding .step[data-step="details"] .wedding-journey-help { margin:0 0 .85rem; color:#6b5b62; }
body.context-wedding .step[data-step="details"] .inline-options span { border:1px solid transparent; background:linear-gradient(#f8f2e9,#f8f2e9) padding-box,var(--wedding-edge) border-box; color:#59454f; font-weight:650; }
body.context-wedding .step[data-step="details"] .inline-options label:has(input:checked) span { background:linear-gradient(110deg,#71445e,#59634b) padding-box,var(--wedding-edge) border-box; color:#fffaf3; box-shadow:0 3px 10px rgba(113,68,94,.12); }
body.context-wedding .step[data-step="details"] .field label, body.context-wedding .step[data-step="details"] .field-label { color:#59454f; font-weight:650; }
body.context-wedding .step[data-step="details"] .field input, body.context-wedding .step[data-step="details"] .field select, body.context-wedding .step[data-step="details"] .time-picker select { color:#4e4248; background-color:#f9f5ee; border:1px solid #b8ada9; }
body.context-wedding .step[data-step="details"] .field input:focus, body.context-wedding .step[data-step="details"] .field select:focus, body.context-wedding .step[data-step="details"] .time-picker select:focus { outline:2px solid #7f9a78; outline-offset:2px; border-color:#71445e; box-shadow:0 0 0 4px rgba(113,68,94,.08); }
body.context-wedding .step[data-step="details"] .event-time-section { background:rgba(127,154,120,.045); border-color:rgba(123,131,100,.32); }
body.context-wedding .step[data-step="details"] .primary-button { background:linear-gradient(105deg,#71445e,#59634b); color:#fffaf3; box-shadow:0 6px 18px rgba(113,68,94,.13); }
body.context-wedding .step[data-step="details"] .secondary-button { color:#59454f; border-color:#b8ada9; background:#f6f0e8; }
body.context-wedding .step[data-step="details"] { --wedding-edge:linear-gradient(125deg,#71445e,#b89b63 48%,#7f9a78); }
body.context-wedding .step[data-step="details"] .wedding-time { position:relative; border-color:transparent; }
body.context-wedding .step[data-step="details"] .wedding-time::after { content:''; position:absolute; inset:0; border-radius:inherit; padding:1px; background:var(--wedding-edge); opacity:.8; pointer-events:none; -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }
body.context-wedding .step[data-step="details"] .wedding-venue-row { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr); gap:1rem; align-items:start; }
body.context-wedding .step[data-step="details"] .wedding-venue-row[hidden] { display:none; }
body.context-wedding .step[data-step="details"] .wedding-venue-row .same-venue-field { margin:0; padding:0; border:0; }
body.context-wedding .step[data-step="details"] .reception-venue-status { color:#52694e; font-weight:650; }
@media(min-width:760px) { body.context-wedding .step[data-step="details"] .wedding-venue-row { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } }
