/* LAVI v1.42 — exhibition-day critical UI/UX hotfix */

/* ---------- Mobile header: reduce visual occupation ---------- */
@media (max-width: 980px){
  .site-header .container.header-row{
    min-height:72px!important;
    height:72px!important;
  }
  .site-header .brand img{width:102px!important;max-height:30px!important}
  .site-header .nav-toggle{width:48px!important;height:48px!important}
  .site-header .header-actions{gap:6px!important}
  .site-header .header-actions .header-cta{
    min-height:42px!important;
    height:42px!important;
    padding-inline:12px!important;
    font-size:10px!important;
  }
  .site-header .header-call,
  .site-header .header-catalog{
    width:42px!important;height:42px!important;min-width:42px!important
  }
  .page-hero,.section,[id]{scroll-margin-top:82px!important}
}

/* ---------- Product detail: force a sane mobile stack ---------- */
@media (max-width: 900px){
  .product-detail-grid{
    display:flex!important;
    flex-direction:column!important;
    gap:22px!important;
    align-items:stretch!important;
  }
  .product-stage,
  .product-detail-grid>.product-stage{
    order:1!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:1/1!important;
  }
  .product-copy,
  .product-detail-grid>.product-copy{
    order:2!important;
    width:100%!important;
  }
  .product-copy h1{
    font-size:31px!important;
    line-height:1.45!important;
    margin-bottom:10px!important;
  }
  .product-copy .lead{font-size:17px!important;line-height:1.9!important}
  .product-copy>p{font-size:14px!important;line-height:1.95!important}
  .specs{margin:20px 0!important}
  .specs div{grid-template-columns:112px minmax(0,1fr)!important;padding:11px 0!important;gap:10px!important}
  .specs dt,.specs dd{font-size:13px!important;line-height:1.7!important}
  .product-copy .hero-actions,
  .product-copy .product-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .product-copy .button{width:100%!important;min-height:50px!important}
  .product-warranty-badge{font-size:9px!important;padding:6px 8px!important}
}

/* ---------- Configurator step 1: no orphan card / wasted blank space ---------- */
@media (max-width: 700px){
  .pattern-options{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    overflow:visible!important;
    padding:0!important;
  }
  .pattern-option{
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:138px minmax(0,1fr)!important;
    align-items:stretch!important;
    text-align:right!important;
  }
  .pattern-plan-thumb{aspect-ratio:auto!important;min-height:128px!important;border-bottom:0!important;border-left:1px solid #ddd!important}
  .pattern-option-copy{padding:14px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
  .pattern-option-copy strong{font-size:16px!important;line-height:1.55!important}
  .pattern-option-copy small{font-size:11px!important;line-height:1.7!important}
}

/* ---------- Configurator technical fix: support 2- and 3-door products ---------- */
.wardrobe-plan[data-plan-pattern="cubic"],
.wardrobe-plan[data-plan-pattern="mirror"],
.wardrobe-plan[data-plan-pattern="sprit"]{
  grid-template-columns:repeat(var(--door-count,2),minmax(0,1fr))!important;
}
.wardrobe-plan[data-plan-pattern="cubic"]>.config-door,
.wardrobe-plan[data-plan-pattern="mirror"]>.config-door,
.wardrobe-plan[data-plan-pattern="sprit"]>.config-door{
  border-left:1.5px solid #1d1d1d!important;
}
.wardrobe-plan[data-plan-pattern="cubic"]>.config-door:last-child,
.wardrobe-plan[data-plan-pattern="mirror"]>.config-door:last-child,
.wardrobe-plan[data-plan-pattern="sprit"]>.config-door:last-child{
  border-right:1.5px solid #1d1d1d!important;
}

/* Preview should remain readable and centered */
@media (max-width:700px){
  .configurator-preview-card{padding:16px 12px!important}
  .wardrobe-plan-wrap{padding:8px 24px 42px 4px!important}
  .wardrobe-plan{height:auto!important;aspect-ratio:1/1.05!important;max-height:none!important}
  .wardrobe-dimension{font-size:9px!important}
  .active-panel-status{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:5px 10px!important;
    padding:12px 0!important;
  }
  .plan-tools{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .plan-tools .text-tool{min-height:42px!important;text-align:center!important}
}

/* ---------- Color palette: less scrolling, still large enough to recognize texture ---------- */
@media (max-width:700px){
  .color-filter-tabs,
  .palette-tabs{
    display:flex!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
    padding-bottom:8px!important;
    scrollbar-width:thin;
  }
  .color-filter-tabs>* , .palette-tabs>*{flex:0 0 auto!important;white-space:nowrap!important}
  .door-color-palette{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
  .door-color{padding:5px!important}
  .door-color>span{aspect-ratio:1/1!important;margin-bottom:5px!important}
  .door-color b{font-size:10px!important;line-height:1.35!important}
  .door-color small{font-size:8px!important}
}
@media (max-width:350px){
  .door-color-palette{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ---------- Confirmation summary: no broken two-column orphan layout ---------- */
@media (max-width:700px){
  .configuration-summary{overflow:hidden!important}
  .summary-head{grid-template-columns:1fr!important}
  .summary-head>div{border-left:0!important;border-bottom:1px solid #ddd!important;padding:11px 13px!important}
  .summary-doors{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .summary-doors article{
    width:100%!important;
    border-left:0!important;
    border-bottom:1px solid #ddd!important;
    padding:12px 14px!important;
  }
  .summary-doors article:last-child{border-bottom:0!important}
  .summary-doors article>div{grid-template-columns:24px minmax(0,1fr) auto!important}
}

/* ---------- Customer form: compact, legible, easier to complete ---------- */
@media (max-width:700px){
  .configuration-form{max-width:none!important}
  .configuration-form label{margin-bottom:13px!important;font-size:13px!important}
  .configuration-form input,
  .configuration-form select,
  .configuration-form textarea{
    min-height:48px!important;
    padding:11px 12px!important;
    margin-top:5px!important;
    font-size:14px!important;
  }
  .configuration-form textarea{min-height:92px!important}
  .configuration-form .form-row{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
  .configuration-form .consent{
    display:grid!important;
    grid-template-columns:28px minmax(0,1fr)!important;
    align-items:start!important;
    gap:10px!important;
    line-height:1.8!important;
    margin-top:10px!important;
  }
  .configuration-form .consent input{width:24px!important;height:24px!important;margin:2px 0 0!important}
  .configuration-submit,
  .configuration-form button[type="submit"]{
    width:100%!important;
    min-height:54px!important;
    font-size:14px!important;
    margin-top:14px!important;
  }
}

/* ---------- Product/category cards ---------- */
@media (max-width:900px){
  .products-grid,.listing-grid{grid-template-columns:1fr!important}
  .product-card{min-width:0!important}
  .product-visual{aspect-ratio:4/3!important;height:auto!important}
  .product-visual.has-image img{object-fit:contain!important}
  .product-info h2,.product-info h3{font-size:21px!important}
}

/* ---------- Accessibility / tap targets ---------- */
@media (pointer:coarse){
  .button,.text-link,.tabs a,.door-color,.pattern-option,.nav-toggle,.header-call,.header-catalog{min-height:44px}
}

/* Avoid accidental horizontal page scrolling caused by configurator internals */
html,body{max-width:100%;overflow-x:hidden}
