/* Request templates, seasonal funnel pages and the review invitation. Uses the tokens of site.css. Mobile first. */
.tpl-list { display: grid; gap: .6rem; margin: .4rem 0 0; padding: 0; list-style: none; }
.tpl-pick { border: 1px solid var(--line); border-radius: var(--radius); background: var(--bg-alt); padding: .6rem .8rem; }
.tpl-pick > label.check { margin: 0; min-height: 44px; align-items: center; font-weight: 600; }
.tpl-pick details { margin: .2rem 0 0 1.6rem; font-size: .92rem; }
.tpl-pick summary { cursor: pointer; color: var(--muted); padding: .35rem 0; min-height: 32px; }
.tpl-lines { margin: .2rem 0 .6rem; padding-left: 1.1rem; }
.tpl-price { margin: .3rem 0; padding: .45rem .7rem; border-left: 3px solid var(--accent); background: var(--bg); border-radius: 0 8px 8px 0; font-size: .92rem; }
.tpl-price small { color: var(--muted); display: block; }
.tpl-cards { display: grid; gap: .8rem; grid-template-columns: 1fr; }
@media (min-width: 720px) { .tpl-cards { grid-template-columns: 1fr 1fr; } }
.tpl-cards .card a.btn { margin-top: .4rem; }
.season-form { display: grid; gap: .6rem; grid-template-columns: 1fr; }
@media (min-width: 600px) { .season-form { grid-template-columns: 1fr 2fr auto; align-items: end; } }
.season-form select, .season-form input { min-height: 44px; }
.season-form .btn { min-height: 44px; }
.station { border-top: 1px solid var(--line); padding: .7rem 0; display: grid; gap: .3rem; }
.station:first-child { border-top: 0; }
.station .actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.station .actions .btn { min-height: 44px; display: inline-flex; align-items: center; }
.draft-note { border: 1px dashed var(--warn); border-radius: var(--radius); padding: .5rem .8rem; font-size: .9rem; color: var(--muted); }
.verify-flag { color: var(--warn); font-weight: 600; }
.badge-line { display: inline-block; margin: .2rem 0 .8rem; font-size: .9rem; }
