/* Only installed, product-bound model pages use this layout. Ordinary Woo products keep their grid. */
body.chipak-dynamic-product-page.single-product .woocommerce div.product{display:block;direction:rtl}
body.chipak-dynamic-product-page.single-product .woocommerce div.product>div.summary:empty{display:none}
body.chipak-dynamic-product-page.single-product .woocommerce div.product>div.summary{position:static;float:none!important;width:100%!important;max-width:none;margin:0!important;padding:0!important;border:0;box-shadow:none;background:transparent}
.cp-dynamic-product{clear:both;max-width:100%;min-width:0;margin:0 0 32px;scroll-margin-top:150px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view{--ink:var(--chipak-navy,#102235);--blue:var(--chipak-navy,#102235);--muted:#526174;--paper:#fff;--accent:var(--chipak-gold,#c89536);--line:#dde4ed;width:100%;max-width:none;min-width:0;padding:0;background:transparent;color:var(--ink);font-family:var(--font-body,Tahoma,Arial,sans-serif)}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .workbench{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:start;direction:rtl}
.cp-dynamic-product .cp-dynamic-visual-column{display:grid;gap:20px;min-width:0}
.cp-dynamic-product .cp-product-media{min-width:0;max-width:100%}
.cp-dynamic-product .cp-product-media-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-product-media-cards button{display:grid;gap:3px;text-align:right;min-width:0;padding:13px 15px;border:1px solid #dce3ec;border-radius:13px;background:#fff;color:var(--chipak-navy,#102235);cursor:pointer;font:inherit}
.cp-dynamic-product .cp-product-media-cards strong{font-size:14px;line-height:1.8}
.cp-dynamic-product .cp-product-media-cards span{font-size:11px;line-height:1.7;color:#526174}
.chipak-dynamic-product-page .cp-dynamic-product .cp-product-media-cards button[aria-pressed=true]{border-color:var(--chipak-gold,#c89536);background:#fff6df;box-shadow:inset 0 0 0 1px var(--chipak-gold,#c89536)}
.cp-dynamic-product .cp-product-photo{min-width:0;padding:12px;border:1px solid #dce3ec;border-radius:20px;background:#fff;overflow:hidden}
body.chipak-dynamic-product-page.single-product .woocommerce div.product .cp-product-photo .woocommerce-product-gallery{float:none!important;width:100%!important;max-width:100%;margin:0;opacity:1!important}
.cp-dynamic-product .cp-product-photo .woocommerce-product-gallery__image img{width:100%;height:420px;object-fit:contain;background:#fff}
.cp-dynamic-product .cp-product-photo .flex-control-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none}
.cp-dynamic-product .cp-product-photo .flex-control-thumbs li{width:64px!important;max-width:22%}
.cp-dynamic-product .cp-product-photo .flex-control-thumbs img{height:64px;object-fit:contain;border-radius:8px}
@media(max-width:760px){.cp-dynamic-product .cp-product-photo .woocommerce-product-gallery__image img{height:330px}.chipak-dynamic-product-page .cp-dynamic-product .cp-product-media-cards button{padding:11px}}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .visual{position:static;min-width:0;border:1px solid #dce3ec;border-radius:20px;background:linear-gradient(145deg,#edf2f8,#fffaf0 90%);overflow:hidden}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-scene{height:420px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .controls{min-width:0;padding:24px;border:1px solid #e0e6ed;border-radius:20px;background:#fff;box-shadow:0 12px 32px #1022350a}
.cp-dynamic-product-summary{margin:0 0 24px;padding-bottom:20px;border-bottom:1px solid #e0e6ed}
body.chipak-dynamic-product-page.single-product .woocommerce div.product .cp-dynamic-product-summary .product_title{margin:0 0 12px;font-size:clamp(24px,2.3vw,34px)!important;line-height:1.65;color:var(--chipak-navy,#102235)}
.cp-dynamic-product-summary .woocommerce-product-details__short-description{font-size:14px;line-height:2;color:#46566a}
.cp-dynamic-product-summary .product_meta{margin-top:14px;font-size:12px;color:#526174}
.cp-dynamic-product-summary .product_meta a{color:#254d75;text-decoration:underline;text-underline-offset:3px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(h2,h3,legend,label,.cp-state,.section-label h2){color:var(--ink,#102235)}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .controls>h2{font-size:19px;font-weight:700;line-height:1.8}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(.helper,.small,.dimension-help,.opening-size,.stage-note,.gesture,.cp-art-hint,.cp-art-name,[data-ar-status],.cp-size-fields legend){color:#526174;font-size:13px;line-height:1.9}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(.cp-size-fields label,.part-fields label,.quantity-label,.mold-label){font-size:13px;line-height:1.8}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(input,select){max-width:100%;color:#102235;background:#fff;border:1px solid #c8d2df;border-radius:9px;min-height:44px;font:inherit}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-fields input{padding:9px 3px;font-size:17px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .part-fields select{font-size:14px;min-height:46px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .part-fields input[type=checkbox]{min-height:19px;width:19px;height:19px;accent-color:var(--chipak-navy,#102235)}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(.part-config,.cp-artwork,.production-lead){background:#f8fafc;border-color:#dce3ec;border-radius:12px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .part-config legend{font-size:14px;font-weight:700}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .part-config legend span{color:#73501a}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .section-label>span{color:#73501a;background:#fff6df;border-color:#e2c88e}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .opening-size{background:#eef3f9}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view button{min-height:44px;border-radius:10px;font-size:13px;font-weight:600;line-height:1.7}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(.primary,.sequence-play,.cp-art-build){background:var(--chipak-gold,#c89536);border-color:var(--chipak-gold,#c89536);color:#102235}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(.primary,.sequence-play,.cp-art-build):hover{background:#dfad50;border-color:#dfad50;color:#102235}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view form>.dimension-apply{background:#102235;border-color:#102235;color:#fff;width:100%;min-height:44px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-steps button[aria-pressed=true]{background:#102235;border-color:#102235;color:#fff}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .theme-choices button[aria-pressed=true]{background:#fff6df;border-color:#c89536;color:#102235}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-card{padding:22px;border:1px solid #102235;border-radius:14px;background:linear-gradient(135deg,#102235,#1c3b58);color:#fff}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-card :is(.quote-kicker,.quote-meta,.quote-total,.quote-total strong,.quote-unit,.quote-unit span,[data-production-status]){color:#fff}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-card .quote-unit strong{color:#f1c76e;font-weight:800;font-size:34px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-total{border-color:#ffffff38}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-kicker{font-size:13px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .creative-section{margin:0;padding:20px;border:1px solid #dce3ec;border-radius:18px;background:#fff}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .creative-section .creative-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .creative-grid>*{min-width:0}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .creative-grid>.note{grid-column:1/-1}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-artwork{padding:0 12px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-artwork>summary{font-size:13px;color:#102235}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-art-select input{width:100%;font-size:12px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-ar-button{width:100%;min-height:46px;background:#102235;color:#fff;border-color:#102235}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .downloads select{min-height:44px;width:100%;font-size:13px;background:#fff;color:#102235}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .net-section{clear:both;margin-top:28px;padding:22px;border:1px solid #dce3ec;border-radius:18px;background:#f8fafc}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .net-heading h2{font-size:20px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .sheet-caption button{background:#102235;color:#fff;border-color:#102235}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(button,input,select,summary,a):focus-visible{outline:3px solid #bd8423;outline-offset:3px}
.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(input,select):disabled{opacity:.8}
.cp-dynamic-product [data-dynamic-product-status]{padding:12px 16px;background:#fff6e6;color:#5c3d16;border:1px solid #e3cca6;border-radius:10px}
.cp-dynamic-product [data-dynamic-product-retry]{min-height:44px;padding:8px 16px}
.cp-dynamic-product [hidden]{display:none!important}
body.chipak-dynamic-product-page.single-product .woocommerce div.product :is(.woocommerce-tabs,.cp-dynamic-product-services){clear:both}
body.chipak-dynamic-product-page .cp-dynamic-product-services{margin:24px 0 32px;padding:24px;border:1px solid #dce3ec;border-radius:18px;background:#102235;color:#fff}
body.chipak-dynamic-product-page .cp-dynamic-product-services :is(h2,p){color:#fff}
body.chipak-dynamic-product-page .cp-dynamic-product-services h2{margin-top:0;font-size:22px}
body.chipak-dynamic-product-page .cp-dynamic-product-services .chipak-action-buttons{display:flex;flex-wrap:wrap;gap:12px}
body.chipak-dynamic-product-page .cp-dynamic-product-services .button{min-height:46px;padding:10px 18px;background:#c89536!important;color:#102235!important;border:1px solid #c89536;border-radius:10px;text-decoration:none;font-weight:700}
body.chipak-dynamic-product-page .cp-dynamic-product-services .button:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(max-width:1000px){.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .workbench{gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .controls{padding:18px}.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-scene{height:360px}}
@media(max-width:760px){
 .cp-dynamic-product{scroll-margin-top:85px}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .workbench{grid-template-columns:minmax(0,1fr);gap:20px}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-scene{height:330px}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(.creative-section,.controls,.net-section){padding:16px}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .creative-section .creative-grid{grid-template-columns:minmax(0,1fr)}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-steps button{flex:1 0 22%;min-height:44px}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .part-sheets{grid-template-columns:minmax(0,1fr)}
 .chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-total{flex-wrap:wrap;gap:8px}
 body.chipak-dynamic-product-page .cp-dynamic-product-services{padding:18px}
 body.chipak-dynamic-product-page .cp-dynamic-product-services .button{width:100%;text-align:center}
}
.cp-dynamic-product .cp-dynamic-base-price{margin-top:16px;padding:14px 16px;background:#fff6df;border:1px solid #ead3a3;border-radius:12px;color:#102235}
.cp-dynamic-product .cp-dynamic-base-price p{margin:0 0 7px;font-size:12px;color:#64481c}
body.chipak-dynamic-product-page.single-product .cp-dynamic-product .cp-dynamic-base-price .price{display:block;margin:0;font-size:14px!important;line-height:1.9;color:#102235!important}
.cp-dynamic-product .cp-dynamic-nearby{margin-top:24px;padding:22px;border:1px solid #dce3ec;border-radius:18px;background:#fff;color:#102235}
.cp-dynamic-product .cp-dynamic-nearby h2{margin:0 0 8px;font-size:22px}
.cp-dynamic-product .cp-dynamic-nearby p{color:#526174;font-size:13px;line-height:1.9}
.cp-dynamic-product .cp-dynamic-nearby>button{min-height:44px;padding:9px 16px;margin-bottom:14px;border:1px solid #102235;border-radius:10px;background:#102235;color:#fff}
.cp-dynamic-product .cp-dynamic-nearby-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cp-dynamic-product .cp-dynamic-nearby-grid article{min-width:0;padding:16px;border:1px solid #dce3ec;border-radius:12px;background:#f8fafc}
.cp-dynamic-product .cp-dynamic-nearby-grid a{color:#102235;font-size:14px;line-height:1.9;font-weight:700;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.cp-dynamic-product .cp-dynamic-nearby{padding:16px}.cp-dynamic-product .cp-dynamic-nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.cp-dynamic-product .cp-dynamic-nearby-grid{grid-template-columns:minmax(0,1fr)}}

/* Model hubs use the same resolved tokens as the main calculator. */
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view{
 --ink:var(--chipak-ui-ink,#182433);--blue:var(--chipak-ui-brand,#102235);--muted:var(--chipak-ui-muted,#526174);
 --paper:var(--chipak-ui-surface,#fff);--accent:var(--chipak-ui-accent,#c89536);--line:var(--chipak-ui-line,#ded8ce);
 --cp-family-ink:var(--chipak-ui-brand,#102235);--cp-family-gold:var(--chipak-ui-accent,#c89536);--cp-family-border:var(--chipak-ui-line,#ded8ce);
 font-family:var(--chipak-ui-font,Tahoma,Arial,sans-serif)
}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view :is(.controls,.creative-section,.net-section,.cp-dynamic-nearby,.part-config){background:var(--chipak-ui-surface,#fff);color:var(--chipak-ui-ink,#182433);border-color:var(--chipak-ui-line,#ded8ce);border-radius:var(--chipak-ui-radius,18px)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .visual{background:var(--chipak-ui-surface,#fff);border-color:var(--chipak-ui-line,#ded8ce)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-product-media-cards button{color:var(--chipak-ui-brand,#102235)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-product-media-cards button :is(strong,span){color:inherit!important}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-product-media-cards button[aria-pressed=true]{background:var(--chipak-ui-brand,#102235);color:#fff;border-color:var(--chipak-ui-brand,#102235)}
/* Labels occupy their own line. The old absolute label and input padding collided. */
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-fields label{display:flex;flex-direction:column;gap:7px;position:static;min-width:0}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-fields label>span{position:static;inset:auto;display:block;font-size:14px;line-height:1.7;color:var(--chipak-ui-ink,#182433)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-fields input{min-height:48px;padding:10px 8px;direction:ltr;text-align:center;font-size:17px;line-height:1.5}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-hub-dimension-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-hub-dimension-actions button{min-height:46px;padding:10px 20px;background:var(--chipak-ui-brand,#102235);color:#fff;border:1px solid var(--chipak-ui-brand,#102235);border-radius:var(--chipak-ui-control-radius,8px);font:inherit}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-nearby{margin:14px 0;padding:16px;min-width:0}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-nearby h2{font-size:17px;line-height:1.8;color:var(--chipak-ui-ink,#182433)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-nearby-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:10px}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-nearby-grid article{background:var(--chipak-ui-surface,#fff);color:var(--chipak-ui-ink,#182433);padding:12px;border-color:var(--chipak-ui-line,#ded8ce)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-nearby-grid img{width:100%;height:105px;object-fit:contain;background:#fff;border-radius:8px}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-nearby-grid :is(p,a,strong){color:var(--chipak-ui-ink,#182433);font-size:13px;line-height:1.8}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-nearby-grid button{display:block;width:100%;min-height:44px;margin:10px 0;background:var(--chipak-ui-accent,#c89536);color:var(--chipak-ui-brand,#102235);border:1px solid var(--chipak-ui-accent,#c89536);padding:8px;border-radius:var(--chipak-ui-control-radius,8px)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-card{background:var(--chipak-ui-brand,#102235);color:#fff;border-color:var(--chipak-ui-brand,#102235)}
body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .quote-card :is(p,span,strong,h2,h3,label,[role=status]){color:inherit!important}
body.chipak-dynamic-product-page .cp-dynamic-product-services{background:var(--chipak-ui-brand,#102235);border-color:var(--chipak-ui-brand,#102235);border-radius:var(--chipak-ui-radius,18px)}
body.chipak-dynamic-product-page .cp-dynamic-product-services .button{background:var(--chipak-ui-accent,#c89536)!important;color:var(--chipak-ui-brand,#102235)!important;border-color:var(--chipak-ui-accent,#c89536)}
body.chipak-dynamic-product-page .cp-dynamic-base-price{clear:both;margin:24px 0;padding:16px;border:1px solid var(--chipak-ui-line,#ded8ce);border-radius:var(--chipak-ui-radius,18px);background:var(--chipak-ui-surface,#fff);color:var(--chipak-ui-ink,#182433)}
body.chipak-dynamic-product-page .cp-dynamic-base-price :is(p,.price,strong){color:var(--chipak-ui-ink,#182433)!important;font-size:14px!important;line-height:1.9}
@media(max-width:760px){body.chipak-dynamic-product-page .cp-dynamic-product .cp-dynamic-model-view .cp-size-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}}
.cp-dynamic-base-specifications{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.45rem 1rem;margin:.75rem 0}.cp-dynamic-base-specifications>div{display:flex;flex-wrap:wrap;gap:.3rem}.cp-dynamic-base-specifications dt{font-weight:700}.cp-dynamic-base-specifications dd{margin:0;color:inherit}
