#mdCalendar{--cal-line:#dce3eb;--cal-soft:#f2f5f9;--cal-selected:#e2edfc;--cal-blue:#245993;--cal-purple:#71479e;margin-bottom:24px;min-width:0;color:inherit}
html[data-theme="dark"] #mdCalendar{--cal-line:#374151;--cal-soft:#222e3f;--cal-selected:#244163;--cal-blue:#a9c8ff;--cal-purple:#ddbdff}
.cal-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.cal-heading h2{margin:0;font-size:23px}.cal-heading .btn{min-height:44px}
.cal-views{display:flex;gap:8px;margin:14px 0}.cal-views .btn{flex:1;min-height:44px}
.cal-period{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.cal-period strong{text-align:center;text-transform:capitalize;min-width:0;font-size:18px}.cal-period .btn{width:44px;height:44px;min-width:44px;padding:0;font-size:26px}
.cal-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.cal-filter label{margin:0;font-size:13px}.cal-filter select{width:auto;min-width:140px;min-height:44px;font-size:14px}.cal-legend{display:flex;gap:10px;font-size:12px;margin-left:auto}
.cal-measure{color:var(--cal-blue,#245993)}.cal-install{color:var(--cal-purple,#71479e)}
.cal-weekdays,.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-weekdays{margin-bottom:6px;font-size:12px;text-align:center;color:inherit;opacity:.75}
.cal-date{display:flex;flex-direction:column;gap:6px;min-width:0;min-height:106px;border:1px solid var(--cal-line);border-radius:10px;background:transparent;color:inherit;font:inherit;padding:10px;text-align:left;cursor:pointer}
.cal-date-number{font-size:16px;font-weight:700}.cal-date.is-selected{background:var(--cal-selected);border:2px solid var(--cal-blue);padding:9px}.cal-date.is-today .cal-date-number{text-decoration:underline;text-underline-offset:4px}.is-outside{opacity:.45}
.cal-dots{display:flex;flex-wrap:wrap;gap:5px;min-height:14px;font-size:12px;font-weight:700}.cal-dots>span{border-radius:5px;background:var(--cal-soft);padding:1px 5px}.cal-preview{display:grid;gap:4px;font-size:11px;line-height:1.3;max-width:100%}.cal-preview>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cal-date.is-outside{opacity:1;color:#657080}html[data-theme="dark"] .cal-date.is-outside{color:#aeb8c4}
.cal-year{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.cal-month{min-width:0;background:transparent;color:inherit;font:inherit;border:1px solid var(--cal-line);border-radius:12px;padding:12px;cursor:pointer}.cal-month-name{display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:700;text-transform:capitalize;margin-bottom:10px}.cal-month-name>span{font-size:12px;font-weight:400}.cal-mini{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;font-size:11px;text-align:center}.cal-mini>span{display:grid;place-items:center;min-height:20px;border-radius:5px}.cal-mini .has-events{background:var(--cal-selected);font-weight:700;outline:1px solid var(--cal-blue)}
.cal-day{border-top:1px solid var(--cal-line);margin-top:18px;padding-top:12px;scroll-margin-top:20px}.cal-day h3{margin:4px 0 12px;font-size:18px}.cal-day-actions{display:flex;gap:8px;margin:12px 0}.cal-day-actions .btn{flex:1;min-height:44px}
.cal-event{display:flex;align-items:center;gap:10px;border-top:1px solid var(--cal-line);padding:10px 0}.cal-event-open{display:grid;gap:5px;flex:1;min-width:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:8px 0;min-height:64px;cursor:pointer}.cal-event-open strong,.cal-event-open .small{overflow-wrap:anywhere}.cal-event-type{font-size:13px}.cal-change{min-height:44px;font-size:13px!important;padding:10px!important}.cal-footnote{line-height:1.5;margin:12px 0 0}.cal-empty{padding:8px 0}
#mdCalendar button:focus-visible,#mdCalendar select:focus-visible{outline:3px solid #4b88cf;outline-offset:2px}#mdCalendar button:not(.primary):hover{background:var(--cal-soft)}
.cal-form-box{max-width:600px}.cal-form-date{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.cal-client-results{max-height:220px;overflow:auto;overscroll-behavior:contain;margin:8px 0;border-radius:10px}.cal-client-choice{display:grid;gap:5px;width:100%;background:transparent;color:inherit;border:0;border-bottom:1px solid #dce3eb;padding:12px 4px;min-height:56px;text-align:left;font:inherit;cursor:pointer;overflow-wrap:anywhere}.cal-client-choice:hover{background:rgba(120,130,150,.12)}.cal-selected{display:flex;align-items:center;gap:10px;margin:14px 0}.cal-selected strong{flex:1;min-width:0;overflow-wrap:anywhere}.cal-selected .btn{font-size:13px;min-height:44px;flex:none}.cal-status-option{display:flex;align-items:flex-start;gap:10px;font-size:14px;margin-top:14px}.cal-status-option input{width:22px;height:22px;flex:none;margin:0}.cal-form-actions{display:flex;gap:10px}.cal-form-actions .btn{flex:1;min-height:44px}.cal-remove{width:100%;margin-top:12px;min-height:44px}#calFormError{color:#b42318;line-height:1.5}#calFormNotice{line-height:1.5}.cal-form-box input,.cal-form-box select{min-height:44px;min-width:0}.cal-form-box [type=date],.cal-form-box [type=time]{width:100%;box-sizing:border-box}
html[data-theme="dark"] #calFormError{color:#ffb4b4}html[data-theme="dark"] .cal-client-choice{border-color:#374151}
@media(max-width:950px){.cal-year{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){#mdCalendar{padding:14px}.cal-date{min-height:58px;padding:6px;border-radius:8px;gap:5px}.cal-date.is-selected{padding:5px}.cal-preview{display:none}.cal-legend{width:100%;margin:0}.cal-period strong{font-size:16px}.cal-grid,.cal-weekdays{gap:2px}.cal-dots{gap:2px;font-size:10px}.cal-dots>span{padding:1px 3px}.cal-week-grid .cal-date{min-height:68px}.cal-year{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cal-month{padding:10px}.cal-mini{font-size:10px;gap:2px}.cal-day-actions .btn{padding:10px 8px!important}.cal-event{gap:6px}.cal-form-box input,.cal-form-box select{font-size:16px}.cal-form-box{padding:18px}.cal-client-results{max-height:180px}}
@media(prefers-reduced-motion:reduce){#mdCalendar{scroll-behavior:auto}}
@media(max-width:420px){#mdCalendar{padding:8px}.cal-filter{gap:8px}.cal-dots>span{padding:1px 2px}}
.cal-other{color:#166c63}html[data-theme="dark"] .cal-other{color:#9ee0d3}.cal-event{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:start}.cal-done{width:24px;height:24px;margin:12px 10px 0;cursor:pointer;outline-offset:4px}.cal-done:disabled{cursor:default}.cal-event-content{min-width:0}.cal-event-open{width:100%}.cal-event-actions{display:flex;gap:6px;flex-wrap:wrap;align-self:center}.cal-comment{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;margin:0 0 10px}.cal-completed .cal-event-open strong{text-decoration:line-through}.cal-form-box textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:80px;font:inherit;padding:10px;border:1px solid #a9b3c1;border-radius:10px;background:transparent;color:inherit}.cal-error{color:#b42318;line-height:1.5}html[data-theme="dark"] .cal-error{color:#ffb4b4}.cal-day-actions{flex-wrap:wrap}.cal-day-actions .btn{flex:1 1 85px}
@media(max-width:760px){.cal-event{grid-template-columns:44px minmax(0,1fr)}.cal-event-actions{grid-column:2;justify-content:flex-start}.cal-form-box textarea{font-size:16px}}
.cal-check{display:grid;place-items:center;width:44px;height:44px;margin:4px 0 0;cursor:pointer}.cal-check .cal-done{margin:0}
.cal-link-toggle{width:100%;min-height:44px;margin:8px 0}

/* task-editor-20261020-v1: one set of native controls; Classic remains available. */
.cal-task-head,.cal-task-body,.cal-task-details,.cal-task-contact,.cal-task-field,.cal-task-footer,.cal-task-messages{display:contents}
.cal-task-apple-only{display:none}
@media screen{
 html[data-interface-style="apple"] .cal-task-shell{display:flex;flex-direction:column;width:min(700px,100%);max-width:700px;max-height:calc(100dvh - 24px);padding:0;border-radius:26px;overflow:hidden;--task-button:#1567d1}
 html[data-interface-style="apple"][data-theme="dark"] .cal-task-shell{--task-button:#397ee0}
 html[data-interface-style="apple"] .cal-task-shell [hidden]{display:none!important}
 html[data-interface-style="apple"] .cal-task-shell .cal-task-apple-only{display:revert}
 html[data-interface-style="apple"] .cal-task-shell .cal-task-classic-only{display:none}
 html[data-interface-style="apple"] .cal-task-shell>.md-layer-close{position:absolute;top:20px;right:20px;float:none;width:44px;height:44px;min-width:44px;margin:0;border:0;border-radius:50%;background:var(--ap-well);color:var(--ap-muted);z-index:2}
 html[data-interface-style="apple"] .cal-task-head{display:block;flex:none;padding:24px 82px 22px 24px}
 html[data-interface-style="apple"] .cal-task-head h2{margin:0;font-size:25px;line-height:1.2;letter-spacing:-.7px;font-weight:650}
 html[data-interface-style="apple"] .cal-task-eyebrow{font-size:11px;letter-spacing:1.3px;color:var(--ap-muted);font-weight:600;margin:0 0 6px}
 html[data-interface-style="apple"] .cal-task-form{display:flex;flex-direction:column;min-height:0;overflow:hidden;margin:0}
 html[data-interface-style="apple"] .cal-task-body{display:grid;grid-template-areas:"details" "contact" "comment" "complete" "options" "messages";gap:20px;overflow:auto;overscroll-behavior:contain;min-height:0;padding:0 24px 20px}
 html[data-interface-style="apple"] .cal-task-details{grid-area:details;display:grid;gap:20px;min-width:0}
 html[data-interface-style="apple"] .cal-task-field{display:block;min-width:0}
 html[data-interface-style="apple"] .cal-task-shell .cal-task-field>label,html[data-interface-style="apple"] .cal-task-shell .cal-form-date label,html[data-interface-style="apple"] .cal-task-shell .cal-form-contact label{display:block;margin:0 0 7px;font-size:13px!important;font-weight:500;color:var(--ap-ink)!important;line-height:1.5}
 html[data-interface-style="apple"] .cal-task-shell input:not([type=checkbox]):not([type=hidden]),html[data-interface-style="apple"] .cal-task-shell textarea{width:100%;min-width:0;max-width:100%;min-height:46px;box-sizing:border-box;padding:11px 12px;margin:0;font:inherit;font-size:16px!important;line-height:1.45;border:1px solid transparent!important;border-radius:11px;background:var(--ap-well)!important;color:var(--ap-ink)!important;box-shadow:none}
 html[data-interface-style="apple"] .cal-task-shell textarea{min-height:118px;resize:vertical}
 html[data-interface-style="apple"] .cal-task-shell :is(input,textarea)::placeholder{color:var(--ap-muted);opacity:.9}
 html[data-interface-style="apple"] .cal-task-kind>select{display:none}
 html[data-interface-style="apple"] .cal-task-kind>label{color:var(--ap-muted)!important;font-weight:400}
 html[data-interface-style="apple"] .cal-task-segments{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:4px;background:var(--ap-well);border-radius:13px}
 html[data-interface-style="apple"] #mdCalendarScheduleModal .cal-task-segments{grid-template-columns:repeat(3,minmax(0,1fr))}
 html[data-interface-style="apple"] .cal-task-segments>button{min-width:0;min-height:44px;padding:8px 3px;background:transparent;color:var(--ap-muted);font:inherit;font-size:13px;border:0;border-radius:10px;line-height:1.3;cursor:pointer}
 html[data-interface-style="apple"] .cal-task-segments>[aria-pressed=true]{background:var(--ap-surface);box-shadow:0 2px 5px #00000010;color:var(--ap-blue)}
 html[data-interface-style="apple"] .cal-task-segments>[data-task-kind=measurement][aria-pressed=true]{color:#d92333}
 html[data-interface-style="apple"] .cal-task-segments>[data-task-kind=installation][aria-pressed=true]{color:#7c3aed}
 html[data-interface-style="apple"] .cal-task-segments>[data-task-kind=delivery][aria-pressed=true]{color:#aa5306}
 html[data-interface-style="apple"][data-theme=dark] .cal-task-segments>[data-task-kind=measurement][aria-pressed=true]{color:#ff7c82}
 html[data-interface-style="apple"][data-theme=dark] .cal-task-segments>[data-task-kind=installation][aria-pressed=true]{color:#c29bff}
 html[data-interface-style="apple"][data-theme=dark] .cal-task-segments>[data-task-kind=delivery][aria-pressed=true]{color:#ffae66}
 html[data-interface-style="apple"] .cal-task-segments>button:disabled{opacity:.65;cursor:default}
 html[data-interface-style="apple"] .cal-task-segments>button:focus-visible{outline:3px solid var(--ap-blue);outline-offset:2px}
 html[data-interface-style="apple"] .cal-task-shell .cal-form-date{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px;align-items:end;margin:0}
 html[data-interface-style="apple"] .cal-task-shell .cal-form-date>div{display:flex;flex-direction:column;min-width:0}
 html[data-interface-style="apple"] .cal-task-shell .cal-form-date input{order:2}
 html[data-interface-style="apple"] .cal-task-shell .cal-form-date .small{order:1;font-size:11px;margin:-5px 0 7px}
 html[data-interface-style="apple"] .cal-task-contact{grid-area:contact;display:block;min-width:0;border-top:1px solid var(--ap-line);padding-top:20px}
 html[data-interface-style="apple"] .cal-task-contact>h3{margin:0 0 14px;font-size:14px;font-weight:600;line-height:1.4}
 html[data-interface-style="apple"] .cal-task-contact .cal-selected{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:8px 10px;margin:0}
 html[data-interface-style="apple"] .cal-task-client-avatar{grid-row:1;grid-column:1;width:38px;height:38px;border-radius:12px;background:var(--ap-well);color:var(--ap-muted);display:grid!important;place-items:center}
 html[data-interface-style="apple"] .cal-task-contact .cal-selected-info{grid-row:1;grid-column:2;gap:3px}
 html[data-interface-style="apple"] .cal-task-contact .cal-selected strong{font-size:15px;font-weight:600;line-height:1.4}
 html[data-interface-style="apple"] .cal-task-contact .cal-client-address{font-size:13px}
 html[data-interface-style="apple"] .cal-task-client-phone{display:flex!important;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px;margin-top:9px;color:var(--ap-ink);overflow-wrap:anywhere}
 html[data-interface-style="apple"] .cal-task-client-phone .cal-icon{width:15px;height:15px;flex:none;color:var(--ap-muted)}
 html[data-interface-style="apple"] .cal-task-contact .cal-selected .btn{grid-column:1/-1;min-width:0;min-height:44px;padding:8px 0;margin:0;border:0;border-radius:8px;background:transparent!important;color:var(--ap-blue)!important;box-shadow:none;font-size:13px;justify-self:start;text-align:left}
 html[data-interface-style="apple"] .cal-task-contact .cal-selected .cal-task-client-change{grid-row:2}
 html[data-interface-style="apple"] .cal-task-contact #diaryUnlink{grid-row:2;grid-column:2;justify-self:end;color:var(--ap-muted)!important}
 html[data-interface-style="apple"] .cal-task-contact[data-has-client=true] :is(.cal-form-contact,#diaryContactHint){display:none}
 html[data-interface-style="apple"] .cal-task-contact .cal-form-contact{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:14px}
 html[data-interface-style="apple"] .cal-task-contact .cal-link-toggle{margin:0;min-height:46px;color:var(--ap-blue)!important}
 html[data-interface-style="apple"] .cal-task-contact :is(#diaryPicker,#calPicker){margin-top:12px}
 html[data-interface-style="apple"] .cal-task-contact .cal-client-choice{font-size:14px;padding:11px 3px}
 html[data-interface-style="apple"] .cal-task-contact .cal-client-results{max-height:200px}
 html[data-interface-style="apple"] .cal-task-contact :is(#diaryNotice,#calFormNotice,#diaryContactHint){margin:8px 0 0;font-size:12px;line-height:1.5}
 html[data-interface-style="apple"] .cal-task-comment{grid-area:comment}
 html[data-interface-style="apple"] .cal-task-complete{grid-area:complete;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;border-top:1px solid var(--ap-line);padding:17px 0 0;margin:0!important;color:var(--ap-ink)!important}
 html[data-interface-style="apple"] .cal-task-complete>span{order:-1;font-size:14px;color:var(--ap-ink)}
 html[data-interface-style="apple"] .cal-task-complete small{font-size:12px;color:var(--ap-muted);margin-top:4px;display:block!important}
 html[data-interface-style="apple"] .cal-task-complete input{appearance:none;position:relative;flex:none;width:46px;height:28px;min-width:46px;min-height:28px;margin:0;border:0!important;border-radius:18px!important;background:var(--ap-line)!important;box-shadow:none;cursor:pointer}
 html[data-interface-style="apple"] .cal-task-complete input:before{content:"";position:absolute;width:22px;height:22px;top:3px;left:3px;background:var(--ap-surface);border-radius:50%;box-shadow:0 1px 4px #0002;transition:transform .15s}
 html[data-interface-style="apple"] .cal-task-complete input:checked{background:var(--task-button)!important}
 html[data-interface-style="apple"] .cal-task-complete input:checked:before{transform:translateX(18px)}
 html[data-interface-style="apple"] .cal-task-options{grid-area:options;margin:0;font-size:13px!important}
 html[data-interface-style="apple"] .cal-task-messages{grid-area:messages;display:block;min-width:0}
 html[data-interface-style="apple"] .cal-task-messages p:empty{display:none}
 html[data-interface-style="apple"] .cal-task-messages:not(:has(p:not(:empty),button:not([hidden]))){display:none}
 html[data-interface-style="apple"] .cal-task-footer{display:flex;flex:none;align-items:center;gap:10px;padding:16px 24px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--ap-line);background:var(--ap-surface)}
 html[data-interface-style="apple"] .cal-task-footer .cal-form-actions{display:flex;gap:10px!important;justify-content:flex-end;flex:1;min-width:0;flex-wrap:nowrap!important;margin:0}
 html[data-interface-style="apple"] .cal-task-footer .cal-form-actions>.btn{flex:none;width:auto;min-width:0;min-height:44px;padding:12px 18px;font-size:14px;border-radius:12px}
 html[data-interface-style="apple"] .cal-task-footer .btn.primary{background:var(--task-button)!important;color:#fff!important}
 html[data-interface-style="apple"] .cal-task-footer .cal-task-remove{display:grid;place-items:center;order:-1;flex:none;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin:0;border:0;background:transparent!important;color:#d92333!important}
 html[data-interface-style="apple"][data-theme=dark] .cal-task-footer .cal-task-remove{color:#ff7c82!important}
 @media(min-width:800px){html[data-interface-style="apple"] .cal-task-body{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-areas:"details contact" "comment contact" "complete complete" "options options" "messages messages";column-gap:26px}html[data-interface-style="apple"] .cal-task-contact{padding:0 0 0 24px;border-top:0;border-left:1px solid var(--ap-line)}}
 @media(max-width:600px){html[data-interface-style="apple"] .cal-task-shell{max-height:calc(100dvh - 12px);border-radius:22px}html[data-interface-style="apple"] .cal-task-head{padding:22px 76px 20px 18px}html[data-interface-style="apple"] .cal-task-shell>.md-layer-close{top:17px;right:16px}html[data-interface-style="apple"] .cal-task-body{padding:0 18px 18px}html[data-interface-style="apple"] .cal-task-footer{padding:14px 18px max(14px,env(safe-area-inset-bottom))}}
 @media(max-width:360px){html[data-interface-style="apple"] .cal-task-shell .cal-form-date{gap:8px}html[data-interface-style="apple"] .cal-task-shell .cal-form-date input{padding:10px 7px}html[data-interface-style="apple"] .cal-task-footer .cal-form-actions{gap:8px!important}html[data-interface-style="apple"] .cal-task-footer .cal-form-actions>.btn{padding:11px 14px}}
}

/* calendar-week-tiles-20261004: large days instead of seven narrow columns. */
#mdCalendar{container-type:inline-size}
.cal-week-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}
.cal-week-tile{display:flex;flex-direction:column;min-width:0;min-height:228px;padding:14px;background:var(--cal-soft);border-radius:18px;scroll-margin-top:16px}
.cal-tile-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.cal-tile-date{display:flex;align-items:center;gap:10px;min-height:44px;min-width:0;padding:0;background:transparent;border:0;border-radius:8px;font:inherit;color:inherit;text-align:left;cursor:pointer}
.cal-tile-date>span:last-child{display:grid;min-width:0;gap:2px}.cal-tile-date strong{font-size:15px;text-transform:capitalize;overflow-wrap:anywhere}.cal-tile-number{font-size:28px;font-weight:700;line-height:1.1}
.cal-week-tile.is-today .cal-tile-number{color:var(--cal-blue);text-decoration:underline;text-underline-offset:5px}
.cal-tile-date.is-selected{box-shadow:0 2px 0 var(--cal-blue)}.cal-tile-count{white-space:nowrap;font-size:12px}
.cal-tile-tasks{display:grid;gap:8px;align-content:start;flex:1}.cal-tile-tasks .cal-empty{padding:20px 0}
.cal-tile-event{grid-template-columns:44px minmax(0,1fr);padding:5px 8px 5px 0;border:0;border-radius:12px;background:#fff;gap:0}
html[data-theme="dark"] .cal-tile-event{background:#1e293b}
.cal-tile-event .cal-event-open{padding:7px 0;min-height:44px;gap:3px}.cal-tile-event .cal-event-open strong{font-size:15px;font-weight:500}.cal-tile-event .cal-event-type{font-size:12px}.cal-tile-event .cal-comment{margin:4px 0 0}
.cal-tile-task-actions{display:flex;flex-wrap:wrap;gap:6px}.cal-tile-task-actions:empty{display:none}
.cal-tile-link,.cal-tile-add{min-height:44px;border:0;background:transparent;color:var(--cal-blue);font:inherit;font-size:13px;border-radius:8px;padding:8px 6px;cursor:pointer}
.cal-tile-link:first-child{padding-left:0}.cal-tile-add{align-self:flex-start;padding-left:0;margin-top:8px;font-size:15px}
@container(max-width:580px){.cal-week-tiles{grid-template-columns:minmax(0,1fr);gap:12px}.cal-week-tile{min-height:180px}}
@media(max-width:760px){.cal-week-tiles{grid-template-columns:minmax(0,1fr)}.cal-week-tile{min-height:180px}}

/* calendar-quick-delete-20261004: one quiet, accessible trash action. */
.cal-quick-remove{display:inline-grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:9px;background:transparent;color:inherit;font:inherit;font-size:19px;cursor:pointer;flex:none}
.cal-quick-remove:disabled{opacity:.5;cursor:wait}.cal-tile-task-actions .cal-quick-remove{margin-left:auto}
.cal-quick-error p{margin:6px 0;overflow-wrap:anywhere}.cal-quick-error .btn{min-height:44px;margin:4px 0;font-size:13px}
.cal-event-actions{align-items:center}

/* calendar-address-picker-20261004: address rows wrap on small screens. */
.cal-client-address{white-space:normal;overflow-wrap:anywhere;line-height:1.5}
.cal-selected-info{flex:1;min-width:0;display:grid;gap:4px}
.cal-form-contact{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cal-form-contact input[readonly]{opacity:.8}
.cal-task-contact{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:4px 0}
.cal-contact-name{flex-basis:100%;overflow-wrap:anywhere}
.cal-contact-phone{overflow-wrap:anywhere}
.cal-call{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:6px 10px;border-radius:12px;background:var(--cal-soft,#f2f5f9);color:var(--cal-blue,#245993);text-decoration:none;font-size:13px}
.cal-call:focus-visible{outline:2px solid currentColor;outline-offset:2px}
@media(max-width:440px){.cal-form-contact{grid-template-columns:1fr;gap:6px}}

/* calendar-colors-20261007: approved category colors; navigation stays blue. */
#mdCalendar{--cal-red:#d92333;--cal-purple:#7c3aed;--cal-orange:#c45100;--cal-orange-counter:#b94c00;--cal-green:#15803d}
html[data-theme="dark"] #mdCalendar{--cal-red:#ff7c82;--cal-purple:#c29bff;--cal-orange:#ffae66;--cal-orange-counter:#ffae66;--cal-green:#66d5a3}
#mdCalendar .cal-measure{color:var(--cal-red)}
#mdCalendar .cal-install{color:var(--cal-purple)}
#mdCalendar .cal-delivery{color:var(--cal-orange)}
#mdCalendar .cal-other{color:var(--cal-green)}
#mdCalendar .cal-dots .cal-delivery{color:var(--cal-orange-counter)}
#mdCalendar .cal-event-type{font-size:14px;font-weight:500;line-height:1.45;overflow-wrap:anywhere}
#mdCalendar .cal-legend{flex-wrap:wrap;gap:6px 12px;font-size:14px;font-weight:500;line-height:1.45}
/* measurements-search-20261008: four existing calendar actions, one mobile row. */
@media(max-width:760px){#mdCalendar .cal-views{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}#mdCalendar .cal-views .btn{min-width:0;min-height:44px;padding:10px 4px!important;font-size:13px;white-space:nowrap;line-height:1.2}}
@media(max-width:360px){#mdCalendar .cal-views .btn{font-size:12px}}

/* calendar-day-popup-20261016: the existing history stack owns Back and focus. */
#mdCalendarDayModal{--cal-line:#dce3eb;--cal-soft:#f2f5f9;--cal-blue:#245993;--cal-red:#d92333;--cal-purple:#7c3aed;--cal-orange:#c45100;--cal-green:#15803d}
html[data-theme="dark"] #mdCalendarDayModal{--cal-line:#374151;--cal-soft:#222e3f;--cal-blue:#a9c8ff;--cal-red:#ff7c82;--cal-purple:#c29bff;--cal-orange:#ffae66;--cal-green:#66d5a3}
#mdCalendarDayModal .cal-day-box{position:relative;display:flex;flex-direction:column;width:min(560px,100%);max-width:560px;max-height:calc(100dvh - 32px);padding:0;border-radius:24px;overflow:hidden}
#mdCalendarDayModal .md-layer-close{position:absolute;top:18px;right:18px;float:none;margin:0;z-index:2}
.cal-day-head{position:static;z-index:auto;display:block;flex:none;margin:0;padding:24px 78px 18px 22px;border-bottom:1px solid var(--cal-line);box-shadow:none;background:transparent}
.cal-day-head h2{margin:0 0 5px;font-size:24px;line-height:1.25}
.cal-day-head p{margin:0;text-transform:capitalize;line-height:1.5}
.cal-day-body{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:16px 18px 0}
.cal-day-count{margin:0 0 12px;line-height:1.5}
.cal-day-events{display:grid;gap:10px}
#mdCalendarDayModal .cal-tile-event{background:var(--cal-soft);padding:10px 12px 10px 0;border-radius:16px;min-width:0}
#mdCalendarDayModal .cal-tile-event .cal-event-open strong{font-size:16px;font-weight:600;line-height:1.4}
#mdCalendarDayModal .cal-event-type{font-size:16px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}
#mdCalendarDayModal .cal-measure{color:var(--cal-red)}
#mdCalendarDayModal .cal-install{color:var(--cal-purple)}
#mdCalendarDayModal .cal-delivery{color:var(--cal-orange)}
#mdCalendarDayModal .cal-other{color:var(--cal-green)}
#mdCalendarDayModal .cal-task-contact{gap:2px 10px;margin:5px 0}
#mdCalendarDayModal .cal-client-address{display:block;line-height:1.45}
#mdCalendarDayModal .cal-comment{margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere}
#mdCalendarDayModal .cal-tile-task-actions{gap:0 10px}
#mdCalendarDayModal .cal-tile-link{min-height:44px;padding:8px 0}
#mdCalendarDayModal .cal-call{background:var(--card,#fff);min-height:44px}
#mdCalendarDayModal .cal-empty{text-align:center;padding:32px 10px;line-height:1.5}
.cal-day-footer{flex:none;padding:16px 18px 18px;border-top:1px solid var(--cal-line);margin-top:14px}
.cal-day-footer>.btn{width:100%;min-height:46px}
.cal-day-footer>p{margin:0;text-align:center}
#mdCalendarDayModal button:focus-visible,#mdCalendarDayModal a:focus-visible{outline:3px solid #4b88cf;outline-offset:2px}

/* calendar-apple-20261020-v1: behavior is shared, the optional skin is scoped. */
#mdCalendar .cal-views{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
#mdCalendar .cal-date.cal-nonworking .cal-date-number,#mdCalendar .cal-mini .cal-nonworking,#mdCalendar .cal-weekend-label{color:var(--cal-red)!important}
#mdCalendar .cal-weekdays>span:nth-last-child(-n+2){color:var(--cal-red)}
.cal-icon{width:18px;height:18px;flex:none;vertical-align:middle}
.cal-task-menu{position:relative;flex:none;align-self:start}
.cal-task-menu>summary{display:grid;place-items:center;list-style:none;width:44px;min-height:44px;border-radius:11px;cursor:pointer;color:var(--muted,#6b7280)}
.cal-task-menu>summary::-webkit-details-marker{display:none}
.cal-task-menu>summary:focus-visible{outline:3px solid var(--cal-blue,#245993);outline-offset:2px}
.cal-task-popup{position:fixed;left:var(--cal-menu-left,12px);top:var(--cal-menu-top,12px);width:var(--cal-menu-width,240px);padding:6px;background:var(--card,#fff);color:var(--text,#20252b);border:1px solid var(--line,#dfe4ec);border-radius:15px;box-shadow:0 10px 30px #0002;z-index:1}
.cal-task-popup>button{display:flex;align-items:center;gap:9px;text-align:left;width:100%;min-height:44px;font-size:14px;padding:10px 12px!important;border:0;border-radius:10px}
.cal-task-popup>.cal-quick-remove{height:auto;color:var(--cal-red,#c23843)}
.cal-holidays-note{line-height:1.5;margin-top:14px}

@media screen{
 html[data-interface-style="apple"] #mdCalendar{background:transparent!important;padding:0!important;border:0!important;box-shadow:none;margin:0 0 26px;border-radius:0;container-type:normal}
 html[data-interface-style="apple"] #todayDashboard .today-head{margin-bottom:22px;align-items:center}
 html[data-interface-style="apple"] #todayDashboard .today-head>div{display:block!important;width:auto}
 html[data-interface-style="apple"] #todayDashboard .today-date{margin:6px 0 0;font-size:14px}
 html[data-interface-style="apple"] #todayRefresh{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:grid;place-items:center;border:1px solid var(--ap-line);background:var(--ap-surface)!important;color:var(--ap-muted)!important}
 html[data-interface-style="apple"] #todayRefresh.is-refreshing .cal-icon{animation:cal-refresh-spin .85s linear infinite;transform-origin:center}
 html[data-interface-style="apple"] #mdCalendar .cal-heading h2{font-size:20px;letter-spacing:-.4px}
 html[data-interface-style="apple"] #mdCalendar .cal-views{width:370px;max-width:100%;padding:4px;gap:3px;margin:12px 0 16px auto;background:var(--ap-well);border-radius:14px}
 html[data-interface-style="apple"] #mdCalendar .cal-views .btn{background:transparent!important;color:var(--ap-ink)!important;font-size:14px;padding:9px 5px!important;min-width:0;white-space:nowrap;border:0;border-radius:11px;box-shadow:none;min-height:44px}
 html[data-interface-style="apple"] #mdCalendar .cal-views .btn.primary{background:var(--ap-surface)!important;color:var(--ap-blue)!important;box-shadow:0 2px 6px #00000009}
 html[data-interface-style="apple"] #mdCalendar .cal-period strong{font-size:16px;text-transform:none}
 html[data-interface-style="apple"] #mdCalendar .cal-period .btn{background:transparent!important;color:var(--ap-blue)!important;border:0}
 html[data-interface-style="apple"] #mdCalendar .cal-filter{justify-content:space-between;margin-bottom:16px}
 html[data-interface-style="apple"] #mdCalendar .cal-filter>label,html[data-interface-style="apple"] #mdCalendar .cal-legend{display:none}
 html[data-interface-style="apple"] #mdCalendar .cal-filter select{font-size:13px;border-radius:12px;min-height:44px}
 html[data-interface-style="apple"] #mdCalendar .cal-week-tiles{gap:14px;align-items:start}
 html[data-interface-style="apple"] #mdCalendar .cal-week-tile{min-height:0;padding:0;background:var(--ap-surface)!important;border:1px solid var(--ap-line);border-radius:20px;box-shadow:0 2px 12px #20243a06}
 html[data-interface-style="apple"] #mdCalendar .cal-week-tile.is-today{border-color:color-mix(in srgb,var(--ap-blue) 35%,var(--ap-line))}
 html[data-interface-style="apple"] #mdCalendar .cal-tile-heading{margin:0;padding:12px 13px 9px;gap:8px}
 html[data-interface-style="apple"] #mdCalendar .cal-tile-date{gap:11px;box-shadow:none}
 html[data-interface-style="apple"] #mdCalendar .cal-tile-number{display:grid;place-items:center;min-width:40px;height:42px;border-radius:12px;font-size:26px;font-weight:650;text-decoration:none;letter-spacing:-1px}
 html[data-interface-style="apple"] #mdCalendar .is-today .cal-tile-number{background:color-mix(in srgb,var(--ap-blue) 10%,var(--ap-surface));color:var(--ap-blue)}
 html[data-interface-style="apple"] #mdCalendar .cal-tile-date strong{font-size:15px;font-weight:650}
 html[data-interface-style="apple"] #mdCalendar .cal-tile-date .small{font-size:12px}
 html[data-interface-style="apple"] .cal-tile-plus{display:grid;place-items:center;min-width:44px;width:44px;height:44px;min-height:44px;flex:none;padding:0;background:color-mix(in srgb,var(--ap-blue) 10%,var(--ap-surface));color:var(--ap-blue);border:0;border-radius:12px;cursor:pointer}
 html[data-interface-style="apple"] #mdCalendar .cal-tile-tasks{display:grid;gap:10px;padding:0 10px 10px}
 html[data-interface-style="apple"] .cal-apple-task{display:grid;grid-template-columns:36px minmax(0,1fr) 44px;gap:2px;align-items:start;padding:12px 10px 12px 7px!important;border:1px solid var(--ap-line)!important;border-radius:16px!important;background:var(--ap-surface)!important;box-shadow:none}
 html[data-interface-style="apple"] .cal-apple-task .cal-check{width:36px;margin:0;min-height:44px}
 html[data-interface-style="apple"] .cal-apple-task .cal-done{appearance:none;width:21px;height:21px;min-height:21px;border:1.5px solid var(--ap-line);border-radius:50%;background:var(--ap-surface);margin:0}
 html[data-interface-style="apple"] .cal-apple-task .cal-done:checked{background:var(--ap-green);border-color:var(--ap-green);box-shadow:inset 0 0 0 4px var(--ap-surface)}
 html[data-interface-style="apple"] .cal-apple-task .cal-event-open{padding:0;gap:3px;min-height:44px}
 html[data-interface-style="apple"] .cal-apple-task .cal-event-open:disabled{color:inherit;opacity:1;cursor:default}
 html[data-interface-style="apple"] .cal-apple-task .cal-event-open strong{font-size:15px;font-weight:650;line-height:1.45}
 html[data-interface-style="apple"] .cal-apple-task .cal-event-type{font-size:14px;font-weight:600;line-height:1.4;width:fit-content;padding:3px 7px;border-radius:6px;background:color-mix(in srgb,currentColor 8%,var(--ap-surface))}
 html[data-interface-style="apple"] .cal-apple-task .cal-client-address{display:block;font-size:13px;line-height:1.5;margin-top:4px}
 html[data-interface-style="apple"] .cal-apple-task .cal-comment{font-size:13px;color:var(--ap-ink)!important;margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
 html[data-interface-style="apple"] .cal-apple-task .cal-task-contact{display:flex;grid-area:auto;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:4px 8px;margin:5px 0 0;padding:0;border:0;font-size:12px}
 html[data-interface-style="apple"] .cal-apple-task .cal-contact-name{flex-basis:100%}
 html[data-interface-style="apple"] #mdCalendar .cal-apple-task .cal-event-open:hover{background:transparent}
 html[data-interface-style="apple"] .cal-apple-task .cal-call{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border-radius:12px;background:color-mix(in srgb,var(--ap-blue) 10%,var(--ap-surface));color:var(--ap-blue)}
 html[data-interface-style="apple"] .cal-apple-task .cal-contact-phone{font-size:12px}
 html[data-interface-style="apple"] .cal-task-popup{background:var(--ap-surface);color:var(--ap-ink);border-color:var(--ap-line)}
 html[data-interface-style="apple"] .cal-task-popup>button{color:var(--ap-ink);background:transparent!important}
 html[data-interface-style="apple"] .cal-task-popup>button:hover{background:var(--ap-well)!important}
 html[data-interface-style="apple"] .cal-task-popup>.cal-quick-remove{color:var(--cal-red)}
 html[data-interface-style="apple"] #mdCalendar .cal-empty{padding:0 14px 14px 64px;margin:0;font-size:13px}
 html[data-interface-style="apple"] #mdCalendar .cal-date{border-radius:12px;box-shadow:none}
 html[data-interface-style="apple"] #mdCalendar .cal-date.is-selected{background:color-mix(in srgb,var(--ap-blue) 10%,var(--ap-surface))!important;border-color:var(--ap-blue)!important}
 html[data-interface-style="apple"] #mdCalendar .cal-footnote{font-size:12px;color:var(--ap-muted);margin-top:16px}
 html[data-interface-style="apple"] #todayDashboard .today-summary{display:none}
 html[data-interface-style="apple"] .cal-summary-title{font-size:20px;margin:0 0 12px;letter-spacing:-.4px}
 html[data-interface-style="apple"] #todayDashboard .today-groups{background:var(--ap-surface);border:1px solid var(--ap-line);border-radius:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:clip;align-items:start}
 html[data-interface-style="apple"] #todayDashboard .today-group{border:0;border-radius:0;box-shadow:none;margin:0!important;padding:0;background:var(--ap-surface)!important;min-width:0;border-bottom:1px solid var(--ap-line)}
 html[data-interface-style="apple"] #todayDashboard .today-group summary{padding:15px 14px;min-height:56px;font-size:14px;font-weight:400;gap:8px}
 html[data-interface-style="apple"] #todayDashboard .today-count{margin-left:auto;background:var(--ap-well);color:var(--ap-muted);border-radius:8px;font-size:12px;padding:3px 8px}
 html[data-interface-style="apple"] #todayDashboard .today-group-body{padding:0 14px 14px}
 html[data-interface-style="apple"] #todayDashboard .today-row{background:var(--ap-surface);color:var(--ap-ink);border-color:var(--ap-line)}
 html[data-interface-style="apple"] #todayDashboard .cal-home-note{margin:12px 0 0;font-size:12px;color:var(--ap-muted)}
 @media(max-width:760px){html[data-interface-style="apple"] #mdCalendar .cal-views{width:100%;margin-left:0}html[data-interface-style="apple"] #todayDashboard .today-groups{grid-template-columns:minmax(0,1fr)}html[data-interface-style="apple"] #mdCalendar .cal-week-tiles{grid-template-columns:minmax(0,1fr)}html[data-interface-style="apple"] #mdCalendar .cal-views .btn{font-size:14px!important}}
}
@keyframes cal-refresh-spin{to{transform:rotate(1turn)}}
@media(prefers-reduced-motion:reduce){#todayRefresh .cal-icon{animation:none!important}}
/* Stretch the existing native opener, not a second click/history handler.
   Sibling controls retain their own hit targets; touch scrolling stays native. */
:is(#mdCalendar,#mdCalendarDayModal) .cal-event{position:relative}
:is(#mdCalendar,#mdCalendarDayModal) .cal-event-open:not(:disabled)::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:1;cursor:pointer}
:is(#mdCalendar,#mdCalendarDayModal) .cal-event>.cal-check,
:is(#mdCalendar,#mdCalendarDayModal) .cal-event>.cal-event-actions,
:is(#mdCalendar,#mdCalendarDayModal) .cal-event>.cal-task-menu,
:is(#mdCalendar,#mdCalendarDayModal) .cal-event-content :is(a,button:not(.cal-event-open),input,select,textarea,label){position:relative;z-index:2}
#mdCalendar .cal-day>.cal-event{margin-top:10px;padding:12px 8px 12px 0;border:1px solid var(--cal-line);border-radius:16px}
.client-phone-value{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;overflow-wrap:anywhere}
.client-phone-value .client-card-call{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:12px;text-decoration:none}
@media(max-width:760px){
 #mdCalendarDayModal.open{align-items:flex-end;padding:8px 8px max(8px,env(safe-area-inset-bottom))}
 #mdCalendarDayModal .cal-day-box{max-height:calc(100dvh - 24px - env(safe-area-inset-bottom));border-radius:24px}
 .cal-day-head{padding:22px 74px 16px 18px}
 .cal-day-body{padding:14px 12px 0}
 .cal-day-footer{padding:14px 12px 16px}
 #mdCalendarDayModal .md-layer-close{top:17px;right:16px}
}
