/* acbuybest.com — ACBuy Spreadsheet Before Take-off. Prefix bt-. */
:root{
  --paper:#F6F4EF;--card:#FFFFFF;--ink:#17212B;--body:#2D3843;--mute:#56616C;--rule:#DCD6CA;--rule2:#ECE7DD;
  --brand:#31B38C;--brand-ink:#176049;--amber:#E9A23B;--amber-ink:#8A4B00;--red-ink:#9B2C2C;--slate:#4A5563;
  --yes-bg:#E7F5EF;--no-bg:#FBEAEA;--gap-bg:#EEF0F3;--hatch:rgba(74,85,99,.16);
  --runway:repeating-linear-gradient(90deg,var(--amber) 0 26px,transparent 26px 44px);
  --f-head:"Archivo",system-ui,sans-serif;--f-body:"Public Sans",system-ui,sans-serif;--f-mono:"Red Hat Mono",ui-monospace,monospace;
  --wrap:1120px;--r:10px;
}
@media (prefers-color-scheme:dark){
  :root{--paper:#10161C;--card:#18212A;--ink:#EEF2F5;--body:#CBD3DB;--mute:#9AA6B1;--rule:#2E3A46;--rule2:#232E39;
    --brand-ink:#5ED3AE;--amber-ink:#F2B866;--red-ink:#F2928C;--slate:#B6C0CA;
    --yes-bg:#14322A;--no-bg:#3A1C1C;--gap-bg:#222B35;--hatch:rgba(182,192,202,.14)}
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--paper);color:var(--body);font:17px/1.66 var(--f-body);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand-ink);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
h1,h2,h3{font-family:var(--f-head);color:var(--ink);line-height:1.18;letter-spacing:-.012em}
h1{font-size:clamp(1.95rem,3.6vw,2.95rem);font-weight:760;margin:.2em 0 .35em;max-width:24ch}
h2{font-size:clamp(1.38rem,2.3vw,1.78rem);font-weight:720;margin:0 0 .7em;max-width:34ch}
h3{font-size:1.12rem;font-weight:700;margin:1.4em 0 .4em}
p{margin:0 0 1em}
code,.bt-mono{font-family:var(--f-mono);font-size:.92em}
.bt-skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 14px;z-index:50}
.bt-skip:focus{left:12px;top:12px}
.bt-wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}

/* header */
.bt-head{background:var(--card);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:20}
.bt-head-in{max-width:1320px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;gap:22px}
.bt-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);min-width:0;flex:0 1 auto}
.bt-logo{width:84px;height:28px;object-fit:contain}
.bt-logo-l{display:none}
@media (prefers-color-scheme:dark){.bt-logo-d{display:none}.bt-logo-l{display:block}}
.bt-brand-t{display:flex;flex-direction:column;line-height:1.1;border-left:2px solid var(--brand);padding-left:12px;min-width:0}
.bt-brand-a{font:700 .95rem/1.15 var(--f-head);white-space:nowrap}
.bt-brand-b{font:600 .78rem/1.2 var(--f-mono);color:var(--amber-ink);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.bt-nav{margin-left:auto}
.bt-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;flex-wrap:nowrap}
.bt-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:560;font-size:.93rem;white-space:nowrap}
.bt-nav a:hover{background:var(--rule2)}
.bt-nav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--amber)}
.bt-menu{display:none;margin-left:auto;min-height:44px;min-width:64px;border:1px solid var(--rule);background:var(--card);color:var(--ink);border-radius:8px;font:600 .95rem var(--f-body);cursor:pointer}
@media (max-width:1290px){
  .bt-menu{display:inline-flex;align-items:center;justify-content:center}
  .bt-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--card);border-bottom:1px solid var(--rule);padding:8px 16px 14px}
  .bt-nav.is-open{display:block}
  .bt-nav ul{flex-direction:column}
  .bt-nav a{width:100%}
}
@media (max-width:420px){.bt-brand-t{border-left:0;padding-left:0}.bt-logo{display:none!important}.bt-brand-a{font-size:.88rem}}

/* breadcrumbs */
.bt-crumbs ol{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:0 6px;font-size:.88rem;color:var(--mute)}
.bt-crumbs li+li::before{content:"/";margin-right:6px;color:var(--rule)}
.bt-crumbs a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:var(--mute)}

/* hero */
.bt-hero{padding:34px 0 30px;position:relative;background:var(--card);border-bottom:1px solid var(--rule)}
.bt-hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:4px;background:var(--runway);opacity:.9}
.bt-hero-home{padding:46px 0 38px}
.bt-lede{font-size:1.14rem;max-width:62ch;color:var(--body);margin-bottom:22px}
.bt-search{max-width:820px;background:var(--paper);border:2px solid var(--ink);border-radius:14px;padding:16px 18px 18px}
.bt-search label{display:block;font:700 .98rem var(--f-head);color:var(--ink);margin-bottom:8px}
.bt-search-row{display:flex;gap:10px}
.bt-search input[type=search]{flex:1;min-width:0;min-height:54px;border:1px solid var(--rule);border-radius:10px;padding:0 16px;font:1.02rem var(--f-body);background:var(--card);color:var(--ink)}
.bt-search button{min-height:54px;min-width:118px;border:0;border-radius:10px;background:var(--ink);color:var(--paper);font:700 1rem var(--f-head);cursor:pointer}
.bt-search button:hover{background:var(--brand-ink)}
.bt-sub{display:flex;flex-wrap:wrap;gap:4px 22px;margin-top:14px}
.bt-sub a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--ink);text-decoration:none;border-bottom:1px dashed var(--amber-ink)}
.bt-sub a::after{content:"\2192";margin-left:6px;color:var(--amber-ink)}

/* sections */
.bt-sec{padding:50px 0 46px;border-top:1px solid var(--rule2)}
.bt-sec:nth-of-type(even){background:linear-gradient(var(--card),var(--card)) padding-box}
.bt-kick{font:600 .8rem/1 var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--amber-ink);margin:0 0 10px}
.bt-prose{max-width:74ch}
.bt-prose-full{max-width:none}
.bt-prose-full>*{max-width:76ch}
.bt-prose-full>.bt-tw,.bt-prose-full>.bt-tool{max-width:none}
.bt-prose ul,.bt-prose ol{padding-left:1.25em;margin:0 0 1.1em}
.bt-prose li{margin:.3em 0}
.bt-after{margin-top:22px;max-width:none}
.bt-after>p{max-width:76ch}
.bt-pair{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:34px;align-items:stretch}
.bt-pair-l{grid-template-columns:minmax(0,55fr) minmax(0,45fr)}
.bt-pair-l>figure{order:-1}
.bt-pair-t{max-width:none}
.bt-sec .bt-wrap>figure.bt-fig{margin-top:10px}
@media (max-width:900px){.bt-pair,.bt-pair-l{grid-template-columns:1fr}.bt-pair-l>figure{order:0}}

/* figures */
.bt-fig{margin:0;background:var(--card);border:1px solid var(--rule);border-radius:var(--r);padding:12px;display:flex;flex-direction:column;gap:10px}
.bt-fig img{width:100%;height:auto;border-radius:6px}
.bt-fig figcaption{font-size:.9rem;line-height:1.5;color:var(--mute)}
.bt-fig-w{max-width:100%}
.bt-fig-s img{max-width:760px}

/* lists, steps, tables */
.bt-steps{counter-reset:s;list-style:none;padding-left:0!important}
.bt-steps>li{counter-increment:s;position:relative;padding-left:44px;margin:.65em 0}
.bt-steps>li::before{content:counter(s);position:absolute;left:0;top:.05em;width:30px;height:30px;border-radius:50%;background:var(--ink);color:var(--paper);font:700 .9rem/30px var(--f-mono);text-align:center}
.bt-tw{overflow-x:auto;margin:6px 0 18px;border:1px solid var(--rule);border-radius:var(--r);background:var(--card)}
.bt-table{border-collapse:collapse;width:100%;font-size:.95rem}
.bt-table caption{text-align:left;padding:12px 14px 4px;font:600 .9rem var(--f-head);color:var(--ink)}
.bt-table th,.bt-table td{padding:10px 14px;border-top:1px solid var(--rule2);text-align:left;vertical-align:top}
.bt-table thead th{font:600 .78rem var(--f-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--mute);background:var(--paper)}
.bt-table .bt-n{font-family:var(--f-mono);white-space:nowrap}
.bt-src{font-family:var(--f-body);font-weight:600}

/* official wording */
.bt-said{margin:14px 0 18px;padding:14px 18px 12px;border-left:5px solid var(--brand);background:var(--card);border-radius:0 var(--r) var(--r) 0}
.bt-said p{margin:0 0 6px;font-size:1.02rem;color:var(--ink)}
.bt-said footer{font-size:.86rem;color:var(--mute)}

/* verdict cards (yes / no / gap) */
.bt-vd{border:1px solid var(--rule);border-radius:var(--r);padding:14px 16px 6px;margin:12px 0;background:var(--card)}
.bt-vd-h{margin:0 0 6px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;color:var(--ink)}
.bt-chip{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;font:700 .74rem var(--f-mono);text-transform:uppercase;letter-spacing:.05em}
.bt-chip-yes{background:var(--yes-bg);color:var(--brand-ink)}
.bt-chip-no{background:var(--no-bg);color:var(--red-ink)}
.bt-chip-gap{background:repeating-linear-gradient(135deg,var(--gap-bg) 0 6px,var(--hatch) 6px 8px);color:var(--slate)}
.bt-chip-nil,.bt-chip-goods{background:var(--rule2);color:var(--ink)}
.bt-chip-wait{background:#FDF1DC;color:#7A4200}
@media (prefers-color-scheme:dark){.bt-chip-wait{background:#3A2C14;color:#F2B866}}
.bt-vd-gap{border-style:dashed}

/* category wall */
.bt-wall{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:6px}
.bt-tile{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink)}
.bt-tile img{aspect-ratio:1/1;width:100%;object-fit:cover}
.bt-tile-b{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px}
.bt-tile-n{font:700 1rem/1.25 var(--f-head)}
.bt-tile-g{font:500 .78rem/1.3 var(--f-mono);color:var(--mute)}
.bt-tile-t{font:600 .72rem/1 var(--f-mono);color:var(--amber-ink);text-transform:uppercase;letter-spacing:.06em}
.bt-tile:hover{border-color:var(--ink)}
.bt-wall-note{font-size:.92rem;color:var(--mute);max-width:80ch;margin-top:14px}
@media (max-width:900px){.bt-wall{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:620px){.bt-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}

/* ledger tool */
.bt-tool{background:var(--card);border:2px solid var(--ink);border-radius:14px;padding:22px 22px 18px;margin:8px 0 0}
.bt-tool fieldset{border:0;padding:0;margin:0 0 18px}
.bt-tool legend{font:700 1.02rem var(--f-head);color:var(--ink);margin-bottom:8px;padding:0}
.bt-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bt-opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--rule);border-radius:10px;padding:10px 12px;min-height:44px;cursor:pointer;background:var(--paper)}
.bt-opt input{margin-top:4px;width:18px;height:18px;flex:none}
.bt-opt:has(input:checked){border-color:var(--ink);box-shadow:inset 4px 0 0 var(--amber)}
.bt-lines{display:grid;gap:8px}
.bt-line{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;align-items:center;border-bottom:1px solid var(--rule2);padding:6px 0}
.bt-line label{display:flex;gap:10px;align-items:center;min-height:44px;cursor:pointer}
.bt-line input[type=checkbox]{width:18px;height:18px;flex:none}
.bt-line input[type=number]{min-height:44px;width:100%;border:1px solid var(--rule);border-radius:8px;padding:0 10px;font:1rem var(--f-mono);background:var(--paper);color:var(--ink)}
.bt-line small{display:block;color:var(--mute);font-size:.82rem}
.bt-out{margin-top:16px;border-top:2px solid var(--ink);padding-top:16px}
.bt-sum{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:10px;margin-bottom:14px}
.bt-sum div{border-radius:10px;padding:12px 14px;border:1px solid var(--rule)}
.bt-sum .s-yes{background:var(--yes-bg)}.bt-sum .s-wait{background:var(--paper)}
.bt-sum .s-gap{background:repeating-linear-gradient(135deg,var(--gap-bg) 0 8px,var(--hatch) 8px 10px)}
.bt-sum b{display:block;font:700 1.45rem/1.15 var(--f-mono);color:var(--ink)}
.bt-sum span{font-size:.84rem;color:var(--body)}
.bt-rows{list-style:none;margin:0;padding:0}
.bt-rows li{border:1px solid var(--rule);border-radius:10px;padding:10px 12px;margin:8px 0;background:var(--paper)}
.bt-rows li.r-gap{border-style:dashed}
.bt-rows q{display:block;font-style:normal;color:var(--ink);margin:6px 0 2px}
.bt-rows .r-src{font-size:.82rem;color:var(--mute)}
.bt-next{background:var(--paper);border-radius:10px;padding:12px 14px;margin-top:10px}
.bt-next ol{margin:6px 0 0;padding-left:1.2em}
.bt-reset{min-height:44px;padding:0 16px;border:1px solid var(--ink);border-radius:8px;background:transparent;color:var(--ink);font:600 .95rem var(--f-body);cursor:pointer}
@media (max-width:760px){.bt-opts{grid-template-columns:1fr}.bt-sum{grid-template-columns:1fr}.bt-line{grid-template-columns:1fr}}

/* faq */
.bt-faq details{border-top:1px solid var(--rule);padding:4px 0}
.bt-faq details:last-child{border-bottom:1px solid var(--rule)}
.bt-faq summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font:650 1.02rem var(--f-head);color:var(--ink);padding:6px 0}
.bt-faq-a{padding:0 0 10px;max-width:74ch}

/* onward block inside the last section */
.bt-onward{margin-top:30px;border:1px solid var(--rule);border-radius:var(--r);padding:16px 18px;background:var(--card);max-width:860px}
.bt-onward p{margin:0 0 6px;font-weight:600;color:var(--ink)}
.bt-onward ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 20px}
.bt-onward a{display:inline-flex;align-items:center;min-height:44px}

/* inline links get a 44px target without breaking cards */
.bt-said footer a,.bt-rows .r-src a{display:inline-flex;align-items:center;min-height:44px}

/* footer */
.bt-foot{background:var(--ink);color:#D6DDE3;margin-top:0;padding:40px 0 0}
.bt-foot a{color:#FFFFFF;display:inline-flex;align-items:center;min-height:44px}
.bt-foot-in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.bt-foot-name{font:700 1.05rem var(--f-head);color:#fff;margin-bottom:8px}
.bt-foot-h{font:600 .78rem var(--f-mono);text-transform:uppercase;letter-spacing:.07em;color:#AFC0CC;margin:0 0 4px}
.bt-foot ul{list-style:none;margin:0;padding:0}
.bt-foot-legal{border-top:1px solid #33414E;margin-top:24px;padding-top:16px;padding-bottom:26px;font-size:.86rem;color:#AFC0CC}
@media (prefers-color-scheme:dark){.bt-foot{background:#0A0F14}}
@media (max-width:820px){.bt-foot-in{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.bt-sec .bt-prose:has(.bt-tool){max-width:none}
.bt-brand{min-height:44px}.bt-foot a,.bt-nav a,.bt-sub a,.bt-onward a{min-width:44px}

/* Oct18 review: official hero, compact orientation and readable original guide images. */
.bt-hero-home{background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.96) 38%,rgba(255,255,255,.12) 78%),url('/assets/img/official-flight-hero.png?v=773a3793f0e9') center/cover no-repeat;min-height:460px;padding:48px 0 36px}
.bt-hero-home h1{max-width:19ch;font-size:clamp(2rem,4vw,3.35rem)}
.bt-hero-home .bt-lede{max-width:54ch}.bt-hero-home .bt-search{max-width:620px}
.bt-wall img{aspect-ratio:4/3}.bt-intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:24px}
.bt-intro-columns h3{margin-top:0}.bt-intro-columns+.bt-fig{max-width:1100px}
.bt-journey{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;padding-left:24px;margin:0 0 20px}.bt-journey li{padding:12px 0;border-bottom:1px solid var(--rule)}.bt-journey b,.bt-journey span{display:block}.bt-journey span{font-size:.95rem;margin-top:4px}
.bt-home-guide .bt-fig{max-width:800px}.bt-route-links{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin-bottom:24px}.bt-route-links>a{padding:18px 0;border-top:1px solid var(--rule);text-decoration:none}.bt-route-links b,.bt-route-links span{display:block}.bt-route-links span{color:var(--body);margin-top:4px}
.bt-guide-toc{display:grid;grid-template-columns:1fr 1fr;gap:6px 28px;max-width:900px}.bt-guide-toc a{min-height:44px;display:flex;align-items:center}.bt-official-step .bt-fig{margin:22px 0 0;width:fit-content;max-width:100%}.bt-official-step .bt-fig>a{display:block}.bt-official-step .bt-fig img{max-height:none;width:auto;max-width:100%}.bt-official-step .bt-fig figcaption{max-width:78ch}.bt-fig>a{min-width:0}.bt-prose{overflow-wrap:break-word}
@media(max-width:700px){.bt-hero-home{background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.93)),url('/assets/img/official-flight-hero.png?v=773a3793f0e9') 64% center/cover;min-height:0;padding:30px 0}.bt-intro-columns,.bt-journey,.bt-route-links,.bt-guide-toc{grid-template-columns:1fr}.bt-intro-columns{gap:14px}.bt-sec{padding:34px 0}.bt-guide-toc{gap:0}.bt-search{padding:12px}.bt-search button{min-width:80px}.bt-search input[type=search]{padding:0 9px;font-size:.95rem}}
@media(prefers-color-scheme:dark){.bt-hero-home{background:linear-gradient(90deg,rgba(16,22,28,.98),rgba(16,22,28,.94) 43%,rgba(16,22,28,.22)),url('/assets/img/official-flight-hero.png?v=773a3793f0e9') center/cover}.bt-fig{background:var(--card)}@media(max-width:700px){.bt-hero-home{background:linear-gradient(rgba(16,22,28,.94),rgba(16,22,28,.94)),url('/assets/img/official-flight-hero.png?v=773a3793f0e9') 64% center/cover}}}

/* Original tutorial screenshots keep their readable desktop width. */
:root{--wrap:1180px}.bt-hero-home .bt-search{max-width:660px}.bt-intro-columns+.bt-fig{max-width:none}.bt-official-step .bt-prose{max-width:none}.bt-official-step .bt-prose p{max-width:82ch}section[aria-labelledby="why-use"] .bt-pair{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}
@media(max-width:900px){section[aria-labelledby="why-use"] .bt-pair{grid-template-columns:1fr}}
