/* T-014 the right start per role: decision-first header, Settings > Start screen, Show me around. */

/* Decision-first header: one sentence, one button, "Why?". Sits above the screen, before any toolbar or chart. */
.dh {
  flex: none;
  display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px;
  margin: 0 0 var(--gap);
  padding: 12px 16px;
  border-radius: var(--r-md);
  background: var(--surface);
  border: 1px solid var(--line);
  border-left: 3px solid var(--violet);
  min-width: 0;
}
.dh.calm { border-left-color: var(--line-2); }
.dh.unchecked { border-left-color: var(--warn); }
.dh-text { margin: 0; flex: 1 1 320px; min-width: 0; font-size: var(--t-md); font-weight: 500; color: var(--ink); line-height: 1.4; text-wrap: pretty; }
.dh.calm .dh-text { color: var(--ink-2); font-weight: 400; }
.dh-acts { display: flex; align-items: center; gap: 12px; flex: none; flex-wrap: wrap; }
.dh-acts .btn, .dh-acts .text-btn { min-height: 36px; }
.dh-why { display: inline-flex; align-items: center; gap: 4px; }
.dh-note { flex: 1 0 100%; margin: 0; display: flex; gap: 6px; align-items: center; font-size: var(--t-xs); color: var(--ink-2); }
.dh-note .ico { color: var(--warn); flex: none; }
@media (max-width: 767px) {
  .dh { padding: 12px 14px; }
  .dh-text { flex-basis: 100%; }
  .dh-acts .btn, .dh-acts .text-btn { min-height: 44px; }
}

/* "Why?" drawer */
.dh-drawer { display: flex; flex-direction: column; gap: 10px; }
.dh-d-lead { margin: 0 0 6px; font-size: var(--t-md); font-weight: 500; color: var(--ink); }
.dh-d-p { margin: 0; font-size: var(--t-sm); color: var(--ink-2); }
.dh-drawer .section-label { margin: 12px 0 0; }
.dh-rows .dh-row { width: 100%; text-align: left; align-items: center; gap: 12px; min-height: 44px; background: none; border: 0; border-bottom: 1px solid var(--line); color: inherit; font: inherit; padding: 8px 0; cursor: default; }
.dh-rows button.dh-row { cursor: pointer; }
.dh-rows .dh-row > span:first-child { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1; }
.dh-rows .dh-row b { font-weight: 500; color: var(--ink); }
.dh-rows .dh-row small { font-size: var(--t-xs); color: var(--ink-3); }
.dh-rows button.dh-row:hover b { text-decoration: underline; text-underline-offset: 3px; }
.src-row.dh-flash { animation: dhFlash 1.2s var(--ease-std, ease) 1; border-radius: 10px; }
@keyframes dhFlash { 0%, 40% { background: color-mix(in srgb, var(--violet) 14%, transparent); } 100% { background: transparent; } }

/* Settings > Start screen */
.st-card .card-title h3 { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.st-preview { font-size: 10px; }
.st-block { display: flex; flex-direction: column; gap: 8px; margin: 4px 0 14px; min-width: 0; }
.st-desc { margin: 0; font-size: var(--t-xs); color: var(--ink-3); }
.st-field { margin: 0 0 14px; }
.st-field.sm { margin: 0; min-width: 0; max-width: 60%; }
.st-defaults { margin: 0 0 14px; }
.st-defaults summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font-size: var(--t-sm); color: var(--ink-2); }
.st-def-row { align-items: center; gap: 10px; }
.st-people { flex-wrap: wrap; }
.st-foot { padding-top: 12px; }

/* Option C: one line under the Today hero */
.st-line { display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; font-size: var(--t-sm); font-weight: 500; color: var(--brand-ink, var(--ink)); text-decoration: none; min-height: 32px; position: relative; z-index: 2; }
.st-line:hover { text-decoration: underline; text-underline-offset: 3px; }

/* Show me around: small notes anchored to real elements. No dimmed overlay; the page stays usable. */
.sma-target { outline: 2px solid var(--violet); outline-offset: 3px; border-radius: 10px; position: relative; z-index: 1; }
.sma {
  position: fixed; z-index: 1200; width: min(300px, calc(100vw - 32px));
  display: flex; flex-direction: column; gap: 6px;
  padding: 14px 16px 12px;
  background: var(--surface); color: var(--ink);
  border: 1px solid var(--line); border-radius: 14px;
  box-shadow: var(--shadow-3);
  opacity: 0; transform: translate3d(0, 6px, 0);
}
.sma.in { opacity: 1; transform: none; transition: opacity var(--t-panel) var(--settle), transform var(--t-panel) var(--settle); }
.sma.out { opacity: 0; transform: translate3d(0, 6px, 0); transition: opacity var(--t-med) var(--ease-std), transform var(--t-med) var(--ease-std); }
.sma:focus-visible { outline: 2px solid var(--violet); outline-offset: 2px; }
.sma-step { color: var(--ink-3); }
.sma b { font-size: var(--t-sm); font-weight: 600; }
.sma p { margin: 0; font-size: var(--t-sm); color: var(--ink-2); }
.sma-acts { display: flex; justify-content: flex-end; align-items: center; gap: 12px; margin-top: 6px; }
.sma-acts .btn, .sma-acts .text-btn { min-height: 36px; }
/* Phone: the note docks above the floating tab bar */
.sma.docked { left: 16px; right: 16px; top: auto; width: auto; bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
.sma.docked .sma-acts .btn, .sma.docked .sma-acts .text-btn { min-height: 44px; }
@media (prefers-reduced-motion: reduce) {
  .sma, .sma.in, .sma.out { transition: none; transform: none; }
  .src-row.dh-flash { animation: none; background: color-mix(in srgb, var(--violet) 10%, transparent); }
}
.st-card .seg button:disabled:not([aria-pressed="true"]) { cursor: not-allowed; opacity: .55; }
