.yucap-diagnose { --navy:#1a2b45; --sidebar:#292a33; --field:#10131a; --red:#d93025; width:100vw; min-height:100vh; margin-left:calc(50% - 50vw); display:grid; grid-template-columns:302px minmax(0,1fr); color:#20242e; background:linear-gradient(to right,var(--sidebar) 0 302px,#fff 302px); font-family:Arial,sans-serif; }
body.yucap-ceo-diagnose-page #page-wrapper { padding-top:97px; }
body.yucap-ceo-diagnose-page #content { width:100%; max-width:none; padding:0; }
body.yucap-ceo-diagnose-page #content > .row { margin:0; }
body.yucap-ceo-diagnose-page #primary { flex:0 0 100%; width:100%; max-width:none; padding:0; }
body.yucap-ceo-diagnose-page #right-sidebar,
body.yucap-ceo-diagnose-page .entry-header { display:none; }
body.yucap-ceo-diagnose-page .entry-content { margin:0; }
body.yucap-ceo-diagnose-page .yucap-diagnose { width:100%; margin-left:0; }
.yucap-diagnose__sidebar { position:sticky; top:0; align-self:start; box-sizing:border-box; min-height:100vh; padding:68px 17px 30px; color:#f8f8fa; background:var(--sidebar); }
.yucap-diagnose__admin { display:block; margin:0 0 28px; color:#fff; font-size:13px; text-decoration:none; }
.yucap-diagnose__sidebar section { margin:0 0 36px; padding:0 0 36px; border-bottom:1px solid rgba(255,255,255,.16); }
.yucap-diagnose__sidebar section:last-child { border-bottom:0; }
.yucap-diagnose__sidebar h2 { margin:0 0 16px; color:#fff; font-size:16px; line-height:1.4; }
.yucap-diagnose__sidebar p { margin:0 0 22px; color:#d9dae0; font-size:13px; line-height:1.55; }
.yucap-diagnose__sidebar label { display:grid; gap:8px; margin:0 0 18px; color:#fff; font-size:12px; font-weight:700; }
.yucap-diagnose__sidebar input,.yucap-diagnose__sidebar select { box-sizing:border-box; width:100%; min-height:40px; padding:9px 12px; border:1px solid #41434c; border-radius:7px; color:#fff; background:var(--field); font:inherit; }
.yucap-diagnose__sidebar input:focus,.yucap-diagnose__sidebar select:focus { outline:2px solid #8a3d91; outline-offset:2px; }
.yucap-diagnose__help { float:right; width:18px; height:18px; color:#d9dae0; font-size:11px; }
.yucap-diagnose__help summary { display:grid; width:18px; height:18px; place-items:center; box-sizing:border-box; border:1px solid #a6a8af; border-radius:50%; cursor:pointer; list-style:none; }
.yucap-diagnose__help summary::-webkit-details-marker { display:none; }
.yucap-diagnose__help p { position:absolute; z-index:20; right:0; bottom:calc(100% + 12px); width:min(340px,calc(100vw - 64px)); margin:0; padding:16px 18px; border:1px solid #a78bfa; border-top:4px solid var(--purple); border-radius:14px; color:#312e46; background:linear-gradient(135deg,#fff,#f8f5ff); box-shadow:0 18px 42px rgba(49,46,70,.20); font-size:12px; font-weight:400; line-height:1.55; }
.yucap-diagnose__help p::after { position:absolute; right:5px; bottom:-7px; width:12px; height:12px; border-right:1px solid #a78bfa; border-bottom:1px solid #a78bfa; background:#f8f5ff; content:""; transform:rotate(45deg); }
.yucap-diagnose__help p strong,.yucap-diagnose__help p span { display:block; }
.yucap-diagnose__help p strong { margin-bottom:6px; color:var(--purple-deep); font-size:13px; }
.yucap-diagnose__help:not([open]) p { display:none; }
.yucap-diagnose__salary-warning { margin:-4px 0 18px; padding:10px 12px; border-left:4px solid #f9a825; border-radius:4px; color:#5b4500; background:#fff8e1; font-size:12px; line-height:1.45; }
.yucap-diagnose__honeypot { display:none !important; }
.yucap-diagnose__workspace { box-sizing:border-box; min-width:0; padding:clamp(46px,5vw,74px) clamp(28px,7vw,96px) 100px; background:#fff; }
.yucap-diagnose__intro { max-width:780px; margin:0 auto 84px; }
.yucap-diagnose__brand { margin:0 0 18px; color:var(--navy); font-weight:700; letter-spacing:.1em; }
.yucap-diagnose h1 { margin:0; color:var(--navy); font-size:clamp(30px,3vw,42px); line-height:1.15; }
.yucap-diagnose__steps { display:flex; flex-wrap:wrap; gap:13px 22px; align-items:center; max-width:638px; margin:0 auto 38px; padding:16px 20px; border:1px solid #e7e9ed; border-radius:7px; color:#30343c; background:#f5f6f8; font-size:13px; line-height:1.5; }
.yucap-diagnose__steps i { color:#c2c4c8; font-style:normal; }
.yucap-diagnose__section { max-width:638px; margin:0 auto 54px; }
.yucap-diagnose__section h2 { margin:0 0 22px; color:var(--navy); font-size:18px; }
.yucap-diagnose__question { margin:0; padding:0 0 34px; border:0; }
.yucap-diagnose__question legend { max-width:100%; color:#272c35; font-size:13px; line-height:1.55; }
.yucap-diagnose__slider { position:relative; padding-top:22px; }
.yucap-diagnose__slider output { position:absolute; top:0; left:clamp(8px,var(--position,50%),calc(100% - 8px)); transform:translateX(-50%); color:var(--red); font-size:12px; font-weight:700; }
.yucap-diagnose__slider input[type="range"] { display:block; width:100%; height:20px; margin:0; appearance:none; background:transparent; cursor:pointer; }
.yucap-diagnose__slider input[type="range"]::-webkit-slider-runnable-track { height:4px; background:linear-gradient(to right,var(--red) 0 1%,var(--navy) 1% 100%); }
.yucap-diagnose__slider input[type="range"]::-webkit-slider-thumb { width:13px; height:13px; margin-top:-4.5px; border:0; border-radius:50%; appearance:none; background:var(--red); }
.yucap-diagnose__slider input[type="range"]::-moz-range-track { height:4px; background:var(--navy); }
.yucap-diagnose__slider input[type="range"]::-moz-range-progress { height:4px; background:var(--red); }
.yucap-diagnose__slider input[type="range"]::-moz-range-thumb { width:13px; height:13px; border:0; border-radius:50%; background:var(--red); }
.yucap-diagnose__slider input[type="range"]:focus-visible { outline:3px solid #8ba8d4; outline-offset:6px; }
.yucap-diagnose__scale-labels { display:flex; justify-content:space-between; margin:7px 0 0; color:#5f646d; font-size:12px; }
.yucap-diagnose__result-teaser { max-width:638px; margin:0 auto; }
.yucap-diagnose__preview { padding:22px 26px; border:2px solid var(--red); border-radius:8px; background:#fff; }
.yucap-diagnose__preview.is-flow { border-color:#1e8e3e; }
.yucap-diagnose__preview p { margin:0 0 4px; color:#888; font-size:14px; letter-spacing:.05em; text-transform:uppercase; }
.yucap-diagnose__preview h2 { margin:0; color:var(--navy); font-size:clamp(26px,3vw,32px); }
.yucap-diagnose__preview strong { display:block; margin-top:6px; color:var(--red); font-size:clamp(20px,2.3vw,25px); line-height:1.25; }
.yucap-diagnose__preview.is-flow strong { color:#1e8e3e; }
.yucap-diagnose__preview span { display:block; margin-top:10px; color:#555; font-size:14px; line-height:1.55; }
.yucap-diagnose__notice { margin-top:18px; padding:14px 18px; border-radius:5px; font-size:15px; line-height:1.55; }
.yucap-diagnose__notice--info { color:#174f7d; background:#e1effd; }
.yucap-diagnose__notice--warning { border-left:4px solid #f9a825; color:#5b4500; background:#fff8e1; }
.yucap-diagnose__unlock { width:100%; min-height:60px; margin-top:18px; border:0; border-radius:4px; color:#fff; background:var(--navy); font-weight:700; cursor:pointer; }
.yucap-diagnose__unlock:hover { background:#263b5d; }
.yucap-diagnose__unlock:focus-visible { outline:3px solid #8ba8d4; outline-offset:3px; }

.yucap-diagnose--result { display:block; box-sizing:border-box; width:auto; min-height:0; max-width:900px; margin:50px auto; padding:0 20px 60px; color:#20242e; background:#fff; }
.yucap-diagnose--result h1 { margin:30px 0 18px; font-size:32px; }
.yucap-diagnose--result h2 { color:var(--navy); }
.yucap-diagnose__rationale { padding:14px 18px; border-left:5px solid #2e5bff; border-radius:5px; color:#333; background:#f0f4ff; font-size:14px; line-height:1.55; }
.yucap-diagnose__result-status { padding:16px 18px; border-radius:5px; line-height:1.5; }
.yucap-diagnose__result-status.is-loss { border:1px solid #efb4b0; color:#9b2018; background:#fff1f0; }
.yucap-diagnose__result-status.is-flow { border:1px solid #a9d8b3; color:#176c2d; background:#effaf2; }
.yucap-diagnose__curve { margin:30px 0; padding:25px; background:#fff; box-shadow:0 1px 8px rgba(26,43,69,.12); }
.yucap-diagnose__curve-header { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:18px; text-align:left; }
.yucap-diagnose__curve-heading { display:grid; gap:5px; }
.yucap-diagnose__curve-heading small,.yucap-diagnose__curve-summary small { color:var(--slate); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.yucap-diagnose__curve-heading strong { color:var(--navy); font-size:20px; line-height:1.25; }
.yucap-diagnose__curve-summary { display:grid; min-width:230px; padding:14px 18px; border:1px solid #ddd6fe; border-radius:12px; background:#f5f3ff; }
.yucap-diagnose__curve-summary strong { margin:3px 0; color:var(--purple-deep); font-size:16px; }
.yucap-diagnose__curve-summary span { color:var(--slate); font-size:13px; }
.yucap-diagnose__curve-summary em { margin-top:7px; color:var(--danger); font-size:14px; font-style:normal; font-weight:700; }
.yucap-diagnose__curve-plot { overflow-x:auto; }
.yucap-diagnose__curve svg { display:block; width:100%; overflow:visible; }
.yucap-diagnose__curve .axis { stroke:#9aa4b2; stroke-width:1; }
.yucap-diagnose__curve .grid line { stroke:#dfe3e8; stroke-width:1; stroke-dasharray:2 4; }
.yucap-diagnose__curve .line { fill:none; stroke:var(--navy); stroke-width:4; }
.yucap-diagnose__curve .point { fill:var(--navy); }
.yucap-diagnose__curve .point--selected { fill:var(--red); }
.yucap-diagnose__curve .point-halo { fill:var(--red); opacity:.13; }
.yucap-diagnose__curve .selected-guide { stroke:var(--red); stroke-width:1.5; stroke-dasharray:3 4; opacity:.55; }
.yucap-diagnose__curve text { fill:#444; font-size:9px; }
.yucap-diagnose__curve .axis-label { font-size:10px; }
.yucap-diagnose__analysis { padding:25px; border-left:5px solid var(--navy); border-radius:5px; background:#f8f9fa; line-height:1.6; }
.yucap-diagnose__analysis h3 { margin-top:0; color:var(--navy); }
.yucap-diagnose__compare { margin-top:24px; padding:0 25px; border-radius:5px; background:#f8f9fa; }
.yucap-diagnose__compare summary { padding:18px 0; cursor:pointer; color:var(--navy); font-weight:700; }
.yucap-diagnose__compare div { padding:14px 0; border-top:1px solid #dce3eb; }
.yucap-diagnose__compare p { line-height:1.55; }
.yucap-diagnose__actions { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:28px; }
.yucap-diagnose__button { display:inline-flex; box-sizing:border-box; align-items:center; justify-content:center; min-height:60px; padding:12px 20px; border:0; border-radius:4px; color:#fff !important; background:var(--navy); font-size:14px; font-weight:700; text-align:center; text-decoration:none !important; }
.yucap-diagnose__button--calendar { background:#2e5bff; }
.yucap-diagnose__button--trial { background:#1e8e3e; }
@media (max-width:800px) { .yucap-diagnose { display:block; width:auto; margin:0; background:#fff; }.yucap-diagnose__sidebar { position:static; min-height:0; padding:35px 22px 10px; }.yucap-diagnose__sidebar section { margin-bottom:25px; padding-bottom:25px; }.yucap-diagnose__workspace { padding:42px 22px 60px; }.yucap-diagnose h1 { overflow-wrap:anywhere; }.yucap-diagnose__intro { margin-bottom:42px; }.yucap-diagnose__steps { display:block; }.yucap-diagnose__steps i { display:none; }.yucap-diagnose__steps span { display:block; margin:7px 0; }.yucap-diagnose__preview { padding:22px; }.yucap-diagnose__actions { grid-template-columns:1fr; }.yucap-diagnose__curve { padding:12px; } }
@media (prefers-reduced-motion:reduce) { .yucap-diagnose * { transition:none !important; } }
@media print { .site-header,.site-footer,.yucap-diagnose__actions,#wpadminbar { display:none !important; }.yucap-diagnose--result { margin:0; max-width:none; } }

/* Yucap visual system */
.yucap-diagnose {
  --ink:#020617;
  --slate:#475569;
  --muted:#94a3b8;
  --surface:#f8fafc;
  --surface-strong:#fff;
  --border:#dbe3ed;
  --purple:#864dff;
  --purple-deep:#6a16eb;
  --lavender:#ece7ff;
  --signal:#fff9c2;
  --danger:#ef4444;
  --success:#22c55e;
  display:block;
  width:100%;
  margin-left:0;
  color:var(--slate);
  background:var(--surface);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

body.yucap-ceo-diagnose-page { background:var(--surface,#f8fafc); }
body.yucap-ceo-diagnose-page #page-wrapper { background:#f8fafc; }

.yucap-diagnose__sidebar {
  top:97px;
  min-height:calc(100vh - 97px);
  max-height:calc(100vh - 97px);
  overflow-y:auto;
  padding:40px 28px 32px 32px;
  background:linear-gradient(155deg,#020617 0%,#11152a 64%,#24164a 100%);
  box-shadow:inset -1px 0 rgba(255,255,255,.08);
  scrollbar-color:rgba(255,255,255,.24) transparent;
  scrollbar-width:thin;
}

.yucap-diagnose__sidebar::before {
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,var(--purple) 0%,var(--purple-deep) 58%,var(--signal) 100%);
  content:"";
}

body.admin-bar .yucap-diagnose__sidebar {
  top:129px;
  min-height:calc(100vh - 129px);
  max-height:calc(100vh - 129px);
}

.yucap-diagnose__admin {
  display:inline-flex;
  align-items:center;
  margin-bottom:30px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.06);
  font-size:12px;
  font-weight:600;
}

.yucap-diagnose__admin:hover { color:#fff; background:rgba(134,77,255,.25); }

.yucap-diagnose__sidebar section {
  margin-bottom:30px;
  padding-bottom:30px;
  border-color:rgba(255,255,255,.12);
}

.yucap-diagnose__sidebar h2,
.yucap-diagnose h1,
.yucap-diagnose__section h2,
.yucap-diagnose__preview h2,
.yucap-diagnose--result h1,
.yucap-diagnose--result h2,
.yucap-diagnose__analysis h3 {
  font-family:"Plus Jakarta Sans",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.yucap-diagnose__sidebar h2 {
  margin-bottom:12px;
  color:#fff;
  font-size:17px;
  font-weight:600;
  letter-spacing:-.01em;
}

.yucap-diagnose__sidebar p { margin-bottom:20px; color:#cbd5e1; font-size:13px; line-height:1.65; }
.yucap-diagnose__sidebar label { gap:9px; margin-bottom:18px; color:#f8fafc; font-size:12px; letter-spacing:.01em; }

.yucap-diagnose__sidebar input,
.yucap-diagnose__sidebar select {
  min-height:46px;
  padding:11px 13px;
  border:1px solid #475569;
  border-radius:12px;
  color:var(--ink);
  background:#fff;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}

.yucap-diagnose__sidebar input:hover,
.yucap-diagnose__sidebar select:hover { border-color:#64748b; background:#fff; }
.yucap-diagnose__sidebar input:focus,
.yucap-diagnose__sidebar select:focus { border-color:var(--purple); outline:0; background:#fff; box-shadow:0 0 0 4px rgba(134,77,255,.22); }
.yucap-diagnose__help summary { border-color:var(--purple); color:#fff; background:rgba(134,77,255,.25); }

.yucap-diagnose__workspace {
  padding:clamp(50px,6vw,82px) clamp(26px,7vw,98px) 170px;
  background:radial-gradient(circle at 86% 1%,rgba(134,77,255,.10),transparent 30rem),var(--surface);
}

.yucap-diagnose__intro { max-width:760px; margin-bottom:54px; }
.yucap-diagnose__brand {
  display:inline-flex;
  align-items:center;
  margin-bottom:18px;
  padding:7px 12px;
  border-radius:999px;
  color:var(--purple-deep);
  background:var(--lavender);
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.yucap-diagnose h1 {
  color:var(--ink);
  font-size:clamp(34px,4vw,52px);
  font-weight:500;
  letter-spacing:-.045em;
  line-height:1.08;
}

.yucap-diagnose__steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  max-width:760px;
  margin-bottom:28px;
  padding:22px 24px;
  border-color:#ded7fb;
  border-radius:16px;
  color:var(--slate);
  background:rgba(255,255,255,.88);
  box-shadow:0 12px 34px rgba(30,41,59,.06);
  backdrop-filter:blur(8px);
  list-style:none;
}

.yucap-diagnose__steps li { position:relative; display:flex; min-width:0; align-items:center; gap:11px; padding-right:28px; }
.yucap-diagnose__steps li:not(:last-child)::after { position:absolute; z-index:0; top:17px; right:7px; left:44px; height:2px; background:#e2e8f0; content:""; }
.yucap-diagnose__steps li.is-complete::after { background:linear-gradient(90deg,var(--purple),#c4b5fd); }
.yucap-diagnose__steps li > span:last-child { position:relative; z-index:1; min-width:0; padding-right:8px; background:#fff; }
.yucap-diagnose__steps small,.yucap-diagnose__steps strong { display:block; }
.yucap-diagnose__steps small { color:#64748b; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.yucap-diagnose__steps strong { overflow-wrap:anywhere; color:var(--slate); font-size:12px; line-height:1.35; }
.yucap-diagnose__step-number { position:relative; z-index:2; display:grid; flex:0 0 34px; width:34px; height:34px; place-items:center; border:2px solid #dbe3ed; border-radius:50%; color:#64748b; background:#fff; font-size:12px; font-weight:800; }
.yucap-diagnose__steps .is-complete .yucap-diagnose__step-number { border-color:var(--purple); color:#fff; background:var(--purple); }
.yucap-diagnose__steps .is-current .yucap-diagnose__step-number { border-color:var(--purple); color:var(--purple-deep); box-shadow:0 0 0 5px rgba(134,77,255,.12); }
.yucap-diagnose__steps .is-current strong { color:var(--ink); }

.yucap-diagnose__section {
  max-width:760px;
  margin-bottom:24px;
  padding:28px 30px 4px;
  border:1px solid var(--border);
  border-radius:20px;
  background:var(--surface-strong);
  box-shadow:0 14px 38px rgba(30,41,59,.055);
}

.yucap-diagnose__section h2 {
  margin-bottom:24px;
  color:var(--ink);
  font-size:22px;
  font-weight:600;
  letter-spacing:-.025em;
}

.yucap-diagnose__details { padding-bottom:30px; }
.yucap-diagnose__details > p { margin:0 0 22px; color:var(--slate); font-size:14px; line-height:1.65; }
.yucap-diagnose__details label { position:relative; display:grid; gap:9px; margin:0 0 18px; color:var(--ink); font-size:13px; font-weight:700; }
.yucap-diagnose__details input,
.yucap-diagnose__details select {
  box-sizing:border-box;
  width:100%;
  min-height:48px;
  padding:11px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  color:var(--ink);
  background:#fff;
  font:inherit;
}
.yucap-diagnose__details input:hover,
.yucap-diagnose__details select:hover { border-color:#94a3b8; }
.yucap-diagnose__details input:focus,
.yucap-diagnose__details select:focus { border-color:var(--purple); outline:0; box-shadow:0 0 0 4px rgba(134,77,255,.16); }
.yucap-diagnose__details .yucap-diagnose__help { position:absolute; top:0; right:0; color:var(--purple-deep); }
.yucap-diagnose__details .yucap-diagnose__help summary { color:var(--purple-deep); background:var(--lavender); }
.yucap-diagnose__salary-field { margin-bottom:18px; }
.yucap-diagnose__salary-label { position:relative; display:flex; min-height:18px; align-items:center; justify-content:space-between; margin-bottom:8px; padding-right:34px; color:var(--ink); font-size:13px; font-weight:700; }
.yucap-diagnose__salary-label label { margin:0; }
.yucap-diagnose__salary-value { display:block; margin-bottom:10px; color:var(--purple-deep); font-size:clamp(24px,4vw,34px); font-weight:700; letter-spacing:-.03em; }
.yucap-diagnose__salary-picker { display:grid; grid-template-columns:48px 1fr 48px; gap:8px; }
.yucap-diagnose__salary-picker button { border:1px solid #c4b5fd; border-radius:12px; color:var(--purple-deep); background:var(--lavender); font-size:24px; font-weight:700; cursor:pointer; }
.yucap-diagnose__salary-picker button:hover { border-color:var(--purple); background:#ede9fe; }
.yucap-diagnose__salary-picker button:focus-visible { outline:3px solid rgba(134,77,255,.28); outline-offset:2px; }
.yucap-diagnose__salary-picker input { text-align:center; appearance:textfield; }
.yucap-diagnose__salary-picker input::-webkit-inner-spin-button,
.yucap-diagnose__salary-picker input::-webkit-outer-spin-button { margin:0; appearance:none; }
.yucap-diagnose__details-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }

.yucap-diagnose__question {
  margin-bottom:24px;
  padding-bottom:28px;
  border-bottom:1px solid #edf1f6;
}

.yucap-diagnose__question:last-child { margin-bottom:0; border-bottom:0; }
.yucap-diagnose__question legend { color:var(--slate); font-size:14px; line-height:1.6; }
.yucap-diagnose__question legend strong { color:var(--ink); font-weight:700; }
.yucap-diagnose__slider { padding-top:34px; }

.yucap-diagnose__slider output {
  top:0;
  min-width:28px;
  padding:3px 8px;
  border-radius:999px;
  color:#fff;
  background:var(--purple);
  box-shadow:0 5px 14px rgba(106,22,235,.24);
  font-size:11px;
  text-align:center;
}

.yucap-diagnose__slider input[type="range"]::-webkit-slider-runnable-track {
  height:6px;
  border-radius:999px;
  background:linear-gradient(to right,var(--purple) 0 var(--position,50%),#dbe3ed var(--position,50%) 100%);
}

.yucap-diagnose__slider input[type="range"]::-webkit-slider-thumb {
  width:18px;
  height:18px;
  margin-top:-6px;
  border:4px solid #fff;
  background:var(--purple);
  box-shadow:0 0 0 1px rgba(106,22,235,.18),0 4px 12px rgba(106,22,235,.28);
}

.yucap-diagnose__slider input[type="range"]::-moz-range-track { height:6px; border-radius:999px; background:#dbe3ed; }
.yucap-diagnose__slider input[type="range"]::-moz-range-progress { height:6px; border-radius:999px; background:var(--purple); }
.yucap-diagnose__slider input[type="range"]::-moz-range-thumb { width:12px; height:12px; border:4px solid #fff; background:var(--purple); box-shadow:0 0 0 1px rgba(106,22,235,.18); }
.yucap-diagnose__slider input[type="range"]:focus-visible { outline:3px solid rgba(134,77,255,.38); outline-offset:7px; }
.yucap-diagnose__scale-labels { margin-top:10px; color:#64748b; font-size:11px; }

.yucap-diagnose__result-teaser { max-width:760px; margin-top:34px; }
.yucap-diagnose__preview {
  padding:28px 30px;
  border:1px solid #d7ccff;
  border-radius:18px;
  background:linear-gradient(135deg,#fff 0%,#f2eeff 100%);
  box-shadow:0 16px 44px rgba(106,22,235,.08);
}

.yucap-diagnose__preview.is-flow { border-color:#a7e7b7; background:linear-gradient(135deg,#fff 0%,#effcf3 100%); }
.yucap-diagnose__preview p { color:var(--purple-deep); font-size:12px; font-weight:700; letter-spacing:.12em; }
.yucap-diagnose__preview h2 { color:var(--ink); font-size:clamp(27px,3vw,36px); font-weight:600; letter-spacing:-.035em; }
.yucap-diagnose__preview strong { margin-top:10px; color:var(--danger); font-size:clamp(20px,2.4vw,27px); }
.yucap-diagnose__preview span { margin-top:14px; color:var(--slate); font-size:14px; }
.yucap-diagnose__notice { margin-top:14px; padding:16px 18px; border:1px solid transparent; border-radius:14px; font-size:14px; }
.yucap-diagnose__notice--info { border-color:#d7ccff; color:#4b2387; background:#f3efff; }
.yucap-diagnose__notice--warning { border-color:#f1df73; border-left-width:1px; color:#5d5000; background:var(--signal); }
.yucap-diagnose__notice--success { border-color:#86efac; color:#166534; background:#f0fdf4; }

.yucap-diagnose__live-bar {
  position:fixed;
  z-index:999;
  right:24px;
  bottom:20px;
  display:flex;
  width:min(460px,calc(100vw - 48px));
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:16px 20px;
  border:1px solid rgba(196,181,253,.38);
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,#11152a 0%,#24164a 58%,#3c167c 100%);
  box-shadow:0 18px 44px rgba(2,6,23,.34);
  pointer-events:none;
}
.yucap-diagnose__live-bar span { color:#cbd5e1; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.yucap-diagnose__live-bar small { display:block; margin-top:4px; color:#c4b5fd; font-size:11px; letter-spacing:0; text-transform:none; }
.yucap-diagnose__live-bar strong { color:#fff; font-family:"Plus Jakarta Sans",Inter,sans-serif; font-size:clamp(17px,2vw,24px); text-align:right; }

.yucap-diagnose__unlock {
  min-height:56px;
  border-radius:999px;
  color:#fff;
  background:var(--ink);
  box-shadow:0 12px 28px rgba(2,6,23,.18);
  font-size:15px;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}

.yucap-diagnose__unlock:hover { background:var(--purple-deep); box-shadow:0 14px 32px rgba(106,22,235,.25); transform:translateY(-1px); }
.yucap-diagnose__unlock:focus-visible { outline:3px solid rgba(134,77,255,.38); outline-offset:4px; }

.yucap-diagnose--result {
  max-width:960px;
  margin:48px auto;
  padding:40px clamp(22px,5vw,58px) 58px;
  border:1px solid var(--border);
  border-radius:24px;
  color:var(--slate);
  background:#fff;
  box-shadow:0 18px 52px rgba(30,41,59,.08);
}

.yucap-diagnose--result h1 { color:var(--ink); font-size:clamp(32px,4vw,46px); font-weight:600; }
.yucap-diagnose--result h2,.yucap-diagnose__analysis h3 { color:var(--ink); }
.yucap-diagnose__rationale { border-left-color:var(--purple); border-radius:12px; color:#3f2873; background:#f3efff; }
.yucap-diagnose__result-status { border-radius:12px; }
.yucap-diagnose__curve,.yucap-diagnose__analysis,.yucap-diagnose__compare { border:1px solid var(--border); border-radius:16px; box-shadow:none; }
.yucap-diagnose__curve .line { stroke:var(--purple); }
.yucap-diagnose__curve .point { fill:var(--purple); }
.yucap-diagnose__curve .point--selected { fill:var(--danger); }
.yucap-diagnose__analysis { border-left:5px solid var(--purple); background:#f8fafc; }
.yucap-diagnose__button { border-radius:999px; background:var(--ink); box-shadow:0 10px 24px rgba(2,6,23,.14); transition:transform .18s ease,background .18s ease; }
.yucap-diagnose__button:hover { color:#fff !important; background:var(--purple-deep); transform:translateY(-1px); }
.yucap-diagnose__button--calendar { background:var(--purple); }
.yucap-diagnose__button--trial { background:#166534; }

.yucap-diagnose__validation { width:min(520px,calc(100vw - 32px)); padding:30px; border:1px solid #ddd6fe; border-radius:18px; color:var(--slate); background:#fff; box-shadow:0 24px 70px rgba(2,6,23,.24); }
.yucap-diagnose__validation::backdrop { background:rgba(2,6,23,.56); backdrop-filter:blur(3px); }
.yucap-diagnose__validation h2 { margin:0 36px 8px 0; color:var(--ink); font-size:25px; }
.yucap-diagnose__validation p { margin:0 0 12px; }
.yucap-diagnose__validation ul { margin:0 0 22px; padding-left:22px; color:#9b2018; line-height:1.6; }
.yucap-diagnose__validation .yucap-diagnose__button { width:100%; }
.yucap-diagnose__validation-close:first-child { position:absolute; top:15px; right:15px; width:34px; height:34px; padding:0; border:0; border-radius:50%; color:var(--slate); background:#f1f5f9; font-size:22px; cursor:pointer; }

@media (max-width:900px) {
  body.yucap-ceo-diagnose-page #page-wrapper { padding-top:82px; }
  .yucap-diagnose { display:block; width:100%; margin:0; background:var(--surface); }
  .yucap-diagnose__sidebar,
  body.admin-bar .yucap-diagnose__sidebar { position:relative; top:auto; min-height:0; max-height:none; overflow:visible; padding:32px 24px 18px 28px; }
  .yucap-diagnose__sidebar::before { inset:0 0 auto; width:100%; height:4px; background:linear-gradient(90deg,var(--purple),var(--purple-deep) 58%,var(--signal)); }
  .yucap-diagnose__workspace { padding:38px 18px 150px; }
  .yucap-diagnose__intro { margin-bottom:34px; }
  .yucap-diagnose h1 { font-size:clamp(32px,10vw,42px); }
  .yucap-diagnose__steps { grid-template-columns:1fr; gap:14px; padding:18px; }
  .yucap-diagnose__steps li { min-height:42px; padding:0 0 0 0; }
  .yucap-diagnose__steps li:not(:last-child)::after { top:34px; right:auto; bottom:-16px; left:16px; width:2px; height:auto; }
  .yucap-diagnose__steps li > span:last-child { padding:0; }
  .yucap-diagnose__section { padding:22px 20px 2px; border-radius:16px; }
  .yucap-diagnose__section h2 { font-size:20px; }
  .yucap-diagnose__details-grid { grid-template-columns:1fr; gap:0; }
  .yucap-diagnose__preview { padding:23px 21px; }
  .yucap-diagnose__actions { grid-template-columns:1fr; }
  .yucap-diagnose--result { margin:24px 12px; padding:28px 20px 40px; border-radius:18px; }
  .yucap-diagnose__curve-header { align-items:stretch; flex-direction:column; gap:14px; }
  .yucap-diagnose__curve-summary { min-width:0; }
  .yucap-diagnose__curve text { font-size:13px; }
  .yucap-diagnose__curve .axis-label { font-size:13px; }
  .yucap-diagnose__live-bar { right:14px; bottom:14px; left:14px; width:auto; gap:12px; padding:13px 15px; border-radius:15px; }
  .yucap-diagnose__live-bar strong { font-size:16px; }
}

@media (prefers-reduced-motion:reduce) {
  .yucap-diagnose__unlock,
  .yucap-diagnose__button { transition:none; }
}
