.vm-toolbar{display:flex;gap:12px;align-items:end;justify-content:space-between;flex-wrap:wrap}.vm-toolbar label{flex:1;min-width:220px}.vm-section{margin:18px 0;padding:22px}.vm-section h2{margin-top:0}.vm-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;align-items:end}.vm-wide{grid-column:1/-1}#vitrineRoot label{display:grid;gap:7px;font-size:14px}#vitrineRoot input,#vitrineRoot select,#vitrineRoot textarea{width:100%;box-sizing:border-box;padding:10px;border-radius:8px;border:1px solid #385063;background:#0c1722;color:#ecf3fa;min-height:44px}#vitrineRoot textarea{min-height:75px}#vitrineRoot .vm-check{display:flex;align-items:center}#vitrineRoot input[type=checkbox]{width:22px;min-height:22px}#vmFeedback{padding:12px 0;color:#ffc971;min-height:24px}.vm-phase{color:#66dcce;font-weight:700;margin-bottom:18px}.vm-object{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:10px 0;border:1px solid #385063;border-radius:10px}.vm-criteria{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.vm-criteria fieldset{border:1px solid #385063;border-radius:10px;padding:15px}.vm-criteria label{margin:8px 0}.vm-history,.vm-finding{border-bottom:1px solid #314454;padding:12px 0}.vm-finding summary{font-weight:700;cursor:pointer}.vm-upload{padding:18px 0}.vm-gallery{display:flex;gap:12px;flex-wrap:wrap}.vm-asset{display:flex;flex-direction:column;gap:6px;max-width:200px;color:inherit;font-size:12px}.vm-asset img{width:100%;max-height:170px;object-fit:contain}.vm-report-item{padding:12px;border:1px solid #c0d1dc;margin:10px 0;break-inside:avoid}#vmMap svg,#vmReport svg{display:block;width:100%;max-height:440px;background:#fff;border-radius:8px;margin:10px 0}#vmReport{background:#fff;color:#153344;padding:22px;border-radius:10px}#vitrineRoot button:disabled{opacity:.45;cursor:default}#vitrineRoot details{margin-top:16px}#vitrineRoot summary{min-height:32px}@media(max-width:600px){.vm-section{padding:14px}.vm-form,.vm-criteria{grid-template-columns:1fr}.vm-toolbar{align-items:stretch}.vm-toolbar button{width:100%}.vm-asset{max-width:140px}#vmReport{padding:14px}}
@media print{body[data-print-report=vitrine] .sidebar,body[data-print-report=vitrine] .topbar,body[data-print-report=vitrine] .view:not(#vitrine),body[data-print-report=vitrine] #vitrineRoot>*{display:none!important}body[data-print-report=vitrine] #vitrine,body[data-print-report=vitrine] #vitrineRoot,body[data-print-report=vitrine] #vitrineRoot>.vm-section:has(#vmReport){display:block!important}body[data-print-report=vitrine] #vitrineRoot>.vm-section:has(#vmReport)>.vm-toolbar{display:none!important}body[data-print-report=vitrine] #vmReport{display:block!important;padding:0!important}body[data-print-report=vitrine] #vitrineRoot .vm-section{margin:0!important;border:0!important;padding:0!important}body[data-print-report=vitrine] #vmReport svg{max-height:300px}.vm-report-item{break-inside:avoid}.vm-asset{max-width:42%}}

/* Modo Campo no celular: um critério por vez, com confirmação e gravação a cada avanço. */
.vm-mobile-progress,.vm-mobile-nav,.vm-status-buttons{display:none}
@media(max-width:700px){
 #vitrineRoot{font-size:17px;line-height:1.45}
 #vitrineRoot label{font-size:16px}
 #vitrineRoot .vm-section{padding:17px;margin:12px 0}
 #vitrineRoot h2{font-size:23px}
 #vitrineRoot input,#vitrineRoot select,#vitrineRoot textarea{font-size:16px;min-height:52px;padding:12px}
 #vitrineRoot textarea{min-height:102px}
 #vitrineRoot button{min-height:50px;font-size:16px}
 #vitrineRoot .vm-criteria{display:block}
 #vitrineRoot .vm-criteria fieldset{display:none}
 #vitrineRoot .vm-criteria fieldset.vm-current{display:block;padding:18px 14px}
 #vitrineRoot .vm-criteria legend{font-size:19px;font-weight:750;line-height:1.35;max-width:100%;white-space:normal}
 #vitrineRoot .vm-native-status{display:none}
 #vitrineRoot .vm-status-buttons{display:grid;gap:9px;margin:10px 0}
 #vitrineRoot .vm-status-buttons button{background:#172a3a;border:1px solid #557087;border-radius:12px;color:#f1f7fc;text-align:left;padding:14px;font-weight:650}
 #vitrineRoot .vm-status-buttons button.selected{border:2px solid #55cfca;background:#18383d;color:#fff}
 #vitrineRoot .vm-step-extra{display:none}
 #vitrineRoot .vm-has-problem .vm-step-extra{display:grid}
 #vitrineRoot .vm-mobile-progress{display:grid;gap:10px;margin:8px 0 18px;font-size:16px}
 #vitrineRoot .vm-progress-track{height:8px;border-radius:8px;background:#20364a;overflow:hidden}
 #vitrineRoot #vmStepProgress{height:100%;background:#55cfca;transition:width .15s}
 #vitrineRoot .vm-mobile-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:sticky;bottom:8px;background:#081019f2;padding:10px 0;z-index:3}
 #vitrineRoot .vm-mobile-nav button[hidden]{display:none}
 #vitrineRoot .vm-mobile-review{display:none}
 #vitrineRoot .vm-mobile-review.vm-current{display:block}
}

@media(max-width:700px){#vitrineRoot{display:flex;flex-direction:column}#vitrineRoot>.vm-toolbar{order:-2}#vitrineRoot>.vm-visit-section{order:-1}}

/* Explicit field-mode also works if Android WebView requests a desktop layout viewport. */
html.vm-field-mode body:has(#vitrine.active) .app{display:block!important;height:auto!important;min-height:100vh!important}
html.vm-field-mode body:has(#vitrine.active) .sidebar{display:none!important}
html.vm-field-mode body:has(#vitrine.active) .content{display:block!important;max-width:100%!important;width:100%!important;height:auto!important;overflow:visible!important;padding:12px 14px 60px!important}
html.vm-field-mode body:has(#vitrine.active) .topbar{margin-bottom:14px}
html.vm-field-mode #vitrine .vm-field-toggle{margin:12px 0}
html.vm-field-mode #vitrine #vitrineRoot{display:flex;flex-direction:column;font-size:18px;line-height:1.5}
html.vm-field-mode #vitrine #vitrineRoot>.vm-toolbar{order:-2}
html.vm-field-mode #vitrine #vitrineRoot>.vm-visit-section{order:-1;display:block}
html.vm-field-mode #vitrine #vitrineRoot>.vm-section:not(.vm-visit-section){display:none}
html.vm-field-mode #vitrine #vitrineRoot>.vm-visit-section{padding:18px}
html.vm-field-mode #vitrine #vitrineRoot h2{font-size:24px}
html.vm-field-mode #vitrine #vitrineRoot label{font-size:17px}
html.vm-field-mode #vitrine #vitrineRoot input,html.vm-field-mode #vitrine #vitrineRoot textarea,html.vm-field-mode #vitrine #vitrineRoot select{font-size:17px;min-height:54px;padding:12px;width:100%}
html.vm-field-mode #vitrine #vitrineRoot textarea{min-height:115px}
html.vm-field-mode #vitrine #vitrineRoot button{font-size:17px;min-height:52px}
html.vm-field-mode #vitrine #vitrineRoot .vm-criteria{display:block}
html.vm-field-mode #vitrine #vitrineRoot .vm-criteria fieldset{display:none}
html.vm-field-mode #vitrine #vitrineRoot .vm-criteria fieldset.vm-current{display:block;padding:18px 14px}
html.vm-field-mode #vitrine #vitrineRoot .vm-criteria legend{font-size:21px;font-weight:750}
html.vm-field-mode #vitrine #vitrineRoot .vm-native-status{display:none}
html.vm-field-mode #vitrine #vitrineRoot .vm-status-buttons{display:grid;gap:12px}
html.vm-field-mode #vitrine #vitrineRoot .vm-status-buttons button{background:#172a3a;border:1px solid #557087;border-radius:12px;color:#fff;text-align:left;padding:14px}
html.vm-field-mode #vitrine #vitrineRoot .vm-status-buttons button.selected{border:2px solid #55cfca;background:#18383d}
html.vm-field-mode #vitrine #vitrineRoot .vm-step-extra{display:none}
html.vm-field-mode #vitrine #vitrineRoot .vm-has-problem .vm-step-extra{display:grid}
html.vm-field-mode #vitrine #vitrineRoot .vm-mobile-progress{display:grid;gap:10px;margin:14px 0;font-size:18px}
html.vm-field-mode #vitrine #vitrineRoot .vm-progress-track{height:8px;border-radius:8px;background:#20364a;overflow:hidden}
html.vm-field-mode #vitrine #vitrineRoot #vmStepProgress{height:100%;background:#55cfca}
html.vm-field-mode #vitrine #vitrineRoot .vm-mobile-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:sticky;bottom:8px;background:#081019f2;padding:10px;z-index:3}
html.vm-field-mode #vitrine #vitrineRoot .vm-mobile-nav button[hidden]{display:none}
html.vm-field-mode #vitrine #vitrineRoot .vm-mobile-review{display:none}
html.vm-field-mode #vitrine #vitrineRoot .vm-mobile-review.vm-current{display:block}

/* Vistoria de merchandising imersiva: um espaço exclusivamente para execução. */
html.vm-visit-immersive,html.vm-visit-immersive body{overflow:hidden!important}
html.vm-visit-immersive #vitrine #vitrineRoot>.vm-visit-section{
 position:fixed!important;inset:0!important;z-index:10000!important;
 margin:0!important;padding:0 16px calc(110px + env(safe-area-inset-bottom))!important;
 border:none!important;border-radius:0!important;box-shadow:none!important;
 width:100vw!important;max-width:100vw!important;
 height:100vh!important;height:100dvh!important;
 overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;
 -webkit-overflow-scrolling:touch;background:#0b1722!important;
 box-sizing:border-box;font-size:18px!important;line-height:1.5!important;
}
html.vm-visit-immersive #vitrine #vitrineRoot>.vm-visit-section .vm-visit-head{
 position:sticky;top:0;z-index:10;min-height:72px;margin:0 -16px 14px!important;
 padding:12px 16px!important;background:#132536;border-bottom:1px solid #375069;
 display:flex;align-items:center;justify-content:space-between;gap:12px;
}
html.vm-visit-immersive #vitrine .vm-visit-head h2{font-size:20px!important;margin:0!important;line-height:1.28}
html.vm-visit-immersive #vitrine .vm-visit-head span{font-size:13px;color:#bad3e5}
html.vm-visit-immersive #vitrine .vm-visit-head button{min-height:46px!important;white-space:normal;font-size:16px!important}
html.vm-visit-immersive #vitrine .vm-visit-intro{display:none}
html.vm-visit-immersive #vitrine .vm-mobile-progress{display:grid!important;gap:12px;margin:10px 0 18px;font-size:18px}
html.vm-visit-immersive #vitrine .vm-progress-track{height:9px;background:#263c4d;border-radius:7px;overflow:hidden}
html.vm-visit-immersive #vitrine #vmStepProgress{height:100%;background:#55cfca}
html.vm-visit-immersive #vitrine .vm-criteria{display:block!important;max-width:100%}
html.vm-visit-immersive #vitrine .vm-criteria fieldset{display:none!important}
html.vm-visit-immersive #vitrine .vm-criteria fieldset.vm-current{
 display:block!important;margin:0!important;padding:22px 16px!important;border-radius:15px!important;
 background:#122432;border:1px solid #466174!important;
}
html.vm-visit-immersive #vitrine .vm-criteria legend{font-size:clamp(20px,5vw,25px)!important;white-space:normal;line-height:1.4;font-weight:750}
html.vm-visit-immersive #vitrine .vm-native-status{display:none!important}
html.vm-visit-immersive #vitrine .vm-status-buttons{display:grid!important;gap:12px}
html.vm-visit-immersive #vitrine .vm-status-buttons button{
 display:block!important;min-height:58px!important;text-align:left!important;
 padding:14px 16px!important;background:#1d3242;border:1px solid #6d8698;
 border-radius:12px;color:#fff;font-size:18px!important;
}
html.vm-visit-immersive #vitrine .vm-status-buttons button.selected{border:2px solid #55cfca;background:#154143}
html.vm-visit-immersive #vitrine .vm-step-extra{display:none!important}
html.vm-visit-immersive #vitrine .vm-has-problem .vm-step-extra{display:grid!important}
html.vm-visit-immersive #vitrine textarea,html.vm-visit-immersive #vitrine select{font-size:17px!important;min-height:54px!important;width:100%!important}
html.vm-visit-immersive #vitrine textarea{min-height:115px!important}
html.vm-visit-immersive #vitrine .vm-mobile-nav{
 position:fixed!important;left:0;right:0;bottom:0;z-index:10020;display:grid!important;
 grid-template-columns:1fr 1.2fr;gap:12px;
 margin:0!important;padding:10px 16px calc(12px + env(safe-area-inset-bottom))!important;
 background:#0c1a27;border-top:1px solid #38556b;
 box-shadow:0 -8px 24px #0005;
}
html.vm-visit-immersive #vitrine .vm-mobile-nav button{min-height:56px!important;font-size:17px!important}
html.vm-visit-immersive #vitrine .vm-mobile-nav button[hidden]{display:none!important}
html.vm-visit-immersive #vitrine .vm-mobile-review{display:none!important}
html.vm-visit-immersive #vitrine .vm-mobile-review.vm-current{display:block!important}
html.vm-visit-immersive #vitrine .vm-upload{font-size:17px!important;margin:14px 0}
html.vm-visit-immersive #vitrine .vm-visit-section details{margin-top:12px}
@media(min-width:760px){
 html.vm-visit-immersive #vitrine #vitrineRoot>.vm-visit-section{
   padding-left:max(20px,calc((100vw - 800px)/2))!important;
   padding-right:max(20px,calc((100vw - 800px)/2))!important;
 }
 html.vm-visit-immersive #vitrine .vm-mobile-nav{
   padding-left:max(20px,calc((100vw - 800px)/2))!important;
   padding-right:max(20px,calc((100vw - 800px)/2))!important;
 }
}
