/* proto.css — thème « Finlande Morphism » (Korpi), transposé du handoff
   Claude Design (Lira/Enne/design-finlande, Enne Landing.dc.html).
   Sprint design 2026-06-12.

   Architecture : styles.css (thème violet historique) est PARTAGÉ avec
   debug.html / demo.html, qui ne doivent pas bouger → toutes les variables y
   sont SURCHARGÉES ici, scopées body.proto. Ce fichier n'est chargé que par
   proto.html, legal.html, apropos.html.

   Polices (3 familles max, décision sprint) : Hanken Grotesk (corps + titres),
   Young Serif (hero, accents), Fragment Mono (kickers, labels, saisies).
   Vocabulaire finnois = décoratif uniquement (décision Soko) — tout label
   fonctionnel reste en français. */

body.proto {
  /* ── Surcharge des variables styles.css (debug/demo intacts) ── */
  --bg: #06120d;
  --bg-soft: rgba(255, 255, 255, .06);
  --card: rgba(255, 255, 255, .05);
  --card-2: rgba(255, 255, 255, .09);
  --border: rgba(190, 240, 215, .16);
  --text: #e9f6ee;
  --muted: rgba(233, 246, 238, .6);
  --primary: #54dba4;
  --primary-2: #27a97a;
  --accent: #54dba4;
  --danger: #ff7a8f;
  --warn: #ffab5e;
  --radius: 18px;
  /* ── Tokens Korpi ── */
  --k-title: #f3fbf6;
  --k-green-soft: #7be3b4;
  --k-green-active: #9bf0c8;
  --k-glass-border: rgba(190, 240, 215, .2);
  --k-glass-shadow: 0 30px 70px rgba(2, 12, 8, .5), inset 0 1px 0 rgba(220, 250, 235, .16);
  --k-cta-grad: linear-gradient(135deg, #4fd6a0, #27a97a);
  --k-cta-ink: #042619;
  --k-input-bg: rgba(255, 255, 255, .06);
  --k-input-border: rgba(190, 240, 215, .18);
  --k-sev-ok: #54dba4;
  --k-sev-leger: #ffd27a;
  --k-sev-modere: #ffab5e;
  --k-sev-severe: #ff7a8f;
  --k-mono: "Fragment Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --k-serif: "Young Serif", Georgia, serif;
  --k-grotesk: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
}

body.proto {
  display: block;
  max-width: 760px;
  margin: 0 auto;
  padding: 0 1.1rem 4rem;
  font-family: var(--k-grotesk);
  color: var(--text);
  background: linear-gradient(180deg, #06120d 0%, #0a1c14 45%, #081a12 100%) fixed;
}
body.proto ::selection { background: rgba(84, 219, 164, .3); }
body.proto a { color: var(--k-green-soft); }
body.proto :focus-visible { outline: 2px solid rgba(84, 219, 164, .7); outline-offset: 2px; }

/* ════ Décor atmosphérique (CSS pur + SVG data-URI, aucune image externe) ════
   Couche fixe derrière le contenu (z-index négatif : rien d'autre à empiler). */
.k-atmo {
  position: fixed; inset: 0; z-index: -1;
  overflow: hidden; pointer-events: none;
}
.k-stars {
  position: absolute; left: 0; right: 0; top: 0; height: 46%;
  background-size: 100% 100%;
  animation: twinkle 5s ease-in-out infinite;
}
.k-stars-b { animation-duration: 7s; animation-delay: 1.4s; }
.k-stars-c { animation-duration: 9s; animation-delay: 3s; }
.k-moon {
  position: absolute; right: 13%; top: 64px;
  width: 90px; height: 90px; border-radius: 50%;
  background:
    radial-gradient(circle at 26% 31%, rgba(146, 178, 165, .55) 0 8px, transparent 9px),
    radial-gradient(circle at 60% 20%, rgba(146, 178, 165, .45) 0 5px, transparent 6px),
    radial-gradient(circle at 52% 58%, rgba(134, 168, 154, .5) 0 11px, transparent 12px),
    radial-gradient(circle at 22% 64%, rgba(146, 178, 165, .42) 0 5px, transparent 6px),
    radial-gradient(circle at 75% 44%, rgba(146, 178, 165, .4) 0 4px, transparent 5px),
    radial-gradient(circle at 32% 30%, #ffffff 0%, #f4fcf7 40%, #ddeee6 72%, #c6dcd2 100%);
  box-shadow: 0 0 32px 8px rgba(220, 248, 238, .38), inset -10px -8px 20px rgba(130, 165, 152, .5);
}
.k-glow { position: absolute; border-radius: 50%; pointer-events: none; }
.k-glow-moon {
  right: 5%; top: -4%; width: 380px; height: 340px;
  background: radial-gradient(circle, rgba(190, 235, 215, .18), transparent 65%);
  filter: blur(28px);
  animation: glowPulse 9s ease-in-out infinite alternate;
}
.k-glow-aurora {
  left: 10%; top: 8%; width: 60%; height: 30%;
  background: radial-gradient(ellipse, rgba(84, 219, 164, .12), transparent 70%);
  filter: blur(40px);
  animation: glowPulse 12s ease-in-out infinite alternate;
}
.k-fog {
  position: absolute; border-radius: 50%;
  background: linear-gradient(90deg, transparent, rgba(178, 224, 205, .13), transparent);
}
.k-fog-high {
  left: -15%; top: 20%; width: 130%; height: 70px;
  filter: blur(16px);
  animation: fogDrift 34s ease-in-out infinite alternate;
}
.k-woods { position: absolute; left: 0; right: 0; bottom: 0; height: 290px; }
.k-haze {
  position: absolute; left: 18%; bottom: -12%; width: 64%; height: 70%;
  background: radial-gradient(ellipse at center, rgba(159, 214, 192, .16), transparent 70%);
  filter: blur(42px);
}
.k-forest {
  position: absolute; left: 0; right: 0; bottom: 0;
  background-repeat: no-repeat; background-size: 100% 100%;
}
.k-forest-far { height: 250px; }
.k-forest-mid { height: 215px; }
.k-forest-near { height: 175px; }
.k-fog-1 {
  left: -15%; bottom: 28%; width: 130%; height: 100px;
  filter: blur(26px);
  animation: fogDrift 21s ease-in-out infinite alternate;
}
.k-fog-2 {
  left: -15%; bottom: 4%; width: 130%; height: 90px;
  background: linear-gradient(90deg, transparent, rgba(205, 240, 225, .1), transparent);
  filter: blur(22px);
  animation: fogDrift 15s ease-in-out infinite alternate-reverse;
}
.k-ff {
  position: absolute; bottom: 12%;
  width: 3px; height: 3px; border-radius: 50%;
  background: rgba(190, 255, 210, .9);
  box-shadow: 0 0 8px 2px rgba(190, 255, 210, .7);
  opacity: 0;
  animation: firefly 9s ease-in-out infinite;
}
.k-ff:nth-of-type(1) { left: 8%;  animation-duration: 8s;    animation-delay: -2s; }
.k-ff:nth-of-type(2) { left: 22%; animation-duration: 11s;   animation-delay: -6s; bottom: 6%; }
.k-ff:nth-of-type(3) { left: 37%; animation-duration: 7.5s;  animation-delay: -4s; }
.k-ff:nth-of-type(4) { left: 52%; animation-duration: 12s;   animation-delay: -9s; bottom: 20%; }
.k-ff:nth-of-type(5) { left: 66%; animation-duration: 9.5s;  animation-delay: -1s; bottom: 9%; }
.k-ff:nth-of-type(6) { left: 79%; animation-duration: 10.5s; animation-delay: -7s; }
.k-ff:nth-of-type(7) { left: 91%; animation-duration: 8.5s;  animation-delay: -5s; bottom: 16%; }

@keyframes fogDrift { from { transform: translateX(-9%); } to { transform: translateX(9%) translateY(-10px); } }
@keyframes glowPulse { from { opacity: .5; } to { opacity: .95; } }
@keyframes twinkle { 0%, 100% { opacity: .35; } 50% { opacity: 1; } }
@keyframes firefly {
  0%, 100% { transform: translate(0, 0); opacity: 0; }
  12% { opacity: .9; }
  45% { transform: translate(16px, -28px); opacity: .4; }
  75% { transform: translate(-6px, -46px); opacity: .8; }
  95% { transform: translate(4px, -60px); opacity: 0; }
}
@keyframes heroIn { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@keyframes pulseDot { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
@keyframes blink { 50% { opacity: 0; } }

/* ── header ── */
.p-header {
  position: sticky; top: 10px; z-index: 40;
  display: flex; justify-content: space-between; align-items: center;
  margin: 10px 0 0;
  padding: .7rem 1.1rem;
  background: rgba(6, 18, 13, .55);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(190, 240, 215, .1);
  border-radius: 16px;
}
.p-wordmark { font-size: 1.4rem; font-weight: 800; letter-spacing: -.02em; color: #fff; }
.p-dot { color: var(--accent); }
.p-health {
  display: flex; align-items: center; gap: .4rem;
  font-family: var(--k-mono); font-size: .7rem;
  color: var(--muted);
  background: rgba(255, 255, 255, .06);
  border: 1px solid var(--k-input-border);
  border-radius: 999px; padding: .4rem .8rem;
}
.p-health.ok { color: var(--accent); }
.p-health.ko { color: var(--danger); }

/* ── hero ── */
.p-hero {
  text-align: left;
  min-height: min(70vh, 620px);
  display: flex; flex-direction: column; justify-content: center;
  padding: 4.5rem 0 4rem;
}
.p-kicker {
  font-family: var(--k-mono); font-size: .69rem;
  letter-spacing: .24em; text-transform: uppercase;
  color: var(--accent);
  margin: 0 0 1.3rem;
}
.p-hero .p-kicker { animation: heroIn .7s cubic-bezier(.2, .7, .2, 1) both; }
.p-hero h1 {
  font-family: var(--k-serif); font-weight: 400;
  font-size: clamp(1.9rem, 8vw, 3.6rem);
  line-height: 1.07; letter-spacing: -.015em;
  color: var(--k-title);
  margin: 0 0 1.4rem;
  text-wrap: balance;
  animation: heroIn .7s cubic-bezier(.2, .7, .2, 1) .08s both;
}
.p-hero h1 em { font-style: normal; color: var(--k-green-soft); }
.p-sub {
  color: rgba(233, 246, 238, .66);
  max-width: 56ch; margin: 0 0 2rem; line-height: 1.6;
  font-size: 1.05rem;
  text-wrap: pretty;
}
.p-hero .p-sub { animation: heroIn .7s cubic-bezier(.2, .7, .2, 1) .16s both; }
.p-sub strong { color: var(--text); font-weight: 600; }
.fi-accent { color: rgba(123, 227, 180, .85); }
.fi-note { font-family: var(--k-mono); font-size: .72rem; font-weight: 400; color: rgba(233, 246, 238, .45); letter-spacing: 0; }
.p-hero .p-cta { display: inline-block; width: fit-content; max-width: none; margin: 0; padding: 1rem 1.8rem; }
.p-step-n {
  display: inline-grid; place-items: center;
  width: 1.25rem; height: 1.25rem;
  border-radius: 7px;
  background: rgba(84, 219, 164, .14);
  border: 1px solid rgba(84, 219, 164, .3);
  color: var(--k-green-soft);
  font-family: var(--k-mono); font-size: .68rem; font-weight: 400;
  margin-right: .35rem;
}

/* ── cards / sections (verre Korpi) ── */
.p-card {
  background: var(--card);
  border: 1px solid var(--k-glass-border);
  backdrop-filter: blur(22px) saturate(150%);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
  border-radius: 24px;
  padding: 1.6rem;
  margin: 1.4rem 0;
  box-shadow: var(--k-glass-shadow);
}
.p-card h2 {
  margin: 0 0 1rem;
  font-size: 1.5rem; font-weight: 800; letter-spacing: -.02em;
  color: var(--k-title);
}

/* ── fallback (noscript / modules ES non chargés) ── */
.p-fallback {
  background: rgba(255, 122, 143, .08);
  border: 1px solid rgba(255, 122, 143, .4);
  border-radius: var(--radius);
  color: #ffb3c0;
  padding: .8rem 1rem; margin: .8rem 0;
  font-size: .85rem; line-height: 1.5;
}

/* ── sous-étapes de la section Analyse ── */
.p-substep { margin-top: 1.5rem; padding-top: 1.3rem; border-top: 1px solid rgba(190, 240, 215, .12); }
.p-substep:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }
.p-substep-title {
  display: flex; align-items: center; gap: .55rem;
  margin: 0 0 .9rem; font-size: 1.02rem; font-weight: 700; color: var(--k-title);
}
.p-substep-title .p-step-n { margin-right: 0; width: 1.55rem; height: 1.55rem; font-size: .75rem; border-radius: 8px; }
.p-substep .p-cta { margin-top: .2rem; }
.p-missing { margin: .6rem 0 0; font-family: var(--k-mono); font-size: .72rem; }
.p-missing.is-ready { color: var(--k-green-soft); }

/* ── form ── */
.p-drop {
  border: 1.5px dashed rgba(190, 240, 215, .28);
  border-radius: 18px;
  padding: 1.8rem 1.2rem; text-align: center; cursor: pointer;
  background: rgba(255, 255, 255, .035);
  transition: border-color .2s, background .2s;
}
.p-drop:hover, .p-drop.is-over { border-color: var(--primary); background: rgba(255, 255, 255, .07); }
.p-drop-inner { display: flex; flex-direction: column; gap: .3rem; }
.p-drop-inner strong { color: var(--text); font-size: .95rem; }
.p-file { color: var(--k-green-soft); font-family: var(--k-mono); font-size: .78rem; margin: .55rem 0 0; word-break: break-all; }

.p-form-row { display: flex; gap: .9rem; flex-wrap: wrap; margin-top: 1rem; }
.p-row4 { gap: .6rem; }
.p-field { display: flex; flex-direction: column; gap: .4rem; font-size: .8rem; font-weight: 600; color: rgba(233, 246, 238, .6); flex: 1; min-width: 8rem; }
body.proto input[type="number"],
body.proto input[type="email"],
body.proto input[type="text"] {
  background: var(--k-input-bg);
  color: var(--text);
  border: 1px solid var(--k-input-border);
  border-radius: 12px;
  padding: .65rem .8rem;
  font-size: .95rem;
  font-family: var(--k-mono);
  width: 100%;
  transition: border-color .18s;
}
body.proto input[type="number"]:focus,
body.proto input[type="email"]:focus,
body.proto input[type="text"]:focus { outline: none; border-color: var(--primary); }
body.proto input::placeholder { color: rgba(233, 246, 238, .32); }
.p-mini { min-width: 5.4rem; flex: 1 1 5.4rem; }
.p-label { display: block; margin: 1rem 0 .5rem; font-size: .8rem; font-weight: 600; color: rgba(233, 246, 238, .6); }

.p-pills { display: flex; gap: .55rem; flex-wrap: wrap; }
.p-pill {
  background: rgba(255, 255, 255, .05);
  color: rgba(233, 246, 238, .78);
  border: 1px solid var(--k-input-border);
  border-radius: 13px;
  padding: .55rem .85rem; cursor: pointer; font-size: .85rem; font-weight: 700;
  font-family: var(--k-grotesk);
  text-align: left;
  transition: border-color .18s, background .18s, color .18s;
}
.p-pill .p-hint { display: block; font-size: .68rem; font-weight: 400; opacity: .72; margin-top: 1px; }
.p-pill.is-active { border-color: rgba(84, 219, 164, .45); background: rgba(84, 219, 164, .16); color: var(--k-green-active); }
.p-pill:hover:not(.is-active) { border-color: rgba(190, 240, 215, .35); }

.p-advanced { margin-top: 1rem; font-size: .85rem; }
.p-advanced summary {
  cursor: pointer; color: rgba(123, 227, 180, .8);
  font-size: .8rem;
  text-decoration: underline; text-underline-offset: 3px;
  list-style: none;
}
.p-advanced summary::-webkit-details-marker { display: none; }
.p-advanced[open] > summary { margin-bottom: .5rem; }

/* ── boutons ── */
.p-cta {
  display: block; width: 100%; margin-top: 1.2rem;
  background: var(--k-cta-grad);
  color: var(--k-cta-ink);
  font-family: var(--k-grotesk);
  font-size: 1.02rem; font-weight: 800;
  border: 0; border-radius: 14px;
  padding: .95rem 1.4rem; cursor: pointer;
  box-shadow: 0 12px 30px rgba(79, 214, 160, .28);
  transition: filter .15s, transform .12s;
}
.p-cta:hover:not(:disabled) { filter: brightness(1.07); transform: translateY(-1px); }
.p-cta:disabled { opacity: .55; cursor: not-allowed; box-shadow: none; }
.p-cta-sm { width: auto; margin: 0; padding: .6rem 1rem; font-size: 1rem; }
.p-ghost {
  background: rgba(255, 255, 255, .06);
  border: 1px solid var(--k-input-border);
  color: var(--text);
  border-radius: 12px; padding: .55rem .95rem; cursor: pointer;
  font-size: .85rem; font-weight: 600; font-family: var(--k-grotesk);
  margin-top: 1rem;
  transition: background .15s, border-color .15s, color .15s;
}
.p-ghost:hover { background: rgba(255, 255, 255, .1); border-color: rgba(190, 240, 215, .3); }
.p-danger-ghost:hover { border-color: var(--danger); color: var(--danger); }

.p-muted { color: var(--muted); }
.p-micro { font-size: .78rem; line-height: 1.5; }
.p-error { color: var(--danger); font-size: .85rem; }
.p-privacy {
  margin: 1.3rem 0 0; font-size: .78rem; color: var(--muted);
  border-left: 3px solid rgba(84, 219, 164, .55); padding-left: .8rem; line-height: 1.55;
}
.p-privacy strong { color: rgba(233, 246, 238, .85); }
/* rail.js (état vide diag) utilise .muted/.micro sans préfixe */
body.proto .muted { color: var(--muted); }
body.proto .micro { font-size: .78rem; }

/* ── résultats : carte priorité (ambre Korpi) ── */
.p-prio {
  background: linear-gradient(120deg, rgba(255, 171, 94, .14), rgba(255, 171, 94, .05));
  border: 1px solid rgba(255, 171, 94, .32);
  border-radius: 18px;
  padding: 1.05rem 1.2rem; margin-bottom: 1.2rem;
  font-size: .92rem; line-height: 1.55; color: rgba(233, 246, 238, .8);
}
.p-prio strong {
  display: block;
  font-family: var(--k-mono); font-weight: 400;
  font-size: .68rem; letter-spacing: .16em; text-transform: uppercase;
  color: var(--warn);
  margin-bottom: .35rem;
}

/* ── onglets (segmented pill) ── */
.p-tabs {
  display: flex; gap: .3rem;
  padding: 5px;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(190, 240, 215, .12);
  border-radius: 14px;
  width: fit-content; max-width: 100%;
  margin-bottom: 1.2rem;
}
.p-tab {
  background: none; border: 0;
  color: rgba(233, 246, 238, .6);
  padding: .55rem 1.05rem;
  font-family: var(--k-grotesk); font-size: .88rem; font-weight: 700;
  cursor: pointer; border-radius: 10px;
  transition: background .18s, color .18s;
  white-space: nowrap;
}
.p-tab.is-active { background: rgba(84, 219, 164, .18); color: var(--k-green-active); }
.p-pane { display: none; }
.p-pane.is-active { display: block; }

.p-recit { line-height: 1.72; font-size: .98rem; color: rgba(233, 246, 238, .84); }
.p-recit.is-streaming::after { content: "▍"; color: var(--primary); animation: blink 1s infinite; }

.p-chatlog { display: flex; flex-direction: column; gap: .65rem; min-height: 4rem; max-height: 22rem; overflow-y: auto; margin-bottom: .9rem; }
.chat-msg { padding: .65rem .9rem; border-radius: 15px; font-size: .9rem; line-height: 1.5; max-width: 86%; }
.chat-msg.user {
  align-self: flex-end; white-space: pre-wrap;
  background: rgba(84, 219, 164, .16);
  border: 1px solid rgba(84, 219, 164, .3);
  color: #eafff5;
}
.chat-msg.assistant {
  align-self: flex-start;
  background: rgba(255, 255, 255, .06);
  border: 1px solid var(--k-input-border);
  color: rgba(233, 246, 238, .86);
}
.chat-msg.error { align-self: flex-start; color: var(--danger); border: 1px solid rgba(255, 122, 143, .45); background: rgba(255, 122, 143, .06); }
.p-chatform { display: flex; gap: .55rem; }
.p-chatform input { flex: 1; }
.p-chatform .p-cta-sm { border-radius: 13px; font-size: 1.05rem; padding: 0 1.1rem; }

/* ── Markdown rendu du coach (récit, bilan, bulles assistant) ── */
.p-recit p, .chat-msg.assistant p { margin: 0 0 .7em; }
.p-recit p:last-child, .chat-msg.assistant p:last-child { margin-bottom: 0; }
.p-recit strong, .chat-msg.assistant strong { color: var(--k-title); font-weight: 700; }
.p-recit em, .chat-msg.assistant em { color: var(--k-green-soft); }
.p-recit ul, .p-recit ol, .chat-msg.assistant ul, .chat-msg.assistant ol {
  margin: .4em 0 .7em; padding-left: 1.3rem;
}
.p-recit li, .chat-msg.assistant li { margin: .2em 0; }
.p-recit h3, .p-recit h4, .chat-msg.assistant h3, .chat-msg.assistant h4 {
  margin: .9em 0 .35em; font-size: 1em; color: var(--k-title);
}
.p-recit code, .chat-msg.assistant code {
  background: rgba(255, 255, 255, .07);
  border-radius: 6px; padding: .05em .35em;
  font-family: var(--k-mono); font-size: .85em;
}
.p-recit table, .chat-msg.assistant table {
  border-collapse: collapse; margin: .5em 0 .8em; font-size: .85em; width: 100%;
}
.p-recit th, .p-recit td, .chat-msg.assistant th, .chat-msg.assistant td {
  border: 1px solid var(--k-input-border); padding: .3rem .55rem; text-align: left;
}
.p-recit th, .chat-msg.assistant th { color: var(--muted); font-weight: 600; }

/* ── diagnostic (markup rail.js, intouché — stylé par :has) ── */
.diag-summary { margin-bottom: 1rem; font-size: .82rem; color: var(--muted); }
.diag-conf { font-weight: 700; }
.conf-high { color: var(--accent); } .conf-moderate { color: var(--warn); } .conf-low { color: var(--danger); } .conf-na { color: var(--muted); }
.diag-caveat { color: var(--muted); font-size: .78rem; margin: .3rem 0 0; }
.diag-rule {
  display: flex; gap: .8rem; align-items: flex-start;
  padding: .8rem .95rem; margin-bottom: .6rem;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(190, 240, 215, .14);
  border-radius: 15px;
}
/* pastille de sévérité : l'icône emoji de rail.js est remplacée par le point
   lumineux du design (l'info couleur est portée par le badge .sev-*) */
.diag-rule-ic { font-size: 0; line-height: 0; }
.diag-rule-ic::before {
  content: ""; display: block; width: 10px; height: 10px; border-radius: 50%;
  margin-top: 7px; background: rgba(233, 246, 238, .3);
}
.diag-rule:has(.sev-ok)     { background: rgba(84, 219, 164, .06);  border-color: rgba(84, 219, 164, .22); }
.diag-rule:has(.sev-leger)  { background: rgba(255, 210, 122, .06); border-color: rgba(255, 210, 122, .24); }
.diag-rule:has(.sev-modere) { background: rgba(255, 171, 94, .07);  border-color: rgba(255, 171, 94, .26); }
.diag-rule:has(.sev-severe) { background: rgba(255, 122, 143, .07); border-color: rgba(255, 122, 143, .26); }
.diag-rule:has(.sev-ok)     .diag-rule-ic::before { background: var(--k-sev-ok);     box-shadow: 0 0 10px rgba(84, 219, 164, .6); }
.diag-rule:has(.sev-leger)  .diag-rule-ic::before { background: var(--k-sev-leger);  box-shadow: 0 0 10px rgba(255, 210, 122, .6); }
.diag-rule:has(.sev-modere) .diag-rule-ic::before { background: var(--k-sev-modere); box-shadow: 0 0 10px rgba(255, 171, 94, .6); }
.diag-rule:has(.sev-severe) .diag-rule-ic::before { background: var(--k-sev-severe); box-shadow: 0 0 10px rgba(255, 122, 143, .6); }
.diag-rule-body { flex: 1; min-width: 0; }
.diag-rule-name { font-size: .9rem; font-weight: 700; color: var(--k-title); line-height: 1.4; }
.diag-rule-name .rid { color: rgba(233, 246, 238, .4); font-weight: 400; font-family: var(--k-mono); font-size: .68rem; }
.diag-prio1-flag { color: var(--warn); font-family: var(--k-mono); font-size: .68rem; font-weight: 400; }
.diag-rule-interp { color: rgba(233, 246, 238, .64); font-size: .84rem; line-height: 1.5; margin-top: .25rem; }
.diag-badge {
  font-family: var(--k-mono); font-size: .62rem;
  letter-spacing: .08em; text-transform: uppercase;
  padding: .2rem .5rem; border-radius: 6px; white-space: nowrap;
}
.sev-ok     { background: rgba(84, 219, 164, .14);  color: var(--k-sev-ok); }
.sev-leger  { background: rgba(255, 210, 122, .14); color: var(--k-sev-leger); }
.sev-modere { background: rgba(255, 171, 94, .16);  color: var(--k-sev-modere); }
.sev-severe { background: rgba(255, 122, 143, .16); color: var(--k-sev-severe); }
.sev-na     { background: rgba(255, 255, 255, .06); color: var(--muted); }
.diag-band { display: block; text-align: right; color: var(--muted); font-size: .65rem; margin-top: .25rem; }
.diag-section-title {
  font-family: var(--k-mono); font-weight: 400;
  font-size: .68rem; letter-spacing: .16em; text-transform: uppercase;
  color: rgba(233, 246, 238, .5);
  margin: 1.2rem 0 .5rem;
}
.diag-causal {
  margin: 0; padding-left: 1.1rem;
  color: rgba(233, 246, 238, .56);
  font-family: var(--k-mono); font-size: .73rem; line-height: 1.7;
}
.diag-causal .arr { color: var(--warn); }
.diag-deferred { color: var(--muted); font-size: .7rem; margin-top: 1rem; }

/* ── progression ── */
.p-session {
  display: flex; justify-content: space-between; gap: .6rem; align-items: center;
  padding: .65rem .9rem; margin-bottom: .5rem;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(190, 240, 215, .12);
  border-radius: 14px;
  font-size: .85rem; flex-wrap: wrap;
}
.p-session .p-sess-date { color: rgba(233, 246, 238, .8); font-family: var(--k-mono); font-size: .75rem; }
.p-history-tools { display: flex; gap: .5rem; flex-wrap: wrap; }

/* ── v1 / pricing ── */
.p-v1 {
  position: relative; overflow: hidden;
  text-align: center;
  border-color: rgba(84, 219, 164, .35);
}
.p-v1::before {
  content: ""; position: absolute; right: -60px; top: -80px;
  width: 320px; height: 320px; border-radius: 50%;
  background: radial-gradient(circle, rgba(84, 219, 164, .18), transparent 70%);
  filter: blur(30px);
  pointer-events: none;
}
.p-v1 > * { position: relative; }
.p-v1 h2 { font-family: var(--k-serif); font-weight: 400; font-size: 1.7rem; line-height: 1.15; }
.p-v1 .p-sub { margin-left: auto; margin-right: auto; }
.p-price { margin: 1rem 0 1.2rem; }
.p-price-amount { font-size: 2.4rem; font-weight: 800; color: var(--k-title); letter-spacing: -.02em; }
.p-price-per { font-size: 1rem; color: var(--muted); font-weight: 400; }
.p-price-note { display: block; color: var(--k-green-soft); font-size: .85rem; margin-top: .3rem; }
.p-price-hint { display: block; margin-top: .25rem; }
/* Bloc prix sur 2 colonnes : prix à gauche, lien « naissance d'Enne » à droite
   (additif, classes nouvelles). Empilement vertical sous 760 px. */
.p-price-row {
  display: flex; align-items: center; justify-content: space-between;
  gap: 1rem 2rem; flex-wrap: wrap; text-align: left;
  margin: 1rem 0 1.2rem;
}
.p-price-row .p-price { margin: 0; }
.p-price-cta {
  margin: 0; max-width: 24ch;
  font-size: .92rem; line-height: 1.5;
  color: rgba(233, 246, 238, .72);
}
.p-price-cta a { color: var(--accent); text-decoration: none; font-weight: 600; }
.p-price-cta a:hover { text-decoration: underline; }
@media (max-width: 760px) {
  .p-price-row { flex-direction: column; align-items: flex-start; gap: .8rem; }
}
/* Signature display de la page « Notre mission » (apropos.html, M13) — Garamond,
   à la « Think different ». EB Garamond chargé sur cette page uniquement. */
body.proto .p-tagline {
  font-family: 'EB Garamond', Garamond, 'Times New Roman', serif;
  font-style: normal; font-weight: 500;
  font-size: 1.5rem; line-height: 1.3;
  color: var(--k-title);
  text-align: center;
  margin: 2.6rem 0 .4rem;
}
.p-interest { display: flex; gap: .55rem; flex-wrap: wrap; justify-content: center; }
.p-interest input[type="email"] { flex: 1; min-width: 12rem; width: auto; }
.p-interest .p-cta { width: auto; margin: 0; }
.p-consent { display: flex; gap: .5rem; align-items: flex-start; justify-content: center; font-size: .75rem; color: var(--muted); margin-top: .9rem; text-align: left; }
.p-consent a { color: var(--muted); }
body.proto input[type="checkbox"] { accent-color: var(--primary); }
.p-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }

/* ── footer ── */
.p-footer {
  text-align: center; color: var(--muted); font-size: .8rem; line-height: 1.65;
  margin-top: 2.5rem; padding-top: 1.6rem;
  border-top: 1px solid rgba(190, 240, 215, .1);
}
.p-footer a { color: var(--muted); }
.p-footer .fi-accent { color: rgba(123, 227, 180, .7); font-style: italic; }

/* ── pages légales (/legal, /apropos) : version sobre du thème ── */
.p-legal .p-card {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  background: rgba(255, 255, 255, .04);
  box-shadow: none;
}
.p-legal-title { font-family: var(--k-serif); font-weight: 400; font-size: 1.9rem; color: var(--k-title); margin: 1.4rem 0 .4rem; }
.p-legal section { scroll-margin-top: 5rem; }
.p-legal h2 { font-size: 1.25rem; }
.p-legal h3 { font-size: .95rem; margin: 1.2rem 0 .4rem; color: var(--k-title); }
.p-legal p, .p-legal li { font-size: .9rem; line-height: 1.65; color: rgba(233, 246, 238, .78); }
.p-legal ul { padding-left: 1.2rem; }
.p-legal .p-todo { color: var(--warn); font-weight: 700; }
a.p-wordmark { color: var(--text); text-decoration: none; }

/* ── modale limite atteinte (429 → conversion email) ── */
.rl-overlay {
  position: fixed; inset: 0; z-index: 1000;
  background: rgba(3, 10, 7, .72);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  display: flex; align-items: center; justify-content: center; padding: 1rem;
}
.rl-overlay[hidden] { display: none; }
.rl-modal {
  position: relative; max-width: 26rem; width: 100%; margin: 0; text-align: center;
  background: rgba(10, 28, 20, .92);
}
.rl-modal h2 { font-size: 1.15rem; padding-right: 1.4rem; }
.rl-modal .p-sub { font-size: .9rem; margin-left: auto; margin-right: auto; }
.rl-close {
  position: absolute; top: .45rem; right: .55rem;
  background: none; border: none; color: var(--muted);
  font-size: 1.5rem; line-height: 1; cursor: pointer; padding: .2rem .4rem;
}
.rl-close:hover { color: var(--text); }

/* ── responsive ── */
@media (max-width: 760px) {
  /* perf bas de gamme : verre allégé, brume coupée */
  .p-card, .p-header {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .p-card { background: rgba(9, 24, 17, .82); }
  .p-header { background: rgba(6, 18, 13, .9); }
  .rl-overlay { backdrop-filter: none; -webkit-backdrop-filter: none; }
  .k-fog, .k-haze, .k-glow-aurora { display: none; }
  .k-glow-moon { filter: blur(18px); }
  .k-moon { width: 64px; height: 64px; right: 9%; top: 76px; }
  .p-hero { min-height: 0; padding: 3.2rem 0 3rem; }
}
@media (max-width: 480px) {
  .p-card { padding: 1.1rem; border-radius: 20px; }
  .p-tabs { width: 100%; overflow-x: auto; }
  .p-tab { padding: .55rem .8rem; }
  .p-hero .p-cta { width: 100%; }
  .diag-rule { padding: .7rem .75rem; gap: .6rem; }
}

/* ── accessibilité : ambiance coupée si l'utilisateur le demande ── */
@media (prefers-reduced-motion: reduce) {
  .k-atmo *, .p-hero .p-kicker, .p-hero h1, .p-hero .p-sub,
  .p-recit.is-streaming::after, .p-cta {
    animation: none !important;
    transition: none !important;
  }
  .k-stars { opacity: .7; }
  .k-ff { display: none; }
}
/* ── Décor généré (algorithme spruceForest du prototype, seeds 149/11/53) ── */
.k-forest-far  { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320' preserveAspectRatio='none'%3E%3Cpath fill='%230e261c' d='M835 285Q838 277 840 272Q841 277 844 285ZM833 293Q837 285 840 280Q842 285 846 293ZM830 301Q837 293 840 287Q843 293 849 301ZM827 309Q836 301 840 295Q843 301 852 309ZM838 312V296H842V312ZM21 258Q27 242 29 230Q32 242 38 258ZM15 274Q25 258 29 246Q34 258 44 274ZM10 290Q23 274 29 262Q36 274 49 290ZM4 306Q21 290 29 278Q38 290 55 306ZM27 312V279H31V312ZM531 280Q535 270 536 263Q538 270 542 280ZM528 289Q533 279 536 272Q539 279 545 289ZM524 299Q532 289 536 282Q540 289 548 299ZM521 308Q531 299 536 292Q541 299 552 308ZM534 312V292H538V312ZM1009 263Q1015 248 1017 238Q1020 248 1025 263ZM1005 278Q1013 263 1017 252Q1021 263 1030 278ZM1000 292Q1012 277 1017 267Q1023 277 1035 292ZM995 306Q1010 292 1017 281Q1025 292 1040 306ZM1015 312V282H1019V312ZM1247 262Q1252 248 1255 237Q1257 248 1262 262ZM1242 277Q1251 262 1255 251Q1259 262 1267 277ZM1238 292Q1249 277 1255 266Q1260 277 1272 292ZM1233 306Q1248 292 1255 281Q1262 292 1277 306ZM1253 312V282H1257V312ZM222 252Q227 234 230 221Q233 234 238 252ZM217 270Q226 252 230 239Q234 252 243 270ZM211 287Q224 269 230 256Q236 269 248 287ZM206 305Q222 287 230 274Q237 287 254 305ZM228 312V276H232V312ZM614 266Q619 252 622 242Q624 252 629 266ZM609 279Q618 265 622 255Q626 265 634 279ZM604 293Q616 279 622 269Q627 279 639 293ZM600 307Q615 293 622 283Q629 293 644 307ZM620 312V284H624V312ZM382 267Q387 253 389 243Q390 253 395 267ZM379 280Q385 266 389 257Q392 266 398 280ZM375 293Q384 280 389 270Q393 280 402 293ZM371 307Q383 293 389 283Q394 293 406 307ZM387 312V285H391V312ZM823 269Q827 257 829 247Q832 257 836 269ZM818 282Q826 269 829 260Q833 269 841 282ZM814 295Q825 282 829 273Q834 282 845 295ZM810 307Q823 294 829 285Q836 294 849 307ZM827 312V286H831V312ZM789 266Q794 253 796 243Q799 253 804 266ZM785 280Q793 266 796 256Q800 266 808 280ZM781 293Q791 280 796 270Q802 280 812 293ZM776 307Q790 293 796 283Q803 293 817 307ZM794 312V284H798V312ZM518 268Q523 255 525 245Q526 255 531 268ZM515 281Q521 268 525 258Q528 268 534 281ZM511 294Q520 281 525 271Q529 281 538 294ZM507 307Q519 294 525 284Q530 294 542 307ZM523 312V285H527V312ZM1335 275Q1339 264 1341 256Q1343 264 1346 275ZM1332 286Q1338 275 1341 267Q1344 275 1350 286ZM1329 297Q1337 286 1341 278Q1345 286 1353 297ZM1325 308Q1336 297 1341 289Q1346 297 1357 308ZM1339 312V290H1343V312ZM1388 271Q1393 258 1395 249Q1397 258 1402 271ZM1384 283Q1391 271 1395 262Q1399 271 1407 283ZM1379 295Q1390 283 1395 274Q1400 283 1411 295ZM1375 307Q1389 295 1395 286Q1402 295 1416 307ZM1393 312V287H1397V312ZM1396 271Q1400 259 1402 250Q1404 259 1409 271ZM1392 283Q1399 271 1402 262Q1406 271 1413 283ZM1387 295Q1397 283 1402 274Q1407 283 1417 295ZM1383 307Q1396 295 1402 286Q1408 295 1421 307ZM1400 312V287H1404V312ZM277 286Q279 278 281 272Q282 278 285 286ZM274 294Q279 286 281 280Q283 286 287 294ZM271 301Q278 293 281 288Q284 293 290 301ZM269 309Q277 301 281 296Q284 301 292 309ZM279 312V296H283V312ZM347 279Q350 270 351 262Q353 270 355 279ZM345 289Q349 279 351 272Q353 279 358 289ZM342 299Q348 289 351 282Q354 289 361 299ZM339 308Q347 299 351 291Q355 299 363 308ZM349 312V292H353V312ZM824 254Q830 237 832 225Q835 237 841 254ZM818 271Q828 254 832 242Q837 254 847 271ZM813 288Q826 271 832 259Q839 271 852 288ZM807 305Q824 288 832 276Q841 288 858 305ZM830 312V277H834V312ZM1073 274Q1077 262 1079 254Q1081 262 1085 274ZM1069 285Q1076 273 1079 265Q1082 273 1089 285ZM1065 296Q1074 285 1079 277Q1083 285 1093 296ZM1061 308Q1073 296 1079 288Q1084 296 1096 308ZM1077 312V289H1081V312ZM600 263Q605 248 607 238Q609 248 614 263ZM596 277Q603 263 607 252Q610 263 618 277ZM591 292Q602 277 607 267Q612 277 622 292ZM587 306Q600 292 607 281Q613 292 627 306ZM605 312V282H609V312ZM977 259Q983 243 985 231Q988 243 993 259ZM972 274Q981 258 985 247Q989 258 998 274ZM967 290Q979 274 985 263Q991 274 1003 290ZM962 306Q978 290 985 278Q992 290 1008 306ZM983 312V280H987V312ZM792 273Q796 261 798 252Q800 261 804 273ZM789 284Q795 272 798 264Q801 272 807 284ZM785 296Q794 284 798 276Q802 284 811 296ZM782 308Q793 296 798 287Q803 296 814 308ZM796 312V288H800V312ZM737 263Q742 248 744 238Q746 248 751 263ZM733 277Q740 263 744 252Q747 263 755 277ZM728 292Q739 277 744 267Q749 277 759 292ZM724 306Q737 292 744 281Q750 292 764 306ZM742 312V282H746V312ZM0 308H1440V320H0Z'/%3E%3C/svg%3E"); opacity: .8; }
.k-forest-mid  { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320' preserveAspectRatio='none'%3E%3Cpath fill='%230a1f17' d='M246 239Q254 217 258 201Q262 217 270 239ZM238 260Q252 239 258 223Q265 239 278 260ZM231 282Q249 260 258 244Q267 260 286 282ZM223 304Q247 282 258 266Q269 282 293 304ZM256 312V268H260V312ZM515 252Q521 233 524 220Q527 233 534 252ZM509 269Q520 251 524 238Q529 251 540 269ZM504 287Q518 269 524 256Q531 269 545 287ZM498 305Q516 287 524 274Q533 287 551 305ZM522 312V275H526V312ZM661 235Q670 211 674 195Q679 211 687 235ZM653 257Q668 234 674 218Q681 234 696 257ZM645 280Q665 257 674 240Q684 257 704 280ZM637 303Q662 280 674 263Q686 280 712 303ZM672 312V265H676V312ZM1353 225Q1362 199 1366 180Q1370 199 1378 225ZM1346 251Q1359 225 1366 206Q1372 225 1386 251ZM1338 276Q1357 250 1366 232Q1375 250 1394 276ZM1330 302Q1354 276 1366 257Q1377 276 1401 302ZM1364 312V259H1368V312ZM437 232Q446 208 451 191Q455 208 464 232ZM428 256Q444 232 451 214Q458 232 473 256ZM420 279Q441 255 451 238Q461 255 481 279ZM411 303Q438 279 451 262Q463 279 490 303ZM449 312V264H453V312ZM771 261Q775 245 777 234Q779 245 784 261ZM766 276Q774 261 777 249Q781 261 788 276ZM762 291Q772 276 777 265Q782 276 792 291ZM758 306Q771 291 777 280Q783 291 796 306ZM775 312V281H779V312ZM15 233Q23 210 27 193Q31 210 40 233ZM7 256Q21 233 27 216Q34 233 48 256ZM-1 280Q18 256 27 239Q36 256 56 280ZM-9 303Q16 279 27 262Q39 279 63 303ZM25 312V264H29V312ZM734 245Q740 225 743 211Q746 225 752 245ZM729 265Q739 245 743 231Q748 245 758 265ZM723 285Q737 265 743 250Q750 265 763 285ZM717 304Q735 285 743 270Q751 285 769 304ZM741 312V272H745V312ZM1175 253Q1181 236 1184 223Q1187 236 1193 253ZM1170 271Q1179 253 1184 240Q1188 253 1198 271ZM1164 288Q1178 270 1184 258Q1190 270 1203 288ZM1159 305Q1176 288 1184 275Q1192 288 1209 305ZM1182 312V276H1186V312ZM784 257Q789 240 792 228Q794 240 800 257ZM779 273Q788 257 792 245Q796 257 805 273ZM773 289Q786 273 792 261Q798 273 810 289ZM768 306Q784 289 792 277Q799 289 815 306ZM790 312V279H794V312ZM286 257Q291 240 293 228Q295 240 300 257ZM281 273Q289 257 293 245Q297 257 304 273ZM277 289Q288 273 293 261Q298 273 309 289ZM272 306Q286 289 293 277Q299 289 313 306ZM291 312V279H295V312ZM168 231Q175 207 178 190Q182 207 189 231ZM162 255Q173 231 178 214Q184 231 195 255ZM155 279Q171 255 178 237Q186 255 201 279ZM149 303Q169 279 178 261Q188 279 208 303ZM176 312V263H180V312ZM1184 266Q1188 252 1190 242Q1192 252 1196 266ZM1180 280Q1187 266 1190 256Q1193 266 1200 280ZM1176 293Q1186 279 1190 269Q1194 279 1204 293ZM1172 307Q1184 293 1190 283Q1196 293 1208 307ZM1188 312V284H1192V312ZM289 272Q293 260 295 252Q297 260 302 272ZM285 284Q292 272 295 264Q299 272 306 284ZM281 296Q291 284 295 275Q300 284 309 296ZM277 307Q290 296 295 287Q301 296 313 307ZM293 312V288H297V312ZM685 244Q692 223 695 208Q698 223 705 244ZM679 264Q690 243 695 229Q700 243 711 264ZM673 284Q688 264 695 249Q702 264 717 284ZM667 304Q686 284 695 269Q704 284 723 304ZM693 312V271H697V312ZM900 263Q904 249 906 238Q908 249 912 263ZM897 278Q903 263 906 253Q909 263 916 278ZM893 292Q902 278 906 267Q911 278 920 292ZM889 306Q901 292 906 281Q912 292 923 306ZM904 312V282H908V312ZM1293 245Q1300 225 1303 210Q1306 225 1313 245ZM1287 265Q1298 245 1303 230Q1308 245 1319 265ZM1280 285Q1296 265 1303 250Q1310 265 1325 285ZM1274 304Q1294 284 1303 270Q1312 284 1332 304ZM1301 312V271H1305V312ZM0 308H1440V320H0Z'/%3E%3C/svg%3E"); opacity: .95; }
.k-forest-near { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320' preserveAspectRatio='none'%3E%3Cpath fill='%23050f0a' d='M997 237Q1005 214 1009 198Q1014 214 1022 237ZM989 259Q1003 236 1009 220Q1016 236 1030 259ZM981 281Q1000 259 1009 242Q1019 259 1038 281ZM973 303Q998 281 1009 265Q1021 281 1046 303ZM1007 312V266H1011V312ZM783 252Q788 235 790 222Q793 235 798 252ZM778 270Q786 252 790 239Q794 252 803 270ZM773 288Q785 270 790 257Q796 270 807 288ZM768 305Q783 287 790 275Q797 287 812 305ZM788 312V276H792V312ZM1078 229Q1087 204 1091 186Q1095 204 1104 229ZM1069 253Q1084 228 1091 210Q1098 228 1113 253ZM1061 278Q1081 253 1091 235Q1101 253 1121 278ZM1052 303Q1079 278 1091 260Q1103 278 1130 303ZM1089 312V262H1093V312ZM588 258Q594 242 596 230Q599 242 605 258ZM583 274Q592 258 596 246Q601 258 610 274ZM578 290Q591 274 596 262Q602 274 615 290ZM573 306Q589 290 596 278Q604 290 620 306ZM594 312V279H598V312ZM82 215Q93 186 98 165Q104 186 115 215ZM71 244Q90 215 98 194Q107 215 125 244ZM61 272Q86 243 98 223Q110 243 136 272ZM51 301Q83 272 98 251Q114 272 146 301ZM96 312V253H100V312ZM1316 225Q1324 199 1328 180Q1332 199 1341 225ZM1308 250Q1322 224 1328 205Q1335 224 1349 250ZM1300 276Q1319 250 1328 231Q1337 250 1356 276ZM1293 302Q1317 276 1328 257Q1340 276 1364 302ZM1326 312V259H1330V312ZM1090 211Q1100 181 1104 160Q1109 181 1119 211ZM1081 241Q1097 211 1104 189Q1112 211 1128 241ZM1072 271Q1094 241 1104 219Q1115 241 1137 271ZM1063 301Q1091 271 1104 249Q1118 271 1146 301ZM1102 312V251H1106V312ZM45 231Q54 206 58 189Q63 206 72 231ZM36 255Q51 230 58 213Q66 230 81 255ZM27 279Q48 254 58 237Q68 254 90 279ZM19 303Q46 278 58 261Q71 278 98 303ZM56 312V263H60V312ZM188 244Q194 224 196 209Q199 224 205 244ZM182 264Q192 244 196 229Q201 244 211 264ZM176 284Q190 264 196 249Q203 264 217 284ZM171 304Q188 284 196 269Q205 284 222 304ZM194 312V271H198V312ZM1208 200Q1220 166 1225 142Q1231 166 1242 200ZM1198 233Q1216 199 1225 175Q1234 199 1253 233ZM1187 266Q1213 233 1225 208Q1238 233 1264 266ZM1176 299Q1210 266 1225 241Q1241 266 1274 299ZM1223 312V244H1227V312ZM841 259Q845 243 848 231Q850 243 854 259ZM837 275Q844 259 848 247Q851 259 858 275ZM833 290Q843 274 848 263Q852 274 862 290ZM828 306Q841 290 848 279Q854 290 867 306ZM846 312V280H850V312ZM-17 237Q-9 215 -5 198Q0 215 8 237ZM-25 259Q-11 237 -5 221Q2 237 16 259ZM-33 281Q-14 259 -5 243Q5 259 24 281ZM-41 303Q-16 281 -5 265Q7 281 32 303ZM-7 312V267H-3V312ZM105 236Q113 213 117 197Q121 213 129 236ZM97 258Q110 236 117 219Q123 236 136 258ZM90 281Q108 258 117 242Q125 258 144 281ZM82 303Q106 281 117 264Q128 281 151 303ZM115 312V266H119V312ZM0 308H1440V320H0Z'/%3E%3C/svg%3E"); }
.k-stars-a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cg fill='%23dff2e9' fill-opacity='.9'%3E%3Ccircle cx='334' cy='53' r='0.9'/%3E%3Ccircle cx='1158' cy='229' r='1.1'/%3E%3Ccircle cx='910' cy='172' r='1.2'/%3E%3Ccircle cx='537' cy='259' r='0.9'/%3E%3Ccircle cx='1433' cy='193' r='1.3'/%3E%3Ccircle cx='1408' cy='252' r='1.2'/%3E%3Ccircle cx='994' cy='224' r='0.8'/%3E%3Ccircle cx='250' cy='104' r='1.2'/%3E%3Ccircle cx='1334' cy='186' r='1.1'/%3E%3Ccircle cx='835' cy='113' r='1.2'/%3E%3Ccircle cx='1194' cy='83' r='0.7'/%3E%3Ccircle cx='303' cy='194' r='1.3'/%3E%3Ccircle cx='534' cy='251' r='0.7'/%3E%3C/g%3E%3C/svg%3E"); }
.k-stars-b { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cg fill='%23dff2e9' fill-opacity='.8'%3E%3Ccircle cx='238' cy='206' r='1.1'/%3E%3Ccircle cx='514' cy='203' r='1.2'/%3E%3Ccircle cx='1307' cy='103' r='1.1'/%3E%3Ccircle cx='113' cy='279' r='1.3'/%3E%3Ccircle cx='231' cy='35' r='1.2'/%3E%3Ccircle cx='399' cy='39' r='1.6'/%3E%3Ccircle cx='1132' cy='159' r='0.9'/%3E%3Ccircle cx='347' cy='272' r='0.9'/%3E%3Ccircle cx='1225' cy='217' r='1.7'/%3E%3Ccircle cx='131' cy='277' r='1.3'/%3E%3Ccircle cx='1377' cy='141' r='1.7'/%3E%3Ccircle cx='1076' cy='296' r='0.9'/%3E%3C/g%3E%3C/svg%3E"); }
.k-stars-c { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cg fill='%23dff2e9' fill-opacity='.7'%3E%3Ccircle cx='801' cy='210' r='0.8'/%3E%3Ccircle cx='605' cy='69' r='1.3'/%3E%3Ccircle cx='61' cy='131' r='1.1'/%3E%3Ccircle cx='1154' cy='265' r='1.4'/%3E%3Ccircle cx='345' cy='127' r='1.0'/%3E%3Ccircle cx='1260' cy='55' r='1.1'/%3E%3Ccircle cx='53' cy='82' r='1.1'/%3E%3Ccircle cx='686' cy='69' r='0.9'/%3E%3Ccircle cx='359' cy='66' r='1.3'/%3E%3Ccircle cx='27' cy='49' r='1.0'/%3E%3C/g%3E%3C/svg%3E"); }
