/* Checkout in the light glass design. Presentation only: every rule is scoped to #booking-modal[data-flyt-enabled]
   (set by sj-glass-flyt.js once the native nodes are in place), so without the adapter the production checkout is untouched.
   Tokens follow the approved reference (ring-glass): ink #18272d, red #bc1c2b, Outfit for text, Oswald for the big words. */
#booking-modal[data-flyt-enabled]{
  --k-ink:#18272d;--k-ink-2:#445359;--k-ink-3:#566469;--k-line:#d8dfe1;--k-line-2:#b9c4c8;--k-soft:#f1f4f5;
  --k-red:#bc1c2b;--k-red-2:#a01825;--k-display:Oswald,Arial,sans-serif;--k-ui:Outfit,Arial,sans-serif;
  --f-glass:rgba(255,255,255,.88);--f-edge:rgba(255,255,255,.75);--f-focus:#18272d;
  background:rgba(226,232,234,.58);-webkit-backdrop-filter:blur(16px) saturate(1.08);backdrop-filter:blur(16px) saturate(1.08);
}
#booking-modal[data-flyt-enabled] .kasse{background:var(--f-glass);-webkit-backdrop-filter:blur(26px) saturate(1.1);backdrop-filter:blur(26px) saturate(1.1);color:var(--k-ink);font:17px/1.5 var(--k-ui)}
@media (min-width:900px){#booking-modal[data-flyt-enabled] .kasse{width:min(1100px,94vw);height:min(800px,92vh);border-radius:22px;border:1px solid var(--f-edge);box-shadow:0 40px 110px -34px rgba(24,39,45,.55)}}
#booking-modal[data-flyt-enabled] .kasse :focus-visible{outline:3px solid var(--f-focus);outline-offset:3px;box-shadow:0 0 0 6px #fff}
#booking-modal[data-flyt-enabled] .flyt-obsolete,#booking-modal[data-flyt-enabled] .flyt-screen[hidden]{display:none!important}
#booking-modal[data-flyt-enabled] .flyt-native-title,#booking-modal[data-flyt-enabled] .flyt-sr{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
#booking-modal[data-flyt-enabled] .k-fremdrift{display:none}
#booking-modal[data-flyt-enabled] .k-steg:not(.vis){display:none!important}
#booking-modal[data-flyt-enabled] .k-steg{padding:0!important;max-width:none;margin:0;animation:none}
#booking-modal[data-flyt-enabled] h2.flyt-heading:focus,#booking-modal[data-flyt-enabled] h2.flyt-heading:focus-visible{outline:none;box-shadow:none}
#booking-modal[data-flyt-enabled] .k-topp{padding:10px 14px 0}
#booking-modal[data-flyt-enabled] .k-topp-tittel{font:600 14px var(--k-ui);color:var(--k-ink-2);letter-spacing:.02em;text-align:left}
#booking-modal[data-flyt-enabled] .k-ik:hover{background:#18272d12}
#booking-modal[data-flyt-enabled] .flyt-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;list-style:none;padding:0 24px;margin:6px 0 0}
#booking-modal[data-flyt-enabled] .flyt-progress li{border-top:3px solid var(--k-line);padding-top:7px;font-size:12.5px;color:var(--k-ink-3);letter-spacing:.02em}
#booking-modal[data-flyt-enabled] .flyt-progress li.complete{border-color:var(--k-ink);color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .flyt-progress li[aria-current]{font-weight:600}
#booking-modal[data-flyt-enabled] .k-rull{padding:14px 24px 0}
@media (min-width:900px){#booking-modal[data-flyt-enabled] .k-rull{padding:20px 44px 0}#booking-modal[data-flyt-enabled] .k-innhold{grid-template-columns:minmax(0,1fr) 300px}#booking-modal[data-flyt-enabled] .flyt-progress{padding:0 44px}}
#booking-modal[data-flyt-enabled] .flyt-screen{min-width:0;padding-bottom:18px}
#booking-modal[data-flyt-enabled] .flyt-eyebrow{font:600 12px/1.4 var(--k-ui);text-transform:uppercase;letter-spacing:.14em;color:var(--k-ink-3);margin:6px 0 8px}
#booking-modal[data-flyt-enabled] h2.flyt-heading{font:500 clamp(30px,5.4vw,44px)/1.05 var(--k-display);text-transform:uppercase;letter-spacing:-.01em;color:var(--k-ink);margin:0 0 14px}
#booking-modal[data-flyt-enabled] h3.flyt-subhead{font:600 17px/1.3 var(--k-ui);margin:0 0 10px;color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .flyt-intro{font:400 17px/1.55 var(--k-ui);color:var(--k-ink-2);margin:0 0 18px}
#booking-modal[data-flyt-enabled] .flyt-note,#booking-modal[data-flyt-enabled] .flyt-small,#booking-modal[data-flyt-enabled] .flyt-count{font:400 14px/1.5 var(--k-ui);color:var(--k-ink-2);margin:8px 0 0}
#booking-modal[data-flyt-enabled] .flyt-note:empty{display:none}
#booking-modal[data-flyt-enabled] .flyt-back,#booking-modal[data-flyt-enabled] .flyt-link{display:inline-flex;align-items:center;background:transparent;border:0;color:var(--k-ink-2);font:500 15px/1.4 var(--k-ui);min-height:44px;padding:8px 2px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#booking-modal[data-flyt-enabled] .flyt-back{text-decoration:none;margin:0 0 0 -2px}
#booking-modal[data-flyt-enabled] .flyt-back[hidden],#booking-modal[data-flyt-enabled] .flyt-link[hidden]{display:none}
#booking-modal[data-flyt-enabled] .flyt-primary,#booking-modal[data-flyt-enabled] .flyt-secondary{display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;border-radius:8px;background:var(--k-red);color:#fff;font:600 17px/1.3 var(--k-ui);min-height:54px;padding:12px 20px;cursor:pointer;width:100%}
#booking-modal[data-flyt-enabled] .flyt-primary:hover{background:var(--k-red-2)}
#booking-modal[data-flyt-enabled] .flyt-secondary{background:#fff;color:var(--k-ink);border:1px solid var(--k-line-2);justify-content:center;min-height:46px;width:auto}
#booking-modal[data-flyt-enabled] button:disabled{opacity:.5;cursor:not-allowed}
#booking-modal[data-flyt-enabled] .flyt-actions{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;gap:16px;margin:18px -24px 0;padding:12px 24px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--k-line)}
@media (min-width:900px){#booking-modal[data-flyt-enabled] .flyt-actions{margin-inline:-44px;padding-inline:44px}}
#booking-modal[data-flyt-enabled] .flyt-actions .flyt-primary{flex:1;min-width:0;margin:0}
#booking-modal[data-flyt-enabled] .flyt-sum{display:flex;flex-direction:column;min-width:96px;line-height:1.15}
#booking-modal[data-flyt-enabled] .flyt-sum small{font-size:12px;color:var(--k-ink-3)}
#booking-modal[data-flyt-enabled] .flyt-price{font:600 22px/1.15 var(--k-ui);color:var(--k-ink);white-space:nowrap}
/* place screen */
#booking-modal[data-flyt-enabled] .flyt-city-row{position:relative;display:flex;gap:10px;align-items:stretch}
#booking-modal[data-flyt-enabled] .flyt-city-input{flex:1;min-width:0;min-height:56px;padding:0 16px;font:400 18px var(--k-ui);color:var(--k-ink);background:#fff;border:1px solid var(--k-line-2);border-radius:8px}
#booking-modal[data-flyt-enabled] .flyt-near{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:56px;padding:0 16px;background:var(--k-soft);color:var(--k-ink);border:1px solid var(--k-line-2);border-radius:8px;font:600 15px var(--k-ui);cursor:pointer}
#booking-modal[data-flyt-enabled] .flyt-near[aria-busy="true"]{opacity:.7;cursor:progress}
#booking-modal[data-flyt-enabled] .flyt-near[aria-busy="true"] svg{animation:flyt-pulse 1.1s ease-in-out infinite}
@keyframes flyt-pulse{50%{opacity:.35}}
@media (max-width:420px){#booking-modal[data-flyt-enabled] .flyt-near span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}#booking-modal[data-flyt-enabled] .flyt-near{padding:0 15px}}
#booking-modal[data-flyt-enabled] .flyt-near-result{margin:12px 0 0;padding:14px;border:1px solid var(--k-line-2);border-radius:12px;background:#fff}
#booking-modal[data-flyt-enabled] .flyt-near-title{font:600 14px var(--k-ui);margin:0 0 8px}
#booking-modal[data-flyt-enabled] .flyt-near-result ul,#booking-modal[data-flyt-enabled] .flyt-cities,#booking-modal[data-flyt-enabled] .flyt-datelist{list-style:none;margin:0;padding:0}
#booking-modal[data-flyt-enabled] .flyt-cities{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin-top:12px}
#booking-modal[data-flyt-enabled] .flyt-city-btn{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;width:100%;min-height:58px;padding:9px 14px;text-align:left;background:#fff;color:var(--k-ink);border:1px solid var(--k-line);border-radius:10px;cursor:pointer}
#booking-modal[data-flyt-enabled] .flyt-city-btn:hover{border-color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .flyt-city-name{font:600 17px/1.2 var(--k-ui)}
#booking-modal[data-flyt-enabled] .flyt-city-btn small{grid-column:1;font:400 13px/1.3 var(--k-ui);color:var(--k-ink-3)}
#booking-modal[data-flyt-enabled] .flyt-km{grid-column:2;grid-row:1/3;font:500 13px var(--k-ui);color:var(--k-ink-2);white-space:nowrap}
#booking-modal[data-flyt-enabled] .flyt-near-result .flyt-city-btn{border-color:transparent;border-bottom-color:var(--k-line);border-radius:0;padding-inline:4px}
#booking-modal[data-flyt-enabled] .flyt-nomatch{grid-column:1/-1;font-size:15px}
/* date screen */
#booking-modal[data-flyt-enabled] .flyt-date-tools{margin:-6px 0 2px}
#booking-modal[data-flyt-enabled] .flyt-empty{padding:18px;border:1px solid var(--k-line-2);border-radius:12px;background:#fff}
#booking-modal[data-flyt-enabled] .flyt-product{margin-top:24px;padding-top:18px;border-top:1px solid var(--k-line)}
@media (min-width:1280px){#booking-modal[data-flyt-enabled] .flyt-date-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:30px;align-items:start}#booking-modal[data-flyt-enabled] .flyt-product{margin-top:10px;padding-top:0;border-top:0}#booking-modal[data-flyt-enabled] .flyt-day{height:42px}#booking-modal[data-flyt-enabled] .flyt-selected{margin-top:0}}
#booking-modal[data-flyt-enabled] .booking-type{display:grid;gap:10px}
#booking-modal[data-flyt-enabled] .k-valg-kort{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:2px 12px;align-items:start;padding:14px 16px;border:1px solid var(--k-line);border-radius:12px;background:#fff;cursor:pointer}
#booking-modal[data-flyt-enabled] .k-valg-kort:has(input:checked){border:2px solid var(--k-ink);padding:13px 15px;background:#fff}
#booking-modal[data-flyt-enabled] .k-valg-kort>input{grid-row:1/3;width:22px;height:22px;margin:3px 0 0;accent-color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .k-valg-kort b{font:600 17px/1.3 var(--k-ui);color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .k-valg-kort small{display:block;font:400 14px/1.45 var(--k-ui);color:var(--k-ink-2);margin-top:3px}
#booking-modal[data-flyt-enabled] .k-valg-kort .k-pris{font:600 17px var(--k-ui);color:var(--k-ink);white-space:nowrap}
#booking-modal[data-flyt-enabled] .flyt-recommend{margin:12px 0;padding:12px 14px;border-radius:10px;background:var(--k-soft);font:400 14.5px/1.5 var(--k-ui)}
#booking-modal[data-flyt-enabled] .flyt-recommend p{margin:4px 0;color:var(--k-ink-2)}
#booking-modal[data-flyt-enabled] .form-group-kode{border-top:1px solid var(--k-line);margin-top:16px;padding-top:6px}
#booking-modal[data-flyt-enabled] .k-midt{text-align:left}
#booking-modal[data-flyt-enabled] .k-kode{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:8px;align-items:center}
#booking-modal[data-flyt-enabled] .k-kode>input{grid-column:1;min-height:50px;font-size:17px}
#booking-modal[data-flyt-enabled] .k-kode>.flyt-apply{grid-column:2;margin:0;min-height:50px;padding:0 22px;width:auto}
#booking-modal[data-flyt-enabled] .k-kode>.flyt-code-feedback,#booking-modal[data-flyt-enabled] .k-kode>.flyt-code-email,#booking-modal[data-flyt-enabled] .k-kode>.flyt-link{grid-column:1/-1}
#booking-modal[data-flyt-enabled] .flyt-code-feedback{font:500 14.5px/1.5 var(--k-ui);color:var(--k-ink-2);margin:0}
#booking-modal[data-flyt-enabled] .flyt-code-feedback:empty{display:none}
#booking-modal[data-flyt-enabled] .flyt-code-feedback[data-state="applied"]{color:#0b5d2b}
#booking-modal[data-flyt-enabled] .flyt-code-feedback[data-state="rejected"]{color:#9a1420}
#booking-modal[data-flyt-enabled] .flyt-code-email:empty{display:none}
/* generic native controls */
#booking-modal[data-flyt-enabled] .k-inp{font-size:16px;min-height:50px;border:1px solid var(--k-line-2);border-radius:8px;min-width:0;background:#fff;color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .k-felt{margin-top:16px}
#booking-modal[data-flyt-enabled] .k-felt>span,#booking-modal[data-flyt-enabled] .k-felt .dob-label{font:600 14px var(--k-ui);color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .addon-card{border:1px solid var(--k-line);border-radius:12px;padding:16px!important;background:#fff;margin:10px 0}
#booking-modal[data-flyt-enabled] .addon-card:has(input:checked){border:2px solid var(--k-ink);padding:15px!important}
#booking-modal[data-flyt-enabled] .addon-card p{font:400 14.5px/1.5 var(--k-ui);color:var(--k-ink-2)}
#booking-modal[data-flyt-enabled] .k-valg{min-height:48px;align-items:center;margin:14px 0}
#booking-modal[data-flyt-enabled] .k-teller button{width:44px;height:44px;border-radius:50%}
#booking-modal[data-flyt-enabled] #booking-antall{width:48px;min-width:48px;height:44px;font-size:16px;text-align:center}
#booking-modal[data-flyt-enabled] #booking-summary{display:none!important}
#booking-modal[data-flyt-enabled] .flyt-selection{white-space:normal;padding:14px 16px;border-radius:12px;background:#fff;border:1px solid var(--k-line);font:500 16px/1.5 var(--k-ui);margin:0 0 6px}
#booking-modal[data-flyt-enabled] .flyt-summary-total{border-top:1px solid var(--k-line);margin:16px 0;padding-top:12px}
#booking-modal[data-flyt-enabled] .k-linje{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font:400 16px/1.4 var(--k-ui)}
#booking-modal[data-flyt-enabled] .k-total{border-top:1px solid var(--k-line);margin-top:6px;padding-top:12px;font-weight:600;font-size:18px}
#booking-modal[data-flyt-enabled] .k-trekk{color:var(--k-ink-2)}
#booking-modal[data-flyt-enabled] .flyt-naa-senere{margin:14px 0 6px;padding:12px 14px;border:1px solid var(--k-line);border-radius:12px;background:#fff}
#booking-modal[data-flyt-enabled] .flyt-ns-rad{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font:400 16px/1.4 var(--k-ui)}
#booking-modal[data-flyt-enabled] .flyt-ns-rad strong{font-weight:600;font-size:18px;white-space:nowrap}
#booking-modal[data-flyt-enabled] .flyt-ns-navn{font-weight:600}
#booking-modal[data-flyt-enabled] .flyt-ns-rad--senere{display:block;margin-top:10px;padding-top:10px;border-top:1px solid var(--k-line)}
#booking-modal[data-flyt-enabled] #exam-fee-notice-text{font:400 14.5px/1.5 var(--k-ui);color:var(--k-ink-2);margin:2px 0 0;padding:0;border:0}
#booking-modal[data-flyt-enabled] [data-flyt-screen="betal"] #kasse-linjer .k-total{display:none}
#booking-modal[data-flyt-enabled] .k-betal{margin-top:14px;display:grid;gap:12px}
#booking-modal[data-flyt-enabled] .vipps-offisiell{min-height:54px}
#booking-modal[data-flyt-enabled] .k-par{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#booking-modal[data-flyt-enabled] .k-par .k-knapp{min-height:54px;border-radius:8px}
#booking-modal[data-flyt-enabled] .flyt-wallet-note{font:400 13.5px/1.45 var(--k-ui);color:var(--k-ink-3);margin:0 0 2px}
#booking-modal[data-flyt-enabled] .k-hurtig{margin-top:18px}
#booking-modal[data-flyt-enabled] .k-tillit a{display:inline-flex;align-items:center;min-height:44px}
#booking-modal[data-flyt-enabled] #payment-step{padding:6px 0}
#booking-modal[data-flyt-enabled] .k-dialog{z-index:20}
/* side panel */
#booking-modal[data-flyt-enabled] .k-side{background:#ffffff80;border-left:1px solid var(--k-line);padding:26px 24px}
#booking-modal[data-flyt-enabled] .k-side h4{font:500 24px/1.1 var(--k-display);text-transform:uppercase;color:var(--k-ink);letter-spacing:0;margin:0 0 14px}
#booking-modal[data-flyt-enabled] .flyt-side-course{white-space:pre-line;font:400 14.5px/1.6 var(--k-ui);padding-bottom:14px;margin-bottom:10px;border-bottom:1px solid var(--k-line)}
/* confirmation (native modal state after payment) */
.booking-modal-overlay:has(#conf-close-btn) .booking-modal-panel{background:#fff;color:#18272d;border-radius:18px;font-family:Outfit,Arial,sans-serif;max-height:calc(100dvh - 24px);overflow:auto}
.booking-modal-overlay:has(#conf-close-btn) :is(h2,h3,strong){color:#18272d!important;font-family:Outfit,Arial,sans-serif}
.booking-modal-overlay:has(#conf-close-btn) :is(p,li){color:#445359!important}
.booking-modal-overlay:has(#conf-close-btn) :is(.payment-summary,.confirmation-checklist){background:#f1f4f5;border:1px solid #d8dfe1;border-radius:12px;padding:16px;color:#18272d}
.booking-modal-overlay:has(#conf-close-btn) #conf-close-btn{background:#bc1c2b;color:#fff;border-radius:8px;width:100%;padding:14px 20px;min-height:48px}
@media (max-width:899px){
  #booking-modal[data-flyt-enabled] .k-side{display:none}
  #booking-modal[data-flyt-enabled] .flyt-cities{grid-template-columns:1fr}
}
@media (max-width:420px){
  #booking-modal[data-flyt-enabled] .k-rull{padding-inline:16px}
  #booking-modal[data-flyt-enabled] .flyt-progress{padding:0 16px;gap:6px}
  #booking-modal[data-flyt-enabled] .flyt-progress li{font-size:11px}
  #booking-modal[data-flyt-enabled] .flyt-actions{margin-inline:-16px;padding-inline:16px;gap:12px}
  #booking-modal[data-flyt-enabled] .flyt-calendar-grid{gap:3px}
  #booking-modal[data-flyt-enabled] .flyt-day{height:44px;border-radius:7px}
  #booking-modal[data-flyt-enabled] .flyt-sum{min-width:78px}
  #booking-modal[data-flyt-enabled] .flyt-price{font-size:19px}
  #booking-modal[data-flyt-enabled] .k-to{grid-template-columns:minmax(0,1fr)}
  #booking-modal[data-flyt-enabled] .k-valg-kort{grid-template-columns:24px minmax(0,1fr)}
  #booking-modal[data-flyt-enabled] .k-valg-kort .k-pris{grid-column:2}
  #booking-modal[data-flyt-enabled] .addon-card.k-med-figur{grid-template-columns:24px 64px minmax(0,1fr)}
  #booking-modal[data-flyt-enabled] .addon-card.k-med-figur .k-pris{grid-column:3;text-align:left}
  #booking-modal[data-flyt-enabled] .addon-card.k-med-figur .k-pris s{display:inline;margin-right:6px}
}
@media (max-width:340px){
  #booking-modal[data-flyt-enabled] .addon-card.k-med-figur{grid-template-columns:24px 48px minmax(0,1fr)}
  #booking-modal[data-flyt-enabled] .addon-card.k-med-figur .k-figur{width:48px;height:48px}
}
@media (max-height:480px) and (orientation:landscape){
  #booking-modal[data-flyt-enabled] h2.flyt-heading{font-size:28px;margin-bottom:8px}
  #booking-modal[data-flyt-enabled] .flyt-progress{display:none}
  #booking-modal[data-flyt-enabled] .flyt-actions{padding-block:8px}
}
@media (prefers-reduced-motion:reduce){#booking-modal[data-flyt-enabled] *,#booking-modal[data-flyt-enabled] *::before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* WebKit sized the single-column grid by min-content (385px at 320px viewport): force a shrinkable column */
@media (max-width:899px){#booking-modal[data-flyt-enabled] .k-innhold{grid-template-columns:minmax(0,1fr)}}
#booking-modal[data-flyt-enabled] .k-ramme,#booking-modal[data-flyt-enabled] .k-rull{min-width:0;max-width:100%}
#booking-modal[data-flyt-enabled] .k-under{display:none}  /* native «Valgfritt.» sub-line: the add-ons intro already says all add-ons are optional */
/* date screen: the approved prototype's calendar presentation (redesign/final site.css .flyt-*), in the checkout's own tokens.
   Course day = tinted with a red dot, a day without a course = flat and muted, selected = solid red; the arrows name the previous/next month WITH courses. */
#booking-modal[data-flyt-enabled]{--k-paper:#f6f3ee;--k-mist:#ece8e1;--k-sh-red:0 6px 16px -6px #bc1c2b99}
#booking-modal[data-flyt-enabled] .flyt-selected{display:flex;align-items:center;gap:14px;margin:14px 0 8px;padding:12px 14px;border-radius:14px;background:var(--k-paper);min-height:72px;font-size:16px;color:var(--k-ink-2)}
#booking-modal[data-flyt-enabled] .flyt-selected.has-date{background:#fff;box-shadow:inset 0 0 0 1.5px var(--k-ink);color:var(--k-ink)}
#booking-modal[data-flyt-enabled] .flyt-selected p{margin:0;font-size:.95em}
#booking-modal[data-flyt-enabled] .flyt-date-stamp{display:grid;place-items:center;align-content:center;flex:none;width:52px;height:52px;border-radius:10px;background:var(--k-ink);color:#fff;line-height:1}
#booking-modal[data-flyt-enabled] .flyt-date-stamp strong{font:500 22px/1 var(--k-display)}
#booking-modal[data-flyt-enabled] .flyt-date-stamp small{font:500 11px/1 var(--k-ui);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
#booking-modal[data-flyt-enabled] .flyt-date-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
#booking-modal[data-flyt-enabled] .flyt-date-body b{font:600 16px/1.25 var(--k-ui)}
#booking-modal[data-flyt-enabled] .flyt-date-body b::first-letter,#booking-modal[data-flyt-enabled] .flyt-month::first-letter{text-transform:uppercase}
#booking-modal[data-flyt-enabled] .flyt-date-body small{font:400 14px/1.35 var(--k-ui);color:var(--k-ink-2);overflow-wrap:anywhere}
#booking-modal[data-flyt-enabled] .flyt-date-body .flyt-venue{color:var(--k-ink);font-weight:500}
#booking-modal[data-flyt-enabled] .flyt-date-tick{display:none;font-weight:700;color:var(--k-red);font-size:20px}
#booking-modal[data-flyt-enabled] .has-date .flyt-date-tick,#booking-modal[data-flyt-enabled] .flyt-daterow[aria-pressed="true"] .flyt-date-tick{display:block}
#booking-modal[data-flyt-enabled] .flyt-calendar-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:4px 0 8px}
#booking-modal[data-flyt-enabled] .flyt-month{text-align:center;font:600 18px var(--k-ui);white-space:nowrap}
#booking-modal[data-flyt-enabled] .flyt-month-arrow{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:44px;min-height:44px;width:auto;height:auto;padding:0 14px;border:0;border-radius:999px;background:var(--k-mist);font:600 15px/1 var(--k-ui);color:var(--k-ink);cursor:pointer}
#booking-modal[data-flyt-enabled] .flyt-month-arrow[data-delta="-1"]{justify-self:start}
#booking-modal[data-flyt-enabled] .flyt-month-arrow[data-delta="1"]{justify-self:end}
#booking-modal[data-flyt-enabled] .flyt-month-arrow:active{transform:scale(.96)}
#booking-modal[data-flyt-enabled] .flyt-month-arrow[hidden]{display:inline-flex;visibility:hidden}
#booking-modal[data-flyt-enabled] .flyt-month-arrow b{font-size:20px;font-weight:400;line-height:0;margin-top:-2px}
#booking-modal[data-flyt-enabled] .flyt-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
#booking-modal[data-flyt-enabled] .flyt-weekday{text-align:center;color:var(--k-ink-2);font:600 12px var(--k-ui);padding:4px 0}
#booking-modal[data-flyt-enabled] .flyt-day{position:relative;min-width:0;height:46px;padding:0 0 6px;border:0;border-radius:10px;background:#bc1c2b14;color:var(--k-ink);font:700 16px/1 var(--k-ui);font-variant-numeric:tabular-nums;cursor:pointer;box-shadow:inset 0 0 0 1px #bc1c2b33}
#booking-modal[data-flyt-enabled] .flyt-day::after{content:'';position:absolute;left:50%;bottom:7px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--k-red)}
#booking-modal[data-flyt-enabled] .flyt-day:active:not(:disabled){transform:scale(.94)}
#booking-modal[data-flyt-enabled] .flyt-day:disabled{background:transparent;box-shadow:none;border:0;color:#18272d5c;opacity:1;font-weight:400;cursor:default;padding:0}
#booking-modal[data-flyt-enabled] .flyt-day:disabled::after{content:none}
#booking-modal[data-flyt-enabled] .flyt-day[aria-pressed="true"],#booking-modal[data-flyt-enabled] .flyt-day[aria-pressed="true"]:hover:not(:disabled){background:var(--k-red);color:#fff;box-shadow:var(--k-sh-red);border:0}
#booking-modal[data-flyt-enabled] .flyt-day[aria-pressed="true"]::after{background:#fff}
#booking-modal[data-flyt-enabled] .flyt-day:hover:not(:disabled):not([aria-pressed="true"]){background:#bc1c2b24;box-shadow:inset 0 0 0 1.5px var(--k-red)}
#booking-modal[data-flyt-enabled] p.flyt-small{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;color:var(--k-ink-2)}
#booking-modal[data-flyt-enabled] p.flyt-small::before{content:'';flex:none;width:16px;height:16px;border-radius:5px;background:#bc1c2b14 radial-gradient(circle at 50% 74%,var(--k-red) 0 2px,transparent 2.5px);box-shadow:inset 0 0 0 1px #bc1c2b33}
#booking-modal[data-flyt-enabled] .flyt-listwrap{border-top:1px solid var(--k-line);margin-top:10px}
#booking-modal[data-flyt-enabled] .flyt-listsum{display:flex;align-items:center;min-height:48px;font:600 15px var(--k-ui);color:var(--k-ink);cursor:pointer;list-style:none}
#booking-modal[data-flyt-enabled] .flyt-listsum::-webkit-details-marker{display:none}
#booking-modal[data-flyt-enabled] .flyt-listsum::after{content:'';margin-left:auto;width:8px;height:8px;border:solid var(--k-ink-2);border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg)}
#booking-modal[data-flyt-enabled] .flyt-listwrap[open] .flyt-listsum::after{transform:translateY(2px) rotate(225deg)}
#booking-modal[data-flyt-enabled] .flyt-datelist{display:grid;gap:6px;margin-top:0;padding-bottom:6px}
#booking-modal[data-flyt-enabled] .flyt-daterow{display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:6px 12px;text-align:left;background:#fff;color:var(--k-ink);border:0;box-shadow:inset 0 0 0 1px var(--k-line-2);border-radius:12px;cursor:pointer}
#booking-modal[data-flyt-enabled] .flyt-daterow:active{transform:scale(.98)}
#booking-modal[data-flyt-enabled] .flyt-daterow[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--k-red);border:0;padding:6px 12px}
#booking-modal[data-flyt-enabled] .flyt-daterow:hover{box-shadow:inset 0 0 0 1.5px var(--k-ink)}
#booking-modal[data-flyt-enabled] .flyt-daterow[aria-pressed="true"]:hover{box-shadow:inset 0 0 0 2px var(--k-red)}
#booking-modal[data-flyt-enabled] .flyt-daterow .flyt-date-stamp{width:44px;height:44px}
#booking-modal[data-flyt-enabled] .flyt-daterow .flyt-date-stamp strong{font-size:19px}
@media (max-height:700px) and (max-width:899px){#booking-modal[data-flyt-enabled] .flyt-day{height:40px}#booking-modal[data-flyt-enabled] .flyt-selected{min-height:64px;margin-top:10px}}
@media (min-width:900px){#booking-modal[data-flyt-enabled] .flyt-day{height:50px}}
/* the fixed bottom bar of the date screen: total on the left, the next step on the right (prototype .cal__sum) */
#booking-modal[data-flyt-enabled] .flyt-actions{box-shadow:0 -1px 0 var(--k-line),0 -14px 24px -18px #17212640;border-top:0}
