/* ==========================================================================
   Bus booking — amount strip and Payment Details card
   The tour package booking's .bk-amt / .bk-pay (booking.css), for the bus
   search seat strip and the bus passenger details step, in the page accent.
   ========================================================================== */
.bs-strip[hidden]{display:none}
.bk-amt{position:fixed;left:0;right:0;bottom:0;z-index:1040;color:#fff;background:linear-gradient(135deg,var(--pg-accent-deep),var(--pg-accent));box-shadow:0 -8px 24px -10px rgba(0,0,0,.3)}
.bk-amt__in{display:flex;align-items:center;gap:.7rem;padding-top:.55rem;padding-bottom:.55rem}
.bk-amt__price{display:flex;flex-direction:column;line-height:1.1;min-width:0}
.bk-amt__price small{font:600 .64rem var(--font-body);text-transform:uppercase;opacity:.85}
.bk-amt__price b{font:900 1.2rem var(--font-display)}
.bk-amt__price span{font:500 .64rem var(--font-body);opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52vw}
.bk-amt__toggle{flex:none;width:34px;height:34px;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);border-radius:50%;cursor:pointer}
.bk-amt__toggle .bi{transition:transform var(--dur-1) var(--ease-out)}
.bk-amt__toggle.is-open .bi{transform:rotate(180deg)}
.bk-amt__next{margin-left:auto;display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.3rem;color:#fff;font:800 .9rem var(--font-display);background:linear-gradient(135deg,#25d366,#1da851);border:0;border-radius:var(--r-pill);cursor:pointer;text-decoration:none;box-shadow:0 6px 16px -6px rgba(29,168,81,.6);transition:transform var(--dur-1) var(--ease-out),opacity var(--dur-1) var(--ease-out)}
.bk-amt__next:hover:not(:disabled){transform:translateY(-2px);color:#fff}
.bk-amt__next:disabled{opacity:.5;cursor:not-allowed}
.bk-pay{position:fixed;left:0;right:0;bottom:56px;z-index:1039;padding:0 1rem}
.bk-pay[hidden]{display:none}
.bk-pay__card{max-width:460px;margin:0 auto;overflow:hidden;background:#fff;border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:0 -10px 40px -10px rgba(0,0,0,.35)}
.bk-pay__head{padding:.6rem 1rem;color:#fff;font:800 .95rem var(--font-display);text-align:center;background:var(--pg-accent-deep)}
.bk-pay__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem;color:var(--bb-ink);font:600 .86rem var(--font-body);background:#eef2f9;border-bottom:1px solid #fff}
.bk-pay__row small{display:block;font:500 .72rem var(--font-body);color:var(--bb-ink-3)}
.bk-pay__row b{font:800 .95rem var(--font-display);color:var(--pg-accent-deep);white-space:nowrap}
.bk-pay__row--total{color:#fff;background:linear-gradient(135deg,#16a34a,#15803d)}
.bk-pay__row--total b{color:#fff}
