/* Calm design for inner pages (twin, how-it-works, pricing, report). Pairs with theme.css. */
/* header */
.cp .top{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bgd) 86%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--ln)}
.cp .navin{height:68px;max-width:1160px;padding:0 24px}
.cp .brand{gap:10px;color:var(--ink)}
.cp .brand .bn{font-size:18px}
.cp .links{gap:6px}
.cp .links a{font-size:15px}
.cp .navr{gap:10px}
.cp .btn.primary{background:var(--acc);color:var(--acc-ink)}
.cp .btn.primary:hover{background:color-mix(in srgb,var(--acc) 86%,#000)}
@media (min-width:1100px){.cp .navr .btn.sm{display:inline-flex}}

/* footer */
.ft{border-top:1px solid var(--ln);padding:56px 0 max(48px,env(safe-area-inset-bottom));margin-top:auto;font-size:15px;color:var(--g6)}
.ft-in{display:grid;grid-template-columns:auto 1fr;gap:24px 48px;align-items:center}
.ft-b{display:flex;align-items:center;gap:12px}
.ft-b .brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink)}
.ft-b .bn{font-size:16px}
.ft a{color:var(--g6);text-decoration:none}
.ft a:hover{color:var(--ink)}
.ft-l{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 28px}
.ft-c{grid-column:1/-1;margin:16px 0 0;padding-top:24px;border-top:1px solid var(--ln);font-size:13.5px;color:var(--g4)}

@media (max-width:720px){.cp .navin{padding:0 20px}.ft-in{grid-template-columns:1fr}.ft-l{justify-content:flex-start;gap:12px 22px}}
.cp .top .brand{flex-direction:row;align-items:center}
.cp .wrap{padding-left:24px;padding-right:24px}

/* ---- calm look shared by inner pages ---- */
.cp{font-size:17px}
.cp .btn.primary{background:var(--acc);color:var(--acc-ink);border-color:transparent}
.cp .btn.primary:hover,.cp .btn.primary:active{background:color-mix(in srgb,var(--acc) 86%,#000)}
.cp .btn.primary:disabled{background:var(--acc);opacity:.45}
.cp .d,.cp .tw-pd,.cp .tw-dot,.cp .tw-est{display:none!important}
.cp .eyebrow{color:var(--acc);gap:0}
.cp h1 em,.cp .whynum,.cp .tc-num b{background:none!important;-webkit-text-fill-color:currentColor;color:var(--ink)}
.cp .tw-count b,.cp .tw-mn b{color:var(--acc)}
.cp .tw-sub{color:var(--acc)}
.cp .chap-n,.cp .pop-k{color:var(--g4)}
.cp .tw-rb{grid-template-columns:minmax(0,1fr) auto}
.cp .tw-v{color:var(--ink)}
.cp .tw-risk[data-l="2"] .tw-v{color:#e0603f}
.cp .tw-risk[data-l="1"] .tw-v{color:var(--ink)}
.cp .tw-bar i,.cp .tw-risk[data-l="2"] .tw-bar i{background:var(--acc)}
.cp .tw input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg,var(--acc),var(--acc)) 0/var(--p,50%) 100% no-repeat,var(--ln)}
.cp .tw input[type=range]::-webkit-slider-thumb{width:18px;height:18px;margin-top:-7px;background:var(--pn);border:2px solid var(--acc)}
.cp .tw input[type=range]::-moz-range-progress{background:var(--acc)}
.cp .tw-chip[aria-checked=true]{background:color-mix(in srgb,var(--acc) 14%,transparent);border-color:var(--acc);color:var(--ink)}
.cp .tw-row label,.cp .tw-lab,.cp .tw-val{font-size:15.5px}
.cp .tw-count{display:block}
.cp #twNt{display:inline}
.cp .docpg h1,.cp .tw h1.tw-h{font-size:clamp(40px,5.4vw,68px);letter-spacing:-.04em}
.cp .docpg>.wrap:first-child{padding-top:72px}
.cp .chap{padding:96px 0}
.cp .chap-h{font-size:clamp(30px,3.6vw,44px);letter-spacing:-.03em}
.cp .lede{font-size:19px}
.cp .pl ul{color:var(--g6)}
.cp .pl li::marker{color:var(--g4)}
/* light repairs for components with hard-coded dark colours */
[data-theme=light] .cp .tcard,[data-theme=light] .cp .vcard,[data-theme=light] .cp .val .cmp div,[data-theme=light] .cp .carbtn,
[data-theme=light] .cp .cty,[data-theme=light] .cp .pub div,[data-theme=light] .cp .pill.dark,[data-theme=light] .cp .plan.sel,
[data-theme=light] .cp .chip,[data-theme=light] .cp .wz-list button,[data-theme=light] .cp .seg,[data-theme=light] .cp .sumnote,
[data-theme=light] .cp .recv,[data-theme=light] .cp .rawbox,[data-theme=light] .cp .sale-price,[data-theme=light] .cp .hcard,
[data-theme=light] .cp .vtab,[data-theme=light] .cp .pop-rule,[data-theme=light] .cp .tc-cmp,[data-theme=light] .cp .mchip{background:#fff;border-color:var(--ln);color:var(--ink)}

[data-theme=light] .cp input:not([type=range]),[data-theme=light] .cp textarea,[data-theme=light] .cp select{background:#fff!important;border-color:var(--ln)!important;color:var(--ink)!important}
[data-theme=light] .cp .wz-open .actbar,[data-theme=light] .cp .actbar{background:color-mix(in srgb,var(--bgd) 92%,transparent)!important}
[data-theme=light] .cp .tcard[aria-checked=true],[data-theme=light] .cp .tcard[aria-selected=true],[data-theme=light] .cp .vcard[aria-pressed=true],
[data-theme=light] .cp .cty[aria-checked=true],[data-theme=light] .cp .seg [aria-checked=true],[data-theme=light] .cp .chip[aria-checked=true]{background:var(--lav);border-color:var(--acc)}
[data-theme=light] .cp .pop-grid i{border-color:var(--ln);background:var(--sf)}
[data-theme=light] .cp .tw-mini{background:#fff}

[data-theme=light] .cp .tw-chip{background:#fff}
html[data-theme] .cp .tw-chip[aria-checked=true],html[data-theme] .cp [role=radio][aria-checked=true]:not(.tc-t),html[data-theme] .cp [aria-pressed=true],html[data-theme] .cp [aria-selected=true],html[data-theme] .cp [aria-current=step]{background:color-mix(in srgb,var(--acc) 14%,transparent)!important;border-color:var(--acc)!important;color:var(--ink)!important}
.cp .tw h1.tw-h{font-size:clamp(36px,3.8vw,54px)}
/* report + sample pages */
.cp .wf-l,.cp .rep-notes p,.cp .r2-from{color:var(--ink)}
.cp .rep-notes p{border-left-color:var(--ln);color:var(--g6)}
.cp .wf-t i{background:var(--acc)!important}
.cp .rep-pct b,.cp .big .pct,.cp .hl b,.cp .hc-big b{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--ink)!important}
.cp .cc-e{color:var(--ink)}
.cp .pop-grid i{border-color:var(--ln);background:var(--sf)}
.cp .pop-grid i::after{background:var(--acc)!important}
.cp .pop-grid i:not(.out)::after{opacity:1}
.cp .pop-rule{background:transparent!important}
.cp .rep-k,.cp .eyebrow{color:var(--acc)}
.cp .dsec p,.cp .dl li,.cp .tc-x,.cp .pl-ul,.cp .fq-in p,.cp .asm,.cp .wz-more p,.h2 .fq-in p{color:var(--g6)}

/* ---- v43 wizard polish: one width, progress bar only, single hairlines ---- */
.cp .flow,.cp .flow.wide #prog{max-width:720px}
.cp .flow.wide{max-width:1140px}
.cp .flow{padding-top:28px;overflow-x:clip}
.cp .flow *{min-width:0}
.cp .flow h1,.cp .flow .lede,.cp .flow .rules b,.cp .flow .ue,.cp .flow p{overflow-wrap:anywhere}
.cp .wz-steps{margin:0 0 36px}
.cp .wz-top{gap:12px}
.cp .wz-top b{font-size:15px;color:var(--ink)}
.cp .wz-count{font:500 13px/1 inherit;letter-spacing:0;text-transform:none;color:var(--g6)}
.cp .wz-bar{height:3px;margin-top:12px;background:var(--ln)}
.cp .wz-bar i{background:var(--acc)}
.cp .wz-list{display:none}
.cp .wz-open{padding:0}
.cp .wz .lede{margin-top:14px}
/* rules: one divider between items, none around */
.cp .wz-open .rules{margin-top:12px}
.cp .wz-open .rules li{padding:18px 0;border-bottom:0;border-top:1px solid var(--ln)}
.cp .wz-open .rules li:first-child{border-top:0;padding-top:8px}
/* collapsibles: one bordered list, padded rows, hairline between */
.cp .wz-acc{margin-top:32px;border:1px solid var(--ln);border-radius:14px;overflow:hidden}
.cp .wz-acc>details,[data-theme=light] .cp .wz-acc>.rawbox{margin:0!important;border:0!important;border-radius:0;background:transparent!important}
.cp .wz-acc>details+details{border-top:1px solid var(--ln)!important}
.cp .wz-acc summary{padding:16px 18px!important;font-size:15px}
.cp .wz-acc summary:hover{background:color-mix(in srgb,var(--ink) 3%,transparent)}
.cp .wz-acc summary .d{display:none}
.cp .wz-acc details>:not(summary){padding-left:18px!important;padding-right:18px!important}
.cp .wz-acc details>p{margin:0 0 16px}
.cp .wz-acc .alist{padding:0 18px 16px 36px!important}
.cp .wz-open .err:empty{display:none}
/* actions: no line above, clear spacing */
.cp .wz-open .actbar,[data-theme=light] .cp .wz-open .actbar{position:static;margin:36px 0 0;padding:16px 0 calc(16px + env(safe-area-inset-bottom));border:0!important;box-shadow:none!important;background:var(--bgd)!important}
.cp .ab-in{gap:12px}
.cp .ab-r .btn.primary{max-width:320px}
@media (max-width:599px){
  .cp .flow{padding-top:20px}
  .cp .wz-steps{margin-bottom:28px}
  .cp .ab-in{flex-direction:column-reverse;align-items:stretch}
  .cp .ab-r{flex-direction:column;align-items:stretch}
  .cp .ab-r .btn,.cp .ab-r .btn.primary,.cp .ab-in #back{width:100%;max-width:none;flex:none;justify-content:center}
  .cp .wz-open .rules li{flex-direction:column;gap:10px}
  .cp .ab-r #stat{text-align:left}
}
