
/* Layout kalkulatora */
.ke-layout{display:grid;grid-template-columns:1fr 340px;gap:25px;align-items:start}
.ke-main{min-width:0}
.ke-sidebar{position:sticky;top:120px}

.ke-calculator{max-width:100%;margin:0;font-family:inherit}

.ke-section{background:#f8f9fa;border-radius:12px;padding:20px;margin-bottom:15px}
.ke-section h3{margin:0 0 15px 0;color:#2c5530;border-bottom:2px solid #2c5530;padding-bottom:8px;font-size:16px}
.ke-section h3 span{font-size:12px;color:#666;font-weight:400}

.ke-device-row{display:grid;grid-template-columns:28px 1fr 80px 80px 70px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #e0e0e0}
.ke-device-row:last-child{border-bottom:none}
.ke-device-row input[type=checkbox]{width:18px;height:18px;cursor:pointer;min-width:18px}
.ke-device-name{font-weight:500;font-size:13px;line-height:1.3}
.ke-device-name small{display:block;color:#666;font-weight:400;font-size:10px}
.ke-device-row input[type=number]{width:100%;padding:6px 4px;border:2px solid #ddd;border-radius:6px;font-size:13px;text-align:center;min-width:0}
.ke-device-row input[type=number]:focus{border-color:#2c5530;outline:none}
.ke-device-row input:disabled{background:#eee;color:#999}
.ke-wh{font-weight:700;color:#2c5530;text-align:center;font-size:12px}
.ke-wh.zero{color:#ccc}
.ke-header-row{display:grid;grid-template-columns:28px 1fr 80px 80px 70px;gap:10px;padding:0 0 8px 0;font-weight:700;font-size:11px;color:#555;text-transform:uppercase}

.ke-custom-add{margin-top:15px;padding:15px;background:#fff;border-radius:8px;border:2px dashed #ccc}
.ke-custom-add input{padding:8px;border:2px solid #ddd;border-radius:6px;margin-right:8px;margin-bottom:8px;font-size:13px}
.ke-custom-add button{background:#2c5530;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:700;font-size:13px}
.ke-custom-add button:hover{background:#1a3a1f}

/* Sidebar z podsumowaniem */
.ke-summary-panel{background:linear-gradient(135deg,#2c5530 0%,#1a3a1f 100%);color:#fff;border-radius:12px;padding:20px;margin-bottom:15px}
.ke-summary-panel h3{color:#fff;margin:0 0 20px 0;text-align:center;font-size:18px;border-bottom:1px solid rgba(255,255,255,0.3);padding-bottom:10px}

.ke-stat{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,0.15)}
.ke-stat:last-child{border-bottom:none}
.ke-stat-label{font-size:13px;opacity:0.9}
.ke-stat-value{font-size:22px;font-weight:700}
.ke-stat-unit{font-size:12px;opacity:0.7;margin-left:4px}

.ke-reco-panel{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px rgba(0,0,0,0.1);margin-bottom:15px}
.ke-reco-panel h4{color:#2c5530;margin:0 0 15px 0;font-size:14px;text-transform:uppercase}
.ke-reco-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #eee}
.ke-reco-item:last-child{border-bottom:none}
.ke-reco-item-label{font-size:13px;color:#666}
.ke-reco-item-value{font-size:16px;font-weight:700;color:#2c5530}
.ke-reco-item-note{font-size:11px;color:#999;text-align:right}

.ke-warning-panel{background:#fff3cd;border:2px solid #ffc107;border-radius:12px;padding:15px;margin-bottom:15px;display:none}
.ke-warning-panel.show{display:block}
.ke-warning-panel h4{color:#856404;margin:0 0 8px 0;font-size:13px}
.ke-warning-panel p{color:#856404;margin:0;font-size:12px;line-height:1.4}

.ke-tips-panel{background:#e8f5e9;border-radius:12px;padding:15px;border-left:4px solid #2c5530}
.ke-tips-panel h4{margin:0 0 10px 0;color:#2c5530;font-size:13px}
.ke-tips-panel ul{margin:0;padding-left:18px;color:#2c5530;font-size:12px}
.ke-tips-panel li{margin-bottom:6px}

.ke-high-power{color:#d32f2f;font-weight:700}

/* TABLET */
@media(max-width:1024px){
    .ke-layout{grid-template-columns:1fr;gap:20px}
    .ke-sidebar{position:relative;top:0;order:-1}
    .ke-summary-panel{padding:15px}
    .ke-stat{padding:10px 0}
    .ke-stat-value{font-size:20px}
}

/* MOBILE */
@media(max-width:600px){
    .ke-section{padding:15px;margin-bottom:12px}
    .ke-section h3{font-size:14px;margin-bottom:12px}
    
    .ke-device-row{grid-template-columns:24px 1fr 60px 55px 50px;gap:6px;padding:6px 0}
    .ke-header-row{grid-template-columns:24px 1fr 60px 55px 50px;gap:6px;font-size:9px}
    .ke-device-row input[type=checkbox]{width:16px;height:16px;min-width:16px}
    .ke-device-name{font-size:12px}
    .ke-device-name small{font-size:9px}
    .ke-device-row input[type=number]{padding:4px 2px;font-size:11px}
    .ke-wh{font-size:10px}
    
    .ke-custom-add input{width:100% !important;margin-right:0;margin-bottom:10px}
    .ke-custom-add button{width:100%}
    
    .ke-summary-panel{padding:12px}
    .ke-summary-panel h3{font-size:16px;margin-bottom:15px;padding-bottom:8px}
    .ke-stat{padding:8px 0}
    .ke-stat-label{font-size:12px}
    .ke-stat-value{font-size:18px}
    
    .ke-reco-panel{padding:15px}
    .ke-reco-panel h4{font-size:12px}
    .ke-reco-item{padding:8px 0;flex-wrap:wrap}
    .ke-reco-item-label{font-size:12px}
    .ke-reco-item-value{font-size:14px}
    
    .ke-tips-panel{padding:12px}
    .ke-tips-panel h4{font-size:12px}
    .ke-tips-panel ul{font-size:11px;padding-left:15px}
}

/* FORCE SHOW sidebar on calculators - SUPER STRONG - HIGH SPECIFICITY */
.page-template-default.page.page-id-1029 #secondary,
.page-template-default.page.page-id-1237 #secondary,
.page-template-default.page.page-id-1238 #secondary,
.page-template-default.page.page-id-1239 #secondary,
.page-template-default.page.page-id-1029 .ct-sidebar-wrapper,
.page-template-default.page.page-id-1237 .ct-sidebar-wrapper,
.page-template-default.page.page-id-1238 .ct-sidebar-wrapper,
.page-template-default.page.page-id-1239 .ct-sidebar-wrapper {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Make content area NOT full width - OVERRIDE DEFAULT TEMPLATE RULE */
.page-template-default.page.page-id-1029 #primary,
.page-template-default.page.page-id-1237 #primary,
.page-template-default.page.page-id-1238 #primary,
.page-template-default.page.page-id-1239 #primary,
.page-template-default.page.page-id-1029 .content-area,
.page-template-default.page.page-id-1237 .content-area,
.page-template-default.page.page-id-1238 .content-area,
.page-template-default.page.page-id-1239 .content-area {
    width: 70% !important;
    max-width: 70% !important;
    float: left !important;
}

/* MOBILE FIX - full width on small screens */
@media (max-width: 768px) {
    .page-template-default.page.page-id-1029 #primary,
    .page-template-default.page.page-id-1237 #primary,
    .page-template-default.page.page-id-1238 #primary,
    .page-template-default.page.page-id-1239 #primary,
    .page-template-default.page.page-id-1029 .content-area,
    .page-template-default.page.page-id-1237 .content-area,
    .page-template-default.page.page-id-1238 .content-area,
    .page-template-default.page.page-id-1239 .content-area {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
    }
    
    .page-template-default.page.page-id-1029 #secondary,
    .page-template-default.page.page-id-1237 #secondary,
    .page-template-default.page.page-id-1238 #secondary,
    .page-template-default.page.page-id-1239 #secondary,
    .page-template-default.page.page-id-1029 .ct-sidebar-wrapper,
    .page-template-default.page.page-id-1237 .ct-sidebar-wrapper,
    .page-template-default.page.page-id-1238 .ct-sidebar-wrapper,
    .page-template-default.page.page-id-1239 .ct-sidebar-wrapper {
        display: none !important;
    }
}

/* Info box spacing */
.kalk-defaults-info {
    background: #e7f3ff;
    border-left: 4px solid #2c5530;
    border-radius: 6px;
    padding: 12px 15px;
    margin-bottom: 30px !important;
    font-size: 13px;
    color: #333;
}
.ke-calculator {
    margin-top: 15px;
}
.ke-section:first-child {
    margin-top: 0;
}
@media(max-width:600px){
    .kalk-defaults-info {
        margin-bottom: 35px !important;
    }
}

/* Fix sticky - nadpisz overflow na parentach */
.entry-content,
.refined-magazine-content-area,
.refined-magazine-content-container,
article.page,
.site-content,
#primary,
.content-area {
    overflow: visible !important;
}

.ke-layout {
    overflow: visible !important;
}

.ke-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
    align-self: start;
}

