.bk{min-height:100dvh;background:var(--bg);color:var(--ink);font-family:var(--font-ui);padding:0 var(--gutter) calc(112px + env(safe-area-inset-bottom))}.bk,.bk-top{display:flex;flex-direction:column}.bk-top{align-items:center;gap:8px;margin:0 calc(var(--gutter) * -1) 18px;padding:max(18px,env(safe-area-inset-top)) var(--gutter) 18px;background:var(--navy);border-bottom:3px solid var(--gold)}.bk-logo{display:block;border-radius:14px}.bk-top .brand-mark{height:54px;width:auto;padding:6px 10px;border-radius:12px}.bk-place{margin:0;color:var(--on-spruce-2);font-size:15px}.bk-trail{list-style:none;display:flex;gap:4px;margin:10px 0 0;padding:0;width:100%;max-width:520px}.bk-trail li{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;color:var(--on-spruce-2);font-size:12px}.bk-trail-n{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.bk-trail li[data-state=done] .bk-trail-n{background:rgba(223,172,14,.25);border-color:var(--gold);color:var(--gold)}.bk-trail li[data-state=now]{color:#fff;font-weight:700}.bk-trail li[data-state=now] .bk-trail-n{background:var(--gold);border-color:var(--gold);color:var(--navy)}.bk-trail-l{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.bk-main{width:100%;max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.bk-anchor{scroll-margin-top:0}.bk-col,.bk-flow{display:flex;flex-direction:column;gap:16px;min-width:0}.bk-head{padding:2px 2px 0}.bk-head .bk-lead{margin-bottom:4px}.bk-paywrap{width:100%;max-width:460px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.bk-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px;min-width:0}.bk-flow>.bk-card:first-child{box-shadow:var(--shadow-pop);border-color:transparent}.bk-h1{margin:0 0 6px;font-weight:700;font-size:clamp(26px,6.4vw,34px);line-height:1.15;letter-spacing:-.005em}.bk-h1,.bk-h2{font-family:var(--font-sign)}.bk-h2{margin:0 0 10px;font-weight:600;font-size:20px;line-height:1.25;color:var(--ink);padding:0}.bk-lead{margin:0 0 14px;font-size:17px;line-height:1.5;color:var(--ink-2);max-width:62ch}.bk-hint{margin:0 0 12px;font-size:15px;line-height:1.5}.bk .muted,.bk-hint{color:var(--muted)}.bk .num{font-variant-numeric:tabular-nums}.bk-notice{margin:0;padding:12px 16px;border-radius:12px;background:var(--accent-soft);color:var(--ink);font-weight:700;line-height:1.45}.bk-notice[data-tone=bad]{background:var(--bad-bg);color:var(--bad);border:1px solid var(--bad-line)}.bk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:0 22px;border-radius:12px;border:0;background:var(--accent);color:var(--on-accent);font:inherit;font-weight:700;font-size:17px;text-decoration:none;cursor:pointer}.bk-btn:hover{background:var(--accent-strong)}.bk-btn:disabled{opacity:.5;cursor:not-allowed}.bk-btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line-strong)}.bk-btn-ghost:hover{background:var(--surface-2)}.bk :focus-visible{outline:3px solid var(--gold);outline-offset:2px}.bk-edit{border:0;background:none;padding:4px 2px;margin-left:6px;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.bk-stepper{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.bk-stepper:first-child{border-top:0}.bk-stepper-text{display:flex;flex-direction:column;min-width:0}.bk-stepper-label{font-weight:700;font-size:17px}.bk-stepper-sub{color:var(--muted);font-size:14px}.bk-stepper-ctl{display:flex;align-items:center;gap:6px;flex:none}.bk-stepper-ctl button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:22px;line-height:1;cursor:pointer}.bk-stepper-ctl button:disabled{opacity:.35;cursor:not-allowed}.bk-stepper-ctl output{min-width:2ch;text-align:center;font-weight:700;font-size:19px;font-variant-numeric:tabular-nums}.bk-plan{border:0;margin:0 0 18px;padding:0;display:grid;gap:10px;min-width:0}.bk-pkg,.bk-plan label{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:14px;border:1.5px solid var(--line);cursor:pointer;min-width:0}.bk-pkg[data-on],.bk-plan label[data-on]{border-color:var(--accent);background:var(--accent-soft)}.bk-pkg input,.bk-plan input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--accent);flex:none}.bk-pkg span,.bk-plan span{display:flex;flex-direction:column;gap:2px;min-width:0}.bk-pkg small,.bk-plan small{color:var(--muted);font-size:14px;line-height:1.4}.bk-pkg[data-fits=no]{opacity:.6;cursor:not-allowed}.bk-pkgs{display:grid;gap:10px}.bk-cal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.bk-cal-head .bk-h2{margin:0}.bk-cal-nav{display:flex;gap:6px;flex:none}.bk-cal-nav button{width:44px;height:44px;border-radius:12px;border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:24px;line-height:1;cursor:pointer}.bk-cal-nav button:disabled{opacity:.35;cursor:not-allowed}.bk-cal-head+.bk-hint{margin-top:8px}.bk-cal{display:grid;gap:24px}.bk-month-name{margin:0 0 8px;font-family:var(--font-sign);font-weight:600;font-size:18px;text-align:center}.bk-days,.bk-dow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.bk-dow span{text-align:center;font-size:12px;color:var(--muted);padding-bottom:4px}.bk-day{min-height:52px;padding:4px 0;border-radius:10px;border:1.5px solid transparent;background:transparent;color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font:inherit;cursor:pointer;min-width:0}.bk-day-n{font-weight:700;font-size:16px;font-variant-numeric:tabular-nums}.bk-day-p{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.bk-day[data-open]{background:var(--surface-2);border-color:var(--line)}.bk-day[data-open] .bk-day-p{color:var(--ok);font-weight:700}.bk-day:disabled{cursor:default;color:var(--line-strong);background:transparent;border-color:transparent}.bk-day:disabled .bk-day-n{font-weight:400;text-decoration:line-through;text-decoration-color:var(--line)}.bk-day[data-state=in]{background:var(--accent-soft);border-color:transparent}.bk-day[data-state=end],.bk-day[data-state=start]{background:var(--navy);border-color:var(--navy);color:#fff}.bk-day[data-state=end] .bk-day-p,.bk-day[data-state=start] .bk-day-p{color:var(--gold)}.bk-day:not(:disabled):hover{border-color:var(--accent)}.bk-units{list-style:none;margin:0;padding:0;display:grid;gap:16px}.bk-unit{display:grid;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;min-width:0}.bk-unit-art{position:relative;aspect-ratio:2/1;background:var(--navy)}.bk-art{display:block;width:100%;height:100%}.bk-badge{position:absolute;left:12px;top:12px;padding:4px 10px;border-radius:99px;background:var(--gold);color:var(--navy);font-weight:700;font-size:14px}.bk-unit-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;min-width:0}.bk-unit-name{margin:0;font-family:var(--font-sign);font-weight:700;font-size:22px}.bk-unit-desc,.bk-unit-facts{margin:0;color:var(--ink-2);font-size:15px}.bk-unit-desc{line-height:1.5}.bk-unit-site{margin:0;color:var(--ink);font-size:14px;font-weight:600}.bk-rig{border:0;margin:18px 0 0;padding:0;display:grid;gap:12px;min-width:0}.bk-rig-needs{display:flex;flex-wrap:wrap;gap:10px 22px}.bk-deal{align-self:flex-start;padding:4px 10px;border-radius:8px;background:var(--ok-bg);color:var(--ok);font-weight:700}.bk-deal,.bk-minimum{margin:2px 0 0;font-size:14px}.bk-minimum{color:var(--ink);line-height:1.4}.bk-minimums{display:grid;gap:6px}.bk-unit-buy{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:8px;padding-top:12px;border-top:1px solid var(--line)}.bk-unit-price{margin:0;display:flex;flex-direction:column;gap:2px;min-width:0}.bk-unit-price b{font-size:20px}.bk-unit-total{color:var(--muted);font-size:14px}.bk-unit-total b{font-size:15px;color:var(--ink)}.bk-empty p{margin:0 0 12px}.bk-alts{display:grid;gap:8px}.bk-extra-toggle{display:flex;gap:14px;align-items:flex-start;cursor:pointer}.bk-extra-toggle input{width:24px;height:24px;margin-top:2px;accent-color:var(--accent);flex:none}.bk-extra-toggle span{display:flex;flex-direction:column;gap:4px}.bk-extra-toggle b{font-family:var(--font-sign);font-size:20px;font-weight:600}.bk-extra-toggle small{color:var(--muted);font-size:15px;line-height:1.45}.bk-full{margin:0;padding:12px 0;border-top:1px solid var(--line);color:var(--muted)}.bk-form,.bk-row2{display:grid;gap:14px}.bk-field{display:grid;gap:6px;min-width:0}.bk-field>span{font-weight:700;font-size:15px}.bk-field .input,.bk-field .textarea{width:100%;min-height:var(--tap);font-size:17px}.bk-check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.45;color:var(--ink-2);cursor:pointer}.bk-check input{width:22px;height:22px;margin-top:1px;accent-color:var(--accent);flex:none}.bk-accept{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);color:var(--ink);font-weight:700}.bk-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.bk-policies details{border-top:1px solid var(--line)}.bk-policies summary{min-height:var(--tap);display:flex;align-items:center;font-weight:700;cursor:pointer}.bk-policies ul{margin:0 0 12px;padding-left:20px;color:var(--ink-2);font-size:15px;line-height:1.5}.bk-cart{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px;min-width:0;align-self:start}.bk-cart-rows{margin:0 0 14px;display:grid;gap:10px}.bk-cart-rows>div{display:grid;gap:2px}.bk-cart-rows dt{color:var(--muted);font-size:14px}.bk-cart-rows dd{margin:0;font-weight:700;overflow-wrap:anywhere}.bk-lines{list-style:none;margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--line-strong);display:grid;gap:8px}.bk-lines li{display:flex;justify-content:space-between;gap:16px;font-size:15px;color:var(--ink-2)}.bk-lines li .num{color:var(--ink)}.bk-lines li[data-total]{padding-top:8px;border-top:1px solid var(--line);font-size:17px;font-weight:700;color:var(--ink)}.bk-deposit{margin-top:16px;padding:14px 16px;border-radius:14px;background:#fbf3dc;color:#0a0c2e;border:1.5px dashed var(--gold)}.bk-deposit-due{margin:0;display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-weight:700}.bk-deposit-due strong{font-family:var(--font-sign);font-size:26px}.bk-deposit-rest{margin:6px 0 0;font-size:14px;line-height:1.45;color:#373a5e}.bk-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:3px solid var(--gold);box-shadow:0 -10px 30px -12px rgba(0,0,40,.35)}.bk-bar-sum{display:flex;flex-direction:column;min-width:0;font-size:14px;color:var(--muted)}.bk-bar-sum strong{font-size:19px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-bar .bk-btn{flex:none}.bk-hold{margin:0;padding:12px 16px;border-radius:12px;background:var(--hold-bg);color:var(--hold);font-weight:700;line-height:1.45}.bk-hold[data-over]{background:var(--bad-bg);color:var(--bad)}.bk-hold a{color:inherit}.bk-off{max-width:560px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-pop)}.bk-off h1{margin:0;font-family:var(--font-sign);font-size:28px;line-height:1.2}.bk-off p{margin:0;font-size:17px;line-height:1.55;color:var(--ink-2)}.bk-off-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.bk-off-actions .bk-btn{flex:1 1 220px}.bk-spinner{width:32px;height:32px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--gold);animation:bk-spin .9s linear infinite}@keyframes bk-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.bk-spinner{animation:none}}.bk-done{max-width:640px;width:100%;margin:0 auto;background:var(--surface);border-radius:18px;padding:24px 22px;box-shadow:var(--shadow-pop)}.bk-done-head{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:18px}.bk-done-check{width:48px;height:48px;border-radius:50%;background:var(--ok-bg);border:2px solid var(--ok-line);position:relative}.bk-done-check:after{content:"";position:absolute;left:15px;top:9px;width:12px;height:22px;border:solid var(--ok);border-width:0 4px 4px 0;transform:rotate(45deg)}.bk-done h1{margin:0;font-family:var(--font-sign);font-size:clamp(28px,7vw,38px);line-height:1.1}.bk-code{margin:0;color:var(--ink-2);font-size:17px}.bk-code b{font-family:var(--font-sign);font-size:24px;letter-spacing:.06em;color:var(--ink)}.bk-done-rows{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:10px 18px}.bk-done-rows>div{display:contents}.bk-done-rows dt{color:var(--muted)}.bk-done-rows dd{margin:0;font-weight:700;overflow-wrap:anywhere}.bk-done .bk-off-actions{margin-top:18px}.bk-next{margin:0 0 14px;padding-left:22px;display:grid;gap:8px;line-height:1.5;color:var(--ink-2)}.bk-foot{max-width:640px;margin:28px auto 0;text-align:center;color:var(--muted);font-size:14px;line-height:1.5}.bk-foot p{margin:0 0 6px}.bk-foot a{color:var(--ink-2)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .bk-day[data-state=end],:root:not([data-theme=light]) .bk-day[data-state=start]{background:var(--gold);border-color:var(--gold);color:var(--navy)}:root:not([data-theme=light]) .bk-day[data-state=end] .bk-day-p,:root:not([data-theme=light]) .bk-day[data-state=start] .bk-day-p{color:var(--navy)}}@media (min-width:720px){.bk{padding-bottom:calc(100px + env(safe-area-inset-bottom))}.bk-cal{gap:32px}.bk-cal,.bk-plan,.bk-row2,.bk-units{grid-template-columns:1fr 1fr}.bk-bar{padding-left:max(var(--gutter),calc((100vw - 1100px) / 2));padding-right:max(var(--gutter),calc((100vw - 1100px) / 2))}}@media (min-width:1000px){.bk-with-cart{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.bk-with-cart .bk-cart{position:sticky;top:16px}.bk-units{grid-template-columns:repeat(3,minmax(0,1fr))}.bk-flow:has(.bk-cal){display:grid;grid-template-columns:380px minmax(0,1fr);align-items:start}.bk-flow:has(.bk-cal) .bk-plan{grid-template-columns:1fr}}