/* =========================================================
   Menu strony (topbar + nagłówek, inc/menu.php) - wspólne dla stron www i wyceny w panelu (gość).
   Kolory z site.css (:root), a w panelu, gdzie ich nie ma, z wartości zapasowych w var().
   ========================================================= */
.topbar,.site-header{font-family:'IBM Plex Sans',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.65}
.topbar *,.site-header *{box-sizing:border-box}
.topbar a,.site-header a{color:inherit;text-decoration:none}
.site-header img{display:block;max-width:100%;height:auto}

/* --- Topbar --- */
.topbar{background:var(--ink,#20242a);color:#cbd2da;font-size:.86rem}
.topbar-inner{max-width:var(--maxw,1140px);margin:0 auto;padding:8px 20px;display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center;justify-content:center}
.topbar-item{display:inline-flex;align-items:center;gap:7px}
.topbar-item svg{width:15px;height:15px;fill:var(--amber-l,#8fb3d4);flex-shrink:0}
.topbar a:hover{color:#fff}

/* --- Header / nav --- */
.site-header{background:#fff;border-bottom:1px solid var(--line,#e6e8ec);position:sticky;top:0;z-index:50}
.header-inner{max-width:var(--maxw,1140px);margin:0 auto;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.logo img{height:54px;width:auto}
.nav-toggle{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:10px;min-width:44px;min-height:44px;border:1px solid var(--line,#e6e8ec);border-radius:6px;-webkit-tap-highlight-color:transparent}
.nav-toggle svg{width:24px;height:24px;fill:var(--heading,#222831)}
.nav-cb{display:none}
.nav-bg{display:none}   /* nie zajmuje miejsca w nagłówku, dopóki menu zamknięte */
.nav{display:flex;align-items:center;gap:4px}
.nav a{padding:10px 14px;font-weight:600;font-size:.95rem;color:var(--heading,#222831);text-transform:uppercase;letter-spacing:.4px;border-radius:6px;transition:.15s}
.nav a:hover{color:var(--amber-d,#24496e)}
.nav a.active{color:var(--amber-d,#24496e)}
.nav .btn-kontakt{background:var(--amber,#2f5d8c);color:#fff}
.nav .btn-kontakt:hover{background:var(--amber-d,#24496e);color:#fff}

/* --- Przycisk Panel w menu --- */
.nav a.nav-panel{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--charcoal,#2e3338);color:var(--charcoal,#2e3338);padding:9px 16px;border-radius:6px;font-weight:700}
.nav a.nav-panel:hover{background:var(--charcoal,#2e3338);color:#fff}
.nav a.nav-panel svg{width:15px;height:15px;fill:currentColor}

/* Nawigacja mobilna (CSS-only, bez JS) */
.nav-head{display:none}
@media(max-width:859px){
  .nav{position:fixed;inset:0 0 0 auto;width:min(84vw,320px);background:#fff;flex-direction:column;align-items:stretch;padding:0 0 18px;gap:0;transform:translateX(100%);transition:transform .25s;box-shadow:-10px 0 30px rgba(0,0,0,.18);z-index:60;overflow-y:auto}
  .nav-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:2px solid var(--line,#e6e8ec);margin-bottom:6px;background:var(--bg-soft,#f6f7f9)}
  .nav-head img{height:30px;width:auto}
  .nav-head span{font-weight:700;color:var(--heading,#222831);font-size:1.05rem}
  .nav-close{margin-left:auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:var(--heading,#222831);cursor:pointer;border:1px solid var(--line,#e6e8ec);border-radius:8px;background:#fff}
  .nav a{padding:15px 20px;border-bottom:1px solid var(--line,#e6e8ec);font-size:1.02rem;text-transform:none;letter-spacing:.2px}
  .nav a.active{color:var(--amber-d,#24496e);background:var(--bg-soft,#f6f7f9);box-shadow:inset 3px 0 0 var(--rubin,#c63d52)}
  .nav .btn-kontakt{margin:14px 18px 0;text-align:center;border-radius:8px;border-bottom:none;padding:14px}
  .nav a.nav-panel{margin:10px 18px 0;justify-content:center;border-radius:8px;border-bottom:1.5px solid var(--charcoal,#2e3338)}
  .nav-toggle{margin-left:auto}   /* burger zawsze przy prawej krawędzi */
  .nav-cb:checked ~ .nav{transform:translateX(0)}
  .nav-cb:checked ~ .nav-bg{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:55}
}
@media(min-width:860px){
  .nav-toggle{display:none}
}
