/* GMYRU Newsletter v1.3 – Minimal Card Popup */

/* ─── Overlay ─── */
.gnl-popup { position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; padding:16px; }
.gnl-overlay { position:absolute; inset:0; background:rgba(0,0,0,0.65); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); }

/* ─── Karta ─── */
.gnl-card {
    position:relative; z-index:1;
    width:100%; max-width:400px;
    background:#111118;
    border:1.5px solid #993556;
    border-radius:20px;
    padding:36px 32px 28px;
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    animation:gnlIn .35s cubic-bezier(.2,.9,.3,1) both;
}
@keyframes gnlIn {
    from { opacity:0; transform:translateY(18px) scale(.97); }
    to   { opacity:1; transform:translateY(0) scale(1); }
}

/* ─── Zamknij ─── */
.gnl-close {
    position:absolute; top:13px; right:13px;
    width:28px; height:28px;
    background:rgba(153,53,86,.12);
    border:0.5px solid rgba(153,53,86,.3);
    border-radius:6px;
    cursor:pointer;
    color:rgba(255,255,255,.45);
    font-size:13px; line-height:1;
    display:flex; align-items:center; justify-content:center;
    padding:0; transition:background .2s;
}
.gnl-close:hover { background:rgba(153,53,86,.3); color:#fff; }

/* ─── Logo ─── */
.gnl-logo-wrap { display:flex; justify-content:center; margin-bottom:16px; }
.gnl-logo { width:80px; height:80px; object-fit:contain; display:block; }

/* ─── Dekoracyjna linia ─── */
.gnl-divider { width:28px; height:1.5px; background:#993556; border-radius:2px; margin:0 auto 18px; }

/* ─── Nagłówek ─── */
.gnl-header { text-align:center; margin-bottom:20px; }
.gnl-title { margin:0 0 6px; font-size:20px; font-weight:600; color:#fff; letter-spacing:-.3px; line-height:1.2; }
.gnl-sub { margin:0; font-size:13px; color:rgba(255,255,255,.48); line-height:1.55; }
.gnl-sub strong { color:#d4537e; font-weight:500; }

/* ─── Formularz ─── */
.gnl-form { display:flex; flex-direction:column; gap:9px; margin-bottom:16px; }

.gnl-input {
    width:100%; padding:11px 14px;
    background:#1c1c26 !important;
    border:1px solid rgba(153,53,86,.45);
    border-radius:10px;
    color:#fff !important; font-size:14px;
    outline:none;
    transition:border-color .2s, box-shadow .2s;
    box-sizing:border-box;
    -webkit-appearance:none;
    appearance:none;
}
.gnl-input--secondary {
    border-color:rgba(255,255,255,.15);
    background:#1c1c26 !important;
}
.gnl-input::placeholder { color:rgba(255,255,255,.32) !important; }
.gnl-input:-webkit-autofill,
.gnl-input:-webkit-autofill:hover,
.gnl-input:-webkit-autofill:focus {
    -webkit-box-shadow:0 0 0 100px #1c1c26 inset !important;
    -webkit-text-fill-color:#fff !important;
    transition:background-color 9999s ease-in-out 0s;
}
.gnl-input:focus {
    border-color:#993556;
    box-shadow:0 0 0 3px rgba(153,53,86,.18);
}
.gnl-input--secondary:focus { border-color:rgba(153,53,86,.5); }
.gnl-input--error { border-color:#d4537e !important; animation:gnlShake .35s ease; }

.gnl-email-wrap { display:flex; flex-direction:column; gap:5px; }
.gnl-err { font-size:12px; color:#d4537e; padding-left:2px; }

@keyframes gnlShake {
    0%,100%{ transform:translateX(0) }
    20%{ transform:translateX(-6px) }
    40%{ transform:translateX(6px) }
    60%{ transform:translateX(-4px) }
    80%{ transform:translateX(4px) }
}

.gnl-btn {
    width:100%; padding:12px;
    background:#993556; border:none; border-radius:10px;
    color:#fff; font-size:14px; font-weight:600;
    cursor:pointer; letter-spacing:.02em;
    transition:background .2s, transform .15s;
    margin-top:2px;
}
.gnl-btn:hover { background:#b03d65; }
.gnl-btn:active { transform:scale(.98); }
.gnl-btn:disabled { opacity:.6; cursor:not-allowed; }

/* ─── Sukces ─── */
.gnl-success { display:flex; flex-direction:column; align-items:center; gap:10px; padding:16px 0; margin-bottom:16px; }
.gnl-success-icon {
    width:38px; height:38px; border-radius:50%;
    background:rgba(153,53,86,.15);
    border:1.5px solid #993556;
    display:flex; align-items:center; justify-content:center;
    color:#d4537e; font-size:17px;
}
.gnl-success-msg { margin:0; font-size:13px; color:rgba(255,255,255,.72); text-align:center; line-height:1.6; }
.gnl-success-msg strong { color:#d4537e; font-weight:500; }

/* ─── Stopka ─── */
.gnl-footer { border-top:0.5px solid rgba(255,255,255,.07); padding-top:14px; text-align:center; }
.gnl-later { font-size:12px; color:rgba(255,255,255,.28); text-decoration:none; letter-spacing:.02em; transition:color .2s; }
.gnl-later:hover { color:rgba(212,83,126,.7); }

/* ─── Responsywność ─── */
@media (max-width:480px) {
    .gnl-card { padding:28px 22px 22px; border-radius:16px; }
    .gnl-title { font-size:18px; }
}
@media (prefers-reduced-motion:reduce) {
    .gnl-card { animation:none !important; }
    .gnl-input--error { animation:none !important; }
}

/* ─── Formularz shortcode ─── */
.gmyru-newsletterMsg.success { color:#22c55e; }
.gmyru-newsletterMsg.error   { color:#ef4444; }

/* Zgoda + link do regulaminu newslettera */
.gmyru-newsletterConsent {
    grid-column: 1 / -1;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 2px;
    font-size: 12px;
    line-height: 1.55;
    color: rgba(255,255,255,.70);
    text-align: left;
    cursor: pointer;
}
.gmyru-newsletterConsent input[type="checkbox"] {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
    accent-color: #ff1493;
    cursor: pointer;
}
.gmyru-newsletterConsent a { color:#ff1493; text-decoration:underline; }
.gmyru-newsletterConsent > span { flex:1 1 auto; min-width:0; }

@media (max-width: 600px) {
    .gmyru-newsletterConsent { font-size:11px; line-height:1.5; gap:8px; }
}
