/* Versioned separately so an installed browser cannot retain an old setup UI. */
.mobile-nav-toggle{display:none}
.admin-main{min-width:0}
.panel,.setup-panel{min-width:0}
.setup-tabs{z-index:3;background:#f5f9f8;padding:8px;border-radius:16px}
.setup-tab{font:inherit;cursor:pointer;min-height:54px}
.setup-tab:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #22a5a8;outline-offset:3px}
.relay-row label,.input-row label{min-width:0}
.relay-row input,.relay-row select,.input-row input,.input-row select{font:inherit;min-height:42px;max-width:100%}
.relay-row,.input-row{gap:12px;padding:16px;border:1px solid #d8e5e4;border-radius:12px;background:#fff}
.admin-main table{font-size:14px}
.notice.error{background:#fff1f2;color:#9b2135;border:1px solid #efbac4}
@media(max-width:950px){
  .hero-visual{order:1!important;height:220px!important;margin-top:24px}
  .hero-copy{order:0}
  .hero{padding-top:32px!important;gap:12px!important}
  .hero h1{font-size:clamp(34px,7vw,50px)}
  .hero-visual .device-orbit{transform:scale(.62);transform-origin:center}
  .floating-card{font-size:12px}
  .mobile-nav-toggle{display:block;margin-inline-start:auto}
  .sidebar{flex-wrap:wrap;gap:12px!important}
  .sidebar nav{display:none!important;flex-basis:100%;width:100%;overflow:visible!important;white-space:normal!important}
  .sidebar.menu-open nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .sidebar nav a{white-space:normal}
  .sidebar>form{margin:0}
  .setup-tabs{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .relay-row,.input-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .admin-main{padding:16px!important}
  .device-facts{gap:6px}
  .device-summary{padding:18px}
  .relay-row,.input-row{grid-template-columns:1fr}
  .hero-visual{height:190px!important}
  .floating-card.bottom{display:none}
}
