/* creditapp-theme — Approved Oil (red/green/cream). Shared across all credit-app segments. v3
   Deployed as ONE web file (/creditapp-theme.css) linked by every segment page.
   Contains the original commercial styling verbatim + shared additions (.radiogroup, .help). */
/* hide portal chrome so the form reads standalone (chrome kept ON for the antiforgery token) */
header,.navbar,nav.navbar,#navbar,.navbar-static-top,#mainNav,.page-heading,#breadcrumbs,.breadcrumb,
ol.breadcrumb,footer,.footer,#footerContent,.footer-container,#navbarSupportedContent{display:none !important;}
body{margin:0 !important;padding:0 !important;background:#F5F5F1 !important;overflow:hidden;}
#cca-app *{box-sizing:border-box}
#cca-app{
  --ground:#F5F5F1;--surface:#FFFFFF;--ink:#123332;--muted:#556259;--border:#E7DCD0;--line:#EFE7DC;
  --green:#355F49;--green-d:#123332;--lime:#7DB825;--red:#E63329;--red-d:#B5241C;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --r:10px;--shadow:0 1px 2px rgba(18,51,50,.05),0 10px 26px rgba(18,51,50,.07);
  position:fixed;inset:0;overflow-y:auto;background:var(--ground);z-index:999999;
  font-family:var(--sans);color:var(--ink);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;
}
#cca-app .bar{background:var(--green-d);padding:16px 40px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
#cca-app .bar img{height:52px;width:auto;display:block}
#cca-app .bar .doc{color:#CDE0D2;font-size:14px;letter-spacing:.05em;text-transform:uppercase;font-weight:700}
#cca-app .accent{height:5px;background:linear-gradient(90deg,var(--red) 0 38%,var(--lime) 38%)}
#cca-app .wrap{max-width:1320px;margin:0 auto;padding:26px 40px 48px}
#cca-app .eyebrow{color:var(--red-d);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
#cca-app h1{color:var(--green-d);font-size:30px;line-height:1.1;margin:9px 0 5px;font-weight:700}
#cca-app .sub{color:var(--muted);margin:0;max-width:80ch}
#cca-app .ctx{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--red);border-radius:var(--r);padding:15px 20px;margin:16px 0 6px;box-shadow:var(--shadow)}
#cca-app .ctx .lbl{font-weight:700;font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
#cca-app .ctx .co{font-size:22px;font-weight:700;margin-top:4px;color:var(--green-d)}
#cca-app .ctx .csub{color:var(--muted);font-size:13px;margin-top:2px}
#cca-app .pill{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;padding:6px 13px;border-radius:999px;background:#EFE7DC;color:var(--green);border:1px solid var(--border)}
#cca-app .pill .dot{width:7px;height:7px;border-radius:50%;background:var(--lime)}
#cca-app .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:20px 24px 24px;margin:16px 0;box-shadow:var(--shadow)}
#cca-app .sechead{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding-bottom:11px;border-bottom:1px solid var(--line)}
#cca-app .idx{font-weight:800;font-size:12px;color:#fff;background:var(--green);border-radius:6px;min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center}
#cca-app .sechead h2{font-size:16px;font-weight:700;margin:0;color:var(--green-d)}
#cca-app .sechead .hint{margin-left:auto;color:var(--muted);font-size:12px;font-weight:600}
#cca-app .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px 18px}
#cca-app .f{display:flex;flex-direction:column;gap:6px;min-width:0}
#cca-app .c12{grid-column:span 12}#cca-app .c8{grid-column:span 8}#cca-app .c6{grid-column:span 6}
#cca-app .c4{grid-column:span 4}#cca-app .c3{grid-column:span 3}#cca-app .c2{grid-column:span 2}
#cca-app label{font-size:12px;font-weight:700;color:var(--muted)}
#cca-app label .r{color:var(--red);margin-left:2px}
#cca-app input,#cca-app select,#cca-app textarea{font-family:var(--sans);font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:8px;padding:11px 14px;width:100%}
#cca-app input::placeholder,#cca-app textarea::placeholder{color:#8B7D6B}
#cca-app input:focus,#cca-app select:focus,#cca-app textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(53,95,73,.30)}
#cca-app textarea{resize:vertical;min-height:84px}
#cca-app .toggle{font-size:13px;color:var(--ink);display:flex;align-items:center;gap:9px;cursor:pointer}
/* search-select */
#cca-app .ss{position:relative}
#cca-app .ss input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236E7E74' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:38px}
#cca-app .ss input:focus{border-color:var(--green)}
#cca-app .ss-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);z-index:40;max-height:240px;overflow-y:auto;display:none}
#cca-app .ss-menu.open{display:block}
#cca-app .ss-item{padding:9px 13px;cursor:pointer;border-bottom:1px solid var(--line);font-size:14px}
#cca-app .ss-item:last-child{border-bottom:none}
#cca-app .ss-item:hover,#cca-app .ss-item.active{background:#F2F7F3}
#cca-app .ss-item .sub{color:var(--muted);font-size:12px}
#cca-app .ss-item.create{color:var(--green);font-weight:700}
#cca-app .chip{display:inline-flex;align-items:center;gap:8px;background:#E7F0EA;border:1px solid #CFE2D5;color:#234A38;border-radius:8px;padding:8px 12px;font-size:14px;font-weight:600}
#cca-app .chip .x{cursor:pointer;color:var(--muted);font-weight:700}
#cca-app .chip .x:hover{color:var(--red)}
/* contacts table */
#cca-app .roles-note{color:var(--muted);font-size:12.5px;margin:-2px 0 14px}
#cca-app .tablewrap{overflow-x:auto;border:1px solid var(--border);border-radius:9px}
#cca-app table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
#cca-app thead th{font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;padding:11px 14px;background:#FBF6EF;border-bottom:1px solid var(--border)}
#cca-app tbody td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}
#cca-app .who{font-weight:700;color:var(--green-d)}
#cca-app .role{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid;white-space:nowrap}
#cca-app .role .d{width:6px;height:6px;border-radius:50%}
#cca-app .r-bill{background:#FBE7E5;color:#B5241C;border-color:#F3CFCB}#cca-app .r-bill .d{background:var(--red)}
#cca-app .r-sign{background:#E7F0EA;color:#234A38;border-color:#CFE2D5}#cca-app .r-sign .d{background:var(--green)}
#cca-app .r-fin{background:#EEF6E2;color:#4A6B12;border-color:#DBEAC2}#cca-app .r-fin .d{background:var(--lime)}
#cca-app .r-dec{background:#E9EEEC;color:#123332;border-color:#D2DCD7}#cca-app .r-dec .d{background:var(--green-d)}
#cca-app .exist{font-size:11px;color:#6E7E74;font-style:italic}
#cca-app .iconbtn{border:1px solid var(--border);background:#fff;color:var(--muted);border-radius:7px;width:30px;height:30px;cursor:pointer;font-size:14px}
#cca-app .iconbtn:hover{color:var(--red);border-color:#F0C9C5}
#cca-app .addrow{display:grid;grid-template-columns:1fr 1fr 1.4fr 1fr 1.1fr auto;gap:12px;align-items:end;padding:16px;background:#F3F1E8;border:1px dashed #D8D2C2;border-radius:9px;margin-top:14px}
#cca-app .addrow label{font-size:11px}
#cca-app .btn{font-family:var(--sans);font-weight:700;font-size:14px;border-radius:8px;cursor:pointer;padding:11px 18px;border:1px solid transparent}
#cca-app .btn-add{background:var(--green);color:#fff;white-space:nowrap}#cca-app .btn-add:hover{background:#2C4F3D}
#cca-app .terms{border:1px solid var(--border);border-radius:9px;background:#FCFAF6;padding:14px 18px;max-height:200px;overflow-y:auto;font-size:13px;color:#3C4A43;line-height:1.55}
#cca-app .terms p{margin:0 0 9px}#cca-app .terms b{color:var(--green-d)}
#cca-app .agree{display:flex;align-items:flex-start;gap:11px;margin-top:14px;padding:15px 18px;border-radius:9px;background:#FBE7E5;border:1px solid #F3CFCB}
#cca-app .agree input{width:18px;height:18px;margin-top:1px;accent-color:var(--red)}
#cca-app .agree label{font-size:14px;color:var(--ink);font-weight:600}
#cca-app .actions{position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:20px;margin:8px 0 0;padding:14px 2px;background:linear-gradient(180deg,rgba(245,245,241,0),var(--ground) 30%);z-index:30}
#cca-app .actions .meta{color:var(--muted);font-size:12.5px}
#cca-app .btn-primary{background:var(--red);color:#fff;padding:13px 30px;font-size:15px;box-shadow:0 2px 10px rgba(230,51,41,.30)}
#cca-app .btn-primary:hover{background:var(--red-d)}#cca-app .btn-primary:disabled{opacity:.5;cursor:not-allowed}
#cca-app .toast{position:fixed;top:18px;right:18px;background:var(--green);color:#fff;padding:12px 18px;border-radius:9px;box-shadow:var(--shadow);z-index:60;font-weight:600;font-size:14px;max-width:380px}
#cca-app .toast.err{background:var(--red)}
/* shared additions (used by residential/wholesale; commercial unaffected) */
#cca-app .radiogroup{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;min-height:44px}
#cca-app .radiogroup .toggle{background:#fff;border:1px solid var(--border);border-radius:8px;padding:9px 14px;font-weight:600}
#cca-app .radiogroup input{width:16px;height:16px;accent-color:var(--green)}
#cca-app .help{font-size:11.5px;color:var(--muted);font-weight:500;margin-top:-1px}
/* router loading + message states (single self-routing form) */
#cca-app .cca-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:80px 20px;color:var(--muted)}
#cca-app .cca-spin{width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:cca-rot .8s linear infinite}
@keyframes cca-rot{to{transform:rotate(360deg)}}
#cca-app .cca-note{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--red);border-radius:var(--r);padding:26px 28px;margin:22px 0;box-shadow:var(--shadow);max-width:640px}
#cca-app .cca-note h1{font-size:22px;margin:0 0 8px}
#cca-app .cca-note.ok,#cca-app .cca-note{border-left-color:var(--red)}
#cca-app .cca-check{width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;margin:0 0 14px}
/* repeater groups (officers / trade references / additional properties) */
#cca-app .rep-rows{display:flex;flex-direction:column;gap:14px;margin-bottom:14px}
#cca-app .rep-row{border:1px solid var(--border);border-radius:9px;padding:14px 16px 16px;background:#FCFAF6}
#cca-app .rep-rowhead{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px}
#cca-app .rep-idx{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
#cca-app .sigwrap{margin-top:14px}
#cca-app .sigwrap input{font-family:var(--sans);font-size:17px;font-weight:600;letter-spacing:.01em}
/* required-contacts checklist */
#cca-app .reqroles{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:-2px 0 14px;padding:12px 14px;background:#FBF6EF;border:1px dashed #D8D2C2;border-radius:9px}
#cca-app .reqroles-lbl{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:4px}
#cca-app .reqrole{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;padding:5px 11px;border-radius:999px;background:#fff;border:1px solid #F3CFCB;color:#B5241C}
#cca-app .reqrole .rr-dot{width:7px;height:7px;border-radius:50%;background:var(--red)}
#cca-app .reqrole .rr-status{font-style:normal;font-weight:600;font-size:11px;opacity:.85;margin-left:2px}
#cca-app .reqrole.done{background:#E7F0EA;border-color:#CFE2D5;color:#234A38}
#cca-app .reqrole.done .rr-dot{background:var(--green)}
@media (max-width:760px){#cca-app .c8,#cca-app .c6,#cca-app .c4,#cca-app .c3,#cca-app .c2{grid-column:span 12}#cca-app .addrow{grid-template-columns:1fr 1fr}#cca-app .wrap{padding:22px 18px 130px}#cca-app .bar{padding:14px 18px}#cca-app .layout{grid-template-columns:1fr}#cca-app .secnav{display:none}}
@media (prefers-reduced-motion:reduce){#cca-app *{transition:none!important}#cca-app .cca-spin{animation:none!important}}

/* ===== E1 layout: sticky section-nav rail + progress + content column ===== */
#cca-app .layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:start;margin-top:10px}
#cca-app .content{min-width:0}
#cca-app .secblock{scroll-margin-top:14px}
#cca-app .secnav{position:sticky;top:14px;align-self:start;max-height:calc(100vh - 28px);overflow-y:auto;padding:2px 6px 2px 2px}
/* cca-progress* (NOT .progress/.progress-bar — those collide with Bootstrap's .progress{height:1rem;overflow:hidden} on the portal and clip the label) */
#cca-app .cca-progress{display:block;height:auto;margin:0 0 14px}
#cca-app .cca-progress-track{height:8px;background:#E7DCD0;border-radius:999px;overflow:hidden}
#cca-app .cca-progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--lime),var(--green));border-radius:999px;transition:width .35s ease}
#cca-app .cca-progress-lbl{display:block;margin-top:6px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
#cca-app .secnav-links{display:flex;flex-direction:column;gap:2px}
#cca-app .secnav-link{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:12.5px;font-weight:600;border-left:2px solid transparent}
#cca-app .secnav-link .n{font-size:10px;font-weight:800;color:#fff;background:#B6A892;border-radius:5px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex:none}
#cca-app .secnav-link .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#cca-app .secnav-link:hover{background:#F3F1E8;color:var(--ink)}
#cca-app .secnav-link.active{background:#EDF3EE;color:var(--green-d);border-left-color:var(--red)}
#cca-app .secnav-link.active .n{background:var(--green)}
/* ===== E2 error surfaces + focus ===== */
#cca-app .errsum{background:#FBE7E5;border:1px solid #F3CFCB;border-left:4px solid var(--red);color:#8E1F18;border-radius:9px;padding:12px 16px;margin:12px 0 2px;font-size:13.5px;font-weight:700}
#cca-app .errsum[hidden]{display:none}
#cca-app .ferr{color:var(--red-d);font-size:11.5px;font-weight:700;margin-top:1px}
#cca-app .ferr:empty{display:none}
#cca-app [aria-invalid='true']{border-color:var(--red)!important}
#cca-app a:focus-visible,#cca-app button:focus-visible{outline:2px solid var(--green-d);outline-offset:2px}
