:root{
  --cci-red:#E30613;
  --cci-red-soft:#FFF2F3;
  --cci-red-deep:#B0000B;
  --ink:#090B12;
  --charcoal:#171923;
  --muted:#4B5565;
  --line:#ECEEF3;
  --surface:#FFFFFF;
  --cream:#FFF9F2;
  --warm:#F7F3EC;
  --bg:#F7F8FA;
  --success:#087443;
  --warning:#B54708;
  --danger:#B42318;
  --shadow:0 24px 70px rgba(9,11,18,.10);
  --shadow-sm:0 10px 30px rgba(9,11,18,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 10% -8%, rgba(227,6,19,.10), transparent 30%),
    radial-gradient(circle at 96% 4%, rgba(227,6,19,.07), transparent 28%),
    linear-gradient(180deg,#FFFFFF 0%,#FAFAFB 42%,#F4F5F7 100%);
  color:var(--ink);
  font-size:16px;
  line-height:1.5;
}
a{color:var(--cci-red-deep);text-decoration:none}
a:hover{text-decoration:none;color:var(--cci-red)}
.container{max-width:1240px;margin:0 auto;padding:42px 24px 80px}
.topbar{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:14px 38px;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(236,238,243,.92);
  position:sticky;top:0;z-index:20;
}
.brand{display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none;min-width:230px}
.brand-logo{width:128px;height:54px;object-fit:contain;background:#fff;padding:2px;border-radius:10px;box-shadow:none}
.brand-text{border-left:1px solid var(--line);padding-left:14px;line-height:1.05}
.brand strong{display:block;font-size:18px;letter-spacing:-.025em;color:var(--ink)}
.brand small{display:block;color:var(--muted);font-size:12px;margin-top:5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.navlinks{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.navlinks a{font-weight:800;color:#252833;padding:10px 12px;border-radius:12px}
.navlinks a:hover{background:var(--cci-red-soft);color:var(--cci-red-deep)}
.inline{display:inline}.btn{border:0;border-radius:14px;padding:13px 18px;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:hover{transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,var(--cci-red),var(--cci-red-deep));color:#fff!important;box-shadow:0 16px 34px rgba(223,31,45,.24)}
.btn-soft{background:#F3F4F7;color:var(--ink)!important}.btn-soft:hover{background:#e9ebf0}.btn-ghost{background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.75);color:var(--ink)!important;box-shadow:0 10px 25px rgba(9,11,18,.10)}
.hero-premium{
  display:grid;grid-template-columns:1.15fr .85fr;gap:34px;border-radius:38px;padding:58px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,248,248,.96)),
    linear-gradient(135deg,#fff,#fff);
  color:var(--ink);box-shadow:var(--shadow);position:relative;overflow:hidden;border:1px solid rgba(223,31,45,.10)
}
.hero-premium:before{content:"";position:absolute;right:-84px;top:-92px;width:310px;height:310px;border:36px solid rgba(223,31,45,.12);border-radius:50%;transform:rotate(28deg)}
.hero-premium:after{content:"";position:absolute;left:-120px;bottom:-130px;width:280px;height:280px;border-radius:50%;background:rgba(223,31,45,.07)}
.hero-copy{position:relative;z-index:1}
.hero h1{font-size:58px;line-height:.98;max-width:780px;margin:6px 0 18px;letter-spacing:-.055em}.lead{font-size:20px;color:#263244;max-width:770px;font-weight:520;opacity:1!important}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.14em;color:var(--cci-red-deep);font-size:12px;font-weight:950;margin:0 0 10px}.eyebrow:before{content:"";width:9px;height:9px;background:var(--cci-red);border-radius:999px}
.hero-panel{position:relative;z-index:1;display:grid;gap:14px;align-self:center}.panel-stat{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.panel-stat:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:var(--cci-red)}.panel-stat span{display:block;color:var(--muted);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.panel-stat strong{font-size:22px;display:block;margin-top:5px;color:var(--ink)}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}.card,.feature-card{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-sm);padding:30px}.feature-card h2{font-size:22px;margin:0 0 10px}.feature-card p{color:#454B5B;margin:0}.icon-badge{width:48px;height:48px;border-radius:16px;background:var(--cci-red-soft);color:var(--cci-red-deep);font-weight:950;display:flex;align-items:center;justify-content:center;margin-bottom:16px;border:1px solid rgba(223,31,45,.14)}.icon-badge.success{background:#ECFDF3;color:var(--success)}
.page-heading{margin-bottom:30px}.page-heading h1,h1{font-size:46px;line-height:1.05;letter-spacing:-.045em;margin:0 0 12px;color:#0B1220;font-weight:950}.muted{color:var(--muted)}.small{font-size:14px}.form label{display:block;font-weight:900;margin:16px 0 8px;color:#202532}.form input,.form select,.form textarea{width:100%;border:1px solid #D5D9E2;background:#fff;border-radius:15px;padding:14px 16px;font:inherit;margin-top:8px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--cci-red);box-shadow:0 0 0 4px rgba(223,31,45,.11)}.form textarea{min-height:110px;resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.check{display:flex!important;gap:10px;align-items:flex-start}.check input{width:auto;margin-top:4px}.conditional{display:none;background:#fffafa;border:1px solid rgba(223,31,45,.15);border-radius:22px;padding:22px;margin:18px 0}.conditional.show{display:block}.alert{background:#fff1f0;color:var(--danger);border:1px solid #fecdca;border-radius:14px;padding:14px 16px;font-weight:800}.auth-wrap{display:flex;justify-content:center;padding:36px 0}.auth-card{width:min(100%,560px)}.glass-card{background:rgba(255,255,255,.94);box-shadow:var(--shadow)}.compact-form .btn{margin-top:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:24px 0}.stat-card strong{display:block;font-size:42px;margin-top:22px}.table-card{overflow:auto}.table{width:100%;border-collapse:collapse}.table th{text-align:left;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em}.table th,.table td{padding:16px;border-bottom:1px solid var(--line)}.pill{display:inline-flex;padding:7px 12px;border-radius:999px;background:#F5F6FA;color:#252833;font-weight:900;font-size:13px}.pill.emergency{background:#FFF1F0;color:#B42318}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.detail-list div{padding:16px;background:#fffafa;border:1px solid rgba(223,31,45,.14);border-radius:16px}.detail-list dt{color:var(--muted);font-size:13px;font-weight:950;text-transform:uppercase;letter-spacing:.05em}.detail-list dd{margin:6px 0 0;font-weight:850}.success-card{max-width:720px;margin:40px auto;text-align:center}.footer{text-align:center;color:var(--muted);padding:24px 16px 46px}
.section-title{display:flex;align-items:center;gap:12px}.section-title:before{content:"";display:block;width:7px;height:28px;background:var(--cci-red);border-radius:999px}
@media (max-width:920px){.hero-premium{grid-template-columns:1fr;padding:34px}.hero h1{font-size:40px}.feature-grid,.stats,.two,.three,.detail-list{grid-template-columns:1fr}.topbar{height:auto;padding:14px 16px;align-items:flex-start}.brand-logo{width:108px}.brand-text{display:none}.navlinks{justify-content:flex-end}.container{padding:30px 16px 60px}}


/* High-contrast application page header */
.application-hero{
  display:grid;
  grid-template-columns:1fr auto;
  gap:28px;
  align-items:center;
  margin-bottom:28px;
  padding:34px 38px;
  border-radius:30px;
  background:linear-gradient(135deg,#FFFFFF 0%,#FFF5F5 100%);
  border:1px solid rgba(227,6,19,.12);
  box-shadow:0 18px 48px rgba(11,18,32,.08);
}
.application-hero h1{font-size:48px;margin-bottom:12px;color:#0B1220;letter-spacing:-.05em}
.application-hero p{color:#263244!important;font-weight:650!important;opacity:1!important;margin:0;max-width:880px;font-size:19px;line-height:1.55}
.application-hero img{width:156px;height:auto;background:#fff;border-radius:18px;padding:8px;box-shadow:0 14px 36px rgba(11,18,32,.08)}
.form.card{border-top:6px solid var(--cci-red);box-shadow:0 20px 58px rgba(11,18,32,.09)}
.form h2{color:#0B1220;font-size:24px;margin-top:28px;padding-top:8px;border-top:1px solid #EEF0F4}
.form h2:first-child{margin-top:0;border-top:0;padding-top:0}
.form h3{color:#0B1220}
.form input::placeholder,.form textarea::placeholder{color:#7B8496;opacity:1}
.subtle-note{background:#FFF5F5;border:1px solid rgba(227,6,19,.14);border-left:5px solid var(--cci-red);border-radius:18px;padding:16px 18px;color:#263244;font-weight:650;margin:18px 0 0}
@media (max-width:920px){.application-hero{grid-template-columns:1fr;padding:26px}.application-hero h1{font-size:36px}.application-hero img{width:128px;order:-1}}

/* --- V2 polish: CCI America Financial Assistance workflow --- */
.application-hero {
  display: block;
  background: radial-gradient(circle at 10% 0%, rgba(224, 18, 31, .10), transparent 42%), linear-gradient(135deg, #fff 0%, #fff7f7 100%);
  border: 1px solid rgba(224, 18, 31, .16);
  border-radius: 28px;
  padding: 42px;
  margin-bottom: 32px;
}
.application-hero h1 { max-width: 1050px; }
.application-hero p { max-width: 980px; color: #202938; font-weight: 650; }
.case-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 34px;
  border-radius: 28px;
  background: linear-gradient(135deg, #090d18, #1b2436);
  color: #fff;
  margin-bottom: 28px;
}
.case-hero h1 { margin: 6px 0 8px; font-size: clamp(2.1rem, 4vw, 4.3rem); letter-spacing: -0.06em; }
.case-hero p { color: rgba(255,255,255,.82); margin: 0; }
.case-status-panel {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 22px;
  padding: 18px 20px;
  min-width: 240px;
  display: grid;
  gap: 8px;
}
.case-status-panel strong { font-size: 1.2rem; }
.case-status-panel small { color: rgba(255,255,255,.65); }
.case-grid { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 24px; align-items: start; }
.panel-card { border-radius: 24px; border: 1px solid #e8ebf0; box-shadow: 0 18px 55px rgba(9,13,24,.06); }
.sticky-card { position: sticky; top: 88px; }
.info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0 24px; }
.info-grid.compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.info-grid div { background: #f7f8fb; border: 1px solid #edf0f4; border-radius: 16px; padding: 14px 16px; }
.info-grid span { display: block; color: #687386; font-size: .82rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 5px; }
.info-grid strong { color: #111827; font-weight: 850; }
.detail-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
.detail-list div { padding: 14px 16px; border-radius: 16px; background: #fff8f8; border: 1px solid #ffe0e2; }
.detail-list dt { color: #697386; font-weight: 800; font-size: .85rem; }
.detail-list dd { margin: 6px 0 0; font-weight: 800; color: #111827; }
.stacked-form { display: grid; gap: 14px; }
.stacked-form .btn, .review-form .btn { width: fit-content; }
.case-section { margin-top: 24px; }
.doc-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.doc-list li { display: flex; justify-content: space-between; gap: 12px; padding: 13px 14px; border-radius: 14px; background: #f7f8fb; border: 1px solid #edf0f4; }
.review-form { display: grid; gap: 16px; }
.verification-shell { max-width: 980px; margin: 0 auto; }
.verification-card h1, .success-card h1 { font-size: clamp(2rem, 5vw, 4.2rem); letter-spacing: -0.06em; }
.page-heading { margin-bottom: 24px; }
.page-heading h1 { margin: 0 0 8px; font-size: clamp(2rem, 4vw, 4rem); letter-spacing: -0.05em; }
.field-help { margin: -8px 0 18px; color: #566174; font-size: .95rem; font-weight: 650; }
label { color: #111827; font-weight: 760; }
input, select, textarea { width: 100%; min-height: 46px; border-radius: 14px; border: 1px solid #ccd3df; padding: 10px 12px; font: inherit; background: #fff; color: #111827; }
textarea { min-height: 110px; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(224,18,31,.18); border-color: #e0121f; }
.btn { background: #e0121f; color: #fff; border: 0; border-radius: 999px; padding: 12px 20px; font-weight: 900; box-shadow: 0 12px 30px rgba(224,18,31,.18); }
.btn:hover { transform: translateY(-1px); }
.btn-soft { background: #fff; color: #e0121f; border: 1px solid rgba(224,18,31,.22); box-shadow: none; }
.subtle-note { background: #fff7f7; border: 1px solid #ffd7da; border-left: 6px solid #e0121f; border-radius: 18px; padding: 18px 20px; color: #202938; font-weight: 760; }
.note { background: #fbfbfd; border: 1px solid #e8ebf0; border-left: 5px solid #e0121f; border-radius: 16px; padding: 14px 16px; margin: 12px 0; }
@media (max-width: 980px) {
  .case-grid { grid-template-columns: 1fr; }
  .sticky-card { position: static; }
  .case-hero { align-items: flex-start; flex-direction: column; }
  .info-grid, .info-grid.compact, .detail-list { grid-template-columns: 1fr; }
}

/* --- V3 bespoke CCI polish: mature section architecture --- */
:root{
  --cci-red:#E30613;
  --cci-red-2:#C90010;
  --cci-black:#070A12;
  --cci-ink:#101624;
  --cci-soft:#FFF5F5;
  --cci-soft-2:#FFF9F9;
  --cci-border:#E7EAF0;
}
body{
  background:
    radial-gradient(circle at 4% 0%, rgba(227,6,19,.055), transparent 32%),
    radial-gradient(circle at 95% 6%, rgba(227,6,19,.045), transparent 30%),
    linear-gradient(180deg,#fff 0%,#FBFBFC 48%,#F6F7F9 100%);
}
.topbar{
  border-bottom:1px solid rgba(231,234,240,.95);
  box-shadow:0 12px 34px rgba(7,10,18,.045);
}
.navlinks a{
  color:#151A27;
  border:1px solid transparent;
}
.navlinks a:hover{
  background:#FFF6F6;
  border-color:#FFD9DC;
}
.container{max-width:1180px;}
.application-hero{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  padding:46px 48px;
  background:
    linear-gradient(120deg, rgba(255,255,255,.98), rgba(255,247,247,.97)),
    #fff;
  border:1px solid rgba(227,6,19,.13);
  box-shadow:0 26px 70px rgba(7,10,18,.08);
}
.application-hero:before{
  content:"";
  position:absolute;
  right:-90px;
  top:-110px;
  width:270px;
  height:270px;
  border-radius:50%;
  border:34px solid rgba(227,6,19,.075);
}
.application-hero:after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:7px;
  height:100%;
  background:linear-gradient(180deg,var(--cci-red),var(--cci-red-2));
}
.application-hero > *{position:relative;z-index:1;}
.application-hero h1{
  max-width:980px;
  font-size:clamp(2.4rem,5vw,4.65rem);
  letter-spacing:-.07em;
  color:var(--cci-black);
}
.application-hero p{
  max-width:940px;
  color:#253044!important;
  font-weight:680!important;
  font-size:clamp(1rem,1.8vw,1.28rem);
}
.eyebrow{
  color:#202938;
  letter-spacing:.18em;
}
.eyebrow:before{
  width:10px;height:10px;background:var(--cci-red);
  box-shadow:0 0 0 7px rgba(227,6,19,.08);
}
.subtle-note{
  max-width:960px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(227,6,19,.16);
  border-left:7px solid var(--cci-red);
  border-radius:20px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
.form.card{
  padding:0;
  overflow:hidden;
  border:1px solid rgba(231,234,240,.95);
  border-top:0;
  border-radius:30px;
  box-shadow:0 30px 85px rgba(7,10,18,.075);
  background:#fff;
}
.form.card > *:not(h2){
  margin-left:38px;
  margin-right:38px;
}
.form.card > h2{
  position:relative;
  margin:0 0 30px 0;
  padding:24px 38px 22px 38px;
  border:0;
  color:var(--cci-black);
  background:
    linear-gradient(90deg, rgba(227,6,19,.115), rgba(255,245,245,.92) 48%, rgba(255,255,255,1));
  border-top:1px solid var(--cci-border);
  border-bottom:1px solid rgba(227,6,19,.10);
  font-size:clamp(1.45rem,2.3vw,2rem);
  letter-spacing:-.035em;
}
.form.card > h2:first-child{
  border-top:6px solid var(--cci-red);
}
.form.card > h2:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:7px;
  background:var(--cci-red);
}
.form.card > h2:after{
  content:"";
  position:absolute;
  right:32px;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--cci-red),rgba(227,6,19,.12));
}
.form label{
  font-weight:820;
  color:#151A27;
}
.form input,.form select,.form textarea{
  border:1px solid #D9DEE8;
  border-radius:18px;
  padding:15px 17px;
  min-height:54px;
  background:#fff;
  box-shadow:0 1px 0 rgba(7,10,18,.02);
}
.form input:hover,.form select:hover,.form textarea:hover{
  border-color:#C5CBD8;
}
.form input:focus,.form select:focus,.form textarea:focus{
  outline:none;
  border-color:var(--cci-red);
  box-shadow:0 0 0 5px rgba(227,6,19,.105);
}
.form h3{
  font-size:1.2rem;
  letter-spacing:-.02em;
}
.conditional{
  background:linear-gradient(180deg,#FFFFFF,#FFF9F9);
  border:1px solid rgba(227,6,19,.14);
  border-radius:24px;
  padding:26px;
  box-shadow:0 14px 40px rgba(227,6,19,.045);
}
.field-help{
  background:#FAFBFC;
  border:1px solid var(--cci-border);
  border-left:4px solid var(--cci-red);
  border-radius:16px;
  padding:13px 15px;
  color:#465165;
}
.check{
  background:#FAFBFC;
  border:1px solid #E8EBF0;
  padding:14px 16px;
  border-radius:16px;
  margin-top:12px!important;
}
.check input{accent-color:var(--cci-red);}
.form .btn{
  margin:30px 38px 38px;
  min-height:56px;
  padding:16px 26px;
  border-radius:18px;
  background:linear-gradient(135deg,var(--cci-red),#B9000C);
  box-shadow:0 20px 48px rgba(227,6,19,.22);
  letter-spacing:-.01em;
}
.card,.panel-card,.table-card{
  border-radius:28px;
  border:1px solid rgba(231,234,240,.95);
  box-shadow:0 24px 70px rgba(7,10,18,.065);
}
.case-hero{
  background:
    radial-gradient(circle at 94% 0%, rgba(227,6,19,.22), transparent 36%),
    linear-gradient(135deg,#070A12,#171D2B);
  box-shadow:0 28px 72px rgba(7,10,18,.18);
}
.case-section h2,.panel-card h2,.card h2:not(.feature-card h2){
  letter-spacing:-.035em;
}
.btn-soft{
  background:#fff;
  color:#151A27!important;
  border:1px solid #E1E5EC;
}
.btn-soft:hover{
  background:#FFF6F6;
  border-color:#FFD4D8;
  color:var(--cci-red)!important;
}
.footer{
  color:#667085;
  font-weight:580;
}
@media (max-width:920px){
  .form.card > *:not(h2){margin-left:22px;margin-right:22px;}
  .form.card > h2{padding:20px 24px;margin-bottom:24px;}
  .form .btn{margin-left:22px;margin-right:22px;}
  .application-hero{padding:32px 26px;}
}

/* --- V5 leadership verification + reviewer polish --- */
.section-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.section-title-row h2{margin:0;}
.eyebrow.dark{color:#9B111E;letter-spacing:.18em;font-size:.78rem;margin:0 0 6px;}
.status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:92px;
  padding:9px 14px;
  border-radius:999px;
  background:#FFF5F5;
  color:#B00010;
  border:1px solid #FFD7DA;
  font-weight:900;
  letter-spacing:.02em;
}
.status-pill.success{background:#F0FFF6;color:#087A3D;border-color:#BFEFD2;}
.status-pill.warning{background:#FFF8E8;color:#9A6500;border-color:#F6D89B;}
.status-pill.danger{background:#FFF1F0;color:#B42318;border-color:#FDA29B;}
.mini-heading{
  font-size:1.05rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#5D687A;
  margin:22px 0 10px;
}
.leader-contact-grid strong.wrap-text,
.wrap-text{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.empty-state{
  margin-top:18px;
  border-radius:20px;
  border:1px dashed #FFD3D7;
  background:linear-gradient(135deg,#FFF9F9,#FFFFFF);
  padding:20px 22px;
  color:#263244;
}
.empty-state p{margin:8px 0 0;color:#5E6878;}
.leader-response-card{
  margin-top:20px;
  padding:22px;
  border-radius:24px;
  background:linear-gradient(135deg,#FFFFFF 0%,#FFF8F8 100%);
  border:1px solid #FFD8DC;
  box-shadow:0 18px 45px rgba(9,13,24,.06);
  border-left:7px solid var(--cci-red);
}
.leader-response-header{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-bottom:16px;
  border-bottom:1px solid #F1E2E4;
  margin-bottom:16px;
}
.leader-response-header > div{
  flex:1 1 240px;
  min-width:0;
}
.leader-response-header span,
.leader-text-block span{
  display:block;
  color:#697386;
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
  margin-bottom:5px;
}
.leader-response-header strong{
  font-size:1.18rem;
  overflow-wrap:normal;
  word-break:normal;
}
.leader-response-header small{
  color:#7A8495;
  font-weight:700;
  white-space:normal;
  margin-left:auto;
  text-align:right;
  overflow-wrap:anywhere;
}
.leader-text-block{
  background:#fff;
  border:1px solid #EDF0F4;
  border-radius:18px;
  padding:16px 18px;
  margin:14px 0;
}
.leader-text-block p{margin:0;color:#111827;font-weight:650;line-height:1.55;}
.sticky-card .muted{font-size:.98rem;line-height:1.55;}
.sticky-card select option{font-weight:700;}
@media(max-width:720px){
  .section-title-row,.leader-response-header{flex-direction:column;}
  .leader-response-header small{white-space:normal;}
}
.assigned-reviewer-list { margin: 16px 0 20px; padding: 16px; border: 1px solid var(--border); border-radius: 18px; background: #fff7f7; }
.assigned-reviewer-list h4 { margin: 0 0 12px; font-size: 0.95rem; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.assigned-reviewer-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-top: 1px solid rgba(239, 18, 32, .12); }
.assigned-reviewer-row:first-of-type { border-top: 0; }
.assigned-reviewer-row span { display:block; color: var(--muted); font-size: .9rem; margin-top: 2px; overflow-wrap: anywhere; }
.assigned-reviewer-row small { white-space: nowrap; color: var(--brand-red); font-weight: 800; }
.btn-small { padding: 10px 14px; border-radius: 999px; font-size: .9rem; display:inline-block; }
.fine-print { font-size: .9rem; color: var(--muted); margin-top: 4px; line-height: 1.45; }

/* v7 workflow refinements */
.reviewer-layout { display: grid; gap: 1.5rem; }
.review-private-card { border: 1px solid rgba(225, 6, 19, .18); background: linear-gradient(180deg, #fff, #fff8f8); }
.review-report-card { border: 1px solid #e6e9f0; border-radius: 22px; padding: 1.25rem; margin: 1rem 0; background: #fff; box-shadow: 0 14px 35px rgba(15, 23, 42, .06); }
.report-summary { border-top: 6px solid #e10613; }
.discussion-box { min-height: 220px; }
.blank-lines { height: 140px; margin-top: 1rem; background: repeating-linear-gradient(to bottom, transparent, transparent 31px, rgba(15,23,42,.18) 32px); }
@media print {
  .topbar, .navlinks, .btn, footer { display: none !important; }
  body { background: #fff !important; }
  .container { max-width: 100% !important; padding: 0 !important; }
  .card, .case-hero { box-shadow: none !important; break-inside: avoid; }
}

.score-total-box {
  margin: 18px 0 22px;
  padding: 20px 22px;
  border: 1px solid rgba(227, 6, 19, 0.18);
  border-left: 6px solid var(--cci-red, #e30613);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(227, 6, 19, 0.06), rgba(255,255,255,0.92));
  display: grid;
  gap: 6px;
}
.score-total-box span { color: var(--muted, #667085); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; font-size: .82rem; }
.score-total-box strong { font-size: 2rem; color: var(--ink, #101828); }
.score-total-box small { color: var(--muted, #667085); font-weight: 600; }
.score-summary-grid { margin: 14px 0 22px; }

/* --- V9 urgency triage refinements --- */
.tag{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  padding:7px 12px;
  border-radius:999px;
  background:#F4F6F8;
  color:#344054;
  font-weight:900;
  font-size:.86rem;
  border:1px solid #E5E7EB;
}
.tag.danger{
  background:#FFF1F1;
  color:#B0000B;
  border-color:#FFD4D8;
}
.tag.warning{
  background:#FFF7ED;
  color:#B54708;
  border-color:#FED7AA;
}
.urgency-triage-card{
  margin:0 0 24px;
  background:linear-gradient(135deg,#FFFFFF,#FFF8F8);
  border-left:6px solid var(--cci-red);
}
.urgency-form{margin-top:18px;}
.fine-print{font-size:.9rem;color:#667085;font-weight:650;}

.password-reveal-field{display:flex;align-items:center;gap:8px;}
.password-reveal-field input{flex:1;min-width:0;}
.password-reveal-toggle{border:1px solid #D0D5DD;background:#fff;color:#344054;border-radius:10px;padding:10px 12px;font-weight:850;cursor:pointer;}
.password-reveal-toggle:focus{outline:3px solid rgba(227,6,19,.18);outline-offset:2px;}


/* --- V10 app footer + one-page finance report --- */
.app-credit{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font-size:.92rem;}
.finance-onepage{max-width:1120px;margin:0 auto;}
.report-print-btn{margin:0 0 18px auto;display:flex;width:fit-content;}
.report-sheet{background:#fff;border:1px solid #ECEFF5;border-radius:28px;padding:28px 34px;box-shadow:0 28px 80px rgba(15,23,42,.10);color:#0B1220;}
.report-topline{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid #ECEFF5;padding-bottom:16px;margin-bottom:18px;}
.report-brand-left{display:flex;align-items:center;gap:14px;}
.report-brand-left img{width:74px;height:auto;object-fit:contain;}
.report-brand-left span,.report-case-meta span{display:block;text-transform:uppercase;letter-spacing:.12em;color:#667085;font-size:.74rem;font-weight:900;}
.report-brand-left strong{display:block;font-size:1.15rem;letter-spacing:-.02em;}
.report-case-meta{text-align:right;}.report-case-meta strong{display:block;font-size:1.08rem;}.report-case-meta small{color:#667085;font-weight:700;}
.report-title-row{display:flex;justify-content:space-between;gap:20px;margin:10px 0 18px;}.report-title-row h1{font-size:2.35rem;margin:4px 0 6px;letter-spacing:-.055em;}.report-subtitle{font-weight:800;color:#475467;margin:0;}.eyebrow.red{color:#B00010;}
.report-badges{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;}.mini-badge{display:inline-flex;padding:8px 11px;border-radius:999px;background:#F4F6F8;border:1px solid #E5E7EB;font-weight:950;font-size:.78rem;}.mini-badge.danger{background:#FFF1F0;color:#B42318;border-color:#FDA29B;}.mini-badge.warning{background:#FFF8E8;color:#9A6500;border-color:#F6D89B;}
.finance-action-card{display:grid;grid-template-columns:repeat(4,1fr);border-radius:20px;background:linear-gradient(135deg,#0B1220,#2B1020);color:#fff;overflow:hidden;margin-bottom:18px;}.finance-action-card div{padding:16px;border-right:1px solid rgba(255,255,255,.12);}.finance-action-card div:last-child{border-right:0;}.finance-action-card span{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:#FECACA;font-weight:950;margin-bottom:7px;}.finance-action-card strong{font-size:1.08rem;line-height:1.25;}
.report-grid-onepage{display:grid;grid-template-columns:1fr 1fr;gap:12px;}.report-box{border:1px solid #EAECF0;border-radius:18px;background:#fff;padding:14px 16px;box-shadow:0 10px 22px rgba(15,23,42,.035);}.report-box.span-2{grid-column:span 2;}.report-box h2{font-size:1rem;margin:0 0 8px;letter-spacing:-.02em;}.report-box p{font-size:.88rem;line-height:1.42;margin:6px 0;color:#263244;}.mini-dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;}.mini-dl div{background:#F8FAFC;border-radius:12px;padding:9px 10px;min-width:0;}.mini-dl dt{font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;color:#667085;font-weight:950;}.mini-dl dd{margin:3px 0 0;font-size:.84rem;font-weight:850;overflow-wrap:anywhere;}.score-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#FFF5F5;border:1px solid #FFD7DA;border-left:5px solid #E30613;border-radius:14px;padding:12px;margin:2px 0 8px;}.score-strip strong{font-size:1.35rem;}.score-strip span{font-size:.82rem;font-weight:900;color:#B00010;}.onepage-table{width:100%;border-collapse:collapse;font-size:.82rem;}.onepage-table th{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:#667085;font-size:.68rem;border-bottom:1px solid #EAECF0;padding:7px 6px;}.onepage-table td{padding:8px 6px;border-bottom:1px solid #F2F4F7;vertical-align:top;font-weight:750;}.report-footer-line{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #ECEFF5;margin-top:14px;padding-top:10px;color:#667085;font-size:.76rem;font-weight:750;}
@media(max-width:840px){.report-title-row,.report-topline,.report-footer-line{flex-direction:column;align-items:flex-start}.report-case-meta{text-align:left}.finance-action-card,.report-grid-onepage,.mini-dl{grid-template-columns:1fr}.report-box.span-2{grid-column:auto}.finance-action-card div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}}
@media print{
  @page{size:Letter;margin:0.28in;}
  body{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .topbar,.navlinks,.no-print-controls,.footer.app-credit{display:none!important;}
  .container{max-width:100%!important;padding:0!important;}
  .report-sheet{box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;max-width:100%!important;}
  .report-topline{padding-bottom:8px;margin-bottom:8px;}.report-brand-left img{width:58px;}.report-title-row{margin:4px 0 10px;}.report-title-row h1{font-size:1.75rem;margin:0 0 2px;}.report-subtitle{font-size:.82rem;}.mini-badge{padding:5px 8px;font-size:.68rem;}.finance-action-card{margin-bottom:8px;}.finance-action-card div{padding:9px 10px}.finance-action-card span{font-size:.58rem;margin-bottom:4px}.finance-action-card strong{font-size:.83rem}.report-grid-onepage{gap:7px;}.report-box{padding:8px 10px;border-radius:11px;box-shadow:none!important;}.report-box h2{font-size:.78rem;margin-bottom:4px}.report-box p{font-size:.66rem;line-height:1.26;margin:3px 0;}.mini-dl{gap:5px}.mini-dl div{padding:5px 7px;border-radius:8px}.mini-dl dt{font-size:.52rem}.mini-dl dd{font-size:.64rem}.score-strip{padding:7px;border-radius:9px;margin:0 0 4px}.score-strip strong{font-size:.95rem}.score-strip span{font-size:.62rem}.onepage-table{font-size:.61rem}.onepage-table th{font-size:.5rem;padding:4px}.onepage-table td{padding:4px}.report-footer-line{font-size:.56rem;margin-top:7px;padding-top:5px}.reviewer-summary-box{max-height:155px;overflow:hidden;}
}

/* Public pastoral verification pages: no staff/admin navigation shown */
.public-topbar .secure-pill {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(225, 6, 19, .22);
  background: rgba(225, 6, 19, .06);
  color: #b00010;
  border-radius: 999px;
  padding: 12px 18px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 12px;
}
.verification-shell .verification-card {
  max-width: 980px;
  margin: 40px auto;
}

/* --- V11 dashboard refresh --- */
.dashboard-shell{
  display:grid;
  gap:22px;
}
.dashboard-hero{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:26px;
  padding:36px 38px;
  border-radius:34px;
  background:
    radial-gradient(circle at 100% 0%, rgba(227,6,19,.10), transparent 28%),
    linear-gradient(130deg, rgba(255,255,255,.98), rgba(255,247,247,.96));
  border:1px solid rgba(227,6,19,.14);
  box-shadow:0 28px 70px rgba(7,10,18,.08);
}
.dashboard-hero:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:7px;
  background:linear-gradient(180deg,var(--cci-red),#c90010);
}
.dashboard-hero:after{
  content:"";
  position:absolute;
  right:-60px;
  top:-70px;
  width:210px;
  height:210px;
  border-radius:50%;
  border:28px solid rgba(227,6,19,.07);
}
.dashboard-hero > *{
  position:relative;
  z-index:1;
}
.dashboard-hero-copy{
  max-width:820px;
}
.dashboard-hero-copy h1{
  margin:8px 0 14px;
  font-size:clamp(2.3rem, 5vw, 4.6rem);
  letter-spacing:-.075em;
  color:#09111f;
}
.dashboard-hero-text{
  margin:0;
  color:#465163;
  font-size:1.06rem;
  line-height:1.7;
  font-weight:650;
  max-width:760px;
}
.dashboard-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:12px;
  max-width:360px;
}
.dashboard-kpi-grid{
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:16px;
}
.dashboard-kpi-card{
  position:relative;
  overflow:hidden;
  padding:22px 20px;
  border-radius:24px;
  border:1px solid #e8ebf1;
  background:#fff;
  box-shadow:0 16px 40px rgba(7,10,18,.05);
}
.dashboard-kpi-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:4px;
  background:#d7dde8;
}
.dashboard-kpi-card--money:before{
  background:linear-gradient(90deg,#f97316,#f59e0b);
}
.dashboard-kpi-card--success:before{
  background:linear-gradient(90deg,#16a34a,#22c55e);
}
.dashboard-kpi-card--warning:before{
  background:linear-gradient(90deg,#f59e0b,#f97316);
}
.dashboard-kpi-card--neutral:before{
  background:linear-gradient(90deg,#0f172a,#334155);
}
.dashboard-kpi-label{
  display:block;
  color:#667085;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:10px;
}
.dashboard-kpi-value{
  display:block;
  font-size:clamp(1.55rem, 2.4vw, 2.4rem);
  line-height:1.05;
  letter-spacing:-.05em;
  color:#101828;
  margin-bottom:10px;
}
.dashboard-kpi-caption{
  margin:0;
  color:#5b6677;
  font-size:.93rem;
  line-height:1.52;
  font-weight:650;
}
.dashboard-overview-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(0, .8fr);
  gap:20px;
  align-items:start;
}
.dashboard-panel{
  padding:28px;
}
.dashboard-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.dashboard-section-head h2{
  margin:0;
}
.dashboard-inline-btn{
  white-space:nowrap;
}
.dashboard-status-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}
.dashboard-status-tile{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px;
  border-radius:18px;
  border:1px solid #e6eaf0;
  background:#fbfcfe;
  color:#101828;
  text-decoration:none;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.dashboard-status-tile:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,23,42,.07);
}
.dashboard-status-name{
  font-weight:800;
  color:#263244;
}
.dashboard-status-count{
  font-size:1.45rem;
  line-height:1;
  letter-spacing:-.04em;
  color:#101828;
}
.dashboard-category-list{
  display:grid;
  gap:12px;
}
.dashboard-category-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px;
  border-radius:18px;
  border:1px solid #eceff5;
  background:linear-gradient(135deg,#ffffff,#fff8f8);
  color:#101828;
  text-decoration:none;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.dashboard-category-row:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,23,42,.07);
  border-color:#ffd8db;
}
.dashboard-category-row strong{
  display:block;
  font-size:1rem;
  margin-bottom:4px;
}
.dashboard-category-row p{
  margin:0;
  color:#5b6677;
  font-size:.93rem;
  line-height:1.5;
}
.dashboard-category-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:9px 12px;
  border:1px solid #ffd7da;
  background:#fff;
  color:#b00010;
  font-size:.82rem;
  font-weight:900;
}
.dashboard-list-panel{
  padding:30px;
}
.dashboard-request-list{
  display:grid;
  gap:16px;
}
.dashboard-request-card{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:22px;
  padding:24px 24px 22px;
  border-radius:26px;
  border:1px solid #eceff5;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,249,249,.98));
  box-shadow:0 16px 36px rgba(15,23,42,.05);
}
.dashboard-request-main{
  min-width:0;
}
.dashboard-request-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.dashboard-request-heading{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 12px;
}
.dashboard-request-heading h3{
  margin:0;
  font-size:clamp(1.18rem, 2.2vw, 1.65rem);
  letter-spacing:-.04em;
  color:#111827;
}
.dashboard-case-id{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:8px 11px;
  background:#fff;
  border:1px solid #eceff5;
  color:#667085;
  font-weight:900;
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dashboard-request-subline{
  margin:8px 0 0;
  color:#556070;
  font-size:1rem;
  font-weight:700;
}
.dashboard-request-badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.dashboard-status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #e5e7eb;
  background:#f8fafc;
  color:#344054;
  font-size:.84rem;
  font-weight:900;
}
.dashboard-meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
  margin:16px 0 0;
}
.dashboard-meta-row span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:9px 12px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid #eceff5;
  color:#667085;
  font-size:.82rem;
  font-weight:800;
}
.dashboard-meta-row strong{
  color:#101828;
}
.dashboard-next-step{
  margin:16px 0 0;
  padding:15px 16px;
  border-radius:18px;
  background:#fff7f7;
  border:1px solid #ffd9dc;
  color:#344054;
  line-height:1.6;
  font-weight:650;
}
.dashboard-next-step span{
  display:block;
  margin-bottom:6px;
  color:#b00010;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.76rem;
  font-weight:950;
}
.dashboard-request-side{
  min-width:240px;
  display:grid;
  align-content:center;
  gap:14px;
}
.dashboard-amount-stack{
  padding:18px 18px 16px;
  border-radius:22px;
  border:1px solid #eceff5;
  background:#fff;
}
.dashboard-amount-primary{
  margin:0;
  color:#111827;
  font-size:1.15rem;
  font-weight:900;
}
.dashboard-amount-primary strong{
  color:#0f5fe8;
  font-size:1.55rem;
  letter-spacing:-.04em;
}
.dashboard-amount-secondary{
  margin:10px 0 0;
  color:#667085;
  font-size:.95rem;
  font-weight:700;
}
.dashboard-amount-secondary span{
  color:#111827;
  font-weight:900;
}
.dashboard-open-btn{
  width:100%;
}
.dashboard-empty-state{
  padding:18px;
  border-radius:20px;
  background:#fbfbfd;
  border:1px dashed #d7dde6;
}
.dashboard-empty-state b{
  display:block;
  margin-bottom:6px;
  color:#111827;
}
.dashboard-empty-state p{
  margin:0;
  color:#667085;
  line-height:1.55;
}
.dashboard-tone-success{
  background:#f0fdf4;
  border-color:#bbf7d0;
  color:#166534;
}
.dashboard-tone-warning{
  background:#fff8eb;
  border-color:#f8d7a1;
  color:#9a6700;
}
.dashboard-tone-danger{
  background:#fff1f2;
  border-color:#fecdd3;
  color:#b42318;
}
.dashboard-tone-neutral{
  background:#f8fafc;
  border-color:#e2e8f0;
  color:#334155;
}
@media(max-width:1280px){
  .dashboard-kpi-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}
@media(max-width:980px){
  .dashboard-hero{
    flex-direction:column;
    align-items:flex-start;
    padding:30px 28px;
  }
  .dashboard-hero-actions{
    max-width:none;
    justify-content:flex-start;
  }
  .dashboard-overview-grid{
    grid-template-columns:1fr;
  }
  .dashboard-request-card{
    grid-template-columns:1fr;
  }
  .dashboard-request-side{
    min-width:0;
  }
}
@media(max-width:760px){
  .dashboard-kpi-grid,
  .dashboard-status-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .dashboard-list-panel,
  .dashboard-panel{
    padding:24px 20px;
  }
  .dashboard-section-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .dashboard-request-title-row{
    flex-direction:column;
  }
  .dashboard-request-badges{
    justify-content:flex-start;
  }
}
@media(max-width:560px){
  .dashboard-hero{
    padding:24px 20px;
    border-radius:28px;
  }
  .dashboard-kpi-grid,
  .dashboard-status-grid{
    grid-template-columns:1fr;
  }
  .dashboard-hero-actions{
    width:100%;
  }
  .dashboard-hero-actions .btn,
  .dashboard-inline-btn,
  .dashboard-open-btn{
    width:100%;
  }
  .dashboard-category-row{
    align-items:flex-start;
    flex-direction:column;
  }
  .dashboard-meta-row span{
    width:100%;
    justify-content:space-between;
  }
  .dashboard-request-card{
    padding:20px 18px;
  }
  .dashboard-amount-primary strong{
    display:block;
    margin-top:6px;
  }
}

/* --- V15 professional fit-and-finish fixes --- */
/* Prevent premium headings from looking cramped or merging words */
.application-hero h1,
.hero h1,
.page-heading h1,
h1 {
  letter-spacing: -0.035em !important;
  line-height: 1.04 !important;
  word-spacing: 0.04em;
  text-wrap: balance;
}
.application-hero h1 {
  max-width: 980px;
  font-size: clamp(2.35rem, 4.65vw, 4.25rem) !important;
}
.application-hero p {
  line-height: 1.55 !important;
  max-width: 950px;
}
.application-hero {
  padding: clamp(30px, 4vw, 48px) !important;
}

/* More graceful form grids so long questions do not squeeze or break awkwardly */
.two,
.three {
  display: grid;
  gap: 20px;
  align-items: start;
}
.two { grid-template-columns: repeat(2, minmax(320px, 1fr)); }
.three { grid-template-columns: repeat(3, minmax(220px, 1fr)); }
.form label {
  display: block;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.form label > input,
.form label > select,
.form label > textarea {
  margin-top: 10px;
}
.form select,
.form input,
.form textarea {
  max-width: 100%;
}

/* File upload should look intentional, not browser-default */
.form input[type="file"] {
  padding: 13px 16px;
  background: #FFFFFF;
}
.form input[type="file"]::file-selector-button {
  border: 0;
  border-radius: 12px;
  padding: 10px 14px;
  margin-right: 12px;
  background: #F1F3F7;
  color: #111827;
  font-weight: 850;
  cursor: pointer;
}
.form input[type="file"]::file-selector-button:hover {
  background: #FFECEF;
  color: var(--cci-red-deep, #B0000B);
}

/* Keep section headers polished and consistent */
.form.card > h2 {
  line-height: 1.15 !important;
  padding-right: 90px;
}
.form.card > h2:after {
  right: 38px;
  opacity: .9;
}

/* Better large-screen application width and print friendliness */
.form.card {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}
.application-hero {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}

/* Mobile/tablet: stack before fields become cramped */
@media (max-width: 900px) {
  .two,
  .three {
    grid-template-columns: 1fr !important;
  }
  .application-hero h1 {
    font-size: clamp(2.05rem, 9vw, 3.15rem) !important;
    letter-spacing: -0.028em !important;
  }
  .form.card > h2 {
    padding-right: 64px;
  }
}

/* Very narrow screens */
@media (max-width: 520px) {
  .application-hero h1 {
    font-size: 2rem !important;
  }
  .form.card > *:not(h2) {
    margin-left: 18px !important;
    margin-right: 18px !important;
  }
  .form.card > h2 {
    padding: 18px 54px 18px 20px !important;
  }
}

/* --- V16 applicant tracking portal --- */
.track-hero{
  background:radial-gradient(circle at 95% 10%, rgba(227,6,19,.10), transparent 34%), linear-gradient(135deg,#fff,#fff7f7);
  border-left:6px solid var(--cci-red);
  padding:38px;
}
.track-hero h1{font-size:clamp(2.1rem,4.5vw,4.4rem);letter-spacing:-.055em;margin:8px 0 12px;color:#080D19;max-width:980px;line-height:1.02}
.track-hero .lead{max-width:820px;color:#263244;font-weight:650;line-height:1.55}
.track-card{max-width:900px;margin:0 auto 32px}
.compact-form .grid.two{align-items:end}
.small-note{margin-top:18px;font-size:14px;line-height:1.55}
.track-status-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  padding:36px;border-radius:30px;margin-bottom:24px;color:#fff;
  background:linear-gradient(135deg,#080D19 0%,#121B2D 58%,#3A0A22 100%);
  box-shadow:0 24px 60px rgba(8,13,25,.20);
}
.track-status-hero h1{font-size:clamp(2.3rem,5vw,5rem);letter-spacing:-.06em;margin:8px 0;color:#fff;line-height:1}
.track-status-hero p{color:rgba(255,255,255,.82);font-weight:650}
.track-status-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);border-radius:24px;padding:22px;min-width:280px;backdrop-filter:blur(10px)}
.track-status-card h2{color:#fff;margin:12px 0 8px;font-size:22px}
.track-status-card p{margin:0;color:rgba(255,255,255,.74)}
.progress-card h2{margin-bottom:20px}
.progress-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:18px 0 24px}
.progress-step{position:relative;background:#F6F7FA;border:1px solid #E6EAF1;border-radius:18px;padding:16px 12px;text-align:center;font-weight:800;color:#647084;min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px}
.progress-step.active{background:#FFF3F4;border-color:rgba(227,6,19,.22);color:#0B1220;box-shadow:0 10px 26px rgba(227,6,19,.06)}
.step-dot{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#D9DEE8;color:#fff;font-size:13px;font-weight:900}
.progress-step.active .step-dot{background:var(--cci-red)}
.status-message{border-left:5px solid var(--cci-red);background:#FFF7F7;border-radius:18px;padding:18px 20px}
.status-message h3{margin:0 0 6px;color:#0B1220}
.status-message p{margin:0;color:#263244;font-weight:650;line-height:1.55}
.mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mini-grid div{background:#F7F8FB;border:1px solid #EEF0F4;border-radius:15px;padding:14px 15px;min-width:0}
.mini-grid span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:#6D7789;font-weight:900;margin-bottom:6px}
.mini-grid strong{display:block;color:#0B1220;overflow-wrap:anywhere}
.privacy-note-card{background:linear-gradient(135deg,#fff,#fafbfc)}
.tracking-success-box{margin:24px auto;padding:22px;border-radius:22px;border:1px solid rgba(227,6,19,.18);background:#FFF7F7;max-width:760px;text-align:left}
.tracking-success-box h2{margin-top:0}
.copy-link{font-size:13px;overflow-wrap:anywhere;color:#5D687A;background:#fff;border:1px solid #EEF0F4;border-radius:12px;padding:10px;margin-bottom:0}
@media(max-width:980px){.track-status-hero{display:block}.track-status-card{margin-top:20px}.progress-steps{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.progress-steps{grid-template-columns:1fr}.mini-grid{grid-template-columns:1fr}.track-hero{padding:26px}.track-status-hero{padding:26px}}

/* v20 portal login */
.login-portal-wrap{max-width:1080px;margin:0 auto;padding-top:36px;}
.login-portal-head{text-align:center;margin-bottom:24px;}
.login-portal-head h1{font-size:clamp(42px,6vw,76px);line-height:.95;margin:8px 0 12px;letter-spacing:-.07em;}
.login-portal-head p{max-width:720px;margin-left:auto;margin-right:auto;}
.portal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0;}
.portal-card{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid rgba(16,24,40,.10);border-radius:24px;background:rgba(255,255,255,.88);box-shadow:0 18px 48px rgba(7,10,18,.06);text-decoration:none;color:var(--ink);position:relative;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
.portal-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(227,6,19,.08),rgba(255,255,255,0));opacity:0;transition:opacity .18s ease;}
.portal-card:hover,.portal-card.active{transform:translateY(-2px);border-color:rgba(227,6,19,.35);box-shadow:0 22px 60px rgba(227,6,19,.10);}
.portal-card:hover:before,.portal-card.active:before{opacity:1;}
.portal-card strong{font-size:24px;letter-spacing:-.04em;position:relative;}
.portal-card small{font-size:14px;line-height:1.45;color:var(--muted);position:relative;}
.portal-dot{width:12px;height:12px;background:var(--red);border-radius:50%;box-shadow:0 0 0 7px rgba(227,6,19,.08);position:relative;}
.portal-login-card{max-width:760px;margin:0 auto;}
.login-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px;}
.login-card-heading h2{font-size:clamp(30px,4vw,46px);line-height:1;margin:4px 0 8px;letter-spacing:-.06em;}
.role-badge{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900;color:var(--red);background:rgba(227,6,19,.08);border:1px solid rgba(227,6,19,.16);border-radius:999px;padding:10px 12px;white-space:nowrap;}
.login-help-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;flex-wrap:wrap;}
@media(max-width:900px){.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.login-card-heading{flex-direction:column;}.login-portal-head{text-align:left;}}
@media(max-width:560px){.portal-grid{grid-template-columns:1fr;}.login-portal-wrap{padding-top:14px;}}


/* v21 clean landing and login flow */
.public-topbar .navlinks:empty { display: none; }
.clean-login-wrap { min-height: calc(100vh - 210px); align-items: center; padding: 54px 0; }
.clean-login-card { width: min(100%, 620px); padding: 44px; border-radius: 32px; }
.clean-login-card h1 { font-size: clamp(2.4rem, 5vw, 4.1rem); letter-spacing: -0.06em; margin-bottom: 10px; }
.clean-login-card .muted { font-size: 1.05rem; line-height: 1.55; }
.login-full-btn { width: 100%; justify-content: center; margin-top: 18px; padding: 16px 22px; }
.clean-login-help { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--line); }
.clean-login-help p { margin: 8px 0; }
.hero-premium { margin-top: 42px; }
.hero-actions .btn { min-width: 190px; justify-content: center; }
@media (max-width: 760px) {
  .clean-login-card { padding: 28px; border-radius: 24px; }
  .hero-actions .btn { width: 100%; }
}
.compact-evidence-list{margin:8px 0 0;padding-left:18px;display:grid;gap:6px;font-size:.9rem}.compact-evidence-list a{color:#b00010;font-weight:800;text-decoration:none}.compact-evidence-list a:hover{text-decoration:underline}.evidence-summary-box{border-left:5px solid var(--red,#e30613)}

/* --- V24 refinements: professional wrapping, tracking, reviewer clarity --- */
.wrap-text, .leader-text-block p, .review-report-card p, .report-box p, .mini-dl dd, .info-grid strong, .detail-list dd {
  overflow-wrap: anywhere;
  word-break: normal;
  max-width: 100%;
}
.leader-text-block p { white-space: pre-wrap; }
.verification-card .three { align-items: end; }
.verification-card .three label { display: grid; align-content: end; }
.criteria-guide { border: 1px solid rgba(227,6,19,.14); background: #fff8f8; border-radius: 18px; padding: 16px 18px; }
.criteria-guide h3 { margin-top: 0; }
.criteria-guide ul { margin: 8px 0 0 18px; padding: 0; }
.criteria-guide li { margin: 7px 0; line-height: 1.45; color: #293346; }
.success-panel { border: 1px solid rgba(22,163,74,.22); background: #f0fdf4; border-radius: 18px; padding: 20px; }
.success-panel h3 { margin-top: 0; color: #166534; }
.progress-step.active { background:#ecfdf3; border-color:rgba(22,163,74,.35); color:#0f172a; }
.progress-step.active .step-dot { background:#16a34a; }
.progress-step.active::after { content:'✓'; position:absolute; top:10px; right:12px; color:#16a34a; font-weight:900; }
.progress-step:nth-child(n+1).active + .progress-step:not(.active) { background:#fff7f7; border-color:rgba(227,6,19,.24); }
.assigned-reviewer-row small { color:#166534; }
.review-private-card .tag.success { background:#ecfdf3; color:#166534; border-color:rgba(22,163,74,.25); }
@media(max-width: 1100px){ .verification-card .three{ grid-template-columns:1fr; } }
@media print{
  .report-box, .mini-dl div, .leader-text-block, .score-strip, .finance-action-card div { break-inside: avoid; }
  .report-box p, .mini-dl dd { overflow-wrap:anywhere; }
}
.progress-step.completed{background:#ecfdf3;border-color:rgba(22,163,74,.35);color:#0f172a;box-shadow:0 10px 26px rgba(22,163,74,.06)}
.progress-step.completed .step-dot{background:#16a34a;color:#fff}
.progress-step.completed::after{content:'✓';position:absolute;top:10px;right:12px;color:#16a34a;font-weight:900}
.progress-step.current{background:#fff3f4;border-color:rgba(227,6,19,.24);color:#0B1220;box-shadow:0 10px 26px rgba(227,6,19,.06)}
.progress-step.current .step-dot{background:var(--cci-red)}


/* v25 polish and alignment fixes */
.aligned-fields { align-items: end; }
.aligned-fields > label { display: flex; flex-direction: column; height: 100%; justify-content: flex-end; }
.leader-question-grid { align-items: end; }
.leader-question-grid label { display: flex; flex-direction: column; justify-content: flex-end; min-height: 112px; }
.wrap-text, .leader-text-block p, .request-report, .report-card { overflow-wrap: anywhere; word-break: break-word; }
.reviewer-case-hero h1, .track-status-hero h1, .case-hero h1 { color: #fff; opacity: 1; text-shadow: 0 1px 0 rgba(0,0,0,.2); }
.review-invite-actions { display:flex; gap: 1rem; flex-wrap: wrap; align-items:center; }
.progress-step.completed { background: #ecfdf3 !important; border-color: #80d8a3 !important; color: #116b35 !important; }
.progress-step.completed .step-dot { background: #16a34a !important; color: #fff !important; }
.progress-step.current { background: #fff4f4; border-color: #ffb3b3; }
.applicant-followup-card { border-left: 6px solid #e30613; }
.leader-response-card .leader-text-block p { max-width: 100%; white-space: normal; line-height: 1.45; }
.leader-response-card,
.leader-response-card .leader-response-header,
.leader-response-card .leader-response-header span,
.leader-response-card .leader-response-header strong {
  overflow-wrap: normal;
  word-break: normal;
}
.assigned-reviewer-row small.declined { color:#b00010; }
.assigned-reviewer-row small.accepted { color:#116b35; }
.assigned-reviewer-row small.expired { color:#6b7280; }
@media (max-width: 900px) { .three, .two { grid-template-columns: 1fr !important; } }
@media print { .request-report * { overflow-wrap:anywhere; word-break:break-word; } }

/* --- V29 payment, leader alignment, and secure file viewing fixes --- */
.payment-conditional {
  display: none;
  margin: 18px 0 10px;
  padding: 22px;
  border: 1px solid rgba(227,6,19,.16);
  border-radius: 22px;
  background: linear-gradient(135deg, #fff, #fff8f8);
}
.payment-conditional h3 { margin: 8px 0 4px; }
.zelle-grid { margin-top: 10px; }
.verification-shell { max-width: 1180px !important; }
.verification-shell .verification-card { max-width: 1180px !important; }
.leader-question-grid {
  grid-template-columns: repeat(3, minmax(260px, 1fr)) !important;
  align-items: start !important;
}
.leader-question-grid label {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  min-height: auto !important;
  line-height: 1.22 !important;
}
.leader-question-grid select { margin-top: 10px; }
@media(max-width: 1050px){ .leader-question-grid{ grid-template-columns:1fr !important; } }
.progress-steps { grid-template-columns: repeat(5, 1fr); }
.leader-text-block p, .leader-response-card p, .info-grid strong { overflow-wrap: anywhere; word-break: break-word; }

/* v33 conditional verification flow */
.membership-conditional,
.worker-conditional,
.map-conditional,
.payment-conditional {
  display: none;
}
.verification-subsection {
  margin-top: 24px;
  padding: 22px;
  border: 1px solid rgba(227, 6, 19, .16);
  border-left: 5px solid var(--cci-red, #e30613);
  border-radius: 18px;
  background: #fffafa;
}
.verification-subsection h3 {
  margin-top: 0;
}
.form select {
  min-height: 54px;
  font-weight: 750;
  background-color: #fff;
}


/* v34 automated review support */
.checklist-fieldset { border:1px solid #d8dde8; border-radius:14px; padding:16px 18px; margin:14px 0; }
.checklist-fieldset legend { font-weight:800; padding:0 8px; }
.checklist-fieldset .check { margin:8px 0; }
.system-assessment-panel { border:1px solid #dfe4ee; border-radius:18px; padding:20px; margin:0 0 22px; background:#fbfcfe; }
.system-score-badge { min-width:150px; border-radius:16px; padding:12px 16px; background:#111827; color:#fff; text-align:center; }
.system-score-badge span { display:block; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; opacity:.75; }
.system-score-badge strong { display:block; font-size:1.45rem; margin-top:3px; }
.eligibility-banner { border-left:5px solid #7b8798; padding:13px 16px; border-radius:12px; margin:16px 0; background:#f6f7f9; }
.eligibility-banner.success { border-left-color:#18864b; background:#eef9f2; }
.eligibility-banner.warning { border-left-color:#b7791f; background:#fff8e7; }
.eligibility-banner.danger { border-left-color:#d51e2b; background:#fff0f1; }
.eligibility-banner ul,.policy-flags ul { margin:8px 0 0 20px; }
.system-rating-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:16px 0; }
.system-rating-card { border:1px solid #e2e6ee; border-radius:14px; padding:14px; background:#fff; }
.system-rating-card > div { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.system-rating-card span { font-size:.78rem; font-weight:800; color:#667085; text-transform:uppercase; letter-spacing:.04em; }
.system-rating-card strong { font-size:1.15rem; }
.system-rating-card p { margin:8px 0 0; color:#475467; line-height:1.45; }
.financial-gap-strip { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; margin:16px 0; }
.financial-gap-strip > div { padding:11px; border-radius:12px; background:#f1f4f8; }
.financial-gap-strip span { display:block; font-size:.7rem; color:#667085; text-transform:uppercase; font-weight:800; }
.financial-gap-strip strong { display:block; margin-top:4px; }
.policy-flags { border-radius:12px; padding:13px 16px; margin:12px 0; }
.policy-flags.warning { background:#fff8e7; border:1px solid #f1d18b; }
.policy-flags.danger { background:#fff0f1; border:1px solid #f0b2b7; }
@media (max-width: 800px) { .system-rating-grid { grid-template-columns:1fr; } .financial-gap-strip { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* v36 secure reviewer directory / link workflow */
.table-wrap { overflow-x: auto; width: 100%; }
.inline-actions { display: flex; gap: 8px; flex-wrap: wrap; margin: 6px 0 14px; }
.assigned-reviewer-row + .inline-actions { padding-left: 2px; }

/* v36 dashboard simplification */
.dashboard-shell {
  display: grid;
  gap: 18px;
}
.dashboard-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding: 24px 28px;
}
.dashboard-header h1 {
  margin: 4px 0 8px;
  font-size: clamp(2rem, 3vw, 2.8rem);
}
.dashboard-header .muted {
  margin: 0;
}
.dashboard-header-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}
.dashboard-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.dashboard-kpi-card {
  padding: 18px;
  border-radius: 18px;
  border: 1px solid #e8ebf1;
  background: #fff;
  box-shadow: 0 8px 24px rgba(7, 10, 18, .04);
}
.dashboard-kpi-card::before {
  display: none;
}
.dashboard-kpi-card--money {
  border-top: 4px solid #f59e0b;
}
.dashboard-kpi-card--success {
  border-top: 4px solid #22c55e;
}
.dashboard-kpi-card--warning {
  border-top: 4px solid #f59e0b;
}
.dashboard-kpi-card--neutral {
  border-top: 4px solid #cbd5e1;
}
.dashboard-kpi-label {
  display: block;
  margin-bottom: 8px;
  color: #667085;
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.dashboard-kpi-value {
  display: block;
  margin-bottom: 6px;
  color: #101828;
  font-size: clamp(1.45rem, 2vw, 2.1rem);
  line-height: 1.08;
  letter-spacing: -.05em;
}
.dashboard-kpi-caption {
  margin: 0;
  color: #667085;
  font-size: .9rem;
  line-height: 1.45;
  font-weight: 700;
}
.dashboard-overview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.dashboard-panel,
.dashboard-list-panel {
  padding: 24px;
}
.dashboard-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.dashboard-section-head h2 {
  margin: 0 0 6px;
}
.dashboard-inline-btn {
  white-space: nowrap;
}
.dashboard-simple-list,
.dashboard-request-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.dashboard-simple-list {
  display: grid;
  gap: 10px;
}
.dashboard-list-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid #e6eaf0;
  background: #fff;
  color: #101828;
  text-decoration: none;
  transition: border-color .16s ease, box-shadow .16s ease;
}
.dashboard-list-link:hover {
  border-color: #d7dee8;
  box-shadow: 0 10px 20px rgba(15, 23, 42, .05);
}
.dashboard-list-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
}
.dashboard-list-copy strong {
  color: #1f2937;
  font-size: 1rem;
}
.dashboard-list-copy small {
  color: #667085;
  font-size: .92rem;
}
.dashboard-list-count {
  font-size: 1.2rem;
  line-height: 1;
  color: #101828;
}
.dashboard-list-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 68px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid #ffd0d5;
  color: #b00010;
  font-size: .82rem;
  font-weight: 900;
}
.dashboard-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  padding: 7px 11px;
  border-radius: 999px;
  border: 1px solid #e5e7eb;
  background: #f8fafc;
  color: #344054;
  font-size: .82rem;
  font-weight: 900;
}
.dashboard-activity-table {
  display: grid;
  gap: 10px;
}
.dashboard-activity-head,
.dashboard-activity-row {
  display: grid;
  grid-template-columns: 1.1fr 1.2fr 1.15fr .9fr 1fr auto;
  gap: 16px;
  align-items: center;
}
.dashboard-activity-head {
  padding: 0 4px;
  color: #667085;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.dashboard-activity-row {
  padding: 18px 16px;
  border: 1px solid #e7ebf2;
  border-radius: 18px;
  background: #fff;
}
.dashboard-activity-col {
  min-width: 0;
}
.dashboard-activity-col strong {
  display: block;
  color: #111827;
  font-size: .98rem;
  line-height: 1.35;
}
.dashboard-activity-col small {
  display: block;
  margin-top: 4px;
  color: #667085;
  font-size: .86rem;
  line-height: 1.45;
}
.dashboard-activity-case {
  font-size: .9rem !important;
  color: #475467 !important;
}
.dashboard-activity-status-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.dashboard-activity-label {
  display: none;
  margin-bottom: 6px;
  color: #667085;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.dashboard-row-open-btn {
  white-space: nowrap;
}
.dashboard-empty-state {
  padding: 18px;
  border-radius: 18px;
  background: #fbfbfd;
  border: 1px dashed #d7dde6;
}
.dashboard-empty-state b {
  display: block;
  margin-bottom: 6px;
  color: #111827;
}
.dashboard-empty-state p {
  margin: 0;
  color: #667085;
  line-height: 1.55;
}
@media (max-width: 980px) {
  .dashboard-header {
    flex-direction: column;
    align-items: flex-start;
  }
  .dashboard-header-actions {
    justify-content: flex-start;
  }
  .dashboard-overview-grid {
    grid-template-columns: 1fr;
  }
  .dashboard-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dashboard-activity-head {
    display: none;
  }
  .dashboard-activity-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dashboard-activity-col--name,
  .dashboard-activity-col--action {
    grid-column: 1 / -1;
  }
}
@media (max-width: 640px) {
  .dashboard-header,
  .dashboard-panel,
  .dashboard-list-panel {
    padding: 20px;
  }
  .dashboard-section-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .dashboard-header-actions,
  .dashboard-header-actions .btn,
  .dashboard-inline-btn,
  .dashboard-row-open-btn {
    width: 100%;
  }
  .dashboard-list-link {
    align-items: flex-start;
  }
  .dashboard-activity-row {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .dashboard-activity-col--name,
  .dashboard-activity-col--action {
    grid-column: auto;
  }
  .dashboard-activity-label {
    display: block;
  }
}

/* Admin follow-up closure record */
.followup-closure-card {
  overflow: hidden;
  border-top: 6px solid var(--cci-red, #e30613);
}
.followup-title-row {
  align-items: center;
  padding-bottom: 18px;
  border-bottom: 1px solid #eaecf0;
}
.followup-complete-panel {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin: 20px 0 24px;
  padding: 22px 24px;
  background: linear-gradient(135deg, #effcf4, #f8fffb);
}
.followup-complete-panel h3 { margin: 0 0 6px; }
.followup-complete-panel p { margin: 0; color: #255b3b; line-height: 1.55; }
.followup-complete-icon {
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #16834b;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 950;
  box-shadow: 0 8px 20px rgba(22,131,75,.2);
}
.followup-complete-meta {
  margin-top: 8px !important;
  color: #39704e !important;
  font-size: .9rem;
  font-weight: 800;
}
.followup-record-grid,
.followup-review-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.followup-record-card {
  min-width: 0;
  padding: 22px;
  border: 1px solid #e5e9ef;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(15,23,42,.045);
}
.followup-admin-card { background: linear-gradient(155deg, #fff, #fff9f9); }
.followup-record-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.followup-record-heading h3 { margin: 2px 0 0; color: #101828; }
.followup-step {
  display: grid;
  place-items: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff1f2;
  border: 1px solid #ffd2d6;
  color: #b00010;
  font-weight: 950;
}
.followup-record-kicker {
  margin: 0;
  color: #7b8494;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.followup-record-date {
  margin: 0 0 16px;
  color: #667085;
  font-size: .9rem;
  font-weight: 700;
}
.followup-answer-list {
  display: grid;
  gap: 9px;
  margin: 0 0 16px;
}
.followup-answer-list div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 12px 14px;
  border-radius: 14px;
  background: #f7f8fa;
  border: 1px solid #edf0f3;
}
.followup-answer-list dt { color: #596579; font-size: .88rem; font-weight: 750; }
.followup-answer-list dd { margin: 0; color: #101828; font-weight: 900; text-align: right; }
.followup-answer-list dd.followup-answer-attention { color: #b54708; }
.followup-note-block {
  padding: 15px 16px;
  border-left: 4px solid var(--cci-red, #e30613);
  border-radius: 14px;
  background: #fff7f7;
}
.followup-note-block span {
  display: block;
  margin-bottom: 5px;
  color: #7a3540;
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.followup-note-block p { margin: 0; color: #263244; line-height: 1.55; overflow-wrap: anywhere; }
.followup-evidence-link { margin-top: 16px; }
.followup-missing-evidence { margin: 14px 0 0; color: #667085; font-size: .9rem; font-weight: 650; }
.followup-attention-note {
  margin-top: 14px;
  padding: 13px 14px;
  border: 1px solid #fed7aa;
  border-radius: 14px;
  background: #fff7ed;
  color: #9a4c08;
  line-height: 1.5;
}
.followup-empty-state { margin-top: 16px; }
.followup-action-form { margin-top: 18px; }
.followup-close-form { margin-top: 18px; }
.followup-close-form .btn { margin-top: 4px; }

@media (max-width: 820px) {
  .followup-record-grid,
  .followup-review-layout { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .followup-complete-panel { padding: 18px; }
  .followup-record-card { padding: 18px; }
  .followup-answer-list div { align-items: flex-start; flex-direction: column; gap: 5px; }
  .followup-answer-list dd { text-align: left; }
  .followup-evidence-link { width: 100%; justify-content: center; text-align: center; }
}
@media (max-width: 520px) {
  .dashboard-kpi-grid {
    grid-template-columns: 1fr;
  }
  .dashboard-list-link {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* v36 request queue refinements */
.requests-page {
  display: grid;
  gap: 16px;
}
.requests-page .alert {
  margin: 0;
  padding: 12px 16px;
  font-size: .9rem;
}
.requests-page-top {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
}
.requests-page .eyebrow {
  margin-bottom: 6px;
  font-size: .78rem;
  letter-spacing: .16em;
}
.requests-page-heading {
  margin-bottom: 0;
}
.requests-page-heading.page-heading h1 {
  margin: 0;
  max-width: 620px;
  font-size: clamp(1.9rem, 2.5vw, 2.65rem);
  line-height: 1;
  letter-spacing: -.05em;
}
.requests-page-heading .section-title {
  gap: 9px;
}
.requests-page-heading .section-title:before {
  width: 5px;
  height: 20px;
}
.requests-page-subtitle {
  margin: 10px 0 0;
  max-width: 640px;
  font-size: .97rem;
  line-height: 1.45;
}
.requests-count-chip {
  display: grid;
  gap: 2px;
  min-width: 116px;
  padding: 14px 16px;
  border: 1px solid #e8ebf0;
  border-radius: 18px;
  background: #fff;
  text-align: right;
}
.requests-count-chip strong {
  color: #101828;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: -.04em;
}
.requests-count-chip span {
  color: #667085;
  font-size: .84rem;
  font-weight: 800;
}
.requests-filter-card,
.request-row-card,
.requests-empty-state {
  padding: 20px 22px;
}
.requests-filters {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
}
.requests-filters label {
  display: grid;
  gap: 6px;
  margin: 0;
  color: #344054;
  font-size: .88rem;
  font-weight: 850;
}
.requests-filters select {
  min-height: 46px;
  padding: 10px 13px;
  border-radius: 14px;
  font-size: .95rem;
}
.requests-filters .btn {
  min-height: 46px;
  padding: 0 16px;
  box-shadow: none;
}
.requests-list {
  display: grid;
  gap: 14px;
}
.request-row-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
  gap: 20px;
  align-items: start;
}
.request-row-card-link {
  color: inherit;
  text-decoration: none;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.request-row-card-link:hover {
  border-color: #dbe2eb;
  box-shadow: 0 16px 38px rgba(15, 23, 42, .06);
  transform: translateY(-1px);
}
.request-row-card-link:focus-visible {
  outline: none;
  border-color: rgba(224, 18, 31, .28);
  box-shadow: 0 0 0 4px rgba(224, 18, 31, .08), 0 16px 38px rgba(15, 23, 42, .06);
}
.request-row-card-link:hover .request-open-btn,
.request-row-card-link:focus-visible .request-open-btn {
  background: #fff7f7;
  border-color: #ffd0d5;
}
.request-row-main {
  min-width: 0;
}
.request-row-heading {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 12px;
}
.request-row-case {
  margin: 0 0 6px;
  color: #667085;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.request-row-heading h2 {
  margin: 0;
  color: #111827;
  font-size: 1.18rem;
  line-height: 1.15;
  letter-spacing: -.03em;
}
.request-row-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.request-row-meta span {
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border-radius: 14px;
  background: #fbfcfe;
  border: 1px solid #edf0f4;
  color: #101828;
  font-size: .9rem;
  font-weight: 750;
}
.request-row-meta strong {
  color: #667085;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.request-row-side {
  display: grid;
  justify-items: end;
  align-content: start;
  gap: 14px;
  min-width: 0;
}
.request-row-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  justify-self: end;
}
.request-status-pill,
.request-row-badges .tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 7px 12px;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}
.request-status-pill {
  border: 1px solid #e4e7ec;
  background: #f8fafc;
  color: #344054;
}
.request-status-pill--category {
  background: #f8fafc;
  border-color: #e4e7ec;
  color: #344054;
}
.request-row-badges .tag {
  font-size: .78rem;
}
.request-row-action-strip {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
}
.request-row-amount {
  display: grid;
  gap: 4px;
  text-align: right;
  width: fit-content;
}
.request-row-amount small {
  color: #667085;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.request-row-amount strong {
  color: #101828;
  font-size: 1.3rem;
  letter-spacing: -.04em;
}
.request-open-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  color: #b00010;
  font-size: .9rem;
  flex-shrink: 0;
}
.requests-empty-state strong {
  display: block;
  margin-bottom: 6px;
  color: #111827;
}
.requests-empty-state p {
  margin: 0;
  color: #667085;
  line-height: 1.5;
}
@media (max-width: 900px) {
  .requests-page-top {
    flex-direction: column;
    align-items: flex-start;
  }
  .requests-count-chip {
    text-align: left;
  }
  .requests-filters {
    grid-template-columns: 1fr;
  }
  .requests-filters .btn {
    width: 100%;
  }
  .request-row-card {
    grid-template-columns: 1fr;
  }
  .request-row-side {
    justify-items: flex-start;
    min-width: 0;
  }
  .request-row-badges {
    justify-content: flex-start;
    justify-self: start;
  }
  .request-row-action-strip {
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .request-row-amount {
    text-align: left;
  }
  .request-open-btn {
    justify-self: start;
  }
}
@media (max-width: 760px) {
  .requests-page {
    gap: 14px;
  }
  .requests-page-heading.page-heading h1 {
    max-width: none;
    font-size: clamp(1.6rem, 7vw, 2.1rem);
  }
  .requests-page-subtitle {
    font-size: .92rem;
  }
  .requests-filter-card,
  .request-row-card,
  .requests-empty-state {
    padding: 20px;
  }
  .request-row-heading {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .request-row-heading h2 {
    font-size: 1.06rem;
  }
  .request-row-meta {
    grid-template-columns: 1fr;
  }
  .request-row-action-strip {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* v36 request detail layout refinements */
.request-detail-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
}
.request-detail-columns--single {
  grid-template-columns: minmax(0, 1fr);
}
.request-detail-column {
  display: grid;
  gap: 24px;
  align-content: start;
  min-width: 0;
}
.request-detail-documents-panel,
.review-assessments-card {
  align-self: start;
}
.review-assessments-card .section-title-row {
  align-items: center;
}
.section-title-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}
.section-title-actions .btn {
  white-space: nowrap;
}
.request-detail-documents-panel .doc-list li {
  align-items: flex-start;
}
.request-detail-documents-panel .doc-list a,
.request-detail-documents-panel .doc-list span {
  min-width: 0;
}
@media (max-width: 980px) {
  .request-detail-columns {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .review-assessments-card .section-title-row {
    align-items: flex-start;
  }
  .section-title-actions {
    width: 100%;
    justify-content: flex-start;
  }
}

/* v36 admin directory pages */
.admin-directory-shell {
  display: grid;
  gap: 20px;
}
.admin-directory-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 0;
}
.admin-directory-heading h1 {
  margin-bottom: 8px;
  font-size: clamp(2.2rem, 4.2vw, 3.4rem);
}
.admin-directory-heading .muted {
  max-width: 760px;
  line-height: 1.6;
}
.admin-directory-summary {
  min-width: 154px;
  padding: 22px 24px;
  border-radius: 24px;
  border: 1px solid #e8ebf0;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 55px rgba(9,13,24,.06);
  text-align: right;
}
.admin-directory-summary strong {
  display: block;
  font-size: 3rem;
  line-height: 1;
  letter-spacing: -0.05em;
}
.admin-directory-summary span {
  display: block;
  margin-top: 8px;
  color: #667085;
  font-size: .96rem;
  font-weight: 750;
}
.admin-directory-grid {
  display: grid;
  grid-template-columns: minmax(320px, 380px) minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}
.admin-directory-panel {
  display: grid;
  gap: 18px;
}
.admin-directory-panel-copy h2 {
  margin: 0 0 6px;
}
.admin-directory-panel-copy p {
  margin: 0;
}
.directory-list {
  display: grid;
  gap: 14px;
}
.directory-list-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: 20px 22px;
  border-radius: 22px;
  border: 1px solid #e8ebf1;
  background: linear-gradient(135deg, #ffffff 0%, #fbfcff 100%);
}
.directory-list-item--compact {
  align-items: start;
}
.directory-list-main {
  min-width: 0;
}
.directory-list-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.directory-list-identity {
  min-width: 0;
}
.directory-list-identity h3 {
  margin: 0;
  font-size: 1.45rem;
  line-height: 1.15;
  letter-spacing: -0.03em;
}
.directory-list-identity p {
  margin: 8px 0 0;
  color: #667085;
  font-weight: 650;
  overflow-wrap: anywhere;
}
.directory-inline-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.directory-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid #dde3ee;
  background: #f8fafc;
  color: #344054;
  font-size: .95rem;
  font-weight: 850;
  white-space: nowrap;
}
.directory-pill--success {
  background: #effcf3;
  border-color: #b7e7c8;
  color: #087443;
}
.directory-pill--muted {
  background: #f4f6fa;
  border-color: #e4e8ef;
  color: #667085;
}
.directory-pill--role-admin {
  background: #fff4f4;
  border-color: #ffd5d8;
  color: #b42318;
}
.directory-pill--role-applicant {
  background: #f5f7ff;
  border-color: #dfe5ff;
  color: #3448c5;
}
.directory-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}
.directory-metrics > div {
  padding: 13px 14px;
  border-radius: 16px;
  border: 1px solid #edf0f4;
  background: #f7f8fb;
}
.directory-metrics span {
  display: block;
  color: #667085;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.directory-metrics strong {
  display: block;
  margin-top: 6px;
  font-size: 1.2rem;
  line-height: 1.1;
  letter-spacing: -0.03em;
}
.directory-list-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.directory-list-actions form {
  margin: 0;
}
.directory-action-btn {
  min-width: 136px;
  justify-content: center;
}
.btn-danger-soft {
  color: #B42318;
  border-color: #FDA29B;
  background: #FFF1F0;
}
.btn-danger-soft:hover {
  color: #8F1118;
  border-color: #F97066;
  background: #FFE4E2;
}

@media (max-width: 980px) {
  .admin-directory-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .admin-directory-summary {
    min-width: 0;
    width: 100%;
    text-align: left;
  }
  .admin-directory-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  .directory-list-item {
    grid-template-columns: 1fr;
  }
  .directory-metrics {
    grid-template-columns: 1fr;
  }
  .directory-list-actions {
    justify-content: flex-start;
  }
  .directory-action-btn {
    width: 100%;
  }
}

/* v36 reports page */
.reports-shell {
  display: grid;
  gap: 20px;
}
.reports-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
}
.reports-header-copy h1 {
  margin: 0 0 8px;
  font-size: clamp(2.3rem, 4.5vw, 3.8rem);
  letter-spacing: -0.06em;
}
.reports-header-copy .muted {
  max-width: 760px;
  line-height: 1.6;
}
.reports-header-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}
.reports-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.reports-kpi-card {
  padding: 18px;
  border-radius: 18px;
  border: 1px solid #e8ebf1;
  background: #fff;
}
.reports-kpi-card--money {
  border-color: #ffe3b8;
  background: linear-gradient(135deg, #fff9ed 0%, #ffffff 100%);
}
.reports-kpi-card--success {
  border-color: #ccebd7;
  background: linear-gradient(135deg, #f1fcf5 0%, #ffffff 100%);
}
.reports-kpi-card--warning {
  border-color: #ffe0b6;
  background: linear-gradient(135deg, #fff9ef 0%, #ffffff 100%);
}
.reports-kpi-label {
  display: block;
  color: #667085;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.reports-kpi-value {
  display: block;
  margin-top: 12px;
  font-size: clamp(1.9rem, 3vw, 2.6rem);
  line-height: 1;
  letter-spacing: -0.05em;
}
.reports-kpi-caption {
  margin: 8px 0 0;
  color: #667085;
  font-weight: 650;
}
.reports-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 20px;
  align-items: start;
}
.reports-panel {
  display: grid;
  gap: 18px;
}
.reports-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.reports-section-head h2 {
  margin: 0 0 4px;
}
.reports-section-head p {
  margin: 0;
}
.reports-chip {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid #e4e8ef;
  background: #f8fafc;
  color: #475467;
  font-size: .92rem;
  font-weight: 800;
}
.reports-table {
  display: grid;
  gap: 10px;
}
.reports-table-head,
.reports-table-row {
  display: grid;
  gap: 14px;
  align-items: center;
}
.reports-table-head--category,
.reports-table-row--category {
  grid-template-columns: minmax(0, 1.8fr) 100px 140px 140px;
}
.reports-table-head {
  padding: 0 12px;
  color: #667085;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.reports-table-row {
  padding: 16px 18px;
  border-radius: 18px;
  border: 1px solid #e8ebf1;
  background: linear-gradient(135deg, #ffffff 0%, #fbfcff 100%);
  color: #111827;
  text-decoration: none;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.reports-table-row:hover {
  transform: translateY(-1px);
  border-color: #d8dee9;
  box-shadow: 0 18px 40px rgba(9,13,24,.06);
}
.reports-table-primary {
  min-width: 0;
}
.reports-table-primary strong {
  display: block;
  overflow-wrap: anywhere;
}
.reports-status-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}
.reports-status-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid #e8ebf1;
  background: linear-gradient(135deg, #ffffff 0%, #fbfcff 100%);
  color: #111827;
  text-decoration: none;
}
.reports-status-link strong {
  font-size: 1.08rem;
  line-height: 1;
}
.reports-month-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.reports-month-card {
  padding: 18px;
  border-radius: 18px;
  border: 1px solid #e8ebf1;
  background: linear-gradient(135deg, #ffffff 0%, #fbfcff 100%);
}
.reports-month-label {
  display: block;
  color: #667085;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.reports-month-value {
  display: block;
  margin-top: 12px;
  font-size: 1.9rem;
  line-height: 1;
  letter-spacing: -0.04em;
}
.reports-month-card p {
  margin: 10px 0 0;
  color: #667085;
  line-height: 1.55;
}

@media (max-width: 980px) {
  .reports-header {
    align-items: flex-start;
    flex-direction: column;
  }
  .reports-header-actions {
    justify-content: flex-start;
  }
  .reports-kpi-grid,
  .reports-month-grid,
  .reports-overview-grid {
    grid-template-columns: 1fr 1fr;
  }
  .reports-overview-grid {
    align-items: stretch;
  }
}
@media (max-width: 760px) {
  .reports-kpi-grid,
  .reports-month-grid,
  .reports-overview-grid {
    grid-template-columns: 1fr;
  }
  .reports-table-head {
    display: none;
  }
  .reports-table-row--category {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .reports-table-row {
    padding: 18px;
  }
  .reports-status-link {
    align-items: flex-start;
    flex-direction: column;
  }
  .reports-header-copy h1 {
    font-size: clamp(1.9rem, 8vw, 2.6rem);
  }
}

/* v36 global mobile shell */
.mobile-nav-toggle {
  display: none;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 16px;
  border: 1px solid #e1e5ec;
  border-radius: 999px;
  background: #fff;
  color: #151a27;
  font: inherit;
  font-weight: 850;
  cursor: pointer;
  outline: none;
  box-shadow: 0 10px 24px rgba(9,13,24,.06);
  -webkit-tap-highlight-color: transparent;
}
.mobile-nav-toggle:focus {
  outline: none;
}
.mobile-nav-toggle:focus-visible {
  border-color: rgba(227, 6, 19, .34);
  box-shadow:
    0 0 0 4px rgba(227, 6, 19, .12),
    0 10px 24px rgba(9,13,24,.06);
}
.mobile-nav-toggle-label {
  line-height: 1;
}
.mobile-nav-toggle-bars {
  display: grid;
  gap: 4px;
}
.mobile-nav-toggle-bars span {
  display: block;
  width: 16px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transition: transform .18s ease, opacity .18s ease;
}

@media (max-width: 920px) {
  body.js-ready {
    overflow-x: hidden;
  }
  body.mobile-nav-open {
    overflow: hidden;
  }
  body.mobile-nav-open::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 34;
    background: rgba(9, 13, 24, .16);
    backdrop-filter: blur(3px);
  }
  .topbar {
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    z-index: 50;
  }
  .brand {
    min-width: 0;
    flex: 1;
    gap: 12px;
  }
  .brand-logo {
    width: 92px;
    height: 42px;
  }
  .brand-text {
    display: block !important;
    border-left: 0;
    padding-left: 0;
  }
  .brand strong {
    font-size: 16px;
  }
  .brand small {
    font-size: 10px;
    margin-top: 4px;
  }
  .mobile-nav-toggle {
    display: inline-flex;
    margin-left: auto;
    flex-shrink: 0;
  }
  body.js-ready .topbar .navlinks {
    display: none;
    position: fixed;
    top: 82px;
    right: 14px;
    left: auto;
    width: min(280px, calc(100vw - 28px));
    max-height: calc(100vh - 96px);
    overflow-y: auto;
    z-index: 45;
    padding: 12px;
    border: 1px solid #e7eaf0;
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 26px 56px rgba(7,10,18,.18);
  }
  body.js-ready .topbar.nav-open .navlinks {
    display: grid;
    gap: 8px;
  }
  .navlinks a,
  .navlinks .btn,
  .navlinks .secure-pill {
    width: 100%;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 12px 14px;
    border-radius: 18px;
    font-size: 1rem;
  }
  .navlinks a:not(.btn) {
    border: 1px solid #edf0f4;
    background: #fff;
  }
  .navlinks a.btn,
  .navlinks form.inline .btn {
    min-height: 52px;
    border-radius: 16px;
    box-shadow: none;
  }
  .navlinks a.btn-soft,
  .navlinks form.inline .btn-soft {
    border: 1px solid #e1e5ec;
    background: #fff;
    color: #151a27 !important;
  }
  .navlinks a.btn-soft {
    justify-content: flex-start;
  }
  .navlinks form.inline {
    display: block;
    width: 100%;
  }
  .navlinks form.inline .btn {
    width: 100%;
    justify-content: center;
  }
  .topbar.nav-open .mobile-nav-toggle-bars span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
  }
  .topbar.nav-open .mobile-nav-toggle-bars span:nth-child(2) {
    opacity: 0;
  }
  .topbar.nav-open .mobile-nav-toggle-bars span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
  }
  .container {
    padding: 22px 14px 52px;
  }
  .page-heading h1,
  h1.section-title,
  .section-title {
    font-size: clamp(1.9rem, 8vw, 2.7rem);
  }
  .card,
  .panel-card,
  .table-card,
  .feature-card {
    padding: 22px 20px;
    border-radius: 22px;
  }
}

@media (max-width: 640px) {
  .hero-premium,
  .application-hero,
  .case-hero,
  .dashboard-header,
  .reports-header {
    padding: 22px 20px;
    border-radius: 24px;
  }
  .hero h1,
  .application-hero h1,
  .case-hero h1,
  .dashboard-header h1 {
    font-size: clamp(2rem, 11vw, 3rem);
  }
  .hero-actions,
  .dashboard-header-actions,
  .reports-header-actions,
  .section-title-actions {
    width: 100%;
  }
  .hero-actions .btn,
  .dashboard-header-actions .btn,
  .reports-header-actions .btn,
  .section-title-actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* v37 restrained system polish */
:root {
  --ink: #111827;
  --charcoal: #1f2937;
  --muted: #667085;
  --line: #e4e7ec;
  --bg: #f6f7f9;
  --surface: #ffffff;
  --shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 8px 24px rgba(16, 24, 40, .04);
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, .04);
}

body {
  background: var(--bg);
  color: var(--ink);
  font-size: 15px;
  line-height: 1.55;
}

a,
button,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}

:where(a, button, input, select, textarea):focus-visible {
  outline: 3px solid rgba(227, 6, 19, .18) !important;
  outline-offset: 2px;
}

.topbar {
  min-height: 68px;
  padding: 10px 28px;
  background: #fff;
  border-bottom: 1px solid var(--line);
  box-shadow: none;
  backdrop-filter: none;
}

.brand {
  gap: 12px;
  min-width: 210px;
}

.brand-logo {
  width: 108px;
  height: 44px;
  padding: 0;
  border-radius: 0;
}

.brand-text {
  padding-left: 12px;
}

.brand strong {
  font-size: 16px;
  font-weight: 750;
}

.brand small {
  margin-top: 3px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: none;
}

.navlinks {
  gap: 4px;
}

.navlinks a {
  padding: 9px 11px;
  border-radius: 8px;
  color: #344054;
  font-weight: 650;
}

.navlinks a:hover {
  background: #f8f9fb;
  border-color: transparent;
  color: var(--cci-red-deep);
}

.container {
  max-width: 1180px;
  padding: 32px 24px 64px;
}

h1,
.page-heading h1 {
  color: #101828;
  font-size: clamp(2rem, 3.2vw, 2.8rem);
  font-weight: 760;
  letter-spacing: -.03em !important;
  line-height: 1.08 !important;
  word-spacing: 0;
}

h2 {
  color: #182230;
  font-size: clamp(1.25rem, 2vw, 1.55rem);
  line-height: 1.25;
  font-weight: 720;
  letter-spacing: -.02em;
}

h3 {
  color: #273142;
  font-size: 1.02rem;
  line-height: 1.35;
  font-weight: 700;
}

.page-heading {
  margin-bottom: 22px;
}

.eyebrow,
.eyebrow.dark,
.eyebrow.red {
  gap: 7px;
  margin-bottom: 7px;
  color: #7f1d26;
  font-size: .73rem;
  font-weight: 750;
  letter-spacing: .07em;
  text-transform: none;
}

.eyebrow::before {
  width: 6px;
  height: 6px;
  box-shadow: none;
}

.muted {
  color: var(--muted);
}

.card,
.panel-card,
.table-card,
.feature-card,
.glass-card {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--surface);
  box-shadow: var(--shadow-sm);
}

.card,
.feature-card {
  padding: 24px;
}

.btn,
.btn-small,
.request-open-btn,
.directory-pill,
.reports-chip {
  min-height: 44px;
  padding: 10px 15px;
  border-radius: 9px;
  font-size: .92rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  box-shadow: none;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

button.small:not(.btn) {
  min-height: 40px;
  padding: 8px 11px;
  border: 1px solid #d8dde6;
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font: inherit;
  font-size: .86rem;
  font-weight: 650;
  cursor: pointer;
}

.btn,
.btn-primary {
  background: var(--cci-red);
  color: #fff !important;
}

.btn:hover,
.btn-primary:hover {
  transform: none;
  background: var(--cci-red-deep);
}

.btn-soft,
.btn-ghost {
  background: #fff;
  border: 1px solid #d8dde6;
  color: #344054 !important;
}

.btn-soft:hover,
.btn-ghost:hover {
  background: #f8f9fb;
  border-color: #cbd2dc;
  color: #182230 !important;
}

.tag,
.pill,
.status-pill,
.mini-badge,
.request-status-pill,
.dashboard-status-pill {
  min-width: 0;
  min-height: 28px;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: .76rem;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: 0;
}

.section-title {
  gap: 9px;
}

.section-title::before {
  width: 3px;
  height: 20px;
  border-radius: 2px;
}

.hero-premium {
  grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr);
  gap: 28px;
  margin-top: 28px;
  padding: 40px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--shadow);
}

.hero-premium::before,
.hero-premium::after,
.application-hero::before,
.application-hero::after,
.dashboard-hero::before,
.dashboard-hero::after {
  display: none;
}

.hero h1 {
  max-width: 720px;
  margin: 5px 0 14px;
  font-size: clamp(2.35rem, 4.2vw, 3.35rem);
  line-height: 1.04 !important;
}

.lead {
  max-width: 720px;
  color: #475467;
  font-size: 1.08rem;
  line-height: 1.6;
  font-weight: 450;
}

.hero-actions {
  margin-top: 24px;
}

.panel-stat {
  padding: 16px 17px;
  border-radius: 12px;
  background: #fafbfc;
  box-shadow: none;
}

.panel-stat::before {
  width: 3px;
}

.panel-stat span {
  color: #667085;
  font-size: .76rem;
  font-weight: 650;
  letter-spacing: .02em;
  text-transform: none;
}

.panel-stat strong {
  margin-top: 3px;
  font-size: 1.05rem;
  font-weight: 700;
}

.application-hero,
.track-hero {
  padding: 30px 32px !important;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--shadow-sm);
}

.application-hero h1 {
  max-width: 900px;
  margin-bottom: 10px;
  font-size: clamp(2rem, 3.8vw, 3rem) !important;
  letter-spacing: -.03em !important;
}

.application-hero p {
  color: #475467 !important;
  font-size: 1rem;
  font-weight: 500 !important;
  line-height: 1.6 !important;
}

.form.card {
  border: 1px solid var(--line);
  border-top: 3px solid var(--cci-red);
  border-radius: 16px;
  box-shadow: var(--shadow-sm);
}

.form.card > *:not(h2) {
  margin-left: 28px;
  margin-right: 28px;
}

.form.card > h2 {
  margin: 0 0 24px;
  padding: 18px 28px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #fafbfc;
  font-size: 1.28rem;
  letter-spacing: -.02em;
}

.form.card > h2:first-child {
  border-top: 0;
}

.form.card > h2::before {
  width: 3px;
}

.form.card > h2::after {
  display: none;
}

.form label,
label {
  color: #344054;
  font-weight: 650;
}

input,
select,
textarea,
.form input,
.form select,
.form textarea {
  min-height: 46px;
  padding: 11px 13px;
  border: 1px solid #cfd5df;
  border-radius: 8px;
  box-shadow: none;
}

input:focus,
select:focus,
textarea:focus,
.form input:focus,
.form select:focus,
.form textarea:focus {
  border-color: var(--cci-red);
  box-shadow: none;
}

.form.card > .btn {
  min-height: 44px;
  margin: 24px 28px 28px;
  padding: 10px 16px;
  border-radius: 9px;
  background: var(--cci-red);
  box-shadow: none;
}

.form:not(.card) .btn {
  margin: 12px 0 0;
}

.conditional,
.membership-conditional,
.worker-conditional,
.map-conditional,
.payment-conditional,
.verification-subsection {
  padding: 18px;
  border-radius: 12px;
  background: #fafbfc;
  box-shadow: none;
}

.check {
  padding: 10px 12px;
  border-radius: 8px;
  background: #fafbfc;
}

.field-help {
  padding: 10px 12px;
  border-radius: 8px;
  background: #f8f9fb;
  color: #667085;
  font-size: .9rem;
  font-weight: 500;
}

.subtle-note,
.note {
  padding: 12px 14px;
  border: 1px solid #e2e6ec;
  border-left: 3px solid var(--cci-red);
  border-radius: 10px;
  background: #fafbfc;
  color: #475467;
  font-weight: 550;
  box-shadow: none;
}

.case-hero,
.track-status-hero,
.reviewer-case-hero {
  align-items: center;
  gap: 22px;
  margin-bottom: 20px;
  padding: 24px 26px;
  border: 1px solid #292e3a;
  border-radius: 16px;
  background: #151821;
  box-shadow: none;
}

.case-hero h1,
.track-status-hero h1,
.reviewer-case-hero h1 {
  margin: 3px 0 6px;
  color: #fff;
  font-size: clamp(1.9rem, 3.2vw, 2.65rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em !important;
  text-shadow: none;
  overflow-wrap: anywhere;
}

.case-hero p,
.track-status-hero p,
.reviewer-case-hero p {
  color: #c8ced9;
  font-size: .92rem;
  overflow-wrap: anywhere;
}

.case-status-panel,
.track-status-card {
  min-width: 270px;
  padding: 14px;
  border: 1px solid #3a404d;
  border-radius: 12px;
  background: #222631;
  backdrop-filter: none;
}

.case-status-panel strong,
.track-status-card h2 {
  margin: 0;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
}

.case-status-panel small,
.track-status-card p {
  color: #aeb6c4;
  font-weight: 500;
}

.case-status-panel .btn {
  min-height: 38px;
  padding: 8px 12px;
  font-size: .84rem;
}

.case-grid {
  grid-template-columns: minmax(0, 1fr) 350px;
  gap: 20px;
}

.sticky-card {
  top: 78px;
}

.case-section,
.reviewer-layout {
  gap: 20px;
}

.panel-card h2,
.case-section h2 {
  margin-top: 0;
  font-size: 1.3rem;
  letter-spacing: -.02em;
}

.info-grid,
.info-grid.compact,
.detail-list {
  gap: 0 24px;
  margin: 14px 0 20px;
}

.info-grid div,
.detail-list div,
.mini-grid div {
  min-width: 0;
  padding: 10px 0;
  border: 0;
  border-bottom: 1px solid #eaecf0;
  border-radius: 0;
  background: transparent;
}

.info-grid span,
.detail-list dt,
.mini-grid span {
  display: block;
  margin-bottom: 3px;
  color: #667085;
  font-size: .76rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.35;
  text-transform: none;
}

.info-grid strong,
.detail-list dd,
.mini-grid strong {
  color: #182230;
  font-size: .94rem;
  font-weight: 650;
  line-height: 1.45;
}

.detail-list dd {
  margin-top: 3px;
}

.urgency-triage-card,
.review-private-card,
.followup-closure-card,
.report-summary,
.applicant-followup-card {
  border: 1px solid var(--line);
  background: #fff;
}

.section-title-row {
  gap: 14px;
  margin-bottom: 14px;
}

.empty-state,
.dashboard-empty-state,
.requests-empty-state {
  padding: 14px 16px;
  border: 1px solid #e4e7ec;
  border-radius: 10px;
  background: #fafbfc;
}

.leader-response-card,
.review-report-card,
.followup-record-card {
  padding: 16px;
  border: 1px solid #e4e7ec;
  border-left: 3px solid var(--cci-red);
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}

.leader-response-header {
  gap: 14px;
  margin-bottom: 12px;
  padding-bottom: 12px;
}

.leader-response-header span,
.leader-text-block span,
.followup-record-kicker,
.followup-note-block span {
  font-size: .74rem;
  font-weight: 650;
  letter-spacing: .02em;
  text-transform: none;
}

.leader-response-header strong {
  font-size: 1rem;
  font-weight: 700;
}

.mini-heading,
.assigned-reviewer-list h4 {
  color: #667085;
  font-size: .84rem;
  font-weight: 650;
  letter-spacing: .01em;
  text-transform: none;
}

.leader-text-block,
.followup-note-block {
  padding: 12px 14px;
  border: 1px solid #eaecf0;
  border-radius: 9px;
  background: #fafbfc;
}

.doc-list li,
.assigned-reviewer-list,
.criteria-guide,
.system-assessment-panel,
.system-rating-card,
.score-total-box {
  border-radius: 10px;
  background: #fafbfc;
  box-shadow: none;
}

.doc-list li {
  padding: 11px 12px;
}

.success-panel,
.alert.success,
.followup-complete-panel {
  padding: 13px 15px;
  border: 1px solid #b7e4c7;
  border-radius: 10px;
  background: #f2fbf5;
  color: #166534;
  box-shadow: none;
}

.success-panel h3,
.followup-complete-panel h3 {
  margin: 0 0 4px;
  color: #166534;
  font-size: 1rem;
}

.success-panel p,
.followup-complete-panel p {
  margin: 4px 0 0;
  font-size: .92rem;
}

.alert {
  padding: 12px 14px;
  border-radius: 9px;
  font-weight: 600;
}

.dashboard-shell,
.reports-shell,
.admin-directory-shell {
  gap: 16px;
}

.admin-directory-shell,
.admin-directory-heading,
.admin-directory-grid,
.admin-directory-panel,
.directory-list,
.directory-list-item {
  min-width: 0;
}

.dashboard-header {
  align-items: center;
  padding: 22px 24px;
}

.dashboard-header h1,
.reports-header-copy h1,
.admin-directory-heading h1 {
  margin: 3px 0 6px;
  font-size: clamp(1.9rem, 3vw, 2.55rem);
  letter-spacing: -.03em !important;
}

.dashboard-header-actions {
  gap: 8px;
}

.dashboard-kpi-grid,
.reports-kpi-grid {
  gap: 12px;
}

.dashboard-kpi-card,
.reports-kpi-card {
  padding: 16px;
  border-radius: 14px;
  box-shadow: none;
}

.dashboard-kpi-card--money,
.dashboard-kpi-card--success,
.dashboard-kpi-card--warning,
.dashboard-kpi-card--neutral {
  border-top-width: 2px;
}

.dashboard-kpi-label,
.reports-kpi-label,
.reports-month-label {
  margin-bottom: 6px;
  font-size: .74rem;
  font-weight: 650;
  letter-spacing: .02em;
  text-transform: none;
}

.dashboard-kpi-value,
.reports-kpi-value {
  margin-bottom: 4px;
  font-size: clamp(1.4rem, 2vw, 1.9rem);
  letter-spacing: -.03em;
}

.dashboard-kpi-caption,
.reports-kpi-caption {
  font-size: .86rem;
  font-weight: 500;
}

.dashboard-panel,
.dashboard-list-panel,
.reports-panel {
  padding: 20px;
}

.dashboard-list-link,
.dashboard-activity-row,
.reports-table-row,
.reports-status-link,
.reports-month-card,
.request-row-card,
.directory-list-item {
  border-radius: 11px;
  background: #fff;
  box-shadow: none;
}

.dashboard-list-link:hover,
.request-row-card-link:hover,
.reports-table-row:hover {
  transform: none;
  box-shadow: var(--shadow-sm);
}

.dashboard-list-action {
  min-width: 0;
  padding: 6px 9px;
  border-radius: 7px;
  font-size: .76rem;
  font-weight: 700;
}

.dashboard-activity-head,
.reports-table-head,
.table th,
.request-row-case,
.request-row-meta strong,
.request-row-amount small {
  font-weight: 650;
  letter-spacing: .03em;
}

.requests-page {
  gap: 14px;
}

.requests-count-chip,
.admin-directory-summary {
  border-radius: 12px;
  box-shadow: none;
}

.request-row-meta {
  gap: 0;
}

.request-row-meta span {
  padding: 8px 12px;
  border: 0;
  border-right: 1px solid #eaecf0;
  border-radius: 0;
  background: transparent;
}

.request-row-meta span:last-child {
  border-right: 0;
}

.directory-pill,
.reports-chip {
  border-radius: 9px;
}

.case-section p,
.panel-card p,
.activity-log p,
.card > p.muted {
  overflow-wrap: anywhere;
  word-break: normal;
}

hr {
  height: 1px;
  margin: 22px 0;
  border: 0;
  background: #eaecf0;
}

.footer {
  padding: 20px 16px 36px;
  color: #7b8494;
  font-size: .86rem;
  font-weight: 500;
}

@media (max-width: 980px) {
  .case-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-header {
    align-items: flex-start;
  }
}

@media (max-width: 920px) {
  .topbar {
    min-height: 66px;
    padding: 10px 14px;
  }

  .brand-logo {
    width: 86px;
    height: 38px;
  }

  .brand strong {
    font-size: 14px;
  }

  .brand small {
    font-size: 9px;
  }

  .mobile-nav-toggle {
    min-height: 44px;
    padding: 0 13px;
    border-radius: 9px;
    box-shadow: none;
  }

  body.js-ready .topbar .navlinks {
    top: 72px;
    border-radius: 14px;
  }

  .navlinks a,
  .navlinks .btn,
  .navlinks .secure-pill {
    border-radius: 9px;
  }

  .container {
    padding: 22px 14px 48px;
  }

  .admin-directory-heading,
  .admin-directory-grid {
    width: 100%;
  }

  .card,
  .panel-card,
  .table-card,
  .feature-card {
    padding: 20px;
    border-radius: 14px;
  }

  .hero-premium {
    padding: 30px;
  }
}

@media (max-width: 640px) {
  .hero-premium,
  .application-hero,
  .case-hero,
  .track-status-hero,
  .reviewer-case-hero,
  .dashboard-header {
    padding: 20px !important;
    border-radius: 14px;
  }

  .hero h1,
  .application-hero h1,
  .case-hero h1,
  .track-status-hero h1,
  .reviewer-case-hero h1,
  .dashboard-header h1 {
    font-size: clamp(1.8rem, 9vw, 2.35rem) !important;
  }

  .case-status-panel,
  .track-status-card {
    width: 100%;
    min-width: 0;
  }

  .case-status-panel .btn {
    width: 100%;
  }

  .form.card > *:not(h2) {
    margin-left: 18px !important;
    margin-right: 18px !important;
  }

  .form.card > h2 {
    padding: 16px 18px !important;
  }

  .form.card > .btn {
    width: calc(100% - 36px);
    margin: 22px 18px 24px;
  }

  .case-status-panel {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
  }

  .case-status-panel small {
    grid-column: 1 / -1;
  }

  .case-status-panel .btn {
    min-width: 0;
    min-height: 44px;
  }

  button.small:not(.btn) {
    min-height: 44px;
  }

  .info-grid,
  .info-grid.compact,
  .detail-list {
    grid-template-columns: 1fr;
  }

  .request-row-meta span {
    padding: 9px 0;
    border-right: 0;
    border-bottom: 1px solid #eaecf0;
  }

  .doc-list li {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Keep cards quiet: use consistent outlines instead of decorative accent strips. */
.section-title::before,
.panel-stat::before,
.form.card > h2::before {
  display: none;
}

.form.card,
.dashboard-kpi-card.dashboard-kpi-card--money,
.dashboard-kpi-card.dashboard-kpi-card--success,
.dashboard-kpi-card.dashboard-kpi-card--warning,
.dashboard-kpi-card.dashboard-kpi-card--neutral,
.followup-closure-card,
.report-summary,
.applicant-followup-card,
.track-hero,
.urgency-triage-card {
  border: 1px solid var(--line);
}

.subtle-note,
.note,
.field-help,
.leader-response-card,
.review-report-card,
.followup-record-card,
.followup-note-block,
.status-message,
.score-total-box,
.score-strip,
.evidence-summary-box,
.verification-subsection,
.eligibility-banner,
.eligibility-banner.success,
.eligibility-banner.warning,
.eligibility-banner.danger {
  border-left: 1px solid #e2e6ec;
}

/* Keep report columns readable before the mobile card layout takes over. */
.reports-table-head--category,
.reports-table-row--category {
  grid-template-columns: minmax(180px, 1fr) 90px minmax(110px, .7fr) minmax(110px, .7fr);
}

@media (max-width: 1100px) {
  .reports-overview-grid {
    grid-template-columns: 1fr;
    align-items: start;
  }
}

@media (max-width: 760px) {
  .reports-table-head {
    display: none;
  }

  .reports-table-row--category {
    grid-template-columns: 1fr;
  }
}

.report-grid-onepage,
.report-box,
.reviewer-summary-box {
  min-width: 0;
}

.compact-evidence-list a {
  overflow-wrap: anywhere;
}

@media screen and (max-width: 640px) {
  .reviewer-summary-box .onepage-table,
  .reviewer-summary-box tbody,
  .reviewer-summary-box tr,
  .reviewer-summary-box td {
    display: block;
    width: 100%;
  }

  .reviewer-summary-box thead {
    display: none;
  }

  .reviewer-summary-box tr {
    padding: 8px 0;
    border-bottom: 1px solid #eaecf0;
  }

  .reviewer-summary-box tr:last-child {
    border-bottom: 0;
  }

  .reviewer-summary-box td {
    display: grid;
    grid-template-columns: minmax(88px, auto) minmax(0, 1fr);
    gap: 10px;
    padding: 6px 0;
    border: 0;
    overflow-wrap: anywhere;
  }

  .reviewer-summary-box td::before {
    content: attr(data-label);
    color: #667085;
    font-size: .68rem;
    font-weight: 700;
  }

  .reviewer-summary-box td[colspan]::before {
    display: none;
  }
}

@media (max-width: 920px) {
  .hero-premium {
    grid-template-columns: 1fr;
  }

  .hero-copy,
  .hero-panel {
    min-width: 0;
  }
}

@media (max-width: 980px) {
  .progress-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .progress-steps {
    grid-template-columns: 1fr;
  }
}

.password-reveal-toggle,
.case-status-panel .btn {
  min-height: 44px;
}
