/* Общие стили для узких экранов и блоков внизу страницы. Подключается после стилей страницы */
.fields label,.controls label{min-width:0;max-width:100%}
.fields select,.fields input[type=text],.fields textarea,.controls select,.controls input[type=text]{max-width:100%;min-width:0}
@media (max-width:640px){
main{padding:20px 16px 48px}
.bar{padding-left:16px;padding-right:16px}
.fields{padding:12px 14px}
.fields label,.controls label{flex-wrap:wrap;width:100%}
.fields select,.fields input[type=text],.fields textarea,.controls select,.controls input[type=text]{flex:1 1 140px;width:100%}
.fields input[type=range],.controls input[type=range]{flex:1 1 140px;width:100%;min-width:0}
.controls .sizes{display:flex;flex-wrap:wrap;gap:6px 14px}
.controls .sizes label{width:auto}
}
.ad{margin:28px 0 0;max-width:100%;overflow:hidden;text-align:center}
.stat{text-align:center;padding:8px 16px 28px}
.stat img{display:inline-block;vertical-align:top}
@media (max-width:780px){
.bar{flex-wrap:wrap;gap:0 2px;padding-top:4px;padding-bottom:4px}
.brand{flex:0 0 100%;margin:0;padding:8px 0 2px;font-size:.95rem}
header details{flex:1 1 auto;min-width:0}
header summary{text-align:center;padding:7px 2px;font-size:.88rem;white-space:nowrap}
header summary::after{margin-left:3px;font-size:.8em}
}
@media (max-width:380px){
.brand{font-size:.85rem}
header summary{font-size:.8rem}
}
@media (max-width:340px){
header summary{font-size:.74rem;padding:7px 1px}
header summary::after{margin-left:2px}
}
.gl.gp{text-transform:none}
.panel{max-height:calc(100vh - 120px);overflow-y:auto;overscroll-behavior:contain}
