/* Phone chips shared by the pipeline and the record (display grouping only; the dial target is untouched). */
body.ws .dr-phone{display:inline-flex!important;align-items:center;gap:8px;min-height:38px;text-decoration:none!important;font-weight:700;letter-spacing:.03em;border:1px solid #9ca9a2;border-radius:7px;padding:4px 8px!important;color:#155538;background:#f2f8f4;white-space:nowrap}
body.ws .dr-phone:before{content:'Call';font-family:inherit;font-size:.85em;letter-spacing:0}
html.th-contrast body.ws .dr-phone{color:#111;background:#fff;border:2px solid #111}
html.th-simple body.ws .dr-phone{font-size:20px;min-height:48px}
html.th-simple .ws-page .ws-page-act{width:auto}
html.th-simple .ws-page{display:flex;justify-content:space-between;align-items:center;gap:12px}
html.th-simple body.ws #call .toolbar{display:flex;flex-wrap:wrap;gap:8px}
html.th-simple body.ws #call .toolbar input[type=search]{flex:1 1 240px}
html.th-simple body.ws #call .toolbar select{flex:0 1 180px}
body.ws #stagehint{display:none}
/* ---- Display dialog. Built once, updated in place. Explicit font properties (no shorthand that drops the family). */
.dr-settings{position:fixed;inset:0;z-index:500;background:rgba(20,38,28,.4);display:flex;justify-content:flex-end;align-items:flex-start;padding:16px;box-sizing:border-box}
.dr-dialog{background:#fff;color:#111;width:min(480px,100%);max-height:100%;overflow:auto;padding:22px 24px;border-radius:14px;border:2px solid #234735;box-sizing:border-box;overscroll-behavior:contain;font-family:inherit;font-size:16px;line-height:1.5}
.dr-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
body .dr-settings .dr-heading h2{font-family:inherit;font-size:24px!important;font-weight:800;line-height:1.2;margin:0;letter-spacing:0!important;text-transform:none!important;color:#111!important}
.dr-dialog p{margin:8px 0}
.dr-text{color:#2b3442;font-weight:500}
.dr-dialog button{font-family:inherit;font-size:16px;font-weight:700;line-height:1.3;min-height:44px;padding:9px 14px;border:1px solid #6b7e71;border-radius:8px;background:#fff;color:#111;cursor:pointer}
.dr-dialog button.dr-link{display:inline;min-height:0;padding:2px 6px;border:0;text-decoration:underline;background:none;color:#111}
.dr-dialog fieldset{border:0;border-top:1px solid #aebbb2;padding:16px 0 14px;margin:8px 0 0}
.dr-dialog legend{font-family:inherit;font-size:17px;font-weight:800;padding:0 8px 0 0;color:#111}
.dr-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dr-choices button{text-align:left;padding:10px 12px}
.dr-choices button span{display:block;font-size:14px;line-height:1.35;margin-top:4px}
.dr-choices [aria-pressed=true]{border:3px solid #155b3b;background:#eaf4ed;padding:8px 10px}
.dr-choices [aria-pressed=true]:before{content:'\2713  ';font-weight:800}
.dr-preset-st{font-size:18px;font-weight:800;margin:0 0 10px}
.dr-preset-st strong[data-state=mixed]{color:#7A4F0E}
.dr-fine{display:grid;gap:8px;padding:6px 0 4px}
body .dr-settings label.dr-chk{display:flex;align-items:flex-start;gap:12px;padding:8px 6px;margin:0;border-radius:8px;cursor:pointer;font-size:16px!important;text-transform:none!important;letter-spacing:0!important;color:#111;font-weight:500}
.dr-chk:hover{background:#f2f6f3}
.dr-chk input{width:24px;height:24px;flex:none;margin:2px 0 0;accent-color:#155b3b}
.dr-chk strong{display:block;font-weight:700}
.dr-chk .dr-text{display:block;font-size:14px}
.dr-dialog summary{cursor:pointer;font-weight:700;padding:12px 0;font-size:16px;list-style-position:inside}
.dr-dialog summary:focus-visible,.dr-dialog button:focus-visible,.dr-dialog input:focus-visible{outline:3px solid #0b3d91;outline-offset:2px}
.dr-footer{border-top:1px solid #aebbb2;padding-top:14px;margin-top:8px;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}
.dr-summary{font-size:15px;font-weight:700}
.dr-sync{font-size:14px;margin-top:4px;color:#2b3442;font-weight:600}
.dr-sync.ok:before{content:'\2713 ';color:#0F7A40}
.dr-sync.wait:before{content:'\23F3 '}
.dr-sync.bad{color:#B23A2C}
.dr-sync.bad:before{content:'\26A0 '}
/* Easy read: every essential line in the dialog is near-black and heavy — hierarchy comes from size, grouping and rules, not from grey */
html.th-contrast .dr-dialog,html.th-contrast .dr-dialog .dr-text,html.th-contrast .dr-dialog p,html.th-contrast .dr-dialog span,html.th-contrast .dr-dialog summary,html.th-contrast .dr-sync{color:#111;font-weight:700}
html.th-contrast .dr-dialog{border-color:#111}
html.th-contrast .dr-dialog button{border:2px solid #111;color:#111}
html.th-contrast .dr-choices [aria-pressed=true]{border:3px solid #111;background:#fff8c2}
html.th-contrast .dr-dialog fieldset,html.th-contrast .dr-footer{border-color:#111}
html.th-contrast .dr-sync.bad{color:#B23A2C}
html.th-contrast .dr-preset-st strong[data-state=mixed]{color:#7A4F0E}
/* Larger text: the dialog and its controls grow with it, nothing clips */
html.th-big .dr-dialog{font-size:17.5px;width:min(540px,100%)}
html.th-big .dr-dialog button{font-size:17.5px;min-height:48px}
html.th-big .dr-choices button span,html.th-big .dr-chk .dr-text{font-size:15.5px}
html.th-big body .dr-settings .dr-heading h2{font-size:26px!important}
html.th-big body .dr-settings label.dr-chk{font-size:17.5px!important}
html.th-big .dr-preset-st{font-size:19px}
html.th-hand .dr-dialog button{min-height:52px}
html.th-hand .dr-chk input{width:28px;height:28px}
html.th-motion .dr-settings,html.th-motion .dr-dialog{transition:none}
@media (forced-colors:active){.dr-choices [aria-pressed=true]{outline:3px solid Highlight}.dr-dialog{border:2px solid CanvasText}}
@media(max-width:640px){.dr-settings{padding:8px}.dr-dialog{padding:16px}.dr-choices{grid-template-columns:1fr}html.th-simple body.ws #call .toolbar select{flex:1 1 140px}}
