/* Phase 366 — Board Finder weather/build-style UX lock */
.boardFinderPage{background:#f5efe3;color:#0d2134}.bfPage{--bf-navy:#081a34;--bf-ink:#102133;--bf-muted:#536475;--bf-line:rgba(16,33,51,.12);--bf-warm:#f17326;--bf-cream:#fff8ec;--bf-card:#fffdf7;background:linear-gradient(180deg,#f7efe2 0%,#fffaf1 42%,#f6efe4 100%);padding:clamp(12px,2vw,24px) 0 28px}.bfPage *{box-sizing:border-box}.bfHero{padding:clamp(8px,2vw,18px) 0 8px}.bfHero__shell{display:grid;grid-template-columns:minmax(0,1.26fr) minmax(240px,.54fr);gap:12px;align-items:stretch}.bfHero__copy,.bfPulse,.bfApp,.bfFaq__card{border:1px solid var(--bf-line);border-radius:26px;background:rgba(255,255,255,.82);box-shadow:0 16px 44px rgba(16,33,51,.08)}.bfHero__copy{padding:clamp(18px,3vw,30px);display:grid;align-content:center;min-height:220px}.bfKicker{display:inline-flex;width:max-content;max-width:100%;align-items:center;gap:6px;border:1px solid rgba(241,115,38,.22);background:#fff2df;color:#a54f12;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.bfHero h1{margin:10px 0 8px;color:var(--bf-navy);font-family:"Inter Tight",Inter,system-ui,sans-serif;font-size:clamp(2.15rem,6vw,5.2rem);line-height:.89;letter-spacing:-.07em;max-width:820px}.bfHero p,.bfApp__top p,.bfPulse p{margin:0;color:var(--bf-muted);font-size:clamp(.92rem,1.4vw,1.02rem);line-height:1.45}.bfHero__actions,.bfForm__actions,.bfNext{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.bfBtn,.bfNext a{appearance:none;border:1px solid rgba(16,33,51,.14);display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 13px;border-radius:14px;font:900 13px/1 Inter,system-ui,sans-serif;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.bfBtn:hover,.bfBtn:focus-visible,.bfNext a:hover,.bfNext a:focus-visible{transform:translateY(-1px);outline:none;box-shadow:0 10px 22px rgba(16,33,51,.12)}.bfBtn--primary,.bfNext a:first-child{background:var(--bf-navy);color:#fff;border-color:var(--bf-navy)}.bfBtn--soft,.bfNext a{background:#fff6e7;color:var(--bf-navy);border-color:rgba(241,115,38,.25)}.bfBtn--ghost{background:#fff;color:var(--bf-navy)}.bfPulse{padding:16px;display:grid;align-content:center;gap:8px}.bfPulse strong{font:900 1rem/1.1 "Inter Tight",Inter,system-ui,sans-serif;color:var(--bf-navy)}.bfApp{margin-top:12px;padding:12px}.bfApp__top{display:grid;grid-template-columns:auto 1fr minmax(220px,.7fr);gap:10px;align-items:center;border:1px solid rgba(16,33,51,.1);border-radius:22px;background:#fffaf1;padding:10px 12px;margin-bottom:10px}.bfApp__top strong{font:900 clamp(1.05rem,2vw,1.35rem)/1.02 "Inter Tight",Inter,system-ui,sans-serif;color:var(--bf-navy);letter-spacing:-.035em}.bfGrid{display:grid;grid-template-columns:minmax(300px,.74fr) minmax(320px,1fr);gap:10px;align-items:start}.bfCard{border:1px solid rgba(16,33,51,.12);border-radius:22px;background:var(--bf-card);box-shadow:0 12px 30px rgba(16,33,51,.06);padding:14px}.bfCard__head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}.bfCard__head h2{margin:0;color:var(--bf-navy);font-family:"Inter Tight",Inter,system-ui,sans-serif;font-size:clamp(1.2rem,2.3vw,1.7rem);line-height:.98;letter-spacing:-.04em}.bfFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bfFields label{min-width:0;display:grid;gap:5px;padding:8px;border:1px solid rgba(16,33,51,.1);background:#fff9ed;border-radius:16px}.bfFields span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#657483;font-weight:900}.bfFields input,.bfFields select{width:100%;min-width:0;border:0;background:#fff;border-radius:12px;padding:9px 10px;font:800 14px/1.1 Inter,system-ui,sans-serif;color:var(--bf-ink);outline:1px solid rgba(16,33,51,.08)}.bfFields input:focus,.bfFields select:focus{outline:2px solid rgba(241,115,38,.5)}.bfForm__actions{margin-top:10px}.bfForm__actions .bfBtn{flex:1 1 140px}.bfNote{margin:10px 0 0;color:#627282;font-size:.84rem;line-height:1.38}.bfResult{position:sticky;top:84px;overflow:hidden;background:linear-gradient(135deg,#07192f,#12365d);color:#fff;border-color:rgba(255,255,255,.1);box-shadow:0 22px 54px rgba(8,26,52,.18)}.bfResult:focus{outline:3px solid rgba(241,115,38,.38);outline-offset:3px}.bfResult.is-fresh{animation:bfPulseIn .55s ease}@keyframes bfPulseIn{0%{transform:scale(.992);box-shadow:0 0 0 rgba(241,115,38,0)}55%{box-shadow:0 0 0 5px rgba(241,115,38,.18)}100%{transform:scale(1);box-shadow:0 22px 54px rgba(8,26,52,.18)}}.bfResult .bfKicker{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.18);color:#ffb46d}.bfResult h2{color:#fff}.bfResult__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bfResult__metrics span{display:block;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.08);padding:12px}.bfResult__metrics small{display:block;color:#cbd8e5;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.bfResult__metrics strong{display:block;margin-top:5px;font-size:clamp(1.2rem,3vw,1.7rem);letter-spacing:-.03em}.bfExplain{margin-top:8px;border:1px solid rgba(255,255,255,.12);border-radius:17px;background:rgba(255,255,255,.08);padding:10px}.bfExplain h3{margin:0 0 5px;color:#ffd19e;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.bfExplain p{margin:0;color:#eef5fb;font-size:.9rem;line-height:1.42}.bfExplain--main p{font-size:.94rem}.bfResult__mini{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bfNext{margin-top:10px}.bfNext a{flex:1 1 120px;background:#fff;color:var(--bf-navy)}.bfNext a:first-child{background:#fff0d9;color:var(--bf-navy);border-color:rgba(255,180,109,.7)}.bfFaq{margin-top:12px}.bfFaq__card{padding:14px}.bfFaq__card h2{margin:0 0 8px;color:var(--bf-navy);font-family:"Inter Tight",Inter,system-ui,sans-serif;letter-spacing:-.04em}.bfFaq details{border:1px solid rgba(16,33,51,.1);border-radius:16px;background:#fff8ec;padding:10px;margin-top:8px}.bfFaq summary{cursor:pointer;font-weight:900;color:var(--bf-navy)}.bfFaq p{margin:.5rem 0 0;color:var(--bf-muted);line-height:1.45}.homeCockpitBoardCard{border:1px solid rgba(16,33,51,.12);background:#fffaf0;border-radius:18px;padding:16px;text-decoration:none;color:var(--bf-navy)}.homeCockpitBoardCard strong{display:block}.homeCockpitBoardCard span{display:block;margin-top:5px;color:#5b6874;font-size:.92rem}.bfResultPlaceholder{opacity:.76}@media(max-width:980px){.bfHero__shell{grid-template-columns:1fr}.bfHero__copy{min-height:auto}.bfPulse{display:none}.bfApp{border-radius:22px;padding:10px}.bfApp__top{grid-template-columns:1fr;align-items:start;gap:6px;border-radius:18px}.bfGrid{grid-template-columns:1fr}.bfResult{position:relative;top:auto;order:2;border-radius:20px}.bfForm{order:1;border-radius:20px}.bfFields{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.bfCard{padding:12px}.bfCard__head{align-items:start;flex-direction:column;gap:7px}.bfHero h1{font-size:clamp(2rem,11vw,3.4rem)}.bfResult__mini{grid-template-columns:1fr}.bfPage{padding-bottom:86px}}@media(max-width:560px){.bfPage{padding-top:8px}.bfHero__copy{padding:15px;border-radius:22px}.bfHero__actions{display:grid;grid-template-columns:1fr 1fr}.bfHero__actions .bfBtn:first-child{grid-column:1/-1}.bfBtn,.bfNext a{min-height:36px;font-size:12px;border-radius:13px}.bfFields{grid-template-columns:1fr 1fr}.bfFields label{padding:7px;border-radius:14px}.bfFields input,.bfFields select{padding:8px 9px;font-size:13px}.bfResult__metrics{grid-template-columns:1fr 1fr}.bfResult__metrics span{padding:10px}.bfExplain{padding:9px}.bfNext{display:grid;grid-template-columns:1fr 1fr}.bfNext a:last-child{grid-column:1/-1}.bfFaq{display:none}}@media(max-width:380px){.bfFields{grid-template-columns:1fr}.bfHero__actions{grid-template-columns:1fr}.bfNext{grid-template-columns:1fr}.bfNext a:last-child{grid-column:auto}}[dir="rtl"] .bfPage{text-align:right}[dir="rtl"] .bfHero__actions,[dir="rtl"] .bfForm__actions,[dir="rtl"] .bfNext{direction:rtl}
/* Phase 382 — native Board Finder night completion. Logic untouched. */
html[data-theme="dark"] body.boardFinderPage,
html[data-theme="dark"] body.boardFinderPage .bfPage{background:#030708!important;color:#f6f3eb!important;}
html[data-theme="dark"] body.boardFinderPage :where(.bfHero,.bfHero__shell,.bfApp,.bfApp__top,.bfCard,.bfResult,.bfResultPlaceholder,.bfExplain,.bfFaq,.bfFaq__card,.bfNext,.bfNote,.homeCockpitBoardCard){background:#071217!important;color:#f6f3eb!important;border-color:rgba(246,243,235,.14)!important;box-shadow:none!important;}
html[data-theme="dark"] body.boardFinderPage :where(.bfFields label,.bfGrid label,.bfResult__metric,.bfResult__mini,.bfCard__head){background:#0b151a!important;color:#f6f3eb!important;border-color:rgba(143,230,210,.18)!important;}
html[data-theme="dark"] body.boardFinderPage :where(.bfFields select,.bfFields input,.bfFields textarea,.bfFields button,.bfGrid select,.bfGrid input,.bfGrid button){background:#071217!important;color:#f6f3eb!important;border-color:rgba(143,230,210,.26)!important;}
html[data-theme="dark"] body.boardFinderPage :where(.bfBtn,.bfForm__actions button,.bfHero__actions a){background:#0b151a!important;color:#f6f3eb!important;border-color:rgba(143,230,210,.22)!important;min-height:44px!important;}
html[data-theme="dark"] body.boardFinderPage :where(.bfBtn--primary,.bfBtn.primary,.bfForm__actions .primary){background:linear-gradient(135deg,#16aaa3,#8fe6d2)!important;color:#031316!important;border-color:rgba(143,230,210,.7)!important;}
html[data-theme="dark"] body.boardFinderPage :where(h1,h2,h3,strong,b,.bfResult__metrics strong){color:#f6f3eb!important;}
html[data-theme="dark"] body.boardFinderPage :where(p,small,span,label,.bfHero__copy p,.bfKicker,.bfResult__metrics span){color:#b9c4c5!important;}

/* Phase 388 — native route-family night surface/control finish. */
html[data-theme="dark"] body :where(.bfCard,.bfPanel,.bfForm,.thingsDecisionBoard,.thingsPlanCard,.thingsCard,.flightCockpit,.flightDecisionCard,.flightPanel,.oceanLockPanel,.surfSmartHero,.surfSmartPanel,.surfSmartResult,.surfSmartDeck>*,.surfSmartCarousel>*,.localCard,.entityCard,.articleCard,.topicCard,.guideCard,.rootAppCard,.editorialCard,.moneyCard,.offerCard,.hcPanel,.hcHero,.tgz268HeroCard,.tgz268Section){background:linear-gradient(180deg,rgba(15,43,57,.96),rgba(7,23,32,.98))!important;color:#edf7f5!important;border-color:rgba(151,230,214,.22)!important}
html[data-theme="dark"] body :where(.bfBtn,.thingsBtn,.flightBtn,.flightMiniBtn,.flightMiniLink,.flightChip,.flightCityChip,.oceanLockButton,.surfSmartBtn,.surfPhase356Link,.hcBtn,.tgzCommercialIntentBtn,.tgzStayMoneyBtn){background:linear-gradient(135deg,rgba(22,66,86,.95),rgba(15,43,57,.98))!important;color:#ecfaf7!important;border-color:rgba(151,230,214,.26)!important}
html[data-theme="dark"] body :where(.bfBtn.primary,.thingsBtn.primary,.flightBtn.primary,.surfSmartBtn.primary,.surfPhase356Link.primary,.hcBtnPrimary,.tgzCommercialIntentBtn--quote,.tgzStayMoneyBtn.is-primary){background:linear-gradient(135deg,#24c8b8,#b5f4dc)!important;color:#031719!important;border-color:rgba(181,244,220,.72)!important}
html[data-theme="dark"] body :where(.flightChip:nth-child(2n),.flightCityChip:nth-child(2n),.thingsBtn:nth-child(2n),.surfSmartBtn:nth-child(2n)){background:linear-gradient(135deg,rgba(38,82,117,.92),rgba(82,64,132,.70))!important;border-color:rgba(137,171,255,.30)!important}


/* Phase 389 — app spacing + native route finish. Reduces wasted space and adds richer Atlantic button grammar without touching app engines. */
html[data-theme="dark"] body{--tgz389-page:#061014;--tgz389-surface:#0a1820;--tgz389-surface2:#0f2634;--tgz389-line:rgba(160,235,222,.18);--tgz389-text:#f3fff9;--tgz389-muted:#aac3c4;--tgz389-teal:#23c7b7;--tgz389-mint:#aef5de;--tgz389-blue:#69a8ff;--tgz389-violet:#b79cff;--tgz389-copper:#d99a42;--tgz389-sand:#e9d7b4}
html[data-theme="dark"] body :where(.btn,.button,a.btn,button,.cleanSoftBtn,.cleanActionBtn,.cleanDockBtn,.quoteMiniAction,.quoteSectionAction,.weatherHeroActions .btn,.weatherSegment button,.weatherHourlyModes button,.weatherSpotSheetTab,.bfBtn,.thingsBtn,.flightBtn,.flightMiniBtn,.oceanLockButton,.surfSmartBtn,.tioFooterV4__action,.bottomQuickNav a){border-color:rgba(160,235,222,.24);box-shadow:none;text-align:center;align-items:center;justify-content:center;white-space:normal;line-height:1.12;transition:transform .15s ease,filter .15s ease,border-color .15s ease,background .15s ease}
html[data-theme="dark"] body :where(.btn,.button,a.btn,.cleanSoftBtn,.quoteMiniAction,.weatherHeroActions .btn.secondary,.bfBtn.secondary,.flightMiniBtn,.flightMiniLink,.thingsBtn.secondary,.oceanLockButton.secondary){background:linear-gradient(135deg,rgba(16,42,56,.96),rgba(10,29,40,.98));color:#effff9;border-color:rgba(105,168,255,.28)}
html[data-theme="dark"] body :where(.btn.primary,.primary,.is-primary,.cleanPrimary,.cleanDockBtn.cleanPrimary,.weatherHeroActions .btn.primary,.weatherSegment button.is-active,.weatherHourlyModes button.is-active,.bfBtn.primary,.thingsBtn.primary,.flightBtn.primary,.oceanLockButton.primary,button[type="submit"]){background:linear-gradient(135deg,#23c7b7,#aef5de);color:#031719;border-color:rgba(174,245,222,.72)}
html[data-theme="dark"] body :where(.btn:nth-of-type(3n),.cleanSoftBtn:nth-of-type(3n),.weatherHeroActions .btn:nth-of-type(3n),.bfBtn:nth-of-type(3n),.thingsBtn:nth-of-type(3n),.flightMiniBtn:nth-of-type(3n)){background:linear-gradient(135deg,rgba(105,168,255,.28),rgba(183,156,255,.18));border-color:rgba(105,168,255,.34);color:#f3f8ff}
html[data-theme="dark"] body :where(.btn:nth-of-type(4n),.cleanSoftBtn:nth-of-type(4n),.weatherHeroActions .btn:nth-of-type(4n),.bfBtn:nth-of-type(4n),.thingsBtn:nth-of-type(4n),.flightMiniBtn:nth-of-type(4n)){background:linear-gradient(135deg,rgba(217,154,66,.30),rgba(233,215,180,.12));border-color:rgba(217,154,66,.40);color:#fff4df}
html[data-theme="dark"] body :where(.btn:hover,.button:hover,a.btn:hover,button:hover,.cleanSoftBtn:hover,.cleanActionBtn:hover,.weatherHeroActions .btn:hover,.bfBtn:hover,.thingsBtn:hover,.flightBtn:hover,.oceanLockButton:hover){filter:brightness(1.06);transform:translateY(-1px)}
@media (max-width:760px){body :where(main,.buildCleanMain,.weatherFinalApp,.surfSmartApp,.bfApp,.thingsApp,.flightCockpit,.oceanLockApp){--tgz-route-gap:12px}body :where(.container,.buildCleanShell,.weatherFinalApp,.surfSmartShell,.bfShell,.thingsShell,.flightShell,.oceanLockShell){padding-left:12px;padding-right:12px}body :where(.buildCleanHero,.cleanStep,.cleanStayPanel,.weatherHero,.weatherNowCard,.weatherBoard,.weatherSpotMatrix,.bfPanel,.bfCard,.thingsDecisionBoard,.thingsPlanCard,.thingsCard,.flightDecisionCard,.flightPanel,.oceanLockPanel,.surfSmartPanel,.surfSmartResult,.localCard,.entityCard,.articleCard,.topicCard,.guideCard,.siteIndexCard){border-radius:20px;padding:14px;gap:10px}body :where(.buildCleanHero h1,.weatherHero h1,.bfHero h1,.thingsHero h1,.flightHero h1,.oceanLockHero h1){font-size:clamp(28px,8.8vw,42px);line-height:.95;margin-bottom:8px}body :where(.cleanModeGrid,.cleanBookingGrid,.guestCounterGrid,.activityCards,.weatherMetricGrid,.weatherSpotSheetGrid,.bfGrid,.thingsGrid,.flightGrid){gap:9px}}


/* Phase 393 — native density + lively Atlantic controls. */
html[data-theme="dark"] body :where(.btn,.button,button.cleanSoftBtn,button.cleanActionBtn,a.cleanSoftBtn,a.cleanActionBtn,.chip,.tab,.pill,.routeChip,.menuTreeChip,.weatherSpotSheetItem,.tgz393Route){
  min-width:0;
  overflow-wrap:anywhere;
  text-wrap:balance;
}
html[data-theme="dark"] body :where(.btn.secondary,.button.secondary,.chip,.tab,.pill,.routeChip,.menuTreeChip):not(.is-active):not([aria-current="page"]){
  background:linear-gradient(135deg,rgba(15,45,58,.94),rgba(8,28,38,.98));
  border-color:rgba(105,168,255,.24);
  color:#edfdf8;
}
html[data-theme="dark"] body :where(.btn.primary,.button.primary,.is-active,[aria-current="page"]):not(.tgz393Brand){
  background:linear-gradient(135deg,var(--tgz393-teal,#23c7b7),var(--tgz393-mint,#aef5de));
  border-color:rgba(174,245,222,.62);
  color:#031719;
}
html[data-theme="dark"] body :where(.btn.secondary:hover,.button.secondary:hover,.chip:hover,.tab:hover,.pill:hover,.routeChip:hover,.menuTreeChip:hover){
  border-color:rgba(174,245,222,.42);
  background:linear-gradient(135deg,rgba(22,63,78,.98),rgba(10,35,47,.98));
}
@media(max-width:780px){
  body :where(main .section,main section,.appSection,.weatherSection,.buildStep,.surfAppSection,.routeSection){
    padding-top:clamp(10px,3.4vw,18px)!important;
    padding-bottom:clamp(10px,3.4vw,18px)!important;
  }
  body :where(main .container,main .wrap,main .shell,.appShell,.weatherShell,.buildShell){
    padding-left:clamp(12px,3.6vw,18px)!important;
    padding-right:clamp(12px,3.6vw,18px)!important;
  }
  body :where(.cards,.grid,.appGrid,.weatherGrid,.buildGrid,.spotGrid,.routeGrid,.proofGrid,.linkGrid,.buttonGrid,.btnRow){
    gap:clamp(7px,2.4vw,12px)!important;
  }
  body :where(.card,.panel,.appCard,.weatherCard,.buildCard,.spotCard,.routeCard,.proofCard,.faq details){
    border-radius:clamp(16px,4.2vw,22px)!important;
  }
  body :where(.btn,.button,button.cleanSoftBtn,button.cleanActionBtn,a.cleanSoftBtn,a.cleanActionBtn,.chip,.tab,.pill,.routeChip,.menuTreeChip){
    min-height:38px!important;
    padding-block:clamp(7px,2vw,10px)!important;
    padding-inline:clamp(9px,2.8vw,13px)!important;
    line-height:1.15!important;
    justify-content:center!important;
    text-align:center!important;
  }
}
/* TGZ_PHASE_393_NATIVE_DENSITY_LOCK */

/* Phase 398F — Board Finder native whitespace/button polish. Recommendation engine untouched. */
.bfPage{--bf-398f-gap:var(--tgz-ui-density-gap,10px);--bf-398f-pad:var(--tgz-ui-density-card-pad,12px)}
.bfHero__shell,.bfGrid,.bfFields,.bfResult__metrics,.bfResult__mini,.bfHero__actions,.bfForm__actions,.bfNext{gap:8px}.bfHero__copy,.bfPulse,.bfApp,.bfFaq__card,.bfCard,.bfResult{padding:min(var(--bf-398f-pad),14px)}
.bfBtn,.bfNext a{min-height:var(--tgz-ui-control-min,38px);padding:8px 11px;border-radius:14px;text-align:center;white-space:normal;line-height:1.12}.bfHero__actions,.bfForm__actions,.bfNext{margin-top:10px}.bfApp{margin-top:10px}.bfNote,.bfExplain p,.bfFaq p{line-height:1.34}.bfFields label{padding:7px}.bfFields input,.bfFields select{padding:8px 9px}
@media(max-width:760px){.bfPage{padding-top:8px}.bfHero__copy,.bfApp,.bfFaq__card,.bfCard,.bfResult{padding:10px;border-radius:18px}.bfBtn,.bfNext a{min-height:36px;padding:8px 10px;font-size:.8rem}.bfFields{gap:7px}}
