/* Kalkulačka materiálu na terasu – Dsft_TerraceCalc */
.kdc *{box-sizing:border-box}
.kdc{--g:#1c6b3d;--g2:#e8f1eb;--r:#d7262e;--b:#d9dfdb;--t:#1f2a24;--m:#5b6660;color:var(--t);max-width:1100px;margin:0 auto;font-size:16px;line-height:1.5}
.kdc h1{font-size:30px;line-height:1.2;margin:8px 0 6px}
.kdc .kdc-lead{color:var(--m);margin:0 0 20px}
.kdc .kdc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:24px}
@media(max-width:860px){.kdc .kdc-grid{grid-template-columns:1fr}}
.kdc .kdc-card{border:1px solid var(--b);border-radius:8px;padding:18px;background:#fff}
.kdc .kdc-step{margin:0 0 16px}
.kdc label.kdc-l{display:block;font-weight:700;margin:0 0 6px;font-size:15px}
.kdc .kdc-hint{display:block;color:var(--m);font-size:13px;margin-top:4px}
.kdc select,.kdc input[type=number]{width:100%;padding:10px 12px;border:1px solid var(--b);border-radius:6px;font-size:16px;background:#fff;color:var(--t)}
.kdc .kdc-seg{display:flex;flex-wrap:wrap;gap:6px}
.kdc .kdc-seg button{flex:1 1 auto;padding:9px 12px;border:1px solid var(--b);border-radius:6px;background:#fff;cursor:pointer;font-size:15px;color:var(--t)}
.kdc .kdc-seg button[aria-pressed=true]{background:var(--g);border-color:var(--g);color:#fff;font-weight:700}
.kdc .kdc-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kdc table{width:100%;border-collapse:collapse;font-size:14px}
.kdc th,.kdc td{padding:8px 6px;border-bottom:1px solid var(--b);text-align:left;vertical-align:top}
.kdc td.n,.kdc th.n{text-align:right;white-space:nowrap}
.kdc td a{color:var(--g);text-decoration:underline}
.kdc .kdc-tot td{font-weight:700;border-bottom:0}
.kdc .kdc-sum{background:var(--g2);border-radius:8px;padding:14px 16px;margin:14px 0}
.kdc .kdc-big{font-size:26px;font-weight:800;color:var(--g)}
.kdc .kdc-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.kdc .kdc-btn{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:6px;font-weight:700;font-size:15px;cursor:pointer;border:2px solid var(--g);text-decoration:none}
.kdc .kdc-btn.p{background:var(--g);color:#fff}
.kdc .kdc-btn.s{background:#fff;color:var(--g)}
.kdc .kdc-btn[disabled]{opacity:.6;cursor:wait}
.kdc .kdc-note{font-size:13px;color:var(--m);margin-top:12px}
.kdc .kdc-msg{margin-top:10px;font-size:14px}
.kdc .kdc-promo{border-left:4px solid var(--r);background:#fdecea;padding:10px 14px;border-radius:4px;margin:0 0 18px;font-size:15px}
.kdc .kdc-lrow{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 6px}
.kdc .kdc-lrow label.kdc-l{margin:0}
.kdc .kdc-lrow .kdc-chk{margin:0;font-size:14px;font-weight:400}
.kdc .kdc-chk{display:flex;gap:8px;align-items:center;font-size:15px;margin-top:8px;cursor:pointer}
.kdc input[type=checkbox]{-webkit-appearance:none;appearance:none;width:20px;height:20px;min-width:20px;margin:0;padding:0;border:1.5px solid #1f2a24 !important;border-radius:3px;background:#fff none !important;color:#000;box-shadow:none !important;display:inline-grid;place-content:center;cursor:pointer;vertical-align:middle}
.kdc input[type=checkbox]::after{content:'';width:6px;height:11px;border:solid #000;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px);opacity:0}
.kdc input[type=checkbox]:checked{background:#fff none !important;border-color:#000 !important}
.kdc input[type=checkbox]:checked::after{opacity:1}
.kdc input[type=checkbox]:focus-visible{outline:2px solid var(--g);outline-offset:2px}
.kdc input[type=checkbox]:disabled{opacity:.5}
.kdc .kdc-files{display:block;width:100%;font-size:14px;padding:8px;border:1px dashed var(--b);border-radius:6px;background:#fafbfa}
.kdc .kdc-flist{font-size:13px;color:var(--m);margin:4px 0 0;padding:0;list-style:none}
.kdc .kdc-sub-t{font-weight:700;font-size:13px;color:var(--m);text-transform:uppercase;letter-spacing:.03em}
.kdc .kdc-dis{opacity:.45;pointer-events:none}
.kdc .kdc-off{color:var(--r);font-weight:700;white-space:nowrap}
.kdc .kdc-btn.p,.kdc .kdc-btn.s{flex:1 1 220px}
.kdc .kdc-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.kdc .kdc-tool{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid var(--b);border-radius:6px;background:#fff;color:var(--t);font-size:14px;cursor:pointer;text-decoration:none;white-space:nowrap}
.kdc .kdc-tool:hover{border-color:var(--g);color:var(--g)}
.kdc .kdc-tool svg{width:16px;height:16px;flex:none}
.kdc .kdc-ov{position:fixed;inset:0;background:rgba(15,25,20,.55);z-index:9999;display:none;align-items:flex-start;justify-content:center;padding:24px 12px;overflow-y:auto}
.kdc .kdc-ov.o{display:flex}
.kdc .kdc-mod{background:#fff;border-radius:10px;max-width:560px;width:100%;padding:22px;position:relative;box-shadow:0 10px 40px rgba(0,0,0,.25)}
.kdc .kdc-mod h2{font-size:22px;line-height:1.25;margin:0 30px 6px 0}
.kdc .kdc-x{position:absolute;top:10px;right:10px;width:36px;height:36px;border:0;background:none;font-size:26px;line-height:1;cursor:pointer;color:var(--m)}
.kdc .kdc-f{margin:0 0 12px}
.kdc .kdc-f label{display:block;font-weight:700;font-size:14px;margin:0 0 4px}
.kdc .kdc-f input[type=text],.kdc .kdc-f input[type=email],.kdc .kdc-f input[type=tel],.kdc .kdc-f textarea,.kdc .kdc-f select{width:100%;padding:10px 12px;border:1px solid var(--b);border-radius:6px;font-size:16px;font-family:inherit;color:var(--t);background:#fff}
.kdc .kdc-f textarea{min-height:70px;resize:vertical}
.kdc .kdc-f .kdc-chk{align-items:flex-start;font-weight:400;font-size:14px}
.kdc .kdc-f .kdc-chk input{margin-top:2px}
.kdc .kdc-box{background:var(--g2);border-radius:6px;padding:10px 12px;font-size:14px;margin:0 0 12px}
.kdc .kdc-small{font-size:12px;color:var(--m)}
.kdc .kdc-err{color:var(--r);font-size:14px;margin:6px 0 0}
.kdc .kdc-ok{background:var(--g2);border-left:4px solid var(--g);padding:12px 14px;border-radius:4px}
.kdc .kdc-linkbox{display:flex;gap:8px;margin-top:8px}
.kdc .kdc-linkbox input{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--b);border-radius:6px;font-size:14px}
/* v3.1: sdílení, odkazy mezi kalkulačkami, text a FAQ pod kalkulačkou */
.kdc-tool:disabled{opacity:.6;cursor:wait}
.kdc-sharebtns{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.kdc-mats{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:28px 0 8px;padding:12px 16px;border:1px solid var(--b);border-radius:8px;background:var(--g2);font-size:15px}
.kdc-mats span{color:var(--m)}
.kdc-mats a{color:var(--g);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.kdc-mats strong{color:var(--t)}
.kdc-seo{max-width:820px;margin:24px 0 8px}
.kdc-seo h2{font-size:22px;line-height:1.3;margin:28px 0 10px}
.kdc-seo h3{font-size:17px;line-height:1.35;margin:18px 0 6px}
.kdc-seo p{margin:0 0 12px}
.kdc-seo ul,.kdc-seo ol{margin:0 0 14px;padding-left:22px}
.kdc-seo ul{list-style:disc}
.kdc-seo ol{list-style:decimal}
.kdc-seo li{margin:0 0 6px}
.kdc-seo a{color:var(--g);text-decoration:underline;text-underline-offset:2px}
.kdc-seo table{width:100%;border-collapse:collapse;margin:8px 0 16px;font-size:15px}
.kdc-seo th,.kdc-seo td{border:1px solid var(--b);padding:8px 10px;text-align:left;vertical-align:top}
.kdc-seo th{background:var(--g2)}
.kdc-faq{margin-top:28px;border-top:1px solid var(--b)}
.kdc-faq-i{padding:4px 0 2px;border-bottom:1px solid var(--b)}
.kdc-faq-a p{color:var(--t)}
@media(max-width:640px){.kdc-seo h2{font-size:20px}.kdc-seo table{font-size:14px}.kdc-seo th,.kdc-seo td{padding:6px 8px}.kdc-mats{margin-top:20px}}
/* odkazy na FAQ ostatních kalkulaček */
.kdc-faq-i:target{background:var(--g2);margin:0 -12px;padding:4px 12px 2px;border-radius:6px}
.kdc-faq-more{max-width:1100px;margin:32px 0 8px}
.kdc-faq-more h2{font-size:22px;line-height:1.3;margin:0 0 12px}
.kdc-faq-more-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.kdc-faq-more-c{border:1px solid var(--b);border-radius:8px;padding:14px 16px;background:#fff}
.kdc-faq-more-c h3{font-size:17px;margin:0 0 8px}
.kdc-faq-more-c h3 a{color:var(--t);text-decoration:none}
.kdc-faq-more-c ul{list-style:disc;margin:0 0 10px;padding-left:20px}
.kdc-faq-more-c li{margin:0 0 6px}
.kdc-faq-more-c li a,.kdc-faq-all{color:var(--g);text-decoration:underline;text-underline-offset:2px}
.kdc-faq-all{font-weight:600;font-size:15px}
.kdc-row3{display:grid;grid-template-columns:1fr 1.3fr 1.3fr;gap:8px}
@media(max-width:640px){.kdc-row3{grid-template-columns:1fr 1fr}.kdc-row3>div:last-child{grid-column:1/-1}}
