/* The v2 desktop is the reference lock. All reflow rules are phone-only. */
.mobile-nav-backdrop,.mobile-nav-close,.mobile-screen-title,.mobile-search-toggle,.mobile-scroll-hint{display:none}
.utility .mobile-brand{display:none}
.mobile-heat-scroll{display:contents}
.mobile-item-meta{display:none}
@media screen and (max-width:700px){
 body{font-size:16px;line-height:1.5}
 body.mobile-nav-open{overflow:hidden}
 .main{padding:0 max(16px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
 .demo-ribbon{white-space:normal;padding:4px 8px;font-size:14px;line-height:1.4}
 .demo-ribbon a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
 .side{padding:0;border:0;position:static}
 .side>.brand{display:none}
 .utility{height:auto;min-height:72px;gap:8px;flex-wrap:wrap;padding:10px 0}
 .utility .brand{display:flex;flex:1;min-width:0;flex-wrap:wrap;gap:0 8px;padding:0}
 .utility .brand>div{display:none}
 .utility .brandmark{width:32px;height:36px}
 .mobile-screen-title{display:block;flex:1;font-size:16px;font-weight:600;color:var(--deep);line-height:1.3}
 .utility>.tools{display:none;order:5;width:100%}
 .utility.mobile-search-open>.tools{display:flex}
 .utility .bell-wrap,.utility .avatar{display:none}
 .utility .search{width:100%;min-height:44px}
 .utility .search input{font-size:16px}
 .mobile-search-toggle{display:grid}
 .utility #menu{display:block;position:static;min-width:52px;min-height:44px;font-size:14px;padding:8px;order:3}
 .utility .mobile-search-toggle{order:2}
 .side #navigation{display:block;position:fixed;inset:0 auto 0 0;width:min(320px,calc(100vw - 44px));height:100dvh;max-height:none;margin:0;padding:16px 16px max(24px,env(safe-area-inset-bottom));background:white;z-index:102;overflow-y:auto;overscroll-behavior:contain;transform:translateX(-105%);visibility:hidden;transition:transform .18s}
 .side #navigation.open{transform:none;visibility:visible}
 .side nav a,.side nav summary{min-height:44px;font-size:16px;display:flex;align-items:center}
 .mobile-nav-close{display:block;min-height:44px;width:100%;border-radius:12px;background:var(--wash);font-size:16px;margin-bottom:16px}
 .mobile-nav-backdrop:not([hidden]){display:block;position:fixed;inset:0;width:100%;height:100dvh;background:#123c3659;z-index:101;border:0}
 .main>.title-row.top{margin:20px 0;gap:12px}
 .content,.content>*{min-width:0;max-width:100%}
 .content :is(.kpis,.restore-stats),#depth-detail .detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}
 .content .kpis>.kpi:not(.dark):last-child:nth-child(odd of .kpi:not(.dark)){grid-column:1/-1}
 .content>.kpis>.kpi.dark{grid-column:1/-1}
 .content .kpi{height:auto;min-height:0;padding:16px!important;overflow:visible}
 .content .kpi :is(.v,.value){font-size:clamp(22px,6vw,28px)!important;line-height:1.25;letter-spacing:-.7px;overflow-wrap:normal;word-break:normal}
 .content .kpi :is(.kpi-label,.k,.metric-note,.trend,.delta){font-size:14px;white-space:normal}
 .content .kpi-bottom{position:static;min-height:0;margin-top:14px;padding:0;gap:8px;flex-wrap:wrap}
 .content .kpi .mini{max-width:100%;height:30px}
 .content .kpi :is(.spark,.trend){position:static!important;max-width:100%;margin-top:8px}
 .content .kpi .spark{display:block;width:100%;height:32px;margin-bottom:0}
 .content :is(.grid2,.grid3,.middle,.bottom,.depth-form,.em-detail-grid){grid-template-columns:minmax(0,1fr)!important}
 .content :is(.card-h,.section-head){flex-wrap:wrap;gap:8px}
 .content :is(.card-h,.card-b){padding:16px}
 .content :is(p,.note,.muted,.depth-notice,.depth-facts dt,.depth-facts dd,.depth-field,label,.tracking-stepper li){font-size:16px!important}
 .content .restore-hero{font-size:38px!important}
 .content summary{min-height:44px;min-width:44px;font-size:16px;align-content:center}
 .content input[type=checkbox]{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex-shrink:0}
 .content .restore-switch{min-height:44px;min-width:44px}
 .content .restore-switch input[type=checkbox]{width:40px!important;height:24px!important;min-width:40px!important;min-height:24px!important}
 .content :is(small,.pill,.footprint-session summary,.footprint-session small,.footprint-timeline li,.footprint-timeline time){font-size:14px}
 .content .footprint-session summary{padding:16px 0;gap:16px 12px}
 .footprint-timeline li{overflow-wrap:anywhere}
 .content :is(.tools,.tabs,.restore-tabs,.table-footer,.tfoot,.table-foot,.restore-pager,.footprint-pager){max-width:100%;flex-wrap:wrap;gap:8px}
 .content .tabs{display:flex;white-space:normal}
 .content .tabs button{flex:none;white-space:normal}
 .content :is(button,.btn),.icon-button,.date-button,.calendar-footer button{min-height:44px;min-width:44px;font-size:16px}
 .content :is(input:not([type=checkbox]),select,textarea){font-size:16px!important;min-height:44px;max-width:100%;min-width:0}
 .content :is(form,.depth-form,.depth-field) .btn,.content form button{width:100%;justify-content:center}
 .content .depth-field~.btn{width:100%;justify-content:center}
 .content a:not(:has(svg)){min-height:44px;min-width:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere}
 .content .restore-pipeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .content .restore-pipeline a{display:flex;min-width:0;flex-direction:column;overflow-wrap:normal;word-break:normal}
 .content .restore-pipeline a :is(span,b){white-space:nowrap}
 .content .pipeline-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .content .pipeline-legend a{white-space:nowrap;overflow-wrap:normal;word-break:normal;min-width:0}
 .content .mobile-cards,.content .mobile-cards tbody{display:block!important;width:100%!important;min-width:0!important}
 .content .mobile-cards thead{display:none!important}
 .content .mobile-cards tbody tr{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 14px;padding:16px 0;border-bottom:1px solid var(--line);min-width:0}
 .content .mobile-cards tbody td:nth-child(n){display:block!important;grid-column:auto!important;grid-row:auto!important;width:auto!important;max-width:100%;padding:0;border:0;font-size:14px;text-align:left;white-space:normal!important;overflow-wrap:anywhere;min-width:0}
 .content .mobile-cards td::before{content:attr(data-label)!important;display:block!important;font-size:14px!important;font-weight:400;color:var(--muted);margin:0 0 4px}
 .content .mobile-cards td:has(.prod),.content .mobile-cards td[data-label=Customer],.content .mobile-cards td[data-label=Email],.content .mobile-cards td[data-label=Subject],.content .mobile-cards td[data-label=Message]{grid-column:1/-1!important}
 .content .mobile-cards td.sel:before,.content .mobile-cards td[data-label='']:before{display:none!important}
 .content .mobile-cards td.sel input{width:44px;height:44px;min-height:44px}
 .content .mobile-cards td :is(em,small){white-space:normal;overflow-wrap:anywhere;font-size:14px}
 .content .mobile-cards td :is(a,b,span,em,small){font-size:14px!important}
 .content .mobile-cards td .prod{min-width:0}
 .content .mobile-cards tr[hidden]{display:none!important}
 /* Short labels wrap only between words; long record values keep their own overflow rules. */
 .content :is(label,button,.btn,.pill,.k,.kpi-label,.metric-note,.trend,.delta,h2,h3,dt,th),.content .mobile-cards td::before,.content :is(.tabs,.restore-tabs,.pipeline-legend,.restore-pipeline) a{overflow-wrap:normal;word-break:normal;hyphens:none}
 .content .mobile-line-items,.content .mobile-line-items tbody{display:block;width:100%;min-width:0}
 .content .mobile-line-items thead{display:none}
 .content .mobile-line-items tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto!important;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
 .content .mobile-line-items tbody td:nth-child(n){display:none!important;padding:0;border:0;width:auto!important;max-width:100%;min-width:0;white-space:normal;grid-column:auto!important;grid-row:auto!important}
 .content .mobile-line-items tbody td:is(:first-child,:last-child){display:block!important;font-size:14px}
 .content .mobile-line-items td::before{display:none!important}
 .content .mobile-line-items td:last-child{white-space:nowrap!important;text-align:right;font-weight:600}
 .content .mobile-line-items .prod{display:flex;align-items:flex-start;gap:10px;min-width:0}
 .content .mobile-line-items .thumb{flex:0 0 40px;width:40px;height:48px}
 .content .mobile-line-items .prod>span:last-child{min-width:0}
 .content .mobile-line-items .prod a{font-size:14px;overflow-wrap:normal;word-break:normal}
 .content .mobile-line-items .mobile-item-meta{display:grid;gap:4px;font-size:14px;color:var(--muted)}
 .content .mobile-line-items .mobile-item-meta>span:last-child{white-space:nowrap}
 body[data-page=Orders] .content .mobile-cards td:is([data-label=Items],[data-label=Placed],[data-label=Payment]){display:none!important}
 .mobile-table-scroll{overflow:auto;max-width:100%;overscroll-behavior-x:contain;border-radius:8px}
 .content .mobile-table-scroll table{display:table;min-width:620px;width:100%}
 .content .mobile-table-scroll thead{display:table-header-group}
 .content .mobile-table-scroll tbody{display:table-row-group}
 .content .mobile-table-scroll tr{display:table-row}
 .content .mobile-table-scroll :is(th,td):nth-child(n){display:table-cell;font-size:14px;white-space:nowrap;padding:12px}
 .content .mobile-table-scroll :is(th,td):first-child{position:sticky;left:0;z-index:1;background:#edf8f6;min-width:110px;max-width:165px;white-space:normal;box-shadow:3px 0 5px #12423c15}
 .content .mobile-table-scroll td:before{display:none}
 .content .mobile-scroll-hint{display:block;font-size:14px;color:var(--muted);margin-bottom:8px}
 .content .restore-chart{min-height:0;width:100%;height:auto}
 .content .restore-chart text{font-size:14px}
 .content .restore-chart text:nth-of-type(2),.content .restore-chart text:nth-of-type(4){visibility:hidden}
 .content .revenue-svg text{font-size:14px!important}
 .content .revenue-svg text:nth-of-type(2),.content .revenue-svg text:nth-of-type(4){visibility:hidden}
 .mobile-heat-scroll{display:block;max-width:100%;overflow:auto;overscroll-behavior-x:contain}
 .mobile-heat-scroll .heat-layout{min-width:720px}
 .mobile-heat-scroll .heat-grid{grid-template-columns:repeat(14,44px);gap:5px}
 .mobile-heat-scroll .heat-months{min-width:684px;margin-left:36px}
 .content :is(.chart-wrap,svg){max-width:100%}
 .content .globe-stage{width:100%;height:auto;aspect-ratio:1}
 .content .globe-stage canvas,#depth-globe{width:100%!important;height:auto!important;aspect-ratio:1}
 .path-flow{display:grid;grid-template-columns:1fr!important;gap:12px}
 .path-flow>div{display:grid;grid-template-columns:1fr auto;gap:8px}
 .path-flow>div i{grid-column:1/-1;height:18px!important}
 .path-flow>div:after{display:none}
 .em-detail,.drawer{max-height:94dvh;width:calc(100% - 24px);max-width:calc(100% - 24px);overflow:auto;overscroll-behavior:contain}
 .em-detail :is(button,input,select){font-size:16px;min-width:44px;min-height:44px}
 .em-detail p{font-size:16px}.em-detail .em-dialog-head{align-items:flex-start}
 .sample-label{width:100%;height:auto;min-height:520px;overflow-wrap:anywhere}
 .sample-label .label-meta{flex-wrap:wrap;gap:8px}
 .sample-label .label-tracking p{font-size:14px;letter-spacing:1px}
 .sample-label.packing-slip table{table-layout:fixed;width:100%}
 .sample-label.packing-slip :is(th,td){font-size:14px;overflow-wrap:anywhere}
 .a-toast{bottom:max(16px,env(safe-area-inset-bottom))!important}
 .calendar-pop .day{min-height:44px;min-width:0}
 .calendar-footer{flex-wrap:wrap;gap:12px}
 .content .restore-audit-row{font-size:14px}
 .footnote{font-size:14px}
}
