/* VENDORED COPY — do not edit. Source: ~/delancey-client-portal  git show cp/integrate-design:portal/css/portal.css  (copied 2026-10-29 by W1).
   The Negotiator Portal reuses the client/partner portal look verbatim (owner rule). Workspace density lives in np.css. */
/* Delancey Street Client Portal (copied from the ISO Partner Portal brand, 2026-10-28; keep the two in sync by hand)
   Tokens and components mirror delanceystreet.com (ds-* design system). */
:root{
  --ds-ink:#0f1a2d;--ds-ink-2:#1f2c42;--ds-ink-3:#3a4863;--ds-ink-deep:#0a121f;
  --ds-cyan:#00b8f0;--ds-cyan-deep:#0089b8;--ds-cyan-text:#006e94;--ds-cyan-soft:#e7f3fa;
  --ds-gold:#ffb400;--ds-danger:#d6332c;--ds-success:#156a37;
  --ds-muted:#5c6a7e;--ds-muted-2:#8a95a6;--ds-line:#dde4ec;--ds-line-soft:#eef2f6;
  --ds-paper:#f4f8fb;--ds-paper-2:#e7f3fa;
  --ds-radius-card:24px;--ds-radius-pill:999px;
  --ds-shadow-card:0 8px 30px rgba(0,0,0,.06);
  --ds-shadow-cta:0 12px 30px -8px rgba(0,184,240,.55);
  --ds-shadow-cta-hover:0 18px 40px -10px rgba(0,184,240,.7);
  --ds-tracking-eyebrow:.16em;
  --ds-font:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ds-ease:cubic-bezier(.2,.7,.2,1);--ds-dur:220ms;
  --ds-mark:url("https://246587558.fs1.hubspotusercontent-na2.net/hubfs/246587558/client-portal/ico-delancey.svg");
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0}
body{font-family:var(--ds-font);font-size:17px;line-height:1.55;color:var(--ds-ink);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--ds-cyan-deep)}
h1,h2,h3,p{margin:0}
.ds-emph{color:var(--ds-cyan-deep)}
.ds-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- Eyebrows, pills, buttons ---------- */
.ds-eyebrow{font-size:13px;font-weight:800;color:var(--ds-cyan-deep);letter-spacing:var(--ds-tracking-eyebrow);text-transform:uppercase;margin-bottom:18px;display:inline-flex;align-items:center;gap:10px}
.ds-eyebrow--rule::before{content:"";width:32px;height:1px;background:var(--ds-cyan)}
.ds-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--ds-radius-pill);background:var(--ds-paper-2);font-size:11px;font-weight:800;letter-spacing:var(--ds-tracking-eyebrow);text-transform:uppercase;color:var(--ds-ink)}
.ds-pill__dot{width:8px;height:8px;border-radius:50%;background:#22a75b;box-shadow:0 0 0 3px rgba(34,167,91,.18)}
.ds-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:54px;padding:0 32px;border-radius:var(--ds-radius-pill);font-family:inherit;font-weight:800;font-size:13px;letter-spacing:.1em;text-transform:uppercase;background:var(--ds-cyan);color:var(--ds-ink-deep);border:0;box-shadow:var(--ds-shadow-cta);text-decoration:none;cursor:pointer;transition:transform var(--ds-dur) var(--ds-ease),box-shadow var(--ds-dur) var(--ds-ease),background var(--ds-dur) var(--ds-ease)}
.ds-cta:hover{transform:translateY(-1px);box-shadow:var(--ds-shadow-cta-hover);color:var(--ds-ink-deep)}
.ds-cta svg{transition:transform var(--ds-dur) var(--ds-ease)}
.ds-cta:hover svg{transform:translateX(3px)}
.ds-cta--sm{height:46px;padding:0 22px;font-size:12px}
.ds-cta--ghost{background:#fff;color:var(--ds-ink);border:2px solid var(--ds-ink);box-shadow:none}
.ds-cta--ghost:hover{background:var(--ds-ink);color:#fff;box-shadow:none}

/* ---------- Nav (white, sticky, color logo) ---------- */
.ds-nav{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--ds-line)}
.ds-nav__inner{display:flex;align-items:center;justify-content:space-between;padding:10px 40px;gap:32px;max-width:1480px;margin:0 auto}
.ds-nav__logo{display:inline-flex;align-items:center}
.ds-nav__logo img{height:72px;width:auto;display:block}
.ds-nav__list{display:flex;gap:32px;list-style:none;margin:0 auto;padding:0;font-size:14px;font-weight:700;color:var(--ds-ink-2);white-space:nowrap}
.ds-nav__link{display:inline-flex;align-items:center;gap:6px;letter-spacing:.02em;padding:8px 2px;border-bottom:2px solid transparent;color:inherit;text-decoration:none}
.ds-nav__link:hover,.ds-nav__link.is-active{color:var(--ds-cyan-text);border-bottom-color:var(--ds-cyan)}
.ds-nav__right{display:flex;align-items:center;gap:22px}
.ds-nav__who{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25}
.ds-nav__who-label{font-size:10px;font-weight:800;color:var(--ds-muted);letter-spacing:.18em;text-transform:uppercase}
.ds-nav__who-name{font-size:13px;font-weight:800;color:var(--ds-ink)}
.ds-nav__logout{font-size:13px;font-weight:700;color:var(--ds-muted);text-decoration:none;letter-spacing:.02em}
.ds-nav__logout:hover{color:var(--ds-ink)}
@media (max-width:980px){
  .ds-nav__inner{padding:10px 16px;gap:14px;flex-wrap:wrap}
  .ds-nav__logo img{height:48px}
  .ds-nav__list{order:3;width:100%;margin:0;gap:22px;border-top:1px solid var(--ds-line-soft);padding-top:6px}
  .ds-nav__who{display:none}
  .ds-nav__right .ds-cta{display:none}
}

/* ---------- Inner hero (forms) ---------- */
.ds-inner-hero{position:relative;overflow:hidden;background:#fff;padding:40px 60px 48px;border-bottom:1px solid var(--ds-line)}
.ds-inner-hero::after{content:"";position:absolute;right:-40px;top:50%;transform:translateY(-50%);width:280px;height:380px;background:var(--ds-mark) no-repeat center/contain;opacity:.07;pointer-events:none;z-index:0}
.ds-inner-hero__inner{max-width:1280px;margin:0 auto;position:relative;z-index:1}
.ds-breadcrumbs{font-size:12px;color:var(--ds-muted);margin-bottom:24px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.ds-breadcrumbs a{color:var(--ds-cyan-deep);text-decoration:underline}
.ds-breadcrumbs span{margin:0 8px}
.ds-inner-hero h1{font-size:clamp(40px,6.4vw,84px);line-height:.98;font-weight:900;letter-spacing:-.025em;text-transform:uppercase;color:var(--ds-ink);text-wrap:balance;overflow-wrap:anywhere}
.ds-inner-hero__sub{font-size:20px;line-height:1.55;color:var(--ds-ink-3);margin-top:28px;max-width:780px;font-weight:500}
@media (max-width:760px){.ds-inner-hero{padding:28px 16px 36px}.ds-inner-hero__sub{font-size:17px;margin-top:18px}}

/* ---------- Apply layout: form card + sidebar ---------- */
.ds-apply{background:var(--ds-paper);padding:40px 60px 96px}
.ds-apply__inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start}
.ds-apply__inner--full{grid-template-columns:minmax(0,1fr)}
.ds-apply__form-card{padding:48px 56px;background:#fff;border-radius:var(--ds-radius-card);border:1px solid var(--ds-line)}
.ds-apply__form-head{margin-bottom:28px}
.ds-apply__form-h{font-size:30px;font-weight:900;color:var(--ds-ink);margin:0 0 8px;text-transform:uppercase;letter-spacing:-.015em;line-height:1.05}
.ds-apply__form-sub{font-size:15px;color:var(--ds-ink-3);font-weight:500;line-height:1.55}
.ds-apply__benefits{position:sticky;top:120px;display:flex;flex-direction:column;gap:16px}
.ds-apply__benefits-card{position:relative;padding:32px;background:var(--ds-ink);color:#fff;border-radius:20px;overflow:hidden}
.ds-apply__benefits-card::after{content:"";position:absolute;right:-30px;bottom:-20px;width:180px;height:240px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.06;pointer-events:none}
.ds-apply__benefits-card>*{position:relative;z-index:1}
.ds-apply__benefits-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:var(--ds-cyan);letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
.ds-apply__benefits-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(0,184,240,.12);color:var(--ds-cyan)}
.ds-apply__benefits-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:18px}
.ds-apply__benefits-list li{display:grid;grid-template-columns:42px 1fr;gap:16px;align-items:flex-start}
.ds-apply__benefits-list .n{font-size:20px;font-weight:900;color:var(--ds-cyan);line-height:1}
.ds-apply__benefits-list .t{font-size:14px;font-weight:800;color:#fff;margin-bottom:4px}
.ds-apply__benefits-list .s{font-size:13px;line-height:1.55;color:rgba(255,255,255,.7);font-weight:500}
.ds-apply__trust-card{padding:22px 24px;background:#fff;border:1px solid var(--ds-line);border-radius:16px;display:flex;align-items:center;gap:14px}
.ds-apply__trust-card .icon{width:44px;height:44px;border-radius:50%;background:var(--ds-paper-2);color:var(--ds-cyan-deep);display:grid;place-items:center;flex:0 0 44px}
.ds-apply__trust-card .h{font-size:13px;font-weight:800;color:var(--ds-ink)}
.ds-apply__trust-card .s{font-size:12px;color:var(--ds-muted);font-weight:500;line-height:1.5;margin-top:2px}
.ds-apply__call-card{background:#fff;border:1px solid var(--ds-line);border-radius:16px;padding:22px 24px}
.ds-apply__call-card-eyebrow{font-size:11px;font-weight:800;color:var(--ds-cyan);letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px}
.ds-apply__call-card-phone{font-size:24px;font-weight:900;color:var(--ds-ink);letter-spacing:-.01em;display:block;margin-bottom:6px;text-decoration:none;line-height:1.1}
.ds-apply__call-card-phone:hover{color:var(--ds-cyan)}
.ds-apply__call-card-hours{font-size:12px;color:var(--ds-ink-3);font-weight:500;line-height:1.4}
.ds-apply__call-card-mail{display:inline-block;margin-top:10px;font-size:14px;font-weight:700;color:var(--ds-cyan-deep)}
@media (max-width:1100px){.ds-apply__inner{grid-template-columns:minmax(0,1fr)}.ds-apply__benefits{position:static}}
@media (max-width:760px){.ds-apply{padding:24px 16px 64px}.ds-apply__form-card{padding:24px 18px;border-radius:18px}.ds-apply__form-h{font-size:24px}}

/* ---------- HubSpot form (legacy embed, css:"") styled as .ds-form ---------- */
.hs-form{color:var(--ds-ink);font-family:var(--ds-font)}
.hs-form fieldset{max-width:none!important;border:0;padding:0;margin:0}
.hs-form fieldset.form-columns-2,.hs-form fieldset.form-columns-3{display:grid;gap:0 18px}
.hs-form fieldset.form-columns-2{grid-template-columns:1fr 1fr}
.hs-form fieldset.form-columns-3{grid-template-columns:1fr 1fr 1fr}
.hs-form fieldset .hs-form-field{width:auto!important;float:none!important}
.hs-form fieldset .input{margin-right:0!important}
@media (max-width:640px){.hs-form fieldset.form-columns-2,.hs-form fieldset.form-columns-3{grid-template-columns:1fr}}
.hs-form .hs-form-field{margin:0 0 18px}
.hs-form label:not(.hs-error-msg){display:block;font-size:12px;font-weight:800;color:var(--ds-ink);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px}
.hs-form .hs-form-required{color:var(--ds-danger);margin-left:3px;font-weight:800}
.hs-form legend.hs-field-desc{font-size:13px;color:var(--ds-ink-3);font-weight:500;line-height:1.5;margin:0 0 8px;padding:0}
.hs-form input[type=text],.hs-form input[type=email],.hs-form input[type=tel],.hs-form input[type=number],.hs-form select{
  width:100%!important;height:48px;padding:0 14px;border:1.5px solid var(--ds-line);border-radius:10px;font-family:inherit;font-size:15px;font-weight:600;background:#fff;color:var(--ds-ink);transition:border-color .15s,box-shadow .15s}
.hs-form textarea{width:100%!important;min-height:96px;padding:12px 14px;line-height:1.5;resize:vertical;border:1.5px solid var(--ds-line);border-radius:10px;font-family:inherit;font-size:15px;font-weight:600;color:var(--ds-ink)}
.hs-form input::placeholder,.hs-form textarea::placeholder{color:var(--ds-muted);font-weight:500}
.hs-form select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ds-ink-2) 50%),linear-gradient(135deg,var(--ds-ink-2) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:36px}
.hs-form input:focus,.hs-form select:focus,.hs-form textarea:focus{outline:none;border-color:var(--ds-cyan);box-shadow:0 0 0 3px rgba(0,184,240,.18)}
.hs-form input.invalid.error,.hs-form select.invalid.error,.hs-form textarea.invalid.error{border-color:var(--ds-danger);background:#fef5f5;box-shadow:0 0 0 3px rgba(214,51,44,.12)}
.hs-form .hs-error-msgs{list-style:none;margin:6px 0 0;padding:0}
.hs-form .hs-error-msg,.hs-form .hs-error-msgs label{display:block;font-size:12px;font-weight:700;color:var(--ds-danger);letter-spacing:.01em;text-transform:none;margin:0}
.hs-form .hs_error_rollup{margin-bottom:12px}
.hs-form input[type=file]{width:100%;font-family:inherit;font-size:14px;font-weight:600;color:var(--ds-ink-3);padding:18px 22px;border:1.5px dashed var(--ds-line);border-radius:12px;background:var(--ds-paper);cursor:pointer;transition:border-color .15s,background .15s}
.hs-form input[type=file]:hover{border-color:var(--ds-cyan);background:var(--ds-paper-2)}
.hs-form input[type=file]::file-selector-button{font-family:inherit;font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:0;border-radius:999px;background:var(--ds-ink);color:#fff;padding:10px 16px;margin-right:14px;cursor:pointer}
.hs-form .hs-richtext{font-size:15px;color:var(--ds-ink-3);font-weight:500}
.hs-form .hs-richtext h3{font-size:22px;font-weight:900;color:var(--ds-ink);text-transform:uppercase;letter-spacing:-.01em;line-height:1.1;margin:22px 0 6px;padding-top:30px;border-top:1px solid var(--ds-line)}
.hs-form .hs-richtext p{margin:0 0 14px}
.hs-form .hs-richtext p strong{display:inline-block;font-size:11px;font-weight:800;color:var(--ds-cyan-deep);letter-spacing:.16em;text-transform:uppercase}
.hs-form .hs-dateinput{position:relative}
.hs-form .hs-datepicker{z-index:20}
.hs-form .hs_submit{margin-top:14px}
.hs-form .hs_submit .actions{margin:0;padding:0}
.hs-form input[type=submit]{-webkit-appearance:none;appearance:none;width:100%;height:58px;border:0;border-radius:999px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-ink-deep);background:var(--ds-cyan) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%230a121f' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") no-repeat calc(50% + 78px) 50%;box-shadow:var(--ds-shadow-cta-hover);transition:transform 140ms ease,box-shadow 200ms ease}
.hs-form input[type=submit]:hover{transform:translateY(-1px);box-shadow:0 18px 40px -10px rgba(0,184,240,.8)}
.submitted-message{padding:18px 22px;background:rgba(34,167,91,.08);border:1.5px solid rgba(34,167,91,.35);border-radius:12px;color:var(--ds-success);font-weight:700;font-size:15px}
.submitted-message h3{font-size:20px;font-weight:900;text-transform:uppercase;margin-bottom:6px;color:var(--ds-ink)}
.submitted-message a{color:var(--ds-cyan-deep)}

/* ---------- My Deals ---------- */
.ds-apply__stats{margin-bottom:24px;padding:32px 40px;background:#fff;border:1px solid var(--ds-line);border-radius:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ds-apply__stat{text-align:center;padding:0 12px;border-right:1px solid var(--ds-line)}
.ds-apply__stat:last-child{border-right:0}
.ds-apply__stat .n{font-size:36px;font-weight:900;color:var(--ds-cyan);letter-spacing:-.02em;line-height:1}
.ds-apply__stat .l{font-size:11px;font-weight:800;color:var(--ds-ink-2);margin-top:8px;text-transform:uppercase;letter-spacing:.12em}
@media (max-width:760px){.ds-apply__stats{grid-template-columns:1fr 1fr;padding:22px 16px;gap:18px 8px}.ds-apply__stat{border-right:0}.ds-apply__stat .n{font-size:28px}}
.ds-deals{padding:12px 0 0}
.ds-deals__wrap{overflow-x:auto}
.ds-deals table{width:100%;border-collapse:collapse;min-width:720px}
.ds-deals th{text-align:left;font-size:11px;font-weight:800;color:var(--ds-muted);text-transform:uppercase;letter-spacing:.14em;padding:0 14px 14px;border-bottom:1px solid var(--ds-line)}
.ds-deals td{padding:18px 14px;border-bottom:1px solid var(--ds-line-soft);vertical-align:top;font-size:14px;font-weight:600;color:var(--ds-ink-2)}
.ds-deals tr:last-child td{border-bottom:0}
.ds-deals .num{text-align:right;font-variant-numeric:tabular-nums}
.ds-deals .client{font-size:15px;font-weight:800;color:var(--ds-ink)}
.ds-deals .sub{display:block;color:var(--ds-muted);font-size:12px;font-weight:500;margin-top:3px}
.ds-status{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:var(--ds-paper);color:var(--ds-ink-3)}
.ds-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.ds-status--new{background:var(--ds-paper-2);color:var(--ds-cyan-text)}
.ds-status--progress{background:#fff6dc;color:#8a5a00}
.ds-status--won{background:rgba(34,167,91,.1);color:var(--ds-success)}
.ds-status--lost{background:#fdecec;color:#a33a3a}
.ds-empty{text-align:center;padding:40px 16px}
.ds-empty h3{font-size:22px;font-weight:900;text-transform:uppercase;margin-bottom:8px}
.ds-empty p{color:var(--ds-ink-3);font-size:15px;font-weight:500;margin-bottom:22px}
.ds-alert{padding:18px 22px;border-radius:12px;background:#fff6dc;border:1.5px solid #f1d58a;color:#6b4800;font-size:15px;font-weight:600}
.ds-alert strong{display:block;color:var(--ds-ink);font-weight:800;margin-bottom:4px}

/* ---------- Footer (ink-deep + mark) ---------- */
.ds-footer{position:relative;overflow:hidden;padding:48px 60px 28px;background:var(--ds-ink-deep);color:rgba(255,255,255,.78)}
.ds-footer::after{content:"";position:absolute;right:-80px;top:50%;transform:translateY(-50%);width:360px;height:480px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.04;pointer-events:none}
.ds-footer__inner{max-width:1280px;margin:0 auto;position:relative;z-index:1}
.ds-footer__cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;margin-bottom:32px}
.ds-footer__brand img{height:64px;width:auto;display:block}
.ds-footer__brand p{font-size:14px;line-height:1.55;margin-top:14px;font-weight:500;opacity:.8;max-width:340px}
.ds-footer__col h4{font-size:12px;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.18em;margin:0 0 14px}
.ds-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.ds-footer__col a{color:inherit;font-size:14px;font-weight:500;text-decoration:none}
.ds-footer__col a:hover{color:var(--ds-cyan)}
.ds-footer__phone{font-size:18px;font-weight:800;color:#fff;display:block;margin-bottom:2px;text-decoration:none}
.ds-footer__email{font-size:14px;color:var(--ds-cyan);text-decoration:none}
.ds-footer__address{font-style:normal;font-size:13px;line-height:1.5;margin:14px 0 4px}
.ds-footer__hours{font-size:12px;color:rgba(255,255,255,.62);letter-spacing:.04em}
.ds-footer__legal{padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;line-height:1.55;opacity:.65;font-weight:500;margin-bottom:16px}
.ds-footer__legal strong{color:rgba(255,255,255,.85);font-weight:700}
.ds-footer__bottom{padding-top:14px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;opacity:.6;font-weight:500}
@media (max-width:760px){.ds-footer{padding:40px 16px 24px}.ds-footer__cols{grid-template-columns:1fr}}

/* ---------- Membership pages (mirrors .ds-iso-apply--dark) ---------- */
.ds-auth{min-height:100vh;display:flex;flex-direction:column;background:var(--ds-ink)}
.ds-auth__top{padding:18px 40px;border-bottom:1px solid rgba(255,255,255,.08)}
.ds-auth__top img{height:56px;display:block}
.ds-auth__main{position:relative;overflow:hidden;flex:1;display:flex;align-items:center;padding:64px 60px}
.ds-auth__main::after{content:"";position:absolute;right:-40px;bottom:-60px;width:240px;height:320px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.06;pointer-events:none}
.ds-auth__inner{position:relative;z-index:1;max-width:1180px;width:100%;margin:0 auto;display:grid;grid-template-columns:1fr 480px;gap:64px;align-items:center}
.ds-auth .ds-eyebrow{color:var(--ds-cyan);letter-spacing:.22em;gap:14px}
.ds-auth h1{font-size:clamp(40px,5vw,64px);line-height:1;font-weight:900;letter-spacing:-.02em;text-transform:uppercase;color:#fff}
.ds-auth h1 .ds-emph{color:var(--ds-cyan)}
.ds-auth__intro p{margin-top:22px;font-size:17px;color:rgba(255,255,255,.75);font-weight:500;max-width:460px}
.ds-auth__contact{margin-top:32px;border-top:1px solid rgba(255,255,255,.12)}
.ds-auth__contact div{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.ds-auth__contact strong{display:block;color:#fff;font-size:17px;font-weight:800}
.ds-auth__contact span{font-size:12px;color:rgba(255,255,255,.55);font-weight:600;letter-spacing:.04em}
.ds-auth__card{padding:36px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.12)}
.ds-auth__card-kicker{font-size:11px;font-weight:800;color:var(--ds-cyan);letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px}
.ds-auth__card h2{font-size:24px;font-weight:900;color:#fff;text-transform:uppercase;margin-bottom:22px}
.ds-auth__card label{display:block;font-size:11px;font-weight:800;color:rgba(255,255,255,.6);letter-spacing:.14em;text-transform:uppercase;margin:14px 0 8px}
.ds-auth__card input[type=email],.ds-auth__card input[type=password],.ds-auth__card input[type=text]{width:100%;height:48px;border:1.5px solid rgba(255,255,255,.18);border-radius:12px;padding:0 14px;font-size:15px;background:rgba(255,255,255,.06);color:#fff;font-family:inherit;font-weight:500;outline:none}
.ds-auth__card input:focus{border-color:var(--ds-cyan);background:rgba(255,255,255,.1);box-shadow:0 0 0 3px rgba(0,184,240,.18)}
.ds-auth__card input[type=checkbox]{accent-color:var(--ds-cyan);margin-right:8px}
.ds-auth__card button,.ds-auth__card input[type=submit]{width:100%;height:54px;margin-top:22px;border-radius:999px;background:var(--ds-cyan);color:var(--ds-ink-deep);border:0;font-family:inherit;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;box-shadow:var(--ds-shadow-cta)}
.ds-auth__card button[type=button]{width:auto;height:auto;margin:6px 0 0;padding:0;background:none;box-shadow:none;color:var(--ds-cyan);font-size:12px;letter-spacing:.06em}
.ds-auth__card a{color:var(--ds-cyan);font-size:13px;font-weight:700}
.ds-auth__card p,.ds-auth__card div{color:rgba(255,255,255,.75);font-size:14px}
.ds-auth__note{margin-top:18px;font-size:11px;line-height:1.55;color:rgba(255,255,255,.5)}
@media (max-width:980px){.ds-auth__top{padding:14px 16px}.ds-auth__top img{height:44px}.ds-auth__main{padding:40px 16px}.ds-auth__inner{grid-template-columns:1fr;gap:36px}.ds-auth__card{padding:24px 18px}}
.hs-form fieldset>.hs-richtext{grid-column:1/-1}

/* Positions: count select is driven by the Add Position button */
.hs-form .hs_ds_isosub_position_count{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.hs-form .hs-dependent-field{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 18px;counter-reset:dspos 1}
.hs-form .hs-dependent-field>.hs-form-field{grid-column:span 2}
.hs-form .hs-dependent-field>[class*="_lender"],.hs-form .hs-dependent-field>[class*="_amount"]{grid-column:span 3}
.hs-form .hs-dependent-field>[class*="_lender"]{grid-column:1/span 3;counter-increment:dspos;position:relative;padding-top:58px;margin-top:6px}
.hs-form .hs-dependent-field>[class*="_lender"]::before{content:"Position " counter(dspos);position:absolute;top:22px;left:0;font-size:11px;font-weight:800;color:var(--ds-cyan-deep);letter-spacing:.16em;text-transform:uppercase}
.hs-form .hs-dependent-field>[class*="_lender"]::after{content:"";position:absolute;top:0;left:0;width:calc(200% + 18px);height:1px;background:var(--ds-line)}
.hs-form .hs-dependent-field>[class*="_amount"]{padding-top:58px;margin-top:6px}
.hs-form .hs-dependent-field>.hs-form-field>label span:first-child{font-size:0;letter-spacing:0}
.hs-form .hs-dependent-field>.hs-form-field>label span:first-child::after{font-size:12px;letter-spacing:.1em}
.hs-form .hs-dependent-field>[class*="_lender"]>label span:first-child::after{content:"Lender name"}
.hs-form .hs-dependent-field>[class*="_amount"]>label span:first-child::after{content:"Amount of debt"}
.hs-form .hs-dependent-field>[class*="_frequency"]>label span:first-child::after{content:"Frequency"}
.hs-form .hs-dependent-field>[class*="_payment"]>label span:first-child::after{content:"Payment amount"}
.hs-form .hs-dependent-field>[class*="_defaulted"]>label span:first-child::after{content:"Defaulted yet?"}
.ds-positions-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:4px 0 26px;padding:16px 18px;border:1.5px dashed var(--ds-line);border-radius:12px;background:var(--ds-paper)}
.ds-positions-bar__add{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 22px;border-radius:999px;border:2px solid var(--ds-ink);background:#fff;color:var(--ds-ink);font-family:inherit;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background var(--ds-dur) var(--ds-ease),color var(--ds-dur) var(--ds-ease)}
.ds-positions-bar__add:hover{background:var(--ds-ink);color:#fff}
.ds-positions-bar__add[disabled]{opacity:.45;cursor:not-allowed;background:#fff;color:var(--ds-ink)}
.ds-positions-bar__count{font-size:12px;font-weight:800;color:var(--ds-muted);letter-spacing:.12em;text-transform:uppercase}
.ds-positions-bar__remove{margin-left:auto;background:none;border:0;padding:0;font-family:inherit;font-size:13px;font-weight:700;color:var(--ds-muted);cursor:pointer}
.ds-positions-bar__remove:hover{color:var(--ds-danger)}
@media (max-width:640px){
  .hs-form .hs-dependent-field{grid-template-columns:1fr}
  .hs-form .hs-dependent-field>.hs-form-field,.hs-form .hs-dependent-field>[class*="_lender"],.hs-form .hs-dependent-field>[class*="_amount"]{grid-column:1/-1}
  .hs-form .hs-dependent-field>[class*="_amount"]{padding-top:0;margin-top:0}
  .hs-form .hs-dependent-field>[class*="_lender"]::after{width:100%}
  .ds-inner-hero::after{opacity:.04;width:200px;height:270px;right:-70px}
}

/* ---------- My Deals: tools, rows ---------- */
.ds-apply__stats--5{grid-template-columns:repeat(5,1fr)}
@media (max-width:1100px){.ds-apply__stats--5{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.ds-apply__stats--5{grid-template-columns:1fr 1fr}}
.ds-deals__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.ds-deals__tools{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 18px}
.ds-tabs{display:flex;gap:8px;flex-wrap:wrap}
.ds-tab{height:40px;padding:0 16px;border-radius:999px;border:1.5px solid var(--ds-line);background:#fff;color:var(--ds-ink);font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:border-color .15s,background .15s,color .15s}
.ds-tab span{font-size:11px;font-weight:800;background:var(--ds-paper);border-radius:999px;padding:2px 8px;color:var(--ds-ink-3)}
.ds-tab:hover{border-color:var(--ds-cyan)}
.ds-tab.is-active{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff}
.ds-tab.is-active span{background:rgba(255,255,255,.14);color:#fff}
.ds-search{position:relative;display:flex;align-items:center;color:var(--ds-muted)}
.ds-search svg{position:absolute;left:14px}
.ds-search input{height:44px;width:260px;max-width:100%;padding:0 14px 0 40px;border:1.5px solid var(--ds-line);border-radius:999px;font-family:inherit;font-size:14px;font-weight:600;color:var(--ds-ink)}
.ds-search input:focus{outline:none;border-color:var(--ds-cyan);box-shadow:0 0 0 3px rgba(0,184,240,.18)}
@media (max-width:640px){.ds-search,.ds-search input{width:100%}}
.ds-deal-row{cursor:pointer;transition:background .15s}
.ds-deal-row:hover,.ds-deal-row:focus-visible{background:var(--ds-paper);outline:none}
.ds-deals a.client{color:var(--ds-ink);text-decoration:none}
.ds-deals a.client:hover{color:var(--ds-cyan-deep);text-decoration:underline}
.ds-deal-note{display:block;margin-top:8px;padding:8px 12px;border-left:3px solid var(--ds-cyan);background:var(--ds-paper-2);border-radius:0 8px 8px 0;font-size:12.5px;font-weight:600;color:var(--ds-ink-2);max-width:420px}
.ds-deal-go{color:var(--ds-muted-2);width:24px}
.ds-deal-row:hover .ds-deal-go{color:var(--ds-cyan)}

/* ---------- Deal detail ---------- */
.ds-deal-hero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:22px;font-size:14px;font-weight:600;color:var(--ds-ink-3)}
.ds-deal-main{display:flex;flex-direction:column;gap:24px;min-width:0}
.ds-tracker-card{padding:32px 40px}
.ds-tracker{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);position:relative}
.ds-tracker li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}
.ds-tracker li::before{content:"";position:absolute;top:17px;left:-50%;width:100%;height:3px;background:var(--ds-line);z-index:0}
.ds-tracker li:first-child::before{display:none}
.ds-tracker li.is-done::before,.ds-tracker li.is-current::before{background:var(--ds-cyan)}
.ds-tracker .dot{position:relative;z-index:1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:900;background:#fff;border:2px solid var(--ds-line);color:var(--ds-muted)}
.ds-tracker li.is-done .dot{background:var(--ds-cyan);border-color:var(--ds-cyan);color:#fff}
.ds-tracker li.is-current .dot{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff;box-shadow:0 0 0 5px rgba(0,184,240,.22)}
.ds-tracker .label{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ds-muted)}
.ds-tracker li.is-current .label{color:var(--ds-ink)}
@media (max-width:760px){
  .ds-tracker-card{padding:22px 18px}
  .ds-tracker{grid-template-columns:1fr;gap:14px}
  .ds-tracker li{flex-direction:row;text-align:left}
  .ds-tracker li::before{display:none}
}
.ds-facts{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;border:1px solid var(--ds-line);border-radius:14px;overflow:hidden}
.ds-facts>div{padding:18px 20px;border-bottom:1px solid var(--ds-line);border-right:1px solid var(--ds-line)}
.ds-facts>div:nth-child(2n){border-right:0}
.ds-facts>div:nth-last-child(-n+2){border-bottom:0}
.ds-facts dt,.ds-facts__label{font-size:11px;font-weight:800;color:var(--ds-muted);letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.ds-facts dd{margin:0;font-size:18px;font-weight:800;color:var(--ds-ink)}
@media (max-width:640px){.ds-facts{grid-template-columns:1fr}.ds-facts>div{border-right:0}.ds-facts>div:nth-last-child(2){border-bottom:1px solid var(--ds-line)}}
.ds-situation{margin-top:22px}
.ds-situation p{font-size:15px;font-weight:500;color:var(--ds-ink-2);white-space:pre-line}
.ds-update{font-size:15px;line-height:1.6;color:#fff;font-weight:600;white-space:pre-line}
.ds-update--empty{color:rgba(255,255,255,.6);font-weight:500}
.ds-update__meta{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:rgba(255,255,255,.6);letter-spacing:.04em}
.ds-update__meta strong{color:var(--ds-cyan)}
.ds-alert--muted{background:var(--ds-paper);border-color:var(--ds-line);color:var(--ds-ink-3)}
.ds-fineprint{margin-top:22px;font-size:12px;line-height:1.55;color:var(--ds-muted);font-weight:500}

/* Membership widget details */
.ds-auth__card ul.hs-error-msgs{list-style:none;margin:0 0 8px;padding:0}
.ds-auth__card .hs-membership-global-error:empty{display:none}
.ds-auth__card .hs-membership-global-error{display:block;padding:12px 14px;border-radius:10px;background:rgba(214,51,44,.15);border:1px solid rgba(214,51,44,.4);color:#ffb3ae;font-size:13px;font-weight:700;text-transform:none;letter-spacing:0}
.ds-auth__card .hs-form-field:has(input[type=checkbox]){display:flex;align-items:center;gap:10px;margin:14px 0 4px}
.ds-auth__card .hs-form-field:has(input[type=checkbox]) label{margin:0;color:rgba(255,255,255,.75);letter-spacing:.06em;text-transform:none;font-size:13px;font-weight:600}
.ds-auth__card input[type=checkbox]{width:18px;height:18px;margin:0}
.ds-auth__card .hs-form-field{position:relative}
.ds-auth__card .hs-login-widget-show-password{position:absolute;right:14px;bottom:15px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;z-index:2}
.ds-auth__card .hs-login-widget-show-password+input,.ds-auth__card input[type=password]{padding-right:70px}
.ds-auth__card #hs_login_reset{display:inline-block;margin-top:10px}
@media (max-width:980px){.ds-nav__list{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.ds-nav__list::-webkit-scrollbar{display:none}}
.ds-admin-bar{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:8px 16px;background:var(--ds-ink);color:#fff;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.ds-admin-bar select{font:inherit;font-size:13px;letter-spacing:0;text-transform:none;font-weight:700;padding:6px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.3);background:#fff;color:var(--ds-ink)}

/* ---------- API docs page ---------- */
.ds-docs{font-size:15px;line-height:1.65;color:var(--ds-ink-2);overflow-wrap:anywhere}
.ds-docs h1{font-size:30px;font-weight:900;text-transform:uppercase;margin:0 0 16px}
.ds-docs h2{font-size:24px;font-weight:900;text-transform:uppercase;margin:40px 0 12px;padding-top:24px;border-top:1px solid var(--ds-line)}
.ds-docs h3{font-size:18px;font-weight:800;margin:28px 0 8px}
.ds-docs h4{font-size:15px;font-weight:800;margin:20px 0 6px}
.ds-docs p,.ds-docs ul,.ds-docs ol{margin:0 0 14px}
.ds-docs code{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:13px;background:var(--ds-paper-2);color:var(--ds-ink);padding:2px 6px;border-radius:6px}
.ds-docs pre{background:var(--ds-ink-deep);color:#e6edf6;padding:16px 18px;border-radius:12px;overflow-x:auto;margin:0 0 18px}
.ds-docs pre code{background:none;color:inherit;padding:0;font-size:13px}
.ds-docs table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:14px;display:block;overflow-x:auto}
.ds-docs th{text-align:left;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-muted);padding:8px 10px;border-bottom:1px solid var(--ds-line)}
.ds-docs td{padding:9px 10px;border-bottom:1px solid var(--ds-line-soft);vertical-align:top}
.ds-docs blockquote{margin:0 0 16px;padding:12px 16px;border-left:3px solid var(--ds-cyan);background:var(--ds-paper-2);border-radius:0 10px 10px 0}
.ds-docs a{color:var(--ds-cyan-deep)}

/* Commission snapshot (synced) */
.ds-synced{margin:0 0 18px;font-size:13px;font-weight:600;color:var(--ds-muted)}
.ds-na{color:var(--ds-muted);font-weight:700;font-style:italic}
.ds-deals .sub.ds-warn{color:#8a5a00;font-weight:700}
.ds-paydetail td{padding:0 14px 14px;border-bottom:1px solid var(--ds-line-soft)}
.ds-paydetail summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--ds-cyan-text);text-transform:uppercase;letter-spacing:.1em}
.ds-paydetail table{min-width:0;margin-top:10px;background:var(--ds-paper);border-radius:12px}
.ds-paydetail table td,.ds-paydetail table th{padding:10px 14px;font-size:13px}

/* API docs: per-ISO account panel */
.ds-kv{display:grid;grid-template-columns:220px 1fr;gap:14px 24px;margin:8px 0 0}
.ds-kv dt{font-size:11px;font-weight:800;color:var(--ds-muted);text-transform:uppercase;letter-spacing:.14em;padding-top:3px}
.ds-kv dd{margin:0;font-size:15px;font-weight:600;color:var(--ds-ink-2);word-break:break-word}
.ds-kv .sub{display:block;color:var(--ds-muted);font-size:12px;font-weight:500;margin-top:4px}
@media (max-width:640px){.ds-kv{grid-template-columns:1fr;gap:4px}.ds-kv dd{margin-bottom:12px}}

/* API docs: credentials */
.ds-secret{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}
.ds-secret__v{font-size:13px;background:var(--ds-paper);border:1px solid var(--ds-line);border-radius:8px;padding:6px 10px;word-break:break-all}
.ds-secret__btn{font:inherit;font-size:12px;font-weight:800;color:var(--ds-cyan-text);background:var(--ds-paper-2);border:0;border-radius:999px;padding:6px 12px;cursor:pointer}
.ds-secret__btn:hover{background:var(--ds-cyan-soft);color:var(--ds-ink)}
/* Auth pages: "Become an ISO" secondary CTA under the sign-in card */
.ds-auth__side{min-width:0}
.ds-auth__join{margin-top:20px;padding:18px 22px;border-radius:20px;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.ds-auth__join span{font-size:13px;font-weight:700;color:rgba(255,255,255,.75);letter-spacing:.04em}
.ds-cta--ghost-light{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.85);box-shadow:none}
.ds-cta--ghost-light:hover{background:#fff;color:var(--ds-ink);border-color:#fff;box-shadow:none}
@media (max-width:480px){.ds-auth__join{flex-direction:column;align-items:stretch;text-align:center;padding:18px}.ds-auth__join .ds-cta{width:100%}}
/* Commission deals (contract v2: My Deals "Your deals in Delancey's records", deal page commission + history panels) */
.ds-pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}
.ds-pager__n{font-size:13px;font-weight:700;color:var(--ds-muted)}
.ds-comm-badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.ds-comm-badges:empty{display:none}
.ds-comm-panel .ds-facts dd .sub{display:block;font-size:12px;font-weight:600;color:var(--ds-muted);margin-top:4px}
.ds-situation p.ds-warn{color:#8a5a00;font-weight:700}
.ds-comm-old summary,.ds-comm-history summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--ds-cyan-text);text-transform:uppercase;letter-spacing:.1em}
.ds-comm-hgroup{padding:14px 0;border-bottom:1px solid var(--ds-line-soft)}
.ds-comm-hgroup__h{margin:0 0 8px;font-size:15px;font-weight:800;color:var(--ds-ink)}
.ds-comm-hpay{display:inline-block;margin-top:8px;font-size:12px;font-weight:800;color:var(--ds-cyan-text);text-transform:uppercase;letter-spacing:.1em}
.ds-deals .sub.ds-comm-tracked{color:var(--ds-cyan-text);font-weight:700}
/* Empty / unavailable notes inside the white commission cards (.ds-update was made for the dark sidebar card). */
.ds-comm-panel .ds-update,#commission-payments .ds-update,.ds-comm-history .ds-update{color:var(--ds-ink-3);font-weight:600}

/* =====================================================================
   CLIENT PORTAL additions (cp-*). Same tokens as the ds-* system above;
   nothing here overrides an ISO rule.
   ===================================================================== */
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--ds-cyan-deep);outline-offset:2px}
.cp-skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ds-ink);color:#fff;padding:10px 16px;font-weight:800;border-radius:0 0 10px 0}
.cp-skip:focus{left:0}
.ds-nav__link[aria-current=page]{color:var(--ds-cyan);border-bottom-color:var(--ds-cyan)}
.cp-navwrap{margin:0 auto;min-width:0}
.cp-navwrap .ds-nav__list{margin:0}
@media (max-width:980px){.cp-navwrap{order:3;width:100%}.cp-navwrap .ds-nav__list{width:100%}}

/* Banners: admin preview, stale data, data paused */
.cp-banner{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:9px 16px;text-align:center;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.cp-banner--admin{background:var(--ds-gold);color:var(--ds-ink)}
.cp-banner--preview{background:#ffd400;color:#1d1a00;border-bottom:3px solid #b89600;padding:16px;font-size:16px;letter-spacing:.03em;text-transform:none;font-weight:900}
.cp-preview-off{opacity:.6}
.cp-banner--stale{background:#fff6dc;color:#6b4800;border-bottom:1px solid #f1d58a;letter-spacing:.04em;text-transform:none;font-size:13px;font-weight:700}

/* Case switcher (multi-business members) */
.cp-switch{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}
.cp-switch label{font-size:11px;font-weight:800;color:var(--ds-muted);letter-spacing:.14em;text-transform:uppercase}
.cp-switch select{height:44px;min-width:0;max-width:100%;padding:0 40px 0 16px;border:1.5px solid var(--ds-line);border-radius:999px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230f1a2d' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center;-webkit-appearance:none;appearance:none;font-family:inherit;font-size:14px;font-weight:700;color:var(--ds-ink)}
.cp-switch .ds-cta{height:44px}

/* Page grid */
.cp-main{display:flex;flex-direction:column;gap:24px;min-width:0}
.cp-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cp-row--3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.cp-row--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.cp-row,.cp-row--3{grid-template-columns:1fr;gap:16px}.cp-main{gap:16px}}
.cp-card{padding:32px 36px;background:#fff;border:1px solid var(--ds-line);border-radius:var(--ds-radius-card)}
@media (max-width:760px){.cp-card{padding:22px 18px;border-radius:18px}}
.cp-card__kicker{font-size:11px;font-weight:800;color:var(--ds-cyan-deep);letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px}
.cp-card__h{font-size:22px;font-weight:900;text-transform:uppercase;letter-spacing:-.01em;line-height:1.1;margin:0 0 6px;color:var(--ds-ink)}
.cp-card__sub{font-size:14px;color:var(--ds-ink-3);font-weight:500}
.cp-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.cp-link{font-size:12px;font-weight:800;color:var(--ds-cyan-text);text-transform:uppercase;letter-spacing:.1em;text-decoration:none;white-space:nowrap}
.cp-link:hover{text-decoration:underline}

/* Next action */
.cp-action{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:24px 28px;background:var(--ds-paper-2);border:1.5px solid rgba(0,184,240,.35);border-radius:20px}
.cp-action__icon{width:44px;height:44px;border-radius:50%;background:var(--ds-cyan);color:#fff;display:grid;place-items:center}
.cp-action__kicker{font-size:11px;font-weight:800;color:var(--ds-cyan-text);letter-spacing:.16em;text-transform:uppercase;margin-bottom:4px}
.cp-action__t{font-size:18px;font-weight:800;color:var(--ds-ink);line-height:1.3}
.cp-action__s{font-size:14px;color:var(--ds-ink-3);font-weight:500;margin-top:4px}
.cp-action--calm{background:#fff;border-color:var(--ds-line)}
.cp-action--calm .cp-action__icon{background:rgba(34,167,91,.12);color:var(--ds-success)}
@media (max-width:760px){.cp-action{grid-template-columns:auto 1fr;padding:20px 18px}.cp-action .ds-cta{grid-column:1/-1;width:100%}}

/* Program status tracker: reuse .ds-tracker with 5 steps */
.cp-tracker{grid-template-columns:repeat(6,1fr)}
@media (max-width:760px){.cp-tracker{grid-template-columns:1fr}}
.cp-status-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.cp-status-line strong{font-size:20px;font-weight:900;text-transform:uppercase;letter-spacing:-.01em}

/* Money cards: 4 states */
.cp-money{display:flex;flex-direction:column;gap:6px;padding:26px 28px;background:#fff;border:1px solid var(--ds-line);border-radius:20px;min-width:0}
.cp-money__label{font-size:11px;font-weight:800;color:var(--ds-muted);letter-spacing:.14em;text-transform:uppercase}
.cp-money__value{font-size:36px;font-weight:900;color:var(--ds-ink);letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cp-money__sub{font-size:13px;color:var(--ds-ink-3);font-weight:500}
.cp-money__note{font-size:15px;font-weight:700;color:var(--ds-ink-2);line-height:1.4;margin-top:4px}
.cp-money__note a{font-weight:800}
.cp-money__meta{margin-top:auto;padding-top:10px;font-size:12px;color:var(--ds-muted);font-weight:600}
.cp-money--unavailable,.cp-money--hidden{background:var(--ds-paper)}
.cp-money--pending .cp-money__value,.cp-money--stale .cp-money__value{color:var(--ds-ink-3)}
.cp-money--feature{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff;position:relative;overflow:hidden}
.cp-money--feature::after{content:"";position:absolute;right:-30px;bottom:-30px;width:150px;height:200px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.06;pointer-events:none}
.cp-money--feature>*{position:relative;z-index:1}
.cp-money--feature .cp-money__label{color:var(--ds-cyan)}
.cp-money--feature .cp-money__value{color:#fff}
.cp-money--feature .cp-money__sub,.cp-money--feature .cp-money__meta{color:rgba(255,255,255,.65)}
.cp-money--feature .cp-money__note{color:#fff}
.cp-money--feature .cp-money__note a,.cp-money--feature .cp-money__meta a{color:var(--ds-cyan)}
.cp-money--feature.cp-money--stale .cp-money__value,.cp-money--feature.cp-money--pending .cp-money__value{color:rgba(255,255,255,.75)}
.cp-state{display:inline-flex;align-self:flex-start;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:#fff6dc;color:#8a5a00}
.cp-state--muted{background:var(--ds-line-soft);color:var(--ds-ink-3)}
.cp-row--3 .cp-money__value{font-size:28px}
@media (max-width:760px){.cp-money{padding:20px 18px}.cp-money__value,.cp-row--3 .cp-money__value{font-size:30px}}

/* Negotiator card (dark, like the ISO "Update from Delancey" card) */
.cp-neg__who{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.cp-neg__avatar{position:relative;width:64px;height:64px;flex:0 0 64px}
.cp-neg__photo{position:absolute;inset:0;width:64px;height:64px;border-radius:50%;object-fit:cover;color:transparent;font-size:0}
.cp-neg__initials{width:64px;height:64px;border-radius:50%;flex:0 0 64px;display:grid;place-items:center;background:rgba(0,184,240,.14);color:var(--ds-cyan);font-size:22px;font-weight:900}
.cp-neg__name{font-size:20px;font-weight:900;color:#fff;line-height:1.15}
.cp-neg__title{font-size:13px;color:rgba(255,255,255,.65);font-weight:600;margin-top:2px}
.cp-neg__cover{margin:-6px 0 16px;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.06);font-size:13px;line-height:1.5;color:rgba(255,255,255,.8);font-weight:600}
.cp-neg__cover strong{color:#fff}
.cp-neg__lines{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;font-size:14px;font-weight:600}
.cp-neg__lines a{color:var(--ds-cyan);text-decoration:none;overflow-wrap:anywhere}
.cp-neg__lines a:hover{text-decoration:underline}
.cp-neg__lines span{color:rgba(255,255,255,.6);font-size:12px;font-weight:600}
.cp-neg__btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cp-neg__btns .ds-cta{height:46px;padding:0 14px;font-size:12px;width:100%}
.cp-neg__btns .ds-cta--full{grid-column:1/-1}
.cp-neg__btns .ds-cta:only-child{grid-column:1/-1}
.cp-neg__none{font-size:14px;color:rgba(255,255,255,.75);font-weight:500;line-height:1.55}

/* Lists: updates, document requests, receipts, messages */
.cp-list{list-style:none;margin:0;padding:0}
.cp-list>li{padding:16px 0;border-bottom:1px solid var(--ds-line-soft);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;align-items:start}
.cp-list>li:first-child{padding-top:0}
.cp-list>li:last-child{border-bottom:0;padding-bottom:0}
.cp-list__t{font-size:15px;font-weight:800;color:var(--ds-ink);overflow-wrap:anywhere}
.cp-list__s{font-size:14px;color:var(--ds-ink-3);font-weight:500;margin-top:2px;white-space:pre-line;overflow-wrap:anywhere}
.cp-list__d{font-size:12px;color:var(--ds-muted);font-weight:700;white-space:nowrap}
.cp-list__aside{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
@media (max-width:640px){.cp-list>li{grid-template-columns:1fr}.cp-list__aside{align-items:flex-start;flex-direction:row;flex-wrap:wrap}}
.cp-empty{padding:18px 20px;border-radius:14px;background:var(--ds-paper);font-size:14px;color:var(--ds-ink-3);font-weight:600}

/* Lenders */
.cp-lenders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:900px){.cp-lenders{grid-template-columns:1fr}}
.cp-lender{padding:26px 28px;background:#fff;border:1px solid var(--ds-line);border-radius:20px;display:flex;flex-direction:column;gap:16px;min-width:0}
.cp-lender__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.cp-lender__name{font-size:19px;font-weight:900;color:var(--ds-ink);text-transform:uppercase;letter-spacing:-.01em;line-height:1.15;overflow-wrap:anywhere}
.cp-lender__flags{display:flex;gap:6px;flex-wrap:wrap}
.cp-lender .ds-facts dd{font-size:17px;font-variant-numeric:tabular-nums}
.cp-lender .ds-facts dd.ds-na{font-size:14px}
.cp-lender__note{font-size:13px;color:var(--ds-ink-3);font-weight:500}
@media (max-width:640px){.cp-lender{padding:20px 18px}.cp-lender .ds-facts{grid-template-columns:1fr 1fr}.cp-lender .ds-facts>div{border-right:1px solid var(--ds-line)}.cp-lender .ds-facts>div:nth-child(2n){border-right:0}.cp-lender .ds-facts>div:nth-last-child(-n+2){border-bottom:0}.cp-lender .ds-facts>div{padding:14px}}

/* Payments: rows become cards on phones */
.cp-pay td.when{white-space:nowrap}
.cp-pay__more{display:flex;justify-content:center;margin-top:18px}
.ds-status--returned,.ds-status--missed{background:#fdecec;color:#a33a3a}
.ds-status--scheduled{background:var(--ds-paper-2);color:var(--ds-cyan-text)}
.ds-status--collected{background:rgba(34,167,91,.1);color:var(--ds-success)}
@media (max-width:640px){
  .cp-pay table{min-width:0}
  .cp-pay thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .cp-pay tr{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:14px 0;border-bottom:1px solid var(--ds-line-soft)}
  .cp-pay td{padding:0;border:0}
  .cp-pay td.num{grid-column:2;grid-row:1;font-size:16px;font-weight:800;color:var(--ds-ink)}
  .cp-pay td.st{grid-column:1/-1}
}

/* Forms (compose message, upload) in ds style */
.cp-form{display:flex;flex-direction:column;gap:18px}
.cp-field label,.cp-field legend{display:block;font-size:12px;font-weight:800;color:var(--ds-ink);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;padding:0}
.cp-field .hint{display:block;font-size:13px;color:var(--ds-muted);font-weight:500;margin-top:6px;text-transform:none;letter-spacing:0}
.cp-field fieldset{border:0;margin:0;padding:0}
.cp-field input[type=text],.cp-field select,.cp-field textarea{width:100%;border:1.5px solid var(--ds-line);border-radius:12px;padding:12px 14px;font-family:inherit;font-size:16px;font-weight:500;color:var(--ds-ink);background:#fff}
.cp-field select{height:50px}
.cp-field textarea{min-height:150px;resize:vertical;line-height:1.5}
.cp-field input:focus,.cp-field select:focus,.cp-field textarea:focus{outline:none;border-color:var(--ds-cyan);box-shadow:0 0 0 3px rgba(0,184,240,.18)}
.cp-field input[type=file]{width:100%;padding:18px;border:1.5px dashed var(--ds-line);border-radius:12px;background:var(--ds-paper);font-family:inherit;font-size:14px;font-weight:600;color:var(--ds-ink-2)}
.cp-field input[type=file]::file-selector-button{margin-right:14px;height:40px;padding:0 18px;border-radius:999px;border:2px solid var(--ds-ink);background:#fff;font-family:inherit;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.cp-choice{display:flex;gap:10px;flex-wrap:wrap}
.cp-choice label{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 18px;border:1.5px solid var(--ds-line);border-radius:999px;font-size:14px;font-weight:700;text-transform:none;letter-spacing:0;cursor:pointer;margin:0}
.cp-choice input{accent-color:var(--ds-cyan);width:18px;height:18px;margin:0}
.cp-choice label:has(input:checked){border-color:var(--ds-ink);background:var(--ds-paper)}
.cp-form__foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cp-form__status{font-size:14px;font-weight:700;color:var(--ds-ink-2)}
.cp-form__status[data-kind=error]{color:var(--ds-danger)}
.cp-form__status[data-kind=ok]{color:var(--ds-success)}
@media (max-width:640px){.cp-form__foot .ds-cta{width:100%}}

/* FAQ */
.cp-faq details{border-bottom:1px solid var(--ds-line-soft);padding:16px 0}
.cp-faq details:last-child{border-bottom:0}
.cp-faq summary{cursor:pointer;font-size:16px;font-weight:800;color:var(--ds-ink);list-style:none;display:flex;justify-content:space-between;gap:12px}
.cp-faq summary::-webkit-details-marker{display:none}
.cp-faq summary::after{content:"+";font-size:22px;line-height:1;color:var(--ds-cyan-deep);font-weight:700}
.cp-faq details[open] summary::after{content:"\2013"}
.cp-faq p{margin-top:10px;font-size:15px;color:var(--ds-ink-3);font-weight:500}
.cp-urgent{border-left:4px solid var(--ds-danger)}
.ds-nav__who-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ds-nav__logout{white-space:nowrap}
.ds-nav__right .ds-cta{white-space:nowrap}
@media (max-width:1320px){.ds-nav__who{display:none}}
.ds-apply__stat .n.cp-stat-money{font-size:24px;overflow-wrap:anywhere}
.ds-apply__stat .n .ds-na{font-size:13px;font-style:normal;color:var(--ds-muted);font-weight:700;letter-spacing:0}
.ds-apply__stat .n .sub{display:block;font-size:11px;color:#8a5a00;font-weight:700;margin-top:4px}
.cp-noamount [data-amount-col],.cp-noamount td.num{display:none}
.cp-list__s.ds-warn{color:#a33a3a;font-weight:700}
.cp-lender .ds-status,.cp-list .ds-status,.cp-pay .ds-status{white-space:normal;max-width:100%;overflow-wrap:anywhere}
[hidden]{display:none!important}

/* =====================================================================
   MOBILE UX PASS (390px target). Phones and tablets only; desktop is unchanged.
   ===================================================================== */
/* Dashboard: negotiator card under the next step on narrow screens (the sidebar copy is hidden there). */
.cp-neg-slot{display:none}
/* Real cases with no approved figures render an empty facts list: no empty bordered box under the lender name. */
.cp-lender .ds-facts:not(:has(>div)){display:none}
@media (max-width:1100px){.cp-neg-slot{display:block}.cp-neg-aside{display:none}}

/* Sticky contact bar (partials/contact-bar.html): replaces the header "Message us" button, which is hidden <=980px. */
.cp-cbar{display:none}
@media (max-width:980px){
  .cp-cbar{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);border-top:1px solid var(--ds-line);box-shadow:0 -8px 24px rgba(15,26,45,.08)}
  .cp-cbar__btn{flex:1 1 0;min-width:0;height:48px;padding:0 12px;font-size:12px;gap:8px;box-shadow:none}
  .cp-cbar__btn:hover{transform:none}
  /* room for the bar at the end of the page, on the dark footer (no white strip under it) */
  body:has(.cp-cbar) .ds-footer{padding-bottom:calc(24px + 70px + env(safe-area-inset-bottom,0px))}
  /* focus/scroll-into-view never lands a control behind the bar (WCAG 2.4.11) */
  html:has(.cp-cbar){scroll-padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
  /* typing a message or picking a case: get the bar out of the keyboard's way */
  body:has(.cp-form :focus) .cp-cbar,body:has(.cp-switch select:focus) .cp-cbar{display:none}
}
@media print{.cp-cbar{display:none!important}}

@media (max-width:640px){
  /* Header: not sticky on phones (the contact bar is the sticky element); all six tabs visible, 3 x 2. */
  .ds-nav{position:static}
  .ds-nav__inner{padding:8px 16px 12px;gap:4px 14px}
  .ds-nav__logo img{height:44px}
  .ds-nav__logout{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}
  .cp-navwrap .ds-nav__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;padding-top:10px;white-space:normal}
  .cp-navwrap .ds-nav__link{display:flex;width:100%;justify-content:center;min-height:44px;padding:0 6px;border:1.5px solid var(--ds-line);border-radius:12px;font-size:13px;text-align:center;line-height:1.15}
  .cp-navwrap .ds-nav__link:hover{border-color:var(--ds-cyan)}
  .cp-navwrap .ds-nav__link.is-active,.cp-navwrap .ds-nav__link[aria-current=page]{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff}

  /* Hero: tighter, so the next step starts higher up. */
  .ds-inner-hero{padding:20px 16px 26px}
  .ds-inner-hero h1{font-size:34px}
  .ds-breadcrumbs{margin-bottom:8px}
  .ds-breadcrumbs a{display:inline-flex;align-items:center;min-height:44px}
  .ds-eyebrow{margin-bottom:12px}
  .ds-apply{padding:16px 16px 48px}
  .cp-switch{margin-top:16px}
  .cp-switch select{flex:1 1 180px;height:48px}
  .cp-switch .ds-cta{height:48px}

  /* Tap targets: 44px minimum for standalone links and controls (links inside sentences are exempt). */
  .cp-card__head{align-items:center}
  .cp-link{display:inline-flex;align-items:center;min-height:44px;margin:-10px 0}
  .cp-money__meta a,.cp-money__note a{display:inline-flex;align-items:center;min-height:44px}
  .cp-neg__lines{gap:0}
  .cp-neg__lines a{display:flex;align-items:center;min-height:44px}
  .cp-neg__btns .ds-cta{height:48px}
  .ds-apply__call-card-phone{display:flex;align-items:center;min-height:44px;margin-bottom:2px}
  .ds-apply__call-card-mail{display:inline-flex;align-items:center;min-height:44px;margin-top:2px}
  .ds-footer__col ul{gap:0}
  .ds-footer__col a,.ds-footer__phone,.ds-footer__email{display:flex;align-items:center;min-height:44px}
  .ds-footer__phone{margin-bottom:0}
  .cp-faq details{padding:4px 0}
  .cp-faq summary{align-items:center;min-height:52px;padding:8px 0}
  .cp-faq p{margin:0 0 12px}
  .cp-pay__more .ds-cta{width:100%}

  /* Negotiator card: a lone Call (no text number) spans the row instead of sitting half-width over "Send a message". */
  .cp-neg__btns .ds-cta:first-child:has(+ .ds-cta--full:last-child){grid-column:1/-1}

  /* Dashboard: the negotiator card under the next step, a little more compact. */
  .cp-neg-slot .ds-apply__benefits-card{padding:22px 18px;border-radius:18px}
  .cp-neg-slot .cp-neg__who{margin-bottom:10px}
  .cp-neg-slot .cp-neg__lines{margin-bottom:12px}

  /* Payments: each deposit row is a card. Line 1: deposit + status. Line 2: date + amount. */
  .cp-pay .ds-deals{padding-top:0}
  .cp-pay .ds-deals__wrap{overflow:visible}
  .cp-pay table{display:block;width:100%}
  .cp-pay tbody{display:flex;flex-direction:column;gap:8px}
  .cp-pay tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"what st" "when amt";align-items:center;gap:2px 12px;padding:10px 14px;border:1px solid var(--ds-line);border-radius:14px;background:#fff}
  .cp-pay tr:has(td[colspan]){display:block;border:0;padding:0;background:none}
  .cp-pay td{display:block;padding:0;border:0;min-width:0}
  .cp-pay td:nth-child(2){grid-area:what}
  .cp-pay td.st{grid-area:st;grid-column:auto;justify-self:end}
  .cp-pay td.when{grid-area:when;font-size:13px;font-weight:600;color:var(--ds-ink-3)}
  .cp-pay td.num{grid-area:amt;grid-column:auto;grid-row:auto;justify-self:end;font-size:16px;font-weight:800;color:var(--ds-ink)}
  .cp-pay td .client{font-size:15px}
  .cp-pay .cp-form__status{margin-top:12px}
  .cp-pay td[colspan]{padding:16px;border-radius:14px;background:var(--ds-paper)}
  .cp-pay tr:has(.ds-status--returned),.cp-pay tr:has(.ds-status--missed){border-color:#f2c4c1;background:#fffafa}

  /* Stat strips: 2 x 2 with room for long money values. */
  .ds-apply__stats{padding:18px 14px;gap:16px 8px}
  .ds-apply__stat{padding:0 4px}
  .ds-apply__stat .n.cp-stat-money{font-size:20px}

  /* Program tracker: same six steps, less height. */
  .cp-tracker{gap:8px}
  .cp-tracker .dot{width:30px;height:30px;flex:0 0 30px;font-size:12px}
}

/* =====================================================================
   ACCESSIBILITY (WCAG 2.2 AA) - client portal only; see docs/accessibility.md.
   Brand kept: brand cyan (#00b8f0) stays the fill/accent colour (buttons, rules, tracker, icons, text on
   navy). Only where cyan was TEXT on a light background (2.3:1 / 3.98:1) or a light-background focus ring
   does it switch to the darker brand token --ds-cyan-text (#006e94, 5.7:1 on white).
   Cyan buttons keep their cyan fill and take navy text (7.6:1) instead of white (2.3:1).
   ===================================================================== */
/* 1.4.3 text contrast on light backgrounds */
a{color:var(--ds-cyan-text)}
.ds-emph,.ds-eyebrow,.cp-card__kicker,.ds-apply__call-card-mail,.ds-breadcrumbs a,.hs-form .hs-richtext p strong,.ds-apply__trust-card .icon{color:var(--ds-cyan-text)}
.ds-apply__call-card-eyebrow,.ds-apply__stat .n{color:var(--ds-cyan-text)}
.ds-nav__link:hover,.ds-nav__link.is-active,.ds-nav__link[aria-current=page]{color:var(--ds-cyan-text);border-bottom-color:var(--ds-cyan-text)}
/* on navy the bright cyan already passes (7.6:1): keep it there */
.ds-auth .ds-emph,.ds-auth .ds-eyebrow,.ds-apply__benefits-card .ds-emph,.ds-apply__benefits-card a:not(.ds-cta),.cp-money--feature a{color:var(--ds-cyan)}
/* cyan buttons: cyan fill, navy text (white on cyan is 2.3:1) */
.ds-cta,.ds-cta:hover,.ds-auth__card button,.ds-auth__card input[type=submit],.hs-form input[type=submit]{color:var(--ds-ink)}
.ds-cta--ghost{color:var(--ds-ink)}
.ds-cta--ghost:hover,.ds-cta--ghost-light{color:#fff}
.ds-cta--ghost-light:hover{color:var(--ds-ink)}
.ds-auth__card button[type=button]{color:var(--ds-cyan)}
/* "Sign in" button on logout / access-denied: .ds-auth__card a (cyan) out-ranked .ds-cta, giving cyan on cyan (1:1) */
.ds-auth__card a.ds-cta,.ds-auth__card a.ds-cta:hover{color:var(--ds-ink);display:inline-flex}
/* 1.4.11 non-text contrast: icons/checkmarks on cyan; form-field edges (the default line colour is 1.3:1) */
.ds-tracker li.is-done .dot,.cp-action__icon{color:var(--ds-ink)}
.cp-field input[type=text],.cp-field select,.cp-field textarea,.cp-switch select,.cp-field input[type=file]{border-color:#7b879a}
/* 2.4.7 focus visible: a ring that passes 3:1 on white (dark cyan) and on navy (bright cyan). Fields keep their
   brand glow but also get a real outline, so focus survives Windows High Contrast / forced colours. */
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--ds-cyan-text);outline-offset:2px}
.ds-footer :focus-visible,.ds-auth :focus-visible,.ds-apply__benefits-card :focus-visible,.cp-money--feature :focus-visible,.cp-skip:focus-visible{outline-color:var(--ds-cyan)}
.cp-field input:focus,.cp-field select:focus,.cp-field textarea:focus,.hs-form input:focus,.hs-form select:focus,.hs-form textarea:focus,.ds-search input:focus,.cp-switch select:focus{outline:2px solid transparent;border-color:var(--ds-cyan-text)}
.cp-field input:focus-visible,.cp-field select:focus-visible,.cp-field textarea:focus-visible,.cp-switch select:focus-visible{outline:3px solid var(--ds-cyan-text);outline-offset:2px}
.ds-auth__card input:focus{outline:2px solid transparent}
.ds-auth__card input:focus-visible{outline:3px solid var(--ds-cyan);outline-offset:2px}
.ds-deal-row:focus-visible{outline:3px solid var(--ds-cyan-text);outline-offset:-3px}
/* 2.4.11 focus not obscured: anchors (#compose, #upload) and focused controls scroll clear of the sticky header */
html{scroll-padding-top:120px}
@media (max-width:980px){html{scroll-padding-top:170px}}
/* phones / 400% zoom: the wrapped header can be 3 rows tall, so it scrolls away instead of sitting over content */
@media (max-width:640px){.ds-nav{position:relative}html{scroll-padding-top:16px}}
.cp-skip:focus{z-index:200}
/* 2.5.8 target size (24x24 CSS px minimum) for small text controls */
.ds-nav__logout,.cp-link,.hs-login-widget-show-password{display:inline-flex;align-items:center;min-height:24px}
.ds-auth__card button[type=button]{min-height:24px}
/* 1.3.1 footer column headings are h2 (were h4 after the page's h2s); same look */
.ds-footer__col h2{font-size:12px;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.18em;margin:0 0 14px;line-height:1.55}
/* 1.4.10 reflow: on phones / at 400% zoom the nav wraps instead of hiding links in a scroller with no scrollbar */
@media (max-width:980px){.cp-navwrap .ds-nav__list{flex-wrap:wrap;overflow:visible;white-space:normal;row-gap:0;column-gap:20px}}
/* 1.4.10 / 1.4.12: long names and labels wrap instead of pushing the page sideways (320px + text spacing) */
.cp-status-line strong,.cp-neg__name,.cp-neg__title,.cp-neg>div{min-width:0;overflow-wrap:anywhere}
.cp-lender .ds-facts dt,.cp-lender .ds-facts dd{overflow-wrap:anywhere}
@media (max-width:640px){.cp-lender .ds-facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
/* screen-reader-only text: the full clip pattern */
.ds-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
/* 2.3.3 (AAA, free): respect reduced motion */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}.ds-cta:hover,.ds-cta:hover svg{transform:none}}
/* forced colours: keep cyan buttons and status pills visibly bounded */
@media (forced-colors:active){.ds-cta,.ds-status,.cp-state{border:1px solid CanvasText}}

/* =====================================================================
   CALM COMMAND layer (design pass, 2026-10-29; winner of the concept review, docs/astra/design.md).
   cc-* only adds to the ds-* system above. Same tokens; mobile 390 is primary.
   Fixes from the review: ink-deep text on cyan everywhere (8.1:1), no #8a95a6 text, urgent band never squeezes its
   text, one shared chip component, the funder track always has a text step line.
   ===================================================================== */
:root{
  --cc-bg:#f4f8fb;
  --cc-gold-soft:#fff4d6;--cc-gold-line:#f0d58c;--cc-gold-text:#6e4700;
  --cc-red-soft:#fdeeed;--cc-red-line:#f3c4c0;--cc-red-text:#9e2b25;
  --cc-green-soft:#e6f4eb;--cc-green-text:#14612f;
  --cc-unavail-line:#c3cfdc;
  --cc-radius:22px;--cc-radius-sm:16px;
  --cc-tap:52px;
  --cc-shadow:0 1px 2px rgba(15,26,45,.04),0 10px 30px -12px rgba(15,26,45,.10);
  --cc-tabbar-h:68px;
}
body.cc{background:var(--cc-bg);font-size:16px}
.cc *{min-width:0}
.cc-wrap{max-width:1200px;margin:0 auto;padding:0 40px}
@media (max-width:760px){.cc-wrap{padding:0 16px}}
.cc svg{flex:0 0 auto}

/* ---------- Nav ---------- */
.cc-nav .ds-nav__inner{max-width:1280px;padding:10px 40px;gap:24px}
.cc-nav .ds-nav__logo img{height:60px}
.cc-nav .ds-nav__list{gap:26px;font-size:14px}
.cc-nav .ds-nav__right{gap:18px}
.cc-urgent{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 20px 0 8px;border-radius:999px;background:var(--ds-ink);color:#fff;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;box-shadow:0 10px 24px -12px rgba(15,26,45,.6);transition:transform var(--ds-dur) var(--ds-ease),background var(--ds-dur) var(--ds-ease)}
.cc-urgent:hover{background:var(--ds-ink-2);transform:translateY(-1px);color:#fff}
.cc-urgent__dot{width:32px;height:32px;border-radius:50%;background:var(--ds-danger);display:grid;place-items:center;color:#fff}
.cc-urgent__short{display:none}
@media (max-width:1180px){.cc-nav .ds-nav__list{gap:18px;font-size:13px}.cc-urgent__long{display:none}.cc-urgent__short{display:inline}}
@media (max-width:980px){
  .cc-nav .ds-nav__inner{padding:8px 16px;flex-wrap:nowrap}
  .cc-nav .ds-nav__logo img{height:42px}
  .cc-nav .cp-navwrap,.cc-nav .ds-nav__logout{display:none}
  .cc-urgent{height:46px;padding:0 16px 0 7px;font-size:11.5px}
  .cc-urgent__dot{width:30px;height:30px}
}

/* ---------- Bottom tab bar (phones) ---------- */
.cc-tabbar{display:none}
@media (max-width:980px){
  body.cc{padding-bottom:calc(var(--cc-tabbar-h) + env(safe-area-inset-bottom))}
  .cc-tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--ds-line);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -8px 24px -16px rgba(15,26,45,.25)}
  .cc-tabbar a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:var(--cc-tabbar-h);color:var(--ds-muted);text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.02em}
  .cc-tabbar a[aria-current=page]{color:var(--ds-cyan-text)}
  .cc-tabbar a[aria-current=page]::before{content:"";position:absolute;top:0;left:28%;right:28%;height:3px;border-radius:0 0 3px 3px;background:var(--ds-cyan)}
  .cc-tabbar__badge{position:absolute;top:9px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ds-danger);color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center}
}

/* ---------- Hero (short) ---------- */
.cc-hero{position:relative;overflow:hidden;background:#fff;border-bottom:1px solid var(--ds-line);padding:40px 0 36px}
.cc-hero::after{content:"";position:absolute;right:max(-30px,calc(50% - 680px));top:50%;transform:translateY(-50%);width:220px;height:300px;background:var(--ds-mark) no-repeat center/contain;opacity:.06;pointer-events:none}
.cc-hero .cc-wrap{position:relative;z-index:1}
.cc-hero__top{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin-bottom:16px}
.cc-hero__top .ds-eyebrow{margin:0}
.cc-hero h1{font-size:clamp(30px,4.2vw,54px);line-height:1.02;font-weight:900;letter-spacing:-.025em;text-transform:uppercase;color:var(--ds-ink);max-width:900px;text-wrap:balance}
.cc-hero__sub{font-size:18px;line-height:1.55;color:var(--ds-ink-3);font-weight:500;margin-top:14px;max-width:700px}
.cc-crumb{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;font-weight:800;color:var(--ds-cyan-text);text-decoration:none;letter-spacing:.06em;text-transform:uppercase;margin:-10px 0 4px}
.cc-crumb svg{transform:rotate(180deg)}
.cc-fresh{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:20px;font-size:13px;font-weight:600;color:var(--ds-muted)}
.cc-fresh span{display:inline-flex;align-items:center;gap:7px}
.cc-fresh b{color:var(--ds-ink-2);font-weight:700}
.cc-case{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 16px 0 14px;border:1.5px solid var(--ds-line);border-radius:999px;background:#fff;font:inherit;font-size:13px;font-weight:700;color:var(--ds-ink);cursor:pointer}
.cc-case small{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ds-muted)}
@media (max-width:760px){
  .cc-hero{padding:22px 0 24px}
  .cc-hero::after{width:140px;height:190px;right:-50px;opacity:.05}
  .cc-hero__sub{font-size:16px;margin-top:10px}
  .cc-fresh{margin-top:14px;font-size:12px;gap:4px 14px}
  .cc-hero__top{margin-bottom:12px}
}

/* ---------- Body / layout ---------- */
.cc-body{padding:36px 0 96px}
.cc-stack{display:flex;flex-direction:column;gap:28px}
.cc-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:28px;align-items:start}
.cc-grid>.cc-stack{min-width:0}
.cc-dash{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-template-areas:"now person" "journey money" "journey risks";gap:28px;align-items:start}
.cc-dash>[data-area=now]{grid-area:now}.cc-dash>[data-area=person]{grid-area:person}.cc-dash>[data-area=journey]{grid-area:journey}.cc-dash>[data-area=money]{grid-area:money}.cc-dash>[data-area=risks]{grid-area:risks}
.cc-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cc-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:1100px){.cc-grid,.cc-dash{grid-template-columns:1fr;grid-template-areas:"now" "journey" "money" "risks" "person"}.cc-three{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.cc-body{padding:20px 0 56px}.cc-stack,.cc-grid,.cc-dash{gap:18px}.cc-two,.cc-three{grid-template-columns:1fr;gap:12px}}

/* ---------- Cards & section heads ---------- */
.cc-card{background:#fff;border:1px solid var(--ds-line);border-radius:var(--cc-radius);padding:32px;box-shadow:var(--cc-shadow)}
.cc-card--flat{box-shadow:none}
.cc-card--paper{background:var(--ds-paper);box-shadow:none}
@media (max-width:760px){.cc-card{padding:22px 18px;border-radius:20px}}
.cc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;margin-bottom:20px}
.cc-head>div:first-child{flex:1 1 200px}
.cc-head>.cc-link{margin-top:6px}
.cc-kicker{font-size:11px;font-weight:800;color:var(--ds-cyan-text);letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;display:flex;align-items:center;gap:8px}
.cc-h2{font-size:22px;font-weight:900;text-transform:uppercase;letter-spacing:-.01em;line-height:1.1;color:var(--ds-ink)}
.cc-h3{font-size:17px;font-weight:800;color:var(--ds-ink);line-height:1.3}
.cc-sub{font-size:15px;color:var(--ds-ink-3);font-weight:500;line-height:1.55;margin-top:6px}
.cc-small{font-size:13px;color:var(--ds-muted);font-weight:600;line-height:1.5}
.cc-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:12px;font-weight:800;color:var(--ds-cyan-text);text-transform:uppercase;letter-spacing:.1em;text-decoration:none;white-space:nowrap}
.cc-link:hover{text-decoration:underline}
.cc-divider{height:1px;background:var(--ds-line-soft);margin:22px 0}
@media (max-width:760px){.cc-h2{font-size:19px}.cc-head{margin-bottom:14px}}

/* ---------- Buttons ---------- */
.cc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--cc-tap);padding:0 26px;border-radius:999px;font:inherit;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:0;background:var(--ds-cyan);color:var(--ds-ink-deep);box-shadow:var(--ds-shadow-cta);transition:transform var(--ds-dur) var(--ds-ease),box-shadow var(--ds-dur) var(--ds-ease)}
.cc-btn:hover{transform:translateY(-1px);box-shadow:var(--ds-shadow-cta-hover);color:var(--ds-ink-deep)}
.cc-btn--ink{background:var(--ds-ink);color:#fff;box-shadow:0 12px 26px -12px rgba(15,26,45,.6)}
.cc-btn--ink:hover{color:#fff;background:var(--ds-ink-2)}
.cc-btn--ghost{background:#fff;color:var(--ds-ink);border:2px solid var(--ds-ink);box-shadow:none}
.cc-btn--ghost:hover{background:var(--ds-ink);color:#fff;box-shadow:none}
.cc-btn--soft{background:var(--ds-paper-2);color:var(--ds-ink);box-shadow:none}
.cc-btn--soft:hover{background:#d6ecf8;color:var(--ds-ink);box-shadow:none}
.cc-btn--sm{min-height:46px;padding:0 18px;font-size:12px}
.cc-btn--block{width:100%}
.cc-btns{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:760px){.cc-btns--stack{flex-direction:column}.cc-btns--stack .cc-btn{width:100%}}

/* ---------- Chips ---------- */
.cc-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:var(--ds-line-soft);color:var(--ds-ink-3);line-height:1.4}
.cc-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:0 0 7px}
.cc-chip--plain::before{display:none}
.cc-chip--info{background:var(--ds-paper-2);color:var(--ds-cyan-text)}
.cc-chip--warn{background:var(--cc-gold-soft);color:var(--cc-gold-text)}
.cc-chip--ok{background:var(--cc-green-soft);color:var(--cc-green-text)}
.cc-chip--alert{background:var(--cc-red-soft);color:var(--cc-red-text)}
.cc-chip--ink{background:var(--ds-ink);color:#fff}
.cc-chip--ink::before{background:var(--ds-cyan)}
.cc-chip--wrap{white-space:normal}

/* ---------- What needs you now ---------- */
.cc-now{position:relative;background:#fff;border:1.5px solid rgba(0,184,240,.45);border-radius:26px;padding:30px 32px;box-shadow:0 18px 50px -24px rgba(0,137,184,.35)}
.cc-now__head{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.cc-now__count{width:52px;height:52px;border-radius:50%;background:var(--ds-cyan);color:var(--ds-ink-deep);display:grid;place-items:center;font-size:22px;font-weight:900;flex:0 0 52px;box-shadow:0 0 0 6px rgba(0,184,240,.14)}
.cc-now__h{font-size:24px;font-weight:900;text-transform:uppercase;letter-spacing:-.01em;line-height:1.05}
.cc-now__s{font-size:14px;color:var(--ds-ink-3);font-weight:500;margin-top:4px}
.cc-tasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.cc-task{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 20px;min-height:84px;border-radius:18px;background:var(--ds-paper);border:1px solid transparent;color:inherit;text-decoration:none;transition:border-color .15s,background .15s}
.cc-task:hover{border-color:var(--ds-cyan-deep);background:#fff}
.cc-task__icon{width:48px;height:48px;border-radius:14px;background:#fff;border:1px solid var(--ds-line);display:grid;place-items:center;color:var(--ds-cyan-deep)}
.cc-task__t{font-size:16px;font-weight:800;color:var(--ds-ink);line-height:1.3}
.cc-task__s{font-size:14px;color:var(--ds-ink-3);font-weight:500;margin-top:3px;line-height:1.45}
.cc-task__meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.cc-task__go{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border-radius:999px;background:var(--ds-ink);color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.cc-now__foot{display:flex;gap:12px;align-items:flex-start;margin-top:22px;padding-top:20px;border-top:1px solid var(--ds-line-soft);font-size:14px;font-weight:600;color:var(--ds-ink-2);line-height:1.5}
.cc-now__foot .ok{width:28px;height:28px;border-radius:50%;background:var(--cc-green-soft);color:var(--cc-green-text);display:grid;place-items:center;flex:0 0 28px}
@media (max-width:760px){
  .cc-now{padding:22px 16px 20px;border-radius:22px}
  .cc-now__head{gap:12px;margin-bottom:16px;padding:0 4px}
  .cc-now__count{width:44px;height:44px;flex-basis:44px;font-size:19px}
  .cc-now__h{font-size:20px}
  .cc-task{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px;align-items:start}
  .cc-task__icon{width:44px;height:44px;border-radius:12px}
  .cc-task__go{grid-column:2;justify-self:start;height:auto;padding:4px 0 0;background:none;color:var(--ds-cyan-text);font-size:12px}
  .cc-now__foot{padding:16px 4px 0}
}

/* ---------- Funder journey ---------- */
.cc-journey{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.cc-journey>li+li{border-top:1px solid var(--ds-line-soft)}
.cc-fund{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 20px;padding:22px 0;color:inherit;text-decoration:none}
.cc-journey>li:first-child .cc-fund{padding-top:4px}
.cc-journey>li:last-child .cc-fund{padding-bottom:0}
.cc-fund__top{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap}
.cc-fund__name{font-size:17px;font-weight:800;color:var(--ds-ink);line-height:1.3}
.cc-fund__go{grid-row:1/span 3;grid-column:2;align-self:center;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--ds-ink-3);border:1.5px solid var(--ds-line);transition:all .15s}
.cc-fund:hover .cc-fund__go{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff}
.cc-fund:hover .cc-fund__name{color:var(--ds-cyan-text)}
.cc-track{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:14px 0 8px}
.cc-track i{height:8px;border-radius:4px;background:var(--ds-line)}
.cc-track i.d{background:var(--ds-cyan)}
.cc-track i.c{background:var(--ds-ink);box-shadow:0 0 0 3px rgba(0,184,240,.22)}
.cc-track--unknown i{background:repeating-linear-gradient(-45deg,var(--ds-line) 0 4px,#fff 4px 7px)}
.cc-track-labels{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-muted);margin-top:-2px}
.cc-track-labels span.c{color:var(--ds-ink)}
.cc-fund__step{font-size:14px;font-weight:600;color:var(--ds-ink-2)}
.cc-fund__step b{font-weight:800}
.cc-next{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:13px;font-weight:600;color:var(--ds-ink-3);line-height:1.4}
.cc-who{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:10px;font-weight:900;flex:0 0 28px;background:var(--ds-paper-2);color:var(--ds-cyan-text)}
.cc-who--you{background:var(--ds-ink);color:#fff}
.cc-who--funder{background:var(--ds-line-soft);color:var(--ds-ink-3)}
.cc-next b{color:var(--ds-ink);font-weight:800}
.cc-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;font-weight:600;color:var(--ds-muted);margin-top:18px;padding-top:16px;border-top:1px solid var(--ds-line-soft)}
.cc-legend i{display:inline-block;width:16px;height:6px;border-radius:3px;background:var(--ds-cyan);margin-right:6px;vertical-align:middle}
.cc-legend i.c{background:var(--ds-ink)}.cc-legend i.f{background:var(--ds-line)}
@media (max-width:760px){.cc-fund{padding:18px 0;grid-template-columns:minmax(0,1fr) 44px;gap:4px 12px}.cc-fund__name{font-size:16px}.cc-track-labels{display:none}.cc-fund__go{grid-row:1;align-self:start}}

/* ---------- Money ---------- */
.cc-stat{display:flex;flex-direction:column;gap:4px;padding:22px 22px;border:1px solid var(--ds-line);border-radius:var(--cc-radius-sm);background:#fff;min-width:0}
.cc-stat__l{font-size:11px;font-weight:800;color:var(--ds-muted);letter-spacing:.14em;text-transform:uppercase}
.cc-stat__v{font-size:30px;font-weight:900;letter-spacing:-.02em;line-height:1.1;color:var(--ds-ink);font-variant-numeric:tabular-nums}
.cc-stat__v small{font-size:15px;font-weight:700;color:var(--ds-ink-3);letter-spacing:0}
.cc-stat__s{font-size:13px;color:var(--ds-ink-3);font-weight:500;line-height:1.45}
.cc-stat__src{margin-top:auto;padding-top:10px;font-size:11.5px;font-weight:600;color:var(--ds-muted)}
.cc-unavail{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:1.5px dashed var(--cc-unavail-line);border-radius:var(--cc-radius-sm);background:var(--ds-paper);min-width:0}
.cc-unavail__v{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;color:var(--ds-ink-2);line-height:1.25}
.cc-unavail__v svg{color:var(--ds-cyan-deep)}
.cc-unavail__s{font-size:14px;color:var(--ds-ink-3);font-weight:500;line-height:1.5}
.cc-unavail .cc-link{align-self:flex-start;margin-top:2px;min-height:40px}
.cc-meter{height:10px;border-radius:5px;background:var(--ds-line-soft);overflow:hidden;margin:12px 0 8px}
.cc-meter i{display:block;height:100%;background:var(--ds-cyan);border-radius:5px}
.cc-mini{list-style:none;margin:0;padding:0}
.cc-mini li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid var(--ds-line-soft);font-size:14px;font-weight:600;color:var(--ds-ink-3)}
.cc-mini li:last-child{border-bottom:0}
.cc-mini li b{color:var(--ds-ink);font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}

/* Money flow */
.cc-flow{display:grid;grid-template-columns:1fr auto 1.2fr auto 1fr;align-items:stretch;gap:12px}
.cc-flow__box{padding:18px;border-radius:16px;background:var(--ds-paper);border:1px solid var(--ds-line);display:flex;flex-direction:column;gap:6px}
.cc-flow__box--mid{background:var(--ds-ink);color:#fff;border-color:var(--ds-ink);position:relative;overflow:hidden}
.cc-flow__box--mid::after{content:"";position:absolute;right:-18px;bottom:-24px;width:80px;height:110px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.08}
.cc-flow__box b{font-size:15px;font-weight:800;line-height:1.3}
.cc-flow__box span{font-size:13px;font-weight:500;color:var(--ds-ink-3);line-height:1.45}
.cc-flow__box--mid span{color:rgba(255,255,255,.7)}
.cc-flow__box--mid .cc-kicker{color:var(--ds-cyan);margin:0}
.cc-flow__arrow{display:grid;place-items:center;color:var(--ds-cyan-deep)}
.cc-flow__out{display:flex;flex-direction:column;gap:10px}
.cc-flow__out .cc-flow__box{flex:1}
@media (max-width:900px){.cc-flow{grid-template-columns:1fr}.cc-flow__arrow{transform:rotate(90deg);height:24px}}

/* Deposit history rows */
.cc-rows{list-style:none;margin:0;padding:0}
.cc-rows>li{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:6px 20px;align-items:center;padding:16px 0;border-bottom:1px solid var(--ds-line-soft)}
.cc-rows>li:last-child{border-bottom:0}
.cc-rows__d{font-size:14px;font-weight:800;color:var(--ds-ink)}
.cc-rows__d small{display:block;font-size:12px;color:var(--ds-muted);font-weight:600}
.cc-rows__t{font-size:14px;color:var(--ds-ink-3);font-weight:500;line-height:1.45}
.cc-rows__t b{color:var(--ds-ink);font-weight:800}
.cc-rows__a{text-align:right;font-size:16px;font-weight:800;color:var(--ds-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.cc-rows__a small{display:block;font-size:12px;color:var(--ds-muted);font-weight:600}
.cc-rows>li.is-flag{background:linear-gradient(90deg,var(--cc-red-soft),#fff 70%);margin:0 -16px;padding:16px;border-radius:14px;border-bottom-color:transparent}
@media (max-width:760px){.cc-rows>li{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.cc-rows__t{grid-column:1/-1;grid-row:2}.cc-rows>li.is-flag{margin:0 -10px;padding:14px 10px}}
.cc-counts{display:flex;gap:8px;flex-wrap:wrap}

/* ---------- Person (negotiator) ---------- */
.cc-person{position:relative;overflow:hidden;background:var(--ds-ink);color:#fff;border-radius:var(--cc-radius);padding:28px}
.cc-person::after{content:"";position:absolute;right:-34px;bottom:-40px;width:170px;height:230px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.06;pointer-events:none}
.cc-person>*{position:relative;z-index:1}
.cc-person .cc-kicker{color:var(--ds-cyan)}
.cc-person__who{display:flex;align-items:center;gap:16px;margin:4px 0 16px}
.cc-avatar{width:60px;height:60px;border-radius:50%;flex:0 0 60px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(0,184,240,.35),rgba(0,184,240,.1));color:#fff;font-size:20px;font-weight:900;border:2px solid rgba(0,184,240,.5)}
.cc-person__name{font-size:20px;font-weight:900;line-height:1.15}
.cc-person__title{font-size:13px;color:rgba(255,255,255,.65);font-weight:600;margin-top:3px}
.cc-person__line{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:rgba(255,255,255,.85);padding:10px 0;border-top:1px solid rgba(255,255,255,.1)}
.cc-person__line svg{color:var(--ds-cyan)}
.cc-person__btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.cc-person__btns .cc-btn{padding:0 12px;width:100%}
.cc-person__btns .cc-btn--full{grid-column:1/-1}
.cc-btn--ghost-light{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.75);box-shadow:none}
.cc-btn--ghost-light:hover{background:#fff;color:var(--ds-ink);box-shadow:none}
.cc-person__backup{margin-top:16px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.06);font-size:13px;color:rgba(255,255,255,.75);font-weight:500;line-height:1.5}
.cc-person__backup b{color:#fff}
@media (max-width:760px){.cc-person{padding:22px 18px}}

/* ---------- Risks / legal ---------- */
.cc-risk{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--ds-line-soft);color:inherit;text-decoration:none}
.cc-risk:last-child{border-bottom:0;padding-bottom:0}
.cc-risk:first-child{padding-top:0}
.cc-ricon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--ds-paper);color:var(--ds-ink-2)}
.cc-ricon--hot{background:var(--cc-gold-soft);color:var(--cc-gold-text)}
.cc-ricon--ok{background:var(--cc-green-soft);color:var(--cc-green-text)}
.cc-risk__t{font-size:15px;font-weight:800;color:var(--ds-ink);line-height:1.3}
.cc-risk__s{font-size:13px;color:var(--ds-ink-3);font-weight:500;margin:3px 0 8px;line-height:1.45}

.cc-matter{background:#fff;border:1px solid var(--ds-line);border-radius:var(--cc-radius);padding:28px 30px;box-shadow:var(--cc-shadow)}
.cc-matter--deadline{border-color:var(--cc-gold-line);box-shadow:0 18px 40px -26px rgba(110,71,0,.45)}
.cc-matter--resolved{background:var(--ds-paper);box-shadow:none}
.cc-matter__head{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start}
.cc-matter__head .cc-ricon{width:52px;height:52px;border-radius:14px}
.cc-matter__type{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ds-muted)}
.cc-matter__h{font-size:20px;font-weight:900;text-transform:uppercase;letter-spacing:-.01em;line-height:1.15;margin:4px 0 8px}
.cc-deadline{display:flex;align-items:center;gap:14px;margin:20px 0 0;padding:14px 18px;border-radius:14px;background:var(--cc-gold-soft);border:1px solid var(--cc-gold-line);color:var(--cc-gold-text);font-size:14px;font-weight:600;line-height:1.45}
.cc-deadline__date{flex:0 0 auto;text-align:center;background:#fff;border-radius:10px;padding:6px 10px;min-width:58px;border:1px solid var(--cc-gold-line)}
.cc-deadline__date b{display:block;font-size:20px;font-weight:900;color:var(--ds-ink);line-height:1}
.cc-deadline__date small{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.cc-deadline strong{color:var(--ds-ink)}
.cc-steps{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);position:relative}
.cc-steps li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-muted);line-height:1.25;padding:0 2px}
.cc-steps li::before{content:"";position:absolute;top:11px;right:50%;width:100%;height:3px;background:var(--ds-line)}
.cc-steps li:first-child::before{display:none}
.cc-steps li.d::before,.cc-steps li.c::before{background:var(--ds-cyan)}
.cc-steps .dot{position:relative;z-index:1;width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid var(--ds-line);display:grid;place-items:center;color:#fff}
.cc-steps li.d .dot{background:var(--ds-cyan);border-color:var(--ds-cyan)}
.cc-steps li.c .dot{background:var(--ds-ink);border-color:var(--ds-ink);box-shadow:0 0 0 4px rgba(0,184,240,.22)}
.cc-steps li.d,.cc-steps li.c{color:var(--ds-ink-2)}
.cc-steps li.c{color:var(--ds-ink)}
.cc-steps li.skip .dot{opacity:.5}
.cc-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:22px 0 0;border:1px solid var(--ds-line);border-radius:14px;overflow:hidden}
.cc-dl>div{padding:14px 16px;border-bottom:1px solid var(--ds-line);border-right:1px solid var(--ds-line);background:#fff}
.cc-dl>div:nth-child(2n){border-right:0}
.cc-dl>div:nth-last-child(-n+2){border-bottom:0}
.cc-dl dt{font-size:10.5px;font-weight:800;color:var(--ds-muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.cc-dl dd{margin:0;font-size:15px;font-weight:700;color:var(--ds-ink);line-height:1.4}
.cc-dl dd small{display:block;font-size:12px;font-weight:600;color:var(--ds-muted)}
.cc-nextbox{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;margin-top:18px;padding:14px 16px;border-radius:14px;background:var(--ds-paper-2);font-size:14px;font-weight:600;color:var(--ds-ink-2);line-height:1.5}
.cc-nextbox b{color:var(--ds-ink);font-weight:800}
.cc-nextbox .cc-who{background:#fff}
.cc-nextbox>svg{color:var(--ds-cyan-deep)}
a[href^="tel:"]{white-space:nowrap}
@media (max-width:760px){
  .cc-matter{padding:20px 16px}
  .cc-matter__head{grid-template-columns:44px minmax(0,1fr);gap:12px}
  .cc-matter__head .cc-ricon{width:44px;height:44px}
  .cc-matter__h{font-size:17px}
  .cc-steps li{font-size:9px;letter-spacing:.03em;gap:6px}
  .cc-dl{grid-template-columns:1fr}
  .cc-dl>div{border-right:0}
  .cc-dl>div:nth-last-child(2){border-bottom:1px solid var(--ds-line)}
  .cc-deadline{padding:12px 14px;gap:12px}
}

/* Not-a-law-firm note */
.cc-notlaw{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:18px 20px;border-radius:16px;background:#fff;border:1px solid var(--ds-line);border-left:4px solid var(--ds-cyan);font-size:14px;color:var(--ds-ink-3);font-weight:500;line-height:1.55}
.cc-notlaw b{color:var(--ds-ink);font-weight:800}
.cc-notlaw svg{color:var(--ds-cyan-deep);margin-top:1px}
.cc-calltoday{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:18px 20px;border-radius:16px;background:var(--cc-red-soft);border:1px solid var(--cc-red-line);font-size:14px;color:var(--cc-red-text);font-weight:600;line-height:1.55}
.cc-calltoday b{color:var(--ds-ink)}
.cc-calltoday a{color:var(--cc-red-text);font-weight:800}

/* ---------- Urgent CTA band ---------- */
.cc-urgentband{position:relative;overflow:hidden;display:flex;flex-wrap:wrap;gap:16px 20px;align-items:center;padding:24px 28px;border-radius:var(--cc-radius);background:var(--ds-ink);color:#fff}
.cc-urgentband::after{content:"";position:absolute;right:-30px;top:-30px;width:140px;height:190px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.06}
.cc-urgentband>*{position:relative;z-index:1}
.cc-urgentband .cc-urgent__dot{width:48px;height:48px}
.cc-urgentband b{display:block;font-size:18px;font-weight:900;text-transform:uppercase;letter-spacing:-.005em;line-height:1.15}
.cc-urgentband__txt span{display:block;font-size:14px;color:rgba(255,255,255,.78);font-weight:500;margin-top:4px}
.cc-urgentband__txt{flex:1 1 260px;min-width:220px}
.cc-urgentband .cc-urgent__dot{flex:0 0 48px}
@media (max-width:760px){.cc-urgentband{align-items:flex-start;padding:20px 18px;gap:14px}.cc-urgentband b{font-size:16px}.cc-urgentband .cc-btn{flex:1 1 100%;width:100%}}

/* ---------- Timeline (vertical) ---------- */
.cc-tl{list-style:none;margin:0;padding:0}
.cc-tl li{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:16px;padding-bottom:22px}
.cc-tl li:last-child{padding-bottom:0}
.cc-tl li::before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:var(--ds-line)}
.cc-tl li.d::before{background:var(--ds-cyan)}
.cc-tl li:last-child::before{display:none}
.cc-tl .dot{width:28px;height:28px;border-radius:50%;background:#fff;border:2px solid var(--ds-line);display:grid;place-items:center;color:#fff;position:relative;z-index:1}
.cc-tl li.d .dot{background:var(--ds-cyan);border-color:var(--ds-cyan)}
.cc-tl li.c .dot{background:var(--ds-ink);border-color:var(--ds-ink);box-shadow:0 0 0 5px rgba(0,184,240,.2)}
.cc-tl__t{font-size:15px;font-weight:800;color:var(--ds-ink);line-height:1.35;padding-top:3px}
.cc-tl li.f .cc-tl__t{color:var(--ds-ink-3);font-weight:700}
.cc-tl__d{font-size:12px;font-weight:700;color:var(--ds-muted);letter-spacing:.04em;margin-top:2px}
.cc-tl__s{font-size:14px;color:var(--ds-ink-3);font-weight:500;margin-top:4px;line-height:1.5}

/* ---------- Settlement plan ---------- */
.cc-hero-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:26px;border:1px solid var(--ds-line);border-radius:18px;background:#fff;overflow:hidden}
.cc-hero-facts>div{padding:18px 22px;border-right:1px solid var(--ds-line)}
.cc-hero-facts>div:last-child{border-right:0}
.cc-hero-facts .l{font-size:10.5px;font-weight:800;color:var(--ds-muted);letter-spacing:.14em;text-transform:uppercase}
.cc-hero-facts .v{font-size:24px;font-weight:900;color:var(--ds-ink);letter-spacing:-.015em;margin-top:4px;font-variant-numeric:tabular-nums;line-height:1.15}
.cc-hero-facts .v.em{color:var(--ds-cyan-text)}
.cc-hero-facts .s{font-size:12px;color:var(--ds-muted);font-weight:600;margin-top:2px}
@media (max-width:900px){.cc-hero-facts{grid-template-columns:1fr 1fr}.cc-hero-facts>div:nth-child(2){border-right:0}.cc-hero-facts>div:nth-child(-n+2){border-bottom:1px solid var(--ds-line)}}
@media (max-width:760px){.cc-hero-facts{margin-top:18px}.cc-hero-facts>div{padding:14px 14px}.cc-hero-facts .v{font-size:19px}}
.cc-plan{list-style:none;margin:0;padding:0}
.cc-plan li{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:4px 16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--ds-line-soft)}
.cc-plan li:last-child{border-bottom:0}
.cc-plan .n{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:900;background:var(--ds-paper);color:var(--ds-ink-3);border:1.5px solid var(--ds-line)}
.cc-plan li.d .n{background:var(--ds-cyan);border-color:var(--ds-cyan);color:var(--ds-ink-deep)}
.cc-plan li.c .n{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff;box-shadow:0 0 0 4px rgba(0,184,240,.2)}
.cc-plan .t{font-size:15px;font-weight:800;color:var(--ds-ink)}
.cc-plan .s{font-size:13px;color:var(--ds-muted);font-weight:600;margin-top:2px}
.cc-plan .a{text-align:right;font-size:16px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ds-ink)}
.cc-plan .a .cc-chip{margin-top:6px}
.cc-plan li.f .t,.cc-plan li.f .a{color:var(--ds-ink-3)}
@media (max-width:760px){.cc-plan li{grid-template-columns:36px minmax(0,1fr) auto;gap:2px 12px}.cc-plan .n{width:36px;height:36px}.cc-plan .a .cc-chip{display:none}}
.cc-release{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cc-release>div{padding:16px;border-radius:14px;border:1px solid var(--ds-line);background:#fff}
.cc-release b{display:block;font-size:14px;font-weight:800;color:var(--ds-ink);margin:8px 0 4px}
.cc-release span{font-size:13px;color:var(--ds-ink-3);font-weight:500;line-height:1.45}
@media (max-width:760px){.cc-release{grid-template-columns:1fr}}

/* ---------- Docs ---------- */
.cc-docs{list-style:none;margin:0;padding:0}
.cc-doc{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--ds-line-soft)}
.cc-docs li:last-child .cc-doc,.cc-docs>.cc-doc:last-child{border-bottom:0}
.cc-doc__i{width:44px;height:44px;border-radius:12px;background:var(--ds-paper-2);color:var(--ds-cyan-deep);display:grid;place-items:center}
.cc-doc__t{font-size:15px;font-weight:800;color:var(--ds-ink);line-height:1.3;overflow-wrap:anywhere}
.cc-doc__s{font-size:13px;color:var(--ds-muted);font-weight:600;margin-top:2px}
.cc-iconbtn{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--ds-line);color:var(--ds-ink);background:#fff;text-decoration:none}
.cc-iconbtn:hover{background:var(--ds-ink);color:#fff;border-color:var(--ds-ink)}
.cc-req{padding:22px;border-radius:18px;background:#fff;border:1px solid var(--ds-line)}
.cc-req--due{border-color:rgba(0,184,240,.45);box-shadow:0 14px 34px -24px rgba(0,137,184,.5)}
.cc-req__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.cc-drop{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px;border:1.5px dashed var(--cc-unavail-line);border-radius:16px;background:var(--ds-paper);text-align:center;font-size:14px;font-weight:600;color:var(--ds-ink-3)}
.cc-drop b{color:var(--ds-ink);font-weight:800}
.cc-progress3{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px}
.cc-progress3 span{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-muted);padding-top:8px;border-top:4px solid var(--ds-line)}
.cc-progress3 span.d{color:var(--ds-ink-2);border-top-color:var(--ds-cyan)}
.cc-progress3 span.c{color:var(--ds-ink);border-top-color:var(--ds-ink)}
.cc-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.cc-filter a{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--ds-line);background:#fff;font-size:13px;font-weight:700;color:var(--ds-ink);text-decoration:none}
.cc-filter a[aria-current]{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff}
.cc-filter a span{font-size:11px;font-weight:800;opacity:.7}
@media (max-width:760px){.cc-filter{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 8px;padding:0 16px;scrollbar-width:none}.cc-filter a{flex:0 0 auto}}

/* ---------- Messages ---------- */
.cc-msgs{display:grid;grid-template-columns:320px minmax(0,1fr);gap:0;background:#fff;border:1px solid var(--ds-line);border-radius:var(--cc-radius);overflow:hidden;box-shadow:var(--cc-shadow)}
.cc-threads{border-right:1px solid var(--ds-line);background:var(--ds-paper)}
.cc-threads__h{padding:20px 22px 12px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ds-muted)}
.cc-thread{display:block;padding:16px 22px;border-top:1px solid var(--ds-line);text-decoration:none;color:inherit}
.cc-thread[aria-current]{background:#fff;box-shadow:inset 4px 0 0 var(--ds-cyan)}
.cc-thread__t{display:flex;justify-content:space-between;gap:10px;font-size:15px;font-weight:800;color:var(--ds-ink)}
.cc-thread__t small{font-size:12px;color:var(--ds-muted);font-weight:700;white-space:nowrap}
.cc-thread__p{font-size:13px;color:var(--ds-ink-3);font-weight:500;margin:4px 0 8px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cc-convo{display:flex;flex-direction:column;min-height:640px}
.cc-convo__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:20px 28px;border-bottom:1px solid var(--ds-line)}
.cc-convo__body{flex:1;padding:28px;display:flex;flex-direction:column;gap:22px;background:linear-gradient(#fff,var(--ds-paper) 140%)}
.cc-day{align-self:center;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ds-muted);background:#fff;border:1px solid var(--ds-line);padding:5px 12px;border-radius:999px}
.cc-bubble{max-width:560px;display:flex;flex-direction:column;gap:6px}
.cc-bubble__meta{font-size:12px;font-weight:700;color:var(--ds-muted);display:flex;align-items:center;gap:8px}
.cc-bubble__meta b{color:var(--ds-ink);font-weight:800}
.cc-bubble__b{padding:16px 18px;border-radius:18px;font-size:15px;line-height:1.55;font-weight:500}
.cc-bubble--me{align-self:flex-end;align-items:flex-end}
.cc-bubble--me .cc-bubble__b{background:var(--ds-ink);color:#fff;border-bottom-right-radius:6px}
.cc-bubble--staff .cc-bubble__b{background:#fff;border:1px solid var(--ds-line);color:var(--ds-ink-2);border-bottom-left-radius:6px;box-shadow:0 6px 18px -12px rgba(15,26,45,.25)}
.cc-bubble--staff .cc-who{width:26px;height:26px;flex-basis:26px}
.cc-ack{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-muted)}
.cc-ack span{display:inline-flex;align-items:center;gap:5px}
.cc-ack span.d{color:var(--cc-green-text)}
.cc-ack span.c{color:var(--ds-cyan-text)}
.cc-ack i{width:14px;height:1.5px;background:var(--ds-line)}
.cc-ack__time{font-weight:600;letter-spacing:0;text-transform:none;color:var(--ds-muted)}
.cc-bubble .cc-ack{justify-content:flex-end}
.cc-bubble .cc-ack__time{flex-basis:100%;justify-content:flex-end}
.cc-compose{padding:20px 28px 24px;border-top:1px solid var(--ds-line);background:#fff}
.cc-compose textarea{width:100%;min-height:96px;border:1.5px solid var(--ds-line);border-radius:16px;padding:14px 16px;font:inherit;font-size:16px;font-weight:500;color:var(--ds-ink);resize:vertical}
.cc-compose textarea:focus{outline:none;border-color:var(--ds-cyan);box-shadow:0 0 0 3px rgba(0,184,240,.18)}
.cc-compose__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}
.cc-topics{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.cc-topics label{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:999px;border:1.5px solid var(--ds-line);font-size:13px;font-weight:700;color:var(--ds-ink-2);cursor:pointer}
.cc-topics input{position:absolute;opacity:0;pointer-events:none}
.cc-topics label:has(input:checked){background:var(--ds-paper-2);border-color:var(--ds-cyan);color:var(--ds-ink)}
.cc-mobile-only{display:none}
@media (max-width:900px){
  .cc-msgs{grid-template-columns:1fr;border-radius:20px}
  .cc-threads{display:none}
  .cc-convo{min-height:0}
  .cc-convo__head{padding:16px 18px}
  .cc-convo__body{padding:20px 16px;gap:18px}
  .cc-compose{padding:16px 16px 18px}
  .cc-bubble{max-width:92%}
  .cc-mobile-only{display:flex}
  .cc-ack{font-size:10px;letter-spacing:.03em;gap:5px}.cc-ack i{width:8px}
  .cc-compose__foot .cc-btn{width:100%}
}

/* ---------- Forms (report flow, requests) ---------- */
.cc-qnum{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.cc-qnum b{width:36px;height:36px;border-radius:50%;flex:0 0 36px;display:grid;place-items:center;background:var(--ds-ink);color:#fff;font-size:15px;font-weight:900}
.cc-qnum h2{font-size:19px;font-weight:900;text-transform:uppercase;letter-spacing:-.005em;line-height:1.15}
.cc-qnum h2 small{display:block;margin-top:3px;font-size:13px;font-weight:600;color:var(--ds-muted);text-transform:none;letter-spacing:0}
.cc-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cc-option{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 24px;gap:14px;align-items:center;min-height:76px;padding:14px 16px;border:1.5px solid var(--ds-line);border-radius:16px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}
.cc-option:hover{border-color:var(--ds-cyan)}
.cc-option input{position:absolute;opacity:0;width:1px;height:1px}
.cc-option input:focus-visible+.cc-option__i{outline:3px solid var(--ds-cyan-deep);outline-offset:3px}
.cc-option__i{width:44px;height:44px;border-radius:12px;background:var(--ds-paper);display:grid;place-items:center;color:var(--ds-ink-2)}
.cc-option__txt{display:block}
.cc-option b{display:block;font-size:15px;font-weight:800;color:var(--ds-ink);line-height:1.3}
.cc-option__txt>span{display:block;font-size:13px;color:var(--ds-muted);font-weight:500;margin-top:2px;line-height:1.4}
.cc-option__r{width:24px;height:24px;border-radius:50%;border:2px solid var(--ds-muted);display:grid;place-items:center}
.cc-option:has(input:checked){border-color:var(--ds-ink);background:var(--ds-paper-2);box-shadow:0 0 0 1px var(--ds-ink)}
.cc-option:has(input:checked) .cc-option__r{border-color:var(--ds-ink);background:var(--ds-ink);box-shadow:inset 0 0 0 4px #fff}
.cc-option:has(input:checked) .cc-option__i{background:var(--ds-ink);color:#fff}
.cc-option:has(input:focus-visible){outline:3px solid var(--ds-cyan-deep);outline-offset:2px}
@media (max-width:760px){.cc-options{grid-template-columns:1fr}}
.cc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.cc-fields .full{grid-column:1/-1}
@media (max-width:760px){.cc-fields{grid-template-columns:1fr;gap:16px}}
.cc .cp-field input[type=text],.cc .cp-field input[type=tel],.cc .cp-field input[type=date],.cc .cp-field select,.cc .cp-field textarea{width:100%;min-height:52px;border:1.5px solid var(--ds-line);border-radius:14px;padding:12px 14px;font-family:inherit;font-size:16px;font-weight:500;color:var(--ds-ink);background:#fff}
.cc .cp-field select{-webkit-appearance:none;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230f1a2d' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center;padding-right:40px}
.cc .cp-field textarea{min-height:120px;resize:vertical;line-height:1.5}
.cc .cp-field label{font-size:12px;letter-spacing:.1em}
.cc-optional{font-size:11px;font-weight:700;color:var(--ds-muted);letter-spacing:.06em;text-transform:none;margin-left:6px}
.cc-formfoot{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.cc-formsec+.cc-formsec{margin-top:32px;padding-top:32px;border-top:1px solid var(--ds-line-soft)}
@media (max-width:760px){.cc-formsec+.cc-formsec{margin-top:24px;padding-top:24px}}
.cc-receipt{text-align:left}
.cc-receipt__big{width:72px;height:72px;border-radius:50%;background:var(--cc-green-soft);color:var(--cc-green-text);display:grid;place-items:center;margin-bottom:18px}
.cc-ref{display:inline-flex;gap:8px;align-items:center;padding:8px 14px;border-radius:999px;background:var(--ds-paper);border:1px solid var(--ds-line);font-size:13px;font-weight:700;color:var(--ds-ink-2)}
.cc-ref b{font-family:ui-monospace,"SF Mono",Menlo,monospace;color:var(--ds-ink)}

/* ---------- Checklist (onboarding) ---------- */
.cc-ring{--p:50;width:116px;height:116px;border-radius:50%;background:conic-gradient(var(--ds-cyan) calc(var(--p)*1%),var(--ds-line-soft) 0);display:grid;place-items:center;flex:0 0 116px}
.cc-ring>div{width:88px;height:88px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center}
.cc-ring b{display:block;font-size:26px;font-weight:900;line-height:1}
.cc-ring small{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-muted)}
.cc-check{list-style:none;margin:0;padding:0}
.cc-check li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:14px;align-items:start;padding:18px 0;border-bottom:1px solid var(--ds-line-soft)}
.cc-check li:last-child{border-bottom:0;padding-bottom:0}
.cc-check li:first-child{padding-top:0}
.cc-check .box{width:36px;height:36px;border-radius:50%;border:2px solid var(--ds-line);display:grid;place-items:center;color:#fff;background:#fff}
.cc-check li.d .box{background:var(--ds-cyan);border-color:var(--ds-cyan)}
.cc-check li.c .box{border-color:var(--ds-ink);box-shadow:0 0 0 4px rgba(0,184,240,.2)}
.cc-check li.d .t{color:var(--ds-ink-3)}
.cc-check .t{font-size:16px;font-weight:800;color:var(--ds-ink);line-height:1.35;padding-top:6px}
.cc-check .s{font-size:14px;color:var(--ds-ink-3);font-weight:500;margin-top:3px;line-height:1.5}
.cc-check .o{display:flex;align-items:center;gap:8px;padding-top:4px;white-space:nowrap}
.cc-check li.c{background:var(--ds-paper-2);margin:0 -18px;padding:18px;border-radius:16px;border-bottom-color:transparent}
.cc-check li .cc-btn{margin-top:12px}
@media (max-width:760px){.cc-check li{grid-template-columns:36px minmax(0,1fr)}.cc-check .o{grid-column:2;flex-direction:row;align-items:center;padding-top:0}.cc-check li.c{margin:0 -10px;padding:16px 10px}}

/* ---------- FAQ / glossary ---------- */
.cc .cp-faq details{padding:0}
.cc .cp-faq summary{min-height:60px;align-items:center;padding:12px 0}
.cc .cp-faq p{margin:0 0 18px}
.cc-gloss{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cc-gloss>div{padding:18px;border-radius:16px;background:var(--ds-paper);border:1px solid var(--ds-line-soft)}
.cc-gloss b{display:block;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.02em;color:var(--ds-ink);margin-bottom:4px}
.cc-gloss span{font-size:14px;color:var(--ds-ink-3);font-weight:500;line-height:1.5}
@media (max-width:760px){.cc-gloss{grid-template-columns:1fr}}

/* ---------- More menu (phones) ---------- */
.cc-menu{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--ds-line);border-radius:20px;overflow:hidden}
.cc-menu a{display:grid;grid-template-columns:44px minmax(0,1fr) 20px;gap:14px;align-items:center;min-height:72px;padding:12px 18px;border-bottom:1px solid var(--ds-line-soft);text-decoration:none;color:inherit}
.cc-menu li:last-child a{border-bottom:0}
.cc-menu b{display:block;font-size:16px;font-weight:800;color:var(--ds-ink)}
.cc-menu span{font-size:13px;color:var(--ds-muted);font-weight:600}
.cc-menu svg.chev{color:var(--ds-muted-2)}

/* ---------- Graduated ---------- */
.cc-grad{position:relative;overflow:hidden;background:var(--ds-ink);color:#fff;border-radius:26px;padding:36px}
.cc-grad::after{content:"";position:absolute;right:-40px;top:-30px;width:260px;height:350px;background:var(--ds-mark) no-repeat center/contain;filter:invert(1);opacity:.07}
.cc-grad>*{position:relative;z-index:1}
.cc-grad .cc-kicker{color:var(--ds-cyan)}
.cc-grad h2{font-size:30px;font-weight:900;text-transform:uppercase;letter-spacing:-.015em;line-height:1.05}
.cc-grad p{color:rgba(255,255,255,.75);font-size:15px;font-weight:500;margin-top:10px;max-width:640px;line-height:1.55}
.cc-grad__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.cc-grad__stats>div{padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.cc-grad__stats .l{font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.cc-grad__stats .v{font-size:24px;font-weight:900;margin-top:4px;font-variant-numeric:tabular-nums}
@media (max-width:760px){.cc-grad{padding:24px 18px}.cc-grad h2{font-size:23px}.cc-grad__stats{grid-template-columns:1fr;gap:0;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.cc-grad__stats>div{display:flex;justify-content:space-between;align-items:center;gap:12px;border-radius:0;border:0;border-bottom:1px solid rgba(255,255,255,.1);padding:14px 16px}.cc-grad__stats>div:last-child{border-bottom:0}.cc-grad__stats .v{font-size:18px;margin:0}}
.cc-evid{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}

/* ---------- Footer tweaks ---------- */
.cc .ds-footer__brand img{height:56px}
.cc .ds-footer{padding-top:44px}
@media (max-width:760px){.cc .ds-footer__cols{gap:26px}}


/* Hero quick-call row (report flow) */
.cc-hero__call{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;margin-top:20px;padding:14px 16px;border-radius:16px;background:var(--cc-red-soft);border:1px solid var(--cc-red-line);font-size:14px;font-weight:700;color:var(--cc-red-text);max-width:700px}
.cc-hero__call .cc-btn{min-height:46px}
@media (max-width:760px){.cc-hero__call .cc-btn{width:100%}}

/* Pick-list row (start a request) */
.cc-pick{display:grid;grid-template-columns:48px minmax(0,1fr) 20px;gap:16px;align-items:center;min-height:80px;padding:16px 20px;border-radius:18px;background:#fff;border:1px solid var(--ds-line);text-decoration:none;color:inherit;transition:border-color .15s}
.cc-pick:hover{border-color:var(--ds-cyan)}
.cc-pick b{display:block;font-size:16px;font-weight:800;color:var(--ds-ink);line-height:1.3}
.cc-pick>span>span{display:block;font-size:14px;color:var(--ds-ink-3);font-weight:500;margin-top:2px;line-height:1.45}
.cc-pick>svg{color:var(--ds-muted-2)}
.cc-pick .cc-task__icon{background:var(--ds-paper);border-color:transparent}
@media (max-width:760px){.cc-pick{grid-template-columns:44px minmax(0,1fr) 20px;gap:14px;padding:14px 16px}.cc-pick .cc-task__icon{width:44px;height:44px}}

.cc-ringrow{display:flex;align-items:center;gap:22px;margin-top:22px;max-width:520px}
@media (max-width:760px){.cc-ringrow{gap:16px;margin-top:18px}.cc-ringrow .cc-ring{width:88px;height:88px;flex-basis:88px}.cc-ringrow .cc-ring>div{width:66px;height:66px}.cc-ringrow .cc-ring b{font-size:20px}.cc-check .o:empty{display:none}}

/* Dashboard: on phones the hero gives way to "What needs you now" */
@media (max-width:760px){.cc-hero--tight .cc-hero__sub{display:none}.cc-hero--tight h1{font-size:28px}.cc-hero--tight .cc-fresh{margin-top:12px}}

/* ---------- Calm Command: portal build additions (design pass) ---------- */
body.cc{background:var(--cc-bg)}
.cc main{display:block}
.cc-hero .cp-switch{margin-top:0}
.cc-hero .cp-switch label{color:var(--ds-muted)}
.cc-hero .cp-switch .ds-cta{height:44px}
.cc-hero__top .ds-eyebrow{color:var(--ds-cyan-text)}
.cc-nav .ds-nav__link{color:var(--ds-ink-2)}
.cc-nav .ds-nav__inner{max-width:1360px}
.cc-urgent[aria-current]{box-shadow:0 0 0 3px var(--ds-cyan)}
.cc-urgent:focus-visible,.cc-btn:focus-visible,.cc-task:focus-visible,.cc-pick:focus-visible,.cc-menu a:focus-visible,.cc-fund__link:focus-visible,.cc-tabbar a:focus-visible,.cc-filter button:focus-visible,.cc-link:focus-visible,.cc-proof:focus-visible{outline:3px solid var(--ds-cyan-deep);outline-offset:3px}
@media (max-width:1240px) and (min-width:981px){.cc-nav .ds-nav__list{gap:16px;font-size:13px}.cc-nav .ds-nav__logo img{height:50px}.cc-urgent__long{display:none}.cc-urgent__short{display:inline}}
/* phones: the tab bar never hides the last line of content or the focused control */
@media (max-width:980px){
  body.cc{padding-bottom:calc(var(--cc-tabbar-h) + 16px + env(safe-area-inset-bottom))}
  html{scroll-padding-bottom:calc(var(--cc-tabbar-h) + 24px)}
  .cc-tabbar a{min-height:44px}
  .cc .ds-footer{padding-bottom:calc(28px + var(--cc-tabbar-h))}
}

/* layout: two columns on desktop; on phones the columns stack in DOM order (priority order: needs, risks, funders) */
.cc-cols{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:28px;align-items:start}
.cc-col{display:flex;flex-direction:column;gap:28px;min-width:0}
@media (max-width:1100px){
  .cc-cols{display:flex;flex-direction:column;gap:18px}
  .cc-col{display:contents}
}
.cc-stack--tight{gap:12px}
.cc-empty{padding:18px 20px;border-radius:14px;background:var(--ds-paper);font-size:15px;color:var(--ds-ink-3);font-weight:600;line-height:1.5}

/* tasks */
.cc-tasks>li{list-style:none}
.cc-task__body{display:block;min-width:0}
.cc-task__t,.cc-task__s{display:block}
.cc-task__meta{display:flex}
.cc-task__icon--hot{background:var(--cc-red-soft)!important;color:var(--cc-red-text)!important;border-color:var(--cc-red-line)!important}
.cc-now__foot a,.cc-risk__s a{color:var(--ds-cyan-text);font-weight:700}

/* funder rows */
.cc-funder{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;align-items:center}
.cc-journey>li.cc-funder+li.cc-funder{border-top:1px solid var(--ds-line-soft)}
.cc-funder .cc-fund{display:block;padding:22px 0}
.cc-journey>li.cc-funder:first-child .cc-fund{padding-top:4px}
.cc-journey>li.cc-funder:last-child .cc-fund{padding-bottom:0}
.cc-fund__link{color:inherit;text-decoration:none}
.cc-fund__link::after{content:"";position:absolute;inset:0}
.cc-funder:hover .cc-fund__name{color:var(--ds-cyan-text)}
.cc-funder:hover .cc-fund__go{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff}
.cc-funder .cc-fund__go{grid-row:auto;grid-column:2}
.cc-funder a.cc-proof,.cc-funder .cc-next{position:relative;z-index:1}
.cc-fund__step{margin-top:4px}
.cc-next{flex-wrap:wrap}
.cc-next>span:nth-child(2){flex:1 1 200px}
.cc-proofline{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:8px;font-size:13px;font-weight:600;color:var(--ds-muted)}
.cc-proof{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 12px;border-radius:999px;border:1.5px solid var(--ds-line);background:#fff;font-size:12px;font-weight:800;color:var(--ds-cyan-text);text-decoration:none}
.cc-proof::before{content:"";width:10px;height:12px;border:2px solid currentColor;border-radius:2px}
.cc-proof:hover{border-color:var(--ds-cyan)}
.cc-track--big i{height:10px}
.cc-track-labels--show{display:grid!important}
@media (max-width:760px){.cc-funder{grid-template-columns:minmax(0,1fr) 36px}.cc-funder .cc-fund{padding:18px 0}.cc-funder .cc-fund__go{width:36px;height:36px}.cc-track-labels--show{font-size:9px;letter-spacing:.02em}}
.cc-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 16px;margin:14px 0 0}
.cc-facts dt{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-muted)}
.cc-facts dd{margin:2px 0 0;font-size:15px;font-weight:800;color:var(--ds-ink)}
.cc-facts .ds-na,.cc-hero-facts .ds-na,.cc-dl .ds-na{font-size:13px;font-weight:700;color:var(--ds-muted)}

/* chips: one component everywhere */
.cc-chip--wait{background:var(--ds-line-soft);color:var(--ds-ink-3)}
.cc-chip--nofile{background:repeating-linear-gradient(-45deg,var(--ds-paper) 0 6px,#fff 6px 12px);border:1px dashed var(--cc-unavail-line);color:var(--ds-ink-3);letter-spacing:.04em}
.cc-chip--nofile::before{display:none}
.cc-chip--plain::before{display:none}

/* money */
.cc-stat__v--date{font-size:24px}
.cc-stat--feature{border-color:rgba(0,184,240,.45);box-shadow:0 14px 34px -24px rgba(0,137,184,.5)}
.cc-unavail .cc-stat__l{margin-bottom:2px}
.cc-src{margin-top:4px;font-size:11.5px;font-weight:600;color:var(--ds-muted);line-height:1.4}
.cc-counts4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cc-count{padding:18px;border-radius:var(--cc-radius-sm);background:#fff;border:1px solid var(--ds-line)}
.cc-count b{display:block;font-size:28px;font-weight:900;line-height:1.1;color:var(--ds-ink)}
.cc-count span{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-muted)}
@media (max-width:760px){.cc-counts4{grid-template-columns:1fr 1fr;gap:10px}.cc-count{padding:14px}.cc-count b{font-size:22px}}

/* deposit table: rows become cards on phones */
.cc .ds-deals{padding:0}
@media (max-width:760px){
  .cc .cp-pay .ds-deals table{min-width:0}
  .cc .cp-pay thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .cc .cp-pay tbody,.cc .cp-pay tr{display:block}
  .cc .cp-pay tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:14px 0;border-bottom:1px solid var(--ds-line-soft)}
  .cc .cp-pay td{display:block;padding:0;border:0}
  .cc .cp-pay td.when{font-weight:800;color:var(--ds-ink)}
  .cc .cp-pay td.st{grid-column:2;grid-row:1;text-align:right}
  .cc .cp-pay td.num{grid-column:2;grid-row:2;text-align:right}
  .cc .cp-pay td[colspan]{grid-column:1/-1}
}

/* risks */
.cc-risks{list-style:none;margin:0;padding:0}
.cc-risks>li{border-bottom:1px solid var(--ds-line-soft)}
.cc-risks>li:last-child{border-bottom:0}
.cc-risks .cc-risk{border-bottom:0;padding:16px 0}
.cc-risks>li:first-child .cc-risk,.cc-risks>li.cc-risk:first-child{padding-top:0}
.cc-risk>span:last-child{display:block;min-width:0}
.cc-risk__t,.cc-risk__s{display:block}
a.cc-risk:hover .cc-risk__t{color:var(--ds-cyan-text)}
.cc-risk--plain{padding:0 0 16px}

/* legal */
.cc-steps--4{grid-template-columns:repeat(4,1fr)}
.cc-deadline--unknown{background:#fff;border-style:dashed}
.cc-deadline--unknown .cc-deadline__date b{color:var(--cc-gold-text)}
.cc-matter{scroll-margin-top:110px}
.cc-matter .cc-evid{margin-top:16px}
.cc-matter__head>div{min-width:0}
.cc-key{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.cc-key li{display:flex;flex-direction:column;gap:2px;padding-left:14px;border-left:3px solid var(--ds-paper-2)}
.cc-key b{font-size:14px;font-weight:800;color:var(--ds-ink)}
.cc-key span{font-size:13.5px;font-weight:500;color:var(--ds-ink-3);line-height:1.5}
.cc-gloss--one{grid-template-columns:1fr}
.cc-notlaw--warn{border-left-color:var(--ds-danger)}
.cc-notlaw--warn svg{color:var(--ds-danger)}
.cc-notlaw a,.cc-calltoday a,.cc-small a,.cc-sub a,.ds-fineprint a{font-weight:700}
.cc-small a,.cc-sub a,.cc-notlaw a{color:var(--ds-cyan-text)}

/* settlement */
.cc-hero-facts{margin-top:0}
.cc-hero-facts .v .sub{display:block;font-size:11px;font-weight:700;color:var(--cc-gold-text)}
ul.cc-release{list-style:none;margin:0;padding:0;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
ul.cc-release>li{display:flex;flex-direction:column;align-items:flex-start;padding:16px;border-radius:14px;border:1px solid var(--ds-line);background:#fff}
.cc-plan .a .ds-na{font-size:13px}
.cc-plan .a>div{margin-top:4px}
@media (max-width:760px){.cc-plan .a .cc-chip{display:inline-flex}.cc-plan .a .cc-chip--nofile{white-space:normal;text-align:right}}

/* graduated */
.cc-closeout{list-style:none;margin:0;padding:0}
.cc-closeout>li{padding:18px 0;border-bottom:1px solid var(--ds-line-soft)}
.cc-closeout>li:first-child{padding-top:0}
.cc-closeout>li:last-child{border-bottom:0;padding-bottom:0}
.cc-closeout__name{font-size:17px;font-weight:800;color:var(--ds-ink)}
.cc-closeout__facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px;margin:10px 0 0}
.cc-closeout__facts dt{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-muted);margin-bottom:4px}
.cc-closeout__facts dd{margin:0;font-size:14px;font-weight:700;color:var(--ds-ink)}
@media (max-width:900px){.cc-closeout__facts{grid-template-columns:1fr 1fr}}
.cc-menu--flat{border:0;border-radius:0;background:transparent}
.cc-menu--flat a{padding:12px 0;min-height:64px}
.cc-menu a>span:nth-child(2){display:block;min-width:0}
.cc-menu a>span>span{display:block}
.cc-menu a .cc-task__icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--ds-paper);color:var(--ds-cyan-deep)}

/* More menu: phones only (desktop has the nav) */
.cc-more{display:none;margin-bottom:22px}
@media (max-width:980px){.cc-more{display:block}}

/* documents */
.cc-progress3{list-style:none;margin:16px 0 0;padding:0}
.cc-progress3 li{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-muted);padding-top:8px;border-top:4px solid var(--ds-line)}
.cc-progress3 li.d{color:var(--ds-ink-2);border-top-color:var(--ds-cyan)}
.cc-progress3 li.c{color:var(--ds-ink);border-top-color:var(--ds-ink)}
.cc-filter button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--ds-line);background:#fff;font:inherit;font-size:13px;font-weight:700;color:var(--ds-ink);cursor:pointer}
.cc-filter button[aria-pressed=true]{background:var(--ds-ink);border-color:var(--ds-ink);color:#fff}
.cc-filter button span{font-size:11px;font-weight:800;opacity:.75}
.cc-vault{margin-top:8px}
.cc-vault__row{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1.4fr) auto 110px auto;gap:12px 16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--ds-line-soft)}
.cc-vault__row[hidden]{display:none}
.cc-vault__head{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-muted);padding-top:0}
.cc-vault__t b{display:block;font-size:15px;font-weight:800;color:var(--ds-ink);line-height:1.3;overflow-wrap:anywhere}
.cc-vault__t small{font-size:12px;font-weight:600;color:var(--ds-muted)}
.cc-vault__f,.cc-vault__d{font-size:13.5px;font-weight:600;color:var(--ds-ink-3)}
@media (max-width:900px){
  .cc-vault__head{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);padding:0;border:0}
  .cc-vault__row{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}
  .cc-vault__row>span:nth-child(2){grid-column:1;grid-row:2}
  .cc-vault__row>span:nth-child(3){grid-column:2;grid-row:1;justify-self:end}
  .cc-vault__row>span:nth-child(4){grid-column:1;grid-row:3}
  .cc-vault__row>span:nth-child(5){grid-column:2;grid-row:2/span 2;align-self:end}
}
.cc-reqlist>li{align-items:center}

/* messages: thread */
.cc-thread-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:22px}
.cc-thread-list>li{display:flex;flex-direction:column;gap:12px}
.cc-convo{min-height:0;display:block}
.cc-bubble__b{white-space:pre-line;overflow-wrap:anywhere}
.cc-bubble__subj{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;opacity:.75}
.cc-bubble--failed .cc-bubble__b{background:var(--cc-red-soft);color:var(--cc-red-text);border:1px solid var(--cc-red-line)}
.cc-ack span.d::before{content:"✓";font-weight:900}

/* requests */
.cc-reqs,.cc-picks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.cc-req h3{margin-top:2px}
.cc-req .cc-nextbox{margin-top:12px}
.cc-pick>span:nth-child(2){display:block;min-width:0}

/* report flow */
.cc-report{display:block}
.cc-report fieldset{border:0;margin:0;padding:0;min-width:0}
.cc-report .cc-step+.cc-step{margin-top:32px;padding-top:32px;border-top:1px solid var(--ds-line-soft)}
.cc-report legend{padding:0;width:100%}
.cc-qnum__h{display:block;font-size:19px;font-weight:900;text-transform:uppercase;letter-spacing:-.005em;line-height:1.15;color:var(--ds-ink)}
.cc-qnum__h small{display:block;margin-top:3px;font-size:13px;font-weight:600;color:var(--ds-muted);text-transform:none;letter-spacing:0}
.cc-options--compact .cc-option{grid-template-columns:minmax(0,1fr) 24px;min-height:60px}
.cc-flowhead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.cc-flowhead__p{flex:1 1 auto;min-width:0}
.cc-flowhead__p .cc-small{font-weight:800;color:var(--ds-ink-2)}
.cc-bar{height:8px;border-radius:4px;background:var(--ds-line-soft);overflow:hidden;margin-top:8px}
.cc-bar i{display:block;height:100%;background:var(--ds-cyan);border-radius:4px;transition:width .25s}
.cc-flowbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:28px}
.cc-flowbar [data-next],.cc-flowbar [data-send]{margin-left:auto}
.cc-report.is-js .cc-step{display:none}
.cc-report.is-js .cc-step.is-on{display:block;margin:0;padding:0;border:0}
.cc-dl--review dd{overflow-wrap:anywhere}
.cc-btn[disabled],.cc-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
@media (max-width:980px){
  .cc-report.is-js .cc-flowbar{position:sticky;bottom:calc(var(--cc-tabbar-h) + env(safe-area-inset-bottom));z-index:5;margin:24px -18px -22px;padding:12px 18px;background:#fff;border-top:1px solid var(--ds-line);border-radius:0 0 20px 20px;box-shadow:0 -10px 24px -18px rgba(15,26,45,.4)}
  .cc-report.is-js .cc-flowbar .cc-btn{flex:1 1 0;min-width:0;padding:0 12px}
  .cc-report.is-js .cc-flowbar [data-send-now]{flex:1.2 1 0}
}
.cc-receipt:focus{outline:none}
.cc-supphone{display:block;font-size:26px;font-weight:900;color:var(--ds-ink);text-decoration:none;letter-spacing:-.01em}
.cc-hero__sub{color:var(--ds-ink-3)}
.cc .ds-fineprint{color:var(--ds-muted)}
.cc-person .cp-neg__avatar{width:60px;height:60px;flex:0 0 60px;border:0;background:none;padding:0}
.cc-person .cp-neg__initials{width:60px;height:60px;background:linear-gradient(135deg,rgba(0,184,240,.35),rgba(0,184,240,.1));border:2px solid rgba(0,184,240,.5);color:#fff;font-size:20px}
.cc-person .cp-neg__photo{width:60px;height:60px}
.cc-person__line a{color:#fff;text-decoration:none;font-weight:700}
.cc-person__backup a{color:#fff}
.cc-person__btns .cc-btn:only-child{grid-column:1/-1}
.cc-bubble__meta strong{color:var(--ds-ink);font-weight:800}
.cc .ds-footer__col li a{display:inline-block;padding:3px 0;min-height:24px}
.cc-person__line a{display:inline-block;padding:3px 0}
.cc .ds-footer__phone{display:inline-block;padding:4px 0}
.cc-hero-facts .v{font-size:clamp(17px,1.6vw,22px);overflow-wrap:anywhere}
.cc-hero-facts>div{padding:16px 16px;min-width:0}
ul.cc-release .cc-chip{white-space:normal;max-width:100%}
.cc-chip--wrap,.cc-proofline .cc-chip{white-space:normal}
@media (max-width:760px){.cc-calltoday,.cc-notlaw{padding:14px 16px;font-size:13.5px;gap:10px}.cc-report{padding-top:18px}.cc-flowhead{margin-bottom:16px}.cc-qnum{margin-bottom:12px}}
span.cc-case{cursor:default;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc-chip{white-space:normal;max-width:100%;overflow-wrap:anywhere}
.cc-hero h1,.cc-fund__name,.cc-h2,.cc-h3,.cc-matter__h,.cc-task__t,.cc-risk__t,.cc-doc__t,.cc-closeout__name,.cc-person__name,.cc-tl__t,.cc-stat__s,.cc-sub{overflow-wrap:anywhere}
@media (max-width:760px){.cc-hero__top .ds-eyebrow--rule:not(:only-child){display:none}.cc-hero__top{margin-bottom:10px}.cc-fresh{gap:2px 12px;font-size:11.5px}.cc-fresh svg{width:12px;height:12px}.cc-hero h1{font-size:30px}.cc-hero__sub{font-size:15px;line-height:1.5}}
.cc .cp-pay .ds-deals table{min-width:0}
.cc .cp-pay td.num{white-space:nowrap}
.cc .cp-pay td.num .cc-chip{white-space:nowrap}
.cc .ds-deals td{padding:14px 10px}
.cc .ds-deals th{padding:0 10px 12px}
.cc [data-urgent]+[data-disabled]+.cp-form,.cc [data-urgent]+.cp-form{margin-top:16px}.cc .cc-calltoday[data-urgent]{margin-bottom:16px}
.cc-now__foot .ok--info{background:var(--ds-paper-2);color:var(--ds-cyan-text)}
@media (max-width:760px){.cc-task__go{white-space:normal;overflow-wrap:anywhere;max-width:100%}}
@media (min-width:1101px){.cc-cols--dash .cc-risks{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}.cc-cols--dash .cc-risks>li:first-child .cc-risk,.cc-cols--dash .cc-risks>li:nth-child(2) .cc-risk{padding-top:0}}
.cc-hero-facts .v.em{color:var(--ds-cyan-text)}
@media (max-width:760px){.cc-track-labels.cc-track-labels--show{display:none!important}}

/* =====================================================================
   INTEGRATION (cp/integrate-design): the accessibility and mobile layers above are kept under the Calm Command design.
   - Calm Command hides the wrapped nav on phones (5-tab bar instead), so its one-row header stays sticky at phone
     width and 400% zoom (the a11y rule unsticks only the old multi-row header); anchors scroll clear of it.
   - 2.5.8 target size on the membership pages too: HubSpot's "Show password" and "Forgot your password?" links
     (flagged by the design build) get a 24px+ target without changing their look.
   ===================================================================== */
@media (max-width:640px){.cc-nav.ds-nav{position:sticky}html{scroll-padding-top:84px}}
.ds-auth__card #hs_login_reset,.ds-auth__card .hs-login-widget-show-password,.ds-auth__card a[href*="reset"]{display:inline-flex;align-items:center;min-height:24px;min-width:24px;padding:2px 0}
.ds-auth__card .hs-login-widget-show-password{bottom:12px}
/* settlement figures sit in a card column: 4 across broke "$41,850.00" mid-number at 1440; 2 x 2 everywhere */
.cc-hero-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.cc-hero-facts>div:nth-child(2n){border-right:0}
.cc-hero-facts>div:nth-child(2n+1):not(:last-child){border-right:1px solid var(--ds-line)}
.cc-hero-facts>div:nth-child(-n+2):not(:nth-last-child(-n+1)){border-bottom:1px solid var(--ds-line)}
.cc-hero-facts .v{overflow-wrap:normal;white-space:nowrap}
/* flat menus have no chevron column: the text was clipped at the card edge (graduated "What you can do now") */
.cc-menu--flat a{grid-template-columns:44px minmax(0,1fr)}
.cc-menu a>span:nth-child(2),.cc-menu a>span:nth-child(2) b,.cc-menu a>span:nth-child(2) span{white-space:normal;overflow-wrap:anywhere}
/* a11y audit (preview/a11y.js) on the merged pages:
   - 320px / 400% zoom: the header urgent pill pushed the page 15px wide (1.4.10)
   - failed message topic 3.99:1 on its red tint (1.4.3); cyan "Sign in" buttons on logout / access denied kept white
     text (2.3:1) after the system-pages restructure; the staff case search had no visible focus ring (2.4.7) */
@media (max-width:360px){.cc-nav .ds-nav__inner{padding:8px 10px;gap:8px}.cc-nav .ds-nav__logo img{height:34px}.cc-urgent{height:44px;padding:0 10px 0 6px;gap:6px;font-size:10px;letter-spacing:.04em}.cc-urgent__dot{width:26px;height:26px}}
.cc-bubble--failed .cc-bubble__subj{color:var(--cc-red-text);opacity:1}
.ds-auth a.ds-cta:not([class*="ghost"]),.ds-auth a.ds-cta:not([class*="ghost"]):hover{color:var(--ds-ink)}
.ds-search input:focus-visible{outline:3px solid var(--ds-cyan-text);outline-offset:2px}
/* pages without the phone tab bar (no access, ISO partner, staff case list): no empty strip under the footer */
body.cc:not(:has(.cc-tabbar)){padding-bottom:0}
/* system pages (cp/system-pages): the support phone / email links and the "Keep me signed in" box were under 24px */
.ds-auth__contact a{display:inline-flex;align-items:center;min-height:28px}
.ds-auth__card input[type=checkbox]{width:24px;height:24px}
