/* Shared staff-only sizing. Public PRIME and the driver cabinet are not restyled. */
html.m-director{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 16px);scroll-padding-bottom:calc(var(--cm-nav-inset,80px) + env(safe-area-inset-bottom,0px) + 20px)}
html.m-director :is(#main,#sheet,.cm-page,.cm-workspace) :is(input,select,textarea,button){box-sizing:border-box;max-width:100%;scroll-margin:calc(env(safe-area-inset-top,0px) + 20px) 0 calc(var(--cm-nav-inset,80px) + 24px)}
html.m-director :is(.field,.two,.three,.row,.btns,.cm-tools,.cm-pairs)>*{min-width:0}
html.m-director :is(.cm-tabs,.ftabs,.chips){overscroll-behavior-x:contain;scroll-padding:12px}
html.m-director :is(.cm-tabs a,.ftabs button,.chips button,.pill-btn,.ghost,.cta){touch-action:manipulation}
html.m-director .mobile-picker-anchor{width:100%;min-width:0}
html.m-director .mobile-picker-open{width:100%;min-height:48px;white-space:normal!important;text-align:left;overflow-wrap:anywhere;padding:12px!important;font:inherit;line-height:1.45}
html.m-director .directory-picker[hidden]{display:none!important}
html.m-director .mobile-picker-dialog{box-sizing:border-box;position:fixed;left:50%;transform:translateX(-50%);top:calc(var(--mobile-vtop,0px) + var(--mobile-safe-top,env(safe-area-inset-top,0px)) + 8px);bottom:auto;margin:0;padding:0;width:min(640px,calc(100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));height:min(800px,calc(var(--mobile-vh,100dvh) - 16px - var(--mobile-safe-top,env(safe-area-inset-top,0px)) - var(--mobile-safe-bottom,env(safe-area-inset-bottom,0px))));max-width:none;max-height:none;border:1px solid var(--line);border-radius:18px;background:var(--night,#111316);color:var(--pearl,#f0ece5);overflow:hidden;font:16px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
html.m-director .mobile-picker-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.mobile-picker-dialog::backdrop{background:#0009}
.mobile-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);min-width:0}
.mobile-picker-head h3{font-size:18px;line-height:1.3;margin:0;overflow-wrap:anywhere;font-weight:600}
.mobile-picker-head button{flex:none;min-height:44px;font:inherit;color:var(--cyan);border:0;background:transparent;padding:8px}
html.m-director .mobile-picker-dialog .directory-picker{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:6px;min-height:0;height:100%;box-sizing:border-box;padding:10px 14px}
html.m-director .mobile-picker-dialog .directory-query{grid-row:1;min-height:48px;font:inherit;font-size:16px;width:100%;box-sizing:border-box;padding:10px 12px;background:var(--steel2);color:inherit;border:1px solid var(--line);border-radius:10px}
html.m-director .mobile-picker-dialog .directory-chosen{grid-row:2;max-height:4.5em;overflow:auto;margin:0;font-size:14px}
html.m-director .mobile-picker-dialog .directory-results{grid-row:3;max-height:none;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin:0;scroll-padding:8px}
html.m-director .mobile-picker-dialog .directory-option{min-height:56px;font:inherit;font-size:16px;color:inherit;background:var(--steel);border:1px solid var(--line);border-radius:10px;padding:12px;line-height:1.45}
html.m-director .mobile-picker-dialog .directory-option span{font-size:14px;opacity:1;color:var(--mist)}
html.m-director .mobile-picker-dialog .directory-status{grid-row:4;font-size:14px;line-height:1.4;margin:0}
html.m-director .mobile-picker-dialog .directory-actions{grid-row:5;margin:0;align-items:center}
html.m-director .mobile-picker-dialog .directory-actions button{min-height:44px;font:inherit;white-space:normal}
html.m-director .mobile-picker-dialog .directory-expanded{font-size:14px;min-height:44px;line-height:1.4}
html.m-director .mobile-picker-dialog[data-compact] .mobile-picker-head{padding:2px 10px}
html.m-director .mobile-picker-dialog[data-compact] .directory-picker{padding:4px 10px;gap:4px}
html.m-director .mobile-picker-dialog[data-compact] :is(.directory-chosen,.directory-status){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
html.m-director .mobile-picker-dialog[data-compact] .directory-picker{grid-template-rows:auto 0 minmax(0,1fr) 0 auto}
html.m-director.mobile-keyboard #tabs{visibility:hidden;pointer-events:none}
html.m-director .mobile-picker-dialog :focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}
html.m-director #scrim{z-index:600}html.m-director #sheet{z-index:610}html.m-director #toast{z-index:700}
/* Position sheets without translating their width: crossing 768px must not animate them off screen. */
html.m-director #sheet.on{position:fixed;left:0;right:0;top:calc(var(--mobile-vtop,0px) + env(safe-area-inset-top,0px) + 12px);bottom:auto;width:min(640px,calc(100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));margin:0 auto;max-width:none;max-height:calc(var(--mobile-vh,100dvh) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);box-sizing:border-box;transform:none;transition:opacity .18s;border-radius:20px;border-bottom:1px solid var(--line);padding-bottom:22px;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:767px){
 html.m-director #wrap{padding-top:max(18px,env(safe-area-inset-top,0px))}
 html.m-director :is(#main,#sheet) :is(input:not([type=checkbox]):not([type=radio]),select,textarea):not([data-sx-qty]){font-size:16px;min-height:48px;min-width:0}
 html.m-director :is(#main,#sheet) :is(button,.cm-link,summary){min-height:44px;line-height:1.4}
 html.m-director :is(.cm-tools,.btns,.row){flex-wrap:wrap}
 html.m-director :is(.cm-workspace,#sheet) :is(.two,.three,.su-grid){grid-template-columns:minmax(0,1fr)!important}
 html.m-director :is(.cm-workspace,#sheet) :is(.inl,.svl,.sfMaterialLine){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px}
 html.m-director :is(.inl,.svl,.sfMaterialLine)>*{width:100%!important;max-width:100%!important;min-width:0!important;grid-column:1!important}
 html.m-director .fx-pop{position:fixed!important;left:max(12px,env(safe-area-inset-left,0px))!important;right:max(12px,env(safe-area-inset-right,0px))!important;top:calc(var(--mobile-vtop,0px) + env(safe-area-inset-top,0px) + 12px)!important;bottom:auto!important;width:auto!important;height:min(560px,calc(var(--mobile-vh,100dvh) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px));max-height:none;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}
 html.m-director .fx-pop>:not(.fx-l){flex:none}.fx-pop .fx-btns{margin-top:auto}html.m-director .fx-pop .fx-l{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain}html.m-director .fx-pop .fx-o{min-height:44px;align-items:center}
 html.m-director .sheet.on{top:auto;bottom:var(--admin-keyboard,0px);max-height:calc(var(--mobile-vh,100dvh) - env(safe-area-inset-top,0px) - 16px);overflow-y:auto;overscroll-behavior:contain}
}

/* R3.1: receipt rows have their own responsive inner grids and persistent labels. */
html.m-director #rcLines .rc-line{padding:16px;margin:0 0 18px;border:1px solid var(--line);border-radius:14px;min-width:0}
html.m-director #rcLines :is(.rc-catalog,.rc-identity,.rc-amounts){display:grid;gap:12px;margin-bottom:12px;min-width:0}
html.m-director #rcLines :is(.rc-catalog,.rc-identity){grid-template-columns:repeat(2,minmax(0,1fr))}
html.m-director #rcLines .rc-amounts{grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr)}
html.m-director #rcLines .field{min-width:0;margin:0;gap:6px;font-size:14px;line-height:1.4}
html.m-director #rcLines :is(input,select){width:100%;min-width:0;min-height:48px;box-sizing:border-box}
html.m-director #rcLines :is(.rcQ,.rcP){font-variant-numeric:tabular-nums}
html.m-director #rcLines .rcU[readonly]{background:var(--steel2);color:var(--pearl)}
@media(max-width:767px){
 html.m-director #rcLines .rc-line{padding:12px}
 html.m-director #rcLines :is(.rc-catalog,.rc-identity,.rc-amounts){grid-template-columns:minmax(0,1fr)!important}
 /* Other nested controls found in the audit: retain the original form handlers. */
 html.m-director #main .cm-to-oil .cm-to-fields{grid-template-columns:minmax(0,1fr)}
 html.m-director #main .cm-to-fields>*{grid-column:1!important}
 html.m-director #main .cm-column{grid-template-columns:24px minmax(0,1fr)}
 html.m-director #main .cm-column input[type=number]{grid-column:2;width:100%;min-width:0}
 html.m-director input[id^="whn_"]{flex:1 0 100%!important;width:100%}

 html.m-director #main .cm-tools>.field{flex-basis:100%}
 html.m-director #main .cm-monitor-primary{grid-template-columns:minmax(0,1fr)}
}

@media(max-width:767px){
 html.m-director #main .cfg-far-rates,html.m-director #main .cfg-far-rates :is(tbody,tr,td){display:block;width:100%;max-width:none;min-width:0;box-sizing:border-box}
 html.m-director #main .cfg-far-rates thead{display:none}
 html.m-director #main .cfg-far-rates tr{padding:12px 0;border-bottom:1px solid var(--line)}
 html.m-director #main .cfg-far-rates td{padding:6px 0;border:0;text-align:left}
 html.m-director #main .cfg-far-rates td:first-child{font-weight:600}
 html.m-director #main .cfg-far-rates td:nth-child(2)::before{content:'₽ за км';display:block;margin-bottom:6px}
 html.m-director #main .cfg-far-rates td:nth-child(3)::before{content:'₽ за минуту в пути';display:block;margin-bottom:6px}
 html.m-director #main .cfg-far-rates input{width:100%!important;min-width:0}
}
/* R3.2 access controls. Keep native checkbox semantics and the existing save handlers.
   These backgrounds intentionally outrank the legacy light-theme surface adapter. */
html.m-director{--ml-toggle-off:#4b5563;--ml-toggle-on:#d8b777;--ml-toggle-edge:#96a0ad;--ml-toggle-ink:#19140c;--ml-toggle-focus:#f0cc83}
html.m-director[data-crm-theme=light]{--ml-toggle-off:#dce1e6;--ml-toggle-on:#08766b;--ml-toggle-edge:#596773;--ml-toggle-ink:#fff;--ml-toggle-focus:#005fcc}
html.m-director :is(#main,#sheet) .opt>input[type=checkbox]{appearance:none;-webkit-appearance:none;width:50px;height:30px;min-height:30px;padding:0;border:2px solid var(--ml-toggle-edge)!important;box-sizing:border-box;background:radial-gradient(circle,#fff 0 10px,transparent 10.5px) no-repeat 1px 50%/22px 22px,var(--ml-toggle-off)!important;box-shadow:inset 0 0 0 1px #0002;opacity:1;cursor:pointer}
html.m-director :is(#main,#sheet) .opt>input[type=checkbox]:checked{background:radial-gradient(circle,#fff 0 10px,transparent 10.5px) no-repeat calc(100% - 1px) 50%/22px 22px,var(--ml-toggle-on)!important}
html.m-director :is(#main,#sheet) .opt>input[type=checkbox]:focus-visible{outline:3px solid var(--ml-toggle-focus);outline-offset:4px}
html.m-director :is(#main,#sheet) .opt>input[type=checkbox]:disabled{opacity:.55!important;cursor:not-allowed;border-style:dashed!important}
html.m-director :is(#main,#sheet) .opt:has(>input[type=checkbox]:disabled){cursor:not-allowed}
html.m-director :is(#tmPerms .opt,.opt:has(>#tmAct)){display:grid;grid-template-columns:minmax(0,1fr) 50px;gap:4px 16px;min-height:72px;box-sizing:border-box;line-height:1.4}
html.m-director :is(#tmPerms .opt,.opt:has(>#tmAct))>input{grid-column:2;grid-row:1/3;align-self:center}
html.m-director :is(#tmPerms .opt,.opt:has(>#tmAct))::after{content:'Выключено';grid-column:1;grid-row:2;font-size:12px;font-weight:600;color:var(--mist)}
html.m-director :is(#tmPerms .opt,.opt:has(>#tmAct)):has(>input:checked)::after{content:'Включено';color:var(--s-fg)}
html.m-director :is(#tmPerms .opt,.opt:has(>#tmAct)):has(>input:disabled)::after{content:'Выключено · недоступно'}
html.m-director :is(#tmPerms .opt,.opt:has(>#tmAct)):has(>input:checked:disabled)::after{content:'Включено · недоступно'}
/* Each pressed button carries its own state, including multi-selection groups. */
html.m-director :is(#main,#sheet) :is(.chip,.seg button,.dirsw button)[aria-pressed]{border:1px solid var(--ml-toggle-edge)!important;background:var(--s-surf)!important;color:var(--s-fg)!important;box-shadow:none}
html.m-director :is(#main,#sheet) :is(.chip,.seg button,.dirsw button)[aria-pressed=true]{background:var(--ml-toggle-on)!important;color:var(--ml-toggle-ink)!important;border-color:var(--ml-toggle-on)!important;box-shadow:inset 0 0 0 1px currentColor}
html.m-director :is(#main,#sheet) :is(.chip,.seg button,.dirsw button)[aria-pressed]:focus-visible{outline:3px solid var(--ml-toggle-focus);outline-offset:3px}
html.m-director :is(#main,#sheet) :is(.chip,.seg button,.dirsw button)[aria-pressed]:disabled{opacity:.55;cursor:not-allowed;border-style:dashed!important}
html.m-director #tmPerms .chips{display:flex;flex-wrap:wrap!important;gap:8px;overflow:visible!important;border-radius:12px;padding:6px}
html.m-director #tmPerms .chips>.sg{display:none}
html.m-director #tmPerms [data-sec]{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:54px;border-radius:12px;text-align:left}
html.m-director #tmPerms [data-sec]::after{content:'Выключено';font-size:11px;font-weight:600}
html.m-director #tmPerms [data-sec][aria-pressed=true]::after{content:'✓ Включено'}
html.m-director #tmPerms [data-sec]:disabled::after{content:'Выключено · недоступно'}
html.m-director #tmPerms [data-sec][aria-pressed=true]:disabled::after{content:'✓ Включено · недоступно'}
