/* Přihlášení, registrace a obnova hesla do členské sekce (includes/member-auth.php).
   Styl blogu: Anton, Open Sans, Dancing Script, tmavě zelená, šalvěj, krémový papír. */
:root {
    --ma-zelena: #064a3c; --ma-zelena-t: #043228; --ma-salvej: #7ead9b; --ma-salvej-t: #5f957f;
    --ma-krem: #f8f5f3; --ma-papir: #eee8df; --ma-ink: #3d3b3a; --ma-ink-2: #6b6764; --ma-linka: #e3ddd4; --ma-bila: #fffdfa;
    --ma-cervena: #c41e3a;
}
html, body { height: 100%; }
body { margin: 0; font-family: 'Open Sans', system-ui, -apple-system, sans-serif; color: var(--ma-ink); background: var(--ma-krem); -webkit-font-smoothing: antialiased; }

.ma-page { min-height: 100vh; min-height: 100dvh; display: grid; grid-template-columns: minmax(380px, 46%) 1fr; }

/* Zelený panel s elfkou */
.ma-side {
    position: relative; overflow: hidden; isolation: isolate;
    background: var(--ma-zelena); color: #fff;
    padding: 36px 44px; display: flex; flex-direction: column;
}
.ma-side::before { /* jemné světlo za elfkou */
    content: ""; position: absolute; z-index: -1; width: 620px; height: 620px; border-radius: 50%;
    right: -160px; bottom: -180px; background: radial-gradient(closest-side, rgba(126,173,155,.35), rgba(126,173,155,0));
}
.ma-brand { display: inline-flex; align-items: center; gap: 12px; color: #fff; text-decoration: none; font-family: 'Anton', sans-serif; text-transform: uppercase; font-size: 1.2rem; letter-spacing: .03em; }
.ma-brand img { width: 40px; height: 40px; border-radius: 11px; }
.ma-brand:hover { color: #fff; }
.ma-side-txt { margin-top: 7vh; max-width: 26rem; position: relative; z-index: 1; }
.ma-kicker { margin: 0; font-family: 'Anton', sans-serif; text-transform: uppercase; font-size: clamp(2.4rem, 4.2vw, 3.6rem); line-height: 1.02; letter-spacing: .01em; }
.ma-claim { margin: .3rem 0 1.6rem; font-family: 'Dancing Script', cursive; font-weight: 600; font-size: clamp(1.4rem, 2.2vw, 1.85rem); line-height: 1.2; color: var(--ma-salvej); }
.ma-perks { list-style: none; padding: 0; margin: 0; display: grid; gap: .7rem; max-width: 19rem; }
.ma-perks li { display: flex; gap: .75rem; align-items: flex-start; font-size: .95rem; line-height: 1.45; color: #dbe8e3; }
.ma-perks i { color: var(--ma-salvej); width: 18px; text-align: center; margin-top: .2rem; }
.ma-elf { position: absolute; right: 7%; bottom: -24px; height: min(52vh, 480px); width: auto; z-index: 0; filter: drop-shadow(0 18px 30px rgba(0,0,0,.25)); }

/* Formulář */
.ma-main { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 40px 24px; }
.ma-card { width: 100%; max-width: 430px; }
.ma-title { margin: 0; font-family: 'Anton', sans-serif; font-weight: 400; text-transform: uppercase; color: var(--ma-zelena); font-size: clamp(2.2rem, 4vw, 3rem); line-height: 1.05; letter-spacing: .01em; }
.ma-sub { margin: .25rem 0 1.8rem; font-family: 'Dancing Script', cursive; font-weight: 600; font-size: 1.6rem; color: var(--ma-salvej-t); line-height: 1.15; }
.ma-card .form-label { font-weight: 700; font-size: .9rem; color: var(--ma-ink); margin-bottom: .35rem; }
.ma-card .form-control {
    border: 1.5px solid var(--ma-linka); border-radius: 12px; padding: .8rem 1rem; font-size: 1rem; background: #fff; color: var(--ma-ink);
}
.ma-card .form-control:focus { border-color: var(--ma-salvej); box-shadow: 0 0 0 .2rem rgba(126,173,155,.25); }
.ma-card .form-check-input:checked { background-color: var(--ma-zelena); border-color: var(--ma-zelena); }
.ma-card .form-check-label { font-size: .88rem; color: var(--ma-ink-2); }
.ma-pass { position: relative; }
.ma-pass .form-control { padding-right: 3rem; }
.ma-pass-toggle { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border: 0; background: transparent; color: var(--ma-ink-2); border-radius: 10px; }
.ma-pass-toggle:hover { color: var(--ma-zelena); background: var(--ma-papir); }
.ma-row { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin: -.2rem 0 1.2rem; font-size: .88rem; }
.ma-btn {
    display: flex; align-items: center; justify-content: center; gap: .6rem; width: 100%;
    border: 0; border-radius: 999px; padding: .9rem 1.4rem; font-weight: 700; font-size: 1rem;
    background: var(--ma-zelena); color: #fff; text-decoration: none; cursor: pointer;
    transition: background .2s, transform .2s cubic-bezier(.16,1,.3,1);
}
.ma-btn:hover { background: var(--ma-salvej-t); color: #fff; }
.ma-btn:active { transform: translateY(1px) scale(.98); }
.ma-btn.ghost { background: transparent; color: var(--ma-zelena); border: 1.5px solid var(--ma-salvej); }
.ma-btn.ghost:hover { background: var(--ma-papir); color: var(--ma-zelena); }
.ma-alt { margin-top: 1.6rem; padding-top: 1.4rem; border-top: 1px solid var(--ma-linka); text-align: center; color: var(--ma-ink-2); font-size: .95rem; }
.ma-card a:not(.ma-btn) { color: var(--ma-salvej-t); font-weight: 700; text-decoration: none; }
.ma-card a:not(.ma-btn):hover { color: var(--ma-zelena); text-decoration: underline; text-underline-offset: 3px; }
.ma-card .alert { border: 0; border-radius: 12px; font-size: .92rem; }
.ma-note { background: var(--ma-papir); border-radius: 14px; padding: 14px 16px; font-size: .9rem; line-height: 1.5; color: var(--ma-ink); margin-bottom: 1.4rem; }
.ma-note b { color: var(--ma-zelena); }
.ma-notice { background: #fff3cd; color: #6b4e00; border-radius: 12px; padding: 10px 14px; font-size: .88rem; margin-bottom: 1.2rem; }
.ma-foot { margin: 1.6rem 0 0; font-size: .88rem; }
.ma-foot a { color: var(--ma-ink-2); text-decoration: none; }
.ma-foot a:hover { color: var(--ma-zelena); }
.ma-card :focus-visible, .ma-foot :focus-visible { outline: 3px solid var(--ma-salvej); outline-offset: 2px; }
.ma-secret { font-family: ui-monospace, Menlo, monospace; font-size: 1.25rem; letter-spacing: .04em; background: #fff; border: 1.5px dashed var(--ma-salvej); border-radius: 12px; padding: .8rem 1rem; text-align: center; color: var(--ma-zelena); word-break: break-all; }

/* Tablet a mobil: elfka nahoře, formulář pod ní */
@media (max-width: 991.98px) {
    .ma-page { grid-template-columns: 1fr; grid-template-rows: auto 1fr; }
    .ma-side { padding: calc(18px + env(safe-area-inset-top, 0px)) 20px 0; min-height: 250px; }
    .ma-side-txt { margin-top: 18px; max-width: 58%; }
    .ma-kicker { font-size: 2.1rem; }
    .ma-claim { font-size: 1.3rem; margin-bottom: 1rem; }
    .ma-perks { display: none; }
    .ma-elf { height: 236px; right: 6%; bottom: -22px; }
    .ma-main { justify-content: flex-start; padding: 0 16px calc(28px + env(safe-area-inset-bottom, 0px)); }
    .ma-card { background: var(--ma-bila); border-radius: 22px; padding: 26px 20px; margin-top: -26px; position: relative; z-index: 1; box-shadow: 0 10px 30px rgba(61,59,58,.10); max-width: 520px; }
    .ma-title { font-size: 2rem; }
    .ma-sub { font-size: 1.35rem; margin-bottom: 1.3rem; }
}
@media (max-width: 380px) {
    .ma-side-txt { max-width: 62%; }
    .ma-kicker { font-size: 1.8rem; }
    .ma-elf { height: 210px; right: 2%; }
}
@media (prefers-reduced-motion: reduce) { .ma-btn { transition: none; } }
