/* 0023 layout only. Shared shell supplies typography, colors, controls and focus. */
[data-botai-product="0023"] main{max-width:1080px;padding-top:0}
[data-botai-product="0023"] header.intro{padding:28px 0 4px;margin-bottom:20px}
.intro .eyebrow{margin:0 0 12px;font-weight:600}
.intro h1{margin:0 0 14px}
.lead{font-size:clamp(1.2rem,2.4vw,1.5rem);font-weight:650;line-height:1.65;margin:0 0 14px}
.primary-link{display:inline-flex;align-items:center;min-height:48px;padding:10px 18px;background:var(--accent);color:#fff;border-radius:6px;font-weight:700;text-decoration:none}
.intro .actions{align-items:center;gap:20px}
.help{margin-top:24px;max-width:75ch}
summary{cursor:pointer;min-height:46px;padding:10px 0;color:var(--accent);font-weight:650}
.help p{margin:10px 0 18px}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.section-heading h2{margin:0}
.section-heading button{margin:0}
h3{font-size:1.08rem;margin:24px 0 10px}
#fields{margin-top:18px}
.visits-heading{margin-top:32px}
#rows fieldset{margin:24px 0;padding:20px;background:#fbfcfc}
#rows legend{font-size:1.1rem}
#rows .actions{margin:10px 0 18px}
#rows button{padding:8px 14px}
#rows .visit-controls{justify-content:flex-start}
#rows .visit-remove{margin-left:auto}
#rows .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#rows .visit-name{grid-column:1/-1}
.visit-details{margin-top:18px;border-top:1px solid var(--line)}
.visit-details .grid{padding-top:8px}
.actions>button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.status{margin:12px 0;overflow-wrap:anywhere}
.status:empty{display:none}
.status.error{padding:14px 18px;border-left:4px solid #972b15;background:#fff4ee;border-radius:6px}
#readable-result{overflow-wrap:anywhere}
.trip-summary{padding:18px 20px;background:var(--accent-soft);border:1px solid var(--line);border-radius:8px;margin:18px 0 24px}
.trip-summary h3{margin:0 0 12px}
.trip-summary p{margin:8px 0}
.trip-summary .key-line{font-weight:700}
.trip-note{color:var(--muted)}
.trip-stops{list-style:none;margin:24px 0;padding:0;border-left:2px solid var(--line)}
.trip-stops li{padding:0 0 24px 24px;position:relative}
.trip-stops li:last-child{padding-bottom:0}
.trip-stops li:before{content:"";position:absolute;left:-6px;top:10px;width:10px;height:10px;border-radius:50%;background:var(--accent)}
.trip-stops h3{margin:0 0 8px}
.trip-stops p{margin:5px 0;white-space:pre-line}
.result-actions{padding-top:8px}
.save-note{margin-top:12px}
#text-result{border-top:1px solid var(--line);margin-top:24px;padding-top:6px}
#text-result textarea{margin:8px 0;min-height:340px}
.draft-panel h3{margin-top:0}
.draft-controls{margin-top:20px;align-items:start}
.draft-controls .hint{margin-top:10px}
.restart{align-items:center;margin:24px 0 32px}
footer{border-top:1px solid var(--line);padding-top:24px}
footer p{margin:12px 0}
@media(max-width:600px){.intro{padding-top:24px}.section-heading{align-items:flex-start}.section-heading button{width:100%}#rows fieldset{padding:14px}#rows .grid{grid-template-columns:1fr}#rows .visit-remove{margin-left:0}.trip-summary{padding:14px}.trip-stops li{padding-left:18px}.draft-controls{grid-template-columns:1fr}.result-actions button{flex:1 1 140px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

[data-botai-product="0023"] .panel{padding:24px}[data-botai-product="0023"] footer{padding:24px 0 0}@media(max-width:600px){[data-botai-product="0023"] main{padding-inline:14px}[data-botai-product="0023"] .panel{padding:16px}}
