/* RobScript header v2 (variant A): search inside the header row, header keeps the site shell width.
   >=1080px: inline search field; search toggle and search row hidden.
   861-1079px: compact menu, search row opens only from the search button (.is-search-open on the header).
   <=860px: theme switch and Submit a script live in the dropdown menu. */

.site-header .header-search-wrap{display:none!important}
.site-header.is-search-open .header-search-wrap{display:block!important;max-height:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
:root.rso-header-search-open{--rso-active-header-height:var(--rso-header-height)!important}
:root.rso-header-search-open .site-menu{top:var(--rso-header-height)!important}
.site-header.is-search-open .header-search-btn{color:var(--accent)!important;background:var(--accent-soft)!important;border-color:var(--accent-line)!important}
/* the old always-open search row reserved space above the content: not needed any more */
.site-main::before{display:none!important}
:root.rso-header-search-open .site-header{border-bottom-color:rgba(255,255,255,.075)!important}
:root[data-theme=light].rso-header-search-open .site-header{border-bottom-color:rgba(0,0,0,.075)!important}

.header-inline-search{display:none}
@media (min-width:1080px){
  .site-header .header-inner{display:flex!important;gap:16px!important}
  .site-header .site-menu{flex:none!important;justify-self:auto!important}
  .header-inline-search{display:flex;align-items:center;gap:8px;flex:1 1 200px;min-width:140px;max-width:320px;height:40px;margin-left:auto;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035);transition:border-color .16s ease,background .16s ease}
  :root[data-theme=light] .header-inline-search{background:rgba(0,0,0,.025)}
  .header-inline-search:focus-within{border-color:var(--accent-line,rgba(255,59,127,.45));background:var(--surface,#1a1a1a)}
  .header-inline-search svg{flex:none;width:17px;height:17px;color:var(--muted)}
  .header-inline-search input{flex:1;min-width:0;height:100%;border:0!important;background:transparent!important;box-shadow:none!important;outline:0;padding:0!important;color:var(--text);font:inherit;font-size:14px}
  .header-inline-search input::placeholder{color:var(--muted);opacity:.8}
  .header-inline-search kbd{flex:none;font:600 11px/1 inherit;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:3px 6px}
  .header-actions{margin-left:0!important}
  .site-header .header-search-btn,.site-header .header-search-wrap{display:none!important}
}

/* Laptops: compact menu so logo, menu and buttons never overlap */
@media (min-width:861px) and (max-width:1079px){
  .site-header .header-inner{gap:12px!important}
  .site-header .menu-list a{padding:0 9px!important}
}

.menu-extra{display:none}
@media (max-width:860px){
  .site-header .header-actions .theme-toggle{display:none!important}
  .menu-extra{display:flex;flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
  .menu-extra-submit{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;border-radius:12px;background:var(--accent);color:#fff!important;font-weight:800;text-decoration:none}
  .menu-extra-submit:hover{filter:brightness(1.08)}
  .menu-extra-theme{display:flex;align-items:center;gap:12px;width:100%;height:46px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:transparent;color:var(--text);font:inherit;font-size:15px;font-weight:700;cursor:pointer;text-align:left}
  .menu-extra-theme svg{width:18px;height:18px;color:var(--muted)}
  .menu-extra-theme span{flex:1}
  .menu-extra-theme i{position:relative;width:40px;height:24px;border-radius:999px;background:var(--line)}
  .menu-extra-theme i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .16s ease}
  :root:not([data-theme=light]) .menu-extra-theme i{background:var(--accent)}
  :root:not([data-theme=light]) .menu-extra-theme i::after{transform:translateX(16px)}
}
