/* CureAdvantage — Clean Claim & Denial Rate Calculator (v1, Batch 74B). Every selector is scoped to #cakpi. */
#cakpi{
  --ck-navy:#001347; --ck-navy2:#00287a; --ck-ink:#16233d; --ck-grey:#55606e; --ck-mute:#6b7482; --ck-line:#e2e5e8; --ck-line2:#d8dde6;
  --ck-paper:#f5f6fa; --ck-tint:#eef1f8; --ck-shadow:0 1px 2px rgba(22,35,61,.06),0 8px 24px rgba(22,35,61,.08);
  --ck-alert:#a13d2e; --ck-alertbg:#f9eeea; --ck-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  font-family:Inter,Arial,Helvetica,sans-serif; color:var(--ck-ink); line-height:1.5; font-size:16px;
  margin:2rem 0 2.5rem;
}
#cakpi *,#cakpi *::before,#cakpi *::after{box-sizing:border-box}
#cakpi:not(.cakpi-ready){min-height:640px;background:#fff;border:1px solid var(--ck-line);border-radius:14px;box-shadow:var(--ck-shadow);padding:1.25rem;color:var(--ck-grey)}
#cakpi p,#cakpi h3,#cakpi h4,#cakpi dl,#cakpi dd,#cakpi ul{margin:0}
#cakpi [hidden]{display:none!important}
#cakpi .cakpi-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#cakpi .cakpi-tool{background:#fff;border:1px solid var(--ck-line);border-radius:14px;box-shadow:var(--ck-shadow);overflow:hidden}

/* header */
#cakpi .cakpi-head{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;background:var(--ck-navy);color:#fff;padding:22px 24px 20px}
#cakpi .cakpi-mark{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:rgba(255,255,255,.12);color:#fff}
#cakpi .cakpi-head-text{flex:1 1 calc(100% - 56px);min-width:0}
#cakpi .cakpi-title{font-family:Poppins,Inter,Arial,sans-serif;font-size:1.25rem;line-height:1.3;font-weight:600;letter-spacing:-.01em;color:#fff;margin:0 0 4px}
#cakpi .cakpi-head-sub{font-size:.875rem;line-height:1.5;color:rgba(255,255,255,.76)}
#cakpi .cakpi-privacy{display:inline-flex;align-items:center;gap:6px;margin-left:56px;font-size:.75rem;font-weight:600;letter-spacing:.02em;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:5px 11px;white-space:nowrap}

/* tabs */
#cakpi .cakpi-tabs{display:flex;gap:6px;padding:10px 12px;background:var(--ck-paper);border-bottom:1px solid var(--ck-line);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
#cakpi .cakpi-tab{flex:1 1 0;min-width:0;min-height:56px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;margin:0;padding:8px 12px;text-align:left;font-family:inherit;color:var(--ck-grey);background:transparent;border:1px solid transparent;border-radius:10px;cursor:pointer;scroll-snap-align:start;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}
#cakpi .cakpi-tab-label{font-size:.875rem;font-weight:600;line-height:1.25;color:inherit}
#cakpi .cakpi-tab-meta{font-size:.75rem;line-height:1.25;color:var(--ck-mute)}
#cakpi .cakpi-tab:hover{background:#fff;border-color:var(--ck-line);color:var(--ck-ink)}
#cakpi .cakpi-tab[aria-selected="true"]{background:#fff;border-color:var(--ck-line2);color:var(--ck-navy);box-shadow:0 1px 2px rgba(22,35,61,.08),inset 0 -3px 0 var(--ck-navy)}
#cakpi .cakpi-tab[aria-selected="true"] .cakpi-tab-meta{color:var(--ck-grey)}
#cakpi .cakpi-tab:focus-visible{outline:3px solid rgba(0,19,71,.4);outline-offset:1px}

/* panel */
#cakpi .cakpi-panel{padding:22px 24px 24px}
#cakpi .cakpi-panel-head{margin-bottom:18px}
#cakpi .cakpi-panel-titlerow{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:6px}
#cakpi .cakpi-panel-title{font-family:Poppins,Inter,Arial,sans-serif;font-size:1.0625rem;line-height:1.35;font-weight:600;color:var(--ck-ink)}
#cakpi .cakpi-panel-intro{font-size:.9375rem;line-height:1.55;color:var(--ck-grey)}
#cakpi .cakpi-badge{display:inline-flex;align-items:center;font-size:.75rem;font-weight:600;letter-spacing:.02em;line-height:1.3;border-radius:999px;padding:3px 10px}
#cakpi .cakpi-badge-std{color:var(--ck-navy);background:var(--ck-tint);border:1px solid #d5dcec}
#cakpi .cakpi-badge-ours{color:#3f4a5a;background:#fff;border:1px dashed #9aa4b2}
#cakpi .cakpi-callout{display:flex;gap:10px;align-items:flex-start;margin:0 0 18px;padding:12px 14px;font-size:.875rem;line-height:1.55;color:var(--ck-ink);background:var(--ck-paper);border:1px solid var(--ck-line);border-left:3px solid var(--ck-navy);border-radius:10px}
#cakpi .cakpi-callout-ico{flex:0 0 auto;display:inline-flex;color:var(--ck-navy);margin-top:1px}

/* form */
#cakpi .cakpi-form{margin:0}
#cakpi fieldset{margin:0 0 18px;padding:0;border:0;min-width:0}
#cakpi .cakpi-legend{display:block;padding:0;margin:0 0 8px;font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ck-grey)}
#cakpi .cakpi-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#cakpi .cakpi-method{position:relative;display:flex;gap:10px;align-items:flex-start;min-height:44px;margin:0;padding:12px 14px;background:#fff;border:1.5px solid var(--ck-line2);border-radius:10px;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
#cakpi .cakpi-method:hover{border-color:#b9c1ce}
#cakpi .cakpi-method input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--ck-navy)}
#cakpi .cakpi-method input:focus-visible{outline:3px solid rgba(0,19,71,.35);outline-offset:2px}
#cakpi .cakpi-method:has(input:checked){border-color:var(--ck-navy);background:#fbfcfe;box-shadow:0 0 0 1px var(--ck-navy)}
#cakpi .cakpi-method-body{display:flex;flex-direction:column;gap:1px;min-width:0}
#cakpi .cakpi-method-label{font-size:.9375rem;font-weight:600;line-height:1.35;color:var(--ck-ink)}
#cakpi .cakpi-method-meta{font-size:.75rem;font-weight:600;line-height:1.35;color:var(--ck-navy)}
#cakpi .cakpi-method-desc{font-size:.8125rem;line-height:1.45;color:var(--ck-grey);margin-top:2px}
#cakpi .cakpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}
#cakpi .cakpi-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
#cakpi .cakpi-field{display:flex;flex-direction:column;min-width:0}
#cakpi .cakpi-field-wide{grid-column:1 / -1}
#cakpi .cakpi-grid:not(.cakpi-grid-3) > .cakpi-field:not(.cakpi-field-wide) > label{display:flex;flex-wrap:wrap;align-items:flex-end;align-content:flex-end;column-gap:.3em;min-height:2.7em}
#cakpi .cakpi-method-fields > .cakpi-grid{margin-bottom:18px}
#cakpi label{display:block;font-size:.875rem;font-weight:600;line-height:1.35;color:var(--ck-ink);margin:0 0 7px}
#cakpi .cakpi-opt{font-weight:400;color:var(--ck-mute);white-space:nowrap}
#cakpi label.cakpi-method{font-weight:400;margin:0;display:flex}
#cakpi input[type="text"]{display:block;width:100%;height:48px;margin:0;padding:0 14px;font-family:var(--ck-mono);font-size:1rem;line-height:1.2;letter-spacing:.01em;color:var(--ck-ink);background:#fff;border:1.5px solid var(--ck-line2);border-radius:10px;box-shadow:none;-webkit-appearance:none;appearance:none;transition:border-color .15s,box-shadow .15s}
#cakpi input[type="text"]::placeholder{font-family:Inter,Arial,sans-serif;color:#8a93a3;letter-spacing:0}
#cakpi input[type="text"]:hover{border-color:#b9c1ce}
#cakpi input[type="text"]:focus,#cakpi input[type="text"]:focus-within{outline:3px solid rgba(0,19,71,.35);outline-offset:1px;border-color:var(--ck-navy);box-shadow:0 0 0 3px rgba(0,19,71,.08)}
#cakpi input[aria-invalid="true"]{border-color:var(--ck-alert);background:#fffaf8}
#cakpi input[aria-invalid="true"]:focus{outline-color:rgba(161,61,46,.45);border-color:var(--ck-alert)}
#cakpi .cakpi-affix{position:relative}
#cakpi .cakpi-affix-sym{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-family:var(--ck-mono);font-size:1rem;color:var(--ck-mute);pointer-events:none}
#cakpi .cakpi-affix input[type="text"]{padding-left:30px}
#cakpi .cakpi-hint{font-size:.8125rem;line-height:1.45;color:var(--ck-grey);margin:6px 0 0}
#cakpi .cakpi-err{display:flex;gap:6px;align-items:flex-start;font-size:.8125rem;line-height:1.45;font-weight:600;color:var(--ck-alert);margin:6px 0 0}
#cakpi .cakpi-err::before{content:"!";flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-top:1px;border-radius:50%;background:var(--ck-alert);color:#fff;font-size:.6875rem;font-weight:700;line-height:1;font-family:Inter,Arial,sans-serif}
#cakpi .cakpi-months{margin-bottom:18px}
#cakpi .cakpi-months-note{margin-top:8px}
#cakpi .cakpi-excl{margin:0 0 18px;border:1px solid var(--ck-line);border-radius:10px;background:#fff}
#cakpi .cakpi-excl-sum,#cakpi .cakpi-def-sum{display:flex;align-items:center;gap:8px;min-height:46px;padding:10px 14px;font-size:.9375rem;font-weight:600;color:var(--ck-ink);cursor:pointer;list-style:none;border-radius:10px}
#cakpi .cakpi-excl-sum::-webkit-details-marker,#cakpi .cakpi-def-sum::-webkit-details-marker{display:none}
#cakpi .cakpi-excl-sum::before,#cakpi .cakpi-def-sum::before{content:"";flex:0 0 auto;width:8px;height:8px;margin-right:4px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
#cakpi details[open] > .cakpi-excl-sum::before,#cakpi details[open] > .cakpi-def-sum::before{transform:rotate(45deg)}
#cakpi .cakpi-excl-sum:focus-visible,#cakpi .cakpi-def-sum:focus-visible{outline:3px solid rgba(0,19,71,.35);outline-offset:-3px}
#cakpi .cakpi-excl-body{padding:4px 14px 16px;border-top:1px solid var(--ck-line)}
#cakpi .cakpi-excl-body > .cakpi-hint{margin:10px 0 14px}

/* button */
#cakpi .cakpi-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;margin:4px 0 0;padding:12px 22px;font-family:inherit;font-size:1rem;font-weight:600;letter-spacing:.01em;line-height:1.2;color:#fff;background:var(--ck-navy);border:0;border-radius:10px;cursor:pointer;transition:background .15s,transform .1s}
#cakpi .cakpi-btn:hover{background:var(--ck-navy2)}
#cakpi .cakpi-btn:active{transform:scale(.995)}
#cakpi .cakpi-btn:focus-visible{outline:3px solid rgba(0,19,71,.4);outline-offset:3px}
#cakpi .cakpi-btn[aria-disabled="true"]{background:#33476f;cursor:progress}
#cakpi .cakpi-spin{display:none;width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:cakpi-spin .8s linear infinite}
#cakpi .cakpi-busy .cakpi-spin{display:inline-block}
@keyframes cakpi-spin{to{transform:rotate(360deg)}}

/* output */
#cakpi .cakpi-out{margin-top:20px}
#cakpi .cakpi-empty{display:flex;gap:10px;align-items:center;padding:14px 16px;font-size:.9063rem;line-height:1.5;color:var(--ck-grey);background:var(--ck-paper);border:1px dashed var(--ck-line2);border-radius:12px}
#cakpi .cakpi-empty-ico{flex:0 0 auto;display:inline-flex;color:var(--ck-navy);opacity:.75}
#cakpi .cakpi-empty-warn{color:var(--ck-alert);background:var(--ck-alertbg);border-color:#ecd2ca}
#cakpi .cakpi-empty-warn .cakpi-empty-ico{color:var(--ck-alert);opacity:1}
#cakpi .cakpi-alert{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;font-size:.9063rem;line-height:1.5;color:var(--ck-ink);background:var(--ck-alertbg);border:1px solid #ecd2ca;border-radius:12px}
#cakpi .cakpi-alert-ico{flex:0 0 auto;display:inline-flex;color:var(--ck-alert);margin-top:1px}
#cakpi .cakpi-alert-title{font-weight:700;color:var(--ck-alert);margin-bottom:2px}
#cakpi .cakpi-result{border:1px solid var(--ck-line2);border-radius:12px;background:#fff;overflow:hidden;overflow-wrap:anywhere}
#cakpi .cakpi-result-top{display:grid;grid-template-columns:1fr auto;align-items:end;gap:4px 16px;padding:18px 20px 16px;background:linear-gradient(180deg,var(--ck-tint),#fff);border-bottom:1px solid var(--ck-line)}
#cakpi .cakpi-result-name{grid-column:1 / -1;font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ck-grey)}
#cakpi .cakpi-result-value{font-family:Poppins,Inter,Arial,sans-serif;font-size:2.75rem;line-height:1.05;font-weight:700;letter-spacing:-.02em;color:var(--ck-navy);font-variant-numeric:tabular-nums}
#cakpi .cakpi-result-top .cakpi-badge{justify-self:end;align-self:center}
#cakpi .cakpi-formula{margin:16px 20px 0;padding:12px 14px;background:var(--ck-paper);border:1px solid var(--ck-line);border-radius:10px}
#cakpi .cakpi-formula-label{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ck-mute);margin-bottom:4px}
#cakpi .cakpi-formula-main{font-family:var(--ck-mono);font-size:1rem;line-height:1.5;font-weight:600;color:var(--ck-ink)}
#cakpi .cakpi-formula-sub{font-family:var(--ck-mono);font-size:.8125rem;line-height:1.5;color:var(--ck-grey);margin-top:2px}
#cakpi .cakpi-chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:12px 20px 0;padding:0}
#cakpi .cakpi-chips li{font-size:.8125rem;line-height:1.3;color:var(--ck-ink);background:#fff;border:1px solid var(--ck-line2);border-radius:999px;padding:4px 10px}
#cakpi .cakpi-note{margin:12px 20px 0;font-size:.875rem;line-height:1.5;color:var(--ck-ink)}
#cakpi .cakpi-measures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 20px 0}
#cakpi .cakpi-measure{padding:12px 14px;border:1px solid var(--ck-line);border-radius:10px;font-size:.875rem;line-height:1.5;color:var(--ck-ink)}
#cakpi .cakpi-measure-h{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ck-navy);margin-bottom:4px}
#cakpi .cakpi-measure-not .cakpi-measure-h{color:var(--ck-grey)}
#cakpi .cakpi-result-src{margin:16px 20px 0;padding-top:12px;border-top:1px solid var(--ck-line);font-size:.875rem;color:var(--ck-grey)}
#cakpi .cakpi-result-foot{margin:6px 20px 16px;font-size:.8125rem;line-height:1.5;color:var(--ck-mute)}
#cakpi a.cakpi-ext{display:inline;padding:8px 0;color:var(--ck-navy);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
#cakpi a.cakpi-ext:hover{color:var(--ck-navy2)}
#cakpi a.cakpi-ext:focus-visible{outline:3px solid rgba(0,19,71,.35);outline-offset:2px;border-radius:3px}
#cakpi .cakpi-ext-ico{display:inline-block;vertical-align:-2px;margin-left:4px;line-height:0}

/* definition panel */
#cakpi .cakpi-def{margin-top:18px;border:1px solid var(--ck-line);border-radius:10px;background:#fff}
#cakpi .cakpi-def-body{padding:4px 16px 16px;border-top:1px solid var(--ck-line)}
#cakpi .cakpi-def-list{display:flex;flex-direction:column}
#cakpi .cakpi-def-row{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:4px 16px;padding:11px 0;border-bottom:1px solid #eef0f3}
#cakpi .cakpi-def-row dt{font-size:.8125rem;font-weight:600;line-height:1.45;color:var(--ck-ink)}
#cakpi .cakpi-def-row dd{font-size:.875rem;line-height:1.55;color:var(--ck-grey)}
#cakpi .cakpi-def-src{line-height:2}
#cakpi .cakpi-reviewed{margin-top:12px;font-size:.8125rem;line-height:1.5;color:var(--ck-mute)}

/* footer */
#cakpi .cakpi-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:12px 24px;background:var(--ck-paper);border-top:1px solid var(--ck-line);font-size:.8125rem;line-height:1.5;color:var(--ck-grey)}

@media (max-width:640px){
  #cakpi{margin:1.5rem 0 2rem}
  #cakpi .cakpi-head{padding:18px 16px 16px;gap:12px}
  #cakpi .cakpi-mark{width:38px;height:38px}
  #cakpi .cakpi-head-text{flex-basis:calc(100% - 52px)}
  #cakpi .cakpi-privacy{margin-left:50px}
  #cakpi .cakpi-grid:not(.cakpi-grid-3) > .cakpi-field:not(.cakpi-field-wide) > label{min-height:0}
  #cakpi .cakpi-tabs{padding:8px 10px}
  #cakpi .cakpi-tab{flex:0 0 auto;min-width:9.25rem}
  #cakpi .cakpi-panel{padding:18px 16px 20px}
  #cakpi .cakpi-method-grid,#cakpi .cakpi-grid,#cakpi .cakpi-grid-3,#cakpi .cakpi-measures{grid-template-columns:1fr}
  #cakpi .cakpi-result-top{grid-template-columns:1fr;padding:16px}
  #cakpi .cakpi-result-top .cakpi-badge{justify-self:start}
  #cakpi .cakpi-result-value{font-size:2.375rem}
  #cakpi .cakpi-formula,#cakpi .cakpi-chips,#cakpi .cakpi-note,#cakpi .cakpi-measures,#cakpi .cakpi-result-src{margin-left:16px;margin-right:16px}
  #cakpi .cakpi-result-foot{margin-left:16px;margin-right:16px}
  #cakpi .cakpi-def-row{grid-template-columns:1fr}
  #cakpi .cakpi-foot{padding:12px 16px;flex-direction:column}
}
@media (min-width:641px) and (max-width:760px){
  #cakpi .cakpi-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){#cakpi *{transition:none!important;animation:none!important}}
