/* Model-backed tools: scoped surfaces, explicit fields and readable result ledgers. */
.cl-tool.cl-guidance { --cl-guidance-line:rgba(112,84,66,.22); display:block; min-width:0; max-width:none!important; margin:0!important; padding:32px 35px 35px; border:1px solid #fff; border-radius:25px; background:linear-gradient(125deg,rgba(255,255,255,.98),rgba(249,246,240,.96)); color:#4d5558; box-shadow:0 20px 52px rgba(64,48,40,.08),inset 0 1px 0 #fff; backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px); }
.cl-tool.cl-guidance *, .cl-tool.cl-guidance *::before, .cl-tool.cl-guidance *::after { box-sizing:border-box; }
.cl-tool.cl-guidance > * { max-width:none!important; margin-inline:0!important; }
.cl-tool.cl-guidance > h2 { margin:0 0 15px; color:#3f474a; font-size:28px; font-weight:500; line-height:1.3; letter-spacing:-.7px; }
.cl-tool.cl-guidance > p { max-width:80ch; margin:0 0 23px; color:#566063; font-size:16px; line-height:1.8; }
.cl-tool.cl-guidance .cl-tool-controls { display:block; margin:0; padding:0; border:0; }
.cl-tool.cl-guidance .cl-guidance-form { max-width:none; margin:0; }
.cl-tool.cl-guidance .cl-guidance-intro { margin:0 0 19px; color:#655d5c; font-size:14px; line-height:1.7; }
.cl-tool.cl-guidance .cl-guidance-fields { display:grid; grid-template-columns:1fr; gap:22px 25px; min-width:0; margin:0; }
.cl-tool.cl-guidance[data-kind="asset-risk"] .cl-guidance-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cl-tool.cl-guidance .cl-guidance-field { min-width:0; margin:0; }
.cl-tool.cl-guidance .cl-guidance-field[data-field="document"] { grid-column:1/-1; }
.cl-tool.cl-guidance label { display:flex; align-items:baseline; gap:9px; min-width:0; margin:0 0 10px; color:#424a4e; font-size:16px; font-weight:800; line-height:1.65; }
.cl-tool.cl-guidance .cl-guidance-number { flex:none; color:#944650; font-size:12px; font-weight:800; }
.cl-tool.cl-guidance select { display:block; width:100%; min-width:0; max-width:100%; min-height:56px; margin:0; padding:13px 34px 13px 13px; border:1px solid #a69c93; border-radius:8px; background:#fffefa; color:#3e484c; font:inherit; font-size:16px; font-weight:600; line-height:1.6; }
.cl-tool.cl-guidance select[aria-invalid="true"] { border-color:#8a303d; box-shadow:0 0 0 1px #8a303d; }
.cl-tool.cl-guidance button.cl-guidance-submit { display:inline-flex; align-items:center; justify-content:center; min-height:52px; max-width:100%; margin:23px 0 0; padding:13px 21px; border:1px solid #943a43; border-radius:8px; background:#943a43; color:#fff; font:inherit; font-size:15px; font-weight:800; line-height:1.65; text-align:center; white-space:normal; cursor:pointer; }
.cl-tool.cl-guidance button.cl-guidance-submit:hover { border-color:#7e3039; background:#7e3039; transform:none; }
.cl-tool.cl-guidance .cl-guidance-error { margin:9px 0 0; color:#81313f; font-size:15px; font-weight:750; line-height:1.65; }
.cl-tool.cl-guidance .cl-guidance-error-summary { margin:18px 0 0; }
.cl-tool.cl-guidance [hidden] { display:none!important; }
.cl-tool.cl-guidance :is(a,button,select):focus-visible,.cl-tool.cl-guidance .cl-guidance-result:focus-visible { outline:3px solid #943a43; outline-offset:5px; border-radius:4px; }
.cl-tool.cl-guidance .cl-guidance-result { min-width:0; max-width:none; margin:0; padding:0; border:0; border-radius:0; background:transparent; color:#50595c; font-size:16px; line-height:1.8; overflow-wrap:anywhere; }
.cl-tool.cl-guidance .cl-guidance-result:not(:empty) { margin:29px 0 0; padding:25px 0 0; border-top:1px solid var(--cl-guidance-line); }
.cl-tool.cl-guidance .cl-guidance-result .cl-guidance-stage { display:inline-block; margin:0 0 12px; padding:6px 10px; border:1px solid #dfcfc8; border-radius:6px; background:#f7efea; color:#7b3741; font-size:13px; font-weight:800; line-height:1.6; }
.cl-tool.cl-guidance .cl-guidance-title { max-width:40ch; margin:0 0 18px; color:#3f474a; font-size:25px; font-weight:600; line-height:1.4; letter-spacing:-.55px; }
.cl-tool.cl-guidance .cl-guidance-result .cl-guidance-reference { max-width:76ch; margin:0 0 10px; color:#76575c; font-size:12px; font-weight:800; line-height:1.7; letter-spacing:.35px; }
.cl-tool.cl-guidance .cl-guidance-result .cl-guidance-status-value { max-width:76ch; margin:0 0 18px; color:#625357; font-size:16px; font-weight:750; line-height:1.75; }
.cl-tool.cl-guidance .cl-guidance-copy,.cl-tool.cl-guidance .cl-guidance-after { min-width:0; max-width:none; margin:0; }
.cl-tool.cl-guidance .cl-guidance-result .cl-guidance-paragraph { max-width:76ch; margin:0 0 16px; color:#50595c; font-size:16px; line-height:1.85; }
.cl-tool.cl-guidance .cl-guidance-bands { min-width:0; margin:23px 0; }
.cl-tool.cl-guidance .cl-guidance-table-title { max-width:65ch; margin:0 0 11px; color:#484d50; font-size:17px; font-weight:800; line-height:1.65; }
.cl-tool.cl-guidance .cl-guidance-table { width:100%; max-width:100%; border-collapse:collapse; table-layout:fixed; font-size:16px; line-height:1.65; }
.cl-tool.cl-guidance .cl-guidance-table th,.cl-tool.cl-guidance .cl-guidance-table td { padding:10px 12px; border-bottom:1px solid var(--cl-guidance-line); color:#50595c; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
.cl-tool.cl-guidance .cl-guidance-table thead th { background:#f2ece5; color:#4c4546; font-size:14px; font-weight:800; }
.cl-tool.cl-guidance .cl-guidance-table tbody th { width:43%; color:#444b4f; font-weight:750; }
.cl-tool.cl-guidance .cl-guidance-table tbody tr:last-child > * { border-bottom:1px solid #cbbeb4; }
.cl-tool.cl-guidance .cl-guidance-result .cl-guidance-deadline { max-width:76ch; margin:20px 0 0; padding:10px 13px; border-left:2px solid #93434d; background:#f7efea; color:#703440; font-size:14px; font-weight:750; line-height:1.75; }
.cl-tool.cl-guidance .cl-guidance-offer { max-width:76ch; margin:22px 0 0; padding:18px 0 0; border-top:1px solid var(--cl-guidance-line); }
.cl-tool.cl-guidance .cl-guidance-result .cl-guidance-offer-disclosure { margin:0 0 9px; color:#53565a; font-size:15px; font-weight:750; line-height:1.75; }
.cl-tool.cl-guidance .cl-guidance-result .cl-guidance-offer-availability { margin:0; color:#665b5b; font-size:14px; line-height:1.75; }
.cl-tool.cl-guidance[data-kind="credit-report-glossary"] .cl-guidance-paragraph strong { color:#41494c; font-weight:800; }
.cl-tool.cl-guidance[data-kind="credit-report-glossary"] .cl-guidance-offer-disclosure { color:#5a5a5a; font-size:14px; font-weight:500; }
.cl-tool.cl-guidance[data-kind="credit-report-glossary"] .cl-guidance-offer-availability { color:inherit; font:inherit; }
.cl-report-glossary-definitions[hidden] { display:none!important; }
.cl-tool.cl-guidance .cl-guidance-fallback { margin:0 0 14px; color:#5a5c5e; font-size:16px; line-height:1.8; }
.cl-tool.cl-guidance .cl-guidance-fallback-link { display:inline-flex; align-items:center; min-height:48px; color:#84343e; font-size:16px; font-weight:750; }
.cl-tool.cl-guidance .cl-guidance-actions { display:flex; flex-wrap:wrap; gap:12px; margin:23px 0 0; padding-top:21px; border-top:1px solid var(--cl-guidance-line); }
.cl-tool.cl-guidance .cl-guidance-actions a { display:inline-flex; align-items:center; justify-content:center; min-height:52px; max-width:100%; margin:0; padding:12px 18px; border:1px solid #943a43; border-radius:8px; background:#fffdfa; color:#84343e; font-size:15px; font-weight:800; line-height:1.65; text-align:center; text-decoration:none; white-space:normal; }
.cl-tool.cl-guidance .cl-guidance-actions a.cl-guidance-guide { background:#943a43; color:#fff; }
.cl-tool.cl-guidance .cl-guidance-actions a.cl-guidance-guide:hover { border-color:#7e3039; background:#7e3039; }
.cl-tool.cl-guidance .cl-guidance-actions a:not(.cl-guidance-guide):hover { background:#f7eae7; color:#742b35; }
.cl-tool.cl-guidance .cl-guidance-actions a.cl-guidance-primary { background:#943a43; color:#fff; }
.cl-tool.cl-guidance .cl-guidance-actions a.cl-guidance-primary:hover { border-color:#7e3039; background:#7e3039; color:#fff; }
.cl-tool.cl-guidance noscript p { margin:23px 0 0; color:#5a5c5e; font-size:16px; line-height:1.8; }
@media(max-width:767px) {
 .cl-tool.cl-guidance { padding:28px; }
 .cl-tool.cl-guidance[data-kind="asset-risk"] .cl-guidance-fields { grid-template-columns:1fr; }
 .cl-tool.cl-guidance .cl-guidance-field[data-field="document"] { grid-column:auto; }
}
@media(max-width:540px) {
 .cl-tool.cl-guidance { padding:27px 22px 29px; border-radius:21px; }
 .cl-tool.cl-guidance > h2 { font-size:26px; line-height:1.35; }
 .cl-tool.cl-guidance > p { margin-bottom:22px; }
 .cl-tool.cl-guidance .cl-guidance-fields { gap:22px; }
 .cl-tool.cl-guidance .cl-guidance-title { font-size:23px; line-height:1.4; }
 .cl-tool.cl-guidance .cl-guidance-actions { display:grid; grid-template-columns:1fr; gap:11px; padding-top:20px; }
 .cl-tool.cl-guidance .cl-guidance-actions a { width:100%; min-height:52px; padding-inline:11px; }
 .cl-tool.cl-guidance .cl-guidance-table th,.cl-tool.cl-guidance .cl-guidance-table td { padding:10px 8px; font-size:15px; }
 .cl-tool.cl-guidance .cl-guidance-table thead th { font-size:14px; }
}
@media(min-width:768px) and (max-width:1023px) {
 .cl-tool.cl-guidance[data-kind="asset-risk"] .cl-guidance-field:is([data-field="account"],[data-field="payments"]) > label { min-height:3.3em; }
}
@media(min-width:1200px) {
 .cl-tool.cl-guidance[data-kind="home-loan-readiness-check"] .cl-guidance-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .cl-tool.cl-guidance[data-kind="home-loan-readiness-check"] .cl-guidance-field > label { min-height:3.3em; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { .cl-tool.cl-guidance { background:#fdfaf6; } }
