[data-rpf-farines-tool] {
  --rpf-olive: #747b2d;
  --rpf-olive-deep: #5a6220;
  --rpf-olive-soft: #edf0dc;
  --rpf-ink: #302d26;
  --rpf-muted: #70695d;
  --rpf-line: #e6ddcf;
  --rpf-sand: #fbf7f0;
  --rpf-paper: #fffdf9;
  --rpf-wheat: #c89559;
  --rpf-wheat-soft: #f3e4cf;
  --rpf-rust: #9d6849;
  --rpf-shadow: 0 12px 34px rgba(65, 51, 30, 0.08);
  --rpf-space-1: 0.35rem;
  --rpf-space-2: 0.55rem;
  --rpf-space-3: 0.8rem;
  --rpf-space-4: 1rem;
  --rpf-space-5: 1.4rem;
  --rpf-space-6: 2rem;
  --rpf-bread-illustration-zone: 8rem;
  --rpf-guide-illustration-zone: 13.75rem;
  box-sizing: border-box;
  color: var(--rpf-ink);
  font-family: inherit;
  line-height: 1.55;
  width: min(1180px, calc(100vw - 32px));
  max-width: none;
  margin: 2rem 0;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

[data-rpf-farines-tool] *,
[data-rpf-farines-tool] *::before,
[data-rpf-farines-tool] *::after {
  box-sizing: inherit;
}

[data-rpf-farines-tool] button,
[data-rpf-farines-tool] input,
[data-rpf-farines-tool] select {
  font: inherit;
}

[data-rpf-farines-tool] button,
[data-rpf-farines-tool] a {
  -webkit-tap-highlight-color: transparent;
}

[data-rpf-farines-tool] button {
  border: 0;
  cursor: pointer;
}

[data-rpf-farines-tool] button:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

[data-rpf-farines-tool] button:focus-visible,
[data-rpf-farines-tool] a:focus-visible,
[data-rpf-farines-tool] input:focus-visible,
[data-rpf-farines-tool] select:focus-visible,
[data-rpf-farines-tool] summary:focus-visible {
  outline: 3px solid rgba(116, 123, 45, 0.48);
  outline-offset: 3px;
}

[data-rpf-farines-tool] [hidden] {
  display: none !important;
}

[data-rpf-farines-tool] .rpf-shell {
  overflow: hidden;
  border: 1px solid var(--rpf-line);
  border-radius: 28px;
  background: var(--rpf-paper);
  box-shadow: var(--rpf-shadow);
}

[data-rpf-farines-tool] .rpf-heading,
[data-rpf-farines-tool] .rpf-section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.8fr);
  gap: 2rem;
  align-items: end;
  padding: 2.5rem 2.5rem 1.8rem;
}

[data-rpf-farines-tool] .rpf-heading {
  background: var(--rpf-sand);
}

[data-rpf-farines-tool] .rpf-kicker,
[data-rpf-farines-tool] .rpf-panel-kicker,
[data-rpf-farines-tool] .rpf-result-eyebrow {
  margin: 0 0 0.45rem;
  color: var(--rpf-olive-deep);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

[data-rpf-farines-tool] h2,
[data-rpf-farines-tool] h3,
[data-rpf-farines-tool] h4,
[data-rpf-farines-tool] p {
  margin-top: 0;
}

[data-rpf-farines-tool] h2 {
  max-width: 650px;
  margin-bottom: 0;
  font-size: clamp(1.65rem, 3vw, 2.5rem);
  line-height: 1.08;
  letter-spacing: -0.025em;
}

[data-rpf-farines-tool] h3 {
  margin-bottom: 0.55rem;
  font-size: clamp(1.12rem, 2vw, 1.45rem);
  line-height: 1.18;
}

[data-rpf-farines-tool] h4 {
  margin-bottom: 0.65rem;
  font-size: 1rem;
  line-height: 1.25;
}

[data-rpf-farines-tool] p {
  color: var(--rpf-muted);
}

[data-rpf-farines-tool] .rpf-heading-note,
[data-rpf-farines-tool] .rpf-section-heading > p {
  margin-bottom: 0;
  font-size: 0.91rem;
}

[data-rpf-farines-tool] .rpf-mode-nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  border-bottom: 1px solid var(--rpf-line);
  background: var(--rpf-line);
}

[data-rpf-farines-tool] .rpf-mode-button {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
  min-height: 76px;
  padding: 0.9rem 1.3rem;
  color: var(--rpf-muted);
  text-align: left;
  background: var(--rpf-sand);
  transition: color 160ms ease, background-color 160ms ease;
}

[data-rpf-farines-tool] .rpf-mode-button:hover,
[data-rpf-farines-tool] .rpf-mode-button.rpf-is-active {
  color: var(--rpf-ink);
  background: var(--rpf-paper);
}

[data-rpf-farines-tool] .rpf-mode-button.rpf-is-active {
  box-shadow: inset 0 -3px 0 var(--rpf-olive);
}

[data-rpf-farines-tool] .rpf-mode-button:focus-visible {
  outline-offset: -3px;
}

[data-rpf-farines-tool] .rpf-mode-number {
  display: grid;
  width: 44px;
  min-height: 2.4rem;
  place-items: center;
  color: var(--rpf-olive);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
}

[data-rpf-farines-tool] .rpf-mode-button strong,
[data-rpf-farines-tool] .rpf-mode-button small {
  display: block;
}

[data-rpf-farines-tool] .rpf-mode-button strong {
  font-size: 0.9rem;
}

[data-rpf-farines-tool] .rpf-mode-button small {
  margin-top: 0.15rem;
  color: var(--rpf-muted);
  font-size: 0.75rem;
}

[data-rpf-farines-tool] .rpf-panel {
  padding: 2rem 2.5rem 2.5rem;
  animation: rpf-fade-in 220ms ease both;
}

[data-rpf-farines-tool] .rpf-panel-intro {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 1.6rem;
}

[data-rpf-farines-tool] .rpf-panel-intro > p {
  max-width: 390px;
  margin-bottom: 0;
  font-size: 0.9rem;
}

[data-rpf-farines-tool] .rpf-progress {
  max-width: 650px;
  margin: 0 auto 1.8rem;
}

[data-rpf-farines-tool] .rpf-progress-label {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.45rem;
  color: var(--rpf-muted);
  font-size: 0.78rem;
  font-weight: 700;
}

[data-rpf-farines-tool] .rpf-progress-track,
[data-rpf-farines-tool] .rpf-score-track {
  overflow: hidden;
  height: 6px;
  border-radius: 999px;
  background: var(--rpf-olive-soft);
}

[data-rpf-farines-tool] .rpf-progress-track span,
[data-rpf-farines-tool] .rpf-score-track span {
  display: block;
  width: 25%;
  height: 100%;
  border-radius: inherit;
  background: var(--rpf-olive);
  transition: width 220ms ease;
}

[data-rpf-farines-tool] .rpf-fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

[data-rpf-farines-tool] legend {
  width: 100%;
  margin-bottom: 0.4rem;
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  font-weight: 750;
  line-height: 1.2;
}

[data-rpf-farines-tool] .rpf-field-intro {
  max-width: 760px;
  margin-bottom: 1.35rem;
  font-size: 0.9rem;
}

[data-rpf-farines-tool] .rpf-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--rpf-space-3);
}

[data-rpf-farines-tool] .rpf-card-grid-breads {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

[data-rpf-farines-tool] .rpf-card-grid-four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

[data-rpf-farines-tool] .rpf-card-grid-six {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

[data-rpf-farines-tool] .rpf-conditional-field {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid var(--rpf-line);
  border-radius: 14px;
  background: var(--rpf-sand);
}

[data-rpf-farines-tool] .rpf-conditional-field .rpf-fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

[data-rpf-farines-tool] .rpf-conditional-field .rpf-field-intro {
  margin-bottom: 0.85rem;
}

[data-rpf-farines-tool] .rpf-card-grid-outcomes {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

[data-rpf-farines-tool] .rpf-visual-card,
[data-rpf-farines-tool] .rpf-choice-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  cursor: pointer;
}

[data-rpf-farines-tool] .rpf-visual-card input,
[data-rpf-farines-tool] .rpf-choice-card input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

[data-rpf-farines-tool] .rpf-visual-card-body,
[data-rpf-farines-tool] .rpf-choice-card > span {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  justify-content: center;
  border: 1px solid var(--rpf-line);
  border-radius: 15px;
  background: var(--rpf-paper);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease, background-color 160ms ease;
}

[data-rpf-farines-tool] .rpf-visual-card-body {
  display: grid;
  grid-template-rows: var(--rpf-bread-illustration-zone) 2.5em 1fr;
  align-items: center;
  justify-items: center;
  flex: 1 1 auto;
  min-height: 100%;
  padding: 0.7rem 0.55rem 0.9rem;
  text-align: center;
}

[data-rpf-farines-tool] .rpf-choice-card > span {
  min-height: 82px;
  padding: 1rem;
}

[data-rpf-farines-tool] .rpf-visual-card:hover .rpf-visual-card-body,
[data-rpf-farines-tool] .rpf-choice-card:hover > span,
[data-rpf-farines-tool] .rpf-visual-card:focus-within .rpf-visual-card-body,
[data-rpf-farines-tool] .rpf-choice-card:focus-within > span {
  border-color: rgba(116, 123, 45, 0.58);
  box-shadow: 0 7px 18px rgba(65, 51, 30, 0.07);
}

[data-rpf-farines-tool] .rpf-visual-card input:checked + .rpf-visual-card-body,
[data-rpf-farines-tool] .rpf-choice-card input:checked + span {
  border-color: var(--rpf-olive);
  background: var(--rpf-olive-soft);
  box-shadow: 0 0 0 2px rgba(116, 123, 45, 0.15), 0 9px 22px rgba(65, 51, 30, 0.08);
  transform: translateY(-2px);
}

[data-rpf-farines-tool] .rpf-visual-card strong,
[data-rpf-farines-tool] .rpf-choice-card strong {
  color: var(--rpf-ink);
  font-size: 0.91rem;
  line-height: 1.25;
}

[data-rpf-farines-tool] .rpf-visual-card strong {
  display: flex;
  width: 100%;
  min-height: 2.5em;
  align-items: center;
  justify-content: center;
  margin: 0;
}

[data-rpf-farines-tool] .rpf-visual-card small,
[data-rpf-farines-tool] .rpf-choice-card small {
  display: block;
  width: 100%;
  align-self: start;
  margin-top: 0;
  color: var(--rpf-muted);
  font-size: 0.76rem;
  line-height: 1.32;
}

[data-rpf-farines-tool] .rpf-card-art {
  display: block;
  width: 100%;
  max-width: 116px;
  max-height: 67px;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

[data-rpf-farines-tool] .rpf-bread-fill {
  fill: #e5b875;
  stroke: #a96f3f;
  stroke-width: 1.5;
}

[data-rpf-farines-tool] .rpf-bread-fill-dark {
  fill: #be8650;
}

[data-rpf-farines-tool] .rpf-bread-shadow { fill: #d7c2a5; }
[data-rpf-farines-tool] .rpf-score { fill: none; stroke: #865b38; stroke-width: 2.1; stroke-linecap: round; }
[data-rpf-farines-tool] .rpf-seed,
[data-rpf-farines-tool] .rpf-topping { fill: #755c2f; }
[data-rpf-farines-tool] .rpf-dimple { fill: #bc8751; stroke: #875e39; stroke-width: 1; }

[data-rpf-farines-tool] .rpf-assistant-actions {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.7rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--rpf-line);
}

[data-rpf-farines-tool] .rpf-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-height: 46px;
  padding: 0.72rem 1.05rem;
  border-radius: 9px;
  font-size: 0.88rem;
  font-weight: 750;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

[data-rpf-farines-tool] .rpf-button:hover:not(:disabled) { transform: translateY(-1px); }
[data-rpf-farines-tool] .rpf-button-primary { color: #fff; background: var(--rpf-olive-deep); }
[data-rpf-farines-tool] .rpf-button-primary:hover:not(:disabled) { background: #4e5618; }
[data-rpf-farines-tool] .rpf-button-secondary { color: var(--rpf-olive-deep); border: 1px solid rgba(116, 123, 45, 0.48); background: transparent; }
[data-rpf-farines-tool] .rpf-button-secondary:hover:not(:disabled) { background: var(--rpf-olive-soft); }
[data-rpf-farines-tool] .rpf-button-text { min-height: 42px; padding-right: 0; padding-left: 0; color: var(--rpf-olive-deep); background: transparent; }

[data-rpf-farines-tool] .rpf-error {
  margin: 0.9rem 0 0;
  color: #9b3e2c;
  font-size: 0.86rem;
  font-weight: 700;
}

[data-rpf-farines-tool] .rpf-advanced {
  margin-top: 1.6rem;
  border: 1px solid var(--rpf-line);
  border-radius: 15px;
  background: var(--rpf-sand);
}

[data-rpf-farines-tool] .rpf-advanced summary {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.1rem;
  cursor: pointer;
  list-style: none;
}

[data-rpf-farines-tool] .rpf-advanced summary::-webkit-details-marker { display: none; }
[data-rpf-farines-tool] .rpf-advanced summary > span:first-child { display: block; }
[data-rpf-farines-tool] .rpf-advanced summary strong,
[data-rpf-farines-tool] .rpf-advanced summary small { display: block; }
[data-rpf-farines-tool] .rpf-advanced summary strong { font-size: 0.92rem; }
[data-rpf-farines-tool] .rpf-advanced summary small { margin-top: 0.18rem; color: var(--rpf-muted); font-size: 0.77rem; }
[data-rpf-farines-tool] .rpf-summary-icon { color: var(--rpf-olive); font-size: 1.3rem; line-height: 1; }
[data-rpf-farines-tool] .rpf-advanced[open] .rpf-summary-icon { transform: rotate(45deg); }
[data-rpf-farines-tool] .rpf-advanced-content { padding: 0 1.1rem 1.15rem; }
[data-rpf-farines-tool] .rpf-advanced-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
[data-rpf-farines-tool] .rpf-field-wide { grid-column: span 2; }
[data-rpf-farines-tool] .rpf-field { display: block; min-width: 0; }
[data-rpf-farines-tool] .rpf-label { display: block; margin-bottom: 0.35rem; color: var(--rpf-ink); font-size: 0.8rem; font-weight: 750; }
[data-rpf-farines-tool] .rpf-unit { color: var(--rpf-muted); font-weight: 500; }
[data-rpf-farines-tool] .rpf-input,
[data-rpf-farines-tool] .rpf-select {
  width: 100%;
  min-height: 45px;
  padding: 0.65rem 0.75rem;
  border: 1px solid #d8cdbd;
  border-radius: 8px;
  color: var(--rpf-ink);
  background: var(--rpf-paper);
}
[data-rpf-farines-tool] .rpf-field-hint { display: block; margin: 0.35rem 0 0; color: var(--rpf-muted); font-size: 0.74rem; }
[data-rpf-farines-tool] .rpf-advanced-note { margin: 1rem 0 0; padding-top: 0.85rem; border-top: 1px solid var(--rpf-line); font-size: 0.78rem; }

[data-rpf-farines-tool] .rpf-result,
[data-rpf-farines-tool] .rpf-inverse-result {
  margin-top: 1.8rem;
  padding: 1.45rem;
  border: 1px solid rgba(116, 123, 45, 0.26);
  border-radius: 18px;
  background: linear-gradient(135deg, #fffdf9 0%, #f8f8e9 100%);
  animation: rpf-result-in 300ms ease both;
}

[data-rpf-farines-tool] .rpf-result-heading,
[data-rpf-farines-tool] .rpf-compare-head {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  align-items: flex-start;
}

[data-rpf-farines-tool] .rpf-result-heading h3,
[data-rpf-farines-tool] .rpf-compare-head h3 { margin-bottom: 0.25rem; }
[data-rpf-farines-tool] .rpf-result-heading p { margin-bottom: 0; font-size: 0.86rem; }
[data-rpf-farines-tool] .rpf-score-wrap { width: 220px; flex: 0 0 220px; padding: 0.75rem; border: 1px solid var(--rpf-line); border-radius: 12px; background: rgba(255,255,255,0.6); }
[data-rpf-farines-tool] .rpf-score-wrap span,
[data-rpf-farines-tool] .rpf-score-wrap small { display: block; color: var(--rpf-muted); font-size: 0.71rem; }
[data-rpf-farines-tool] .rpf-score-wrap strong { display: block; margin: 0.15rem 0 0.55rem; font-size: 0.85rem; }
[data-rpf-farines-tool] .rpf-score-wrap small { margin-top: 0.45rem; }

[data-rpf-farines-tool] .rpf-result-grid,
[data-rpf-farines-tool] .rpf-inverse-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
  margin-top: 1rem;
}

[data-rpf-farines-tool] .rpf-inverse-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
[data-rpf-farines-tool] .rpf-result-card { min-width: 0; padding: 1rem; border: 1px solid var(--rpf-line); border-radius: 13px; background: rgba(255,255,255,0.7); }
[data-rpf-farines-tool] .rpf-result-card-highlight { border-color: rgba(116, 123, 45, 0.38); background: #f6f7e8; }
[data-rpf-farines-tool] .rpf-result-card-muted { background: #f8f4ee; }
[data-rpf-farines-tool] .rpf-result-card > p:last-child { margin-bottom: 0; }
[data-rpf-farines-tool] .rpf-compatibility { display: flex; align-items: center; gap: 0.65rem; margin-bottom: 0.85rem; }
[data-rpf-farines-tool] .rpf-compatibility-dot { width: 14px; height: 14px; flex: 0 0 14px; border-radius: 50%; background: var(--rpf-olive); box-shadow: 0 0 0 5px var(--rpf-olive-soft); }
[data-rpf-farines-tool] .rpf-level-possible .rpf-compatibility-dot { background: var(--rpf-wheat); box-shadow: 0 0 0 5px var(--rpf-wheat-soft); }
[data-rpf-farines-tool] .rpf-level-low .rpf-compatibility-dot { background: var(--rpf-rust); box-shadow: 0 0 0 5px #f3e2da; }
[data-rpf-farines-tool] .rpf-compatibility strong,
[data-rpf-farines-tool] .rpf-compatibility span { display: block; }
[data-rpf-farines-tool] .rpf-compatibility strong { font-size: 0.9rem; }
[data-rpf-farines-tool] .rpf-compatibility div span { color: var(--rpf-muted); font-size: 0.76rem; }
[data-rpf-farines-tool] .rpf-result-list { display: grid; gap: 0.65rem; margin: 0; padding: 0; list-style: none; }
[data-rpf-farines-tool] .rpf-result-list li { display: flex; flex-direction: column; gap: 0.12rem; padding-bottom: 0.65rem; border-bottom: 1px dashed var(--rpf-line); }
[data-rpf-farines-tool] .rpf-result-list li:last-child { padding-bottom: 0; border-bottom: 0; }
[data-rpf-farines-tool] .rpf-result-list li span { color: var(--rpf-muted); font-size: 0.8rem; }
[data-rpf-farines-tool] .rpf-result-list-reasons li { position: relative; padding-left: 1.1rem; color: var(--rpf-muted); font-size: 0.84rem; }
[data-rpf-farines-tool] .rpf-result-list-reasons li::before { position: absolute; top: 0.4em; left: 0; width: 6px; height: 6px; border-radius: 50%; background: var(--rpf-olive); content: ""; }
[data-rpf-farines-tool] .rpf-hydration-range { display: flex; align-items: baseline; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 0.55rem; }
[data-rpf-farines-tool] .rpf-hydration-range strong { color: var(--rpf-olive-deep); font-size: 1.2rem; }
[data-rpf-farines-tool] .rpf-hydration-range span { color: var(--rpf-muted); font-size: 0.76rem; }
[data-rpf-farines-tool] .rpf-result-card p,
[data-rpf-farines-tool] .rpf-caution-box p { font-size: 0.82rem; }
[data-rpf-farines-tool] .rpf-result-tip { margin-bottom: 0; padding: 0.65rem; border-left: 3px solid var(--rpf-olive); background: rgba(237, 240, 220, 0.65); }
[data-rpf-farines-tool] .rpf-mix-result { margin-top: 1rem; padding: 1rem; border: 1px dashed var(--rpf-wheat); border-radius: 13px; background: #fffaf0; }
[data-rpf-farines-tool] .rpf-mix-result h4 { margin-bottom: 0.3rem; }
[data-rpf-farines-tool] .rpf-mix-result p { margin-bottom: 0; font-size: 0.81rem; }
[data-rpf-farines-tool] .rpf-caution-box { margin-top: 1rem; padding: 0.9rem 1rem; border-left: 3px solid var(--rpf-rust); background: #fbf1eb; }
[data-rpf-farines-tool] .rpf-caution-box strong { font-size: 0.83rem; }
[data-rpf-farines-tool] .rpf-caution-box p { margin: 0.25rem 0 0; }
[data-rpf-farines-tool] .rpf-result-cta { display: flex; flex-wrap: wrap; gap: 0.65rem; margin-top: 1rem; }
[data-rpf-farines-tool] .rpf-result-actions { display: flex; align-items: center; gap: 1rem; margin-top: 0.9rem; }
[data-rpf-farines-tool] .rpf-empty-state { margin: 0; color: var(--rpf-muted); font-size: 0.9rem; }
[data-rpf-farines-tool] .rpf-flour-mark { display: grid; width: 70px; height: 70px; place-items: center; flex: 0 0 70px; border-radius: 50%; color: var(--rpf-olive-deep); background: var(--rpf-olive-soft); font-weight: 850; }

[data-rpf-farines-tool] .rpf-compare-controls { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 1rem; align-items: end; max-width: 780px; margin-bottom: 1.4rem; }
[data-rpf-farines-tool] .rpf-compare-versus { padding-bottom: 0.8rem; color: var(--rpf-olive); font-size: 0.75rem; font-weight: 850; letter-spacing: 0.12em; }
[data-rpf-farines-tool] .rpf-compare-result { padding: 1.3rem; border: 1px solid var(--rpf-line); border-radius: 16px; background: var(--rpf-sand); }
[data-rpf-farines-tool] .rpf-compare-head { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; margin-bottom: 1rem; }
[data-rpf-farines-tool] .rpf-compare-flour { display: flex; gap: 0.7rem; align-items: center; padding: 0.8rem; border-radius: 11px; background: var(--rpf-paper); }
[data-rpf-farines-tool] .rpf-compare-flour h3 { margin: 0; font-size: 1rem; }
[data-rpf-farines-tool] .rpf-type-badge { display: inline-grid; min-width: 44px; min-height: 35px; padding: 0.25rem 0.45rem; place-items: center; border-radius: 7px; color: var(--rpf-olive-deep); background: var(--rpf-olive-soft); font-size: 0.78rem; font-weight: 850; }
[data-rpf-farines-tool] .rpf-compare-table { overflow: hidden; border: 1px solid var(--rpf-line); border-radius: 12px; background: var(--rpf-paper); }
[data-rpf-farines-tool] .rpf-compare-column-head,
[data-rpf-farines-tool] .rpf-compare-row { display: grid; grid-template-columns: minmax(135px, 0.7fr) repeat(2, minmax(0, 1fr)); }
[data-rpf-farines-tool] .rpf-compare-column-head { padding: 0.7rem 0.8rem; color: var(--rpf-olive-deep); background: var(--rpf-olive-soft); font-size: 0.78rem; }
[data-rpf-farines-tool] .rpf-compare-column-head strong { text-align: left; }
[data-rpf-farines-tool] .rpf-compare-row { border-top: 1px solid var(--rpf-line); }
[data-rpf-farines-tool] .rpf-compare-row > div { min-width: 0; padding: 0.8rem; font-size: 0.81rem; }
[data-rpf-farines-tool] .rpf-compare-row > div + div { border-left: 1px solid var(--rpf-line); }
[data-rpf-farines-tool] .rpf-compare-label { color: var(--rpf-muted); font-size: 0.76rem !important; font-weight: 750; }
[data-rpf-farines-tool] .rpf-mobile-column-label { display: none; color: var(--rpf-olive-deep); font-size: 0.7rem; font-weight: 800; }
[data-rpf-farines-tool] .rpf-compare-verdict { margin: 1rem 0 0; font-size: 0.86rem; }

[data-rpf-farines-tool] .rpf-trust-note { display: flex; gap: 0.75rem; margin: 0 2.5rem 2.2rem; padding: 1rem 1.1rem; border: 1px solid var(--rpf-line); border-radius: 12px; background: var(--rpf-sand); }
[data-rpf-farines-tool] .rpf-trust-note p { margin: 0; font-size: 0.8rem; }
[data-rpf-farines-tool] .rpf-trust-icon { display: grid; width: 24px; height: 24px; place-items: center; flex: 0 0 24px; border-radius: 50%; color: #fff; background: var(--rpf-olive); font-size: 0.75rem; font-weight: 850; }

[data-rpf-farines-tool] .rpf-learning,
[data-rpf-farines-tool] .rpf-visual-guide { padding: 2rem 2.5rem 2.6rem; border-top: 1px solid var(--rpf-line); }
[data-rpf-farines-tool] .rpf-scale-card { display: grid; grid-template-columns: minmax(300px, 0.8fr) minmax(500px, 1.4fr); gap: 3.5rem; align-items: start; padding: 1.25rem; border: 1px solid var(--rpf-line); border-radius: 16px; background: var(--rpf-sand); }
[data-rpf-farines-tool] .rpf-scale-copy h3 { margin-bottom: 0.35rem; }
[data-rpf-farines-tool] .rpf-scale-copy p { margin-bottom: 0.8rem; font-size: 0.82rem; }
[data-rpf-farines-tool] .rpf-scale-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.35rem 0.7rem; margin: 0; padding: 0; list-style: none; }
[data-rpf-farines-tool] .rpf-scale-list li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.45rem; min-width: 0; align-items: start; font-size: 0.75rem; }
[data-rpf-farines-tool] .rpf-scale-list strong { color: var(--rpf-olive-deep); }
[data-rpf-farines-tool] .rpf-scale-list span { min-width: 0; color: var(--rpf-muted); }
[data-rpf-farines-tool] .rpf-scale-art-wrap { width: 100%; min-width: 0; overflow-x: auto; }
[data-rpf-farines-tool] .rpf-flour-scale { display: grid; grid-template-rows: auto auto auto auto; row-gap: 0.7rem; width: 100%; min-width: 0; }
[data-rpf-farines-tool] .rpf-flour-scale-caption { min-width: 0; margin: 0; color: var(--rpf-muted); font-size: 0.95rem; line-height: 1.35; text-decoration: none; border: 0; background: none; }
[data-rpf-farines-tool] .rpf-flour-scale-caption::before,
[data-rpf-farines-tool] .rpf-flour-scale-caption::after { content: none; display: none; border: 0; background: none; }
[data-rpf-farines-tool] .rpf-flour-scale-caption--top { justify-self: start; text-align: left; }
[data-rpf-farines-tool] .rpf-flour-scale-caption--bottom { justify-self: end; max-width: 100%; text-align: right; }
[data-rpf-farines-tool] .rpf-flour-scale-markers { position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); align-items: center; min-width: 0; min-height: 48px; }
[data-rpf-farines-tool] .rpf-flour-scale-markers::before { content: ""; position: absolute; z-index: 0; left: calc(100% / 12); right: calc(100% / 12); top: 50%; height: 4px; border-radius: 999px; background: #b9af9e; transform: translateY(-50%); }
[data-rpf-farines-tool] .rpf-flour-scale-marker { position: relative; z-index: 1; display: grid; min-width: 0; place-items: center; }
[data-rpf-farines-tool] .rpf-flour-scale-circle { display: block; width: 46px; height: 46px; border: 2px solid #a87542; border-radius: 50%; background: #f1d2a4; }
[data-rpf-farines-tool] .rpf-flour-scale-marker:nth-child(2) .rpf-flour-scale-circle { background: #ebc18d; }
[data-rpf-farines-tool] .rpf-flour-scale-marker:nth-child(3) .rpf-flour-scale-circle { background: #dfad71; }
[data-rpf-farines-tool] .rpf-flour-scale-marker:nth-child(4) .rpf-flour-scale-circle { background: #cf985f; }
[data-rpf-farines-tool] .rpf-flour-scale-marker:nth-child(5) .rpf-flour-scale-circle { background: #bd814e; }
[data-rpf-farines-tool] .rpf-flour-scale-marker:nth-child(6) .rpf-flour-scale-circle { background: #a96c45; }
[data-rpf-farines-tool] .rpf-flour-scale-labels { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0.5rem; min-width: 0; }
[data-rpf-farines-tool] .rpf-flour-scale-labels span { min-width: 0; color: #453326; font-weight: 800; line-height: 1.2; text-align: center; }

[data-rpf-farines-tool] .rpf-flour-profile-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.85rem; margin-top: 1.2rem; }
[data-rpf-farines-tool] .rpf-flour-profile { min-width: 0; padding: 1rem; border: 1px solid var(--rpf-line); border-radius: 14px; background: var(--rpf-paper); }
[data-rpf-farines-tool] .rpf-profile-top { display: flex; justify-content: space-between; gap: 0.5rem; align-items: center; margin-bottom: 0.75rem; }
[data-rpf-farines-tool] .rpf-profile-tag { color: var(--rpf-muted); font-size: 0.7rem; font-weight: 750; text-transform: uppercase; }
[data-rpf-farines-tool] .rpf-flour-profile h3 { font-size: 1rem; }
[data-rpf-farines-tool] .rpf-flour-profile p { margin-bottom: 0.55rem; font-size: 0.78rem; }
[data-rpf-farines-tool] .rpf-flour-profile p:last-child { margin-bottom: 0; }

[data-rpf-farines-tool] .rpf-guide-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--rpf-space-3); align-items: stretch; }
[data-rpf-farines-tool] .rpf-guide-card { display: grid; grid-template-rows: var(--rpf-guide-illustration-zone) minmax(2.4em, auto) 1fr; gap: var(--rpf-space-3); min-width: 0; padding: 1rem; border: 1px solid var(--rpf-line); border-radius: 14px; background: var(--rpf-sand); }
[data-rpf-farines-tool] .rpf-guide-card > svg { display: block; width: 100%; height: var(--rpf-guide-illustration-zone); margin: 0; overflow: visible; }
[data-rpf-farines-tool] .rpf-guide-card > .rpf-crumb-sketches { display: grid; width: 100%; height: var(--rpf-guide-illustration-zone); margin: 0; overflow: visible; }
[data-rpf-farines-tool] .rpf-guide-card h3 { min-height: 2.4em; margin: 0; font-size: 1rem; }
[data-rpf-farines-tool] .rpf-guide-card p { margin: 0; font-size: 0.8rem; }
[data-rpf-farines-tool] .rpf-grain-outer { fill: #e3b571; stroke: #93613a; stroke-width: 2; }
[data-rpf-farines-tool] .rpf-grain-inner { fill: #f3d8a4; stroke: #b7834c; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-grain-germ { fill: #c77a4a; stroke: #874c32; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-grain-line { fill: none; stroke: var(--rpf-olive-deep); stroke-width: 1; }
[data-rpf-farines-tool] .rpf-guide-card text { fill: var(--rpf-ink); font-size: 8px; }
[data-rpf-farines-tool] .rpf-water-bowl { fill: #e5b875; stroke: #a96f3f; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-water-rim { stroke: #8c5d39; stroke-width: 2; }
[data-rpf-farines-tool] .rpf-water-drop { fill: #a9c6c3; stroke: #547e7a; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-water-arrow { fill: none; stroke: #547e7a; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-water-arrowhead { fill: none; stroke: #547e7a; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-crumb-sketches { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: minmax(0, 1fr); gap: 0.18rem; align-items: stretch; }
[data-rpf-farines-tool] .rpf-crumb-sketches span { display: grid; grid-template-rows: 1fr auto; min-width: 0; align-items: center; justify-items: center; text-align: center; }
[data-rpf-farines-tool] .rpf-crumb-sketches svg { display: block; width: 100%; max-width: 70px; height: 66px; margin: 0 auto; }
[data-rpf-farines-tool] .rpf-crumb-sketches small { color: var(--rpf-muted); font-size: 0.65rem; }
[data-rpf-farines-tool] .rpf-crumb-circle { fill: #ebc88f; stroke: #a36b40; stroke-width: 2; }
[data-rpf-farines-tool] .rpf-crumb-circle-dark { fill: #c08351; }
[data-rpf-farines-tool] .rpf-crumb-hole { fill: #fdf3df; }
[data-rpf-farines-tool] .rpf-mix-bowl { fill: #f0ca8e; stroke: #a26e3d; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-mix-bowl-dark { fill: #c18453; stroke: #875837; stroke-width: 1.5; }
[data-rpf-farines-tool] .rpf-mix-arrow { fill: none; stroke: var(--rpf-olive-deep); stroke-width: 2; }
[data-rpf-farines-tool] .rpf-mix-dough { fill: #dca765; stroke: #9e653a; stroke-width: 1.5; }

[data-rpf-farines-tool] .rpf-photo-frame { overflow: hidden; aspect-ratio: 16 / 9; margin: 0 2.5rem 2rem; border-radius: 14px; background: var(--rpf-sand); }
[data-rpf-farines-tool] .rpf-photo-frame img { display: block; width: 100%; height: 100%; object-fit: cover; }
[data-rpf-farines-tool] .rpf-internal-links { margin: 0 2.5rem 2.5rem; padding-top: 1.5rem; border-top: 1px solid var(--rpf-line); }
[data-rpf-farines-tool] .rpf-link-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; }
[data-rpf-farines-tool] .rpf-link-card { position: relative; display: flex; min-height: 100%; flex-direction: column; gap: 0.25rem; padding: 0.9rem 2.1rem 0.9rem 1rem; border: 1px solid var(--rpf-line); border-radius: 11px; color: var(--rpf-ink); background: var(--rpf-sand); text-decoration: none; }
[data-rpf-farines-tool] .rpf-link-card:hover { border-color: var(--rpf-olive); background: var(--rpf-olive-soft); }
[data-rpf-farines-tool] .rpf-link-card strong { font-size: 0.8rem; }
[data-rpf-farines-tool] .rpf-link-card span { color: var(--rpf-muted); font-size: 0.73rem; }
[data-rpf-farines-tool] .rpf-link-card > span:last-child { position: absolute; top: 50%; right: 0.9rem; color: var(--rpf-olive-deep); font-size: 1.05rem; transform: translateY(-50%); }

@keyframes rpf-fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes rpf-result-in { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 1024px) {
  [data-rpf-farines-tool] .rpf-card-grid-breads,
  [data-rpf-farines-tool] .rpf-card-grid-six { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  [data-rpf-farines-tool] .rpf-guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
  [data-rpf-farines-tool] {
    --rpf-bread-illustration-zone: 7rem;
    --rpf-guide-illustration-zone: 12rem;
    margin: 1rem auto;
  }
  [data-rpf-farines-tool] .rpf-heading,
  [data-rpf-farines-tool] .rpf-section-heading { grid-template-columns: 1fr; gap: 0.8rem; padding: 1.7rem 1.1rem 1.25rem; }
  [data-rpf-farines-tool] .rpf-mode-button { grid-template-columns: 1fr; min-height: 70px; padding: 0.75rem 0.8rem; }
  [data-rpf-farines-tool] .rpf-mode-number { display: none; }
  [data-rpf-farines-tool] .rpf-panel,
  [data-rpf-farines-tool] .rpf-learning,
  [data-rpf-farines-tool] .rpf-visual-guide { padding: 1.4rem 1.1rem 1.8rem; }
  [data-rpf-farines-tool] .rpf-panel-intro { display: block; }
  [data-rpf-farines-tool] .rpf-panel-intro > p { margin-top: 0.7rem; }
  [data-rpf-farines-tool] .rpf-card-grid-breads,
  [data-rpf-farines-tool] .rpf-card-grid-four,
  [data-rpf-farines-tool] .rpf-card-grid-six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  [data-rpf-farines-tool] .rpf-card-grid-outcomes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-rpf-farines-tool] .rpf-advanced-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-rpf-farines-tool] .rpf-field-wide { grid-column: span 2; }
  [data-rpf-farines-tool] .rpf-result-heading { display: block; }
  [data-rpf-farines-tool] .rpf-score-wrap { width: 100%; margin-top: 1rem; }
  [data-rpf-farines-tool] .rpf-inverse-grid,
  [data-rpf-farines-tool] .rpf-flour-profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-rpf-farines-tool] .rpf-scale-card { grid-template-columns: 1fr; gap: 1.5rem; }
  [data-rpf-farines-tool] .rpf-trust-note,
  [data-rpf-farines-tool] .rpf-internal-links,
  [data-rpf-farines-tool] .rpf-photo-frame { margin-right: 1.1rem; margin-left: 1.1rem; }
  [data-rpf-farines-tool] .rpf-link-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  [data-rpf-farines-tool] {
    --rpf-bread-illustration-zone: 6rem;
    --rpf-guide-illustration-zone: 11rem;
  }
  [data-rpf-farines-tool] .rpf-shell { border-radius: 17px; }
  [data-rpf-farines-tool] .rpf-mode-nav { grid-template-columns: 1fr; }
  [data-rpf-farines-tool] .rpf-mode-button { grid-template-columns: 1fr; min-height: 57px; }
  [data-rpf-farines-tool] .rpf-mode-button small { display: inline; margin-left: 0.35rem; }
  [data-rpf-farines-tool] .rpf-card-grid,
  [data-rpf-farines-tool] .rpf-card-grid-breads,
  [data-rpf-farines-tool] .rpf-card-grid-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-rpf-farines-tool] .rpf-card-grid-outcomes,
  [data-rpf-farines-tool] .rpf-inverse-grid,
  [data-rpf-farines-tool] .rpf-flour-profile-grid,
  [data-rpf-farines-tool] .rpf-guide-grid,
  [data-rpf-farines-tool] .rpf-result-grid { grid-template-columns: 1fr; }
  [data-rpf-farines-tool] .rpf-visual-card-body { min-height: 126px; }
  [data-rpf-farines-tool] .rpf-card-art { height: 57px; }
  [data-rpf-farines-tool] .rpf-advanced-grid { grid-template-columns: 1fr; }
  [data-rpf-farines-tool] .rpf-field-wide { grid-column: auto; }
  [data-rpf-farines-tool] .rpf-compare-controls { grid-template-columns: 1fr; gap: 0.5rem; }
  [data-rpf-farines-tool] .rpf-compare-versus { padding: 0; text-align: center; }
  [data-rpf-farines-tool] .rpf-compare-head { grid-template-columns: 1fr; }
  [data-rpf-farines-tool] .rpf-scale-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem 1rem; }
  [data-rpf-farines-tool] .rpf-scale-art-wrap { padding-bottom: 0.35rem; }
  [data-rpf-farines-tool] .rpf-flour-scale { width: 580px; min-width: 580px; }
  [data-rpf-farines-tool] .rpf-compare-column-head { display: none; }
  [data-rpf-farines-tool] .rpf-compare-row { grid-template-columns: 1fr; }
  [data-rpf-farines-tool] .rpf-compare-row > div { padding: 0.7rem 0.8rem; }
  [data-rpf-farines-tool] .rpf-compare-row > div + div { border-top: 1px dashed var(--rpf-line); border-left: 0; }
  [data-rpf-farines-tool] .rpf-mobile-column-label { display: block; margin-bottom: 0.15rem; }
  [data-rpf-farines-tool] .rpf-assistant-actions,
  [data-rpf-farines-tool] .rpf-result-actions { flex-wrap: wrap; }
  [data-rpf-farines-tool] .rpf-assistant-actions .rpf-button-primary { margin-left: auto; }
  [data-rpf-farines-tool] .rpf-result-cta { align-items: stretch; flex-direction: column; }
  [data-rpf-farines-tool] .rpf-result-cta .rpf-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  [data-rpf-farines-tool] *,
  [data-rpf-farines-tool] *::before,
  [data-rpf-farines-tool] *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

@media print {
  [data-rpf-farines-tool] .rpf-mode-nav,
  [data-rpf-farines-tool] .rpf-assistant-actions,
  [data-rpf-farines-tool] .rpf-result-actions,
  [data-rpf-farines-tool] .rpf-internal-links { display: none !important; }
  [data-rpf-farines-tool] .rpf-panel { display: block !important; }
}
