/* Header search + theme toggle (owner rule 18, 2026-10-22). Shared by the
   founder chrome (founder.css) and the 404 chrome (style.css); both define
   the --sx-* tokens. Box inline from 1300px, icon + full-screen overlay below. */
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sx-btn{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--sx-text);cursor:pointer;flex:none}
.sx-btn:hover{background:var(--sx-hover)}
.sx-btn:focus-visible,.srch input:focus-visible,.srch-x:focus-visible,.srch-list a:focus-visible{outline:2px solid var(--sx-accent);outline-offset:2px}
.sx-btn svg{display:block}
.theme-btn .sun{display:none}
:root[data-theme="dark"] .theme-btn .sun{display:block}
:root[data-theme="dark"] .theme-btn .moon{display:none}
.srch{display:none;position:relative}
.srch input{width:100%;height:40px;padding:0 14px;border:1px solid var(--sx-border);border-radius:999px;background:var(--sx-bg);color:var(--sx-text);font:inherit;font-size:.9rem}
.srch input::placeholder{color:var(--sx-mute);opacity:1}
.srch-x{display:none}
.srch-list{list-style:none;margin:0;padding:6px;position:absolute;top:calc(100% + 6px);right:0;width:380px;max-height:70vh;overflow-y:auto;background:var(--sx-bg);color:var(--sx-text);border:1px solid var(--sx-border);border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.18);z-index:90}
.srch-list[hidden]{display:none}
.srch-list a{display:block;padding:10px 12px;border-radius:10px;color:var(--sx-text);text-decoration:none;line-height:1.3}
.srch-list a b{display:block;font-weight:600;font-size:.95rem}
.srch-list a span{display:block;font-size:.8rem;color:var(--sx-mute);margin-top:2px}
.srch-list a:hover,.srch-list a[aria-selected="true"]{background:var(--sx-hover)}
.srch-none{padding:12px;font-size:.9rem;color:var(--sx-mute)}
@media(min-width:1300px){.srch{display:block;width:190px}.srch-btn{display:none}}
@media(max-width:1299px){
  .srch.open{display:block;position:fixed;inset:0;z-index:300;background:var(--sx-bg);padding:12px 16px;overflow-y:auto}
  .srch.open input{height:46px;padding-right:50px;font-size:1rem}
  .srch.open .srch-x{display:grid;place-items:center;position:absolute;top:12px;right:16px;width:46px;height:46px;border:0;background:transparent;color:var(--sx-text);font-size:1.6rem;line-height:1;cursor:pointer;border-radius:50%}
  .srch.open .srch-list{position:static;width:auto;max-height:none;margin-top:10px;border:0;box-shadow:none;padding:0}
  .srch.open .srch-list a{padding:13px 8px;border-bottom:1px solid var(--sx-border);border-radius:0}
  html.srch-open,html.srch-open body{overflow:hidden}
}
.srch input::-webkit-search-cancel-button,.srch input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}
/* backdrop-filter on the sticky header would trap the fixed overlay inside it */
html.srch-open .site-head,html.srch-open .site-header{backdrop-filter:none;-webkit-backdrop-filter:none}
