/* Amped365 booking page */
.am-booking{padding:40px 0 96px;scroll-margin-top:calc(var(--nav-h) + 16px)}
.am-booking__head{max-width:640px;margin-bottom:28px}
.am-booking__head h2{font-size:clamp(1.8rem,3.2vw,2.5rem);margin-top:14px}
.am-booking__head p{color:var(--muted);margin-top:12px;font-size:1.05rem}
.am-route{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px;max-width:760px}
.am-route__opt{position:relative;display:block;cursor:pointer}
.am-route__opt input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.am-route__opt span{display:block;padding:16px 18px;border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--panel)}
.am-route__opt b{display:block;font:700 1.02rem var(--h);color:var(--text)}
.am-route__opt small{display:block;color:var(--muted);font-size:.85rem;margin-top:3px;line-height:1.4}
.am-route__opt:has(input:checked) span{border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}
.am-route__opt:has(input:focus-visible) span{box-shadow:var(--am-focus)}
.am-booking__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:start}
.am-booking__card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px}
.am-booking__card[hidden]{display:none}
.am-booking .am-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23A3ADBA' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.am-zone{display:flex;align-items:center;min-height:48px;padding:0 14px;border:1px dashed var(--line-2);border-radius:var(--r);font:600 .95rem var(--b);color:var(--muted)}
.am-zone.is-ok{border-style:solid;border-color:var(--text);color:var(--text)}
.am-zone.is-bad{border-color:rgba(255,120,100,.5);color:#FFC7BD}
.am-note{margin:-6px 0 0;color:var(--muted);font-size:.86rem;line-height:1.45}
.am-note--warn{color:#FFC7BD}
.am-bands{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;min-height:48px}
.am-bands .am-note{grid-column:1/-1;margin:0;align-self:center}
.am-band{position:relative;display:block;cursor:pointer}
.am-band input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.am-band span{display:block;text-align:center;padding:8px 6px;border:1px solid var(--line-2);border-radius:var(--r);min-height:48px}
.am-band b{display:block;font:700 .86rem var(--h);color:var(--text)}
.am-band small{display:block;font-size:.72rem;color:var(--muted)}
.am-band:has(input:checked) span{background:var(--text);border-color:var(--text)}
.am-band:has(input:checked) b,.am-band:has(input:checked) small{color:var(--ink)}
.am-band:has(input:focus-visible) span{box-shadow:var(--am-focus)}
.am-pending{padding:14px 16px;border:1px solid var(--line-2);border-left:3px solid var(--amp);border-radius:var(--r);background:rgba(255,255,255,.03)}
.am-pending b{display:block;font:700 .95rem var(--h);color:var(--text);margin-bottom:4px}
.am-pending p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}
.am-form__btn[disabled]{background:var(--panel-2);color:var(--dim);border:1px solid var(--line-2);cursor:not-allowed}
.am-booking__side{display:grid;gap:14px;position:sticky;top:calc(var(--nav-h) + 16px)}
.am-side__card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 24px}
.am-side__card h3{font:800 1.05rem var(--h);margin:0 0 14px;color:var(--text)}
.am-side__steps{list-style:none;counter-reset:step;margin:0;padding:0;display:grid;gap:12px}
.am-side__steps li{counter-increment:step;display:grid;grid-template-columns:30px 1fr;column-gap:12px;row-gap:2px;align-items:start}
.am-side__steps li::before{content:counter(step);grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--line-2);font:800 .82rem var(--h);color:var(--text)}
.am-side__steps b{font:700 .95rem var(--h);color:var(--text)}
.am-side__steps span{grid-column:2;color:var(--muted);font-size:.86rem;line-height:1.45}
.am-side__zones ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.am-side__zones li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.am-side__zones li:last-child{border:0;padding-bottom:0}
.am-side__zones b{font:700 .92rem var(--h);color:var(--text)}
.am-side__zones span{grid-column:1;color:var(--dim);font-size:.78rem;line-height:1.4}
.am-side__zones em{grid-column:2;grid-row:1/3;align-self:start;font:700 .88rem var(--h);font-style:normal;color:var(--text);white-space:nowrap}
.am-side__zones p{margin:14px 0 0;color:var(--muted);font-size:.84rem;line-height:1.5}
@media(max-width:960px){.am-booking__grid{grid-template-columns:1fr}.am-booking__side{position:static}}
@media(max-width:600px){.am-booking{padding:24px 0 64px}.am-route{grid-template-columns:1fr}.am-booking__card{padding:20px}.am-bands{grid-template-columns:1fr}}
