@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@300;400;500;600&display=swap');
:root{--cream:var(--connect-bg, #f4ecdd);--paper:#fffcf6cf;--text:#463b33;--muted:#796d63;--line:var(--connect-border, #654d3b29);--accent:#76543b;--gold:#c58a2a}*{box-sizing:border-box}html{overflow-x:clip}body{min-width:0;min-height:100vh;margin:0;overflow-x:clip;color:var(--text);font-family:Inter,Arial,sans-serif;background:radial-gradient(circle at 16% 10%,#fffceb,transparent 30%),linear-gradient(145deg,#fbf7ef,var(--connect-bg, #f4ecdd) 58%,#f8f1e6)}button,input{font:inherit}.support-header{display:flex;align-items:center;justify-content:space-between;width:min(100% - 48px,1050px);margin:auto;padding:30px 0 12px}.support-brand{color:var(--text);font-size:.82rem;font-weight:600;letter-spacing:.24em;text-decoration:none}.back-link{color:#76543b;font-size:.82rem;text-underline-offset:3px}.support-shell{display:grid;gap:24px;width:min(100% - 40px,1050px);margin:34px auto 64px}.support-hero,.support-card,.voluntary-note{border:1px solid var(--line);border-radius:28px;background:var(--paper);box-shadow:0 18px 48px #503a2911}.support-hero{padding:clamp(34px,6vw,68px);text-align:center}.eyebrow{margin:0 0 10px;color:#9a6b36;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.support-hero h1{margin:0;color:#6f513a;font:600 clamp(2.7rem,6vw,4.7rem)/.98 "Cormorant Garamond",serif}.support-hero .lead{margin:24px auto 0;color:#5f4b3c;font:500 clamp(1.25rem,2.5vw,1.75rem)/1.25 "Cormorant Garamond",serif}.support-hero>p:last-child{max-width:760px;margin:18px auto 0;color:var(--muted);font-size:.95rem;line-height:1.75}.voluntary-note{padding:clamp(25px,4vw,38px);border-color:#c598572e;background:#fff8df9c}.voluntary-note strong{display:block;color:#6d4b2f;font:600 clamp(1.25rem,2.5vw,1.65rem)/1.35 "Cormorant Garamond",serif}.voluntary-note p{margin:12px 0 0;color:#74675d;font-size:.88rem;line-height:1.65}.support-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.support-card{padding:clamp(26px,4vw,40px)}.support-card h2{margin:0 0 16px;color:#73543d;font:600 clamp(1.7rem,3vw,2.25rem)/1.1 "Cormorant Garamond",serif}.support-card ul{margin:0;padding-left:20px;color:var(--muted);line-height:1.9}.author-card p{margin:8px 0;color:var(--muted)}.author-card .author-name{color:#5c4839;font:600 1.45rem "Cormorant Garamond",serif}.author-card a{color:#875d34;text-underline-offset:3px}.contribution-card{padding:clamp(30px,5vw,52px)}.section-heading{max-width:720px}.section-heading h2{margin-bottom:12px}.section-heading>p:last-child{margin:0;color:var(--muted);font-size:.88rem;line-height:1.65}.amount-fieldset{margin:30px 0 0;padding:0;border:0}.amount-fieldset legend{margin-bottom:13px;font-weight:600}.amount-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.amount-option{display:block;cursor:pointer}.amount-option input{position:absolute;opacity:0}.amount-option span{display:flex;align-items:center;justify-content:center;min-height:50px;padding:10px;border:1px solid #76543b35;border-radius:14px;background:#fffdf8a6;color:#615348;font-weight:600;transition:.16s}.amount-option input:checked+span{border-color:#9a6b36;background:#f4e7c9;box-shadow:0 0 0 2px #c58a2a24}.amount-option input:focus-visible+span{outline:3px solid #996c305c;outline-offset:3px}.custom-amount{display:block;margin:22px 0 8px;font-size:.82rem;font-weight:600}.custom-amount-input{width:min(100%,280px);padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fffdf8;color:#5d5148}.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.payment-options button{display:grid;gap:5px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#eee8de;color:#867c73;text-align:left;cursor:not-allowed}.payment-options button span{font-weight:600}.payment-options button small{font-size:.61rem;letter-spacing:.12em}.payment-note{margin:16px 0 0;color:#81756b;font-size:.75rem;line-height:1.6}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #996c305c;outline-offset:4px}footer{padding:0 20px 34px;color:#8a6a52;font-size:.76rem;text-align:center}
@media(max-width:700px){.support-header{width:calc(100% - 28px);padding-top:22px}.support-shell{width:calc(100% - 20px);margin-top:24px}.support-columns{grid-template-columns:1fr}.amount-options{grid-template-columns:repeat(2,minmax(0,1fr))}.amount-option--other{grid-column:1/-1}.payment-options{grid-template-columns:1fr}.support-hero,.support-card,.voluntary-note{border-radius:22px}}
@media(max-width:420px){.support-header{align-items:flex-start}.support-shell{gap:16px}.support-hero{padding:34px 22px}.support-card,.voluntary-note{padding:25px 20px}.amount-options{gap:8px}.amount-option span{min-height:46px}.custom-amount-input{width:100%}}

.support-methods{padding:clamp(30px,5vw,52px);border:1px solid var(--line);border-radius:28px;background:var(--paper);box-shadow:0 18px 48px #503a2911}.section-heading h2{margin:0 0 12px;color:#73543d;font:600 clamp(1.7rem,3vw,2.25rem)/1.1 "Cormorant Garamond",serif}.payment-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}.payment-card{min-width:0;padding:clamp(24px,3.5vw,34px);border:1px solid rgba(101,77,59,.17);border-radius:22px;background:rgba(255,253,248,.72);box-shadow:0 10px 30px rgba(80,57,42,.06)}.payment-card-kicker{margin:0 0 7px;color:#9a6b36;font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.payment-card h3{margin:0;color:#674b37;font:600 clamp(1.8rem,3.5vw,2.35rem)/1.08 "Cormorant Garamond",serif}.payment-card>p:not(.payment-card-kicker):not(.payment-assurance):not(.copy-status){margin:12px 0 0;color:var(--muted);font-size:.9rem;line-height:1.65}.payment-details{display:grid;gap:0;margin:24px 0 0}.payment-details>div{padding:13px 0;border-top:1px solid rgba(101,77,59,.12)}.payment-details dt{margin-bottom:5px;color:#867466;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.payment-details dd{min-width:0;margin:0;color:#4f4137;font-size:.92rem;font-weight:600;line-height:1.55}.payment-details--compact{margin-bottom:28px}.copy-value-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.copy-value-row>span{min-width:0;overflow-wrap:anywhere;font-family:"Segoe UI",Arial,sans-serif;letter-spacing:.035em}.copy-button{min-height:34px;padding:6px 10px;border:1px solid rgba(118,84,59,.24);border-radius:999px;background:rgba(255,250,242,.9);color:#76543b;font-size:.72rem;font-weight:600;cursor:pointer}.copy-button:hover{background:#f3e8d6}.correspondent-detail{opacity:.82}.payment-details .detail-explanation{margin-top:7px;color:#81746a;font-size:.76rem;font-weight:400;line-height:1.5}.payment-primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid #76543b;border-radius:999px;background:#76543b;color:#fffaf2;font-size:.86rem;font-weight:600;text-decoration:none;box-shadow:0 8px 20px rgba(80,57,42,.14)}.payment-primary-action:hover{background:#684934}.payment-assurance{margin:14px 0 0;color:#83766c;font-size:.74rem;line-height:1.55}.copy-status{min-height:1.4em;margin:10px 0 0;color:#6b594b;font-size:.75rem;line-height:1.4}.payment-card a:focus-visible,.copy-button:focus-visible{outline:3px solid #996c305c;outline-offset:3px}
@media(max-width:700px){.support-methods{border-radius:22px}.payment-cards{grid-template-columns:1fr}}
@media(max-width:420px){.support-methods{padding:25px 20px}.payment-card{padding:22px 18px}.copy-value-row{gap:8px}.copy-button{padding-inline:9px}}
.custom-amount-wrap[hidden]{display:none}

/* =========================================================
   CONNECT – Podporiť CONNECT vložené do AfterLogin
   ========================================================= */

.afterlogin-content .support-shell {
    width: 100%;
    max-width: none;
    margin: 0;
    gap: 24px;
}

/* Úvod */
.afterlogin-content .support-hero {
    padding: clamp(38px, 4vw, 58px);
}

.afterlogin-content .support-hero h1 {
    font-size: clamp(2.8rem, 4vw, 4rem);
}

.afterlogin-content .support-hero > p:last-child {
    max-width: 900px;
    font-size: 1rem;
}

/* Možnosti podpory */
.afterlogin-content .support-methods {
    padding: clamp(32px, 4vw, 48px);
}

.afterlogin-content .section-heading {
    max-width: 900px;
}

.afterlogin-content .payment-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.afterlogin-content .payment-card {
    padding: clamp(28px, 3vw, 38px);
}

/* SIGNATURE autora – samostatná značka modulu podpory */
.support-signature-stage {
    display: grid;
    min-height: clamp(470px, 48vw, 580px);
    margin-top: clamp(34px, 5vw, 70px);
    place-items: center;
    padding: clamp(22px, 4vw, 44px) 20px;
}

.support-signature-link {
    display: grid;
    justify-items: center;
    gap: 17px;
    width: min(420px, 100%);
    color: #8a6a52;
    opacity: .68;
    text-decoration: none;
    transform: translateY(0);
    transition: opacity .22s ease, transform .22s ease;
}

.support-signature-link img {
    display: block;
    width: min(350px, 88%);
    height: auto;
    object-fit: contain;
}

.support-signature-link span {
    font: 600 2.05rem/1.28 Arial, sans-serif;
    letter-spacing: .17em;
    text-align: center;
}

.support-signature-link:hover,
.support-signature-link:focus-visible {
    opacity: 1;
    transform: translateY(-6px);
}

.support-signature-link:focus-visible {
    border-radius: 8px;
    outline: 2px solid rgba(118, 84, 59, .42);
    outline-offset: 7px;
}

/* Na tomto module veľká značka nahrádza malú plávajúcu verziu. */
body:has(.afterlogin-support) > .connect-signature {
    display: none;
}

/* Spodné informačné karty */
.afterlogin-content .support-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

/* Desktop: úvodná karta kopíruje šírku vodorovnej navigácie. */
@media (min-width: 1101px) {
    .afterlogin-module[data-afterlogin-module="support"] .support-shell {
        width: 100%;
        max-width: none;
    }

    .afterlogin-module[data-afterlogin-module="support"] .support-shell > .support-methods,
    .afterlogin-module[data-afterlogin-module="support"] .support-shell > .support-columns {
        width: min(100%, 1050px);
        margin-inline: auto;
    }

    .afterlogin-module[data-afterlogin-module="support"] .support-hero,
    .afterlogin-module[data-afterlogin-module="support"] .voluntary-note {
        width: 100%;
        margin-inline: 0;
    }

    .afterlogin-module[data-afterlogin-module="support"] .payment-detail--inline {
        display: grid;
        grid-template-columns: max-content minmax(0, 1fr);
        align-items: center;
        column-gap: 6px;
    }

    .afterlogin-module[data-afterlogin-module="support"] .payment-detail--inline dt {
        margin-bottom: 0;
    }

    .afterlogin-module[data-afterlogin-module="support"] .payment-detail--inline dt::after {
        content: " :";
    }

    .afterlogin-module[data-afterlogin-module="support"] .payment-detail--inline .detail-explanation {
        grid-column: 1 / -1;
    }

    .afterlogin-module[data-afterlogin-module="support"] .support-signature-stage {
        flex: 1 1 auto;
        min-height: 0;
        margin-top: 20px;
        padding: 12px 10px 4px;
    }

    .afterlogin-module[data-afterlogin-module="support"] .payment-card {
        padding-bottom: 22px;
    }

    .afterlogin-module[data-afterlogin-module="support"] .payment-card--paypal {
        display: flex;
        flex-direction: column;
    }

    .afterlogin-module[data-afterlogin-module="support"] .support-signature-link {
        gap: 11px;
        width: min(240px, 100%);
    }

    .afterlogin-module[data-afterlogin-module="support"] .support-signature-link img {
        width: min(200px, 84%);
        height: auto;
    }

    .afterlogin-module[data-afterlogin-module="support"] .support-signature-link span {
        font-size: 1.18rem;
    }
}

/* Mobil */
@media (max-width: 700px) {
    .afterlogin-content .support-shell {
        width: 100%;
        gap: 16px;
    }

    .afterlogin-content .payment-cards,
    .afterlogin-content .support-columns {
        grid-template-columns: 1fr;
    }

    .afterlogin-content .support-hero,
    .afterlogin-content .support-methods,
    .afterlogin-content .support-card,
    .afterlogin-content .voluntary-note {
        padding-left: 20px;
        padding-right: 20px;
    }

    .support-signature-stage {
        min-height: 390px;
        margin-top: 28px;
        padding-block: 28px;
    }

    .support-signature-link {
        gap: 13px;
        width: min(290px, 100%);
    }

    .support-signature-link img {
        width: min(224px, 88%);
        height: auto;
    }

    .support-signature-link span {
        font-size: 1.36rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .support-signature-link { transition: none; }
}


/* CONNECT – jednoduchá platba cez QR */
.payment-qr {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin: 24px 0 20px;
    text-align: center;
}

.payment-qr img {
    display: block;
    width: min(220px, 70%);
    height: auto;
    padding: 10px;
    border: 1px solid rgba(101,77,59,.12);
    border-radius: 16px;
    background: #fff;
}

.payment-qr strong {
    color: #5f4b3c;
    font-size: .92rem;
    font-weight: 600;
}

.payment-bank-alternative {
    margin: 30px 0 0 !important;
    padding-top: 22px;
    border-top: 1px solid rgba(101,77,59,.12);
    color: #73543d !important;
    font-size: .82rem !important;
    font-weight: 600;
}

/* CONNECT – oddelenie QR platby od platby cez odkaz */
.payment-or {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin: 22px 0 12px;
    color: var(--muted);
    font-size: .72rem;
}

.payment-or::before,
.payment-or::after {
    content: "";
    flex: 1;
    height: 1px;
    background: rgba(101,77,59,.18);
}

.payment-or span {
    flex: 0 0 auto;
}

.payment-link-label {
    margin: 0 0 10px !important;
    color: var(--muted) !important;
    font-size: .78rem !important;
    font-weight: 500;
}


/* CONNECT – väčšie QR kódy */
.payment-qr img {
    width: 80%;
    max-width: 360px;
    height: auto;
}


/* CONNECT – mobil: QR kód nahrádza priamy platobný odkaz */
@media (max-width: 700px) {
    .payment-qr {
        display: none;
    }

    .payment-or {
        display: none;
    }

    .payment-link-label {
        margin-top: 18px !important;
        font-size: .88rem !important;
    }

    .payment-primary-action {
        width: 100%;
        min-height: 50px;
    }
}
