/* Bilan de la semaine — fenêtre large sur ordinateur, plein écran sur mobile. */
.wk-dialog, .wk-entry, .wk-history {
  --wk-page: #f4f9fd; --wk-ink: #07102a; --wk-muted: #4f5f7c; --wk-hair: #07102a0f; --wk-line: #07102a14; --wk-soft: #0866ff17; --wk-soft2: #0866ff2e;
  --wk-link: #0757de; --wk-blue: #0866ff; --wk-glass: #ffffffd9; --wk-edge: #ffffffb3; --wk-gold: #9a6d12; --wk-gold-bg: #c4932f24; --wk-violet: #6d4fd6; --wk-violet-bg: #8370c929; --wk-green: #13805b;
  --wk-ease: cubic-bezier(.22,1,.36,1);
}
html[data-today-theme="dark"] :is(.wk-dialog, .wk-entry, .wk-history) {
  --wk-page: #051b28; --wk-ink: #eef4ff; --wk-muted: #a9bdd8; --wk-hair: #ffffff0f; --wk-line: #ffffff17; --wk-soft: #3d8bff24; --wk-soft2: #3d8bff3d;
  --wk-link: #6aa6ff; --wk-blue: #3d8bff; --wk-glass: #16344cbf; --wk-edge: #ffffff17; --wk-gold: #e0b45a; --wk-gold-bg: #e0b45a24; --wk-violet: #b4a3f0; --wk-violet-bg: #b4a3f029; --wk-green: #5fd3a3;
}
.wk-dialog { width: min(1040px, calc(100vw - 48px)); max-width: none; height: min(980px, calc(100dvh - 48px)); max-height: none; margin: auto; padding: 0; overflow: hidden; border: 1px solid var(--wk-edge); border-radius: 34px; background: var(--wk-page); color: var(--wk-ink); box-shadow: 0 60px 140px -40px #04101e99; }
.wk-dialog::backdrop { background: #04101e6b; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.wk-dialog p { margin: 0; }
.wk-dialog .wellness-icon, .wk-entry .wellness-icon, .wk-history .wellness-icon { width: 20px; height: 20px; }
.wk-shell { display: flex; flex-direction: column; height: 100%; }
.wk-body { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 4px 34px 34px; scroll-behavior: smooth; }
.wk-content { display: flex; flex-direction: column; gap: 26px; }
.wk-top { width: 100%; max-width: none; margin: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px 34px 14px; }
.wk-tag { display: inline-flex; align-items: center; gap: 8px; width: max-content; padding: 6px 12px; border-radius: 999px; background: var(--wk-hair); color: var(--wk-muted); font-size: 11.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.wk-tag .wellness-icon { width: 15px; height: 15px; color: var(--wk-link); }
.wk-tag.is-plain { padding: 5px 11px; font-size: 11px; }
.wk-week { display: flex; align-items: center; gap: 6px; padding: 5px; border-radius: 999px; background: var(--wk-hair); }
.wk-week b { min-width: 9ch; padding: 0 8px; font-size: 13.5px; font-weight: 750; text-align: center; white-space: nowrap; }
.wk-round { display: grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 50%; background: var(--wk-glass); box-shadow: 0 1px 0 var(--wk-edge); color: var(--wk-ink); cursor: pointer; }
.wk-week .wk-round { width: 36px; height: 36px; }
.wk-week .wk-round::before { content: ''; position: absolute; width: 44px; height: 44px; }
.wk-round:hover { background: var(--wk-soft); color: var(--wk-ink); }
.wk-round:disabled { opacity: .35; cursor: default; background: var(--wk-glass); }
.wk-round .wellness-icon { width: 18px; height: 18px; }
.wk-close { background: var(--wk-hair); box-shadow: none; }

/* Ouverture */
.wk-hero { position: relative; display: grid; grid-template-columns: 150px 1fr; gap: 22px; align-items: center; padding: 24px 26px; border-radius: 30px; background: linear-gradient(135deg, #0866ff 0%, #4f95ff 55%, #8fc1ff 100%); color: #fff; overflow: hidden; }
.wk-hero::after { content: ''; position: absolute; right: -60px; top: -80px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle, #ffffff59, transparent 70%); pointer-events: none; }
.wk-hero img { width: 150px; height: 150px; object-fit: contain; filter: drop-shadow(0 18px 24px #001e5a59); }
.wk-hero-copy { position: relative; z-index: 1; }
.wk-k { font-size: 11.5px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; opacity: .82; }
.wk-hero h2 { margin: 8px 0 0; font-size: 30px; font-weight: 300; line-height: 1.15; letter-spacing: -1px; text-wrap: balance; }
.wk-hero h2 strong { font-weight: 800; }
.wk-bubble { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; padding: 8px 14px; border-radius: 999px; background: #ffffff2e; font-size: 13px; font-weight: 650; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.wk-bubble .wellness-icon { width: 16px; height: 16px; }
.wk-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 12px; }
.wk-kpi { padding: 16px 18px; border: 1px solid var(--wk-edge); border-radius: 22px; background: var(--wk-glass); box-shadow: 0 14px 34px -26px #14386e99; }
.wk-kpi-label { display: block; color: var(--wk-muted); font-size: 12.5px; font-weight: 700; }
.wk-kpi b { display: flex; align-items: baseline; gap: 4px; margin-top: 4px; font-size: 34px; font-weight: 800; letter-spacing: -1.2px; font-variant-numeric: tabular-nums; }
.wk-kpi b small { color: var(--wk-muted); font-size: 15px; font-weight: 650; letter-spacing: 0; }
.wk-kpi i { display: block; margin-top: 2px; color: var(--wk-muted); font-size: 12.5px; font-style: normal; }

/* Sections */
.wk-sec { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.wk-sh { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.wk-sh h3 { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 20px; font-weight: 800; letter-spacing: -.4px; }
.wk-sh h3 .wellness-icon { color: var(--wk-link); }
.wk-sh.is-small b { font-size: 13px; font-weight: 750; }
.wk-link { min-height: 44px; margin: -12px 0; padding: 0 2px; border: 0; background: none; box-shadow: none; color: var(--wk-link); font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.wk-link:hover { background: none; color: var(--wk-link); text-decoration: underline; }
.wk-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
.wk-cols.is-wide { gap: 22px; align-items: start; }
.wk-card { position: relative; display: flex; flex-direction: column; gap: 12px; min-width: 0; padding: 18px 20px; border: 1px solid var(--wk-edge); border-radius: 26px; background: var(--wk-glass); box-shadow: 0 18px 40px -30px #14386e8c; }
.wk-card.is-tight { gap: 8px; }
.wk-line { font-size: 14.5px; line-height: 1.5; }
.wk-line b { font-weight: 800; }
.wk-note { color: var(--wk-muted); font-size: 12.5px; line-height: 1.5; }
.wk-sep { height: 1px; background: var(--wk-line); }
.wk-btn { display: inline-flex; align-items: center; justify-content: center; width: max-content; min-height: 44px; margin: 0; padding: 0 18px; border: 0; border-radius: 999px; background: var(--wk-blue); box-shadow: none; color: #fff; font: inherit; font-size: 14px; font-weight: 750; cursor: pointer; }
.wk-btn:hover { background: var(--wk-blue); filter: brightness(1.06); }
.wk-btn.is-soft { background: var(--wk-soft); color: var(--wk-link); }
.wk-btn.is-soft:hover { background: var(--wk-soft2); filter: none; }

/* Régularité */
.wk-days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; }
.wk-day { display: flex; flex-direction: column; align-items: center; gap: 7px; color: var(--wk-muted); font-size: 11.5px; font-weight: 700; }
.wk-day i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--wk-hair); color: #fff; }
.wk-day i .wellness-icon { width: 18px; height: 18px; }
.wk-day.is-done i { background: var(--wk-blue); box-shadow: 0 8px 18px -8px #0866ffcc; }
.wk-day.is-planned i { background: transparent; box-shadow: inset 0 0 0 2px var(--wk-line); }
.wk-day.is-missed i { background: transparent; box-shadow: inset 0 0 0 2px #c4932f8c; }
.wk-streak { display: flex; align-items: flex-end; gap: 6px; height: 70px; }
.wk-streak span { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; height: 100%; color: var(--wk-muted); font-size: 10.5px; font-weight: 700; }
.wk-streak span i { display: block; width: 100%; border-radius: 8px 8px 4px 4px; background: var(--wk-soft2); transform-origin: bottom; }
.wk-streak span.is-now i { background: var(--wk-blue); }

/* Performances */
.wk-perfs { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 14px; }
.wk-perf { gap: 10px; }
.wk-badge { display: inline-flex; align-items: center; gap: 6px; width: max-content; max-width: 100%; padding: 5px 10px; border-radius: 999px; font-size: 11.5px; font-weight: 800; }
.wk-badge .wellness-icon { width: 14px; height: 14px; }
.wk-badge.is-rec { background: var(--wk-gold-bg); color: var(--wk-gold); }
.wk-badge.is-up { background: var(--wk-soft); color: var(--wk-link); }
.wk-badge.is-reg { background: var(--wk-violet-bg); color: var(--wk-violet); }
.wk-perf h4 { margin: 0; font-size: 16px; font-weight: 800; letter-spacing: -.2px; }
.wk-var { margin-top: -6px !important; color: var(--wk-muted); font-size: 12px; }
.wk-ba { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px; padding: 12px; border-radius: 18px; background: var(--wk-hair); }
.wk-ba div span { display: block; color: var(--wk-muted); font-size: 11px; font-weight: 700; }
.wk-ba div b { font-size: 17px; font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; }
.wk-ba div:last-child { text-align: right; }
.wk-ba div:last-child b { color: var(--wk-link); }
.wk-ba > .wellness-icon { width: 18px; height: 18px; color: var(--wk-muted); }
.wk-spark { width: 100%; height: 56px; }
.wk-spark path { fill: none; stroke: var(--wk-blue); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.wk-spark circle { fill: var(--wk-page); stroke: var(--wk-blue); stroke-width: 2.5; }
.wk-cells { display: flex; gap: 4px; }
.wk-cells i { flex: 1; height: 26px; border-radius: 7px; background: var(--wk-violet-bg); }
.wk-cells i.is-on { background: #8370c9; }
.wk-open { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin: auto 0 -8px; color: var(--wk-link); font-size: 13px; font-weight: 700; text-decoration: none; }
.wk-open .wellness-icon { width: 15px; height: 15px; }
.wk-dots { display: none; }

/* Poids */
.wk-big { display: flex; align-items: baseline; gap: 6px; font-size: 40px; font-weight: 800; letter-spacing: -1.6px; font-variant-numeric: tabular-nums; }
.wk-big small { color: var(--wk-muted); font-size: 15px; font-weight: 650; letter-spacing: 0; }
.wk-delta { display: inline-flex; align-items: center; gap: 6px; width: max-content; max-width: 100%; padding: 5px 11px; border-radius: 999px; background: var(--wk-soft); color: var(--wk-link); font-size: 12.5px; font-weight: 750; }
.wk-delta.is-neutral { background: var(--wk-hair); color: var(--wk-muted); }
.wk-delta .wellness-icon { width: 15px; height: 15px; }
.wk-delta.is-down .wellness-icon { transform: scaleY(-1); }
.wk-chart { width: 100%; height: 150px; }
.wk-chart .grid line { stroke: var(--wk-line); stroke-width: 1; }
.wk-chart .dots circle { fill: var(--wk-muted); opacity: .4; }
.wk-chart .trend { fill: none; stroke: var(--wk-blue); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.wk-chart .avg rect { fill: var(--wk-soft2); }
.wk-chart text { fill: var(--wk-muted); font: 700 10.5px 'Plus Jakarta Sans', sans-serif; }
.wk-legend { display: flex; flex-wrap: wrap; gap: 14px; color: var(--wk-muted); font-size: 12px; }
.wk-legend span { display: inline-flex; align-items: center; gap: 6px; }
.wk-legend i { width: 14px; height: 3px; border-radius: 2px; background: var(--wk-blue); }
.wk-legend i.is-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--wk-muted); opacity: .5; }

/* Listes */
.wk-list { display: flex; flex-direction: column; overflow: hidden; border-radius: 20px; background: var(--wk-hair); }
.wk-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; align-items: center; width: 100%; min-height: 60px; margin: 0; padding: 10px 14px; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--wk-ink); font: inherit; text-align: left; text-decoration: none; }
.wk-row + .wk-row { border-top: 1px solid var(--wk-line); }
.wk-row span strong { display: block; font-size: 14.5px; font-weight: 750; }
.wk-row span small { display: block; color: var(--wk-muted); font-size: 12px; }
.wk-row > b { font-size: 17px; font-weight: 800; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.wk-row > b em { display: block; max-width: 190px; margin-left: auto; color: var(--wk-muted); font-size: 12px; font-style: normal; font-weight: 650; white-space: normal; }
.wk-row > b em.is-good { color: var(--wk-link); font-weight: 750; }
.wk-row.is-link { grid-template-columns: minmax(0, 1fr) auto auto; cursor: pointer; }
.wk-row.is-link:hover { background: var(--wk-hair); color: var(--wk-ink); }
.wk-row.is-link > .wellness-icon { width: 16px; height: 16px; color: var(--wk-muted); }
.wk-chip { display: inline-flex; align-items: center; min-height: 26px; padding: 0 10px; border-radius: 999px; background: var(--wk-glass); color: var(--wk-muted); font-size: 11.5px; font-weight: 700; white-space: nowrap; }

/* Ressenti, alimentation */
.wk-mini { display: grid; grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); gap: 8px; }
.wk-mini div { padding: 10px 12px; border-radius: 16px; background: var(--wk-hair); }
.wk-mini span { display: block; color: var(--wk-muted); font-size: 11px; font-weight: 700; }
.wk-mini b { font-size: 17px; font-weight: 800; font-variant-numeric: tabular-nums; }
.wk-feel { display: flex; flex-wrap: wrap; gap: 8px; }
.wk-feel button { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin: 0; padding: 0 16px; border: 0; border-radius: 999px; background: var(--wk-hair); box-shadow: none; color: var(--wk-ink); font: inherit; font-size: 13.5px; font-weight: 700; cursor: pointer; transition: background .3s, color .3s, transform .3s var(--wk-ease); }
.wk-feel button:hover { background: var(--wk-line); color: var(--wk-ink); }
.wk-feel button .wellness-icon { width: 17px; height: 17px; color: var(--wk-link); }
.wk-feel button.is-on, .wk-feel button.is-on:hover { background: var(--wk-ink); color: var(--wk-page); }
.wk-feel button.is-on .wellness-icon { color: inherit; }
.wk-feel button:active { transform: scale(.96); }

/* La suite */
.wk-next { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 22px 24px; border-radius: 30px; background: #07102a; color: #f4f9fd; overflow: hidden; }
html[data-today-theme="dark"] .wk-next { background: #0d2c44; }
.wk-next::before { content: ''; position: absolute; right: -40px; bottom: -90px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, #4f95ff8c, transparent 70%); pointer-events: none; }
.wk-next-copy { position: relative; z-index: 1; }
.wk-next h3 { margin: 6px 0 0; font-size: 22px; font-weight: 800; letter-spacing: -.5px; line-height: 1.25; }
.wk-next p { margin-top: 6px !important; color: #f4f9fdc7; font-size: 13.5px; line-height: 1.5; }
.wk-next-acts { position: relative; display: flex; flex-direction: column; gap: 6px; }
.wk-go { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; margin: 0; padding: 0 22px; border: 0; border-radius: 999px; background: #0866ff; box-shadow: 0 14px 30px -12px #0866ffe6; color: #fff; font: inherit; font-size: 15px; font-weight: 750; cursor: pointer; transition: transform .3s var(--wk-ease), filter .3s; }
.wk-go:hover { background: #0866ff; filter: brightness(1.08); }
.wk-go:active { transform: scale(.97); }
.wk-go .wellness-icon { width: 16px; height: 16px; }
.wk-later { min-height: 44px; margin: 0; border: 0; background: none; box-shadow: none; color: inherit; font: inherit; font-size: 13.5px; font-weight: 650; opacity: .75; cursor: pointer; }
.wk-later:hover { background: none; color: inherit; opacity: 1; }
.wk-more { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 56px; margin: 0; padding: 0 20px; border: 0; border-radius: 20px; background: var(--wk-hair); box-shadow: none; color: var(--wk-ink); font: inherit; font-size: 14.5px; font-weight: 750; text-align: left; cursor: pointer; }
.wk-more:hover { background: var(--wk-line); color: var(--wk-ink); }
.wk-more .wellness-icon { width: 18px; height: 18px; color: var(--wk-muted); }

/* Détail */
.wk-back { display: inline-flex; align-items: center; gap: 8px; width: max-content; min-height: 44px; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; color: var(--wk-link); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
.wk-back:hover { background: none; color: var(--wk-link); }
.wk-bars { display: flex; flex-direction: column; gap: 12px; }
.wk-bar { display: grid; grid-template-columns: 120px minmax(0, 1fr) 82px; gap: 12px; align-items: center; font-size: 13.5px; font-weight: 700; }
.wk-track { position: relative; height: 12px; overflow: hidden; border-radius: 9px; background: var(--wk-hair); }
.wk-track i { position: absolute; inset: 0 auto 0 0; border-radius: 9px; background: var(--wk-blue); transform-origin: left; }
.wk-bar > span:last-child { color: var(--wk-muted); text-align: right; font-variant-numeric: tabular-nums; }
.wk-bar > span:last-child b { color: var(--wk-ink); }
.wk-switch-row { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 6px 14px; border-radius: 18px; background: var(--wk-hair); }
.wk-grow { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.wk-switch-row strong { font-size: 14px; font-weight: 700; }
.wk-switch-row small { color: var(--wk-muted); font-size: 12px; }
.wk-switch { position: relative; flex-shrink: 0; width: 52px; height: 32px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 999px; background: var(--wk-line); box-shadow: none; cursor: pointer; transition: background .3s; }
.wk-switch::after { content: ''; position: absolute; top: 3px; left: 3px; width: 26px; height: 26px; border-radius: 50%; background: #fff; box-shadow: 0 2px 6px #07102a40; transition: transform .35s var(--wk-ease); }
.wk-switch::before { content: ''; position: absolute; inset: -6px; }
.wk-switch.is-on, .wk-switch.is-on:hover { background: var(--wk-green); }
.wk-switch:hover { background: var(--wk-line); }
.wk-switch.is-on::after { transform: translateX(20px); }
.wk-error { align-items: flex-start; }

/* Chargement */
.wk-skeleton { display: flex; flex-direction: column; gap: 14px; }
.wk-ghost { height: 200px; border-radius: 26px; background: var(--wk-hair); }
.wk-ghost.is-hero { height: 190px; border-radius: 30px; background: linear-gradient(135deg, #0866ff33, #8fc1ff33); }
.wk-ghost-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.wk-ghost-row i { height: 110px; border-radius: 22px; background: var(--wk-hair); }
.wk-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* Points d'entrée */
.wk-entry-slot { margin: 0 0 18px; }
.wk-entry { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 14px; align-items: center; width: 100%; min-height: 0; margin: 0; padding: 12px 16px 12px 10px; border: 0; border-radius: 24px; background: linear-gradient(135deg, #0866ff, #4f95ff); box-shadow: 0 22px 40px -22px #0866ffe6; color: #fff; font: inherit; text-align: left; cursor: pointer; transition: transform .35s var(--wk-ease), filter .3s; }
.wk-entry:hover { background: linear-gradient(135deg, #0866ff, #4f95ff); filter: brightness(1.05); color: #fff; }
.wk-entry:active { transform: scale(.985); }
.wk-entry img { width: 64px; height: 64px; object-fit: contain; }
.wk-entry strong { display: block; font-size: 16px; font-weight: 800; }
.wk-entry .wk-grow > span { display: block; margin-top: 2px; font-size: 12.5px; opacity: .88; }
.wk-entry.is-new strong::after { content: ''; display: inline-block; width: 8px; height: 8px; margin-left: 8px; border-radius: 50%; background: #fff; vertical-align: middle; box-shadow: 0 0 0 4px #ffffff40; }
.wk-entry-go { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: #ffffff38; }
.wk-entry-go .wellness-icon { width: 18px; height: 18px; }
.wk-history { display: flex; flex-direction: column; gap: 14px; margin-top: 22px; padding: 20px 22px; border: 5px solid var(--nav-glass, #ffffff8c); border-radius: 26px; background: var(--nt-core, #ffffffa8) padding-box; box-shadow: 0 0 0 1px var(--nav-edge, #ffffffb3), var(--nav-shadow, none); color: var(--wk-ink); backdrop-filter: blur(26px) saturate(170%); -webkit-backdrop-filter: blur(26px) saturate(170%); }
.wk-history .wk-sh h3 { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 18px; font-weight: 750; }
.wk-history .wk-sh h3 .wellness-icon { color: var(--wk-link); }

/* Animations : chiffres qui comptent, courbes qui se tracent, barres qui poussent */
@media (prefers-reduced-motion: no-preference) {
  .wk-dialog.is-entering { animation: wk-pop .5s var(--wk-ease) both; }
  .wk-dialog.is-entering::backdrop { animation: wk-fade .35s ease both; }
  .wk-body.is-in .wk-rise { animation: wk-rise .7s var(--wk-ease) both; }
  .wk-body.is-in .wk-content > :nth-child(2) { animation-delay: .08s; }
  .wk-body.is-in .wk-content > :nth-child(3) { animation-delay: .16s; }
  .wk-body.is-in .wk-content > :nth-child(n+4) { animation-delay: .24s; }
  .wk-body.is-in .wk-hero img { animation: wk-float 4.5s 1s ease-in-out infinite, wk-rise .8s var(--wk-ease) both; }
  .wk-entry img { animation: wk-float 4.5s ease-in-out infinite; }
  .wk-body.is-in .wk-day.is-done i { animation: wk-pop-dot .55s calc(.3s + var(--i) * .08s) cubic-bezier(.34,1.56,.64,1) both; }
  .wk-body.is-in .wk-streak i { animation: wk-grow .9s calc(.25s + var(--i) * .06s) var(--wk-ease) both; }
  .wk-body.is-in .wk-cells i { animation: wk-fade .5s calc(.3s + var(--i) * .05s) both; }
  .wk-body.is-in .wk-spark path { stroke-dasharray: 400; animation: wk-draw 1.6s .4s var(--wk-ease) both; }
  .wk-body.is-in .wk-chart .trend { stroke-dasharray: 100; animation: wk-draw100 1.8s .5s var(--wk-ease) both; }
  .wk-body.is-in .wk-chart .dots circle { animation: wk-fade .6s .3s both; }
  .wk-track i { animation: wk-growx 1s calc(.15s + var(--i) * .06s) var(--wk-ease) both; }
}
@keyframes wk-pop { from { opacity: 0; transform: translateY(24px) scale(.98); } }
@keyframes wk-fade { from { opacity: 0; } }
@keyframes wk-rise { from { opacity: 0; transform: translateY(18px); } }
@keyframes wk-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@keyframes wk-pop-dot { from { opacity: 0; transform: scale(.3); } }
@keyframes wk-grow { from { transform: scaleY(0); } }
@keyframes wk-growx { from { transform: scaleX(0); } }
@keyframes wk-draw { from { stroke-dashoffset: 400; } }
@keyframes wk-draw100 { from { stroke-dashoffset: 100; } }
@keyframes wk-sheet-up { from { transform: translateY(100%); } }
body[data-today-motion="none"] :is(.wk-dialog, .wk-entry), body[data-today-motion="none"] :is(.wk-dialog, .wk-entry) * { animation: none !important; transition: none !important; }

@media (max-width: 760px) {
  .wk-dialog { width: 100vw; height: 100dvh; max-height: none; margin: 0; border: 0; border-radius: 0; }
  @media (prefers-reduced-motion: no-preference) { .wk-dialog.is-entering { animation: wk-sheet-up .45s var(--wk-ease) both; } }
  .wk-top { padding: calc(10px + env(safe-area-inset-top)) 14px 10px; }
  .wk-top > .wk-tag { display: none; }
  .wk-week { flex: 1; justify-content: space-between; }
  .wk-body { padding: 2px 14px calc(28px + env(safe-area-inset-bottom)); }
  .wk-content { gap: 22px; }
  .wk-hero { grid-template-columns: 92px 1fr; gap: 12px; padding: 18px; border-radius: 26px; }
  .wk-hero img { width: 92px; height: 92px; }
  .wk-hero h2 { font-size: 20px; letter-spacing: -.4px; }
  .wk-bubble { display: none; }
  .wk-kpis { gap: 8px; }
  .wk-kpi { padding: 12px; border-radius: 18px; }
  .wk-kpi b { font-size: 26px; }
  .wk-kpi-label, .wk-kpi i { font-size: 11px; }
  .wk-cols { grid-template-columns: 1fr; }
  .wk-day i { width: 34px; height: 34px; }
  .wk-perfs { display: flex; gap: 10px; margin: 0 -14px; padding: 0 14px 4px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .wk-perfs::-webkit-scrollbar { display: none; }
  .wk-perfs > * { flex: 0 0 min(300px, 84vw); scroll-snap-align: center; }
  .wk-dots { display: flex; justify-content: center; gap: 6px; }
  .wk-dots i { width: 7px; height: 7px; border-radius: 9px; background: var(--wk-line); transition: width .3s var(--wk-ease), background .3s; }
  .wk-dots i.is-on { width: 20px; background: var(--wk-blue); }
  .wk-next { grid-template-columns: 1fr; padding: 20px; }
  .wk-next h3 { font-size: 19px; }
  .wk-sh h3 { font-size: 18px; }
  .wk-bar { grid-template-columns: 92px minmax(0, 1fr) 70px; font-size: 12.5px; }
  .wk-history { padding: 16px; }
}

.wk-chip.is-new { background: var(--wk-blue); color: #fff; }
