/* W06 — scoped to configurator controls; no desktop layout changes. */
@media (max-width: 767px) {
  product-wizard .btn,
  product-cart .btn,
  product-wizard .pills-row a,
  product-wizard .pills-row .pill,
  product-wizard .nav-cart {
    min-height: 44px !important;
    min-width: 44px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  product-wizard input,
  product-wizard select,
  product-cart input,
  product-cart select,
  product-cart textarea { font-size: 16px !important; }
  product-wizard .product-wizard {
    padding-bottom: calc(120px + env(safe-area-inset-bottom, 0px));
    scroll-padding-bottom: 120px;
  }
  product-wizard .dimensions {
    padding-bottom: 24px;
    scroll-margin-bottom: 120px;
  }
  product-wizard .dimensions-help { padding: 16px !important; }
  product-wizard .dimensions-help > .d-flex:first-child {
    max-height: 140px;
    justify-content: center;
  }
  product-wizard .dimensions-help > .d-flex:first-child img {
    max-height: 140px;
    max-width: 65%;
    width: auto;
    object-fit: contain;
  }
  product-wizard .dimensions form { margin-top: 12px !important; }
  product-wizard .dimensions input,
  product-wizard .dimensions button { scroll-margin: 80px 0 120px; }
}

/* W06b: cart layout only. No business logic or desktop changes. */
@media (max-width: 767px) {
  product-cart .cart-navigation {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    white-space: normal;
    overflow: visible;
  }
  product-cart .cart-navigation > li:not(.pointer) { display: none; }
  product-cart .cart-navigation > li.pointer {
    flex-direction: column;
    justify-content: flex-start;
    gap: 4px;
    min-height: 48px;
    min-width: 0;
    margin: 0;
    padding: 0 !important;
    text-align: center;
    font-size: 12px;
    line-height: 18px;
  }
  product-cart .cart-navigation .step-circle,
  product-cart .cart-navigation .icon-check { margin-right: 0 !important; }
  product-cart .product-card .d-block.d-md-none > .card {
    margin-left: 0;
    margin-right: 0;
  }
  product-cart .card .btn { white-space: normal; }
  product-cart .cart-item .cart-image {
    flex: 0 0 88px;
    max-width: 88px;
    margin-right: 12px;
  }
  product-cart .cart-item .cart-image img {
    max-width: 72px;
    height: auto;
    object-fit: contain;
    padding-left: 0 !important;
  }
  product-cart .cart-item .flex-grow-1 { min-width: 0; }
  product-cart .cart-item .flex-grow-1 > .d-flex.align-items-end {
    flex-wrap: wrap;
    gap: 8px 12px;
    align-items: center !important;
    justify-content: flex-start !important;
  }
  product-cart .cart-item .qty-selector {
    flex: 0 0 72px;
    min-height: 44px;
  }
  product-cart .cart-item .flex-grow-1 > .d-flex.d-md-none {
    flex-wrap: wrap;
    gap: 8px 12px;
    justify-content: flex-start !important;
  }
  product-cart .edit-container,
  product-cart .copy-container,
  product-cart .delete-container { min-height: 44px; margin: 0 !important; }
}

/* W06c: compact catalogue without hiding specifications or changing consent. */
@media (max-width: 767px) {
  product-wizard .w06c-material-card {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    column-gap: 12px;
    padding: 16px !important;
  }
  product-wizard .w06c-material-card .chosen-feature__img { grid-column: 1; margin: 0; }
  product-wizard .w06c-material-card .feature-card__image { max-width: 84px; max-height: 112px; object-fit: contain; }
  product-wizard .w06c-material-card .feature-card__content { display: contents !important; }
  product-wizard .w06c-material-card .feature-card__text-content { grid-column: 2; min-width: 0; }
  product-wizard .w06c-material-card .feature-card__name { margin-top: 0 !important; padding-right: 16px; }
  product-wizard .w06c-material-card .feature-card__description { margin-bottom: 0; }
  product-wizard .w06c-material-card .feature-card__description ul { margin: 8px 0 0; padding-left: 16px; font-size: 13px; line-height: 1.4; }
  product-wizard .w06c-material-card .feature-card__actions {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    margin-top: 16px;
  }
  product-wizard .w06c-material-card .feature-card__price { flex: 1; margin: 0; }
  product-wizard .w06c-material-card .feature-action { flex: 0 0 116px; margin: 0; }
  product-wizard .category-title { gap: 4px; padding-left: 16px !important; padding-right: 16px !important; }
  product-wizard .category-title .btn-arrow { min-width: 44px; min-height: 44px; align-items: center; }
  product-wizard .category-title h5 { white-space: normal; text-align: center; line-height: 1.35; min-width: 0; }
  product-wizard .w06c-progress-label { display: block; font-size: 12px; line-height: 18px; font-weight: 400; color: #595959; padding-top: 4px; }
  product-wizard .category-title h5[role="button"]:focus-visible { outline: 2px solid #333; outline-offset: 3px; }
  #alert-cookies { padding-top: 12px; padding-bottom: 12px; }
  #alert-cookies .container { padding-left: 16px; padding-right: 52px; }
  #alert-cookies .icon-cookies { display: none; }
  #alert-cookies .container > span { font-size: 13px; line-height: 18px; }
  #alert-cookies .container > span > a { display: inline-flex; align-items: center; min-height: 44px; }
  #alert-cookies .close { width: 44px; height: 44px; top: 0; right: 0; padding: 12px; }
  html.w06c-cookie-visible body { padding-bottom: var(--w06c-cookie-height, 160px); }
  html.w06c-cookie-visible product-wizard .summary:not(.expanded) { bottom: var(--w06c-cookie-height, 160px); }
  html.w06c-cookie-visible product-wizard .product-wizard { padding-bottom: calc(120px + var(--w06c-cookie-height, 160px)); }
}

/* W06d: the legal/payment footer row must fit a phone without page scrolling. */
@media (max-width: 767px) {
  .main-footer > .container > .d-flex.justify-content-between.align-items-end {
    flex-direction: column;
    align-items: center !important;
    gap: 16px;
    text-align: center;
  }
  .main-footer > .container > .d-flex.justify-content-between.align-items-end > p {
    width: 100%;
    min-width: 0;
  }
  .main-footer > .container > .d-flex.justify-content-between.align-items-end > .d-flex {
    flex-wrap: wrap;
    justify-content: center !important;
    max-width: 100%;
  }
  .main-footer > .container > .d-flex.justify-content-between.align-items-end > .pl-8 {
    padding-left: 0 !important;
  }
}

/* Cart presentation enhancement. Values and actions remain owned by the application. */
product-cart.cfg-summary .cart-navigation > li.pointer {
  border-bottom: 3px solid #d7dce2;
  padding-bottom: 10px !important;
  color: #555;
}
product-cart.cfg-summary .cart-navigation > li.cfg-summary-step-current {
  border-bottom-color: #474747;
  color: #222;
  font-weight: 700;
}
product-cart.cfg-summary .cart-navigation > li.cfg-summary-step-complete { border-bottom-color: #88939e; }
product-cart.cfg-summary .cart-navigation > li.pointer:focus-visible,
product-cart.cfg-summary .cart-item a:focus-visible { outline: 2px solid #3e82f7; outline-offset: 3px; }
product-cart.cfg-summary .cart-item h5 { font-size: 18px; line-height: 1.4; }
product-cart.cfg-summary .cart-item .flex-grow-1 > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  line-height: 1.4;
  text-decoration: underline;
  text-underline-offset: 3px;
}
product-cart.cfg-summary .cart-item .flex-grow-1 > .d-flex.align-items-end {
  padding: 12px !important;
  border: 1px solid #dce1e6;
  background: #f5f7f9;
  border-radius: 6px;
  gap: 12px;
  flex-wrap: wrap;
}
product-cart.cfg-summary .cart-item .flex-grow-1 > .d-flex.align-items-end > span {
  font-size: 18px;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
}
product-cart.cfg-summary .cfg-summary-price-card { border: 1px solid #dce1e6; }
product-cart.cfg-summary .cfg-summary-price-card > .table { width: 100%; font-size: 14px; line-height: 1.45; }
product-cart.cfg-summary .cfg-summary-price-card > .table th { font-weight: 500; }
product-cart.cfg-summary .cfg-summary-price-card > .table thead { background: #f5f7f9; }
product-cart.cfg-summary .cfg-summary-price-card > .table thead td { color: #555; font-weight: 600; font-size: 13px; }
product-cart.cfg-summary .cfg-summary-price-card > .table td { text-align: right; font-variant-numeric: tabular-nums; }
product-cart.cfg-summary .cfg-summary-price-card > .table th,
product-cart.cfg-summary .cfg-summary-price-card > .table td { padding: 10px 6px; vertical-align: top; }
product-cart.cfg-summary .cfg-summary-price-card .total-sum {
  padding: 16px !important;
  background: #f5f7f9;
  border-top: 2px solid #474747 !important;
  border-radius: 6px;
}
product-cart.cfg-summary .cfg-summary-price-card .total-sum > .d-flex { gap: 8px 12px; flex-wrap: wrap; }
product-cart.cfg-summary .cfg-summary-price-card .total-sum > .d-flex:first-child > span {
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
product-cart.cfg-summary .cfg-summary-price-card .total-sum .download-file { line-height: 1.5; text-decoration: underline; text-underline-offset: 3px; }
product-cart.cfg-summary .cfg-summary-price-card .total-sum > .text-right { gap: 12px; flex-wrap: wrap; }
product-cart.cfg-summary .cfg-summary-spec-modal .table { width: 100%; table-layout: fixed; font-size: 15px; line-height: 1.5; }
product-cart.cfg-summary .cfg-summary-spec-modal .table th { width: 35%; font-weight: 500; color: #555; }
product-cart.cfg-summary .cfg-summary-spec-modal .table th,
product-cart.cfg-summary .cfg-summary-spec-modal .table td { vertical-align: top; overflow-wrap: anywhere; padding: 12px 8px; }
@media (max-width: 767px) {
  product-cart.cfg-summary .cfg-summary-price-card { padding: 20px !important; }
  product-cart.cfg-summary .cfg-summary-price-card > .table td { white-space: nowrap; }
  product-cart.cfg-summary .cfg-summary-price-card .total-sum .btn { width: 100%; }
  product-cart.cfg-summary .cfg-summary-spec-modal { width: calc(100% - 24px); max-width: 100%; padding: 20px; }
  product-cart.cfg-summary .cfg-summary-spec-modal > h5 { padding-right: 32px; }
  product-cart.cfg-summary .cfg-summary-spec-modal .close-modal { min-width: 44px; min-height: 44px; display: flex; align-items: center; justify-content: center; top: 4px; right: 4px; }
  product-cart.cfg-summary .cfg-summary-spec-modal .table,
  product-cart.cfg-summary .cfg-summary-spec-modal .table tbody,
  product-cart.cfg-summary .cfg-summary-spec-modal .table tr,
  product-cart.cfg-summary .cfg-summary-spec-modal .table th,
  product-cart.cfg-summary .cfg-summary-spec-modal .table td { display: block; width: 100%; }
  product-cart.cfg-summary .cfg-summary-spec-modal .table tr { padding: 12px 0; border-bottom: 1px solid #dce1e6; }
  product-cart.cfg-summary .cfg-summary-spec-modal .table th { padding: 0; border: 0; font-size: 13px; }
  product-cart.cfg-summary .cfg-summary-spec-modal .table td { padding: 4px 0 0; border: 0; font-size: 16px; }
}

/* Scoped pilot styles: no global inputs, selections, prices or existing layout rules. */
.okna-product-help{box-sizing:border-box;width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:0;border:1px solid #cad2d5;border-radius:16px;background:#fff;color:#1c3039;font:16px/1.55 system-ui,sans-serif;box-shadow:0 20px 80px #0004;overflow:auto}
.okna-product-help::backdrop{background:#102630b8}
.okna-product-help *{box-sizing:border-box}
.okna-help-header{position:sticky;top:0;z-index:1;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px;border-bottom:1px solid #dbe2e5}
.okna-product-help h2{font:700 22px/1.3 system-ui,sans-serif;margin:0}
.okna-product-help h3{font:700 19px/1.4 system-ui,sans-serif;margin:0 0 12px}
.okna-product-help p{font:400 16px/1.6 system-ui,sans-serif;margin:12px 0 20px}
.okna-help-button{font:600 15px/1.35 system-ui,sans-serif;min-height:44px;padding:10px 14px;border:1px solid #667e89;border-radius:8px;background:#fff;color:#1c3039;cursor:pointer;white-space:normal;text-align:center;max-width:100%}
.okna-help-button:hover{background:#eef4f6}
.okna-help-button:focus-visible{outline:3px solid #075bbb;outline-offset:3px}
.okna-help-button[aria-pressed=true]{background:#254757;color:#fff;border-color:#254757}
.okna-help-trigger{margin:10px 0 18px}
.okna-help-gallery-trigger{display:block;width:100%;margin:12px 0}
.okna-help-nav,.okna-help-states{display:flex;gap:8px;flex-wrap:wrap}
.okna-help-nav{padding:20px 24px 0}
.okna-help-content{padding:24px}
.okna-help-product-image{display:block;max-width:100%;width:auto;height:auto;max-height:310px;margin:20px auto;object-fit:contain}
.okna-help-note{padding:14px 16px;border-left:4px solid #c45116;background:#fff7f1;border-radius:0 8px 8px 0}
.okna-help-diagram{margin:18px auto;text-align:center;max-width:384px}
.okna-help-diagram svg{display:block;width:100%;height:auto}
.okna-help-diagram-caption{font-weight:600!important}
.okna-help-measure-labels{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;font-weight:600}
@media(max-width:420px){.okna-help-header{padding:14px}.okna-product-help h2{font-size:19px}.okna-help-nav{padding:16px 14px 0;gap:6px}.okna-help-content{padding:20px 14px}.okna-help-button{padding:10px 11px}.okna-help-nav .okna-help-button{flex:1 1 auto}.okna-help-states .okna-help-button{flex:1 1 90px}}
@media(prefers-reduced-motion:reduce){.okna-product-help *{scroll-behavior:auto!important}}

/* Isolated window-profile comparison; no product cards or native controls hidden. */
.okna-compare-button { font: inherit; font-size: 14px; line-height: 1.4; min-height: 44px; padding: 10px 14px; border: 1px solid #657783; border-radius: 6px; color: #243741; background: #fff; cursor: pointer; white-space: normal; overflow-wrap: anywhere; }
.okna-compare-button:focus-visible { outline: 3px solid #2879cb; outline-offset: 3px; }
.okna-compare-button:disabled { opacity: .55; cursor: default; }
.okna-compare-button[aria-pressed="true"] { background: #e7f1f7; border-color: #254757; font-weight: 700; }
product-wizard .okna-compare-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; background: #f3f6f8; border: 1px solid #d3dce1; border-radius: 8px; padding: 16px; margin: 16px 0; }
product-wizard .okna-compare-status { flex: 1 1 250px; font-size: 14px; line-height: 1.5; margin: 0; }
product-wizard .okna-compare-toggle { width: 100%; margin: 12px 0; }
dialog.okna-profile-compare { box-sizing: border-box; width: min(1080px, calc(100% - 32px)); max-width: calc(100% - 32px); max-height: calc(100dvh - 32px); border: 0; border-radius: 12px; padding: 24px; color: #243741; background: #fff; overflow-y: auto; font: 16px/1.5 system-ui, sans-serif; }
dialog.okna-profile-compare::backdrop { background: rgba(20,35,45,.65); }
.okna-compare-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.okna-compare-header h2 { font-size: 24px; line-height: 1.3; margin: 0; }
.okna-compare-header .okna-compare-button { flex-shrink: 0; }
.okna-compare-note { font-size: 14px; color: #52616b; margin: 16px 0; }
.okna-compare-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 16px; }
.okna-compare-profile { min-width: 0; padding: 16px; border: 1px solid #ccd7dd; border-radius: 8px; background: #f8fafb; }
.okna-compare-profile h3 { font-size: 20px; line-height: 1.35; margin: 0 0 16px; overflow-wrap: anywhere; }
.okna-compare-profile dl { margin: 0; }
.okna-compare-profile dt { font-size: 13px; color: #52616b; margin-top: 16px; }
.okna-compare-profile dd { margin: 4px 0 0; white-space: pre-line; overflow-wrap: anywhere; font-size: 16px; }
@media (max-width: 600px) {
 dialog.okna-profile-compare { width: calc(100% - 24px); max-width: calc(100% - 24px); max-height: calc(100dvh - 24px); padding: 16px; }
 .okna-compare-header { gap: 8px; }
 .okna-compare-header h2 { font-size: 20px; }
 .okna-compare-grid { grid-template-columns: minmax(0,1fr); }
 product-wizard .okna-compare-bar > button { flex: 1 1 120px; }
}
