/* CONFYRA R29: scoped mobile improvements; separate Showroom/USV remain untouched. */
#demo2 .k2-product-panel{max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
#demo2 .k2-product-panel h4{padding-right:42px}
#demo2 #k2-product-close{position:sticky;top:0;float:right;z-index:2;min-width:44px;min-height:44px}
#kontakt :is(input,textarea){caret-color:#193f43;scroll-margin-block:100px}
#kontakt :is(input,textarea):focus-visible{outline:3px solid #986020;outline-offset:3px}
@media(max-width:860px){
 #demo1,#demo2,#demo3,#demo4,#kontakt{scroll-margin-top:80px;min-width:0}
 #demo2 :is(button,.opt-btn),#demo3 :is(button,.k4-opt),#kontakt button{min-height:44px;touch-action:manipulation}
 #demo2 :is(input:not([type=range]),select),#demo3 :is(input:not([type=checkbox]):not([type=range]),select),#kontakt :is(input,textarea,select){font-size:16px!important}
 #demo2 .k2-duty-layout{display:flex;flex-direction:column;gap:12px}
 #demo2 .k2-live-curve-stage{order:-1;width:100%;padding:10px!important}
 #demo2 #cf-d9-k2-mini-svg{max-height:210px;touch-action:pan-y}
 #demo2 .k2-duty-inputs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%}
 #demo2 .k2-duty-control{padding:10px;min-width:0}
 #demo2 .k2-duty-entry input{min-width:0;width:100%;font-size:18px!important}
 #demo2 .k2-duty-control>input[type=range]{min-height:44px}
 #demo2 .k2-duty-preview{grid-column:1/-1;font-size:14px}
 #demo2 .k2-presets{gap:5px}#demo2 .k2-presets .opt-btn{font-size:13px;padding:6px 8px}
 #demo2 .k2-live-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
 #demo2 .k2-live-facts :is(span,strong){font-size:12px;text-transform:none}
 #demo2 .k2-drag-hint{font-size:12px}
 #demo2 .k2-proof-grid strong,#demo2 .k2-alt-card :is(small,b),#demo2 .why-block,#demo2 .quality-block,#demo2 .k2-product-panel p{font-size:14px}
 #demo2 .k2-result-nav{display:flex;flex-wrap:wrap;gap:6px}
 #demo2 .k2-product-overlay{padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
 #demo2 .k2-product-viewer{min-height:180px}
 #demo3 .cf-k3r2-searchbox{min-width:0}#demo3 #cf-k3r2-search{width:100%;min-width:0;min-height:48px}
 #demo3 .cf-k3r2-actions{display:flex;flex-wrap:wrap;gap:7px}
 #demo3 #cf-k3r2-answers{display:grid;grid-template-columns:1fr;gap:7px}
 #demo3 #cf-k3r2-answers button{min-height:50px;text-align:left;font-size:15px}
 #demo3 #cf-k3r2-answers small{font-size:13px;display:block}
 #demo3 .k4-mobilebar{padding-bottom:max(8px,env(safe-area-inset-bottom));gap:7px}
 #demo3 .k4-sheet{max-height:calc(100dvh - 16px);overscroll-behavior:contain}
 #demo3 .k4-card{min-width:0}#demo3 .k4-card :is(p,small){font-size:14px;line-height:1.45}
 #demo3 #cf-k3r2-question{margin:12px 0;padding:14px}
 #demo3 #cf-k3r2-question-copy,#demo3 #cf-k3-search-help{font-size:14px;line-height:1.5}
 #kontakt .cta-form{min-width:0}#kontakt textarea{min-height:140px;resize:vertical}
 #kontakt .cta-form :is(label,.field-error){font-size:14px}
 #kontakt .cta-form input{min-height:48px}
}
@media(max-width:360px){#demo2 .k2-duty-inputs{grid-template-columns:1fr}#demo2 .k2-duty-control{display:grid;grid-template-columns:1fr;gap:3px}}
@media(prefers-reduced-motion:reduce){#demo1 *,#demo2 *,#demo3 *,#demo4 *{scroll-behavior:auto!important}}
