/* QT-Supplement daily engagement UI. All selectors are scoped to avoid page CSS collisions. */
.qt-engagement[hidden]{display:none!important}
.qt-engagement{
  --qt-engagement-accent:var(--accent,#1a7a4f);
  --qt-engagement-accent-d:var(--accent-d,#14603e);
  --qt-engagement-soft:var(--accent-soft,#e7f1e8);
  --qt-engagement-card:var(--card,#fffaf0);
  --qt-engagement-line:var(--line,#e6d3b3);
  --qt-engagement-text:var(--text,#2b241c);
  --qt-engagement-muted:var(--text2,#5a5148);
  color:var(--qt-engagement-text);
  margin-bottom:14px;
}
.qt-engagement__card{
  position:relative;
  overflow:hidden;
  padding:20px;
  background:var(--qt-engagement-card);
  border:1px solid var(--qt-engagement-line);
  border-radius:var(--radius,20px);
  box-shadow:var(--shadow,0 12px 32px rgba(74,56,32,.13));
}
.qt-engagement__card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,var(--qt-engagement-accent),#8ab58d);
}
.qt-engagement__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.qt-engagement__eyebrow{display:block;color:var(--qt-engagement-accent-d);font-size:12px;font-weight:900;letter-spacing:.08em}
.qt-engagement .qt-engagement__title{
  margin:5px 0 0;
  color:var(--qt-engagement-text);
  font-size:20px;
  font-weight:900;
  line-height:1.35;
  letter-spacing:-.35px;
  text-transform:none;
}
.qt-engagement__progress{flex:0 0 auto;color:var(--qt-engagement-muted);font-size:12px;font-weight:800;white-space:nowrap}
.qt-engagement__bar{height:5px;margin:15px 0 18px;overflow:hidden;background:var(--qt-engagement-soft);border-radius:999px}
.qt-engagement__bar>span{display:block;height:100%;background:var(--qt-engagement-accent);border-radius:inherit;transition:width .22s ease}
.qt-engagement__bubble{position:relative;margin:0 0 14px;padding:15px 16px;background:var(--qt-engagement-soft);border-radius:4px 16px 16px 16px;font-size:16px;font-weight:700;line-height:1.55}
.qt-engagement__answers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.qt-engagement__answer,.qt-engagement__button,.qt-engagement__link-button{
  min-height:44px;
  border-radius:12px;
  border:1px solid var(--qt-engagement-line);
  font:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.qt-engagement__answer{padding:10px 8px;background:#fff;color:var(--qt-engagement-text)}
.qt-engagement__answer:hover,.qt-engagement__answer:focus-visible{border-color:var(--qt-engagement-accent);outline:3px solid color-mix(in srgb,var(--qt-engagement-accent) 20%,transparent)}
.qt-engagement__answer[aria-pressed="true"]{color:#fff;background:var(--qt-engagement-accent);border-color:var(--qt-engagement-accent)}
.qt-engagement__answer:disabled,.qt-engagement__button:disabled{cursor:wait;opacity:.55}
.qt-engagement__message{min-height:20px;margin-top:10px;color:var(--qt-engagement-muted);font-size:12.5px;line-height:1.55}
.qt-engagement__message[data-tone="error"]{color:var(--bad,#cf524b)}
.qt-engagement__done{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin-top:16px}
.qt-engagement__check{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:#fff;background:var(--qt-engagement-accent);font-size:22px;font-weight:900}
.qt-engagement__done strong{display:block;font-size:16px}.qt-engagement__done p{margin:2px 0 0;color:var(--qt-engagement-muted);font-size:13px}
.qt-engagement__week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--qt-engagement-line)}
.qt-engagement__day{text-align:center;color:var(--qt-engagement-muted);font-size:11px;font-weight:700}
.qt-engagement__dot{display:block;width:12px;height:12px;margin:0 auto 5px;border:2px solid var(--qt-engagement-line);border-radius:50%;background:transparent}
.qt-engagement__day.is-done .qt-engagement__dot{background:var(--qt-engagement-accent);border-color:var(--qt-engagement-accent)}
.qt-engagement__day.is-today{color:var(--qt-engagement-accent-d)}
.qt-engagement__actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px}
.qt-engagement__button{padding:10px 16px;color:#fff;background:var(--qt-engagement-accent);border-color:var(--qt-engagement-accent)}
.qt-engagement__button--secondary{color:var(--qt-engagement-accent-d);background:transparent;border-color:var(--qt-engagement-line)}
.qt-engagement__link-button{padding:8px 3px;color:var(--qt-engagement-accent-d);background:transparent;border-color:transparent;text-decoration:underline;text-underline-offset:3px}
.qt-engagement__push{margin-top:16px;padding:14px;border:1px solid var(--qt-engagement-line);border-radius:14px;background:color-mix(in srgb,var(--qt-engagement-soft) 55%,transparent)}
.qt-engagement__push-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.qt-engagement__push-copy{min-width:0}.qt-engagement__push-copy strong{display:block;font-size:14px}.qt-engagement__push-copy span{display:block;margin-top:2px;color:var(--qt-engagement-muted);font-size:12px;line-height:1.45}
.qt-engagement__install{margin-top:10px;padding:12px 13px;border-radius:12px;background:#fff7ec;color:#725224;font-size:12.5px;line-height:1.6}
.qt-engagement__install b{color:#523913}
.qt-engagement__loading{padding:24px 8px;text-align:center;color:var(--qt-engagement-muted);font-size:14px}
.qt-engagement__spinner{display:inline-block;width:17px;height:17px;margin-right:7px;vertical-align:-3px;border:2px solid var(--qt-engagement-line);border-top-color:var(--qt-engagement-accent);border-radius:50%;animation:qt-engagement-spin .75s linear infinite}
@keyframes qt-engagement-spin{to{transform:rotate(360deg)}}
@media(max-width:480px){
  .qt-engagement__card{padding:18px 15px}
  .qt-engagement__answers{grid-template-columns:1fr}
  .qt-engagement__answer{min-height:48px;text-align:left;padding:11px 14px}
  .qt-engagement__push-row{align-items:flex-start;flex-direction:column}
  .qt-engagement__push-row .qt-engagement__button{width:100%}
}
@media(prefers-reduced-motion:reduce){.qt-engagement__bar>span{transition:none}.qt-engagement__spinner{animation:none}}
