:root{
    --bg:#fdfdfd;
    --card:#ffffff;
    --muted:rgba(0,0,0,0.66);
    --text:#3a3a3a;
    --line:#dcd5d2;
    --soft:#eeeceb;
    --accent:#5d4037;
}

.cennik-wrap{
    max-width:1500px;
    margin:0 auto;
    padding:28px 16px 48px;
}

.cennik-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
}

details.cennik-section{
    border:1px solid var(--line);
    background:#f8f5f3;
    border-radius:6px;
    overflow:hidden;
}

details.cennik-section[open]{
    background:#ebe6e3;
    box-shadow:none;
}

.cennik-section summary{
    list-style:none;
    cursor:pointer;
    padding:22px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    user-select:none;
}

.cennik-section summary::-webkit-details-marker{
    display:none;
}

.cennik-title{
    display:flex;
    flex-direction:column;
    gap:4px;
    min-width:0;
}

.cennik-title > strong{
    font-family:"EB Garamond", Georgia, "Times New Roman", serif;
    font-size:20px;
    font-weight:700;
    color:#000;
    line-height:1.25;
}

.cennik-title span{
    font-size:14px;
    color:var(--muted);
}

.cennik-chev{
    width:34px;
    height:34px;
    border-radius:6px;
    border:1px solid var(--line);
    display:grid;
    place-items:center;
    background:#fff;
    flex:0 0 auto;
}

details[open] .cennik-chev{
    transform:rotate(180deg);
}

.cennik-chev svg{
    width:16px;
    height:16px;
    fill:var(--accent);
}

.cennik-content{
    padding:0 20px 22px;
}

.cennik-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    border:0!important;
    border-radius:0;
    background:transparent;
}

.entry-content .cennik-table th,
.entry-content .cennik-table td{
    padding:10px 0 10px 10px;
    border-top:0;
    border-bottom:1px solid var(--line);
    vertical-align:top;
}

.entry-content .cennik-table tr:last-child td{
    border-bottom:0;
}

.entry-content .cennik-table th{
    text-align:left;
    color:rgba(0,0,0,0.76);
    font-weight:600;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.06em;
    background:transparent;
}

.entry-content .cennik-table td{
    font-size:14px;
    color:var(--text);
}

.cennik-price{
    white-space:nowrap;
    font-weight:700;
    color:var(--accent);
}

.cennik-meta{
    white-space:nowrap;
    color:rgba(0,0,0,0.6);
    font-size:12px;
}

.cennik-split{
    display:grid;
    grid-template-columns:1fr;
    gap:36px;
}

@media (min-width:860px){
    .cennik-content .cennik-split{
        grid-template-columns:1fr 1fr;
    }
    
    .cennik-content .cennik-combo-grid{
        grid-template-columns:1fr 1fr;
    }
}

.cennik-mini{
    border:0;
    border-radius:0;
    padding:10px;
    background:transparent;
}

.cennik-mini h3{
    margin:0 0 10px;
    font-size:18px;
    color:#000;
    font-family:"EB Garamond", Georgia, "Times New Roman", serif;
    font-weight:700;
}

.cennik-combo-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
}

.cennik-combo-card{
    border:1px solid var(--line);
    border-radius:6px;
    background:#f2eeec;
    padding:14px;
}

.cennik-combo-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
}

.cennik-combo-name{
    font-family:"EB Garamond", Georgia, "Times New Roman", serif;
    font-weight:700;
    font-size:18px;
    margin:0;
    color:#000;
    line-height:1.2;
}

.cennik-combo-price{
    font-family:Lato, Helvetica, Arial, sans-serif;
    font-weight:800;
    white-space:nowrap;
    font-size:16px;
    color:var(--accent);
}

.cennik-combo-lines{
    display:grid;
    gap:6px;
}

.cennik-combo-line{
    color:rgba(0,0,0,0.76);
    font-size:14px;
    line-height:1.5;
    font-family:Lora, Georgia, "Times New Roman", serif;
}

.cennik-combo-desc{
    color:rgba(0,0,0,0.76);
    font-size:14px;
}

.cennik-combo-card .cennik-description{
    margin-top:10px;
    margin-bottom:0;
    font-size:11px;
    font-weight:400;
    color:var(--accent);
}

@media (max-width:640px){
    .cennik-wrap{
        padding:18px 12px 28px;
    }
    
    .cennik-section summary{
        padding:16px 14px;
    }
    
    .cennik-content{
        padding:0 14px 16px;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }
    
    .cennik-title > strong{
        font-size:18px;
    }
    
    .cennik-title span{
        font-size:13px;
    }
    
    .cennik-split{
        gap:18px;
    }
    
    .cennik-table{
        min-width:560px;
    }
    
    .cennik-table th,
    .cennik-table td{
        padding:10px 12px;
    }
    
    .cennik-table th{
        position:sticky;
        top:0;
    }
    
    .cennik-combo-card{
        padding:12px;
    }
    
    .cennik-combo-name{
        font-size:17px;
    }
    
    .cennik-combo-price{
        font-size:15px;
    }
}
