/* ==========================================================================
   ARDENT — Design « Apple » (aperçu, activé depuis le mode développeur)
   D'après les Human Interface Guidelines d'Apple : une base neutre (noir,
   blanc, gris), aucune couleur vive dans l'interface (actions en noir mat ou
   en blanc, liens en bleu), des fonds plats sans dégradés, la police du
   système (SF) en graisses Semibold/Bold, des barres en « verre » (Liquid
   Glass) monochromes ; en sombre, le même fond que le design normal (#0b0b10). Tout est sous html[data-design="apple"] : sans cet
   attribut, le site garde exactement son design actuel.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Couleurs (clair) — couleurs système d'iOS, versions lisibles pour le texte
   -------------------------------------------------------------------------- */
html[data-design="apple"] {
  --color-bg: #f2f2f7;               /* systemGroupedBackground */
  --color-bg-elevated: #ffffff;
  --color-card: #ffffff;
  --color-card-alt: #f2f2f7;

  --color-ink: #1c1c1e;              /* cartes « héros » : graphite */
  --color-ink-soft: #2c2c2e;
  --color-ink-line: rgba(255, 255, 255, 0.1);

  --color-text: #1d1d1f;
  --color-text-secondary: #6e6e73;   /* 5,1:1 sur blanc */
  --color-text-tertiary: #737378;
  --color-text-on-dark: #f5f5f7;
  --color-text-on-dark-2: rgba(235, 235, 245, 0.62);

  /* Aucune couleur vive dans l'interface : actions en noir mat, liens en bleu Apple */
  --color-accent: #0066cc;           /* liens (bleu d'apple.com) : 5,6:1 sur blanc */
  --color-accent-2: #0066cc;
  --color-accent-bright: #1d1d1f;    /* fonds d'action : noir mat */
  --color-accent-tint: rgba(118, 118, 128, 0.12);
  --grad-accent: linear-gradient(#1d1d1f, #1d1d1f);
  --grad-accent-bright: linear-gradient(#1d1d1f, #1d1d1f);
  --shadow-accent: none;

  --color-coach: #1d1d1f;
  --color-coach-tint: rgba(118, 118, 128, 0.12);
  --color-steps: #0066cc;
  --color-steps-bright: #0a84ff;
  --color-steps-tint: #eaf3fe;
  --color-reward: #6e6e73;
  --color-reward-bright: #c7c7cc;
  --color-reward-tint: rgba(118, 118, 128, 0.12);

  --color-red: #ff3b30;
  --color-red-dark: #d70015;
  --color-red-tint: #ffeceb;
  --color-green: #34c759;
  --color-green-dark: #248a3d;
  --color-green-tint: #e8f8ec;
  --color-blue: #0066cc;

  --color-hairline: rgba(60, 60, 67, 0.12);
  --color-hairline-strong: rgba(60, 60, 67, 0.24);

  /* Ombres : presque aucune, comme les listes d'iOS (cartes blanches posées à plat sur le gris) */
  --shadow-card: none;
  --shadow-card-hover: 0 2px 10px rgba(0, 0, 0, 0.06);
  --shadow-float: 0 10px 30px rgba(0, 0, 0, 0.12);
  --shadow-island: 0 8px 24px rgba(0, 0, 0, 0.12), 0 0 0 0.5px rgba(0, 0, 0, 0.08);

  --font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, "Segoe UI", Roboto, sans-serif;
  --font-text: -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, "Segoe UI", Roboto, sans-serif;
}

/* --------------------------------------------------------------------------
   Couleurs (sombre) — même fond que le design normal (#0b0b10), cartes graphite
   -------------------------------------------------------------------------- */
html[data-design="apple"][data-theme="dark"] {
  --color-bg: #0b0b10;               /* exactement le fond sombre du design normal */
  --color-bg-elevated: #1c1c1e;
  --color-card: #1c1c1e;
  --color-card-alt: #2c2c2e;

  --color-ink: #1c1c1e;
  --color-ink-soft: #2c2c2e;

  --color-text: #f5f5f7;
  --color-text-secondary: #aeaeb2;
  --color-text-tertiary: #98989d;

  --color-accent: #4da3ff;           /* liens */
  --color-accent-2: #4da3ff;
  --color-accent-bright: #f5f5f7;    /* fonds d'action : blanc (texte noir) */
  --color-accent-tint: rgba(118, 118, 128, 0.24);
  --grad-accent: linear-gradient(#f5f5f7, #f5f5f7);
  --grad-accent-bright: linear-gradient(#f5f5f7, #f5f5f7);
  --color-coach: #f5f5f7;
  --color-coach-tint: rgba(118, 118, 128, 0.24);
  --color-steps: #4da3ff;
  --color-steps-tint: #0b2036;
  --color-reward: #aeaeb2;
  --color-reward-tint: rgba(118, 118, 128, 0.24);
  --color-red-dark: #ff6961;
  --color-red-tint: #3a1d1d;
  --color-green-dark: #30d158;
  --color-green-tint: #13301c;
  --color-blue: #4da3ff;

  --color-hairline: rgba(235, 235, 245, 0.1);
  --color-hairline-strong: rgba(235, 235, 245, 0.18);

  --shadow-card: none;
  --shadow-card-hover: none;
  --shadow-float: 0 12px 36px rgba(0, 0, 0, 0.5);
  --shadow-island: 0 8px 28px rgba(0, 0, 0, 0.4), 0 0 0 0.5px rgba(255, 255, 255, 0.12);
}
html[data-design="apple"] body { background: var(--color-bg); color: var(--color-text); -webkit-font-smoothing: antialiased; }

/* Graisses : Apple n’utilise pas de graisses plus épaisses que Bold (800/900 → 700). Les réglages plus fins suivent. */

/* === Graisses (généré par apple-weights.cjs) === */
html[data-design="apple"] .toast-action,
html[data-design="apple"] .app-greeting-title,
html[data-design="apple"] .streak-chip,
html[data-design="apple"] .flame-hero-name,
html[data-design="apple"] .section-title,
html[data-design="apple"] .hero-rhythm,
html[data-design="apple"] .goal-headline,
html[data-design="apple"] .hero-stat-value,
html[data-design="apple"] .recal-banner-title,
html[data-design="apple"] .today-label,
html[data-design="apple"] .today-title,
html[data-design="apple"] .period-title,
html[data-design="apple"] .period-info,
html[data-design="apple"] .stat-tile-value,
html[data-design="apple"] .claim-btn,
html[data-design="apple"] .steps-ring-percent,
html[data-design="apple"] .steps-count,
html[data-design="apple"] .report-card-title,
html[data-design="apple"] .week-day-name,
html[data-design="apple"] .week-day-num,
html[data-design="apple"] .workout-day-name,
html[data-design="apple"] .workout-complete-btn,
html[data-design="apple"] .calendar-title,
html[data-design="apple"] .calendar-dow,
html[data-design="apple"] .calendar-day.is-today,
html[data-design="apple"] .calendar-day.is-workout,
html[data-design="apple"] .calendar-stat-value,
html[data-design="apple"] .year-month-name,
html[data-design="apple"] .glass-card-head,
html[data-design="apple"] .glass-badge,
html[data-design="apple"] .bmi-value,
html[data-design="apple"] .recovery-ring-center,
html[data-design="apple"] .recovery-label,
html[data-design="apple"] .shop-category-name,
html[data-design="apple"] .meal-time-hour,
html[data-design="apple"] .meal-name,
html[data-design="apple"] .coach-fab-label,
html[data-design="apple"] .rhythm-modern-title,
html[data-design="apple"] .session-result-kcal,
html[data-design="apple"] .settings-avatar,
html[data-design="apple"] .settings-name,
html[data-design="apple"] .settings-group-title,
html[data-design="apple"] .trophy-summary-count,
html[data-design="apple"] .trophy-score-value,
html[data-design="apple"] .family-name,
html[data-design="apple"] .family-rank,
html[data-design="apple"] .exploit-name,
html[data-design="apple"] .toast-trophy-title,
html[data-design="apple"] .gift-title,
html[data-design="apple"] .gift-item,
html[data-design="apple"] .gs-top-clock,
html[data-design="apple"] .gs-test-tag,
html[data-design="apple"] .gs-eyebrow,
html[data-design="apple"] .gs-title,
html[data-design="apple"] .gs-stats strong,
html[data-design="apple"] .gs-list li::before,
html[data-design="apple"] .gs-big,
html[data-design="apple"] .gs-adjust small,
html[data-design="apple"] .gs-primary,
html[data-design="apple"] .gs-secondary,
html[data-design="apple"] .recap-hero-label,
html[data-design="apple"] .recap-hero-title,
html[data-design="apple"] .recap-tile strong,
html[data-design="apple"] .recap-coach-title,
html[data-design="apple"] .share-label,
html[data-design="apple"] .dev-btn,
html[data-design="apple"] .dev-section h3,
html[data-design="apple"] .intro-hello,
html[data-design="apple"] .wc-target-label,
html[data-design="apple"] .wc-bubble text,
html[data-design="apple"] .ba-knob,
html[data-design="apple"] .ba-delta,
html[data-design="apple"] .challenge-title,
html[data-design="apple"] .challenge-check,
html[data-design="apple"] .plus-badge,
html[data-design="apple"] .plus-hero p,
html[data-design="apple"] .plus-row.is-head,
html[data-design="apple"] .plus-row strong,
html[data-design="apple"] .ref-code,
html[data-design="apple"] .gallery-plus,
html[data-design="apple"] .announce-body h3,
html[data-design="apple"] .admin-tile strong,
html[data-design="apple"] .mj-gauge-center strong,
html[data-design="apple"] .team-rank,
html[data-design="apple"] .admin-group-title,
html[data-design="apple"] .admin-tag,
html[data-design="apple"] .demo-badge,
html[data-design="apple"] .demo-sets,
html[data-design="apple"] .admin-online,
html[data-design="apple"] .vis-row-title,
html[data-design="apple"] .vis-tile span,
html[data-design="apple"] .vis-zoom-hint,
html[data-design="apple"] .vis-zoom-count,
html[data-design="apple"] .vis-badge,
html[data-design="apple"] .gallery-open-text b,
html[data-design="apple"] .coach-stage-name,
html[data-design="apple"] .coach-mood-name,
html[data-design="apple"] .msg-tag,
html[data-design="apple"] .toast-unlock-title,
html[data-design="apple"] .gallery-title,
html[data-design="apple"] .gallery-tile-tier,
html[data-design="apple"] .history-modal-title,
html[data-design="apple"] .msg-creator-tag,
html[data-design="apple"] .coach-quota-plan,
html[data-design="apple"] .coach-quota-label b,
html[data-design="apple"] .coach-access-title,
html[data-design="apple"] .voice-timer,
html[data-design="apple"] .weigh-reminder-text strong,
html[data-design="apple"] .exsearch-card-title,
html[data-design="apple"] .gs-sets,
html[data-design="apple"] .gs-target b,
html[data-design="apple"] .gs-target span,
html[data-design="apple"] .gs-next-info small,
html[data-design="apple"] .gs-next-info strong,
html[data-design="apple"] .gs-go-word,
html[data-design="apple"] .defis-flame-count,
html[data-design="apple"] .defis-flame-name,
html[data-design="apple"] .session-measured strong,
html[data-design="apple"] .ex-island-count,
html[data-design="apple"] .ex-island-tag,
html[data-design="apple"] .coach-drawer-title,
html[data-design="apple"] .consent-state,
html[data-design="apple"] .device-text strong,
html[data-design="apple"] .device-badge,
html[data-design="apple"] .ref-ring-center strong,
html[data-design="apple"] .ref-title,
html[data-design="apple"] .ref-steps li strong,
html[data-design="apple"] .ref-ticket-label,
html[data-design="apple"] .ref-ticket-code,
html[data-design="apple"] .ref-copy,
html[data-design="apple"] .ref-share,
html[data-design="apple"] .ref-preview-label,
html[data-design="apple"] .defis-hero-kicker,
html[data-design="apple"] .defis-hero-count,
html[data-design="apple"] .defis-hero-name,
html[data-design="apple"] .defis-hero-more,
html[data-design="apple"] .challenges-score,
html[data-design="apple"] .team-invite-text strong,
html[data-design="apple"] .team-invite-btn,
html[data-design="apple"] .coach-drawer-new,
html[data-design="apple"] .conv-group,
html[data-design="apple"] .conv-meta b,
html[data-design="apple"] .update-banner button,
html[data-design="apple"] .trophy-reveal-rarity,
html[data-design="apple"] .trophy-reveal-text strong,
html[data-design="apple"] .onb-step,
html[data-design="apple"] .rhythm-weeks,
html[data-design="apple"] .goal-title,
html[data-design="apple"] .goal-lock-title,
html[data-design="apple"] .gain-type-name,
html[data-design="apple"] .plan-days-title,
html[data-design="apple"] .onb-lang-label,
html[data-design="apple"] .lang-title,
html[data-design="apple"] .lang-switch,
html[data-design="apple"] .fx-card b,
html[data-design="apple"] .fn-kicker,
html[data-design="apple"] .fn-big,
html[data-design="apple"] .fn-big small,
html[data-design="apple"] .fx-name,
html[data-design="apple"] .fx-title,
html[data-design="apple"] .fx-win-kg,
html[data-design="apple"] .fn-stat strong,
html[data-design="apple"] .fn-coach-tag,
html[data-design="apple"] .fn-letter-title { font-weight: 700; }
/* === fin des graisses === */

/* --------------------------------------------------------------------------
   Cartes : à plat, sans liseré ni lueur colorée
   -------------------------------------------------------------------------- */
html[data-design="apple"] :is(.today-card, .period-card, .stat-tile, .steps-card, .action-list, .glass-card, .workout-day-card, .weigh-reminder, .challenges-card, .team-card, .card) {
  box-shadow: none;
}
html[data-design="apple"] :is(.hero-card, .recap-hero, .flame-hero) { box-shadow: none; }
html[data-design="apple"] :is(.hero-card, .recap-hero)::before,
html[data-design="apple"] :is(.hero-card, .recap-hero)::after { display: none; }
html[data-design="apple"] .workout-day-card.is-today { box-shadow: 0 0 0 2px var(--color-text); }
html[data-design="apple"] .weigh-reminder { border-left: 0; }


/* Barres de progression : noires sur fond clair, blanches sur les cartes sombres */
html[data-design="apple"] :is(.goal-fill, .defis-hero .mini-fill, .defis-flame .mini-fill) { background: #f5f5f7; }
html[data-design="apple"] .challenge-track i { background: var(--color-text); }
html[data-design="apple"] .island-badge { background: #ff3b30; }  /* pastille de notification iOS */

/* --------------------------------------------------------------------------
   Boutons : noir mat (clair) / blanc (sombre), sans dégradé ni ombre colorée
   -------------------------------------------------------------------------- */
html[data-design="apple"] :is(.btn-accent, .today-cta, .workout-complete-btn, .update-banner button, .recal-banner, .calendar-day.is-workout, .guided-start-icon) {
  background: #1d1d1f;
  color: #ffffff;
  box-shadow: none;
}
html[data-design="apple"] :is(.btn-accent, .today-cta, .workout-complete-btn, .update-banner button) { font-weight: 600; }
html[data-design="apple"][data-theme="dark"] :is(.btn-accent, .today-cta, .workout-complete-btn, .update-banner button, .recal-banner, .calendar-day.is-workout, .guided-start-icon) {
  background: #f5f5f7;
  color: #1d1d1f;
}
html[data-design="apple"] .btn-primary { font-weight: 600; box-shadow: none; }
html[data-design="apple"] .settings-avatar { background: linear-gradient(180deg, #a5abb7, #858994); } /* avatar gris des Contacts */

/* --------------------------------------------------------------------------
   Barre d'onglets en verre (Liquid Glass) ; l'onglet actif est une pastille
   NOIR MAT avec l'icône et le nom en blanc.
   -------------------------------------------------------------------------- */
html[data-design="apple"] .dynamic-island {
  background: rgba(249, 249, 251, 0.8);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  backdrop-filter: blur(24px) saturate(180%);
}
html[data-design="apple"] .island-tab { color: rgba(60, 60, 67, 0.75); font-weight: 600; }
html[data-design="apple"] .island-indicator { background: #1d1d1f; }
html[data-design="apple"] .island-tab.is-active { color: #ffffff; }
html[data-design="apple"] .dynamic-island.is-dragging .island-indicator { background: #1d1d1f; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18); }
html[data-design="apple"] .dynamic-island.is-dragging .island-tab { color: rgba(60, 60, 67, 0.6); }
html[data-design="apple"] .dynamic-island.is-dragging .island-tab.is-hover { color: #ffffff; }
html[data-design="apple"][data-theme="dark"] .dynamic-island { background: rgba(72, 72, 74, 0.72); }
html[data-design="apple"][data-theme="dark"] .island-tab { color: rgba(235, 235, 245, 0.7); }
html[data-design="apple"][data-theme="dark"] .island-indicator,
html[data-design="apple"][data-theme="dark"] .dynamic-island.is-dragging .island-indicator { background: #121214; }
html[data-design="apple"][data-theme="dark"] .dynamic-island.is-dragging .island-tab { color: rgba(235, 235, 245, 0.55); }

/* Bouton du coach : même noir mat, texte blanc */
html[data-design="apple"] .coach-fab { background: #1d1d1f; color: #fff; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18); font-weight: 600; }
html[data-design="apple"] .coach-fab::before { border-color: rgba(29, 29, 31, 0.35); }
html[data-design="apple"][data-theme="dark"] .coach-fab { background: #121214; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.4), 0 0 0 0.5px rgba(255, 255, 255, 0.14); }
html[data-design="apple"][data-theme="dark"] .coach-fab::before { border-color: rgba(255, 255, 255, 0.2); }
html[data-design="apple"] .coach-fab-dot { background: #34c759; }

/* --------------------------------------------------------------------------
   Choix « île » (séance, formulaires) : contrôles segmentés d'iOS
   -------------------------------------------------------------------------- */
html[data-design="apple"] :is(.session-sheet .segmented, .island-form .segmented, .segmented.island-segmented, .ex-island, .island-form .eq-tags-host, .day-pills.is-island) {
  background: rgba(118, 118, 128, 0.12);
  color: var(--color-text);
  box-shadow: none;
}
html[data-design="apple"] :is(.session-sheet .segmented-option, .island-form .segmented-option, .segmented.island-segmented .segmented-option) { color: var(--color-text); }
html[data-design="apple"] :is(.session-sheet .segmented-option, .island-form .segmented-option, .segmented.island-segmented .segmented-option) small { color: var(--color-text-secondary); }
html[data-design="apple"] :is(.session-sheet .segmented-option.is-selected, .island-form .segmented-option.is-selected, .segmented.island-segmented .segmented-option.is-selected, .ex-island-item.is-on) {
  background: #ffffff;
  color: #1d1d1f;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.12), 0 0 0 0.5px rgba(0, 0, 0, 0.04);
}
html[data-design="apple"] .ex-island-lead { color: var(--color-text-secondary); }
html[data-design="apple"] .ex-island-lead strong { color: var(--color-text); }
html[data-design="apple"] .ex-island-count { background: rgba(118, 118, 128, 0.16); }
html[data-design="apple"][data-theme="dark"] :is(.session-sheet .segmented, .island-form .segmented, .segmented.island-segmented, .ex-island, .island-form .eq-tags-host, .day-pills.is-island) {
  background: rgba(118, 118, 128, 0.24);
}
html[data-design="apple"][data-theme="dark"] :is(.session-sheet .segmented-option.is-selected, .island-form .segmented-option.is-selected, .segmented.island-segmented .segmented-option.is-selected, .ex-island-item.is-on) {
  background: #636366;
  color: #ffffff;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.3);
}

/* --------------------------------------------------------------------------
   Coach : bulles façon iMessage (bleu pour toi, gris pour le coach)
   -------------------------------------------------------------------------- */
html[data-design="apple"] .msg-row.from-user .msg-bubble { background: #0a84ff; color: #fff; box-shadow: none; }
html[data-design="apple"] .msg-row.from-coach .msg-bubble { background: #e9e9eb; color: #1d1d1f; box-shadow: none; }
html[data-design="apple"][data-theme="dark"] .msg-row.from-coach .msg-bubble { background: #2c2c2e; color: #f5f5f7; }
html[data-design="apple"] .coach-composer .coach-send { background: #0a84ff; box-shadow: none; }

/* --------------------------------------------------------------------------
   Séance guidée : noir et blanc, anneau blanc (effort) / gris (repos)
   -------------------------------------------------------------------------- */
html[data-design="apple"] .guided-overlay { background: #1c1c1e; }
html[data-design="apple"] .guided-overlay::before,
html[data-design="apple"] .guided-overlay::after,
html[data-design="apple"] .guided-overlay[data-phase="end"]::before { background: none; }
html[data-design="apple"] .gs-ring-fill { stroke: #f5f5f7; }
html[data-design="apple"] .gs-body.is-rest .gs-ring-fill { stroke: #8e8e93; }
html[data-design="apple"] .gs-ring.is-final .gs-ring-fill { stroke: #ffffff; }
html[data-design="apple"] .gs-ring-track { stroke: rgba(255, 255, 255, 0.12); }
html[data-design="apple"] :is(.gs-ring, .gs-body.is-rest .gs-ring)::before { background: none; }
html[data-design="apple"] :is(.gs-eyebrow, .gs-body.is-rest .gs-eyebrow, .gs-next-info small) { color: rgba(235, 235, 245, 0.6); letter-spacing: 0.06em; font-weight: 600; }
html[data-design="apple"] .gs-target b { background: none; -webkit-background-clip: border-box; background-clip: border-box; color: #fff; }
html[data-design="apple"] .gs-list li::before { background: rgba(118, 118, 128, 0.24); color: #fff; }
html[data-design="apple"] .gs-cue { background: rgba(118, 118, 128, 0.2); box-shadow: none; color: rgba(235, 235, 245, 0.85); }
html[data-design="apple"] .gs-media::before { display: none; }
html[data-design="apple"] :is(.gs-progress b, .gs-sets-dots i.is-current) { background: #f5f5f7; }
html[data-design="apple"] .gs-sets-dots i.is-done { background: rgba(245, 245, 247, 0.55); }
html[data-design="apple"] .gs-primary { background: #f5f5f7; color: #1d1d1f; box-shadow: none; font-weight: 600; }
html[data-design="apple"] .gs-primary.is-quiet { background: rgba(118, 118, 128, 0.28); color: #fff; }
html[data-design="apple"] .gs-end-badge { background: #f5f5f7; color: #1d1d1f; box-shadow: none; }
html[data-design="apple"] .gs-end-badge i { box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4); }
html[data-design="apple"] .gs-go-word { text-shadow: 0 2px 20px rgba(0, 0, 0, 0.6); }
html[data-design="apple"] .gs-go-line { background: rgba(255, 255, 255, 0.8); }
html[data-design="apple"] .gs-go-edge { box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.4), inset 0 0 70px rgba(255, 255, 255, 0.12); }

/* Animation de fin : mêmes couleurs dans les deux designs (voir finale.css) — gris et argent
   façon keynote jusqu'à l'explosion, puis or et orange soleil (titre « Objectif atteint » et prénom en très gras). */

/* Boutons pleins de la couleur du coach (envoyer, dictée, nouvelle conversation) : bleu iOS, texte blanc */
html[data-design="apple"] :is(.coach-send, .voice-done, .coach-drawer-new) { background: #0a84ff; color: #fff; }
html[data-design="apple"] .coach-quota-track i { background: var(--color-text); }
html[data-design="apple"] .vis-badge.is-img { background: #636366; color: #fff; }

/* ==========================================================================
   Un peu de vie (retour de l'utilisateur : « le site fait mort ») — façon Apple :
   un dégradé signature indigo → violet → rose (celui d'Apple Intelligence) aux
   endroits qui comptent, des icônes en carrés colorés comme les Réglages
   d'iPhone, une lueur douce sur la carte du haut. Les boutons et la barre
   d'onglets restent sobres (noir mat / blanc).
   ========================================================================== */
html[data-design="apple"] {
  --apple-grad: linear-gradient(120deg, #5e5ce6 0%, #a259f5 52%, #ff375f 100%);
  --apple-grad-soft: linear-gradient(120deg, rgba(94, 92, 230, 0.16), rgba(162, 89, 245, 0.12) 52%, rgba(255, 55, 95, 0.12));
}

/* Carte du haut : deux lueurs douces (indigo en haut, rose en bas), comme un fond d'écran d'iPhone */
html[data-design="apple"] .hero-card::before,
html[data-design="apple"] .hero-card::after { display: block; }
html[data-design="apple"] .hero-card::before { background: radial-gradient(circle, rgba(94, 92, 230, 0.55), transparent 68%); opacity: 0.85; }
html[data-design="apple"] .hero-card::after { background: radial-gradient(circle, rgba(255, 55, 95, 0.4), transparent 70%); opacity: 0.6; }

/* Barres de progression et jauges : le dégradé signature */
html[data-design="apple"] :is(.goal-fill, .defis-hero .mini-fill, .defis-flame .mini-fill, .challenge-track i, .onb-progress-fill, .coach-quota-track i, .mj-bar i) { background: var(--apple-grad); }

/* Choix du rythme : la carte choisie prend un liseré en dégradé, une lueur et un léger voile coloré */
html[data-design="apple"] :is(.rhythm-card-modern, .rhythm-card) { transition: border-color 0.2s, box-shadow 0.25s, background 0.25s, transform 0.15s var(--ease-spring); }
html[data-design="apple"] :is(.rhythm-card-modern, .rhythm-card).is-selected {
  border-color: transparent;
  background: linear-gradient(var(--color-card), var(--color-card)) padding-box, var(--apple-grad) border-box;
  box-shadow: 0 10px 28px rgba(162, 89, 245, 0.22);
  color: var(--color-text);
}
html[data-design="apple"] .rhythm-card.is-selected { border-width: 2px; }
html[data-design="apple"] :is(.rhythm-card-modern, .rhythm-card).is-selected::after { content: none; }
html[data-design="apple"] :is(.rhythm-card-modern.is-selected .rhythm-modern-metrics, .rhythm-card.is-selected .rhythm-name) {
  background: var(--apple-grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
html[data-design="apple"] .rhythm-card.is-selected :is(.rhythm-meta, .rhythm-rate) { color: var(--color-text-secondary); }
html[data-design="apple"] .rhythm-card.is-selected .rhythm-icon { background: var(--apple-grad); color: #fff; }
html[data-design="apple"] .rhythm-modern-metrics { color: var(--color-text-secondary); }

/* Icônes : carrés colorés à léger dégradé, pictogramme blanc (comme les Réglages d'iPhone).
   Les deux logos mats (calories, cheat meal) gardent leur style. */
html[data-design="apple"] .tint-accent { background: linear-gradient(180deg, #ff6b81, #ff375f) !important; color: #fff !important; }
html[data-design="apple"] .tint-coach { background: linear-gradient(180deg, #8a87ff, #5e5ce6) !important; color: #fff !important; }
html[data-design="apple"] .tint-steps { background: linear-gradient(180deg, #47a6ff, #0a84ff) !important; color: #fff !important; }
html[data-design="apple"] .tint-reward { background: linear-gradient(180deg, #ffd84d, #f5b700) !important; color: #fff !important; }
html[data-design="apple"] .tint-green { background: linear-gradient(180deg, #5fe07f, #30c552) !important; color: #fff !important; }
html[data-design="apple"][data-theme="dark"] :is(.tint-accent, .tint-coach, .tint-steps, .tint-reward, .tint-green) { box-shadow: inset 0 0 0 0.5px rgba(255, 255, 255, 0.12); }

/* L'action du jour (« C'est parti ») porte le dégradé ; les autres boutons restent sobres */
html[data-design="apple"] .today-card .today-cta,
html[data-design="apple"][data-theme="dark"] .today-card .today-cta { background: var(--apple-grad); color: #fff; box-shadow: 0 6px 18px rgba(162, 89, 245, 0.28); }

/* Bouton du coach : noir mat cerclé du dégradé (comme la lueur de Siri) */
html[data-design="apple"] .coach-fab {
  border: 1.5px solid transparent;
  background: linear-gradient(#1d1d1f, #1d1d1f) padding-box, var(--apple-grad) border-box;
}
html[data-design="apple"][data-theme="dark"] .coach-fab { background: linear-gradient(#121214, #121214) padding-box, var(--apple-grad) border-box; }

/* Séance guidée : l'anneau d'effort reprend le dégradé, le repos un bleu → turquoise */
html[data-design="apple"] .gs-ring-fill { stroke: url(#gs-grad-work); }
html[data-design="apple"] .gs-body.is-rest .gs-ring-fill { stroke: url(#gs-grad-rest); }
html[data-design="apple"] #gs-grad-work stop:first-child { stop-color: #7d7aff; }
html[data-design="apple"] #gs-grad-work stop:last-child { stop-color: #ff375f; }
html[data-design="apple"] #gs-grad-rest stop:first-child { stop-color: #64d2ff; }
html[data-design="apple"] #gs-grad-rest stop:last-child { stop-color: #0a84ff; }
html[data-design="apple"] :is(.gs-progress b, .gs-sets-dots i.is-current) { background: var(--apple-grad); }
html[data-design="apple"] .gs-eyebrow { color: #b4a7ff; }
html[data-design="apple"] :is(.gs-body.is-rest .gs-eyebrow, .gs-next-info small) { color: #64d2ff; }
html[data-design="apple"] .guided-overlay::before { background: radial-gradient(130% 55% at 50% -8%, rgba(94, 92, 230, 0.22), rgba(255, 55, 95, 0.08) 45%, transparent 70%); }
html[data-design="apple"] .guided-overlay::after { background: radial-gradient(130% 55% at 50% -8%, rgba(100, 210, 255, 0.18), transparent 65%); }
html[data-design="apple"] .gs-end-badge { background: var(--apple-grad); color: #fff; }

/* Onglet actif de la barre du bas : noir mat, avec un fin liseré du dégradé */
html[data-design="apple"] .island-indicator { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08), 0 4px 14px rgba(162, 89, 245, 0.25); }
