/* The header search. Uses the site's own tokens: --paper --panel --ink --grey --line --line2 --accent.
   The field sits at the right end of the bar on a wide screen. Up to 1040px wide it opens from a button. */
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.bar .site-search{position:relative;order:3;flex:0 1 230px;min-width:150px;margin:0}
.bar nav{order:2}
.ss-q{width:100%;font:inherit;font-size:16px;line-height:1.2;color:var(--ink);background:var(--paper);
  border:1px solid var(--line);border-radius:6px;padding:7px 11px 7px 34px;-webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20' fill='none' stroke='%23777' stroke-width='2'%3E%3Ccircle cx='8.5' cy='8.5' r='5.5'/%3E%3Cline x1='12.8' y1='12.8' x2='18' y2='18' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:11px 50%}
.ss-q::placeholder{color:var(--grey);opacity:1}
.ss-q:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.ss-btn{display:none;order:3;align-items:center;justify-content:center;background:none;border:1px solid var(--line);border-radius:6px;
  color:var(--ink);width:38px;height:36px;padding:0;cursor:pointer;line-height:1;flex-shrink:0}
.ss-btn:hover,.bar.search-open .ss-btn{border-color:var(--accent);color:var(--accent)}
.ss-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ss-results{display:none;position:absolute;top:calc(100% + 6px);right:0;width:min(460px,calc(100vw - 32px));max-height:min(70vh,560px);
  overflow-y:auto;background:var(--paper);border:1px solid var(--line);border-radius:8px;
  box-shadow:0 12px 32px rgba(0,0,0,.14);z-index:200;text-align:left}
.ss-results.on{display:block}
.ss-results a{display:block;padding:.65rem 1rem;border-bottom:1px solid var(--line2);text-decoration:none;color:var(--ink);font-size:16px;line-height:1.45}
.ss-results a:last-child{border-bottom:0}
.ss-results a:hover,.ss-results a.on{background:var(--panel);text-decoration:none}
.ss-t{display:block;font-weight:700}
.ss-k{display:block;color:var(--grey);font-size:14px}
.ss-s{display:block;color:var(--grey);margin-top:.15rem;font-size:15px}
.ss-results mark{background:none;color:var(--accent);font-weight:700}
.ss-note{margin:0;padding:.75rem 1rem;font-size:15px;color:var(--grey)}
@media (max-width:1040px){
  .bar .site-search{display:none;position:absolute;top:100%;left:0;right:0;max-width:none;min-width:0;background:var(--paper);
    border-bottom:1px solid var(--line);padding:.7rem clamp(16px,4vw,40px) .8rem;box-shadow:0 10px 20px rgba(0,0,0,.06)}
  .bar.search-open .site-search{display:block}
  .ss-btn{display:inline-flex}
  .ss-results{position:static;width:auto;border:0;box-shadow:none;border-radius:0;margin-top:.55rem;max-height:min(60vh,440px)}
}
@media (max-width:760px){
  .ss-btn{order:1;margin-left:auto}
  .bar nav{order:2}
}
@media print{.site-search,.ss-btn{display:none!important}}
