/* ═══════════════════════════════════════════════════════════
   erphome.pl — wspólny arkusz stylów
   Zawiera: zmienne, reset, nav, footer, przyciski
   CSS specyficzny dla każdej strony zostaje w jej <style>
════════════════════════════════════════════════════════════ */

/* ── Zmienne ── */
:root {
    --navy:      #0f172a;
    --navy-800:  #1e293b;
    --navy-700:  #334155;
    --navy-600:  #475569;
    --gold:      #f59e0b;
    --gold-d:    #d97706;
    --gold-bg:   rgba(245,158,11,.1);
    --green:     #10b981;
    --red:       #ef4444;
    --white:     #ffffff;
    --gray-50:   #f8fafc;
    --gray-100:  #f1f5f9;
    --gray-200:  #e2e8f0;
    --gray-500:  #64748b;
    --radius:    14px;
    --shadow:    0 4px 20px rgba(0,0,0,.08);
    --shadow-lg: 0 16px 48px rgba(0,0,0,.14);
    --t:         all .2s ease;
    /* ciepłe tony (premium / „apartamentowy") + akcent teal */
    --cream:     #faf7f1;
    --sand:      #f4ece0;
    --warm-border:#ece2d2;
    --teal:      #0f766e;
    --teal-d:    #0c5e57;
    --navy-900:  #0b1120;
    --gold2:     #d97706;
    /* aliasy używane przez starsze podstrony */
    --navy2:     #0f172a;
    --mid:       #64748b;
    --border:    #e2e8f0;
    --light:     #f8fafc;
}

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--navy-800);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit}

/* ── Przyciski ── */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:10px;font-size:15px;font-weight:700;text-decoration:none;cursor:pointer;border:none;transition:var(--t);font-family:inherit;line-height:1}
.btn svg{width:18px;height:18px;flex-shrink:0}
.btn-primary{background:var(--gold);color:var(--white)}
.btn-primary:hover{background:var(--gold-d);transform:translateY(-1px);box-shadow:0 8px 24px rgba(245,158,11,.35)}
.btn-dark{background:var(--navy);color:var(--white)}
.btn-dark:hover{background:var(--navy-800);transform:translateY(-1px);box-shadow:0 8px 24px rgba(15,23,42,.3)}
.btn-outline{background:transparent;color:rgba(255,255,255,.85);border:1.5px solid rgba(255,255,255,.3)}
.btn-outline:hover{border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.07);color:var(--white)}
.btn-ghost{background:transparent;color:var(--navy-600);border:1.5px solid var(--gray-200)}
.btn-ghost:hover{border-color:var(--navy-700);color:var(--navy);background:var(--gray-50)}
.btn-lg{padding:16px 32px;font-size:17px}

/* ── Nawigacja (pełna — _nav.php) ── */
nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.93);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--gray-200)}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;gap:4px}
.nav-logo{font-size:20px;font-weight:800;color:var(--navy);text-decoration:none;letter-spacing:-.5px;flex-shrink:0;margin-right:8px}
.nav-logo span{color:var(--gold)}
.nav-links{display:flex;gap:2px;list-style:none;margin-left:auto;align-items:center}
.nav-links a{color:var(--navy-600);text-decoration:none;font-size:14px;font-weight:500;padding:6px 10px;border-radius:8px;transition:var(--t)}
.nav-links a:hover{color:var(--navy);background:var(--gray-100)}
.nav-links .nav-login{color:var(--navy-600)!important;font-weight:600;padding:8px 14px;border:1.5px solid var(--gray-200);border-radius:8px;margin-left:4px;transition:border-color .15s,color .15s}
.nav-links .nav-login:hover{border-color:var(--gold);color:var(--gold-d)!important;background:transparent!important}
.nav-links .nav-cta{background:var(--navy);color:var(--white)!important;padding:8px 18px;border-radius:8px;font-weight:700;margin-left:6px}
.nav-links .nav-cta:hover{background:var(--gold)!important}
/* Prosta nawigacja (regulamin, polityka) */
.nav-back{margin-left:auto;font-size:14px;color:var(--gray-500);text-decoration:none;transition:var(--t)}
.nav-back:hover{color:var(--navy)}
/* Hamburger + mobile menu */
.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:8px;margin-left:auto;background:none;border:none}
.hamburger span{display:block;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:var(--t)}
.mobile-menu{display:none;position:fixed;top:64px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--gray-200);padding:16px 24px 24px;z-index:99;flex-direction:column;gap:4px;box-shadow:0 8px 24px rgba(0,0,0,.1)}
.mobile-menu.open{display:flex}
.mobile-menu a{color:var(--navy-600);text-decoration:none;font-size:16px;font-weight:500;padding:10px 12px;border-radius:8px;transition:var(--t)}
.mobile-menu a:hover{background:var(--gray-100);color:var(--navy)}
.mobile-menu .mob-cta{background:var(--navy);color:var(--white)!important;text-align:center;font-weight:700;margin-top:8px;border-radius:10px;padding:13px 12px}
.mobile-menu .mob-cta:hover{background:var(--gold)!important}
@media(max-width:768px){.nav-links{display:none}.hamburger{display:flex}}

/* ── Przełącznik języka (przeniesione z _nav.php — <style> w body to błąd W3C) ── */
.nav-lang-switcher { position: relative; display: flex; align-items: center; }
.nav-lang-btn {
    display: inline-flex; align-items: center; gap: 3px;
    background: none; border: none; cursor: pointer;
    padding: 3px 5px; border-radius: 6px;
    font-size: 18px; line-height: 1;
    color: var(--navy-600); transition: background .15s;
}
.nav-lang-btn:hover { background: var(--gray-100); }
.lang-flag { font-size: 18px; line-height: 1; }
.lang-caret {
    width: 9px; height: 9px; color: var(--gray-400);
    transition: transform .2s; flex-shrink: 0;
}
.nav-lang-switcher.open .lang-caret { transform: rotate(180deg); }
.lang-dropdown {
    display: none; position: absolute; top: calc(100% + 8px); right: 0;
    background: #fff; border: 1px solid var(--gray-200);
    border-radius: 10px; box-shadow: 0 8px 24px rgba(0,0,0,.12);
    min-width: 130px; overflow: hidden; z-index: 200;
}
.nav-lang-switcher.open .lang-dropdown { display: block; }
.lang-option {
    display: flex; align-items: center; gap: 8px;
    padding: 9px 14px; font-size: 13px; font-weight: 500;
    color: var(--navy); text-decoration: none;
    transition: background .1s;
}
.lang-option:hover { background: var(--gray-50); }
.lang-option span:first-child { font-size: 17px; line-height: 1; }
.lang-active { background: var(--gray-50); font-weight: 700; }
.lang-active svg { margin-left: auto; color: var(--gold-d); }
.mob-lang-row {
    display: flex; gap: 8px; padding: 10px 20px;
    border-bottom: 1px solid var(--gray-100);
}
.mob-lang-opt {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px; border-radius: 8px; font-size: 14px; font-weight: 500;
    color: var(--navy); text-decoration: none;
    border: 1.5px solid var(--gray-200); background: #fff;
}
.mob-lang-active {
    border-color: var(--gold); background: var(--gold-bg); color: var(--gold-d); font-weight: 700;
}

/* ── Stopka (responsywność — _footer.php) ── */
@media(max-width:700px){
    footer > div > div:first-of-type{grid-template-columns:1fr 1fr!important}
    footer > div > div:first-of-type > div:first-child{grid-column:1/-1}
}
@media(max-width:480px){
    footer > div > div:first-of-type{grid-template-columns:1fr!important}
}
