/* Shared phone/tablet layout, loaded after component styles. */
.mobile-planner-nav{display:none}
@media(max-width:850px){
 .workspace,.dressing-workspace{min-width:0}
 .workspace>*,.dressing-workspace>*{min-width:0;max-width:100%}
 .mobile-planner-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;position:sticky;top:0;z-index:9;order:-2;width:100%;padding:8px 0;background:#171814}
 .mobile-planner-nav a{display:flex;justify-content:center;align-items:center;min-height:44px;padding:8px 5px;border:1px solid #78684e;border-radius:6px;font-size:13px;text-decoration:none;color:#ecddc4;background:#25261f}
 #mobile-settings,#mobile-price,#stage,#dr-stage{scroll-margin-top:70px}
 .dimension input[type=number],.settings input:not([type=range]):not([type=checkbox]),.settings select,.dressing-settings input:not([type=range]):not([type=checkbox]),.dressing-settings select{font-size:16px!important}
 .dimension-stepper button{min-width:44px;min-height:44px}
 .settings button,.dressing-settings button{min-height:44px}
 .leaf-tabs,.bay-tabs,.dressing-bays{flex-wrap:wrap}
 .leaf-tabs button,.bay-tabs button{flex:1 1 70px}
 .view-tools{position:static;max-width:100%;display:flex;flex-wrap:wrap;gap:5px;padding:8px;background:#24261f;border-radius:0}
 .view-tools button{flex:1 1 80px;min-height:44px;padding:8px;font-size:12px;line-height:1.3;color:#eee2ce;white-space:normal}
 .view-tools button[aria-pressed=true]{background:#d2b47e;color:#23241e}
 .estimate .estimate-actions{width:100%;min-width:0;display:grid;grid-template-columns:1fr;gap:8px}
 .estimate .estimate-actions button{width:100%;min-height:48px;font-size:14px;white-space:normal;padding:12px}
 .estimate p,.estimate span,.estimate small{font-size:12px;line-height:1.55}
 .estimate strong{font-size:28px}
 .dressing-toolbar{flex-wrap:wrap;gap:6px}
 .dressing-toolbar button{min-height:44px;flex:1 1 75px;font-size:12px}
 .facade-types button{font-size:13px!important}
 .facade-profiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(180px,max-content);max-height:400px}
 .facade-profile{grid-template-rows:116px auto;align-content:start}
 .facade-profile img{height:116px}
 .facade-profile span{font-size:12px;line-height:1.4;overflow-wrap:normal}
 .facade-palette{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(92px,max-content);max-height:300px}
 .facade-palette small{font-size:11px;max-height:none;line-height:1.4}
 .facade-focus-head{align-items:start;gap:8px}
 .facade-focus-head button{min-height:44px;font-size:12px;max-width:48%;padding:8px}
 .facade-focus-door strong,.facade-focus-door span{font-size:11px}
 .scene-card #stage:has(.facade-focus:not([hidden])){height:420px}
 .dressing-workspace{display:flex;flex-direction:column}
 .dressing-preview{position:static;order:-1;width:100%}
 .dressing-settings{width:100%}
}
@media(max-width:650px){
 .constructor-page .site-header,.site-header{gap:12px;padding-left:5%;padding-right:5%}
 .constructor-page .site-header .site-logo,.site-header .site-logo{width:150px;min-width:0}
 .reference-wordmark{font-size:25px}
 .mobile-menu summary{min-height:44px;display:flex;align-items:center;justify-content:center;padding:10px 14px}
 .mobile-menu nav{max-height:calc(100dvh - 115px);overflow-y:auto;overscroll-behavior:contain}
 .mobile-menu nav a{min-height:44px;display:flex;align-items:center}
 .constructor-banner{height:660px;min-height:620px}
 .constructor-banner .banner-brand h2{font-size:clamp(27px,8.1vw,34px);line-height:1.2}
 .constructor-banner .banner-brand>p:not(.kicker){font-size:14px;line-height:1.6}
 .constructor-banner .slide-navigation button{width:44px;height:44px}
 .constructor-page .intro h1{font-size:clamp(24px,7vw,30px)}
 .constructor-page .intro>p{font-size:14px;line-height:1.6}
 .planner-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .planner-switch a{min-width:0;padding:12px 8px;text-align:center;font-size:14px}
 .settings section{padding:18px 16px}
 .settings-fold{margin:0 16px}
 .settings-fold>summary,.settings h2{font-size:12px;letter-spacing:.08em}
 .dimension{grid-template-columns:minmax(0,1fr) minmax(150px,58%);font-size:13px}
 .quick-decors{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}
 .quick-decors button{width:100%;min-width:0;height:46px}
 .settings .hint,.hardware-info,.facade-settings .hint{font-size:12px;line-height:1.6}
 .row{flex-wrap:wrap}.row select{max-width:100%}
 .scene-card #stage,#dr-stage{height:clamp(290px,85vw,390px)}
 .dressing-summary{flex-wrap:wrap;gap:8px}.dressing-summary strong{font-size:26px}
 .dressing-actions{display:grid;grid-template-columns:1fr;gap:8px}
 .dressing-actions>*{margin:0;min-height:48px;white-space:normal}
 .order-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);margin:auto;overscroll-behavior:contain}
 .order-dialog form{padding:18px 16px calc(18px + env(safe-area-inset-bottom))}
 .order-dialog h2{font-size:26px;margin-top:6px;line-height:1.2}
 .order-dialog .dialog-close{min-width:44px;min-height:44px;flex-shrink:0}
 .order-dialog .order-submit{width:100%;min-height:48px}
 .order-consent input{width:20px;height:20px;flex-shrink:0}
 .filters{grid-template-columns:1fr;gap:14px}
 .filters input,.filters select,.lead-form input,.lead-form select,.lead-form textarea{font-size:16px!important;max-width:100%}
 .category-tabs a{min-height:44px;display:flex;align-items:center}
 .editorial h1{font-size:clamp(30px,9vw,42px);overflow-wrap:break-word}
 .contact-phone{font-size:clamp(21px,6.5vw,30px)}
 .actions,.contact-card,.consult{min-width:0}
 .actions>*{max-width:100%;white-space:normal}
 .thumbnails{flex-wrap:wrap}
 .site-footer{gap:25px;padding-bottom:calc(35px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mobile-planner-nav a{transition:none}}

.contact-email{display:block;overflow-wrap:anywhere;line-height:1.5;margin-top:10px}
.analytics-consent{position:fixed;bottom:85px;right:20px;z-index:1000;width:min(420px,calc(100vw - 40px));padding:20px;background:#24251f;color:#f4f0e7;border:1px solid #a38a61;box-shadow:0 8px 35px #0005}.analytics-consent p{font:14px/1.6 Arial;margin:0 0 15px}.analytics-consent div{display:flex;flex-wrap:wrap;gap:10px}.analytics-consent button,.analytics-settings{font:13px/1.4 Arial;min-height:44px;padding:10px 14px;border:1px solid #a38a61;background:transparent;color:#e8d4b4;cursor:pointer}.analytics-consent button:first-child{background:#c4a16d;color:#181914}.analytics-settings{align-self:start;max-width:100%}
