/* Mobile screens M04/M11/M14–M41 additions. Tokens only. Desktop layout is unchanged:
   these layers are opened from mobile flows; settings blocks are hidden from 1025px. */

.tdm-layer {
  position: fixed; inset: 0; z-index: 3600;
  display: flex; flex-direction: column; justify-content: flex-end;
  background: rgba(31, 38, 51, .45);
  font-family: var(--td-font-sans); color: var(--td-color-text-primary);
}
.tdm-layer.is-page { justify-content: stretch; background: var(--td-color-bg-workspace); z-index: 3700; height: 100dvh; max-height: 100dvh; overflow: hidden; }
.tdm-layer.is-page > .tdm-page.is-pin { flex: 1 1 0; min-height: 0; height: 100%; max-height: 100%; overflow: hidden; }
.tdm-sheet, .tdm-page {
  background: var(--td-color-bg-workspace); color: var(--td-color-text-primary);
  max-height: 100%; overflow: auto; -webkit-overflow-scrolling: touch;
}
.tdm-sheet {
  border-radius: var(--td-corner-sheet); background: var(--td-color-bg-surface);
  box-shadow: var(--td-shadow-sheet); padding: 8px 16px calc(16px + env(safe-area-inset-bottom, 0px));
  max-height: min(100%, 100dvh);
}
.tdm-sheet .tdm-acts { position: sticky; bottom: 0; background: var(--td-color-bg-surface); padding: 8px 0 4px; }
.tdm-page { flex: 1; padding: calc(12px + env(safe-area-inset-top, 0px)) 16px calc(24px + env(safe-area-inset-bottom, 0px)); }
.tdm-grab { width: 36px; height: 4px; border-radius: var(--td-radius-pill); background: var(--td-color-border-default); margin: 4px auto 12px; }
.tdm-head { display: flex; align-items: center; gap: 8px; min-height: 44px; }
.tdm-head h1, .tdm-h { margin: 0; font: var(--td-fw-bold) var(--td-fs-title)/30px var(--td-font-sans); color: var(--td-color-text-heading); flex: 1; }
.tdm-head h2 { margin: 0; flex: 1; text-align: center; font: var(--td-fw-semibold) 17px/22px var(--td-font-sans); }
.tdm-x, .tdm-back {
  width: 44px; height: 44px; border: 0; background: transparent; color: var(--td-color-text-primary);
  display: grid; place-items: center; cursor: pointer; border-radius: var(--td-radius-tile);
}
.tdm-sub { margin: 4px 0 12px; color: var(--td-color-text-secondary); font: var(--td-fw-regular) 14px/20px var(--td-font-sans); }
.tdm-kicker { margin: 0 0 6px; font: var(--td-fw-semibold) 12px/16px var(--td-font-sans); letter-spacing: .04em; text-transform: uppercase; color: var(--td-color-text-secondary); }
.tdm-card {
  background: var(--td-color-bg-surface); border-radius: var(--td-corner-card-main-left);
  padding: 14px 16px; margin: 0 0 12px;
}
.tdm-card.is-side { border-radius: var(--td-corner-card-side-right); }
.tdm-card.is-accent { border-radius: var(--td-corner-nav-selected); background: var(--td-color-accent); color: var(--td-color-text-on-accent); }
.tdm-card.is-soft { background: var(--td-color-accent-subtle); color: var(--td-color-text-primary); border-radius: var(--td-corner-tile-diag); }
.tdm-card.is-daily { background: var(--td-color-daily-subtle); border-radius: var(--td-corner-tile-diag); }
.tdm-card.is-ok { background: var(--td-color-success-subtle); }
.tdm-field { display: block; margin: 0 0 12px; }
.tdm-field span, .tdm-label { display: block; margin: 0 0 6px; font: var(--td-fw-medium) 13px/18px var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-field input, .tdm-field textarea, .tdm-input {
  width: 100%; box-sizing: border-box; border: 0; background: var(--td-color-bg-subtle);
  border-radius: var(--td-corner-tile-diag); color: var(--td-color-text-primary);
  font: var(--td-fw-regular) 16px/22px var(--td-font-sans); padding: 12px 14px; min-height: 48px;
}
.tdm-field textarea { min-height: 96px; resize: vertical; }
.tdm-row {
  display: flex; align-items: center; gap: 12px; min-height: 56px; width: 100%;
  border: 0; background: transparent; text-align: left; color: inherit; cursor: pointer;
  font: var(--td-fw-semibold) 15px/20px var(--td-font-sans); padding: 8px 0;
}
.tdm-row small { display: block; font: var(--td-fw-regular) 13px/18px var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-row .tdm-grow { flex: 1; min-width: 0; }
.tdm-ico { width: 24px; height: 24px; color: var(--td-color-text-primary); flex: none; }
.tdm-seg { display: inline-flex; gap: 4px; background: var(--td-color-bg-subtle); border-radius: var(--td-radius-pill); padding: 3px; }
.tdm-seg button {
  border: 0; background: transparent; min-height: 32px; padding: 0 12px; border-radius: var(--td-radius-pill);
  font: var(--td-fw-semibold) 13px/18px var(--td-font-sans); color: var(--td-color-text-secondary); cursor: pointer;
}
.tdm-seg button.is-on { background: var(--td-color-bg-surface); color: var(--td-color-text-primary); box-shadow: 0 1px 2px rgba(31,38,51,.08); }
.tdm-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.tdm-chip {
  border: 0; background: var(--td-color-bg-subtle); color: var(--td-color-text-secondary);
  border-radius: var(--td-corner-chip-diag); min-height: 28px; padding: 0 10px;
  font: var(--td-fw-semibold) 13px/18px var(--td-font-sans); cursor: pointer;
}
.tdm-chip.is-on { background: var(--td-color-accent-subtle); color: var(--td-color-accent); }
.tdm-acts { display: flex; flex-direction: column; gap: 8px; margin-top: 12px; }
.tdm-acts.is-row { flex-direction: row; }
.tdm-acts .td-btn { min-height: 48px; font-size: 15px; }
.tdm-note { display: flex; gap: 8px; align-items: flex-start; color: var(--td-color-daily); font: var(--td-fw-regular) 13px/18px var(--td-font-sans); margin: 8px 0; }
.tdm-note .td-icon { color: var(--td-color-daily); flex: none; }
.tdm-days { display: flex; gap: 8px; overflow: auto; padding-bottom: 4px; }
.tdm-day {
  flex: 0 0 52px; height: 64px; border: 0; border-radius: var(--td-corner-tile-diag);
  background: var(--td-color-bg-subtle); color: var(--td-color-text-primary); cursor: pointer;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px;
  font: var(--td-fw-semibold) 16px/20px var(--td-font-sans);
}
.tdm-day small { font: var(--td-fw-semibold) 11px/14px var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-day.is-on { background: var(--td-color-accent); color: var(--td-color-text-on-accent); }
.tdm-day.is-on small { color: var(--td-color-text-on-accent); }
.tdm-slot {
  width: 100%; text-align: left; border: 0; background: var(--td-color-bg-subtle);
  border-radius: var(--td-corner-tile-diag); padding: 12px 14px; margin: 0 0 8px; cursor: pointer;
  display: flex; align-items: center; gap: 10px; color: var(--td-color-text-primary);
}
.tdm-slot.is-on { background: var(--td-color-accent-subtle); }
.tdm-slot b { display: block; font: var(--td-fw-semibold) 15px/20px var(--td-font-sans); }
.tdm-slot span { display: block; font: var(--td-fw-regular) 13px/18px var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-slot i { margin-left: auto; width: 22px; height: 22px; border-radius: 6px; border: 1.5px solid var(--td-color-border-default); display: grid; place-items: center; color: transparent; }
.tdm-slot.is-on i { background: var(--td-color-accent); border-color: var(--td-color-accent); color: #fff; }
.tdm-code, #authVerifyForm .tdm-code { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; gap: 8px; justify-content: space-between; margin: 16px 0; }
.tdm-code input, #authVerifyForm .tdm-code input {
  width: 44px !important; min-width: 0 !important; flex: 1 1 0 !important; height: 56px !important; margin: 0 !important;
  text-align: center !important; font: var(--td-fw-bold) 22px/28px var(--td-font-sans) !important;
  border: 0; border-radius: var(--td-corner-tile-diag); background: var(--td-color-bg-surface); color: var(--td-color-text-primary);
}
.tdm-code input:focus { outline: 2px solid var(--td-color-accent); }
.tdm-switch { position: relative; width: 44px; height: 26px; flex: none; }
.tdm-switch input { opacity: 0; width: 0; height: 0; }
.tdm-switch i {
  position: absolute; inset: 0; background: var(--td-color-border-toggle-off); border-radius: var(--td-radius-pill); transition: .15s;
}
.tdm-switch i::after {
  content: ""; position: absolute; width: 22px; height: 22px; left: 2px; top: 2px; border-radius: 50%;
  background: var(--td-color-bg-surface); transition: .15s;
}
.tdm-switch input:checked + i { background: var(--td-color-accent); }
.tdm-switch input:checked + i::after { transform: translateX(18px); }
.tdm-steps { display: flex; flex-direction: column; gap: 8px; }
.tdm-step { display: flex; align-items: center; gap: 8px; min-height: 44px; }
.tdm-step .tdm-drag { cursor: grab; color: var(--td-color-text-secondary); background: none; border: 0; width: 28px; height: 44px; }
.tdm-step input[type="text"] { flex: 1; border: 0; background: transparent; font: var(--td-fw-regular) 15px/20px var(--td-font-sans); color: var(--td-color-text-primary); min-width: 0; }
.tdm-wave { display: flex; gap: 5px; align-items: center; justify-content: center; width: 200px; height: 64px; margin: 8px auto; }
.tdm-wave b { width: 4px; height: 18px; border-radius: 2px; background: var(--td-color-daily); animation: tdmWave 1s ease-in-out infinite; transform-origin: center; }
.tdm-wave b:nth-child(odd) { height: 36px; }
.tdm-wave b:nth-child(3n) { height: 58px; animation-delay: .12s; }
.tdm-wave b:nth-child(4n) { height: 26px; animation-delay: .24s; }
.tdm-wave b:nth-child(5n) { height: 48px; animation-delay: .36s; }
@keyframes tdmWave { 50% { transform: scaleY(.45); } }
.tdm-search-btn { display: none; }
.tdm-search-pop { display: none; }

@media (max-width: 1024px) {
  body[data-desktop-nav="tasks"] .tdm-search-btn { display: grid; }
  html body[data-desktop-nav="tasks"] #colOther .td-others-search { display: none !important; }
  html body[data-desktop-nav="tasks"] .td-sp-hub-item[data-on-click="setDesktopNav('journal')"] { display: none !important; }
  .td-sp-hub-item[data-on-click="setDesktopNav('journal')"] { display: none !important; }
  body.is-task-search .td-mobile-heading__date,
  body.is-task-search .td-mobile-heading__title,
  body.is-task-search .td-mobile-daily-action,
  body.is-task-search .td-mobile-notif-action,
  body.is-task-search .mobile-profile-action { display: none !important; }
  body.is-task-search .tdm-search-pop {
    display: flex; align-items: center; gap: 8px; position: absolute; left: 12px; right: 12px; top: 8px; bottom: 8px; z-index: 5;
  }
  body.is-task-search .tdm-search-pop input {
    flex: 1; height: 44px; border: 0; border-radius: var(--td-corner-tile-diag);
    background: var(--td-color-bg-surface); padding: 0 12px; font: var(--td-fw-regular) 16px/22px var(--td-font-sans); color: var(--td-color-text-primary);
  }
  html body[data-desktop-nav="tasks"] #colOther .td-others-search { display: none !important; }
  body.is-task-search[data-desktop-nav="tasks"] #colOther .td-others-toolbar { display: none !important; }
  .tdj-rail { display: none !important; }
  .tdj-stats { display: none; }
  .tdm-jhero { display: block; }
  .td-sp-panel.is-mfig > :not(.tdm-mobile-block):not(.tdm-keep) { display: none !important; }
  #tdmOff:not([hidden]) { display: flex; }
  #syncBadge.is-offline { display: none !important; }
}
@media (min-width: 1025px) {
  .tdm-mobile-block, .tdm-jhero, .tdm-search-btn, #tdmOff, #tdmOffNote { display: none !important; }
}
.tdm-jhero { display: none; margin: 0 0 16px; }
#tdmOff {
  display: none; align-items: center; gap: 10px; margin: 0 0 8px; padding: 10px 12px;
  background: var(--td-color-warning-subtle); color: var(--td-color-warning); border-radius: var(--td-corner-tile-diag);
}
#tdmOff strong { display: block; font: var(--td-fw-semibold) 14px/18px var(--td-font-sans); color: var(--td-color-warning); }
#tdmOff span { display: block; font: var(--td-fw-regular) 12px/16px var(--td-font-sans); color: var(--td-color-text-secondary); }
#tdmOff button { margin-left: auto; width: 44px; height: 44px; border: 0; background: transparent; color: var(--td-color-accent); cursor: pointer; }
.tdm-sync { display: inline-flex; align-items: center; min-height: 22px; padding: 0 8px; border-radius: var(--td-corner-chip-diag); font: var(--td-fw-semibold) 11px/16px var(--td-font-sans); }
.tdm-sync.is-wait { background: var(--td-color-warning-subtle); color: var(--td-color-warning); }
.tdm-sync.is-ok { color: var(--td-color-success); background: transparent; padding: 0; }
.tdm-auth-code { margin-top: 8px; }
#authOverlay .auth-secondary.tdm-code-btn { width: 100%; margin-top: 8px; }
html[data-theme="dark"] .tdm-layer:not(.is-page) { background: rgba(0,0,0,.55); }
html[data-theme="dark"] .tdm-layer.is-page { background: var(--td-color-bg-workspace); }
@media (prefers-reduced-motion: reduce) { .tdm-wave b { animation: none; } }

/* Sheets (M13, M25) sit above the full-page task. Closing the sheet leaves the task open. */
body.tdm-open .dictation-status { display: none !important; }
body.tdm-open #toastBox {
  top: calc(56px + env(safe-area-inset-top, 0px)) !important;
  bottom: auto !important;
  z-index: 3800 !important;
  left: 16px !important; right: 16px !important; transform: none !important;
}

.tdm-nav, .tdm-voice-head { display: flex; align-items: center; min-height: 44px; margin: 0 -12px 8px; }
.tdm-nav h2 { flex: 1; margin: 0; text-align: center; font: var(--td-fw-bold) 16px/1.35 var(--td-font-sans); color: var(--td-color-text-heading); }
.tdm-nav-sp { width: 44px; flex: none; }
.tdm-voice-head { margin-right: -12px; }
.tdm-voice-head span { flex: 1; font: var(--td-fw-bold) 12px/1.35 var(--td-font-sans); letter-spacing: .6px; text-transform: uppercase; color: var(--td-color-text-secondary); }
.tdm-join { display: inline-flex; align-items: stretch; margin: 0 0 12px; }
.tdm-join button {
  border: 0; background: var(--td-color-bg-subtle); color: var(--td-color-text-secondary);
  padding: 8px 14px; min-height: 36px; cursor: pointer;
  font: var(--td-fw-medium) 13px/normal var(--td-font-sans);
}
.tdm-join button.is-on {
  background: var(--td-color-bg-surface); color: var(--td-color-text-primary);
  border: 1px solid var(--td-color-border-default);
  font-weight: var(--td-fw-semibold);
}
.tdm-join .is-first { border-radius: 18px 0 0 18px; }
.tdm-join .is-last { border-radius: 0 18px 18px 0; }
.tdm-xl { margin: 8px 0 0; font: var(--td-fw-extrabold) 28px/1.35 var(--td-font-sans); color: var(--td-color-text-heading); }
.tdm-lead { margin: 8px 0 12px; font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-rec {
  width: 100%; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; gap: 10px;
  padding: 20px 16px; margin: 0 0 12px; background: var(--td-color-daily-subtle); border-radius: 20px 0 20px 0;
}
.tdm-rec-status { display: flex; align-items: center; gap: 8px; color: var(--td-color-daily); font: var(--td-fw-bold) 13px/1.35 var(--td-font-sans); }
.tdm-rec-status .td-icon { width: 20px; height: 20px; color: var(--td-color-daily); }
.tdm-rec.is-idle .tdm-rec-status, .tdm-rec.is-idle .tdm-rec-clock { color: var(--td-color-text-secondary); }
.tdm-rec.is-idle .tdm-rec-status .td-icon { color: var(--td-color-text-secondary); }
.tdm-rec-clock { font: var(--td-fw-extrabold) 48px/1 var(--td-font-sans); color: var(--td-color-daily); font-variant-numeric: tabular-nums; }
.tdm-wave.is-still b { animation: none; opacity: .35; }
.tdm-page.is-pin {
  display: flex; flex-direction: column; box-sizing: border-box;
  height: 100dvh; max-height: 100dvh; min-height: 0; padding-bottom: 0; overflow: hidden;
}
.tdm-pin-body { flex: 1 1 0; min-height: 0; overflow: auto; }
.tdm-pin-foot {
  flex: 0 0 auto; display: flex; flex-direction: column; gap: 8px; align-items: stretch;
  margin: auto -16px 0; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  background: var(--td-color-bg-workspace);
}
.tdm-pin-foot .tdm-foot { margin: 0; }
.tdm-field.is-result textarea { height: 72px; min-height: 72px; max-height: 72px; resize: none; overflow: auto; padding: 14px; }
.tdm-transcript p { margin: 0; font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-foot { margin: 8px 0 0; text-align: center; font: var(--td-fw-medium) 12px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-start { min-height: 56px !important; font-size: 16px !important; }
.tdm-split { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 12px; }
.tdm-split > span { font: var(--td-fw-semibold) 13px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-split .tdm-join { margin: 0; }
.tdm-field.is-line span { font: var(--td-fw-semibold) 13px/1.35 var(--td-font-sans); }
.tdm-field.is-line input, .tdm-field.is-line textarea {
  background: var(--td-color-bg-surface); border: 1px solid var(--td-color-border-default);
  border-radius: 12px 0 12px 0; font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans); padding: 12px 12px 12px 16px;
}
.tdm-field.is-line input { min-height: 48px; }
.tdm-field.is-line textarea { min-height: 88px; }
.tdm-field.is-line.is-result textarea { height: 72px; min-height: 72px; max-height: 72px; resize: none; overflow: auto; padding: 14px; }
.tdm-save-err { flex: 1; min-height: 280px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 8px; padding: 24px 16px; }
.tdm-save-ico { width: 56px; height: 56px; margin-bottom: 8px; display: grid; place-items: center; border: 1.5px solid var(--td-color-text-primary); border-radius: 16px 0 16px 0; color: var(--td-color-danger); font: var(--td-fw-bold) 22px/1 var(--td-font-sans); }
.tdm-save-err h1 { margin: 8px 0 0; font: var(--td-fw-extrabold) 22px/1.3 var(--td-font-sans); color: var(--td-color-text-heading); }
.tdm-save-err p { margin: 0; max-width: 280px; font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-save-code { margin-top: 8px; padding: 4px 10px; border-radius: 8px 0 8px 0; background: var(--td-color-danger-subtle); color: var(--td-color-danger); font: var(--td-fw-semibold) 12px/16px var(--td-font-sans); }
@media (max-width: 1024px) {
  #authOverlay .auth-mnav { display: none; }
  #authOverlay[data-auth-tab="verify"] .auth-top { display: none !important; }
  #authOverlay[data-auth-tab="verify"] .auth-mnav { display: flex; align-items: center; min-height: 44px; margin: 0 -4px 4px; }
  #authOverlay[data-auth-tab="verify"] .auth-mnav h2 { flex: 1; margin: 0; text-align: center; font: 700 16px/22px var(--td-font-sans); color: var(--td-color-text-heading); }
  #authOverlay[data-auth-tab="verify"] .auth-mnav__back { width: 44px; height: 44px; border: 0; background: transparent; color: var(--td-color-accent); display: grid; place-items: center; cursor: pointer; }
  #authOverlay[data-auth-tab="verify"] .auth-mnav__sp { width: 44px; }
  #authOverlay[data-auth-tab="verify"] .auth-shell { padding: calc(8px + env(safe-area-inset-top, 0px)) 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important; }
  #authOverlay[data-auth-tab="verify"] .auth-headline { font: var(--td-fw-extrabold) 26px/35px var(--td-font-sans) !important; margin: 16px 0 8px !important; }
  #authOverlay[data-auth-tab="verify"] .auth-lead { display: none !important; }
  #authOverlay[data-auth-tab="verify"] .auth-copy { margin-bottom: 4px !important; }
  #authOverlay[data-auth-tab="verify"] #verifyLead,
  #authOverlay[data-auth-tab="verify"] #verifyResend { padding: 0 !important; background: transparent !important; color: var(--td-color-text-secondary) !important; font: var(--td-fw-medium) 15px/20px var(--td-font-sans) !important; }
  #authOverlay[data-auth-tab="verify"] #authVerifyForm .auth-back { display: none !important; }
  #authOverlay[data-auth-tab="verify"] .auth-footnote { display: block !important; margin: 8px 0 0 !important; text-align: center; font: 500 12px/16px var(--td-font-sans) !important; color: var(--td-color-text-secondary) !important; }
  #authOverlay[data-auth-tab="verify"] .auth-install-hint { display: none !important; }
}
.tdm-slots { background: var(--td-color-bg-surface); border-radius: 0 16px 16px 0; padding: 4px 16px; margin: 0 0 12px; }
.tdm-slots .tdm-slot { background: transparent; border-radius: 0; margin: 0; min-height: 56px; padding: 8px 0; }
.tdm-slots .tdm-slot .td-icon { width: 24px; height: 24px; }
.tdm-done-badge { width: 64px; height: 64px; border-radius: 32px; display: grid; place-items: center; background: var(--td-color-success-subtle); color: var(--td-color-success); }
.tdm-done-badge .td-icon { width: 32px; height: 32px; color: var(--td-color-success); }
.tdm-done-title { margin: 12px 0 0; font: var(--td-fw-extrabold) 26px/1.35 var(--td-font-sans); color: var(--td-color-text-heading); }
.tdm-done-row { display: flex; align-items: center; gap: 8px; margin: 8px 0 12px; }
.tdm-done-row b { flex: 1; min-width: 0; font: var(--td-fw-semibold) 15px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-chip.is-ok { background: var(--td-color-success-subtle); color: var(--td-color-success); }
.tdm-time-row { display: flex; align-items: center; gap: 12px; margin: 0 0 10px; }
.tdm-time-row small { display: block; font: var(--td-fw-medium) 13px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
.tdm-mins { display: block; width: 100%; border: 0; background: transparent; padding: 0; margin: 0; color: var(--td-color-text-heading); font: var(--td-fw-extrabold) 20px/1.35 var(--td-font-sans); }
.tdm-mins-unit { font: var(--td-fw-extrabold) 20px/1.35 var(--td-font-sans); color: var(--td-color-text-heading); }
.tdm-time-row .tdm-grow { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
.tdm-time-row .tdm-grow small { flex: 1 0 100%; }
.tdm-mins { width: auto; min-width: 2ch; field-sizing: content; }
.tdm-prog b { font: var(--td-fw-bold) 15px/1.35 var(--td-font-sans); color: var(--td-color-text-heading); }
.tdm-bars { display: flex; gap: 6px; margin-top: 8px; }
.tdm-bars i { flex: 1; height: 6px; border-radius: 3px; background: var(--td-color-border-default); }
.tdm-bars i.is-on { background: var(--td-color-accent); }
.tdm-card.is-soft { border-radius: 20px 0 20px 0; }

@media (max-width: 1024px) {
  /* Task details are a full page (M08/M12), not a sheet over the list. */
  html body #taskSheetOverlay.task-sheet-overlay.active {
    align-items: stretch !important; justify-content: stretch !important;
    padding: 0 !important; background: var(--td-color-bg-workspace) !important;
    z-index: 2800 !important;
  }
  html body #taskSheetOverlay .task-sheet#taskSheetPanel {
    height: 100% !important; max-height: none !important; width: 100% !important; margin: 0 !important;
    border-radius: 0 !important; box-shadow: none !important;
    background: var(--td-color-bg-workspace) !important;
  }
  html body #taskSheetOverlay #taskSheetPanel .task-sheet-grab { display: none !important; }
  html body .tdc-task-ov { align-items: stretch !important; background: var(--td-color-bg-workspace) !important; z-index: 2800; }
  html body .tdc-task { height: 100%; }

  /* M06 composer: field and send are siblings. Chips stay on the workspace, not in a white dock. */
  html body.td-daily-page-open .tdd2 { --tdd2-composer-bottom: calc(var(--td-tabbar-h, 64px) + env(safe-area-inset-bottom, 0px)); }
  html body.td-daily-page-open .tdd2 .td-dp-dock {
    display: contents !important; position: static !important; background: transparent !important;
    box-shadow: none !important; border: 0 !important; padding: 0 !important; border-radius: 0 !important;
  }
  html body.td-daily-page-open .tdd2 .td-dp-quick {
    position: fixed !important; left: 16px !important; right: 16px !important;
    bottom: calc(var(--tdd2-composer-bottom) + 64px) !important; z-index: 30;
    padding: 0 !important; background: transparent !important; pointer-events: none;
  }
  html body.td-daily-page-open .tdd2 .td-dp-chips { justify-content: flex-end !important; }
  html body.td-daily-page-open .tdd2 .td-dp-chip {
    pointer-events: auto; height: auto !important; min-height: 0 !important;
    padding: 4px 10px !important; background: var(--td-color-bg-subtle) !important;
    color: var(--td-color-text-secondary) !important; border: 0 !important;
    border-radius: 8px 0 8px 0 !important; font: var(--td-fw-semibold) 11px/normal var(--td-font-sans) !important;
  }
  html body.td-daily-page-open .tdd2 .td-dp-bubble {
    max-width: 300px !important; padding: 10px 14px !important;
    font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans) !important;
  }
  html body.td-daily-page-open .tdd2 .td-dp-bubble.user {
    background: var(--td-color-accent) !important; color: var(--td-color-text-on-accent, #fff) !important;
    border-radius: 16px 0 16px 16px !important;
  }
  html body.td-daily-page-open .tdd2 .td-dp-bubble.bot,
  html body.td-daily-page-open .tdd2 .td-dp-greet {
    background: var(--td-color-bg-surface) !important; color: var(--td-color-text-primary) !important;
    border-radius: 0 16px 16px 16px !important; padding: 10px 14px !important;
    font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans) !important;
  }
  html body.td-daily-page-open .tdd2 .td-dp-greet strong,
  html body.td-daily-page-open .tdd2 .td-dp-greet p {
    font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans) !important; color: var(--td-color-text-primary) !important;
  }
  html body #taskSheetOverlay .tds-stepcard,
  html body .tdc-task .tds-stepcard { padding: 16px; gap: 0; border-radius: 20px 0 0 20px; }
  html body #taskSheetOverlay .tds-steps-head,
  html body .tdc-task .tds-steps-head { min-height: 20px; margin: 0 0 4px; letter-spacing: .6px; font: 700 12px/1.35 var(--td-font-sans); }
  html body #taskSheetOverlay .tds-bar,
  html body .tdc-task .tds-bar { margin: 0 0 4px; }
  html body #taskSheetOverlay .tds-addlink,
  html body .tdc-task .tds-addlink {
    display: flex; align-items: center; gap: 12px; width: 100%; min-height: 44px;
    padding: 0; border: 0; background: transparent; cursor: pointer; text-align: left;
    color: var(--td-color-accent); font: 600 15px/20px var(--td-font-sans);
  }
  html body #taskSheetOverlay .tds-addlink .td-icon,
  html body .tdc-task .tds-addlink .td-icon { width: 24px; height: 24px; color: var(--td-color-accent); }
  html body #taskSheetOverlay .tds-add__input,
  html body .tdc-task .tds-add__input {
    flex: 1; min-width: 0; min-height: 44px; border: 0 !important; border-radius: 0 !important;
    background: transparent !important; box-shadow: none !important;
    font: 500 15px/20px var(--td-font-sans); color: var(--td-color-text-primary);
  }
  html body.td-daily-page-open .tdd2 .td-dp-compose-row {
    position: fixed; left: 0; right: 0; bottom: var(--tdd2-composer-bottom); z-index: 31;
    display: flex; align-items: center; gap: 8px; height: auto; min-height: 0;
    padding: 8px 16px !important; background: transparent !important; border-radius: 0;
  }
  html body.td-daily-page-open .tdd2 .td-dp-compose-row > .td-dp-composer {
    flex: 1; min-width: 0; height: 48px; min-height: 48px; display: flex; align-items: center; gap: 12px;
    padding: 0 4px 0 16px !important; margin: 0 !important;
    background: var(--td-color-bg-surface) !important;
    border: 1px solid var(--td-color-border-default) !important;
    border-radius: 12px 0 12px 0 !important; box-shadow: none !important;
  }
  html body.td-daily-page-open .tdd2 .td-dp-compose-row > .td-dp-composer::before { content: none !important; display: none !important; }
  html body.td-daily-page-open .tdd2 .td-dp-composer textarea {
    flex: 1; height: 48px !important; min-height: 48px !important; max-height: 48px !important;
    padding: 0 !important; margin: 0; border: 0 !important; background: transparent !important;
    font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans) !important; color: var(--td-color-text-primary);
  }
  html body.td-daily-page-open .tdd2 .td-dp-composer textarea::placeholder { color: var(--td-color-text-secondary); font-weight: var(--td-fw-medium); }
  html body.td-daily-page-open .tdd2 .tdd2-mic {
    width: 44px !important; height: 44px !important; margin: 0 !important; border-radius: 0 !important; background: transparent !important; color: var(--td-color-text-secondary) !important;
  }
  html body.td-daily-page-open .tdd2 .tdd2-mic svg { width: 24px; height: 24px; }
  html body.td-daily-page-open .tdd2 .td-dp-send {
    width: 48px !important; height: 48px !important; margin: 0 !important; flex: none;
    border-radius: 12px 0 12px 0 !important; background: var(--td-color-accent) !important; color: #fff !important;
  }
  html body.td-daily-page-open .tdd2 .td-dp-send .td-icon { width: 20px; height: 20px; }
  html body #tdfRoot .tdf-empty { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 36px 12px 20px; }
  html body #tdfRoot .tdf-empty-ico { width: 72px; height: 72px; display: grid; place-items: center; border-radius: 20px 0 20px 0; background: var(--td-color-accent-subtle); color: var(--td-color-accent); }
  html body #tdfRoot .tdf-empty-ico .td-icon { width: 32px; height: 32px; color: var(--td-color-accent); }
  html body #tdfRoot .tdf-empty h2 { margin: 8px 0 0 !important; font: var(--td-fw-extrabold) 22px/1.3 var(--td-font-sans) !important; color: var(--td-color-text-heading); }
  html body #tdfRoot .tdf-empty p { display: block !important; margin: 0 0 8px; max-width: 280px; font: var(--td-fw-medium) 15px/1.35 var(--td-font-sans); color: var(--td-color-text-secondary); }
  html body #tdfRoot .tdf-empty .tdf-btn { min-width: 220px; height: 48px; margin-top: 8px; font-size: 15px; }
}
@media (min-width: 1025px) {
  .tdd2 .td-dp-compose-row { background: var(--td-color-bg-workspace); }
}
