/* Kapitelo.cz / Kapitelo.com
   Společný vzhled celé platformové domény.
   platform.html i pro_autory.html mají obsah/layout, ne vlastní vizuální základ.
*/

:root {
    --kp-bg: #ece7df;
    --kp-card: rgba(255,255,255,.94);
    --kp-text: #1f1f1f;
    --kp-muted: #6c6a66;
    --kp-line: rgba(0,0,0,.08);
    --kp-soft: #f5f3ef;
    --kp-dark: #111;
    --kp-radius: 24px;
    --kp-shadow: 0 12px 35px rgba(0,0,0,.08);
}

body {
    background-color: var(--kp-bg);
}

.kp-page{max-width:1180px;margin:0 auto;padding:28px 20px 70px;}
.kp-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px;}
.kp-brand{font-size:28px;font-weight:800;color:var(--kp-text);text-decoration:none;letter-spacing:-.03em;}
.kp-nav{display:flex;gap:22px;flex-wrap:wrap;align-items:center;}
.kp-nav a{color:#4b4a47;text-decoration:none;font-weight:700;font-size:15px;}
.kp-nav a:hover{text-decoration:underline;}

.kp-hero{
    background:var(--kp-card);
    border-radius:28px;
    padding:56px;
    box-shadow:0 18px 50px rgba(0,0,0,.08);
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);
    gap:48px;
    align-items:center;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
.kp-kicker{margin:0 0 14px;text-transform:uppercase;letter-spacing:.14em;font-size:13px;color:#777;}
.kp-hero h1{margin:0;font-size:clamp(48px,7vw,82px);line-height:.95;letter-spacing:-.05em;}
.kp-lead{margin:24px 0 0;font-size:22px;line-height:1.5;color:#4f4d49;max-width:800px;}
.kp-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px;}
.kp-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:999px;text-decoration:none;font-weight:800;border:1px solid var(--kp-line);}
.kp-btn-primary{background:#111;color:#fff;}
.kp-btn-secondary{background:#fff;color:#111;}
.kp-note{background:var(--kp-soft);border-radius:22px;padding:26px;}
.kp-note h3{margin:0 0 10px;font-size:20px;}
.kp-note p{margin:0;color:#5b5955;line-height:1.55;}
.kp-note ul{margin:16px 0 0;padding-left:20px;color:#4f4d49;line-height:1.7;}

.kp-building{
    margin-top:22px;
    background:#171717;
    color:#fff;
    border-radius:22px;
    padding:22px 26px;
    display:flex;
    gap:18px;
    align-items:center;
    justify-content:space-between;
}
.kp-building strong{font-size:18px;}
.kp-building span{color:#d7d7d7;line-height:1.45;}

.kp-duo{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px;}
.kp-panel{
    background:var(--kp-card);
    border-radius:24px;
    padding:34px;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.kp-panel .kp-kicker{margin-bottom:10px;}
.kp-panel h2{margin:0 0 16px;font-size:28px;letter-spacing:-.02em;}
.kp-panel p{margin:0;color:#5b5955;line-height:1.65;}
.kp-panel ul{margin:18px 0 0;padding-left:20px;line-height:1.75;color:#4d4b47;}
.kp-panel .kp-actions{margin-top:24px;}

.kp-catalog{
    margin-top:28px;
    background:var(--kp-card);
    border-radius:28px;
    padding:34px;
    box-shadow:0 12px 35px rgba(0,0,0,.055);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
.kp-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px;}
.kp-section-head h2{margin:0;font-size:30px;}
.kp-section-head p{margin:4px 0 0;color:var(--kp-muted);}

.author-block{display:grid;grid-template-columns:92px 1fr;gap:22px;align-items:start;padding:18px 0;}
.author-block + .author-block{border-top:1px solid var(--kp-line);}
.author-photo img{width:92px;height:92px;display:block;object-fit:cover;border-radius:50%;}
.author-name{font-size:27px;font-weight:800;margin:0 0 6px;}
.author-name a{color:inherit;text-decoration:none;}
.author-name a:hover{text-decoration:underline;}
.author-tagline{color:#686560;line-height:1.5;margin-bottom:18px;max-width:800px;}

.book-list{display:grid;gap:16px;}
.platform-book-card{
    display:grid;
    grid-template-columns:180px 1fr;
    gap:28px;
    align-items:center;
    padding:22px;
    border-radius:20px;
    background:#f6f5f2;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
.platform-book-stack-link{display:block;width:150px;color:inherit;text-decoration:none;}
.platform-book-stack{position:relative;width:150px;height:190px;}
.platform-book-cover{position:absolute;top:0;width:120px;height:180px;object-fit:cover;border-radius:14px;box-shadow:0 10px 24px rgba(0,0,0,.18);border:1px solid rgba(0,0,0,.08);background:#eee;}
.platform-book-cover.is-third{left:32px;top:14px;z-index:1;opacity:.78;}
.platform-book-cover.is-second{left:16px;top:7px;z-index:2;opacity:.88;}
.platform-book-cover.is-first{left:0;top:0;z-index:3;}
.platform-book-placeholder{width:120px;height:180px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(0,0,0,.05);color:#aaa;font-size:44px;font-weight:700;}
.platform-book-title{margin:0 0 6px;font-size:34px;line-height:1.1;font-weight:800;letter-spacing:-.025em;}
.platform-book-title a{color:inherit;text-decoration:none;}
.platform-book-title a:hover{text-decoration:underline;}
.platform-book-meta{margin-bottom:12px;color:#6d6a66;font-size:15px;}
.platform-book-parts{margin-top:14px;display:grid;gap:8px;}
.platform-book-part-row{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;padding:10px 14px;border-radius:12px;background:#fff;color:inherit;text-decoration:none;}
a.platform-book-part-row:hover{background:#fcfcfc;}
.platform-book-part-row.is-preparing{opacity:.72;}
.platform-book-part-number{color:#777;}
.platform-book-part-title{font-weight:700;}
.platform-book-part-status{color:#777;white-space:nowrap;}

.kp-about{
    margin-top:28px;
    display:grid;
    grid-template-columns:1fr .75fr;
    gap:22px;
}
.kp-about-card{
    background:var(--kp-card);
    border-radius:24px;
    padding:34px;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.kp-about-card h2{margin:0 0 14px;font-size:28px;}
.kp-about-card p{margin:0;color:#5b5955;line-height:1.7;}
.kp-about-cta{background:#171717;color:#fff;border-radius:24px;padding:34px;display:flex;flex-direction:column;justify-content:center;}
.kp-about-cta .kp-kicker{color:#aaa;}
.kp-about-cta h2{margin:0 0 12px;font-size:30px;}
.kp-about-cta p{margin:0;color:#d8d8d8;line-height:1.6;}
.kp-about-cta .kp-btn{margin-top:22px;align-self:flex-start;background:#fff;color:#111;border:none;}

@media (max-width:850px){
    .kp-hero,.kp-duo,.kp-about{grid-template-columns:1fr;}
    .kp-hero{padding:34px;}
}
@media (max-width:700px){
    .kp-topbar{align-items:flex-start;flex-direction:column;}
    .kp-nav{gap:14px;}
    .kp-page{padding:20px 14px 48px;}
    .kp-hero,.kp-panel,.kp-catalog,.kp-about-card,.kp-about-cta{padding:24px;}
    .kp-hero h1{font-size:48px;}
    .kp-lead{font-size:19px;}
    .kp-building{align-items:flex-start;flex-direction:column;}
    .author-block{grid-template-columns:64px 1fr;gap:16px;}
    .author-photo img{width:64px;height:64px;}
    .platform-book-card{grid-template-columns:1fr;}
    .platform-book-stack{margin:0 auto;}
    .platform-book-title{font-size:28px;}
    .platform-book-part-row{grid-template-columns:32px 1fr;}
    .platform-book-part-status{grid-column:2;}
}


/* /pro-autory/ */
.author-page{max-width:1040px;margin:0 auto;padding:28px 20px 70px;}
.author-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;}
.author-top a{color:#222;text-decoration:none;font-weight:800;}
.author-hero,
.author-section,
.author-form-wrap {
    background: rgba(255,255,255,.90);
    border-radius: 26px;
    box-shadow: 0 14px 40px rgba(0,0,0,.07);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}
.author-hero{padding:50px;}
.author-kicker{margin:0 0 12px;text-transform:uppercase;letter-spacing:.14em;font-size:13px;color:#777;}
.author-hero h1{margin:0;font-size:clamp(44px,6vw,72px);line-height:1;letter-spacing:-.045em;}
.author-lead{margin:22px 0 0;max-width:780px;font-size:21px;line-height:1.55;color:#514f4b;}
.author-status{margin-top:24px;padding:18px 20px;border-radius:18px;background:#171717;color:#fff;}
.author-status strong{display:block;margin-bottom:4px;}
.author-status span{color:#d4d4d4;}

.author-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px;}
.author-section{padding:32px;}
.author-section h2{margin:0 0 14px;font-size:28px;}
.author-section p{color:#5a5752;line-height:1.65;margin:0;}
.author-section ul{padding-left:20px;line-height:1.8;color:#4e4b47;}

.author-form-wrap{margin-top:24px;padding:36px;}
.author-form-wrap h2{margin:0 0 8px;font-size:30px;}
.author-form-wrap > p{margin:0 0 24px;color:#5e5b56;line-height:1.6;}
.author-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.author-field{display:flex;flex-direction:column;gap:7px;}
.author-field.full{grid-column:1/-1;}
.author-field label{font-weight:800;font-size:14px;}
.author-field input,.author-field select,.author-field textarea{
    width:100%;box-sizing:border-box;border:1px solid rgba(0,0,0,.14);border-radius:14px;
    padding:13px 14px;font:inherit;background:#fff;
}
.author-field textarea{min-height:130px;resize:vertical;}
.author-check{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;color:#555;line-height:1.45;}
.author-check input{margin-top:3px;}
.author-submit{grid-column:1/-1;}
.author-submit button{
    border:0;border-radius:999px;background:#111;color:#fff;font:inherit;font-weight:800;
    padding:14px 22px;cursor:pointer;
}
.author-note{margin-top:14px;color:#777;font-size:13px;line-height:1.5;}
.author-success{margin:0 0 20px;padding:16px 18px;border-radius:14px;background:#f0f7ee;}
.author-error{margin:0 0 20px;padding:16px 18px;border-radius:14px;background:#fff0f0;}

@media(max-width:760px){
    .author-grid,.author-form{grid-template-columns:1fr;}
    .author-field.full,.author-check,.author-submit{grid-column:1;}
    .author-hero,.author-section,.author-form-wrap{padding:24px;}
}


/* Společná "okna" na platformové doméně */
.kp-hero,
.kp-panel,
.kp-catalog,
.kp-about-card,
.author-hero,
.author-section,
.author-form-wrap {
    background: var(--kp-card);
    border-radius: var(--kp-radius);
    box-shadow: var(--kp-shadow);
}

/* Žádný backdrop blur: okna mají mít konzistentní světlou výplň. */
.kp-hero,
.kp-panel,
.kp-catalog,
.kp-about-card,
.author-hero,
.author-section,
.author-form-wrap {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}


/* --------------------------------------------------
   Můj účet
   -------------------------------------------------- */

.account-page{
    max-width:1180px;
    margin:0 auto;
    display:grid;
    gap:22px;
}

.account-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    padding:18px 6px 8px;
}

.account-header h1{
    margin:3px 0 6px;
    font-size:clamp(42px,6vw,68px);
    line-height:1;
    letter-spacing:-.045em;
}

.account-header p{
    margin:0;
    color:var(--kp-muted);
}

.account-kicker,
.account-section-kicker{
    text-transform:uppercase;
    letter-spacing:.14em;
    font-size:12px;
    font-weight:800;
    color:#88847e;
}

.account-logout{
    color:#555;
    text-decoration:none;
    font-weight:700;
}

.account-logout:hover{
    text-decoration:underline;
}


/* Horní přehled */

.account-summary{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:18px;
}

.account-summary-card{
    background:var(--kp-card);
    border-radius:var(--kp-radius);
    box-shadow:var(--kp-shadow);
    padding:28px;
    min-height:150px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.account-summary-label{
    color:var(--kp-muted);
    font-weight:700;
    margin-bottom:8px;
}

.account-summary-card strong{
    font-size:38px;
    line-height:1;
    letter-spacing:-.04em;
}

.account-summary-card small{
    margin-top:10px;
    color:var(--kp-muted);
    line-height:1.4;
}


/* Sekce */

.account-section{
    background:var(--kp-card);
    border-radius:var(--kp-radius);
    box-shadow:var(--kp-shadow);
    padding:32px;
}

.account-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:24px;
}

.account-section-head h2{
    margin:4px 0 0;
    font-size:29px;
    letter-spacing:-.025em;
}

.account-columns{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}


/* Knihy */

.account-books{
    display:grid;
    gap:12px;
}

.account-book{
    background:var(--kp-soft);
    border-radius:18px;
    padding:20px 22px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}

.account-book-meta{
    color:var(--kp-muted);
    font-size:14px;
    margin-bottom:5px;
}

.account-book h3{
    margin:0;
    font-size:22px;
    letter-spacing:-.02em;
}


/* Peněženka */

.account-money-row{
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:13px 0;
    border-bottom:1px solid var(--kp-line);
}

.account-money-row span{
    color:var(--kp-muted);
}

.account-money-row strong{
    font-size:18px;
}

.account-money-total{
    margin-top:5px;
    border-bottom:0;
}

.account-money-total span,
.account-money-total strong{
    color:var(--kp-text);
    font-weight:800;
}

.account-money-total strong{
    font-size:24px;
}

.account-actions{
    margin-top:20px;
}


/* Affiliate */

.account-affiliate-code{
    display:inline-block;
    padding:10px 14px;
    border-radius:12px;
    background:var(--kp-soft);
    font-family:monospace;
    font-size:17px;
    font-weight:700;
    letter-spacing:.03em;
}

.account-muted{
    margin:22px 0 7px;
    color:var(--kp-muted);
    font-size:14px;
}

.account-copy-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
}

.account-copy-row input{
    min-width:0;
    border:1px solid rgba(0,0,0,.12);
    border-radius:14px;
    background:#fff;
}

.account-affiliate-stats{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:22px;
}

.account-affiliate-stats > div{
    background:var(--kp-soft);
    border-radius:16px;
    padding:18px;
}

.account-affiliate-stats strong{
    display:block;
    font-size:22px;
    margin-bottom:4px;
}

.account-affiliate-stats span{
    color:var(--kp-muted);
    font-size:13px;
}


/* Ledger */

.account-ledger{
    display:grid;
}

.account-ledger-row{
    display:grid;
    grid-template-columns:120px 1fr auto;
    gap:20px;
    align-items:center;
    padding:15px 0;
    border-top:1px solid var(--kp-line);
}

.account-ledger-row:first-child{
    border-top:0;
}

.account-ledger-date{
    color:#555;
    font-size:14px;
}

.account-ledger-date small{
    display:block;
    color:#999;
    margin-top:2px;
}

.account-ledger-main strong{
    display:block;
    font-size:15px;
}

.account-ledger-main span{
    display:block;
    color:var(--kp-muted);
    font-size:13px;
    margin-top:3px;
}

.account-ledger-amount{
    font-weight:800;
    white-space:nowrap;
    font-size:16px;
}

.account-ledger-amount.is-positive{
    color:#246b42;
}

.account-ledger-amount.is-negative{
    color:#8a3b35;
}

.account-empty{
    color:var(--kp-muted);
}


/* Responsive */

@media(max-width:800px){

    .account-summary{
        grid-template-columns:1fr;
    }

    .account-columns{
        grid-template-columns:1fr;
    }

    .account-header{
        align-items:flex-start;
        flex-direction:column;
    }

    .account-book{
        align-items:flex-start;
        flex-direction:column;
    }

    .account-ledger-row{
        grid-template-columns:90px 1fr;
    }

    .account-ledger-amount{
        grid-column:2;
    }
}

@media(max-width:520px){

    .account-section,
    .account-summary-card{
        padding:22px;
    }

    .account-copy-row{
        grid-template-columns:1fr;
    }

    .account-affiliate-stats{
        grid-template-columns:1fr;
    }

    .account-header h1{
        font-size:42px;
    }
}

.account-header-actions{
    display:flex;
    gap:18px;
    align-items:center;
}

.account-header-actions a{
    color:#555;
    text-decoration:none;
    font-weight:700;
}

.account-header-actions a:hover{
    text-decoration:underline;
}

.account-back{
    display:inline-block;
    margin-bottom:20px;
    color:#555;
    text-decoration:none;
    font-weight:700;
}

.account-back:hover{
    text-decoration:underline;
}

.account-auth-switch{
    margin-top:20px;
    color:var(--kp-muted);
}

.account-auth-switch a{
    color:var(--kp-text);
    font-weight:700;
    text-decoration:none;
}

.account-auth-switch a:hover{
    text-decoration:underline;
}

.featured-book {
    margin: 34px 0;
}

.featured-book-inner {
    display: grid;
    grid-template-columns: minmax(180px, 260px) 1fr;
    gap: 38px;
    padding: 34px;
    border-radius: 24px;
    background: rgba(255,255,255,0.72);
}

.featured-book-visual {
    min-width: 0;
}

.featured-book-cover {
    display: block;
    width: 100%;
    max-width: 260px;
    height: auto;
    border-radius: 16px;
    box-shadow: 0 18px 45px rgba(0,0,0,0.18);
}

.featured-book-part-covers {
    display: flex;
    gap: 8px;
    margin-top: 14px;
}

.featured-book-part-covers a {
    display: block;
    width: 31%;
}

.featured-book-part-covers img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 5px 14px rgba(0,0,0,0.15);
}

.featured-book-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.featured-book-author {
    margin-bottom: 6px;
    font-size: 15px;
    font-weight: 600;
    color: #777;
}

.featured-book-author a {
    color: inherit;
    text-decoration: none;
}

.featured-book-title {
    margin: 0 0 14px;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.05;
}

.featured-book-title a {
    color: inherit;
    text-decoration: none;
}

.featured-book-genres {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 18px;
}

.featured-book-genre {
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(0,0,0,0.06);
    font-size: 13px;
    font-weight: 600;
}

.featured-book-tagline {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
}

.featured-book-annotation {
    max-width: 720px;
    margin-bottom: 18px;
    color: #555;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.featured-book-status {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-bottom: 18px;
    font-size: 15px;
    color: #666;
}

.featured-book-price {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-bottom: 22px;
}

.featured-book-price-main {
    display: flex;
    align-items: baseline;
    gap: 7px;
}

.featured-book-price-label {
    color: #777;
}

.featured-book-price-main strong {
    font-size: 30px;
}

.featured-book-discount {
    display: flex;
    align-items: center;
    gap: 8px;
}

.featured-book-old-price {
    color: #888;
    text-decoration: line-through;
}

.featured-book-discount-badge {
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(0,0,0,0.08);
    font-size: 13px;
    font-weight: 700;
}

.featured-book-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

@media (max-width: 760px) {
    .featured-book-inner {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 22px;
    }

    .featured-book-cover {
        margin: 0 auto;
        max-width: 230px;
    }

    .featured-book-part-covers {
        justify-content: center;
    }

    .featured-book-part-covers a {
        max-width: 72px;
    }

    .featured-book-title {
        font-size: 32px;
    }
}

.featured-book-actions .kp-btn-primary {
    background: #111;
    color: #fff;
    border-color: #111;
}

.featured-book-actions .kp-btn-secondary {
    background: #fff;
    color: #111;
    border-color: rgba(0,0,0,.10);
}

.featured-book-actions .kp-btn-primary,
.featured-book-actions .kp-btn-primary:visited {
    color: #fff;
}

.featured-book-actions .kp-btn-secondary,
.featured-book-actions .kp-btn-secondary:visited {
    color: #111;
}


.featured-book-type {
    margin-bottom: 6px;
    color: #777;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .12em;
}

.featured-book-genres {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 8px;
}

.featured-book-genre {
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(0,0,0,.06);
    font-size: 13px;
    font-weight: 700;
}

.featured-book-themes {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 12px;
    margin-bottom: 20px;
    color: #777;
    font-size: 13px;
}

.featured-book-detail-link {
    display: inline-flex;
    align-items: center;
    padding: 14px 4px;
    color: #444;
    text-decoration: none;
    font-weight: 700;
}

.featured-book-detail-link:hover {
    text-decoration: underline;
}

.featured-book-genre {
    padding: 3px 0;
    border-radius: 0;
    background: none;
    font-size: 14px;
    font-weight: 800;
    color: #222;
}

.featured-book-genres {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-bottom: 8px;
}

.featured-book-themes {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 12px;
    margin-bottom: 20px;
    color: #777;
    font-size: 13px;
}

.featured-book-old-price {
    color: #8a8782;
    text-decoration: line-through;
    font-size: 15px;
}

.featured-book-price {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 8px 12px;
}

.featured-book-price strong {
    font-size: 24px;
}

/* --------------------------------------------------
   Kapitelo header v2
   Hlavní navigace + samostatný utility řádek
   -------------------------------------------------- */

.kp-site-header{
    margin-bottom:28px;
}

.kp-utility-row{
    min-height:28px;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    margin-bottom:8px;
}

.kp-utility-nav{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:16px;
    color:#66635f;
}

.kp-utility-nav .kp-nav-group summary,
.kp-utility-link{
    font-size:13px;
    font-weight:700;
    color:#66635f;
    text-decoration:none;
}

.kp-utility-link:hover{
    color:var(--kp-text);
    text-decoration:underline;
}

.kp-main-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
}

.kp-main-nav{
    display:flex;
    align-items:center;
    gap:26px;
}

.kp-main-nav > a,
.kp-main-nav > .kp-nav-group > summary{
    color:#403f3c;
    text-decoration:none;
    font-size:15px;
    font-weight:800;
}

.kp-main-nav > a:hover{
    text-decoration:underline;
}

.kp-nav-dropdown-right{
    left:auto;
    right:0;
    transform:none;
}

.kp-nav-dropdown-right::before{
    left:auto;
    right:18px;
    transform:rotate(45deg);
}

.kp-language-switch .kp-language-current{
    display:inline-flex;
    align-items:center;
    gap:.4rem;
}

.kp-language-switch .kp-nav-dropdown{
    min-width:190px;
}

.kp-language-switch .kp-nav-dropdown a{
    display:grid !important;
    grid-template-columns:21px 1fr auto !important;
    align-items:center !important;
    gap:.55rem !important;
    white-space:nowrap;
}

.kp-language-switch svg.kp-lang-flag,
.kp-language-switch .kp-nav-dropdown svg.kp-lang-flag{
    display:inline-block !important;
    width:21px !important;
    height:14px !important;
    min-width:21px !important;
    min-height:14px !important;
    max-width:21px !important;
    max-height:14px !important;
    flex:0 0 21px !important;
    border-radius:2px;
    box-shadow:0 0 0 1px rgba(0,0,0,.14);
    vertical-align:-2px;
}

.kp-language-switch .kp-nav-dropdown small,
.kp-currency-switch .kp-nav-dropdown small{
    opacity:.55;
    font-size:.75em;
    letter-spacing:.04em;
}

.kp-currency-switch .kp-nav-dropdown{
    min-width:115px;
}

.kp-currency-switch .kp-nav-dropdown a{
    display:grid !important;
    grid-template-columns:1fr auto !important;
    gap:.7rem !important;
    align-items:center !important;
}

.kp-account-switch .kp-nav-dropdown{
    min-width:165px;
}

.kp-explore-dropdown{
    min-width:280px;
    padding:10px;
}

.kp-explore-section + .kp-explore-section{
    margin-top:7px;
    padding-top:7px;
    border-top:1px solid rgba(0,0,0,.07);
}

.kp-explore-dropdown .kp-explore-heading{
    font-weight:850;
}

.kp-explore-section .kp-explore-heading ~ a{
    padding-left:22px;
    font-weight:600;
    opacity:.82;
}

.kp-explore-separator{
    height:1px;
    margin:7px 8px;
    background:rgba(0,0,0,.08);
}

@media (max-width:700px){
    .kp-site-header{
        margin-bottom:22px;
    }

    .kp-utility-row{
        margin-bottom:12px;
    }

    .kp-utility-nav{
        width:100%;
        justify-content:flex-end;
        gap:12px;
        flex-wrap:wrap;
    }

    .kp-main-row{
        align-items:flex-start;
        flex-direction:column;
        gap:14px;
    }

    .kp-main-nav{
        width:100%;
        gap:18px;
        flex-wrap:wrap;
    }

    .kp-explore-dropdown{
        left:0;
        transform:none;
    }

    .kp-explore-dropdown::before{
        left:24px;
        transform:rotate(45deg);
    }
}


/* --------------------------------------------------
   Kapitelo header v3
   Utility úplně nahoře, hlavní menu níže a vycentrované
   -------------------------------------------------- */

.kp-site-header{
    margin-bottom:28px;
}

.kp-utility-row{
    min-height:24px;
    display:flex;
    justify-content:flex-end;
    align-items:center;
    margin:-8px 0 20px;
}

.kp-utility-nav{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:18px;
}

.kp-utility-nav .kp-nav-group summary,
.kp-utility-link{
    color:#66635f;
    font-size:13px;
    font-weight:750;
    text-decoration:none;
}

.kp-main-row{
    display:grid;
    grid-template-columns:220px minmax(0,1fr) 220px;
    align-items:center;
    gap:24px;
}

.kp-main-nav{
    justify-self:center;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:30px;
    min-width:0;
}

.kp-main-nav > a,
.kp-main-nav > .kp-nav-group > summary{
    color:#403f3c;
    text-decoration:none;
    font-size:15px;
    font-weight:800;
    white-space:nowrap;
}

.kp-main-nav > a:hover{
    text-decoration:underline;
}

.kp-main-balance{
    width:220px;
}

.kp-nav-dropdown-right{
    left:auto;
    right:0;
    transform:none;
}

.kp-nav-dropdown-right::before{
    left:auto;
    right:18px;
    transform:rotate(45deg);
}

.kp-account-dropdown{
    min-width:210px;
}

.kp-account-dropdown a:first-child{
    font-size:14px;
    font-weight:700;
    opacity:1;
}

.kp-account-separator{
    height:1px;
    margin:6px 8px;
    background:rgba(0,0,0,.08);
}

.kp-explore-dropdown{
    min-width:280px;
}

.kp-explore-section + .kp-explore-section{
    margin-top:7px;
    padding-top:7px;
    border-top:1px solid rgba(0,0,0,.07);
}

.kp-explore-dropdown .kp-explore-heading{
    font-weight:850;
}

.kp-explore-section .kp-explore-heading ~ a{
    padding-left:22px;
    font-weight:600;
    opacity:.82;
}

.kp-explore-separator{
    height:1px;
    margin:7px 8px;
    background:rgba(0,0,0,.08);
}

@media (max-width:1050px){
    .kp-main-row{
        grid-template-columns:auto 1fr;
    }

    .kp-main-nav{
        justify-self:end;
        gap:20px;
        flex-wrap:wrap;
    }

    .kp-main-balance{
        display:none;
    }
}

@media (max-width:700px){
    .kp-utility-row{
        margin:0 0 14px;
    }

    .kp-utility-nav{
        width:100%;
        gap:12px;
        flex-wrap:wrap;
    }

    .kp-main-row{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:14px;
    }

    .kp-main-nav{
        width:100%;
        justify-content:flex-start;
        gap:16px 20px;
        flex-wrap:wrap;
    }

    .kp-explore-dropdown{
        left:0;
        transform:none;
    }

    .kp-explore-dropdown::before{
        left:24px;
        transform:rotate(45deg);
    }
}
