/* Goetschi Arcade · Simplified Navigation v1.0.001
   Three destinations, one installed library, one discreet settings entry.
   Loaded after Play First to keep the established Goetschi Labs design tokens. */

.arcade-portal .portal-sidebar{gap:8px}
.arcade-portal .portal-sidebar .portal-nav-link{min-height:43px;padding-inline:17px}
.arcade-portal .portal-main{padding-top:clamp(15px,2.5vw,30px)}
.arcade-portal .header-settings{display:inline-flex;align-items:center;gap:7px;min-height:40px;
  padding:8px 11px;border:1px solid var(--line);border-radius:var(--radius-control);
  background:var(--surface);color:var(--text);text-decoration:none;font-size:12px;font-weight:600}
.arcade-portal .header-settings svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round}
.arcade-portal .header-settings:hover,.arcade-portal .header-settings.current{border-color:var(--accent);color:var(--accent)}
.arcade-portal .header-settings:focus-visible,.arcade-portal .library-filter:focus-visible,
.arcade-portal .library-advanced summary:focus-visible,.arcade-portal .library-add:focus-visible{
  outline:2px solid var(--accent);outline-offset:3px}
.arcade-portal .library-heading{align-items:center;gap:15px;margin-bottom:15px}
.arcade-portal .library-heading .section-kicker{font-size:10px;margin:0 0 3px}
.arcade-portal .library-heading h1{margin:0}
.arcade-portal .library-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.arcade-portal .library-add{display:inline-flex;align-items:center;justify-content:center;min-height:39px;
  padding:9px 14px;border-radius:var(--radius-control);background:var(--accent);
  color:var(--accent-ink);font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.arcade-portal .library-add:hover{filter:brightness(1.08)}
.arcade-portal .library-quick-filters{display:flex;align-items:center;gap:5px;flex-wrap:wrap;
  padding:4px;border-bottom:1px solid var(--line)}
.arcade-portal .library-filter{appearance:none;cursor:pointer;background:transparent;color:var(--muted);
  border:0;border-bottom:2px solid transparent;border-radius:0;padding:10px 13px 12px;
  font:600 13px var(--font-body,inherit);min-height:43px}
.arcade-portal .library-filter:hover{color:var(--text)}
.arcade-portal .library-filter.is-active,.arcade-portal .library-filter[aria-pressed="true"]{
  border-bottom-color:var(--accent);color:var(--text);background:color-mix(in srgb,var(--accent) 7%,transparent)}
.arcade-portal .library-toolbar{display:grid;grid-template-columns:minmax(0,440px) minmax(180px,1fr);
  align-items:start;gap:12px;margin:13px 0 21px}
.arcade-portal .library-toolbar .search-field{max-width:none;width:100%;min-height:43px}
.arcade-portal .library-advanced{min-width:0;border:1px solid var(--line);border-radius:var(--radius-control);
  background:var(--surface)}
.arcade-portal .library-advanced summary{cursor:pointer;list-style:none;display:flex;align-items:center;
  justify-content:space-between;gap:8px;padding:11px 13px;min-height:43px;
  font-size:12px;font-weight:600;color:var(--text)}
.arcade-portal .library-advanced summary::-webkit-details-marker{display:none}
.arcade-portal .library-advanced summary span{color:var(--muted)}
.arcade-portal .library-advanced[open] summary span{transform:rotate(180deg)}
.arcade-portal .library-advanced-inner{padding:12px;display:grid;gap:13px;border-top:1px solid var(--line)}
.arcade-portal .library-advanced .filters,.arcade-portal .library-advanced .platform-filters{
  display:flex;flex-wrap:wrap;gap:6px;max-height:220px;overflow:auto}
.arcade-portal .library-advanced .filter-button,
.arcade-portal .library-advanced .system-filter{min-height:35px;padding:7px 11px;font-size:11px}
.arcade-portal .library-advanced .platform-filters{padding:0;margin:0;border:0}
.arcade-portal .library .game-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,205px),1fr));gap:12px}
.arcade-portal .library .game-info{padding:12px}
.arcade-portal .library .game-description{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.arcade-portal .library .game-card-tools{padding:0 12px 10px}
@media(max-width:760px){
  .arcade-portal .portal-main{padding-top:12px}
  .arcade-portal .mobile-portal-nav{grid-template-columns:repeat(3,minmax(0,1fr));
    padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))}
  .arcade-portal .mobile-portal-nav a{font-size:11px;gap:5px;min-height:52px}
  .arcade-portal .header-settings{width:40px;padding:8px;justify-content:center}
  .arcade-portal .header-settings span,.arcade-portal .header-actions .user-pill{display:none}
  .arcade-portal .library-heading{align-items:flex-start}
  .arcade-portal .library-heading-actions{justify-content:flex-end}
  .arcade-portal .library-filter{padding:9px 10px;font-size:12px}
  .arcade-portal .library-toolbar{grid-template-columns:minmax(0,1fr);margin:10px 0 15px}
  .arcade-portal .library .game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .arcade-portal .library .game-info{padding:9px}
}
@media(max-width:400px){
  .arcade-portal .library-heading{flex-wrap:wrap}
  .arcade-portal .library-heading-actions{width:100%;justify-content:space-between}
  .arcade-portal .library-quick-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
  .arcade-portal .library-filter{padding:9px 2px;font-size:10px;line-height:1.3}
  .arcade-portal .library-heading-actions .count-pill{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.arcade-portal .library-advanced summary span{transition:none}}
