.rcf-plugin{
      --bg:#f6f3ed;
      --paper:#fffdf8;
      --ink:#27231f;
      --muted:#6f665e;
      --line:#ddd4c8;
      --accent:#6f8f82;
      --accent-dark:#42685d;
      --warn:#9b3d32;
      --warn-bg:#fff0ed;
      --soft:#eef5f1;
      --gold:#b08c4f;
      --shadow: 0 18px 45px rgba(38, 31, 25, .10);
      --radius:22px;
    }.rcf-plugin *{box-sizing:border-box}.rcf-plugin{
      margin:0;
      padding:0;
      font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",YuGothic,Meiryo,sans-serif;
      color:var(--ink);
      background:
        radial-gradient(circle at top left, rgba(111,143,130,.22), transparent 38vw),
        linear-gradient(180deg,#fbfaf7 0%, var(--bg) 100%);
      line-height:1.72;
    }.rcf-plugin a{color:inherit}.rcf-plugin .wrap{width:min(1060px, calc(100% - 28px)); margin:0 auto; padding:34px 0 64px}.rcf-plugin .hero{
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap:24px;
      align-items:stretch;
      margin-bottom:22px;
    }.rcf-plugin .hero-main,.rcf-plugin .panel{
      background:rgba(255,253,248,.9);
      border:1px solid rgba(221,212,200,.9);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
    }.rcf-plugin .hero-main{padding:34px}.rcf-plugin .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:6px 12px;
      border-radius:999px;
      background:var(--soft);
      color:var(--accent-dark);
      font-weight:700;
      font-size:13px;
      margin-bottom:16px;
    }.rcf-plugin h1{font-size:clamp(28px, 5vw, 48px); line-height:1.22; margin:0 0 16px; letter-spacing:.02em}.rcf-plugin .lead{font-size:17px; color:var(--muted); margin:0 0 22px}.rcf-plugin .hero-actions{display:flex; gap:12px; flex-wrap:wrap; align-items:center}.rcf-plugin button,.rcf-plugin .btn{
      border:0;
      border-radius:999px;
      padding:13px 18px;
      background:var(--accent-dark);
      color:white;
      font-weight:700;
      font-size:15px;
      cursor:pointer;
      transition:.2s transform, .2s opacity, .2s background;
      text-decoration:none;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:46px;
    }.rcf-plugin button:hover,.rcf-plugin .btn:hover{transform:translateY(-1px); opacity:.95}.rcf-plugin button.secondary,.rcf-plugin .btn.secondary{background:#efe8dc; color:var(--ink)}.rcf-plugin button.ghost{background:transparent; color:var(--accent-dark); border:1px solid var(--accent-dark)}.rcf-plugin button.warn{background:var(--warn)}.rcf-plugin button:disabled{opacity:.45; cursor:not-allowed; transform:none}.rcf-plugin .hero-side{padding:24px; display:flex; flex-direction:column; justify-content:space-between; gap:16px}.rcf-plugin .metric{padding:16px; border-radius:18px; background:#f7f1e6; border:1px solid #eadfce}.rcf-plugin .metric strong{display:block; font-size:24px; line-height:1.2}.rcf-plugin .metric span{display:block; color:var(--muted); font-size:13px; margin-top:4px}.rcf-plugin .notice{border-left:4px solid var(--gold); padding:14px 16px; background:#fbf5e9; border-radius:12px; color:#5d5144; font-size:14px}.rcf-plugin .app{background:var(--paper); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden}.rcf-plugin .progress{height:8px; background:#eee5d9}.rcf-plugin .progress > div{height:100%; width:0%; background:linear-gradient(90deg, var(--accent), var(--gold)); transition:.25s width}.rcf-plugin .step{display:none; padding:28px}.rcf-plugin .step.active{display:block}.rcf-plugin .step-head{display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px}.rcf-plugin .step-title{margin:0; font-size:24px; line-height:1.35}.rcf-plugin .step-note{margin:6px 0 0; color:var(--muted); font-size:14px}.rcf-plugin .badge{font-size:12px; color:var(--accent-dark); background:var(--soft); border-radius:999px; padding:5px 10px; font-weight:700; white-space:nowrap}.rcf-plugin .grid{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px}.rcf-plugin .grid.three{grid-template-columns:repeat(3, minmax(0,1fr))}.rcf-plugin .field{display:flex; flex-direction:column; gap:7px}.rcf-plugin label{font-weight:700; font-size:14px}.rcf-plugin input[type="text"],.rcf-plugin input[type="date"],.rcf-plugin select,.rcf-plugin textarea{
      width:100%;
      border:1px solid var(--line);
      background:white;
      border-radius:14px;
      padding:13px 14px;
      font-size:16px;
      color:var(--ink);
      outline:none;
    }.rcf-plugin textarea{min-height:110px; resize:vertical}.rcf-plugin .chips{display:flex; flex-wrap:wrap; gap:10px; margin-top:10px}.rcf-plugin .chip{
      position:relative;
      display:inline-flex;
      align-items:center;
      gap:7px;
      border:1px solid var(--line);
      background:white;
      color:var(--ink);
      padding:9px 12px;
      border-radius:999px;
      cursor:pointer;
      user-select:none;
      font-size:14px;
      transition:.15s background,.15s border,.15s transform;
    }.rcf-plugin .chip:hover{transform:translateY(-1px)}.rcf-plugin .chip input{position:absolute; opacity:0; pointer-events:none}.rcf-plugin .chip:has(input:checked){background:var(--soft); border-color:var(--accent); color:var(--accent-dark); font-weight:700}.rcf-plugin .redflag .chip:has(input:checked){background:var(--warn-bg); border-color:var(--warn); color:var(--warn)}.rcf-plugin .section{padding:18px; border:1px solid var(--line); border-radius:18px; background:#fffaf2; margin:14px 0}.rcf-plugin .section h3{margin:0 0 8px; font-size:17px}.rcf-plugin .section p{margin:0; color:var(--muted); font-size:14px}.rcf-plugin .nav{display:flex; justify-content:space-between; gap:12px; margin-top:24px; padding-top:18px; border-top:1px solid var(--line)}.rcf-plugin .result-wrap{display:grid; grid-template-columns: 1fr 320px; gap:18px; align-items:start}.rcf-plugin .cards{display:flex; flex-direction:column; gap:14px}.rcf-plugin .card{
      border:1px solid var(--line);
      border-radius:20px;
      padding:18px;
      background:white;
      box-shadow:0 10px 24px rgba(38, 31, 25, .06);
    }.rcf-plugin .card.top{border-color:rgba(176,140,79,.6); background:linear-gradient(180deg,#fffdf8,#fff8ed)}.rcf-plugin .rank{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px}.rcf-plugin .rank h3{margin:0; font-size:22px; line-height:1.35}.rcf-plugin .score{font-size:22px; font-weight:800; color:var(--accent-dark); white-space:nowrap}.rcf-plugin .bar{height:8px; background:#eee5d9; border-radius:999px; overflow:hidden; margin:8px 0 14px}.rcf-plugin .bar span{display:block; height:100%; background:linear-gradient(90deg, var(--accent), var(--gold)); width:0%}.rcf-plugin .mini-title{font-size:13px; color:var(--muted); font-weight:800; margin:12px 0 5px; letter-spacing:.04em}.rcf-plugin ul.clean{padding-left:1.25em; margin:6px 0 0}.rcf-plugin .sidebox{position:sticky; top:16px; border:1px solid var(--line); border-radius:20px; background:#fffaf2; padding:18px}.rcf-plugin .sidebox h3{margin:0 0 8px}.rcf-plugin .summary-list{font-size:14px; color:var(--muted); margin:0; padding-left:1.2em}.rcf-plugin .danger-result{background:var(--warn-bg); border:1px solid rgba(155,61,50,.35); border-radius:20px; padding:22px}.rcf-plugin .danger-result h2{color:var(--warn); margin-top:0}.rcf-plugin .small{font-size:13px; color:var(--muted)}.rcf-plugin .footer-note{margin-top:22px; color:var(--muted); font-size:13px}.rcf-plugin .hidden{display:none !important}.rcf-plugin .copybox{width:100%; min-height:150px; margin-top:12px; font-size:13px; color:#4d453f}@media (max-width: 860px){.rcf-plugin .hero{grid-template-columns:1fr}.rcf-plugin .grid,.rcf-plugin .grid.three,.rcf-plugin .result-wrap{grid-template-columns:1fr}.rcf-plugin .hero-main{padding:24px}.rcf-plugin .step{padding:22px 18px}.rcf-plugin .sidebox{position:static}.rcf-plugin .nav{flex-direction:column-reverse}.rcf-plugin .nav button{width:100%}
    }
.rcf-plugin { isolation: isolate; }
.rcf-plugin .rcf-line-link[data-rcf-placeholder="1"] { opacity: .85; }

.rcf-plugin .hero-side-title{font-size:14px;font-weight:800;letter-spacing:.04em;color:var(--accent-dark)}
.rcf-plugin .metric-list{display:grid;gap:12px}
.rcf-plugin .metric strong{font-size:18px;line-height:1.35;margin-bottom:6px}
.rcf-plugin .metric span{font-size:14px;line-height:1.7;color:#5e554e}
.rcf-plugin .inline-alert{margin:0 0 14px;padding:14px 16px;border-radius:16px;background:var(--warn-bg);border:1px solid rgba(155,61,50,.32);color:var(--warn);font-weight:700}
@media (max-width: 860px){
  .rcf-plugin .hero-side{padding:18px}
  .rcf-plugin .metric{padding:14px 16px}
  .rcf-plugin .step-head{flex-direction:column;align-items:flex-start}
  .rcf-plugin .badge{align-self:flex-start}
  .rcf-plugin .step-title{font-size:22px}
  .rcf-plugin .step-note{font-size:15px;line-height:1.8}
}


/* v3 cleanup: remove colored background, simplify explanation, and improve mobile flow */
.rcf-plugin{
  background:transparent !important;
}
.rcf-plugin .wrap{
  padding-top:18px;
}
.rcf-plugin .hero-main,
.rcf-plugin .panel,
.rcf-plugin .app,
.rcf-plugin .section,
.rcf-plugin .card,
.rcf-plugin .sidebox{
  background:#fff !important;
}
.rcf-plugin .hero-main,
.rcf-plugin .panel,
.rcf-plugin .app{
  box-shadow:0 12px 32px rgba(38,31,25,.06);
}
.rcf-plugin .metric,
.rcf-plugin .metric-list{
  display:none !important;
}
.rcf-plugin .hero-side{
  justify-content:flex-start;
}
.rcf-plugin .hero-side-title{
  margin-bottom:10px;
}
.rcf-plugin .rcf-about-simple{
  padding:22px 24px;
  margin-top:18px;
}
.rcf-plugin .rcf-about-simple h2{
  margin:0 0 8px;
  font-size:20px;
  color:var(--accent-dark);
}
.rcf-plugin .rcf-about-simple p{
  margin:0;
  color:var(--muted);
}
.rcf-plugin .danger-nav{
  justify-content:flex-end;
}
.rcf-plugin .danger-nav #resultResetBtn{
  width:100%;
  max-width:320px;
}
@media (max-width: 860px){
  .rcf-plugin .hero{
    gap:16px;
  }
  .rcf-plugin .hero-main,
  .rcf-plugin .hero-side,
  .rcf-plugin .app,
  .rcf-plugin .panel{
    box-shadow:none;
  }
  .rcf-plugin .hero-side{
    padding:18px;
  }
  .rcf-plugin .rcf-about-simple{
    padding:18px;
  }
  .rcf-plugin .danger-nav #resultResetBtn{
    max-width:none;
  }
}


/* v4 cleanup */
.rcf-plugin h1,
.rcf-plugin h2,
.rcf-plugin h3,
.rcf-plugin .step-title,
.rcf-plugin .card h3,
.rcf-plugin .sidebox h3,
.rcf-plugin .section h3{
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  border-top:0 !important;
  border-bottom:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  text-shadow:none !important;
}
.rcf-plugin h1::before,
.rcf-plugin h1::after,
.rcf-plugin h2::before,
.rcf-plugin h2::after,
.rcf-plugin h3::before,
.rcf-plugin h3::after,
.rcf-plugin .step-title::before,
.rcf-plugin .step-title::after,
.rcf-plugin .section h3::before,
.rcf-plugin .section h3::after,
.rcf-plugin .card h3::before,
.rcf-plugin .card h3::after{
  content:none !important;
  display:none !important;
}
.rcf-plugin .step-title{
  color:var(--accent-dark) !important;
  font-size:clamp(24px, 5vw, 34px) !important;
  line-height:1.35 !important;
  margin:0 !important;
}
.rcf-plugin .section h3,
.rcf-plugin .sidebox h3{
  color:var(--accent-dark) !important;
  margin:0 0 8px !important;
  font-size:17px !important;
}
.rcf-plugin .rank h3{
  color:#0b97d4 !important;
  font-size:22px !important;
  line-height:1.35 !important;
}
.rcf-plugin .hero-actions .secondary{
  display:none !important;
}
.rcf-plugin .step-note{
  color:var(--muted) !important;
}
.rcf-plugin .sidebox{
  position:static;
}

/* v5 wording/clarity */
.rcf-plugin .field-note{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.65;}
.rcf-plugin .mini-title{color:#5f5750;font-size:15px;}
.rcf-plugin .card p{line-height:1.85;}
.rcf-plugin .clean li{margin-bottom:4px;}

.rcf-plugin .result-group{margin-bottom:26px}
.rcf-plugin .result-group:last-child{margin-bottom:0}
.rcf-plugin .result-group-head{margin:0 0 12px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:#fff}
.rcf-plugin .result-group-head h3{margin:0 0 4px;font-size:22px;line-height:1.35;color:var(--accent-dark)}
.rcf-plugin .result-group-head p{margin:0;color:var(--muted);font-size:14px}
.rcf-plugin .result-group-tissue .card.top{border-color:rgba(111,143,130,.55);background:linear-gradient(180deg,#fff,#f7fbf8)}
.rcf-plugin .result-group-remedy .card.top{border-color:rgba(176,140,79,.55);background:linear-gradient(180deg,#fff,#fff9ef)}
@media (max-width:860px){.rcf-plugin .result-group-head{padding:14px 16px}.rcf-plugin .result-group-head h3{font-size:20px}}


/* v2: result-only parallel swipe layout */
.rcf-plugin .result-swipe-intro{
  margin:0 0 10px;
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
}
.rcf-plugin .result-switch{
  display:flex;
  gap:8px;
  margin:0 0 14px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  width:fit-content;
  max-width:100%;
}
.rcf-plugin .result-switch button{
  min-height:38px;
  padding:8px 14px;
  font-size:14px;
  background:#f3efe8;
  color:var(--ink);
}
.rcf-plugin .result-switch button:first-child{
  background:var(--accent-dark);
  color:#fff;
}
.rcf-plugin .result-swipe{
  display:flex;
  gap:16px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  padding:2px 4px 14px;
  margin:0 -4px;
}
.rcf-plugin .result-swipe::-webkit-scrollbar{
  height:8px;
}
.rcf-plugin .result-swipe::-webkit-scrollbar-track{
  background:#f2ede6;
  border-radius:999px;
}
.rcf-plugin .result-swipe::-webkit-scrollbar-thumb{
  background:#c9bda9;
  border-radius:999px;
}
.rcf-plugin .result-swipe .result-panel{
  flex:0 0 calc(100% - 8px);
  min-width:0;
  scroll-snap-align:start;
  margin:0;
}
.rcf-plugin .result-panel .cards{
  display:flex;
  flex-direction:column;
  gap:14px;
}
@media (min-width: 980px){
  .rcf-plugin .result-swipe{
    gap:18px;
  }
  .rcf-plugin .result-swipe .result-panel{
    flex-basis:calc(50% - 9px);
  }
}
@media (max-width: 860px){
  .rcf-plugin .result-switch{
    width:100%;
  }
  .rcf-plugin .result-switch button{
    flex:1;
  }
  .rcf-plugin .result-swipe{
    padding-bottom:12px;
  }
  .rcf-plugin .result-swipe .result-panel{
    flex-basis:94%;
  }
}


/* v3: easier result UX — summary cards + tap tabs, no horizontal swipe */
.rcf-plugin .result-swipe-intro,
.rcf-plugin .result-switch,
.rcf-plugin .result-swipe{
  display:none !important;
}
.rcf-plugin .result-overview{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  margin:0 0 14px;
}
.rcf-plugin .result-overview-card{
  border:1px solid var(--line);
  border-radius:18px;
  padding:14px 15px;
  background:#fff;
}
.rcf-plugin .result-overview-card .overview-label{
  font-size:12px;
  font-weight:800;
  color:var(--muted);
  margin-bottom:6px;
}
.rcf-plugin .overview-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:6px;
}
.rcf-plugin .overview-main strong{
  font-size:18px;
  line-height:1.35;
  color:var(--accent-dark);
}
.rcf-plugin .overview-main span{
  flex:0 0 auto;
  font-size:20px;
  font-weight:900;
  color:var(--accent-dark);
}
.rcf-plugin .result-overview-card p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
}
.rcf-plugin .result-overview-remedy{
  background:linear-gradient(180deg,#fff,#fff9ef);
}
.rcf-plugin .result-overview-tissue{
  background:linear-gradient(180deg,#fff,#f7fbf8);
}
.rcf-plugin .result-tabs{
  position:sticky;
  top:0;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  margin:0 0 14px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(6px);
}
.rcf-plugin .result-tab-button{
  border-radius:14px;
  min-height:44px;
  padding:10px 12px;
  background:#f3efe8;
  color:var(--ink);
  font-size:14px;
}
.rcf-plugin .result-tab-button.active{
  background:var(--accent-dark);
  color:#fff;
}
.rcf-plugin .result-tab-panel{
  display:none;
}
.rcf-plugin .result-tab-panel.active{
  display:block;
}
.rcf-plugin .result-tab-panels .result-panel{
  margin-bottom:0;
}
@media (max-width: 860px){
  .rcf-plugin .result-overview{
    grid-template-columns:1fr;
  }
  .rcf-plugin .result-tabs{
    top:0;
    margin-left:-2px;
    margin-right:-2px;
  }
  .rcf-plugin .result-tab-button{
    font-size:13px;
    padding-left:8px;
    padding-right:8px;
  }
}
