.dkc{--navy:#1a202c;--navy2:#2b6cb0;--blue:#edf2f7;--gold:#ef6315;--bg:#f7fafc;--border:#d9e2ec;--green:#13612e;--text:#2d3748;box-sizing:border-box;color:var(--text);font-family:inherit}.dkc *{box-sizing:border-box}
.dkc--wide{width:min(1540px,calc(100vw - 28px));max-width:none;margin:24px 0 34px 50%;transform:translateX(-50%);border:1px solid var(--border);border-radius:22px;background:#fff;box-shadow:0 20px 55px rgba(8,40,68,.10);overflow:hidden}
.dkc__topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 28px;border-bottom:1px solid var(--border);background:#fff}.dkc__topbar h2{margin:2px 0 0;color:var(--navy);font-size:clamp(25px,2.2vw,38px);line-height:1.1}.dkc__eyebrow{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}.dkc__top-price{text-align:right}.dkc__top-price span,.dkc__checkout span{display:block;color:#667783;font-size:13px}.dkc__top-price strong,.dkc__checkout strong{color:var(--navy);font-size:28px}
.dkc__app{display:grid;grid-template-columns:minmax(255px,310px) minmax(520px,1fr) minmax(285px,350px);min-height:680px}.dkc__panel{padding:22px;background:#fff}.dkc__panel--left{border-right:1px solid var(--border)}.dkc__panel--right{border-left:1px solid var(--border);max-height:760px;overflow:auto}.dkc__panel-title{display:flex;align-items:center;gap:10px;margin-bottom:18px}.dkc__panel-title>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--navy);color:#fff;font-size:13px;font-weight:900}.dkc__panel-title h3{margin:0;color:var(--navy);font-size:18px}.dkc__subheading{margin:20px 0 10px;padding-top:16px;border-top:1px solid var(--border);font-weight:900;color:var(--navy)}
.dkc label{display:grid;gap:6px;margin-bottom:13px}.dkc label span{font-size:12px;font-weight:800;color:var(--navy)}.dkc input,.dkc select{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text)}.dkc input:focus,.dkc select:focus{outline:3px solid rgba(239,99,21,.20);border-color:var(--gold)}.dkc__two-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dkc__stage{min-width:0;padding:18px 22px;background:linear-gradient(180deg,#fbfdfe 0%,#f5f8fa 100%)}.dkc__stage-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#62727e;font-size:12px}.dkc__stage-head>div{display:flex;align-items:center;gap:8px;color:var(--navy);font-size:15px}.dkc__view-dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(22,131,19,.12)}.dkc__drawing{display:grid;place-items:center;min-height:560px;margin-top:12px;border:1px solid var(--border);border-radius:18px;background:#fff;overflow:hidden}.dkc__drawing svg{display:block;width:100%;height:auto;max-height:610px}.dkc__legend{display:flex;justify-content:center;flex-wrap:wrap;gap:22px;margin-top:12px;font-size:12px;color:#62727e}.dkc__legend>div{display:flex;align-items:center;gap:7px}.dkc__legend i{display:block;width:22px;height:17px;border:1px solid #aebbc3;border-radius:3px}.dkc__measure-line{display:block;width:28px;border-top:2px solid var(--green)}
.dkc__secondary,.dkc__primary{border:0;border-radius:10px;padding:12px 15px;font-weight:900;cursor:pointer}.dkc__secondary{width:100%;margin-bottom:14px;background:#edf2f7;color:var(--navy)}.dkc__primary{background:var(--gold);color:#fff;min-width:220px}.dkc__fields{display:grid;gap:12px}.dkc__field-card{padding:15px;border:1px solid var(--border);border-radius:14px;background:#f9fbfc}.dkc__field-card h4{margin:0 0 12px;color:var(--navy);font-size:17px}.dkc__field-card label:last-child{margin-bottom:0}.dkc__hidden{display:none!important}
.dkc__bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px 28px;border-top:1px solid var(--border);background:#fff}.dkc__breakdown{max-width:600px}.dkc__breakdown summary{cursor:pointer;color:var(--navy);font-weight:900}.dkc__breakdown>div{margin-top:10px}.dkc__breakdown>div>div{display:flex;justify-content:space-between;gap:20px;padding:6px 0;border-top:1px solid var(--border);font-size:13px}.dkc__checkout{display:flex;align-items:center;gap:25px}.dkc__checkout>div{text-align:right}.dkc__notice{margin:0;padding:0 28px 18px;color:#74838d;font-size:11px}
.dkc__dialog{width:min(720px,calc(100% - 30px));border:0;border-radius:18px;padding:26px}.dkc__dialog::backdrop{background:rgba(4,18,29,.65)}.dkc__dialog-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:28px;cursor:pointer}.dkc__dialog pre{max-height:420px;overflow:auto;padding:15px;border-radius:10px;background:#0c1f31;color:#d8edf5;font-size:12px}
@media(max-width:1180px){.dkc__app{grid-template-columns:280px minmax(440px,1fr)}.dkc__panel--right{grid-column:1/-1;border-left:0;border-top:1px solid var(--border);max-height:none}.dkc__fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.dkc--wide{width:calc(100vw - 16px);border-radius:14px}.dkc__topbar,.dkc__bottom{align-items:flex-start;grid-template-columns:1fr;flex-direction:column}.dkc__app{display:flex;flex-direction:column}.dkc__panel--left,.dkc__panel--right{border:0;border-bottom:1px solid var(--border)}.dkc__stage{order:-1;padding:14px}.dkc__drawing{min-height:360px}.dkc__fields{grid-template-columns:1fr}.dkc__checkout{width:100%;justify-content:space-between}.dkc__primary{min-width:0}.dkc__top-price{text-align:left}}
@media(max-width:520px){.dkc__topbar,.dkc__panel,.dkc__bottom{padding:17px}.dkc__two-cols{grid-template-columns:1fr}.dkc__checkout{align-items:stretch;flex-direction:column}.dkc__checkout>div{text-align:left}.dkc__primary{width:100%}}
/* v0.3.2: globale keuzes boven de tekening */
.dkc__global{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;padding:22px 28px;border-bottom:1px solid var(--border);background:#f8fafb}
.dkc__step{position:relative;display:flex;align-items:flex-start;gap:10px;padding:15px;border:1px solid var(--border);border-radius:14px;background:#fff}.dkc__step>b{flex:0 0 25px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--navy);color:#fff;font-size:12px}.dkc__step>label,.dkc__step>div{flex:1;margin:0}.dkc__step--sizes{grid-column:span 2}.dkc__step--colors{grid-column:span 2}.dkc__group-label{display:block;margin-bottom:8px;font-size:12px;font-weight:800;color:var(--navy)}.dkc__three-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dkc__workspace{display:grid;grid-template-columns:minmax(620px,1fr) minmax(300px,380px)}.dkc__workspace .dkc__panel--right{border-left:1px solid var(--border);max-height:780px;overflow:auto}.dkc__options{padding:18px 28px;border-top:1px solid var(--border);background:#f8fafb}.dkc__options label{max-width:420px;margin:0}.dkc__cart-message{margin:0;padding:0 28px 12px;color:var(--green);font-weight:800}.dkc__cart-message a{color:var(--navy);text-decoration:underline}.dkc__primary:disabled{opacity:.7;cursor:wait}
@media(max-width:1180px){.dkc__global{grid-template-columns:repeat(2,minmax(0,1fr))}.dkc__workspace{grid-template-columns:1fr}.dkc__workspace .dkc__panel--right{border-left:0;border-top:1px solid var(--border);max-height:none}}
@media(max-width:780px){.dkc__global{grid-template-columns:1fr;padding:16px}.dkc__step--sizes,.dkc__step--colors{grid-column:auto}.dkc__three-cols{grid-template-columns:1fr}.dkc__workspace .dkc__stage{order:0}}

/* v0.3.3: glas boven tekening */
.dkc__step--glass{grid-column:span 2}
@media(max-width:780px){.dkc__step--glass{grid-column:auto}}


.dkc__cart-message{margin-top:20px}
.dkc__success{font-weight:700;color:#15803d;margin-bottom:12px}
.dkc__success-actions{display:flex;gap:12px;align-items:center}
.dkc__success-actions button,.dkc__goto-cart{padding:12px 18px;border-radius:8px;text-decoration:none;border:none;background:#2b6cb0;color:#fff;cursor:pointer;font-weight:600}

/* v0.5.2: betaalkeuze */
.dkc__bottom{grid-template-columns:minmax(0,1fr) auto}
.dkc__payment-choice{display:grid;grid-template-columns:auto minmax(210px,1fr) minmax(250px,1fr);align-items:stretch;gap:10px;max-width:820px}
.dkc__payment-title{align-self:center;margin-right:4px;color:var(--navy);font-weight:900}
.dkc__payment-choice label{display:flex;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:#f9fbfc;cursor:pointer}
.dkc__payment-choice input{flex:0 0 auto;width:18px;min-height:18px;height:18px;margin:2px 0 0;accent-color:var(--navy)}
.dkc__payment-choice label>span{display:grid;gap:2px}
.dkc__payment-choice strong{color:var(--navy);font-size:14px}
.dkc__payment-choice small{color:#667783;font-size:12px;line-height:1.35}
.dkc__payment-choice label:has(input:checked){border-color:var(--navy2);box-shadow:0 0 0 2px rgba(43,108,176,.10);background:#f4f8fb}
@media(max-width:1100px){.dkc__bottom{grid-template-columns:1fr}.dkc__payment-choice{grid-template-columns:1fr 1fr}.dkc__payment-title{grid-column:1/-1}.dkc__checkout{justify-content:flex-end}}
@media(max-width:680px){.dkc__payment-choice{grid-template-columns:1fr}.dkc__payment-title{grid-column:auto}.dkc__checkout{justify-content:space-between}}


/* v0.5.3: link naar de hoofdproductcategorie */
.dkc__category{margin:0;padding:17px 28px 20px;border-top:1px solid var(--border);background:#fff;color:#667783;font-size:14px}
.dkc__category strong{color:var(--navy)}
.dkc__category a{color:var(--navy);font-weight:800;text-decoration:underline;text-underline-offset:2px}
.dkc__category a:hover{color:var(--navy2)}
@media(max-width:520px){.dkc__category{padding:16px 17px 18px}}


/* v0.5.5: volledige productlayout voor alle Derakozijn Configurator-producten */
.dkc-product-page .woocommerce-product-gallery,
.dkc-product-page .woocommerce-product-gallery__wrapper,
.dkc-product-page .flex-viewport,
.dkc-product-page .flex-control-thumbs{
 display:none!important;
}
.dkc-product-page #primary,
.dkc-product-page .site-main,
.dkc-product-page .content-area,
.dkc-product-page .woocommerce,
.dkc-product-page .product{
 width:100%;
 max-width:1440px;
 margin-left:auto;
 margin-right:auto;
}
.dkc-product-page div.product{display:block}
.dkc-product-page div.product .summary{
 width:100%!important;
 max-width:none!important;
 float:none!important;
 margin:0!important;
}
.dkc-product-page .product_title{
 text-align:center;
 font-size:48px;
 margin-bottom:15px;
}
.dkc-product-page .woocommerce-product-details__short-description{
 max-width:900px;
 margin:0 auto 40px;
 text-align:center;
}
.dkc-product-page .dkc-configurator{
 width:100%;
 max-width:1440px;
 margin:40px auto;
}
.dkc-product-page .related.products,
.dkc-product-page .up-sells,
.dkc-product-page .product_meta{
 display:none!important;
}
.dkc-product-page .woocommerce-tabs{margin-top:60px}
.dkc-product-page form.cart{margin-top:40px}
.dkc-product-page .single_add_to_cart_button{
 padding:18px 40px;
 font-size:18px;
}
@media(max-width:780px){
 .dkc-product-page .product_title{font-size:clamp(32px,9vw,48px)}
}

/* v0.5.18: profielbeelden gecorrigeerd, hoofdpunten in hoofdletters en foto iets groter */
.dkc__step--profile{grid-column:span 2}
.dkc__profile-choice{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:12px;width:100%}
.dkc__profile-choice img{display:block;width:78px;height:78px;object-fit:cover;border:1px solid var(--border);border-radius:10px;background:#eef3f5}
.dkc__profile-choice label{margin:0}
.dkc__profile-choice small{display:block;color:#72818b;font-size:11px;line-height:1.25}
.dkc__size-control{display:grid;grid-template-columns:minmax(100px,1fr) 92px;align-items:center;gap:10px}
.dkc__size-control input[type=range]{min-height:24px;height:24px;padding:0;border:0;border-radius:0;background:transparent;accent-color:var(--navy2);cursor:pointer}
.dkc__size-control input[type=number]{min-height:42px}
.dkc__top-price small,.dkc__checkout small{display:block;margin-top:2px;color:#7b8992;font-size:11px;font-weight:500}
.dkc__top-price small span,.dkc__checkout small span{display:inline;color:inherit;font-size:inherit}
.dkc__field-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.dkc__field-card-head h4{margin:0}
.dkc__remove-field{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid #e4c6c6;border-radius:8px;background:#fff;color:#a33434;font-size:20px;line-height:1;cursor:pointer}
.dkc__remove-field:hover{background:#fff6f6}
.dkc__add-field{width:100%;margin-top:14px;padding:12px 15px;border:1px dashed #b8cad5;border-radius:10px;background:#fff;color:var(--navy);font-weight:900;cursor:pointer}
.dkc__add-field:hover{background:#f5f9fb}
.dkc__add-field:disabled{color:#8b979f;background:#f2f5f6;cursor:not-allowed}
@media(max-width:780px){.dkc__step--profile{grid-column:auto}}
@media(max-width:520px){.dkc__profile-choice{grid-template-columns:62px minmax(0,1fr)}.dkc__profile-choice img{width:62px;height:62px}.dkc__size-control{grid-template-columns:1fr 82px}}

/* v0.5.19: standaard WooCommerce-bestelformulier uitsluitend op Derakozijn-configuratorproducten verbergen */
.dkc-product-page form.cart{display:none!important}
