:root{
  --cpp-primary:#0057ff;
  --cpp-primary-deep:#063baf;
  --cpp-accent:#18a67d;
  --cpp-ink:#11213a;
  --cpp-muted:#6d7b91;
  --cpp-line:#e8edf4;
  --cpp-surface:#ffffff;
  --cpp-soft:#f6f8fc;
  --cpp-danger:#d84b59;
  --cpp-warning:#b7791f;
  --cpp-shadow:0 20px 58px rgba(24,43,77,.08);
  --cpp-shadow-soft:0 10px 30px rgba(24,43,77,.055);
  --cpp-radius-xl:26px;
  --cpp-radius-lg:20px;
  --cpp-radius-md:14px;
}

.cpp-portal-page .breadcrumb-area,.cpp-portal-page .page-title-area{display:none!important}
.cpp-portal-page main,.cpp-portal-page .site-main{overflow:visible}
.cpp-portal-page .entry-content{overflow:visible}
html.cpp-modal-open{overflow:hidden}

.cpp-shell{width:min(1720px,calc(100vw - 24px));max-width:none;position:relative;left:50%;transform:translateX(-50%);margin:22px 0 62px;display:grid;grid-template-columns:282px minmax(0,1fr);background:transparent;border:0;border-radius:0;box-shadow:none;min-height:780px;overflow:visible;color:var(--cpp-ink);font-family:inherit}
.cpp-shell *{box-sizing:border-box}
.cpp-shell button{font-family:inherit}
.cpp-shell svg,.cpp-login-wrap svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.cpp-sidebar{background:linear-gradient(180deg,#0b1b31 0%,#112944 100%);padding:30px 21px;color:#fff;display:flex;flex-direction:column;min-height:100%;position:relative;isolation:isolate;border-radius:24px 0 0 24px;overflow:hidden;box-shadow:0 18px 45px rgba(12,31,58,.16)}
.cpp-sidebar:after{content:"";position:absolute;inset:auto -80px -100px auto;width:260px;height:260px;background:radial-gradient(circle,rgba(67,122,255,.25),transparent 68%);z-index:-1}
.cpp-sidebar__brand{display:flex;gap:12px;align-items:center;padding:0 8px 27px;border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:24px}
.cpp-sidebar__brand strong{display:block;font-size:15px;line-height:1.2;color:#fff}
.cpp-sidebar__brand small{display:block;color:rgba(255,255,255,.55);font-size:10.5px;margin-top:3px;letter-spacing:.07em;text-transform:uppercase}
.cpp-brand-orb{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--cpp-primary),#7ba1ff);box-shadow:0 10px 28px rgba(0,87,255,.35)}
.cpp-nav{display:grid;gap:7px}
.cpp-nav__item{appearance:none;border:0;width:100%;display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:12px;background:transparent;color:rgba(255,255,255,.67)!important;text-decoration:none!important;font-size:14px;font-weight:600;transition:.2s ease;text-align:left;cursor:pointer}
.cpp-nav__item svg{width:18px}
.cpp-nav__item:hover,.cpp-nav__item.is-active{background:rgba(255,255,255,.09);color:#fff!important}
.cpp-nav__item.is-active{box-shadow:inset 3px 0 0 #73a0ff}
.cpp-sidebar__support{margin-top:auto;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:17px}
.cpp-sidebar__support-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.09);margin-bottom:11px}
.cpp-sidebar__support strong{font-size:13px;color:#fff}
.cpp-sidebar__support p{font-size:11.5px;line-height:1.55;color:rgba(255,255,255,.56);margin:7px 0 10px}
.cpp-sidebar__support button{border:0;padding:0;background:transparent;font-size:12px;font-weight:700;color:#fff!important;cursor:pointer}
.cpp-logout{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.55)!important;text-decoration:none!important;font-size:13px;font-weight:600;padding:20px 10px 0}
.cpp-logout:hover{color:#fff!important}

.cpp-main{background:#fbfcfe;padding:34px 40px 46px;min-width:0;border:1px solid rgba(17,33,58,.065);border-left:0;border-radius:0 24px 24px 0;box-shadow:var(--cpp-shadow)}
.cpp-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;margin-bottom:28px}
.cpp-eyebrow,.cpp-kicker{font-size:10px;letter-spacing:.15em;font-weight:800;color:var(--cpp-primary);display:inline-block;margin-bottom:7px}
.cpp-topbar h1{font-size:31px;letter-spacing:-.035em;line-height:1.1;margin:0 0 7px;color:var(--cpp-ink)}
.cpp-topbar p{margin:0;color:var(--cpp-muted);font-size:14px}
.cpp-topbar__actions{display:flex;gap:10px;align-items:center}
.cpp-icon-button,.cpp-avatar{appearance:none;cursor:pointer}
.cpp-icon-button{width:42px;height:42px;border-radius:13px;border:1px solid var(--cpp-line);background:#fff;color:var(--cpp-ink);display:grid;place-items:center;position:relative}
.cpp-dot{width:7px;height:7px;background:var(--cpp-danger);border-radius:50%;position:absolute;right:8px;top:7px;border:2px solid #fff}
.cpp-avatar{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#eaf0ff,#f6e9ff);display:grid;place-items:center;font-weight:800;color:var(--cpp-primary);border:1px solid #e3eafa}
.cpp-view[hidden]{display:none!important}
.cpp-view{animation:cppFade .2s ease}
@keyframes cppFade{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:none}}

.cpp-hero-card{position:relative;overflow:hidden;display:flex;justify-content:space-between;gap:50px;align-items:flex-end;background:linear-gradient(130deg,#102c65 0%,#064fcf 58%,#1769f1 100%);border-radius:var(--cpp-radius-xl);padding:36px;color:#fff;min-height:236px;box-shadow:0 22px 55px rgba(17,70,165,.18)}
.cpp-hero-card__glow{position:absolute;width:470px;height:470px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 67%);right:-120px;top:-230px}
.cpp-hero-card__content{position:relative;max-width:760px;z-index:1}
.cpp-pill{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;letter-spacing:.04em}
.cpp-pill svg{width:14px}
.cpp-pill--glass{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16)}
.cpp-hero-card h2{color:#fff;font-size:31px;line-height:1.15;letter-spacing:-.035em;margin:18px 0 10px}
.cpp-hero-card p{color:rgba(255,255,255,.74);font-size:13.5px;line-height:1.65;max-width:670px;margin:0 0 22px}
.cpp-button{appearance:none;border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:11px 15px;font-size:12px;font-weight:800;text-decoration:none!important;transition:.2s ease;cursor:pointer}
.cpp-button svg{width:16px}
.cpp-button--light{background:#fff;color:#124fb9!important;box-shadow:0 10px 26px rgba(0,0,0,.10)}
.cpp-button--light:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(0,0,0,.15)}
.cpp-button--ghost{background:#fff;color:var(--cpp-ink)!important;border:1px solid var(--cpp-line)}
.cpp-button--primary{background:linear-gradient(135deg,var(--cpp-primary),#246dff);color:#fff!important;box-shadow:0 10px 24px rgba(0,87,255,.16)}
.cpp-hero-card__status{position:relative;z-index:1;min-width:230px;background:rgba(4,20,63,.25);border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:18px;backdrop-filter:blur(8px)}
.cpp-hero-card__status-label{font-size:10px;color:rgba(255,255,255,.6);display:block}
.cpp-hero-card__status strong{display:block;font-size:14px;color:#fff;margin:4px 0}
.cpp-hero-card__status small{color:rgba(255,255,255,.63);font-size:10.5px}

.cpp-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 30px}
.cpp-metric{appearance:none;text-align:left;background:#fff;border:1px solid var(--cpp-line);border-radius:18px;padding:18px;box-shadow:var(--cpp-shadow-soft);position:relative;overflow:hidden;cursor:pointer;transition:.18s ease;color:inherit}
.cpp-metric:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(24,43,77,.085)}
.cpp-metric__icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#eef3ff;color:var(--cpp-primary);margin-bottom:17px}
.cpp-metric span{display:block;font-size:11px;color:var(--cpp-muted);font-weight:700}
.cpp-metric strong{display:block;font-size:23px;line-height:1.15;margin:5px 0;color:var(--cpp-ink);letter-spacing:-.03em}
.cpp-metric small{font-size:10px;color:#9aa6b7}
.cpp-metric--attention:after{content:"";position:absolute;right:-20px;top:-20px;width:70px;height:70px;border-radius:50%;background:rgba(216,75,89,.08)}
.cpp-metric--attention .cpp-metric__icon{background:#fff0f2;color:var(--cpp-danger)}

.cpp-section{margin-top:28px}
.cpp-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:14px}
.cpp-section-heading h2,.cpp-panel h2,.cpp-view-head h2{font-size:20px;letter-spacing:-.025em;color:var(--cpp-ink);margin:0}
.cpp-mini-action{appearance:none;border:0;background:transparent;color:var(--cpp-primary);font-weight:800;font-size:11px;cursor:pointer}
.cpp-attention-card{background:#fff7f7;border:1px solid #f7d9dd;border-radius:18px;padding:16px 18px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}
.cpp-attention-card__icon{width:38px;height:38px;border-radius:11px;background:#ffe7ea;color:var(--cpp-danger);display:grid;place-items:center;font-weight:900}
.cpp-attention-card strong{font-size:13px;color:var(--cpp-ink)}
.cpp-attention-card p{margin:3px 0 0;color:var(--cpp-muted);font-size:11.5px}
.cpp-text-link{appearance:none;border:0;background:transparent;display:inline-flex;align-items:center;gap:4px;color:var(--cpp-danger)!important;text-decoration:none!important;font-weight:800;font-size:11px;cursor:pointer}
.cpp-text-link svg{width:15px}

.cpp-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cpp-case-grid--wide{grid-template-columns:repeat(3,minmax(0,1fr))}
.cpp-case-card{background:#fff;border:1px solid var(--cpp-line);border-radius:20px;padding:20px;box-shadow:var(--cpp-shadow-soft);transition:.2s ease}
.cpp-case-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(24,43,77,.10)}
.cpp-case-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cpp-service-badge{width:45px;height:45px;border-radius:14px;background:linear-gradient(145deg,#edf3ff,#e6ecfa);display:grid;place-items:center;color:var(--cpp-primary);font-weight:900;font-size:12px}
.cpp-status{padding:6px 9px;border-radius:999px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.cpp-status--success{background:#e9f8f2;color:#17805f}
.cpp-status--danger{background:#fff0f1;color:#c23d4d}
.cpp-status--warning{background:#fff7e8;color:#9b6818}
.cpp-status--neutral{background:#f1f3f7;color:#697588}
.cpp-case-card h3{font-size:17px;color:var(--cpp-ink);letter-spacing:-.02em;margin:17px 0 2px}
.cpp-case-id{font-size:9.5px;color:#9aa6b7;font-weight:700}
.cpp-progress-head{display:flex;align-items:center;justify-content:space-between;margin-top:22px;font-size:10.5px;color:var(--cpp-muted)}
.cpp-progress-head strong{color:var(--cpp-ink)}
.cpp-progress{height:7px;background:#edf1f6;border-radius:999px;overflow:hidden;margin-top:7px}
.cpp-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--cpp-primary),#73a0ff);border-radius:inherit}
.cpp-case-card__foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eff2f6;margin-top:17px;padding-top:14px}
.cpp-case-card__foot small{color:#9aa6b7;font-size:9.5px}
.cpp-link-button{appearance:none;border:0;background:transparent;display:flex;align-items:center;gap:2px;color:var(--cpp-primary)!important;font-size:10.5px;font-weight:800;cursor:pointer;padding:0}
.cpp-link-button svg{width:14px}

.cpp-empty-state{background:#fff;border:1px dashed #dce4ef;border-radius:22px;padding:38px;text-align:center}
.cpp-empty-state--large{padding:70px 35px}
.cpp-empty-state__icon{width:54px;height:54px;border-radius:17px;background:#eef3ff;color:var(--cpp-primary);display:grid;place-items:center;margin:0 auto 14px}
.cpp-empty-state h3{margin:0;color:var(--cpp-ink);font-size:17px}
.cpp-empty-state p{color:var(--cpp-muted);font-size:12px;margin:7px auto 18px;max-width:470px}
.cpp-content-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}
.cpp-panel{background:#fff;border:1px solid var(--cpp-line);border-radius:20px;padding:21px;box-shadow:var(--cpp-shadow-soft)}
.cpp-panel--soft{background:linear-gradient(145deg,#f5f8ff,#f9fbff)}
.cpp-panel>p{font-size:11.5px;line-height:1.65;color:var(--cpp-muted)}
.cpp-timeline{display:grid;gap:0;margin-top:6px}
.cpp-timeline__item{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative;padding:10px 0}
.cpp-timeline__item:not(:last-child):before{content:"";position:absolute;left:5px;top:23px;bottom:-4px;width:1px;background:#e5eaf1}
.cpp-timeline__dot{width:11px;height:11px;border-radius:50%;background:#fff;border:3px solid var(--cpp-primary);margin-top:3px;z-index:1}
.cpp-timeline__item strong{display:block;font-size:11.5px;color:var(--cpp-ink)}
.cpp-timeline__item small{display:block;color:#9aa6b7;font-size:9.5px;margin-top:2px}
.cpp-timeline__empty{color:var(--cpp-muted);font-size:12px;padding:18px 0}

.cpp-view-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;padding:6px 2px 18px;border-bottom:1px solid var(--cpp-line)}
.cpp-view-head h2{font-size:27px}
.cpp-view-head p{margin:7px 0 0;font-size:12.5px;color:var(--cpp-muted)}
.cpp-document-list{display:grid;gap:10px}
.cpp-document-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto 180px;gap:14px;align-items:center;background:#fff;border:1px solid var(--cpp-line);border-radius:17px;padding:14px 16px;box-shadow:var(--cpp-shadow-soft)}
.cpp-document-row__icon{width:40px;height:40px;border-radius:12px;background:#eef3ff;color:var(--cpp-primary);display:grid;place-items:center}
.cpp-document-row__content strong{display:block;color:var(--cpp-ink);font-size:12.5px}
.cpp-document-row__content small{display:block;color:#98a4b5;font-size:9.5px;margin-top:3px}
.cpp-document-row__action{font-size:9.5px;color:#99a5b6;text-align:right}

.cpp-finance-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cpp-finance-card{background:#fff;border:1px solid var(--cpp-line);border-radius:22px;padding:24px;box-shadow:var(--cpp-shadow-soft)}
.cpp-finance-card__icon{width:42px;height:42px;border-radius:13px;background:#eef3ff;color:var(--cpp-primary);display:grid;place-items:center;margin-bottom:22px}
.cpp-finance-card>span:not(.cpp-finance-card__icon){display:block;color:var(--cpp-muted);font-size:11px;font-weight:700}
.cpp-finance-card strong{display:block;font-size:31px;letter-spacing:-.035em;margin:6px 0;color:var(--cpp-ink)}
.cpp-finance-card p{font-size:10.5px;color:#98a4b5;margin:0}
.cpp-finance-card--debt .cpp-finance-card__icon{background:#fff4ee;color:#bd6a33}
.cpp-panel--payment{margin-top:16px;padding:25px}
.cpp-payment-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}
.cpp-integration-badge{background:#eef3ff;color:var(--cpp-primary);border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800}
.cpp-panel--timeline-full{padding:26px}

.cpp-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cpp-profile-card{background:#fff;border:1px solid var(--cpp-line);border-radius:20px;padding:22px;box-shadow:var(--cpp-shadow-soft)}
.cpp-profile-card--identity{grid-column:span 2;display:flex;align-items:center;gap:18px;background:linear-gradient(145deg,#fff,#f6f9ff)}
.cpp-profile-avatar{width:64px;height:64px;border-radius:20px;background:linear-gradient(135deg,#eaf0ff,#f3eaff);color:var(--cpp-primary);display:grid;place-items:center;font-size:23px;font-weight:900;flex:none}
.cpp-profile-card>span:not(.cpp-profile-card__icon),.cpp-profile-card--identity span{display:block;color:var(--cpp-muted);font-size:10px;font-weight:700}
.cpp-profile-card h3{margin:4px 0 4px;font-size:19px;color:var(--cpp-ink)}
.cpp-profile-card strong{display:block;color:var(--cpp-ink);font-size:13px;margin-top:6px;overflow-wrap:anywhere}
.cpp-profile-card p{font-size:10.5px;color:#98a4b5;margin:5px 0 0}
.cpp-profile-card__icon{width:38px;height:38px;border-radius:12px;background:#eef3ff;color:var(--cpp-primary);display:grid;place-items:center;margin-bottom:18px}

.cpp-dialog{width:min(720px,calc(100vw - 28px));max-width:none;border:0;padding:0;background:transparent;color:var(--cpp-ink);overflow:visible}
.cpp-dialog::backdrop{background:rgba(5,16,35,.62);backdrop-filter:blur(6px)}
.cpp-dialog__surface{background:#fff;border:1px solid rgba(17,33,58,.08);border-radius:25px;padding:27px;box-shadow:0 35px 100px rgba(5,16,35,.28);max-height:min(760px,calc(100vh - 40px));overflow:auto}
.cpp-dialog__surface--case{width:100%}
.cpp-dialog__head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--cpp-line)}
.cpp-dialog__head h2{font-size:25px;letter-spacing:-.03em;margin:0;color:var(--cpp-ink)}
.cpp-dialog__head p{font-size:11.5px;line-height:1.55;color:var(--cpp-muted);margin:6px 0 0}
.cpp-dialog__close{appearance:none;border:1px solid var(--cpp-line);background:#fff;width:39px;height:39px;border-radius:12px;display:grid;place-items:center;color:var(--cpp-muted);cursor:pointer;flex:none}
.cpp-dialog__close svg{width:17px}
.cpp-service-list{display:grid;gap:10px;margin-top:16px}
.cpp-service-list--modal{margin-top:20px}
.cpp-service-choice{appearance:none;border:1px solid #e5ebf5;background:#fff;border-radius:16px;display:grid;grid-template-columns:46px 1fr 18px;align-items:center;gap:12px;padding:13px;text-align:left;cursor:pointer;transition:.18s ease;color:inherit}
.cpp-service-choice:hover{border-color:#c9d8f7;transform:translateY(-1px);box-shadow:0 12px 28px rgba(24,43,77,.075)}
.cpp-service-choice:disabled{cursor:wait;opacity:.62}
.cpp-service-choice>span{width:46px;height:46px;border-radius:13px;background:#eef3ff;display:grid;place-items:center;color:var(--cpp-primary);font-size:10px;font-weight:900}
.cpp-service-choice strong{display:block;color:var(--cpp-ink);font-size:12.5px}
.cpp-service-choice small{display:block;color:var(--cpp-muted);font-size:9.8px;line-height:1.45;margin-top:2px}
.cpp-service-choice svg{width:14px;color:#a4adba}
.cpp-service-choice.is-loading:after{content:"";width:14px;height:14px;border:2px solid #d8e2f5;border-top-color:var(--cpp-primary);border-radius:50%;animation:cppSpin .7s linear infinite}
.cpp-service-choice.is-loading>svg{display:none}
@keyframes cppSpin{to{transform:rotate(360deg)}}
.cpp-dialog__note{display:flex;gap:10px;align-items:flex-start;background:#f6f9ff;border:1px solid #e7eef9;border-radius:14px;padding:12px 13px;margin-top:18px;color:var(--cpp-muted);font-size:9.8px;line-height:1.5}
.cpp-dialog__note svg{width:17px;color:var(--cpp-primary);flex:none}
.cpp-case-dialog__summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.cpp-case-dialog__summary>div{background:#f8faff;border:1px solid #edf1f7;border-radius:15px;padding:15px}
.cpp-case-dialog__summary span{display:block;color:var(--cpp-muted);font-size:9.5px}
.cpp-case-dialog__summary strong{display:block;margin-top:4px;font-size:13px;color:var(--cpp-ink)}
.cpp-case-dialog__docs h3{font-size:14px;color:var(--cpp-ink);margin:0 0 10px}
.cpp-case-doc{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #eff2f6}
.cpp-case-doc__icon{width:36px;height:36px;border-radius:11px;background:#eef3ff;color:var(--cpp-primary);display:grid;place-items:center}
.cpp-case-doc strong{display:block;font-size:11px;color:var(--cpp-ink)}
.cpp-case-doc small{display:block;font-size:9px;color:#9aa6b7;margin-top:2px}

.cpp-toast{position:fixed;right:26px;bottom:26px;z-index:100000;display:flex;align-items:center;gap:10px;max-width:min(430px,calc(100vw - 32px));background:#11213a;color:#fff;border-radius:15px;padding:13px 15px;box-shadow:0 22px 55px rgba(5,16,35,.24);font-size:11.5px;font-weight:700}
.cpp-toast[hidden]{display:none}
.cpp-toast__icon{width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:#80e5c1;flex:none}
.cpp-toast__icon svg{width:15px}
.cpp-toast.is-error .cpp-toast__icon{color:#ff9aa6}

.cpp-mobile-nav{display:none}

.cpp-login-wrap{width:min(1320px,calc(100vw - 32px));position:relative;left:50%;transform:translateX(-50%);margin:45px 0 80px;display:grid;grid-template-columns:1.05fr .95fr;border-radius:30px;overflow:hidden;box-shadow:var(--cpp-shadow);border:1px solid rgba(17,33,58,.07);min-height:620px;font-family:inherit}
.cpp-login-panel{padding:60px}
.cpp-login-panel--brand{background:radial-gradient(circle at 90% 10%,rgba(111,156,255,.35),transparent 28%),linear-gradient(145deg,#0b1a31,#103d85 75%,#1461d9);color:#fff;display:flex;flex-direction:column;justify-content:center}
.cpp-login-brandmark{width:56px;height:56px;border-radius:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);display:grid;place-items:center;margin-bottom:30px}
.cpp-login-brandmark svg{width:27px;height:27px}
.cpp-login-panel--brand .cpp-eyebrow{color:#9bbcff}
.cpp-login-panel--brand h1{font-size:44px;line-height:1.03;letter-spacing:-.045em;color:#fff;margin:12px 0 18px;max-width:520px}
.cpp-login-panel--brand>p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.67);max-width:520px}
.cpp-trust-list{display:grid;gap:10px;margin-top:28px}
.cpp-trust-list span{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.82);font-size:12px}
.cpp-trust-list svg{width:16px}
.cpp-login-panel--form{background:#fff;display:flex;align-items:center}
.cpp-login-form-inner{width:100%;max-width:390px;margin:auto}
.cpp-login-form-inner h2{font-size:28px;letter-spacing:-.035em;color:var(--cpp-ink);margin:6px 0 8px}
.cpp-login-form-inner>p{font-size:12.5px;color:var(--cpp-muted);margin:0 0 24px}
.cpp-login-form-inner label{font-size:10.5px;font-weight:800;color:var(--cpp-ink);display:block;margin-bottom:6px}
.cpp-login-form-inner input[type=text],.cpp-login-form-inner input[type=password]{width:100%;border:1px solid #dfe5ed;border-radius:12px;padding:12px 13px;font:inherit;font-size:13px;color:var(--cpp-ink);background:#fbfcfe;outline:none}
.cpp-login-form-inner input:focus{border-color:var(--cpp-primary);box-shadow:0 0 0 3px rgba(0,87,255,.08)}
.cpp-login-form-inner .login-remember label{display:flex;align-items:center;gap:7px;font-weight:600;color:var(--cpp-muted)}
.cpp-login-form-inner .login-submit{margin-top:16px}
.cpp-login-form-inner .button-primary{width:100%;border:0;border-radius:12px;padding:12px 14px;background:linear-gradient(135deg,var(--cpp-primary),#276dff);color:#fff;font-weight:800;font-size:12px;cursor:pointer;box-shadow:0 12px 26px rgba(0,87,255,.20)}
.cpp-forgot{display:block;text-align:center;margin-top:14px;color:var(--cpp-primary)!important;font-size:11px;font-weight:700;text-decoration:none!important}
.cpp-security-note{display:flex;align-items:center;gap:8px;background:#f7f9fc;border-radius:11px;padding:10px 11px;color:var(--cpp-muted);font-size:9.5px;margin-top:24px}
.cpp-security-note svg{width:15px;color:var(--cpp-primary)}

@media (max-width:1450px){.cpp-shell{width:calc(100vw - 20px);grid-template-columns:255px minmax(0,1fr)}.cpp-main{padding:32px}.cpp-case-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1100px){.cpp-shell{grid-template-columns:220px minmax(0,1fr)}.cpp-main{padding:28px}.cpp-metrics{grid-template-columns:repeat(2,1fr)}.cpp-login-panel{padding:42px}.cpp-login-panel--brand h1{font-size:36px}.cpp-document-row{grid-template-columns:42px minmax(0,1fr) auto}.cpp-document-row__action{display:none}.cpp-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.cpp-shell{display:block;width:100%;left:auto;transform:none;margin:0;border:0;border-radius:0;box-shadow:none;background:#fbfcfe;min-height:100vh}.cpp-sidebar{display:none}.cpp-main{padding:24px 18px 96px;border:0;border-radius:0;box-shadow:none}.cpp-topbar h1{font-size:25px}.cpp-topbar p{font-size:12px}.cpp-hero-card{min-height:0;display:block;padding:24px;border-radius:22px}.cpp-hero-card h2{font-size:25px}.cpp-hero-card__status{margin-top:20px;min-width:0}.cpp-metrics{grid-template-columns:repeat(2,1fr);gap:10px}.cpp-case-grid,.cpp-case-grid--wide,.cpp-content-grid,.cpp-finance-grid,.cpp-profile-grid{grid-template-columns:1fr}.cpp-profile-card--identity{grid-column:auto}.cpp-document-row{grid-template-columns:40px minmax(0,1fr);gap:10px}.cpp-document-row>.cpp-status{grid-column:2;justify-self:start}.cpp-mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:12px;right:12px;bottom:12px;z-index:9999;background:rgba(13,29,52,.96);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 50px rgba(0,0,0,.25);border-radius:20px;padding:8px 7px max(8px,env(safe-area-inset-bottom))}.cpp-mobile-nav button{appearance:none;border:0;background:transparent;color:rgba(255,255,255,.55)!important;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:8.5px;font-weight:700;padding:6px 2px;cursor:pointer}.cpp-mobile-nav svg{width:18px}.cpp-mobile-nav button.is-active{color:#fff!important}.cpp-mobile-nav__new{transform:translateY(-16px)}.cpp-mobile-nav__new svg{width:42px;height:42px;padding:11px;border-radius:14px;background:linear-gradient(135deg,var(--cpp-primary),#7ba1ff);color:#fff;box-shadow:0 10px 25px rgba(0,87,255,.35)}.cpp-login-wrap{width:100%;left:auto;transform:none;margin:0;grid-template-columns:1fr;border:0;border-radius:0;box-shadow:none;min-height:100vh}.cpp-login-panel--brand{display:none}.cpp-login-panel{padding:40px 24px}.cpp-login-panel--form{min-height:100vh}.cpp-toast{right:16px;bottom:95px}}
@media (max-width:520px){.cpp-main{padding-inline:14px}.cpp-topbar{align-items:center}.cpp-topbar__actions .cpp-icon-button{display:none}.cpp-topbar h1{font-size:23px}.cpp-hero-card{padding:22px 19px}.cpp-hero-card h2{font-size:23px}.cpp-metrics{grid-template-columns:1fr 1fr}.cpp-metric{padding:15px}.cpp-metric__icon{width:32px;height:32px;margin-bottom:14px}.cpp-metric strong{font-size:19px}.cpp-attention-card{grid-template-columns:auto 1fr}.cpp-attention-card .cpp-text-link{grid-column:2}.cpp-section-heading{align-items:center}.cpp-section-heading .cpp-button--ghost{padding:9px 10px;font-size:10px}.cpp-case-card{padding:17px}.cpp-login-form-inner h2{font-size:25px}.cpp-view-head{align-items:flex-start;flex-direction:column}.cpp-view-head h2{font-size:24px}.cpp-payment-heading{align-items:flex-start;flex-direction:column}.cpp-case-dialog__summary{grid-template-columns:1fr}.cpp-dialog__surface{padding:21px 18px}.cpp-dialog__head h2{font-size:21px}}

/* V0.2 — practice workspace, questionnaire, chat and video appointments */
.cpp-nav__item em{margin-left:auto;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#e85c69;color:#fff;font-size:9px;font-style:normal;font-weight:900;display:grid;place-items:center}
.cpp-case-card__signals{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.cpp-unread-badge{display:inline-flex;align-items:center;border-radius:999px;background:#edf4ff;color:var(--cpp-primary);padding:5px 8px;font-size:9px;font-weight:900}
.cpp-case-checkline{display:flex;align-items:center;gap:6px;margin:14px 0 2px;color:#9a6a17;font-size:10px;font-weight:800}
.cpp-case-checkline svg{width:14px}.cpp-case-checkline.is-complete{color:var(--cpp-accent)}
.cpp-panel--support{background:radial-gradient(circle at 100% 0,rgba(61,112,255,.14),transparent 38%),linear-gradient(145deg,#f8faff,#f1f6ff)}

.cpp-support-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cpp-support-feature{background:#fff;border:1px solid var(--cpp-line);border-radius:21px;padding:22px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;box-shadow:var(--cpp-shadow-soft)}
.cpp-support-feature>.cpp-button{grid-column:2;justify-self:start}.cpp-support-feature__icon{width:48px;height:48px;border-radius:15px;background:#eef3ff;color:var(--cpp-primary);display:grid;place-items:center}.cpp-support-feature__icon svg{width:22px}
.cpp-support-feature>div>span{font-size:9px;letter-spacing:.13em;color:var(--cpp-primary);font-weight:900}.cpp-support-feature h3{font-size:16px;letter-spacing:-.02em;margin:4px 0 6px;color:var(--cpp-ink)}.cpp-support-feature p{font-size:11px;line-height:1.6;color:var(--cpp-muted);margin:0}
.cpp-appointment-list{display:grid;gap:11px}.cpp-appointment-card{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:15px;background:#fff;border:1px solid var(--cpp-line);border-radius:18px;padding:14px 16px;box-shadow:var(--cpp-shadow-soft)}
.cpp-appointment-card__date{width:56px;height:56px;border-radius:15px;background:#0f2f62;color:#fff;display:grid;place-items:center;align-content:center}.cpp-appointment-card__date strong{font-size:20px;line-height:1}.cpp-appointment-card__date span{font-size:8px;letter-spacing:.12em;margin-top:3px}.cpp-appointment-card h3{font-size:13px;margin:1px 0;color:var(--cpp-ink)}.cpp-appointment-card p{margin:2px 0 0;font-size:10px;color:var(--cpp-muted)}

.cpp-case-dialog{width:min(1120px,calc(100vw - 28px))}
.cpp-dialog__surface--case{padding:0;overflow:hidden;max-height:min(860px,calc(100vh - 30px));display:flex;flex-direction:column}
.cpp-dialog__surface--case>.cpp-dialog__head{padding:24px 26px 20px;flex:none}
.cpp-case-tabs{display:flex;align-items:center;gap:4px;padding:10px 18px;border-bottom:1px solid var(--cpp-line);background:#fbfcfe;overflow-x:auto;flex:none}
.cpp-case-tabs button{appearance:none;border:0;background:transparent;color:#758197;padding:9px 12px;border-radius:10px;font-size:10.5px;font-weight:800;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.cpp-case-tabs button:hover,.cpp-case-tabs button.is-active{background:#fff;color:var(--cpp-ink);box-shadow:0 5px 16px rgba(24,43,77,.07)}.cpp-case-tabs button.is-active{color:var(--cpp-primary)}.cpp-case-tabs button span{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#e85c69;color:#fff;font-size:8px;display:grid;place-items:center}
.cpp-case-tab-panel{padding:24px 26px 28px;overflow:auto;animation:cppFade .18s ease;min-height:410px}.cpp-case-tab-panel[hidden]{display:none!important}
.cpp-case-dialog__summary{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 18px}.cpp-case-dialog__summary>div{min-height:86px}
.cpp-case-next-step{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;border:1px solid #dce8ff;background:linear-gradient(135deg,#f8faff,#f2f7ff);border-radius:18px;padding:16px}.cpp-case-next-step>span{width:42px;height:42px;border-radius:13px;background:#e8f0ff;color:var(--cpp-primary);display:grid;place-items:center}.cpp-case-next-step>span svg{width:19px}.cpp-case-next-step strong{font-size:12px;color:var(--cpp-ink)}.cpp-case-next-step p{font-size:10.5px;line-height:1.55;color:var(--cpp-muted);margin:3px 0 0}
.cpp-subsection-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:10px}.cpp-subsection-head>span{font-size:10px;color:var(--cpp-muted);font-weight:800}

.cpp-questionnaire-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--cpp-line);padding-bottom:18px}.cpp-questionnaire-head h3,.cpp-chat-head h3,.cpp-video-hero h3{font-size:20px;letter-spacing:-.025em;color:var(--cpp-ink);margin:0}.cpp-questionnaire-head p,.cpp-chat-head p,.cpp-video-hero p{font-size:11px;line-height:1.6;color:var(--cpp-muted);margin:6px 0 0;max-width:720px}.cpp-questionnaire-state{border-radius:999px;padding:7px 10px;background:#fff4df;color:#956419;font-size:9px;font-weight:900;white-space:nowrap}.cpp-questionnaire-state.is-complete{background:#e9f8f2;color:#177a5e}
.cpp-questionnaire{margin-top:18px}.cpp-questionnaire-progress{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;margin-bottom:22px}.cpp-questionnaire-progress>span{font-size:9.5px;color:var(--cpp-muted);font-weight:800}.cpp-questionnaire-progress>div{height:6px;border-radius:999px;background:#eef2f7;overflow:hidden}.cpp-questionnaire-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cpp-primary),#6f96ff);transition:width .25s ease}
.cpp-question-step h4{font-size:21px;margin:0 0 16px;color:var(--cpp-ink);letter-spacing:-.03em}.cpp-question-list{display:grid;gap:12px}.cpp-question{margin:0;border:1px solid var(--cpp-line);border-radius:17px;padding:16px;background:#fff}.cpp-question legend{padding:0;font-size:12px;font-weight:800;color:var(--cpp-ink);width:100%;float:left;margin-bottom:4px}.cpp-question p{clear:both;margin:0 0 12px;font-size:9.8px;line-height:1.5;color:var(--cpp-muted)}
.cpp-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cpp-choice-row label{cursor:pointer}.cpp-choice-row input{position:absolute;opacity:0;pointer-events:none}.cpp-choice-row span{display:flex;justify-content:center;align-items:center;border:1px solid #dfe5ed;background:#fbfcfe;border-radius:11px;padding:9px;font-size:10.5px;font-weight:900;color:#718096;transition:.17s ease}.cpp-choice-row input:checked+span{border-color:#a8c1ff;background:#edf3ff;color:var(--cpp-primary);box-shadow:inset 0 0 0 1px rgba(0,87,255,.08)}.cpp-choice-row span:hover{border-color:#c8d6ef}
.cpp-questionnaire-actions{display:flex;align-items:center;gap:10px;margin-top:18px;border-top:1px solid var(--cpp-line);padding-top:16px}.cpp-autosave-note{margin-left:auto;color:#9aa6b7;font-size:9px}

.cpp-chat-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--cpp-line)}.cpp-online-pill{display:inline-flex;align-items:center;gap:6px;background:#eef9f5;color:#19785d;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:900;white-space:nowrap}.cpp-online-pill i{width:6px;height:6px;border-radius:50%;background:#19a57d;box-shadow:0 0 0 3px rgba(25,165,125,.12)}
.cpp-chat-list{height:360px;overflow:auto;background:#f7f9fc;border:1px solid #edf1f6;border-radius:18px;padding:16px;margin:16px 0;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}.cpp-chat-empty{margin:auto;text-align:center;color:#8d99aa;font-size:10.5px;max-width:360px;line-height:1.6}.cpp-chat-message{max-width:78%;display:flex;flex-direction:column;align-items:flex-start}.cpp-chat-message>span{font-size:8.5px;color:#9aa5b4;font-weight:800;margin:0 7px 4px}.cpp-chat-message>div{background:#fff;border:1px solid #e6ebf2;border-radius:15px 15px 15px 5px;padding:10px 12px;color:var(--cpp-ink);font-size:10.8px;line-height:1.55;white-space:pre-wrap;box-shadow:0 5px 14px rgba(24,43,77,.035)}.cpp-chat-message>small{font-size:8px;color:#a4aebb;margin:4px 7px 0}.cpp-chat-message--client{align-self:flex-end;align-items:flex-end}.cpp-chat-message--client>div{background:linear-gradient(135deg,#1256c7,#0964ed);border-color:transparent;color:#fff;border-radius:15px 15px 5px 15px}.cpp-chat-compose{border:1px solid var(--cpp-line);border-radius:16px;background:#fff;padding:11px}.cpp-chat-compose textarea{width:100%;border:0!important;outline:0!important;box-shadow:none!important;resize:vertical;min-height:76px;padding:5px 6px;font:inherit;font-size:11px;color:var(--cpp-ink);background:transparent}.cpp-chat-compose>div{display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:1px solid #eff2f6;padding-top:9px}.cpp-chat-compose small{font-size:8.8px;color:#9aa5b4;line-height:1.4}.cpp-chat-compose .cpp-button{padding:9px 13px}

.cpp-video-hero{display:grid;grid-template-columns:54px 1fr;gap:15px;align-items:start;padding-bottom:18px;border-bottom:1px solid var(--cpp-line)}.cpp-video-hero__icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(145deg,#eaf1ff,#f5f8ff);color:var(--cpp-primary);display:grid;place-items:center}.cpp-video-hero__icon svg{width:23px}
.cpp-case-appointments{display:grid;gap:10px;margin:18px 0}.cpp-case-appointments article{border:1px solid var(--cpp-line);border-radius:16px;background:#fff;padding:14px;display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center}.cpp-case-appointments h4{margin:7px 0 2px;font-size:13px;color:var(--cpp-ink)}.cpp-case-appointments p{margin:0;font-size:9.5px;color:var(--cpp-muted)}.cpp-case-appointments small{display:block;margin-top:6px;color:#7d8999;font-size:9px}.cpp-case-appointment-actions{display:flex;align-items:center;gap:9px}.cpp-link-button--danger{color:#c44957!important}
.cpp-video-form{margin-top:18px;border:1px solid #dfe8f7;background:#f9fbff;border-radius:18px;padding:17px;display:grid;grid-template-columns:1fr 1fr;gap:13px}.cpp-video-form label>span{display:block;color:var(--cpp-ink);font-size:9.5px;font-weight:800;margin-bottom:6px}.cpp-video-form label>span small{font-weight:600;color:#9aa5b4}.cpp-video-form input,.cpp-video-form textarea{width:100%;border:1px solid #dfe5ed!important;border-radius:11px!important;background:#fff!important;padding:10px 11px!important;font:inherit!important;font-size:10.5px!important;color:var(--cpp-ink)!important;outline:0}.cpp-video-form input:focus,.cpp-video-form textarea:focus{border-color:#a7c0ff!important;box-shadow:0 0 0 3px rgba(0,87,255,.06)!important}.cpp-video-form textarea{resize:vertical}.cpp-video-form__foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #e5ebf3;padding-top:12px}.cpp-video-form__foot>span{display:flex;align-items:center;gap:6px;color:#8793a4;font-size:9px}.cpp-video-form__foot svg{width:14px}

@media(max-width:1000px){.cpp-support-overview{grid-template-columns:1fr}.cpp-case-dialog__summary{grid-template-columns:repeat(2,minmax(0,1fr))}.cpp-case-next-step{grid-template-columns:42px 1fr}.cpp-case-next-step>.cpp-button{grid-column:2;justify-self:start}.cpp-video-form{grid-template-columns:1fr}}
@media(max-width:820px){.cpp-case-dialog{width:100%;height:100%;max-height:none;margin:0}.cpp-case-dialog::backdrop{background:rgba(5,16,35,.7)}.cpp-dialog__surface--case{border-radius:0;max-height:100vh;height:100vh}.cpp-dialog__surface--case>.cpp-dialog__head{padding:19px 18px 15px}.cpp-case-tabs{padding:8px 10px}.cpp-case-tab-panel{padding:20px 16px 92px;min-height:0}.cpp-chat-list{height:46vh}.cpp-appointment-card{grid-template-columns:52px 1fr}.cpp-appointment-card>.cpp-button{grid-column:2;justify-self:start}.cpp-video-form__foot{align-items:flex-start;flex-direction:column}.cpp-support-feature{grid-template-columns:auto 1fr}}
@media(max-width:520px){.cpp-case-dialog__summary{grid-template-columns:1fr 1fr;gap:8px}.cpp-case-dialog__summary>div{padding:12px;min-height:76px}.cpp-case-next-step{grid-template-columns:1fr}.cpp-case-next-step>span{display:none}.cpp-case-next-step>.cpp-button{grid-column:1}.cpp-questionnaire-head,.cpp-chat-head{flex-direction:column}.cpp-questionnaire-actions{flex-wrap:wrap}.cpp-autosave-note{width:100%;order:3;margin:0}.cpp-choice-row{grid-template-columns:1fr 1fr}.cpp-chat-message{max-width:90%}.cpp-chat-compose>div{align-items:flex-end}.cpp-chat-compose small{max-width:55%}.cpp-video-hero{grid-template-columns:44px 1fr}.cpp-video-hero__icon{width:44px;height:44px}.cpp-case-appointments article{grid-template-columns:1fr}.cpp-case-appointment-actions{justify-content:flex-start}.cpp-support-feature{grid-template-columns:1fr}.cpp-support-feature>.cpp-button{grid-column:1}.cpp-support-feature__icon{width:42px;height:42px}}

/* V0.2.1 — premium readability, tighter Gerow integration and complete client profile */
.cpp-portal-page .blog-details-area,
.cpp-portal-page .page-area,
.cpp-portal-page .tg-page-area,
.cpp-portal-page .site-content,
.cpp-portal-page .content-area{padding-top:22px!important}
.cpp-portal-page .entry-content>p:empty:first-child{display:none}
.cpp-shell{margin-top:4px}

/* Readability baseline: premium must never mean miniature text. */
.cpp-sidebar__brand strong{font-size:16px}
.cpp-sidebar__brand small{font-size:11.5px;color:rgba(255,255,255,.65)}
.cpp-nav__item{font-size:15px;padding:13px 14px;color:rgba(255,255,255,.74)!important}
.cpp-sidebar__support strong{font-size:14.5px}
.cpp-sidebar__support p{font-size:13px;line-height:1.6;color:rgba(255,255,255,.66)}
.cpp-sidebar__support button,.cpp-logout{font-size:13.5px}
.cpp-eyebrow,.cpp-kicker{font-size:11.5px}
.cpp-topbar h1{font-size:34px}
.cpp-topbar p{font-size:15.5px;line-height:1.55}
.cpp-pill{font-size:11.5px}
.cpp-hero-card h2{font-size:33px}
.cpp-hero-card p{font-size:15px;line-height:1.7;color:rgba(255,255,255,.82)}
.cpp-button{font-size:13.5px;padding:12px 17px}
.cpp-hero-card__status-label{font-size:12px;color:rgba(255,255,255,.72)}
.cpp-hero-card__status strong{font-size:16px}
.cpp-hero-card__status small{font-size:12px;color:rgba(255,255,255,.72)}
.cpp-metric span{font-size:13px}
.cpp-metric strong{font-size:25px}
.cpp-metric small{font-size:11.5px;color:#8290a4}
.cpp-section-heading h2,.cpp-panel h2,.cpp-view-head h2{font-size:22px}
.cpp-mini-action,.cpp-text-link{font-size:12.5px}
.cpp-attention-card strong{font-size:14.5px}
.cpp-attention-card p{font-size:13px;line-height:1.55}
.cpp-status{font-size:10.5px;padding:7px 10px}
.cpp-case-card h3{font-size:18.5px}
.cpp-case-id{font-size:11px}
.cpp-progress-head{font-size:12px}
.cpp-case-card__foot small{font-size:11px}
.cpp-link-button{font-size:12px}
.cpp-empty-state h3{font-size:19px}
.cpp-empty-state p{font-size:13.5px;line-height:1.6}
.cpp-panel>p{font-size:13.5px;line-height:1.65}
.cpp-timeline__item strong{font-size:13px}
.cpp-timeline__item small,.cpp-timeline__empty{font-size:11.5px}
.cpp-view-head h2{font-size:29px}
.cpp-view-head p{font-size:14px;line-height:1.6;max-width:850px}
.cpp-document-row__content strong{font-size:14px}
.cpp-document-row__content small,.cpp-document-row__action{font-size:11px}
.cpp-finance-card>span:not(.cpp-finance-card__icon){font-size:12.5px}
.cpp-finance-card p{font-size:12px;line-height:1.55}
.cpp-integration-badge{font-size:10.5px}
.cpp-dialog__head h2{font-size:27px}
.cpp-dialog__head p{font-size:13.5px;line-height:1.6}
.cpp-service-choice>span{font-size:11px}
.cpp-service-choice strong{font-size:14px}
.cpp-service-choice small{font-size:12px;line-height:1.5}
.cpp-dialog__note{font-size:12px;line-height:1.6}
.cpp-case-dialog__summary span{font-size:11.5px}
.cpp-case-dialog__summary strong{font-size:14.5px}
.cpp-case-doc strong{font-size:13px}
.cpp-case-doc small{font-size:11px}
.cpp-toast{font-size:13px}
.cpp-unread-badge,.cpp-case-checkline{font-size:11px}
.cpp-support-feature>div>span{font-size:10.5px}
.cpp-support-feature h3{font-size:18px}
.cpp-support-feature p{font-size:13px;line-height:1.65}
.cpp-appointment-card__date span{font-size:9.5px}
.cpp-appointment-card h3{font-size:14.5px}
.cpp-appointment-card p{font-size:12px}
.cpp-case-tabs button{font-size:12.5px;padding:10px 13px}
.cpp-case-tabs button span{font-size:9.5px}
.cpp-case-next-step strong{font-size:13.5px}
.cpp-case-next-step p{font-size:12.5px;line-height:1.6}
.cpp-subsection-head>span{font-size:11.5px}
.cpp-questionnaire-head h3,.cpp-chat-head h3,.cpp-video-hero h3{font-size:22px}
.cpp-questionnaire-head p,.cpp-chat-head p,.cpp-video-hero p{font-size:13.5px;line-height:1.65}
.cpp-questionnaire-state{font-size:10.5px}
.cpp-questionnaire-progress>span{font-size:11.5px}
.cpp-question-step h4{font-size:23px}
.cpp-question legend{font-size:14px;line-height:1.45}
.cpp-question p{font-size:12.5px;line-height:1.6}
.cpp-choice-row span{font-size:13px;padding:11px}
.cpp-autosave-note{font-size:11.5px}
.cpp-online-pill{font-size:10.5px}
.cpp-chat-empty{font-size:13px}
.cpp-chat-message>span{font-size:10.5px}
.cpp-chat-message>div{font-size:13px;line-height:1.6;padding:11px 13px}
.cpp-chat-message>small{font-size:10px}
.cpp-chat-compose textarea{font-size:14px;line-height:1.6}
.cpp-chat-compose small{font-size:11px}
.cpp-case-appointments h4{font-size:14.5px}
.cpp-case-appointments p,.cpp-case-appointments small{font-size:11.5px}
.cpp-video-form label>span{font-size:12.5px}
.cpp-video-form input,.cpp-video-form textarea{font-size:14px!important;padding:12px 13px!important}
.cpp-video-form__foot>span{font-size:11.5px}

/* Client profile */
.cpp-profile-overview{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);gap:22px;align-items:center;background:linear-gradient(135deg,#0d2b5d 0%,#0755cb 62%,#1769f1 100%);border-radius:24px;padding:26px 28px;color:#fff;box-shadow:0 20px 52px rgba(17,70,165,.16);position:relative;overflow:hidden;margin-bottom:18px}
.cpp-profile-overview:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;right:-115px;top:-180px;background:radial-gradient(circle,rgba(255,255,255,.2),transparent 68%);pointer-events:none}
.cpp-profile-overview__identity{display:flex;align-items:center;gap:18px;min-width:0;position:relative;z-index:1}
.cpp-profile-overview .cpp-profile-avatar{width:72px;height:72px;border-radius:22px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:26px;box-shadow:none}
.cpp-profile-overview__identity>div>span{display:block;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.66)}
.cpp-profile-overview__identity h3{color:#fff;font-size:23px;letter-spacing:-.025em;margin:4px 0}
.cpp-profile-overview__identity p{color:rgba(255,255,255,.75);font-size:13px;line-height:1.55;margin:0;overflow-wrap:anywhere}
.cpp-profile-completeness{position:relative;z-index:1;background:rgba(4,20,63,.25);border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:17px 18px}
.cpp-profile-completeness>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:15px}
.cpp-profile-completeness>div:first-child span{font-size:12px;color:rgba(255,255,255,.72)}
.cpp-profile-completeness>div:first-child strong{font-size:18px;color:#fff}
.cpp-profile-completeness__bar{height:7px;border-radius:999px;background:rgba(255,255,255,.15);overflow:hidden;margin:10px 0 8px}
.cpp-profile-completeness__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#fff,#9fc0ff);transition:width .25s ease}
.cpp-profile-completeness small{display:block;font-size:11.5px;line-height:1.5;color:rgba(255,255,255,.7)}
.cpp-profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}
.cpp-profile-form{display:grid;gap:16px}
.cpp-profile-section{background:#fff;border:1px solid var(--cpp-line);border-radius:21px;padding:23px 24px;box-shadow:var(--cpp-shadow-soft)}
.cpp-profile-section__head{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--cpp-line);padding-bottom:15px;margin-bottom:18px}
.cpp-profile-section__head h3{font-size:19px;letter-spacing:-.02em;color:var(--cpp-ink);margin:0}
.cpp-profile-section__head p{font-size:13px;line-height:1.55;color:var(--cpp-muted);margin:5px 0 0}
.cpp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cpp-form-grid label{display:block;min-width:0}
.cpp-form-grid label>span{display:block;font-size:13px;font-weight:800;color:var(--cpp-ink);margin:0 0 7px}
.cpp-form-grid label>span small{font-size:11.5px;font-weight:600;color:#8692a3}
.cpp-form-grid input,.cpp-form-grid select{width:100%;min-height:48px;border:1px solid #dfe5ed!important;border-radius:12px!important;background:#fbfcfe!important;padding:11px 13px!important;font:inherit!important;font-size:15px!important;color:var(--cpp-ink)!important;outline:none;box-shadow:none!important}
.cpp-form-grid input:focus,.cpp-form-grid select:focus{border-color:#a5bfff!important;background:#fff!important;box-shadow:0 0 0 3px rgba(0,87,255,.07)!important}
.cpp-form-grid label>small{display:block;font-size:11px;line-height:1.5;color:#8d99a9;margin:6px 1px 0}
.cpp-form-field--wide{grid-column:1/-1}
.cpp-profile-form__actions{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border:1px solid var(--cpp-line);border-radius:20px;padding:18px 20px;box-shadow:var(--cpp-shadow-soft)}
.cpp-profile-form__actions>div{display:grid;gap:3px}
.cpp-profile-form__actions strong{font-size:13.5px;color:var(--cpp-ink)}
.cpp-profile-form__actions span{font-size:12px;line-height:1.5;color:var(--cpp-muted)}
.cpp-profile-form button.is-loading{opacity:.7;cursor:wait}
.cpp-profile-side{display:grid;gap:14px;position:sticky;top:20px}
.cpp-profile-side-card{background:#fff;border:1px solid var(--cpp-line);border-radius:20px;padding:21px;box-shadow:var(--cpp-shadow-soft)}
.cpp-profile-side-card--soft{background:linear-gradient(145deg,#f8faff,#f2f7ff)}
.cpp-profile-side-card__icon{width:42px;height:42px;border-radius:13px;background:#eef3ff;color:var(--cpp-primary);display:grid;place-items:center;margin-bottom:16px}
.cpp-profile-side-card h3{font-size:17px;letter-spacing:-.02em;color:var(--cpp-ink);margin:0 0 7px}
.cpp-profile-side-card p{font-size:12.5px;line-height:1.6;color:var(--cpp-muted);margin:0 0 15px}
.cpp-profile-side-card .cpp-button{width:100%}
.cpp-profile-coming{display:inline-flex;border-radius:999px;padding:7px 10px;background:#e9f1ff;color:var(--cpp-primary);font-size:11px;font-weight:850}

/* Login readability also follows the new baseline. */
.cpp-login-panel--brand>p{font-size:15px}
.cpp-trust-list span{font-size:13.5px}
.cpp-login-form-inner>p{font-size:14px}
.cpp-login-form-inner label{font-size:12.5px}
.cpp-login-form-inner input[type=text],.cpp-login-form-inner input[type=password]{font-size:15px;padding:13px 14px}
.cpp-login-form-inner .button-primary{font-size:14px;padding:13px 15px}
.cpp-forgot{font-size:12.5px}
.cpp-security-note{font-size:11.5px;line-height:1.5}

@media(max-width:1200px){
  .cpp-profile-layout{grid-template-columns:1fr}
  .cpp-profile-side{grid-template-columns:repeat(3,minmax(0,1fr));position:static}
}
@media(max-width:820px){
  .cpp-portal-page .blog-details-area,.cpp-portal-page .page-area,.cpp-portal-page .tg-page-area,.cpp-portal-page .site-content,.cpp-portal-page .content-area{padding-top:0!important}
  .cpp-shell{margin-top:0}
  .cpp-topbar h1{font-size:28px}
  .cpp-topbar p{font-size:14px}
  .cpp-hero-card p{font-size:14px}
  .cpp-button{font-size:13px}
  .cpp-profile-overview{grid-template-columns:1fr;padding:22px;border-radius:20px}
  .cpp-profile-side{grid-template-columns:1fr}
  .cpp-profile-section{padding:20px}
  .cpp-mobile-nav button{font-size:10px}
}
@media(max-width:560px){
  .cpp-form-grid{grid-template-columns:1fr}
  .cpp-form-field--wide{grid-column:auto}
  .cpp-profile-overview__identity{align-items:flex-start}
  .cpp-profile-overview .cpp-profile-avatar{width:58px;height:58px;border-radius:18px;font-size:21px}
  .cpp-profile-overview__identity h3{font-size:20px}
  .cpp-profile-overview__identity p{font-size:12px}
  .cpp-profile-form__actions{align-items:stretch;flex-direction:column}
  .cpp-profile-form__actions .cpp-button{width:100%}
  .cpp-question legend{font-size:13.5px}
  .cpp-question p{font-size:12px}
  .cpp-case-tabs button{font-size:12px}
}

/* V0.2.2 — ISEE workflow */
.cpp-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cpp-choice-grid label{cursor:pointer;min-width:0}
.cpp-choice-grid input{position:absolute;opacity:0;pointer-events:none}
.cpp-choice-grid span{display:flex;align-items:center;min-height:52px;border:1px solid #dfe5ed;background:#fbfcfe;border-radius:13px;padding:12px 14px;font-size:13px;line-height:1.35;font-weight:800;color:#657287;transition:.17s ease}
.cpp-choice-grid input:checked+span{border-color:#9ebaff;background:#edf3ff;color:var(--cpp-primary);box-shadow:inset 0 0 0 1px rgba(0,87,255,.08)}
.cpp-choice-grid span:hover{border-color:#c3d3ef;background:#fff}
.cpp-question-input{width:100%;max-width:280px;min-height:48px;border:1px solid #dfe5ed!important;border-radius:12px!important;background:#fbfcfe!important;padding:11px 13px!important;font:inherit!important;font-size:15px!important;color:var(--cpp-ink)!important;outline:none;box-shadow:none!important}
.cpp-question-input:focus{border-color:#a5bfff!important;background:#fff!important;box-shadow:0 0 0 3px rgba(0,87,255,.07)!important}
.cpp-isee-context{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) auto;gap:10px;align-items:stretch;margin:14px 0 0}
.cpp-isee-context>div{display:flex;align-items:center;gap:11px;border:1px solid var(--cpp-line);background:#fbfcff;border-radius:15px;padding:13px 15px;min-width:0}
.cpp-isee-context>div>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#eef3ff;color:var(--cpp-primary);flex:0 0 auto}
.cpp-isee-context>div>span svg{width:17px;height:17px}
.cpp-isee-context p{display:grid;gap:2px;margin:0;min-width:0}
.cpp-isee-context small{font-size:10px;font-weight:850;letter-spacing:.075em;color:#95a0af}
.cpp-isee-context strong{font-size:13px;line-height:1.35;color:var(--cpp-ink);white-space:normal}
.cpp-isee-context>.cpp-button{align-self:stretch;min-height:62px}
.cpp-household-form{margin-top:19px}
.cpp-household-list{display:grid;gap:12px}
.cpp-household-member{border:1px solid var(--cpp-line);border-radius:18px;background:#fff;padding:18px;box-shadow:0 9px 25px rgba(24,43,77,.035)}
.cpp-household-member__head{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #eef1f5;padding-bottom:13px;margin-bottom:15px}
.cpp-household-member__head>div{display:grid;gap:2px}
.cpp-household-member__head span{font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;font-weight:850;color:#98a3b2}
.cpp-household-member__head strong{font-size:15px;color:var(--cpp-ink)}
.cpp-household-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cpp-household-grid label{display:block;min-width:0}
.cpp-household-grid label>span{display:block;font-size:12.5px;font-weight:800;color:var(--cpp-ink);margin:0 0 7px}
.cpp-household-grid input,.cpp-household-grid select{width:100%;min-height:48px;border:1px solid #dfe5ed!important;border-radius:12px!important;background:#fbfcfe!important;padding:11px 13px!important;font:inherit!important;font-size:14.5px!important;color:var(--cpp-ink)!important;outline:none;box-shadow:none!important}
.cpp-household-grid input:focus,.cpp-household-grid select:focus{border-color:#a5bfff!important;background:#fff!important;box-shadow:0 0 0 3px rgba(0,87,255,.07)!important}
.cpp-household-grid input:disabled{color:#7d8999!important;background:#f3f5f8!important}
.cpp-household-actions{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;border-top:1px solid var(--cpp-line);margin-top:18px;padding-top:17px}
.cpp-household-actions>span{font-size:11.5px;line-height:1.5;color:var(--cpp-muted)}

@media(max-width:820px){
  .cpp-choice-grid{grid-template-columns:1fr}
  .cpp-isee-context{grid-template-columns:1fr}
  .cpp-isee-context>.cpp-button{min-height:48px}
  .cpp-household-actions{grid-template-columns:1fr}
  .cpp-household-actions>.cpp-button{width:100%}
}
@media(max-width:560px){
  .cpp-household-grid{grid-template-columns:1fr}
  .cpp-household-member{padding:15px}
  .cpp-household-member__head{align-items:flex-start}
  .cpp-choice-grid span{font-size:12.5px;min-height:48px}
}


/* V0.2.3 — 730 outcome, video on operator invitation, modal toast and spacing polish */
.cpp-case-tab-panel > * + *{margin-top:20px}
.cpp-case-tab-panel > .cpp-case-dialog__summary + *{margin-top:22px}
.cpp-case-dialog__summary{margin-bottom:0}
.cpp-isee-context{margin:0}
.cpp-case-next-step{margin-top:0}
.cpp-toast{z-index:2147483000;pointer-events:none;border:1px solid rgba(255,255,255,.12)}
.cpp-dialog>.cpp-toast{right:30px;bottom:30px}
.cpp-tab-dot{display:inline-block!important;width:7px!important;height:7px!important;min-width:7px!important;padding:0!important;margin-left:6px!important;border-radius:999px!important;background:var(--cpp-primary)!important;vertical-align:middle}

.cpp-outcome-preview{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:15px;border:1px solid #dce8ff;border-radius:18px;padding:17px 18px;background:linear-gradient(135deg,#f8faff,#f3f7ff)}
.cpp-outcome-preview__icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#e7efff;color:var(--cpp-primary)}
.cpp-outcome-preview__icon svg{width:20px;height:20px}.cpp-outcome-preview small{display:block;font-size:10.5px;font-weight:850;letter-spacing:.075em;color:#8693a7}.cpp-outcome-preview strong{display:block;font-size:16px;color:var(--cpp-ink);margin-top:2px}.cpp-outcome-preview p{margin:3px 0 0;font-size:12.5px;line-height:1.55;color:var(--cpp-muted)}
.cpp-outcome-preview--success{border-color:#d4ede5;background:linear-gradient(135deg,#f6fdfb,#effaf7)}.cpp-outcome-preview--success .cpp-outcome-preview__icon{background:#e2f6ef;color:#128262}
.cpp-outcome-preview--danger{border-color:#f1d9df;background:linear-gradient(135deg,#fffafb,#fff3f5)}.cpp-outcome-preview--danger .cpp-outcome-preview__icon{background:#fde9ed;color:#c6465a}

.cpp-outcome-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;border-radius:22px;padding:23px 25px;border:1px solid #dde6f5;background:linear-gradient(135deg,#f8faff,#f1f5fb)}
.cpp-outcome-hero span{font-size:10.5px;font-weight:850;letter-spacing:.08em;color:#8190a4}.cpp-outcome-hero h4{font-size:25px;line-height:1.1;margin:5px 0;color:var(--cpp-ink)}.cpp-outcome-hero p{font-size:13px;color:var(--cpp-muted);margin:0}.cpp-outcome-hero>strong{font-size:31px;line-height:1;color:var(--cpp-ink);white-space:nowrap}
.cpp-outcome-hero--success{background:linear-gradient(135deg,#f6fdfb,#edf9f5);border-color:#cde9df}.cpp-outcome-hero--success>strong{color:#138163}.cpp-outcome-hero--danger{background:linear-gradient(135deg,#fffafb,#fff1f4);border-color:#f0d5dc}.cpp-outcome-hero--danger>strong{color:#c64459}
.cpp-outcome-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cpp-outcome-grid>div{border:1px solid var(--cpp-line);border-radius:16px;background:#fff;padding:15px 16px}.cpp-outcome-grid span{display:block;font-size:11px;color:var(--cpp-muted);font-weight:700}.cpp-outcome-grid strong{display:block;font-size:14px;color:var(--cpp-ink);margin-top:5px;line-height:1.4}
.cpp-installments,.cpp-final-documents{border:1px solid var(--cpp-line);background:#fff;border-radius:19px;padding:18px}.cpp-installment-row{display:grid;grid-template-columns:1fr auto minmax(120px,auto);gap:18px;align-items:center;padding:12px 2px;border-top:1px solid var(--cpp-line)}.cpp-installment-row:first-of-type{border-top:0}.cpp-installment-row span{font-size:12.5px;font-weight:750;color:var(--cpp-ink)}.cpp-installment-row strong{font-size:13.5px;color:var(--cpp-ink)}.cpp-installment-row small{font-size:11.5px;color:var(--cpp-muted);text-align:right}
.cpp-outcome-note{display:grid;grid-template-columns:40px 1fr;gap:13px;border:1px solid #e3e9f3;background:#f9fbfe;border-radius:17px;padding:16px}.cpp-outcome-note>span{width:38px;height:38px;border-radius:12px;background:#edf3ff;color:var(--cpp-primary);display:grid;place-items:center}.cpp-outcome-note>span svg{width:17px}.cpp-outcome-note strong{font-size:13.5px;color:var(--cpp-ink)}.cpp-outcome-note p{font-size:12.5px;line-height:1.65;color:var(--cpp-muted);margin:4px 0 0}

.cpp-video-permission{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start;border:1px solid var(--cpp-line);border-radius:18px;background:#f9fbfe;padding:17px 18px}.cpp-video-permission>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#eef2f8;color:#7a889d}.cpp-video-permission>span svg{width:19px}.cpp-video-permission strong{font-size:14px;color:var(--cpp-ink)}.cpp-video-permission p{font-size:12.5px;line-height:1.6;color:var(--cpp-muted);margin:4px 0 0}.cpp-video-permission--enabled{border-color:#cfe9df;background:#f5fcf9}.cpp-video-permission--enabled>span{background:#dff5ed;color:#148064}

.cpp-panel--fiscal-details{margin-top:18px}.cpp-fiscal-list{display:grid;gap:11px}.cpp-fiscal-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;align-items:center;border:1px solid var(--cpp-line);border-radius:17px;padding:16px 18px;background:#fff}.cpp-fiscal-row__main{display:flex;align-items:center;gap:12px;min-width:0}.cpp-fiscal-row__main>div{min-width:0}.cpp-fiscal-row__main strong{display:block;font-size:14.5px;color:var(--cpp-ink)}.cpp-fiscal-row__main small{display:block;font-size:10.5px;color:#8b97a8;margin-top:2px}.cpp-fiscal-row__amount{font-size:19px;color:var(--cpp-ink);white-space:nowrap}.cpp-fiscal-row__amount--credit{color:#138163}.cpp-fiscal-row__amount--debt{color:#c64459}.cpp-fiscal-row__meta{grid-column:1/-1;display:flex;gap:10px 22px;flex-wrap:wrap;padding-top:11px;border-top:1px solid var(--cpp-line)}.cpp-fiscal-row__meta span{font-size:11.5px;color:var(--cpp-muted)}.cpp-fiscal-row__meta strong{color:var(--cpp-ink)}
.cpp-empty-state--compact{padding-block:20px}

@media(max-width:820px){
  .cpp-dialog>.cpp-toast{right:16px;bottom:94px}
  .cpp-outcome-preview{grid-template-columns:42px 1fr}.cpp-outcome-preview>.cpp-button{grid-column:2;justify-self:start}
  .cpp-outcome-grid{grid-template-columns:1fr 1fr}.cpp-outcome-hero{align-items:flex-start;flex-direction:column}.cpp-outcome-hero>strong{font-size:27px}
  .cpp-fiscal-row{grid-template-columns:1fr}.cpp-fiscal-row__amount{justify-self:start}.cpp-fiscal-row__meta{grid-column:1}.cpp-installment-row{grid-template-columns:1fr auto}.cpp-installment-row small{grid-column:1/-1;text-align:left}
}
@media(max-width:520px){.cpp-case-tab-panel > * + *{margin-top:16px}.cpp-outcome-grid{grid-template-columns:1fr}.cpp-outcome-preview{grid-template-columns:1fr}.cpp-outcome-preview__icon{display:none}.cpp-outcome-preview>.cpp-button{grid-column:1}.cpp-outcome-hero{padding:19px}.cpp-video-permission{grid-template-columns:1fr}.cpp-video-permission>span{display:none}}

/* V0.2.4 — UX consolidation, document workspace and workflow safeguards */
.cpp-case-tab-panel > .cpp-outcome-preview + .cpp-case-next-step,
.cpp-case-tab-panel > .cpp-case-dialog__summary + .cpp-case-next-step,
.cpp-case-tab-panel > .cpp-isee-context + .cpp-case-next-step{margin-top:24px}

.cpp-document-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.cpp-document-overview article{border:1px solid var(--cpp-line);border-radius:17px;background:#fff;padding:16px 18px;box-shadow:var(--cpp-shadow-soft)}
.cpp-document-overview span{display:block;font-size:11.5px;font-weight:700;color:var(--cpp-muted)}
.cpp-document-overview strong{display:block;margin-top:5px;font-size:23px;line-height:1;color:var(--cpp-ink)}
.cpp-document-overview article.is-attention{background:#fff9fa;border-color:#f2dce1}.cpp-document-overview article.is-attention strong{color:#c64459}
.cpp-document-overview article.is-complete{background:#f7fcfa;border-color:#d8ece5}.cpp-document-overview article.is-complete strong{color:#138163}

.cpp-document-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:20px}
.cpp-document-filters button{appearance:none;border:1px solid var(--cpp-line);background:#fff;color:var(--cpp-muted);border-radius:999px;padding:9px 13px;font:inherit;font-size:11.5px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:.2s ease}
.cpp-document-filters button span{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#f1f4f9;color:#6f7d91;display:inline-grid;place-items:center;font-size:10.5px}
.cpp-document-filters button:hover{border-color:#cbd7e8;color:var(--cpp-ink)}
.cpp-document-filters button.is-active{border-color:rgba(0,87,255,.28);background:#edf3ff;color:var(--cpp-primary);box-shadow:0 7px 20px rgba(0,87,255,.08)}
.cpp-document-filters button.is-active span{background:#fff;color:var(--cpp-primary)}

.cpp-document-case-list{display:grid;gap:20px}
.cpp-document-case{border:1px solid var(--cpp-line);border-radius:22px;background:#fff;box-shadow:var(--cpp-shadow-soft);overflow:hidden}
.cpp-document-case__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px) auto;gap:20px;align-items:center;padding:20px 22px;border-bottom:1px solid var(--cpp-line);background:linear-gradient(135deg,#fbfcff,#f7f9fd)}
.cpp-document-case__identity{display:flex;align-items:center;gap:13px;min-width:0}.cpp-document-case__identity .cpp-service-badge{flex:0 0 auto}
.cpp-document-case__identity h3{font-size:18px;line-height:1.2;margin:3px 0;color:var(--cpp-ink)}.cpp-document-case__identity small{font-size:10.5px;color:#8e9aad}
.cpp-document-case__progress>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.cpp-document-case__progress span{font-size:11px;color:var(--cpp-muted)}.cpp-document-case__progress strong{font-size:12.5px;color:var(--cpp-ink)}
.cpp-document-case__progress .cpp-progress{height:6px}
.cpp-document-categories{padding:4px 22px 20px}
.cpp-document-category{padding-top:18px}.cpp-document-category + .cpp-document-category{margin-top:4px;border-top:1px solid #eef1f6}
.cpp-document-category__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:9px}.cpp-document-category__head h4{font-size:13.5px;margin:0;color:var(--cpp-ink)}.cpp-document-category__head span{font-size:10.5px;color:#91a0b4}
.cpp-document-items{display:grid;gap:8px}
.cpp-document-item{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:13px;align-items:center;border:1px solid #edf0f5;background:#fbfcfe;border-radius:15px;padding:12px 14px}
.cpp-document-item__icon{width:38px;height:38px;border-radius:11px;background:#edf3ff;color:var(--cpp-primary);display:grid;place-items:center}.cpp-document-item__icon svg{width:17px;height:17px}
.cpp-document-item__content{min-width:0}.cpp-document-item__content strong{display:block;font-size:13.5px;line-height:1.4;color:var(--cpp-ink)}.cpp-document-item__content small{display:block;font-size:11px;line-height:1.45;color:#8c98aa;margin-top:2px}
.cpp-document-filter-empty{border:1px dashed #d9e0eb;border-radius:18px;background:#fafbfd;color:var(--cpp-muted);padding:24px;text-align:center;font-size:13px}

.cpp-fiscal-row__detail{grid-column:2;justify-self:end;appearance:none;border:0;background:transparent;color:var(--cpp-primary);font:inherit;font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:7px;padding:3px 0;cursor:pointer}
.cpp-fiscal-row__detail svg{width:15px;height:15px;transition:transform .2s ease}.cpp-fiscal-row__detail:hover svg{transform:translateX(3px)}

.cpp-profile-completeness [data-cpp-profile-status]{max-width:360px}

@media(max-width:1100px){
  .cpp-document-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cpp-document-case__head{grid-template-columns:minmax(0,1fr) minmax(180px,240px)}
  .cpp-document-case__head>.cpp-button{grid-column:1/-1;justify-self:start}
}
@media(max-width:820px){
  .cpp-document-case__head{grid-template-columns:1fr;padding:18px}.cpp-document-case__head>.cpp-button{grid-column:1}
  .cpp-document-categories{padding-inline:18px}
  .cpp-fiscal-row__detail{grid-column:1;justify-self:start}
}
@media(max-width:520px){
  .cpp-document-overview{grid-template-columns:1fr 1fr;gap:8px}.cpp-document-overview article{padding:13px}.cpp-document-overview strong{font-size:20px}
  .cpp-document-filters{gap:6px}.cpp-document-filters button{padding:8px 10px;font-size:10.5px}
  .cpp-document-case__identity{align-items:flex-start}.cpp-document-case__identity .cpp-service-badge{margin-top:1px}.cpp-document-case__identity h3{font-size:16px}
  .cpp-document-item{grid-template-columns:36px minmax(0,1fr);padding:12px}.cpp-document-item__icon{width:34px;height:34px}.cpp-document-item>.cpp-status{grid-column:2;justify-self:start}
  .cpp-document-categories{padding-inline:14px}
}

/* V0.2.5 — registration, onboarding & service access */
.cpp-button--full{width:100%;justify-content:center}.cpp-login-form-inner input[type=email],.cpp-login-form-inner input[type=tel]{width:100%;border:1px solid #dfe5ed;border-radius:12px;padding:13px 14px;font:inherit;font-size:15px;color:var(--cpp-ink);background:#fbfcfe;outline:none;box-sizing:border-box}.cpp-login-form-inner label>span{display:block;margin-bottom:6px}.cpp-login-form-inner label small{display:block;margin-top:6px;color:var(--cpp-muted);font-size:12px;line-height:1.45}.cpp-auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cpp-register-form{display:grid;gap:14px}.cpp-auth-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.cpp-auth-check{display:flex!important;gap:9px;align-items:flex-start;font-size:12.5px!important;font-weight:600!important;line-height:1.5;color:var(--cpp-muted)!important}.cpp-auth-check input{margin-top:3px}.cpp-auth-check span{margin:0!important}.cpp-auth-check a{color:var(--cpp-primary);font-weight:800}.cpp-auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0;color:#9aa5b4;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.cpp-auth-divider:before,.cpp-auth-divider:after{content:"";height:1px;flex:1;background:#e8edf4}.cpp-auth-register-cta{padding:17px;border:1px solid #e6ebf3;border-radius:16px;background:#fbfcff}.cpp-auth-register-cta strong{display:block;color:var(--cpp-ink);font-size:14px}.cpp-auth-register-cta p{margin:5px 0 12px;color:var(--cpp-muted);font-size:12.5px;line-height:1.55}.cpp-auth-back{appearance:none;border:0;background:transparent;color:var(--cpp-primary)!important;font-weight:800;font-size:12.5px;padding:14px 0 0;cursor:pointer}.cpp-auth-feedback,.cpp-auth-banner{border-radius:13px;padding:12px 14px;font-size:13px;font-weight:700;line-height:1.45;margin-bottom:16px}.cpp-auth-feedback.is-success,.cpp-auth-banner--success{background:#eaf8f2;color:#126842;border:1px solid #c8ebdc}.cpp-auth-feedback.is-error,.cpp-auth-banner--error{background:#fff0f0;color:#9d2929;border:1px solid #f4cccc}.cpp-register-success{display:flex;gap:11px;margin-top:16px;padding:14px;border-radius:14px;background:#eef6ff;border:1px solid #d7e8fb;color:var(--cpp-ink)}.cpp-register-success>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#fff;color:var(--cpp-primary);flex:0 0 auto}.cpp-register-success strong{display:block;font-size:12px}.cpp-register-success p{margin:4px 0 0;font-size:12px;color:var(--cpp-muted);line-height:1.5}

.cpp-onboarding,.cpp-access-waiting{width:min(1420px,calc(100vw - 28px));position:relative;left:50%;transform:translateX(-50%);font-family:inherit;margin:12px 0 70px;color:var(--cpp-ink)}.cpp-onboarding__top{display:flex;align-items:center;justify-content:space-between;padding:16px 6px 20px}.cpp-onboarding__brand{display:flex;align-items:center;gap:10px;color:var(--cpp-ink)!important;text-decoration:none!important}.cpp-onboarding__brand>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--cpp-primary),#72a0ff);color:#fff}.cpp-onboarding__brand strong{display:block;font-size:15px}.cpp-onboarding__brand small{display:block;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--cpp-muted);margin-top:2px}.cpp-onboarding__logout{font-size:13px;font-weight:800;color:var(--cpp-muted)!important;text-decoration:none!important}.cpp-onboarding__surface{background:#fff;border:1px solid #e7edf5;border-radius:28px;box-shadow:0 24px 70px rgba(18,38,70,.11);padding:42px;max-width:1180px;margin:auto}.cpp-onboarding__intro{text-align:center;max-width:760px;margin:0 auto 28px}.cpp-onboarding__intro h1{font-size:36px;letter-spacing:-.04em;line-height:1.08;margin:7px 0 12px;color:var(--cpp-ink)}.cpp-onboarding__intro p{font-size:15px;line-height:1.65;color:var(--cpp-muted);margin:0}.cpp-onboarding__progress{display:grid;grid-template-columns:repeat(3,1fr);max-width:650px;margin:0 auto 36px;position:relative}.cpp-onboarding__progress:before{content:"";position:absolute;left:16%;right:16%;top:17px;height:1px;background:#e2e9f3}.cpp-onboarding__progress span{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#9aa6b6}.cpp-onboarding__progress b{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#f2f5f9;border:1px solid #e0e7f0;color:#788596}.cpp-onboarding__progress span.is-active{color:var(--cpp-primary)}.cpp-onboarding__progress span.is-active b{background:var(--cpp-primary);color:#fff;border-color:var(--cpp-primary);box-shadow:0 8px 22px rgba(0,87,255,.22)}.cpp-onboarding-step__head{margin-bottom:20px}.cpp-onboarding-step__head h2{font-size:24px;letter-spacing:-.025em;margin:0 0 7px;color:var(--cpp-ink)}.cpp-onboarding-step__head p{margin:0;color:var(--cpp-muted);font-size:14px}.cpp-onboarding-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cpp-onboarding-area{border:1px solid #e3eaf3;border-radius:20px;padding:22px;cursor:pointer;transition:.18s ease;background:#fff;position:relative;min-height:210px}.cpp-onboarding-area:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(17,41,75,.08);border-color:#cfdcf1}.cpp-onboarding-area.is-selected{border-color:#9bbcff;background:#f7faff;box-shadow:0 0 0 3px rgba(0,87,255,.06)}.cpp-onboarding-area input{position:absolute;top:16px;right:16px;width:18px;height:18px}.cpp-onboarding-area__icon{width:44px;height:44px;border-radius:14px;background:#eef4ff;color:var(--cpp-primary);display:grid;place-items:center;margin-bottom:17px}.cpp-onboarding-area strong{display:block;font-size:17px;color:var(--cpp-ink)}.cpp-onboarding-area p{font-size:13px;line-height:1.55;color:var(--cpp-muted);margin:7px 0 16px}.cpp-onboarding-area em{font-style:normal;font-size:11px;font-weight:900;color:var(--cpp-primary);letter-spacing:.03em;text-transform:uppercase}.cpp-onboarding-services{display:grid;gap:11px}.cpp-onboarding-service{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;border:1px solid #e5ebf3;border-radius:16px;padding:15px 17px;background:#fff;cursor:pointer}.cpp-onboarding-service:hover{border-color:#cad9ee}.cpp-onboarding-service input{width:18px;height:18px}.cpp-onboarding-service strong{display:block;font-size:14px;color:var(--cpp-ink)}.cpp-onboarding-service small{display:block;font-size:12.5px;color:var(--cpp-muted);line-height:1.5;margin-top:3px}.cpp-access-status{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:10.5px;font-weight:900;letter-spacing:.03em;text-transform:uppercase;background:#f0f3f7;color:#6c7889}.cpp-access-status--success{background:#e8f8f1;color:#13704a}.cpp-access-status--warning{background:#fff5db;color:#86610c}.cpp-access-status--danger{background:#ffeded;color:#a32d2d}.cpp-access-status--neutral{background:#f0f3f7;color:#6c7889}.cpp-onboarding-confirm{display:flex;gap:16px;padding:20px;border-radius:18px;background:#f7faff;border:1px solid #e0eaff}.cpp-onboarding-confirm__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#fff;color:var(--cpp-primary);box-shadow:0 6px 16px rgba(19,48,91,.07);flex:0 0 auto}.cpp-onboarding-summary{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.cpp-onboarding-summary span{padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #dce7f6;font-size:12px;font-weight:800}.cpp-onboarding-note{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:15px 17px;border-radius:15px;background:#fffaf0;border:1px solid #f3e5c0}.cpp-onboarding-note strong{white-space:nowrap;font-size:12.5px}.cpp-onboarding-note span{font-size:12.5px;line-height:1.55;color:#776a50}.cpp-onboarding-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid #edf1f6}.cpp-onboarding-actions [data-cpp-onboarding-next],.cpp-onboarding-actions [data-cpp-onboarding-submit]{margin-left:auto}.cpp-onboarding-feedback{padding:12px 14px;margin-top:16px;border-radius:13px;background:#edf8f2;color:#17653f;font-size:13px;font-weight:700}.cpp-onboarding-feedback.is-error{background:#fff0f0;color:#9d2929}

.cpp-access-waiting{min-height:620px;display:grid;place-items:center}.cpp-access-waiting__card{width:min(760px,100%);background:#fff;border:1px solid #e5ebf3;border-radius:28px;box-shadow:0 24px 70px rgba(17,38,72,.12);padding:40px;text-align:center}.cpp-access-waiting__brand{display:flex;justify-content:center;align-items:center;gap:9px;margin-bottom:28px}.cpp-access-waiting__brand>span{width:34px;height:34px;border-radius:11px;background:var(--cpp-primary);color:#fff;display:grid;place-items:center}.cpp-access-waiting__icon{width:62px;height:62px;border-radius:20px;background:#eef4ff;color:var(--cpp-primary);display:grid;place-items:center;margin:0 auto 18px}.cpp-access-waiting__icon svg{width:27px;height:27px}.cpp-access-waiting h1{font-size:31px;letter-spacing:-.035em;margin:7px 0 12px;color:var(--cpp-ink)}.cpp-access-waiting>div>p{font-size:14.5px;line-height:1.65;color:var(--cpp-muted);max-width:600px;margin:0 auto}.cpp-access-waiting__services{display:grid;gap:9px;margin:26px 0;text-align:left}.cpp-access-waiting__services article{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border:1px solid #e8edf4;border-radius:14px}.cpp-access-waiting__services strong{display:block;font-size:13.5px}.cpp-access-waiting__services small{display:block;font-size:11.5px;color:var(--cpp-muted);margin-top:2px}.cpp-access-waiting__actions{display:flex;gap:10px;justify-content:center;margin-bottom:16px}.cpp-access-waiting__card>small{color:var(--cpp-muted);font-size:11.5px}

.cpp-access-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.cpp-access-area-card{border:1px solid #e5ebf3;border-radius:20px;background:#fff;overflow:hidden}.cpp-access-area-card>header{display:flex;gap:12px;padding:20px;border-bottom:1px solid #edf1f6;background:linear-gradient(180deg,#fff,#fbfcff)}.cpp-access-area-card__icon{width:39px;height:39px;border-radius:12px;background:#eef4ff;color:var(--cpp-primary);display:grid;place-items:center;flex:0 0 auto}.cpp-access-area-card h3{font-size:17px;margin:3px 0 5px;color:var(--cpp-ink)}.cpp-access-area-card p{font-size:12px;line-height:1.5;color:var(--cpp-muted);margin:0}.cpp-access-service-list{display:grid}.cpp-access-service-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid #edf1f6}.cpp-access-service-row:last-child{border-bottom:0}.cpp-access-service-row strong{display:block;font-size:12.5px;color:var(--cpp-ink)}.cpp-access-service-row small{display:block;color:var(--cpp-muted);font-size:11px;line-height:1.45;margin-top:3px}.cpp-access-info-note{display:flex;gap:12px;margin-top:18px;padding:16px 18px;border:1px solid #dbe8f8;background:#f5f9ff;border-radius:16px;color:var(--cpp-ink)}.cpp-access-info-note>svg{color:var(--cpp-primary);flex:0 0 auto}.cpp-access-info-note strong{display:block;font-size:13px}.cpp-access-info-note p{font-size:12px;line-height:1.5;color:var(--cpp-muted);margin:3px 0 0}

@media(max-width:980px){.cpp-onboarding-areas,.cpp-access-area-grid{grid-template-columns:1fr}.cpp-onboarding-area{min-height:0}.cpp-onboarding__surface{padding:30px}.cpp-access-area-card{max-width:none}}
@media(max-width:820px){.cpp-onboarding,.cpp-access-waiting{width:100%;left:auto;transform:none;margin:0;min-height:100vh;background:#f8faff}.cpp-onboarding__top{padding:16px 18px}.cpp-onboarding__surface{border-radius:0;border-left:0;border-right:0;box-shadow:none;min-height:calc(100vh - 70px);padding:30px 18px}.cpp-onboarding__intro h1{font-size:29px}.cpp-access-waiting__card{border-radius:0;border:0;box-shadow:none;min-height:100vh;width:100%;padding:34px 20px;display:flex;flex-direction:column;justify-content:center}.cpp-auth-grid{grid-template-columns:1fr}.cpp-onboarding-service{grid-template-columns:auto 1fr}.cpp-onboarding-service .cpp-access-status{grid-column:2;justify-self:start}.cpp-access-waiting__actions{flex-direction:column}.cpp-access-waiting__actions .cpp-button{width:100%;justify-content:center}}
@media(max-width:520px){.cpp-onboarding__progress span{font-size:10px}.cpp-onboarding__surface{padding-inline:14px}.cpp-onboarding__intro{text-align:left}.cpp-onboarding__progress{margin-bottom:28px}.cpp-onboarding-area{padding:18px}.cpp-onboarding-note{display:block}.cpp-onboarding-note strong{display:block;margin-bottom:5px}.cpp-onboarding-actions{position:sticky;bottom:0;background:#fff;margin-inline:-14px;padding:14px;box-shadow:0 -10px 28px rgba(18,38,70,.06)}.cpp-onboarding-actions .cpp-button{min-height:44px}.cpp-access-service-row{align-items:flex-start;flex-direction:column}.cpp-access-area-card>header{padding:17px}}

/* V0.2.6 branding cleanup */
.cpp-onboarding__top{justify-content:flex-end!important}.cpp-login-form-inner>[data-cpp-auth-panel]:first-of-type{margin-top:0}

/* V0.2.7 — authentication flow and mobile experience */
.cpp-forgot{appearance:none;border:0;background:transparent;width:100%;cursor:pointer;padding:0}
.cpp-auth-panel-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#edf3ff;color:var(--cpp-primary);margin-bottom:17px}
.cpp-auth-panel-icon svg{width:21px;height:21px}
.cpp-forgot-form,.cpp-reset-form{display:grid;gap:15px;margin-top:22px}
.cpp-auth-help-note{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;margin-top:16px;padding:13px 14px;border:1px solid #dfe8f5;border-radius:13px;background:#f7faff}
.cpp-auth-help-note strong{font-size:11.5px;color:var(--cpp-ink);white-space:nowrap}.cpp-auth-help-note span{font-size:11.5px;line-height:1.55;color:var(--cpp-muted)}
.cpp-login-form-inner input[type=text],.cpp-login-form-inner input[type=password],.cpp-login-form-inner input[type=email],.cpp-login-form-inner input[type=tel]{font-size:15px;min-height:47px}
.cpp-metric--fiscal strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.cpp-fiscal-row__amount,.cpp-outcome-hero>strong{font-variant-numeric:tabular-nums}

/* Mobile portal layout. Gerow's header is intentionally left untouched. */
@media(max-width:820px){
  .cpp-shell{min-height:auto;background:#f8fafe}
  .cpp-main{padding:20px 16px calc(112px + env(safe-area-inset-bottom)) ;background:#f8fafe}
  .cpp-topbar{gap:14px;margin-bottom:20px;align-items:center}
  .cpp-topbar>div:first-child{min-width:0}.cpp-topbar h1{font-size:25px;line-height:1.12}.cpp-topbar p{font-size:13px;line-height:1.45}
  .cpp-topbar__actions{gap:7px;flex:0 0 auto}.cpp-icon-button,.cpp-avatar{width:39px;height:39px;border-radius:12px}
  .cpp-hero-card{padding:23px 20px;border-radius:20px}.cpp-hero-card h2{font-size:25px}.cpp-hero-card p{font-size:13.5px;line-height:1.55}.cpp-hero-card__status{padding:15px}

  .cpp-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 27px}
  .cpp-metric{min-width:0;padding:16px;border-radius:17px}
  .cpp-metric__icon{margin-bottom:13px}.cpp-metric span{font-size:11.5px}.cpp-metric strong{font-size:23px;overflow-wrap:normal;word-break:normal}.cpp-metric small{font-size:10.5px;line-height:1.4}
  .cpp-metric--messages,.cpp-metric--fiscal{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:13px;row-gap:2px;align-items:center}
  .cpp-metric--messages .cpp-metric__icon,.cpp-metric--fiscal .cpp-metric__icon{grid-row:1/3;margin:0}
  .cpp-metric--messages>span,.cpp-metric--fiscal>span{grid-column:2;align-self:end}
  .cpp-metric--messages>strong,.cpp-metric--fiscal>strong{grid-column:3;grid-row:1/3;margin:0;justify-self:end;align-self:center;font-size:24px;line-height:1;white-space:nowrap}
  .cpp-metric--messages>small,.cpp-metric--fiscal>small{grid-column:2;align-self:start}

  .cpp-section{margin-top:24px}.cpp-section-heading{margin-bottom:12px}.cpp-section-heading h2,.cpp-panel h2{font-size:21px}
  .cpp-case-card,.cpp-panel,.cpp-document-case,.cpp-finance-card{border-radius:18px}
  .cpp-case-dialog{width:calc(100vw - 12px);max-width:calc(100vw - 12px);margin:auto}
  .cpp-dialog__surface--case{max-height:calc(100dvh - 12px);border-radius:20px}
  .cpp-dialog__surface--case>.cpp-dialog__head{padding:19px 18px 16px}.cpp-dialog__head h2{font-size:22px}
  .cpp-case-tabs{padding:8px 10px;gap:2px}.cpp-case-tabs button{font-size:11.5px;padding:9px 10px}
  .cpp-case-tab-panel{padding:19px 17px 23px;min-height:0}
  .cpp-questionnaire-head h3,.cpp-chat-head h3,.cpp-video-hero h3{font-size:21px}.cpp-questionnaire-head p,.cpp-chat-head p,.cpp-video-hero p{font-size:13px}
  .cpp-question legend{font-size:13.5px}.cpp-question p{font-size:12px}.cpp-choice-row span{font-size:12.5px;min-height:44px}

  .cpp-mobile-nav{left:14px;right:14px;bottom:calc(8px + env(safe-area-inset-bottom));border-radius:18px;padding:6px 7px;min-height:68px}
  .cpp-mobile-nav button{gap:3px;font-size:9.5px;padding:5px 2px;min-width:0}
  .cpp-mobile-nav svg{width:18px;height:18px}.cpp-mobile-nav__new{transform:translateY(-10px)}.cpp-mobile-nav__new svg{width:40px;height:40px;padding:10px;border-radius:13px}
  .cpp-toast{left:16px;right:16px;bottom:calc(92px + env(safe-area-inset-bottom));max-width:none;font-size:12.5px}

  .cpp-login-wrap{background:#fff}.cpp-login-panel{padding:34px 22px}.cpp-login-form-inner{max-width:460px}.cpp-login-form-inner h2{font-size:27px}.cpp-login-form-inner>p{font-size:14px;line-height:1.55;margin-bottom:22px}.cpp-login-form-inner label{font-size:12.5px}.cpp-security-note{font-size:11px;line-height:1.5}
}

@media(max-width:520px){
  .cpp-main{padding:18px 14px calc(110px + env(safe-area-inset-bottom))}
  .cpp-topbar .cpp-eyebrow{font-size:9.5px;margin-bottom:5px}.cpp-topbar h1{font-size:23px}.cpp-topbar p{font-size:12.5px}
  .cpp-topbar__actions .cpp-icon-button{display:grid}
  .cpp-hero-card{padding:20px 18px}.cpp-hero-card h2{font-size:23px}
  .cpp-metric{padding:14px}.cpp-metric__icon{width:34px;height:34px;border-radius:10px}.cpp-metric strong{font-size:21px}
  .cpp-metric--messages,.cpp-metric--fiscal{padding:15px 16px}.cpp-metric--messages>strong,.cpp-metric--fiscal>strong{font-size:22px}
  .cpp-attention-card{padding:15px}.cpp-attention-card strong{font-size:13.5px}.cpp-attention-card p{font-size:12px;line-height:1.5}
  .cpp-mobile-nav{left:10px;right:10px}.cpp-mobile-nav button{font-size:9px}.cpp-mobile-nav__new svg{width:38px;height:38px}
  .cpp-case-dialog{width:calc(100vw - 8px);max-width:calc(100vw - 8px)}.cpp-dialog__surface--case{border-radius:18px}.cpp-case-tabs button{font-size:11px}
  .cpp-login-panel{padding:28px 18px}.cpp-login-form-inner h2{font-size:25px}.cpp-login-form-inner input[type=text],.cpp-login-form-inner input[type=password],.cpp-login-form-inner input[type=email],.cpp-login-form-inner input[type=tel]{font-size:16px;min-height:49px}.cpp-auth-help-note{grid-template-columns:1fr}.cpp-auth-help-note strong{white-space:normal}
}
.cpp-login-form{display:grid;gap:15px}.cpp-auth-check--remember{margin:1px 0 0!important}.cpp-auth-check--remember span{font-size:12.5px!important}

/* V0.2.8 — brand polish, stable Gerow mobile header and mobile containment */
.cpp-onboarding__top{justify-content:flex-end}
.cpp-access-waiting__progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;position:relative;margin:30px 0 26px;padding:0 8px}
.cpp-access-waiting__progress:before{content:"";position:absolute;left:16%;right:16%;top:20px;height:2px;background:#e4eaf3;z-index:0}
.cpp-access-waiting__progress>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;color:#8b97a8;min-width:0}
.cpp-access-waiting__progress>div>span{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#f2f5f9;border:1px solid #dfe6ef;color:#7d899a;font-size:12px;font-weight:900;margin-bottom:4px}
.cpp-access-waiting__progress>div>span svg{width:17px;height:17px}
.cpp-access-waiting__progress>div strong{font-size:12.5px;color:var(--cpp-ink)}
.cpp-access-waiting__progress>div small{font-size:10.5px;color:#909cad}
.cpp-access-waiting__progress>div.is-complete>span{background:#eaf8f2;border-color:#cbeadd;color:#15714b}
.cpp-access-waiting__progress>div.is-active>span{background:var(--cpp-primary);border-color:var(--cpp-primary);color:#fff;box-shadow:0 8px 22px rgba(0,87,255,.2)}
.cpp-access-waiting__progress>div.is-active strong{color:var(--cpp-primary)}
.cpp-access-waiting__reassurance{display:grid;gap:3px;padding:15px 17px;border-radius:15px;background:#f6f9fe;border:1px solid #e3ebf6;margin:4px 0 20px;text-align:left}
.cpp-access-waiting__reassurance strong{font-size:13px;color:var(--cpp-ink)}
.cpp-access-waiting__reassurance span{font-size:12px;line-height:1.55;color:var(--cpp-muted)}
.cpp-access-waiting__actions{align-items:center;margin-bottom:0}
.cpp-access-waiting__logout{font-size:12.5px;font-weight:800;color:#7f8a99!important;text-decoration:none!important;padding:10px 8px}
.cpp-access-waiting__logout:hover{color:var(--cpp-ink)!important}

/* Never let flexible dashboard content force the viewport wider. */
.cpp-main,.cpp-view,.cpp-content-grid,.cpp-case-grid,.cpp-case-grid--wide,.cpp-case-card,.cpp-case-card__top,.cpp-case-card__foot,.cpp-panel,.cpp-document-case,.cpp-finance-card{min-width:0;max-width:100%}
.cpp-case-card{width:100%}
.cpp-case-card h3,.cpp-case-id,.cpp-case-card__foot,.cpp-case-card__top{overflow-wrap:anywhere}
.cpp-finance-card strong,.cpp-metric strong,.cpp-fiscal-row__amount{font-variant-numeric:tabular-nums}

@media(max-width:820px){
  /* Il tema Gerow mantiene integralmente il proprio header mobile. */
  .cpp-main{width:100%;max-width:100vw;overflow-x:clip;padding-left:16px;padding-right:16px}
  .cpp-view,.cpp-case-grid,.cpp-case-grid--wide,.cpp-content-grid{width:100%;max-width:100%;overflow:visible}
  .cpp-case-card{box-sizing:border-box;margin-left:0;margin-right:0;overflow:hidden}
  .cpp-case-card__top{display:flex;align-items:flex-start;justify-content:flex-start;gap:10px;flex-wrap:wrap}
  .cpp-case-card__top .cpp-status{white-space:normal!important;max-width:100%;line-height:1.25;text-align:center;overflow-wrap:break-word}
  .cpp-case-card__signals{width:100%;justify-content:flex-start}
  .cpp-case-card__foot{gap:12px;flex-wrap:wrap}
  .cpp-case-card__foot .cpp-link-button{margin-left:auto}
  .cpp-finance-card strong,.cpp-metric strong,.cpp-fiscal-row__amount{white-space:nowrap;overflow-wrap:normal;word-break:normal}

  .cpp-access-waiting__progress{margin-top:26px}
  .cpp-access-waiting__card{justify-content:flex-start;padding-top:48px}
}

@media(max-width:560px){
  .cpp-main{padding-left:14px!important;padding-right:14px!important}
  .cpp-case-grid,.cpp-case-grid--wide{gap:14px;width:100%}
  .cpp-case-card{width:100%;max-width:100%;padding:17px 16px;border-radius:20px}
  .cpp-case-card__top .cpp-service-badge{flex:0 0 auto}
  .cpp-case-card__top .cpp-status{flex:1 1 190px;justify-content:center;padding-left:10px;padding-right:10px}
  .cpp-case-card h3{font-size:21px;line-height:1.22;margin-top:17px}
  .cpp-case-id{font-size:11.5px;line-height:1.4}
  .cpp-progress-head{gap:12px}
  .cpp-progress-head strong{white-space:nowrap}
  .cpp-access-waiting__progress{grid-template-columns:1fr;gap:12px;padding-left:0;margin:24px 0}
  .cpp-access-waiting__progress:before{display:none}
  .cpp-access-waiting__progress>div{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:11px;text-align:left;align-items:center;justify-items:start}
  .cpp-access-waiting__progress>div>span{grid-row:1/3;width:38px;height:38px;margin:0}
  .cpp-access-waiting__progress>div strong{font-size:13px}
  .cpp-access-waiting__progress>div small{font-size:11px}
  .cpp-access-waiting__services article{align-items:flex-start;flex-direction:column}
  .cpp-access-waiting__actions{display:grid;grid-template-columns:1fr;gap:8px}
  .cpp-access-waiting__actions .cpp-button{width:100%;justify-content:center}
  .cpp-access-waiting__logout{text-align:center}
}


/* V0.2.9 — NASpI workflow + client-friendly updates */
.cpp-update-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.cpp-update-filters button{appearance:none;border:1px solid var(--cpp-line);background:#fff;color:var(--cpp-muted);border-radius:999px;padding:9px 14px;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.cpp-update-filters button.is-active{background:#edf3ff;border-color:#cfe0ff;color:var(--cpp-primary)}
.cpp-timeline-day{font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#8b98aa;padding:16px 0 5px}
.cpp-timeline--client .cpp-timeline__item{padding:12px 0}.cpp-timeline--client .cpp-timeline__item strong{font-size:14px}.cpp-timeline--client .cpp-timeline__item small{font-size:11.5px}
.cpp-naspi-status-card{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border:1px solid #dde6f5;background:linear-gradient(135deg,#f8faff,#f1f5fb);border-radius:22px;padding:23px 25px}
.cpp-naspi-status-card>div>span{font-size:10.5px;font-weight:850;letter-spacing:.08em;color:#8190a4}.cpp-naspi-status-card h4{font-size:25px;line-height:1.1;margin:5px 0;color:var(--cpp-ink)}.cpp-naspi-status-card p{font-size:13px;color:var(--cpp-muted);margin:0;max-width:690px}.cpp-naspi-status-card>strong{font-size:27px;line-height:1;color:var(--cpp-ink);white-space:nowrap;text-align:right}.cpp-naspi-status-card>strong small{display:block;font-size:10.5px;color:var(--cpp-muted);font-weight:700;margin-top:7px}
.cpp-naspi-status-card--success{background:linear-gradient(135deg,#f6fdfb,#edf9f5);border-color:#cde9df}.cpp-naspi-status-card--success>strong{color:#138163}.cpp-naspi-status-card--danger{background:linear-gradient(135deg,#fffafb,#fff1f4);border-color:#f0d5dc}.cpp-naspi-status-card--danger>strong{color:#c64459}.cpp-naspi-status-card--warning{background:linear-gradient(135deg,#fffcf5,#fff8e8);border-color:#f2e2b8}
@media(max-width:700px){.cpp-naspi-status-card{align-items:flex-start;flex-direction:column;padding:19px}.cpp-naspi-status-card>strong{text-align:left;font-size:25px}.cpp-update-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.cpp-update-filters button{white-space:nowrap}}

/* V0.2.10 — sidebar without redundant secondary branding */
@media(min-width:821px){.cpp-sidebar>.cpp-nav{margin-top:4px}}
