/* Personal readability uses the existing design tokens. Off = original UI. */
[data-display-on]{--text-xs:calc(11.5px * var(--display-text));--text-sm:calc(12.5px * var(--display-text));--text-base:calc(13.5px * var(--display-text));--text-md:calc(15px * var(--display-text));--text-lg:calc(18px * var(--display-headings));--text-xl:calc(22px * var(--display-headings))}
:root[data-display-on] body{font-size:var(--text-base);line-height:1.6}
[data-display-on] :is(h1,h2,h3,h4,[role=heading]){line-height:1.3!important;overflow-wrap:anywhere}
[data-display-on] h1{font-size:calc(18px * var(--display-headings))!important}
[data-display-on] h2{font-size:calc(22px * var(--display-headings))!important}
[data-display-on] h3{font-size:calc(18px * var(--display-headings))!important}
[data-display-on] h4{font-size:calc(16px * var(--display-headings))!important}
[data-display-on] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea,[contenteditable=true],[role=combobox],.dp-field){font-size:calc(13.5px * var(--display-fields))!important;line-height:1.5!important;min-width:0}
[data-display-on] :is(button,.btn-pill,.sb-link,.btn-t,.sel-value){white-space:normal!important;line-height:1.35!important;overflow-wrap:anywhere}
[data-display-on] :is(.sel-trigger,.sel-input,.dp-field){height:auto!important;min-height:var(--h-ctl);padding-top:10px;padding-bottom:10px}
[data-display-on] [role=tablist]{height:auto!important;flex-wrap:wrap}
[data-display-on] [role=tab]{flex:1 1 auto!important;padding-top:10px!important;padding-bottom:10px!important}
[data-display-on] [data-app-header]{flex-wrap:wrap!important}
[data-display-on] [data-app-header] h1{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
[data-display-on] [data-app-header] .head-right{flex-wrap:wrap;max-width:100%}
[data-display-on] .dcard{--dc-chip:var(--text-xs)}
[data-display-on] .sb-link{height:auto;padding-top:8px;padding-bottom:8px;overflow-wrap:anywhere}
[data-display-on] :is(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--accent,#2548bb)!important;outline-offset:3px}
[data-display-spacious]{--h-ctl: max(44px,calc(36px * var(--display-fields)));--h-ctl-sm:max(44px,calc(32px * var(--display-fields)));--h-btn:max(44px,calc(32px * var(--display-text)))}
[data-display-spacious] :is(button,.btn-pill,.sb-link,select,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])){min-height:44px;height:auto}
[data-display-spacious] :is(button.btn-round,button[aria-label]:empty){min-width:44px}
[data-display-spacious] :is(td,th){padding-top:12px;padding-bottom:12px}
[data-display-contrast]{--ground:#edf0f5;--surface:#fff;--surface-solid:#fff;--surface-sunken:#e5eaf2;--ink:#101828;--ink-soft:#26344a;--muted:#3b4b63;--line:#77869c;--line-strong:#53657f;--accent:#183da3;--accent-deep:#123180;--accent-ink:#fff;--accent-wash:#e2eaff;--danger:#a61d24;--warn:#7c4800;--ok:#12613a;--lift-hi:255 255 255;--lift-lo:28 32 42;color-scheme:light}
:root[data-theme=dark][data-display-contrast],:root[data-theme=dark] .display-preview[data-display-contrast]{--ground:#10151e;--surface:#18212f;--surface-solid:#18212f;--surface-sunken:#101925;--ink:#f8fafc;--ink-soft:#edf2f9;--muted:#c5d0e0;--line:#8c9db6;--line-strong:#c5d0e0;--accent:#b2c9ff;--accent-deep:#cfddff;--accent-ink:#10224d;--accent-wash:#223a62;--danger:#ffa5aa;--warn:#ffd394;--ok:#8be5b3;color-scheme:dark}
@media(prefers-color-scheme:dark){:root:not([data-theme=light])[data-display-contrast],:root:not([data-theme=light]) .display-preview[data-display-contrast]{--ground:#10151e;--surface:#18212f;--surface-solid:#18212f;--surface-sunken:#101925;--ink:#f8fafc;--ink-soft:#edf2f9;--muted:#c5d0e0;--line:#8c9db6;--line-strong:#c5d0e0;--accent:#b2c9ff;--accent-deep:#cfddff;--accent-ink:#10224d;--accent-wash:#223a62;--danger:#ffa5aa;--warn:#ffd394;--ok:#8be5b3;color-scheme:dark}}
[data-display-contrast] :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
[data-display-contrast] a:not(.sb-link):not(.btn-pill){text-underline-offset:.2em}
[data-display-calm] :is(.card,.btn-pill,.sb,.display-preview){box-shadow:none!important}
[data-display-calm] :is(.um-pv,.yp){display:none!important}
[data-display-calm] :is(.card,.dcard,.sb-link,.head-btn,.btn-pill){animation:none!important;transition:none!important}
[data-display-calm] *{scroll-behavior:auto!important}
.crm-display-profile{display:block;width:100%;padding:14px 16px;margin-bottom:20px;border:1px solid var(--line-strong);border-radius:16px;background:var(--accent-wash);color:var(--accent);text-align:left;font:600 var(--text-base)/1.5 inherit;cursor:pointer}
.display-dialog{box-sizing:border-box;width:min(880px,calc(100% - 24px));max-width:880px;max-height:calc(100dvh - 24px);margin:auto;padding:26px;border:1px solid var(--line-strong,#c7cdd9);border-radius:24px;background:var(--surface-solid,#fff);color:var(--ink,#14161c);font-family:system-ui,-apple-system,sans-serif;font-size:max(16px,var(--text-base));line-height:1.5;box-shadow:0 24px 80px #10182838;overflow:auto}
.display-dialog::backdrop{background:#10182880}
.display-dialog *{box-sizing:border-box}
.display-dialog header,.display-dialog footer,.display-dialog footer>div{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.display-dialog h2{font-size:24px;margin:0;line-height:1.3}.display-eyebrow{color:var(--muted);font-size:.85em;margin:0 0 4px}
.display-dialog #display-description{margin:14px 0 22px;color:var(--muted);max-width:65ch}
.display-dialog button{font:inherit;border:1px solid var(--line-strong);border-radius:12px;min-height:44px;padding:10px 14px;background:var(--surface);color:var(--ink);cursor:pointer;line-height:1.4}
.display-dialog button:hover{border-color:var(--accent)}.display-dialog button:disabled{opacity:.6;cursor:wait}
.display-dialog [data-close]{flex-shrink:0;font-size:26px;padding:0;width:44px;height:44px}
.display-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.display-presets button{text-align:left;padding:14px;display:grid;align-content:start;gap:6px;white-space:normal}
.display-presets span{font-size:.85em;color:var(--muted)}.display-presets [aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-wash);padding:13px}
.display-master{margin:20px 0!important;padding:16px!important;border:1px solid var(--line);border-radius:14px}
.display-toggle{display:flex;gap:12px;align-items:flex-start;margin:12px 0;cursor:pointer;min-height:44px}
.display-toggle input{flex:0 0 22px;width:22px;height:22px;margin:3px 0;accent-color:var(--accent)}
.display-toggle small{display:block;font-size:.85em;color:var(--muted);margin-top:4px}
.display-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
.display-dialog fieldset{min-width:0;border:0;padding:0;margin:0}.display-dialog fieldset:disabled{opacity:.6}
.display-dialog legend,.display-example>h3{font-weight:700;font-size:1em;margin:0 0 14px}
.display-scales{display:grid;gap:12px;margin-bottom:22px}.display-scales label{display:flex;justify-content:space-between;align-items:center;gap:12px}
.display-dialog select{font:inherit;font-size:1em!important;padding:8px 10px;min-height:44px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink);max-width:100%}
.display-example>p{font-size:.85em;color:var(--muted);margin:0 0 12px}
.display-preview{border:1px solid var(--line-strong);padding:18px;border-radius:16px;background:var(--surface);color:var(--ink);font-size:calc(13.5px * var(--display-text));overflow-wrap:anywhere}
.display-preview:not([data-display-contrast]){--surface:#f3f5f9;--ink:#14161c;--muted:#5e6472;--line-strong:#c7cdd9;--accent:#3a56d4;--accent-ink:#fff;--ok:#24674c}
.display-preview h3{font-size:calc(18px * var(--display-headings))!important;margin:14px 0 8px}.display-preview p{margin:8px 0 14px;font-size:inherit}
.display-example-status{font-size:inherit;color:var(--ok);font-weight:600}.display-preview label{display:block;font-size:inherit}
.display-preview input{width:100%;margin-top:6px;border:1px solid var(--line-strong);border-radius:10px;padding:10px;font-family:inherit;font-size:calc(13.5px * var(--display-fields))!important;background:var(--surface);color:var(--ink)}
.display-preview button{font-size:inherit;background:var(--accent);color:var(--accent-ink);border:0;width:100%;padding:12px}
.display-preview .display-example-note{color:var(--muted)}
.display-status{min-height:1.5em;color:var(--muted);font-size:.9em}.display-status[data-error=true]{color:var(--danger)}
.display-dialog footer{border-top:1px solid var(--line);padding-top:18px;align-items:center;flex-wrap:wrap}
.display-dialog .display-apply{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:650}
@media(max-width:650px){.display-dialog{padding:18px;border-radius:18px}.display-columns{grid-template-columns:minmax(0,1fr);gap:24px}.display-presets{grid-template-columns:minmax(0,1fr)}.display-presets button{gap:2px}.display-dialog footer,.display-dialog footer>div{width:100%}.display-dialog footer>div>button{flex:1}.display-scales label{flex-wrap:wrap}.display-example{min-width:0}}
@media(max-width:767.98px){[data-display-on] :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea,[role=combobox],.dp-field){font-size:max(16px,calc(16px * var(--display-fields)))!important}[data-display-on] [data-app-header] h1{order:3;flex:1 0 100%!important;min-width:0!important;padding:4px 8px}[data-display-on] [data-app-header] [data-head-spacer]{display:none}[data-display-on] [data-app-header] .head-right{margin-left:auto}[data-display-on] main div:has(> button[aria-label="Цвета видов"]){grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))!important}}
@media(prefers-reduced-motion:reduce){.display-dialog *{scroll-behavior:auto!important;transition:none!important}}

:root[data-theme=dark] .display-preview:not([data-display-contrast]){--surface:#202632;--ink:#f3f5f9;--muted:#b7c1d0;--line-strong:#7e8b9e;--accent:#aabcff;--accent-ink:#132047;--ok:#8be5b3}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .display-preview:not([data-display-contrast]){--surface:#202632;--ink:#f3f5f9;--muted:#b7c1d0;--line-strong:#7e8b9e;--accent:#aabcff;--accent-ink:#132047;--ok:#8be5b3}}

/* Readability for the independent screens with fixed legacy font sizes. */
:root[data-display-on] :is(.crm-cal-axis-label){font-size:calc(9px * var(--display-text))!important}
:root[data-display-on] :is(.dash-production-result small,.dash-kind,.dash-pill,.ts-cell small,.ts-cell.ts-accrued:after,.crm-cal-corner,.crm-cal-axis-label,.crm-cal-hours span,.crm-cal-event span,.crm-cal-event small){font-size:calc(10px * var(--display-text))!important}
:root[data-display-on] :is(.dash-alert-date,.dash-station-detail,.dash-period label,.dash-milestone small,.dash-schedule-row small,.dash-preview-note,.dash-footnote,.dash-detail-content footer>small,#crm-owner-dashboard .dash-status,#crm-owner-dashboard .dash-time,.dash-signal-row small,.dash-station-row small,.dash-breakdown-row small,#crm-owner-dashboard .dash-schedule-row small,.dash-trio small,#crm-owner-dashboard .dash-preview-note,#crm-owner-dashboard .dash-footnote,.crm-search-foot,.ts-rate,.ts-cell i){font-size:calc(11px * var(--display-text))!important}
:root[data-display-on] :is(#crm-owner-dashboard .dash-catalog-row select){font-size:max(16px,calc(12px * var(--display-fields)))!important}
:root[data-display-on] :is(.dash-status,.dash-snapshot-label,.dash-metric small,.dash-panel header p,#crm-owner-dashboard .dash-section-link,#crm-owner-dashboard .dash-alert-filters button,.dash-attention-list small,.dash-empty p,.dash-pipeline-row>small,.dash-station strong small,.dash-period-heading p,.dash-production-result span,.dash-toolbar p,.dash-widget-tools>span,#crm-owner-dashboard .dash-layout-hint,.dash-detail-dialog header p,.dash-detail-summary>span,.dash-detail-filters label,.dash-detail-row :is(span,small),.dash-detail-pages,#crm-owner-dashboard .dash-metric>small,.dash-signal-total,.dash-signal-row b,.dash-station-row b,.dash-breakdown-row b,.dash-schedule-row time,#crm-owner-dashboard .dash-schedule-row b,.crm-search-related,.crm-deal-chat-caption,.crm-cal-week-hint,.crm-cal-event){font-size:calc(12px * var(--display-text))!important}
:root[data-display-on] :is(#crm-owner-dashboard .dash-preset select){font-size:max(16px,calc(13px * var(--display-fields)))!important}
:root[data-display-on] :is(.crm-search h3){font-size:calc(13px * var(--display-headings))!important}
:root[data-display-on] :is(.dash-metric>span,.dash-attention-list b,.dash-pipeline-row>span,.dash-pipeline-row>b,.dash-station-name,.dash-milestone div>b,.dash-ring b,.dash-schedule-row b,.dash-date,.dash-layout-message,.dash-widget-catalog summary,.dash-catalog-row label,.dash-detail-definition,.dash-detail-error,#crm-owner-dashboard .dash-toolbar p,.dash-breakdown-row>strong,#crm-owner-dashboard [data-layout-toggle],.crm-search-close,.crm-search-filters button,.crm-search-status,.crm-search-group>header button,.crm-search-subtitle,.crm-search-snippet,.crm-search-shortcuts a,.ts-cell){font-size:calc(13px * var(--display-text))!important}
:root[data-display-on] :is(#crm-owner-dashboard,.dash-empty b,.dash-detail-overlay,#crm-owner-dashboard .dash-metric>span b,.dash-open-arrow,.dash-signal-row>strong,.dash-station-row>strong,.crm-search-empty,.ts-cell>b,.crm-cal-modes button){font-size:calc(14px * var(--display-text))!important}
:root[data-display-on] :is(#crm-owner-dashboard .dash-period-heading h3,.ts-modal h3){font-size:calc(15px * var(--display-headings))!important}
:root[data-display-on] :is(.dash-detail-row>span,.dash-signal-row>span,.dash-station-row>span,.dash-breakdown-row>span,.crm-search-hit strong){font-size:calc(15px * var(--display-text))!important}
:root[data-display-on] :is(#crm-owner-dashboard .dash-period :is(select,input,button),#crm-owner-dashboard .dash-custom-period input,.crm-deal-chat-compose textarea,.ts-input){font-size:max(16px,calc(16px * var(--display-fields)))!important}
:root[data-display-on] :is(.dash-widget .dash-panel h3,#crm-owner-dashboard .dash-widget .dash-panel h3){font-size:calc(16px * var(--display-headings))!important}
:root[data-display-on] :is(.dash-panel h3){font-size:calc(17px * var(--display-headings))!important}
:root[data-display-on] :is(.ts-day-total){font-size:calc(17px * var(--display-text))!important}
:root[data-display-on] :is(.crm-search-top input){font-size:max(16px,calc(18px * var(--display-fields)))!important}
:root[data-display-on] :is(#crm-owner-dashboard h3){font-size:calc(18px * var(--display-headings))!important}
:root[data-display-on] :is(.ts-modal h2){font-size:calc(20px * var(--display-headings))!important}
:root[data-display-on] :is(.dash-trio strong){font-size:calc(20px * var(--display-text))!important}
:root[data-display-on] :is(.dash-detail-dialog h2){font-size:calc(22px * var(--display-headings))!important}
:root[data-display-on] :is(#crm-owner-dashboard .dash-widget-tools [data-handle],.dash-detail-summary>b,#crm-owner-dashboard .dash-toolbar-actions [data-refresh],.ts-summary strong){font-size:calc(22px * var(--display-text))!important}
:root[data-display-on] :is(.dash-detail-dialog [data-detail-close]){font-size:calc(23px * var(--display-text))!important}
:root[data-display-on] :is(.crm-deal-chat-send-icon){font-size:calc(24px * var(--display-text))!important}
:root[data-display-on] :is(.dash-signal-total b){font-size:calc(25px * var(--display-text))!important}
:root[data-display-on] :is(.dash-station strong,.dash-production-result b){font-size:calc(26px * var(--display-text))!important}
:root[data-display-on] :is(#crm-owner-dashboard .dash-toolbar h2){font-size:calc(28px * var(--display-headings))!important}
:root[data-display-on] :is(.dash-metric strong){font-size:calc(30px * var(--display-text))!important}
:root[data-display-on] :is(#crm-owner-dashboard .dash-widget .dash-metric>strong){font-size:calc(31px * var(--display-text))!important}
:root[data-display-on] :is(.crm-search-icon){font-size:calc(32px * var(--display-text))!important}
:root[data-display-on] :is(.dash-metric,.dash-panel,.dash-toolbar,.crm-search-hit){overflow-wrap:anywhere;min-width:0}
:root[data-display-on] #crm-owner-dashboard .dash-toolbar-actions [data-refresh]{font-size:24px!important;min-width:44px;min-height:44px;flex-shrink:0}
/* Full labels remain readable in the optional phone shortcut strip. */
@media(max-width:767.98px){
 :root[data-display-on] #crm-owner-dashboard .dash-toolbar-actions{width:100%;flex-wrap:wrap!important}
 :root[data-display-on] #crm-owner-dashboard [data-period-slot]{flex:1 0 100%!important;min-width:0}
 :root[data-display-on] #crm-owner-dashboard :is(.dash-preset,.dash-preset select){width:100%;max-width:100%}
 :root[data-display-on] nav[aria-label="Быстрый доступ"] .mn-row{display:flex!important;height:auto!important;gap:6px;padding:7px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}
 :root[data-display-on] nav[aria-label="Быстрый доступ"] .mn-slot{display:none!important}
 :root[data-display-on] nav[aria-label="Быстрый доступ"] .mn-link{flex:0 0 auto!important;width:auto!important;min-width:max(100px,calc(80px * var(--display-text)));min-height:64px;padding:8px 12px;border-radius:16px;scroll-snap-align:start}
 :root[data-display-on] nav[aria-label="Быстрый доступ"] .mn-link.on{background:var(--accent);color:var(--accent-ink)}
 :root[data-display-on] nav[aria-label="Быстрый доступ"] .mn-t{font-size:var(--text-sm)!important;white-space:normal!important;text-overflow:clip;overflow:visible;max-width:none}
}
