/* Public booking: the step bar (summary + Tilbake/Neste) sticks to the very bottom with safe-area padding,
   has its own surface (white + top border + shadow; dark: ink #1C1C1C with white text) and a solid teal «Neste». */
body[data-spk-public] .bbk__nav{position:sticky!important;bottom:0!important;z-index:30!important;display:flex;align-items:center;gap:12px;
  margin:24px -16px 0!important;padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;
  background:#fff!important;color:#1C1C1C!important;border:0!important;border-top:1px solid #e2e2de!important;box-shadow:0 -8px 24px rgba(28,28,28,.10)!important;border-radius:0!important}
body[data-spk-public] .bbk__navsum b,body[data-spk-public] .bbk__navsum span{color:inherit!important}
body[data-spk-public] .bbk__nav .bbk__btn--primary,body[data-spk-public] .bbk__nav [data-next]{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:132px;padding:0 24px!important;
  background:#0d4a57!important;color:#fff!important;border:0!important;border-radius:12px!important;font-weight:600!important;font-size:16px!important;box-shadow:0 2px 8px rgba(13,74,87,.28)!important;text-decoration:none}
body[data-spk-public] .bbk__nav .bbk__btn--primary:active,body[data-spk-public] .bbk__nav [data-next]:active{background:#093843!important}
body[data-spk-public] .bbk__nav .bbk__btn--primary:disabled,body[data-spk-public] .bbk__nav [data-next]:disabled{opacity:.45}
body[data-spk-public] .bbk__nav .bbk__btn--ghost{min-height:48px;padding:0 14px!important;background:transparent!important;color:#0d4a57!important;border:1px solid #cfd8da!important;border-radius:12px!important}
html[data-theme="dark"] body[data-spk-public] .bbk__nav{background:#3a4346!important;color:#fff!important;border-top-color:rgba(255,255,255,.14)!important;box-shadow:0 -8px 24px rgba(0,0,0,.45)!important}
html[data-theme="dark"] body[data-spk-public] .bbk__nav .bbk__btn--ghost{color:#a5e8fd!important;border-color:rgba(255,255,255,.22)!important}
body[data-spk-public] .bbk__nav [hidden]{display:none!important}
body[data-spk-public] .bbk__navsum{flex:1 1 auto;min-width:0;white-space:nowrap}
body[data-spk-public] .bbk__navsum span{font-size:17px!important}

/* compact: one ~64px row + safe area, everything on one line */
body[data-spk-public] .bbk__nav{gap:8px!important;min-height:64px;box-sizing:border-box;padding:8px 12px max(8px, env(safe-area-inset-bottom))!important;margin-bottom:0!important;flex-wrap:nowrap!important}
body[data-spk-public] .bbk__navsum{flex:1 1 auto!important;min-width:64px;overflow:hidden;line-height:1.15!important}
body[data-spk-public] .bbk__navsum b{font-size:12px!important;font-weight:500!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body[data-spk-public] .bbk__navsum span{font-size:16px!important;font-weight:700!important;white-space:nowrap}
body[data-spk-public] .bbk__nav .bbk__btn--primary,body[data-spk-public] .bbk__nav [data-next]{flex:0 0 auto;min-height:48px!important;height:48px;min-width:0!important;padding:0 18px!important;white-space:nowrap!important;font-size:16px!important;line-height:1!important}
body[data-spk-public] .bbk__nav .bbk__btn--ghost{flex:0 0 auto;min-height:40px!important;height:40px;padding:0 12px!important;font-size:14px!important;white-space:nowrap}
body[data-spk-public] form,body[data-spk-public] .bbk__form{padding-bottom:0!important;margin-bottom:0!important}
/* pinned to the screen bottom (sticky ended at the form and left an empty area under the bar on the last step) */
body[data-spk-public] .bbk__nav{position:fixed!important;left:0!important;right:0!important;bottom:0!important;margin:0!important;max-width:none!important;width:auto!important}
body[data-spk-public] .bbk__nav[hidden]{display:none!important}
body[data-spk-public]{padding-bottom:calc(72px + env(safe-area-inset-bottom))!important}
@media (min-width:720px){body[data-spk-public] .bbk__nav{padding-left:max(12px,calc((100vw - 680px)/2))!important;padding-right:max(12px,calc((100vw - 680px)/2))!important}}
html[data-theme="dark"] body[data-spk-public] .bbk__nav .bbk__btn--primary,html[data-theme="dark"] body[data-spk-public] .bbk__nav [data-next]{background:#A5E8FD!important;color:#0B1F26!important;box-shadow:none!important}
/* slim service rows */
body[data-spk-public] .bbk__card{grid-template-columns:34px minmax(0,1fr) auto 28px 22px!important;grid-template-areas:"i b p n c" "q q q q q" "d d d d d"!important;column-gap:6px!important;min-height:60px!important;padding:10px 12px!important;box-sizing:border-box;max-width:100%}
body[data-spk-public] .bbk__card .bbk__desc,body[data-spk-public] .bbk__card .bbk__short{display:none!important}
body[data-spk-public] .bbk__card .bbk__cbody{grid-area:b;min-width:0}
body[data-spk-public] .bbk__card .bbk__card-title{display:block;font-size:15px!important;line-height:1.25;font-weight:600;overflow-wrap:normal;hyphens:auto}
body[data-spk-public] .bbk__card .bbk__ico{flex:0 0 auto;width:34px!important;height:34px!important}
body[data-spk-public] .bbk__card .bbk__card-price{grid-area:p;margin:0!important;padding:3px 8px!important;font-size:14px!important;position:static!important;transform:none!important;white-space:nowrap;font-weight:600}
body[data-spk-public] .bbk__card .bbk__card-price small{font-size:12px;font-weight:500;opacity:.8}
body[data-spk-public] .bbk__card .bbk__check{grid-area:c;position:static!important;margin:0!important;align-self:center}
body[data-spk-public] .bbk__card .spk-bi{grid-area:n}
body[data-spk-public] .bbk__card .bbk__ico{grid-area:i}
.spk-bi{display:inline-grid;place-items:center;width:28px;height:28px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:#4c5f65;cursor:pointer}
.spk-bi:hover,.spk-bi:focus-visible{background:rgba(13,74,87,.08);color:#0d4a57}.spk-bi:focus-visible{outline:2px solid #0d4a57;outline-offset:1px}
html[data-theme="dark"] .spk-bi{color:#9db4ba}html[data-theme="dark"] .spk-bi:hover{color:#a5e8fd;background:rgba(165,232,253,.1)}
/* estimated price note */
.spk-estnote{display:flex;flex-direction:column;gap:2px;margin:12px 0;padding:10px 12px;border-radius:12px;background:#F7E7C6;color:#0b1f26;font-size:14px;line-height:1.4}
.spk-estnote b{font-size:14px;font-weight:600}
html[data-theme="dark"] .spk-estnote{background:#3d474a;color:#edf7f9}
/* details sheet */
.spk-bsheet{position:fixed;inset:0;z-index:2147483000}
.spk-bsheet__bd{position:absolute;inset:0;background:rgba(11,31,38,.4);opacity:0;transition:opacity .2s}
.spk-bsheet__p{position:absolute;left:0;right:0;bottom:0;max-height:80vh;overflow:auto;padding:6px 18px calc(18px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;background:#fff;color:#0b1f26;transform:translateY(100%);transition:transform .25s cubic-bezier(.32,.72,0,1);outline:none}
.spk-bsheet.on .spk-bsheet__bd{opacity:1}.spk-bsheet.on .spk-bsheet__p{transform:none}
.spk-bsheet__g{width:36px;height:5px;margin:4px auto 8px;border-radius:3px;background:rgba(60,67,70,.25)}
.spk-bsheet__h{display:flex;align-items:center;gap:8px}.spk-bsheet__h h3{flex:1;margin:0;font-size:18px}
.spk-bsheet__x{width:36px;height:36px;border:0;border-radius:50%;background:#eef1f1;color:inherit;cursor:pointer}
.spk-bsheet__p p{margin:10px 0;font-size:15px;line-height:1.45}.spk-bsheet__m{color:#4c5f65}
.spk-bsheet__pr{display:flex;justify-content:space-between;padding-top:10px;border-top:1px solid #e2e5e3}
@media (min-width:720px){.spk-bsheet__p{left:50%;right:auto;bottom:auto;top:50%;width:440px;border-radius:16px;transform:translate(-50%,-40%);opacity:0;transition:transform .2s,opacity .2s}.spk-bsheet.on .spk-bsheet__p{transform:translate(-50%,-50%);opacity:1}}
html[data-theme="dark"] .spk-bsheet__p{background:#2f3638;color:#edf7f9}html[data-theme="dark"] .spk-bsheet__x{background:#3d474a}html[data-theme="dark"] .spk-bsheet__m{color:#9db4ba}html[data-theme="dark"] .spk-bsheet__pr{border-color:#3d474a}
body[data-spk-public] .bbk__navsum b[data-est]::after{content:" · " attr(data-est);font-weight:500}

body[data-spk-public] .bbk__card .bbk__check{width:22px!important;height:22px!important}
/* voice «Snakk inn» button: compact right-aligned pill on >600px, full width only on phones (desktop-ios worker 23:20) */
@media (min-width:601px){.blv-vc{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px}.blv-vc .blv-vc__b{width:auto!important;min-height:40px!important;padding:0 16px!important;border-width:1px!important;font-size:14px!important;gap:8px!important}.blv-vc .blv-vc__b svg{width:16px;height:16px}.blv-vc .blv-vc__hint{flex-basis:100%;text-align:right;font-size:12px;opacity:.75}}
