/* ============================================================
   Options.ac — shared.css
   Canonical design tokens + base styles for the multi-page site.
   Single source of truth, replacing 3 previously hand-duplicated
   copies (index.html, options-wizard.html, terms.html).
   Bump the ?v= query string on the <link> tag whenever this file
   changes (no build step means no automatic cache-busting hash).
   ============================================================ */

/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexMono-400-cyrillic-ext-348bda21.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexMono-400-cyrillic-47917937.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexMono-400-vietnamese-a24aa37e.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexMono-400-latin-ext-6b2d96d4.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexMono-400-latin-1bb1c9aa.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexMono-500-cyrillic-ext-94e59ece.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexMono-500-cyrillic-0f993ce1.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexMono-500-vietnamese-38e83b03.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexMono-500-latin-ext-17a08ac8.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexMono-500-latin-2fc8b465.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexMono-600-cyrillic-ext-f1178542.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexMono-600-cyrillic-241d9f3f.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexMono-600-vietnamese-55603e99.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexMono-600-latin-ext-4ff34e94.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexMono-600-latin-1d4a350e.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-300-cyrillic-ext-e515f864.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* hebrew */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-300-hebrew-c5ae3721.woff2") format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-300-latin-ext-5cd2912d.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-300-latin-27ccb4ca.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-400-cyrillic-ext-dfb16ece.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* hebrew */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-400-hebrew-a62db7af.woff2") format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-400-latin-ext-08a72710.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-400-latin-49cd9155.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-500-cyrillic-ext-b6b55535.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* hebrew */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-500-hebrew-472c0de3.woff2") format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-500-latin-ext-180a3ddf.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-500-latin-5afe9ce1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-600-cyrillic-ext-332d4590.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* hebrew */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-600-hebrew-6ee656f7.woff2") format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-600-latin-ext-e130c1f2.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-600-latin-c61dc060.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-700-cyrillic-ext-6db4964c.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* hebrew */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-700-hebrew-aa026e0f.woff2") format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-700-latin-ext-61518355.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Sans Hebrew';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/IBMPlexSansHebrew-700-latin-21f798ff.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ── Design tokens (canonical names — matches index.html, NOT the
   renamed set options-wizard.html used) ── */
:root{
  --bg0:#081120;--bg1:#0a1526;--bg2:#050b16;--bg3:#0e1e36;
  --line:#12203a;--line2:#1d3050;--line3:#0e1c33;
  --text:#dce4ee;--text1:#f2f6fb;--mut:#93a4bd;--fnt:#5b6c85;--dim:#3a4a63;
  --acc:#39d3c3;--accT:#081120;--gold:#f0b429;--pur:#c084fc;--up:#4ade80;--dn:#f87171;
}
.theme-light{
  --bg0:#f2f5f9;--bg1:#ffffff;--bg2:#e8edf4;--bg3:#f0f4f9;
  --line:#d9e1ec;--line2:#c2cfdf;--line3:#e4eaf2;
  --text:#1c2a42;--text1:#0d1a30;--mut:#44577a;--fnt:#7385a0;--dim:#a8b6c9;
  --acc:#39d3c3;--accT:#0d1a30;--gold:#b07d0a;--pur:#8b4fd8;--up:#15803d;--dn:#c22f2f;
}

*{box-sizing:border-box}
body{margin:0;background:var(--bg0);color:var(--text);font-family:'IBM Plex Sans Hebrew',system-ui,sans-serif}
a{color:var(--acc);text-decoration:none}
a:hover{opacity:.85}
input[type=number]{-moz-appearance:textfield}
input[type=number]::-webkit-inner-spin-button{opacity:.3}
input[type=number]:focus,input[type=text]:focus{outline:none;border-color:var(--acc) !important}
svg{direction:ltr}
/* Matches on the accent var alone (not "color:var(--acc)") since every current
   input/select usage of var(--acc) inline is for text color — this avoids the
   selector silently missing a match over an inline-style whitespace variant. */
.theme-light input[style*="var(--acc)"],.theme-light select[style*="var(--acc)"]{color:#0d1a30 !important}

@keyframes tickerPulse{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes addBtnPulse{0%,100%{box-shadow:0 0 0 0 rgba(57,211,195,.6)}50%{box-shadow:0 0 0 9px rgba(57,211,195,0)}}
.ticker-track{animation:tickerScroll 35s linear infinite}
.ticker-track:hover{animation-play-state:paused}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* FOUC-prevention failsafe: each page's inline pre-paint bootstrap script
   adds/removes html.lang-pending as it resolves the seeded language; this
   guarantees the page becomes visible even if that JS never runs. */
html.lang-pending body{visibility:hidden;animation:lang-reveal-failsafe 1.2s linear forwards}
@keyframes lang-reveal-failsafe{0%,99%{visibility:hidden}100%{visibility:visible}}

/* ── Nav bar ── */
.site-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 36px;border-bottom:1px solid var(--line);position:relative;z-index:50;gap:16px;flex-wrap:wrap}
.site-nav-links{display:flex;align-items:center;gap:4px;font-size:13.5px}
.site-nav-drop{display:none;position:absolute;top:100%;inset-inline-start:0;min-width:210px;background:var(--bg1);border:1px solid var(--line2);box-shadow:0 12px 30px rgba(0,0,0,.35);z-index:60}
.site-nav-drop.is-open{display:block}
.site-nav-burger{display:none;align-items:center;justify-content:center;cursor:pointer;padding:6px 12px;border:1px solid var(--line2);color:var(--mut);font-size:16px;line-height:1;user-select:none}

@media (max-width:860px){
  .site-nav-burger{display:flex}
  .site-nav-links{display:none !important;flex-direction:column;align-items:stretch;width:100%;order:10;gap:0;font-size:14px}
  .site-nav-links.is-open{display:flex !important}
  .site-nav-links > a{padding:12px 16px !important;border-bottom:1px solid var(--line)}
  .site-nav-menu{width:100%}
  .site-nav-toggle{width:100% !important;justify-content:space-between !important;padding:12px 16px !important;border-bottom:1px solid var(--line)}
  .site-nav-drop{position:static;box-shadow:none;border:none;border-inline-start:2px solid var(--line2)}
  .site-nav-drop.is-open{background:var(--bg2)}
  /* The account menu isn't part of the collapsible category strip above -
     it lives in the compact right-hand utility cluster alongside HE/EN and
     the theme toggle, so it keeps its normal flyout behavior on mobile
     instead of the full-width in-panel style meant for .site-nav-links. */
  #site-account-wrap{width:auto}
  #site-account-wrap .site-nav-toggle{width:auto !important;padding:5px 0 !important;border-bottom:none !important}
  #site-account-wrap .site-nav-drop{position:absolute;border:1px solid var(--line2);border-inline-start:1px solid var(--line2);box-shadow:0 12px 30px rgba(0,0,0,.35);background:var(--bg1)}
}

@media (max-width:640px){
  body{overflow-x:hidden}
  h1{font-size:30px !important}
  .site-nav{padding:12px 16px}
  .site-ticker{font-size:10px}
}

@media (max-width:420px){
  .site-nav-brand-sub{display:none}
  .site-nav-brand-title{font-size:14px !important}
}
