/* Global header, search, breadcrumbs and footer links. Shared by every page on the site (stockgrid pages link it; the
   pattern pages and the paper-portfolio app get it injected by site.js), so it carries its own palette. */
.site-head{--sh-bg:#fff;--sh-ink:#172b30;--sh-ink-2:#4e6368;--sh-ink-3:#657b80;--sh-rule:#dce7e4;--sh-accent:#087f79;--sh-panel:#fff;
  background:var(--sh-bg);border-bottom:1px solid var(--sh-rule);font:15px/1.4 "IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;position:relative;z-index:50}
.site-head *{box-sizing:border-box}
.site-head-in{max-width:1280px;margin:0 auto;padding:16px 28px;display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.site-logo{font:500 24px/1.1 "Newsreader",Georgia,serif;color:var(--sh-ink)!important;text-decoration:none;border:0!important;white-space:nowrap}
.site-nav{display:flex;gap:22px;flex-wrap:wrap}
.site-nav a,.site-sub a{color:var(--sh-ink-2)!important;text-decoration:none;border:0!important;padding:4px 0;font-size:14.5px;white-space:nowrap}
.site-nav a:hover,.site-nav a[aria-current],.site-sub a:hover,.site-sub a[aria-current]{color:var(--sh-ink)!important;box-shadow:inset 0 -2px 0 var(--sh-accent)}
.site-search{margin-left:auto;position:relative;flex:0 1 300px;min-width:200px}
.site-search input{width:100%;background:#f5f8f7;color:var(--sh-ink);border:1px solid var(--sh-rule);border-radius:6px;padding:8px 12px;font:14px "IBM Plex Sans",system-ui,sans-serif}
.site-search input::placeholder{color:var(--sh-ink-3)}
.site-search input:focus{outline:2px solid var(--sh-accent);outline-offset:1px}
.search-list{position:absolute;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;background:var(--sh-panel,#fff);border:1px solid var(--sh-rule,#dce7e4);border-radius:6px;max-height:min(70vh,420px);overflow:auto;z-index:60;box-shadow:0 10px 28px rgba(24,58,48,.12)}
.search-list li{padding:8px 10px;border-radius:4px;cursor:pointer;color:var(--sh-ink,#172b30);display:flex;gap:10px;align-items:baseline;font-size:14px}
.search-list li b{font-weight:600;min-width:64px}
.search-list li span{color:var(--sh-ink-2,#4e6368);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.search-list li small{color:var(--sh-ink-3,#657b80);font-size:12px;white-space:nowrap}
.search-list li[aria-selected=true],.search-list li:hover{background:#eaf0ee}
.search-list li.empty{cursor:default;color:var(--sh-ink-3,#657b80);display:block}
.search-list li.empty a{color:var(--sh-accent,#087f79)}
.site-sub{border-top:1px solid var(--sh-rule)}
.site-sub .site-head-in{padding-top:8px;padding-bottom:8px;gap:22px}
.site-sub a{font-size:13.5px}
.site-methods{position:relative;font-size:13.5px;color:var(--sh-ink-2)}
.site-methods summary{cursor:pointer;list-style:none;color:var(--sh-ink-2)}
.site-methods summary::after{content:" \25BE"}
.site-methods[open] div{position:absolute;top:calc(100% + 8px);left:0;background:var(--sh-panel);border:1px solid var(--sh-rule);border-radius:6px;padding:6px;display:grid;min-width:190px;z-index:60}
.site-methods div a{padding:6px 8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.crumbs{max-width:1280px;margin:0 auto;padding:14px 28px 0;font:13px "IBM Plex Sans",system-ui,sans-serif}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;color:#657b80}
.crumbs li+li::before{content:"\203A";margin-right:6px}
.site-foot{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:10px;font-size:13px}
@media (max-width:760px){
  .site-head-in{padding:10px 16px;gap:8px 18px}
  .site-logo{font-size:20px}
  .site-nav{order:3;width:100%;gap:0;justify-content:space-between}
  .site-nav a{font-size:14px;padding:6px 0}
  .site-search{order:2;flex:1 1 140px;min-width:0;margin-left:0}
  .site-sub .site-head-in{overflow-x:auto;flex-wrap:nowrap;padding:6px 16px}
  .site-methods[open] div{position:fixed;left:16px;right:16px;top:auto}
  .crumbs{padding:10px 16px 0}
}
