/* SafeRouter product system. Same palette and navigation as the public homepage.
   Page-specific layout and application state remain owned by each product.
   Editorial content uses these foundations; dense product surfaces add family styles. */
:root, :root[data-theme="light"] {
  --font-sans: "Inter", "Noto Sans SC", system-ui, sans-serif;
  --bg:#f6f5f1; --bg-solid:#f6f5f1; --panel-bg:#fff; --card-bg:#fff;
  --bg-elevated:#fff; --bg-elevated-2:#eeede8; --bg-elevated-3:#e7e6df; --bg-hover:#eeede8;
  --fg:#1c222b; --ink:#1c222b; --fg-muted:#565d66; --fg-dim:#646b74; --fg-deep:#b7b9b4;
  --accent:#244bea; --accent-fg:#244bea; --accent-dim:#2546be; --label:#565d66;
  --accent-rgb:36,75,234; --accent-dim-rgb:37,70,190; --accent-tint:#e9edff; --accent-glow:transparent;
  --border:#d9dad4; --border-strong:#c7cac6; --border-hover:#244bea; --on-accent:#fff;
  --inset:#eeede8; --scanline:transparent;
  --ok:#16734d; --ok-fg:#16734d; --verified:#16734d; --success:#16734d;
  --warn:#87520c; --warn-fg:#87520c; --warning:#87520c; --warn-tint:#fff4df; --warn-glow:transparent;
  --error:#ba3038; --error-fg:#ba3038; --err:#ba3038; --error-tint:#fff0f0; --error-glow:transparent;
  --tag-blue:#244bea; --tag-violet:#6b46b1; --tag-cyan:#08708a; --tag-mint:#16734d; --tag-amber:#87520c; --tag-amber-soft:#87520c;
  --user-bubble:#e9edff; --r-sm:4px; --r-md:6px; --r-lg:10px; --r-xl:12px; --r-2xl:14px;
}
:root:not([data-theme="light"]) {
  --bg:#10141c; --bg-solid:#10141c; --panel-bg:#191f2a; --card-bg:#191f2a;
  --bg-elevated:#191f2a; --bg-elevated-2:#202734; --bg-elevated-3:#2c3442; --bg-hover:#202734;
  --fg:#f1f2ed; --ink:#f1f2ed; --fg-muted:#b1b8c5; --fg-dim:#9fa8b9; --fg-deep:#525d6e;
  --accent:#a6b8ff; --accent-fg:#a6b8ff; --accent-dim:#a6b8ff; --label:#b1b8c5;
  --accent-rgb:166,184,255; --accent-dim-rgb:166,184,255; --accent-tint:#202d53;
  --border:#333b48; --border-strong:#444f61; --border-hover:#a6b8ff; --on-accent:#10141c;
  --inset:#10141c; --ok:#7fdbaf; --ok-fg:#7fdbaf; --verified:#7fdbaf; --success:#7fdbaf;
  --warn:#f3c77d; --warn-fg:#f3c77d; --warning:#f3c77d; --warn-tint:#342817;
  --error:#ff9b9b; --error-fg:#ff9b9b; --err:#ff9b9b; --error-tint:#35232a;
  --tag-blue:#a6b8ff; --tag-violet:#c8b3ff; --tag-cyan:#8cd8e6; --tag-mint:#7fdbaf; --tag-amber:#f3c77d; --tag-amber-soft:#f3c77d;
  --user-bubble:#202d53;
}
html {scroll-padding-top:110px;}
body.sr-product {background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased;}
body.sr-product::before, body.sr-product::after {display:none!important;}
.sr-product :is(.lg-ambient,.ambient,.nav-glider) {display:none!important;}
.sr-product * {box-sizing:border-box;text-shadow:none!important;}
.sr-product :is(h1,h2,h3,h4,button,input,textarea,select,label,dt,dd,th,td,.btn,.button,.sub,.subtitle,.preline,.acct-side-link,.hero-title,.empty-state) {font-family:var(--font-sans)!important;}
.sr-product :is(code,pre,kbd,samp,.hash,.mono) {font-family:var(--font-mono)!important;}
.sr-product a {text-underline-offset:4px;}
.sr-product :is(button,a,input,select,textarea):focus-visible {outline:3px solid var(--accent)!important;outline-offset:3px;}
.sr-product :is(button,.btn,.button) {transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;cursor:pointer;}
.sr-product button:disabled {cursor:not-allowed;}
.sr-product :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {border-radius:6px!important;background:var(--panel-bg);color:var(--fg);border-color:var(--border-strong);font-size:14px;max-width:100%;}
.sr-product :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select) {min-height:42px;}
.sr-product input::placeholder,.sr-product textarea::placeholder {color:var(--fg-dim);opacity:1;}
.sr-product input[type="checkbox"],.sr-product input[type="radio"] {accent-color:var(--accent);}
.sr-product :is(.btn,.button,.term-btn,.filter-chip,.drawer-chip,.picker-pill) {border-radius:6px!important;min-height:38px;letter-spacing:0;}
.sr-product :is(.btn.primary,.btn-primary,.term-btn.primary,.send-btn,.submit-btn) {background:var(--accent);color:var(--on-accent);border-color:var(--accent);box-shadow:none;}
.sr-product :is(.panel,.card,.stat-card,.prompt-card,.lane,.col,form.term-form,.drawer,.modal,.modal-card,.acct-pop,.dropdown) {border-radius:10px!important;border-color:var(--border);box-shadow:none;}
.sr-product :is(.panel,.card,.stat-card,form.term-form) {background:var(--panel-bg);}
.sr-product :is(.panel[data-label],form.term-form) {padding-top:2.5rem;}
.sr-product :is(.panel[data-label],.card[data-label])::before {content:attr(data-label)!important;top:12px!important;left:22px!important;background:transparent!important;border:0!important;padding:0!important;font-family:var(--font-sans)!important;font-size:11px!important;letter-spacing:.04em!important;color:var(--fg-muted)!important;}
.sr-product form.term-form::before {display:none;}
.sr-product label::before {content:none!important;}
.sr-product :is(.pre,.preline,.eyebrow,.acct-side-title) {font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;color:var(--fg-muted);}
/* One navigation system, retaining existing auth, theme and mobile controllers. */
body.sr-product nav.top {padding:19px 36px;min-height:78px;background:var(--bg)!important;border-bottom:1px solid var(--border);gap:16px;backdrop-filter:none;border-radius:0;flex-shrink:0;}
.sr-product nav.top .brand {font-family:var(--font-sans);font-size:16px;letter-spacing:-.04em;}
.sr-product nav.top .brand .sp-product {color:var(--fg);font-weight:600;}
.sr-product nav.top .brand::after {color:var(--fg-muted);border:1px solid var(--border);font-size:9px;letter-spacing:.03em;padding:4px;border-radius:4px;}
.sr-product nav.top .links {font-family:var(--font-sans);font-size:12px;gap:10px;align-items:center;}
.sr-product nav.top .links :is(a,.nav-trigger) {font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--fg);}
.sr-product nav.top .links .nav-trigger {font-size:12px;padding:8px 10px;min-height:36px;}
.sr-product nav.top .links :is(a.active,.nav-trigger.active) {color:var(--accent);}
.sr-product nav.top .links .nav-dropdown {background:var(--panel-bg);border-color:var(--border);border-radius:6px;box-shadow:0 12px 32px #0001;backdrop-filter:none;}
.sr-product nav.top .links .nav-dropdown a {font-size:13px;min-height:40px;}
.sr-product nav.top .links .nav-social {display:none;}
.sr-product nav.top .theme-toggle {border-color:var(--border);border-radius:50%;width:34px;height:34px;min-width:34px;min-height:34px;}
.sr-product .announce-bar {background:var(--bg-elevated-2);border-color:var(--border);font-family:var(--font-sans);color:var(--fg-muted);}
/* Editorial headings and intentional page spacing. */
.sr-product main:not(.acct-shell) {padding-top:48px;padding-bottom:64px;}
.sr-product :is(header.hero,.hero) h1,.sr-product main>header h1 {font-size:clamp(32px,4vw,56px);font-weight:500;letter-spacing:-.055em;line-height:1.1;color:var(--fg);margin-bottom:16px;}
.sr-product h2 {letter-spacing:-.03em;font-weight:550;line-height:1.3;}
.sr-product h3 {letter-spacing:-.02em;line-height:1.4;}
.sr-product :is(header.hero p,.hero p.sub,header .sub) {font-size:15px;line-height:1.8;color:var(--fg-muted);max-width:66ch;}
.sr-product :is(main,.wrap-grid,.acct-body,.chat-shell,.drawer-body,.panel,.lane) {min-width:0;}
.sr-product pre {max-width:100%;overflow-x:auto;background:var(--bg-elevated-2);border-radius:6px;}
.sr-product :is(.table-wrap,.table-scroll,.usage-table-wrap) {max-width:100%;overflow-x:auto;}
.sr-product th {color:var(--fg-muted);font-weight:500;font-size:11px;letter-spacing:.025em;}
.sr-product td {font-size:13px;}
.sr-product tbody tr:hover {background:var(--bg-elevated-2);}
.sr-product footer {color:var(--fg-muted);border-color:var(--border);font-family:var(--font-sans);font-size:12px;}
/* Account navigation is quiet infrastructure, the selected section is blue. */
.sr-product main.acct-shell {max-width:1360px;padding:48px 36px 72px;grid-template-columns:200px minmax(0,1fr);gap:48px;}
.sr-product .acct-side {background:transparent;border:0;padding:0;border-radius:0;top:100px;}
.sr-product .acct-side-title {padding:0 12px 14px;border-bottom:1px solid var(--border);margin-bottom:12px;}
.sr-product .acct-side-link {padding:11px 12px;min-height:44px;border-radius:4px;font-size:13px;gap:8px;}
.sr-product .acct-side-link .prompt {display:none;}
.sr-product .acct-side-link.active {background:var(--accent-tint);border-left-color:var(--accent);color:var(--accent);}
.sr-product .acct-body .hero h1 {font-size:40px;}
.sr-product .kv {font-family:var(--font-sans);font-size:14px;line-height:1.7;}
.sr-product .kv dt::after {content:none;}
/* Catalog: spacious, scan-friendly rows, compact factual labels. */
.sr-models .controls {padding:20px 0;border-block:1px solid var(--border);gap:12px;}
.sr-models .filter-chip {padding:8px 12px;background:transparent;}
.sr-models .filter-chip.active {background:var(--accent-tint);color:var(--accent);border-color:transparent;}
.sr-models .model-row {border-radius:0!important;box-shadow:none!important;padding-block:20px;}
.sr-models .list-head {font-family:var(--font-sans);color:var(--fg-muted);}
/* Chat is a working canvas, not a marketing layout. */
body.sr-chat {height:100dvh;min-height:0;overflow:hidden;}
.sr-chat .chat-shell {max-width:1080px;}
.sr-chat .hero {padding:24px 28px;background:transparent;border-bottom:1px solid var(--border);}
.sr-chat .hero-title {font-size:22px;font-weight:500;letter-spacing:-.035em;}
.sr-chat .hero-sub {font-size:13px;line-height:1.65;}
.sr-chat .hero-note {font-family:var(--font-sans)!important;font-size:11px!important;}
.sr-chat .flow-row {display:none;}
.sr-chat .messages {padding:24px 28px;}
.sr-chat .empty-state .big {font-size:clamp(25px,4vw,36px);font-weight:500;letter-spacing:-.04em;}
.sr-chat .empty-state .small {font-size:13px;max-width:40ch;line-height:1.8;margin:12px auto;}
.sr-chat .picker-row {background:var(--bg);padding:14px 28px;flex-wrap:wrap;}
.sr-chat .composer {padding:0 28px 24px;border:0;background:transparent;}
.sr-chat .composer textarea {padding:16px;min-height:88px;border-color:var(--border-strong);box-shadow:0 3px 18px #16244908;resize:none;}
.sr-chat .send-btn {border-radius:6px!important;min-width:76px;}
.sr-chat .message {font-family:var(--font-sans);}
.sr-chat .drawer {background:var(--panel-bg);box-shadow:0 12px 48px #0002;}
/* Sign in and recovery: one calm, readable form. */
.sr-auth main {max-width:520px!important;padding:64px 28px!important;}
.sr-auth .hero h1 {font-size:42px!important;}
.sr-auth form.term-form {padding:28px;border:1px solid var(--border);}
.sr-auth label {font-size:12px;letter-spacing:0;text-transform:none;}
.sr-auth .term-input {min-height:46px;}
.sr-auth .term-btn {min-height:46px;font-size:14px;}
.sr-product .toc {background:transparent;border-color:var(--border);border-radius:0;}
.sr-product .toc a {font-family:var(--font-sans);}
@media (max-width:860px) {
 body.sr-product nav.top {padding:14px 20px;min-height:68px;gap:10px;}
 .sr-product nav.top .brand {font-size:14px;}
 .sr-product nav.top .links {background:var(--bg);}
 .sr-product nav.top .links :is(a,.nav-trigger) {font-size:14px;min-height:44px;}
 .sr-product nav.top .links .nav-dropdown a {font-size:14px;}
 .sr-product nav.top .theme-toggle,.sr-product nav.top .nav-toggle {min-width:40px;min-height:40px;}
 .sr-product main.acct-shell {grid-template-columns:minmax(0,1fr);padding:32px 20px 48px;gap:28px;}
 .sr-product .acct-side {position:static;display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--border);padding-bottom:16px;}
 .sr-product .acct-side-title {width:100%;border:0;margin:0;padding:0 8px 8px;}
 .sr-product .acct-side-link {font-size:12px;padding:8px 10px;}
 .sr-product .acct-body .hero h1 {font-size:32px;}
}
@media (max-width:600px) {
 .sr-product main:not(.acct-shell) {padding:32px 20px 48px;}
 .sr-product :is(header.hero,.hero) h1,.sr-product main>header h1 {font-size:34px;}
 .sr-product :is(.panel,.card,form.term-form) {padding-left:20px;padding-right:20px;}
 .sr-product :is(button,.btn,.button) {min-height:40px;}
 .sr-product .search {min-width:0;width:100%;flex-basis:100%;}
 .sr-product .controls {gap:10px;}
 .sr-product .filters {max-width:100%;flex-wrap:wrap;}
 .sr-product .kv {grid-template-columns:minmax(0,1fr);gap:4px;}
 .sr-product .kv dd {margin:0 0 14px;overflow-wrap:anywhere;}
 .sr-product :is(.hash,.model-id,.modal-id) {overflow-wrap:anywhere;}
 .sr-chat .hero {padding:16px 20px;}
 .sr-chat .hero-title {font-size:19px;}
 .sr-chat .hero-note {display:none;}
 .sr-chat .messages {padding:16px 20px;}
 .sr-chat .picker-row {padding:10px 16px;gap:8px;}
 .sr-chat .picker-meta {display:none;}
 .sr-chat .composer {padding:0 16px 16px;gap:8px;}
 .sr-chat .composer textarea {font-size:16px;min-height:80px;}
 .sr-chat .toolbar {margin-left:0;}
 .sr-auth main {padding:40px 20px!important;}
 .sr-auth .hero h1 {font-size:34px!important;}
 .sr-product :is(input,textarea,select) {font-size:16px;}
}
@media (prefers-reduced-motion:reduce) {
 .sr-product *, .sr-product *::before, .sr-product *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}
.sr-product .sr-table-scroll {max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;border-radius:6px;}
.sr-product .sr-table-scroll table {margin-bottom:0;}
.sr-chat .tee-badge {font-family:var(--font-sans);font-size:10px;color:var(--fg-muted);background:transparent;border-color:var(--border);letter-spacing:0;}
.sr-chat .tee-badge .tee-dot {display:none;}

/* Replace decorative terminal notches with inset section labels. */

.sr-product nav.top .brand::after {content:"beta";}
.sr-product nav.top .brand {font-weight:500;}
.sr-product :is(.hero-title,.hero h1,header h1) {text-transform:none!important;}
.sr-product .hero-title {letter-spacing:-.035em!important;}
.sr-product .filters {flex-wrap:wrap;min-width:0;max-width:100%;}
.sr-product .controls>.filters {flex:1 1 100%;}
.sr-product .col-head select {min-width:0;width:100%;}
.sr-product .col-head {min-width:0;}
.sr-product .col {min-width:0;}
.sr-product .bd-layout {min-width:0;}
@media(max-width:1100px) { .sr-product nav.top .brand .sp-mark {display:none;} }
@media(max-width:420px) {
 .sr-product nav.top .brand .sp-mark {display:none;}
 .sr-product nav.top .brand {gap:6px;font-size:13px;min-width:0;}
 .sr-product nav.top {padding-inline:16px;gap:8px;}
 .sr-product nav.top .brand img {width:24px;height:24px;}
 .sr-product nav.top .brand::after {font-size:8px;padding:3px;}
}
.sr-explorer :is(.anchor-panel,.stat-card,.verdict-card) {padding-top:48px!important;}
.sr-explorer :is(.anchor-panel,.stat-card,.verdict-card)::before {top:14px!important;left:22px!important;background:transparent!important;padding:0!important;color:var(--fg-muted)!important;font:500 11px var(--font-sans)!important;letter-spacing:.04em!important;}
.sr-verifier :is(.badge) {padding-top:48px!important;}
.sr-verifier :is(.badge)::before {top:14px!important;left:22px!important;background:transparent!important;padding:0!important;color:var(--fg-muted)!important;font:500 11px var(--font-sans)!important;letter-spacing:.04em!important;}
.sr-credits :is(.balance-card,.demo-topup,.keys-card,.topup-card,.usage-card) {padding-top:48px!important;}
.sr-credits :is(.balance-card,.demo-topup,.keys-card,.topup-card,.usage-card)::before {top:14px!important;left:22px!important;background:transparent!important;padding:0!important;color:var(--fg-muted)!important;font:500 11px var(--font-sans)!important;letter-spacing:.04em!important;}

/* The full multilingual product navigation collapses before labels crowd. */
@media (max-width: 1100px) {
  body.sr-product nav.top {
    padding: 0.6rem 1rem;
    gap: 0.6rem;
    flex-wrap: nowrap;
  }
  body.sr-product nav.top .brand { font-size: 0.9rem; }
  body.sr-product nav.top .nav-toggle { display: flex; margin-left: auto; }

  body.sr-product nav.top .links {
    display: none;
    position: absolute;
    top: 100%; left: 0; right: 0;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0;
    background: var(--panel-bg);
    border-bottom: 1px solid var(--border-strong);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.6);
    padding: 0.4rem 0;
    max-height: calc(100vh - 60px);
    overflow-y: auto;
  }
  body.sr-product nav.top.nav-open .links { display: flex; }

  body.sr-product nav.top .links a {
    padding: 0.85rem 1.25rem;
    border: none;
    border-bottom: 1px solid var(--border);
    font-size: 0.95rem;
    letter-spacing: 0.04em;
  }
  body.sr-product nav.top .links a.active {
    border-color: transparent;
    border-bottom: 1px solid var(--border);
    border-left: 2px solid var(--accent);
  }
  /* auth-state.js appends an inline slot with a left border + horizontal
     padding tuned for the desktop bar; make it a full-width stacked row. */
  body.sr-product nav.top .links .auth-state-slot {
    display: flex !important;
    flex-direction: column;
    align-items: stretch !important;
    gap: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: none !important;
    border-top: 1px solid var(--border-strong);
    margin-top: 0.2rem;
  }
  body.sr-product nav.top .links .auth-state-slot > a {
    padding: 0.85rem 1.25rem !important;
    border: none !important;
    border-bottom: 1px solid var(--border) !important;
    font-size: 0.95rem !important;
  }

  /* Stacked accordion: no hover on touch, so visibility is purely the
     tap-driven .open class from assets/nav-menu.js. */
  body.sr-product nav.top .links .nav-group { position: static; display: block; }
  body.sr-product nav.top .links .nav-trigger {
    display: flex; align-items: center; justify-content: space-between;
    width: 100%;
    padding: 0.85rem 1.25rem;
    border: none; border-bottom: 1px solid var(--border);
    font-size: 0.95rem; letter-spacing: 0.04em;
    text-align: left;
  }
  body.sr-product nav.top .links .nav-group.open > .nav-trigger { color: var(--accent); }
  body.sr-product nav.top .links .nav-group.open > .nav-trigger::after { transform: rotate(180deg); }
  body.sr-product nav.top .links .nav-trigger.active {
    border-color: transparent;
    border-bottom: 1px solid var(--border);
    border-left: 2px solid var(--accent);
  }
  body.sr-product nav.top .links .nav-dropdown {
    display: none; flex-direction: column;
    border-left: 2px solid var(--border);
    margin-left: 1.25rem;
  }
  body.sr-product nav.top .links .nav-group.open > .nav-dropdown { display: flex; }
  body.sr-product nav.top .links .nav-dropdown a {
    padding: 0.75rem 1.25rem;
    border: none; border-bottom: 1px solid var(--border);
    font-size: 0.9rem;
  }
  body.sr-product nav.top .links .nav-dropdown a.active { border-left: 2px solid var(--accent); color: var(--accent); }
}

.sr-product .sr-announce {font-family:var(--font-sans)!important;font-size:11px;line-height:1.5;background:var(--bg-elevated-2);color:var(--fg-muted);padding-block:10px;}
.sr-product .sr-announce-close {width:40px;min-height:40px;}
.sr-product .skip-link {position:fixed;z-index:10000;top:10px;left:10px;transform:translateY(-200%);padding:12px 20px;background:var(--fg);color:var(--bg);border-radius:4px;}
.sr-product .skip-link:focus {transform:none;}
.sr-product :is(.acct-pop,.acct-quick-modal) {background:var(--panel-bg);color:var(--fg);}
.sr-product .sr-table-scroll:focus-visible {outline:3px solid var(--accent);outline-offset:4px;}
.sr-product nav.top .nav-group.sr-dismissed > .nav-dropdown {display:none!important;}
.sr-product nav.top .nav-group.sr-dismissed > .nav-trigger::after {transform:none;}
.sr-product .nav-trigger {white-space:nowrap;}
.sr-product .sr-table-scroll {scrollbar-color:var(--border-strong) transparent;}
@media(max-width:1100px) {
 body.sr-product nav.top {position:relative;flex-wrap:nowrap;}
 body.sr-product nav.top .theme-toggle {margin-left:auto;margin-right:0;min-height:44px;min-width:44px;}
 body.sr-product nav.top .nav-toggle {display:flex;margin-left:0;min-width:44px;min-height:44px;}
 body.sr-product nav.top .links {margin-left:0;max-height:calc(100dvh - 130px);border-radius:0;box-shadow:0 12px 24px #0001;}
 body.sr-product nav.top .links .nav-group {display:flex;position:static;flex-direction:column;}
 body.sr-product nav.top .links .nav-dropdown {position:static;margin-top:0;box-shadow:none;min-width:0;border:0;border-radius:0;display:none;padding:0;}
 body.sr-product nav.top .links .nav-group:focus-within > .nav-dropdown {display:none;}
 body.sr-product nav.top .links .nav-group.open > .nav-dropdown {display:flex;}
 body.sr-product nav.top .links .nav-trigger {text-align:left;width:100%;padding:12px 20px;}
 body.sr-product nav.top .links .nav-dropdown a {padding:12px 32px;}
 body.sr-product nav.top .links .nav-group::after {display:none;}
 body.sr-product nav.top .links .auth-state-slot {flex-direction:column;align-items:stretch!important;border-left:0!important;}
 body.sr-product nav.top .brand .sp-mark {display:none;}
}
@media (hover:hover) and (min-width:1101px) {
 .sr-product nav.top .links :is(a,.nav-trigger):hover {background:var(--accent-tint);color:var(--accent);}
}

/* Links in prose remain identifiable in both palettes without relying on color. */
.sr-product :is(main,.chat-shell) a:not(.button):not(.btn):not(.acct-side-link):not(.card):not(.article-card):not(.channel-card) {text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
.sr-product :is(pre,table):focus-visible {outline:3px solid var(--accent);outline-offset:3px;}
.sr-product nav.top .brand::after {background:transparent!important;color:var(--fg-muted)!important;border-color:var(--border)!important;}
.sr-product :is(.acct-popup,.acct-settings-modal) {font-family:var(--font-sans)!important;}
.sr-product .acct-popup {min-width:0!important;width:min(372px,calc(100vw - 32px));max-width:calc(100vw - 32px);}
@media(max-width:1100px){.sr-product .acct-popup{position:relative!important;top:0!important;right:auto!important;width:100%;max-width:100%;}}
.sr-compare footer a {text-decoration:underline!important;text-underline-offset:3px;}
.sr-compare a[href$="credits.html"] {text-decoration:underline!important;text-underline-offset:3px;}
/* Reserve the initial catalog canvas so its footer doesn't flash above results. */
.sr-models #grid {min-height:55svh;}
@media(max-width:1100px) {
 .sr-product .acct-chip-wrap {flex-direction:column;width:100%;}
 .sr-product .acct-chip {width:100%;min-height:44px;justify-content:flex-start;font-family:var(--font-sans)!important;letter-spacing:0!important;font-size:13px!important;}
 .sr-product .acct-popup {padding:16px!important;}
 .sr-product .nav-toggle {position:relative;}
 .sr-product nav.top.nav-open .nav-toggle .bar {position:absolute;width:22px;height:2px;left:calc(50% - 11px);top:calc(50% - 1px);}
 .sr-product nav.top.nav-open .nav-toggle .bar:nth-child(1) {transform:rotate(45deg);}
 .sr-product nav.top.nav-open .nav-toggle .bar:nth-child(3) {transform:rotate(-45deg);}
}
.sr-models .count {min-height:20px;}
@media(max-width:640px) {
 .sr-product .sr-announce {min-height:62px;}
}
@media(max-width:600px) {
 .sr-models .filters {flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;overscroll-behavior-x:contain;}
 .sr-models .filter-chip {flex:0 0 auto;white-space:nowrap;}
}
@media(max-width:600px){.sr-models .filters {padding:6px;}}
@media(max-width:600px){.sr-product.sr-models .filters {flex-wrap:nowrap;}}
@media(max-width:640px){
 .sr-product .sr-announce {padding-left:16px!important;padding-right:60px!important;}
 .sr-product .sr-announce-close {width:44px;min-height:44px;}
}
