.portal-layout{grid-template-columns:minmax(0,1fr)}
.portal-sidebar{display:none}
body.show-advanced .portal-layout{grid-template-columns:270px minmax(0,1fr)}
body.show-advanced .portal-sidebar{display:flex}
body.show-advanced .portal-sidebar #pillar-nav{display:grid}
body.show-advanced .portal-sidebar .side-score{display:block}
.consultant-workflow{font-family:inherit;color:#182349;margin-bottom:28px}
.journey-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:24px}
.journey-heading h1{font-size:clamp(28px,3vw,42px);margin:4px 0;color:#172554}
.journey-heading p:last-child{color:#5e6880;margin:0}
.journey-grade{border:1px solid #d5bd79;border-radius:24px;padding:9px 14px;color:#73591f;background:#fffaf0;white-space:nowrap;font-size:13px;font-weight:700}
.journey-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.journey-step{border:1px solid #dce3f2;background:#fff;color:#22335e;border-radius:9px;padding:10px 14px;font:inherit;font-weight:700;cursor:pointer}
.journey-step span{display:inline-grid;place-items:center;width:23px;height:23px;margin-right:7px;border-radius:50%;background:#eaf0fc;color:#1c448b;font-size:12px}
.journey-step.current{background:#163e86;color:#fff;border-color:#163e86}
.journey-step.current span{background:#d8b566;color:#15275b}
.journey-panel{background:#fff;border:1px solid #e3e8f1;border-radius:16px;padding:clamp(22px,3vw,36px);box-shadow:0 9px 28px rgba(18,42,83,.06)}
.journey-panel h2{font-size:clamp(24px,2.6vw,34px);color:#142e65;margin:6px 0 14px}
.journey-panel h3{color:#173976;margin:24px 0 12px;font-size:19px}
.journey-panel h3 span{color:#aa863e}
.journey-panel p{line-height:1.6;color:#58647a}
.journey-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}
.journey-facts>div{border:1px solid #e3e8f1;border-radius:10px;padding:16px;background:#f8faff;min-width:0}
.journey-facts small,.journey-metrics small{display:block;color:#64708a;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.journey-facts strong{display:block;margin-top:7px;overflow-wrap:anywhere;color:#1a356e}
.journey-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:145px;border:2px dashed #aebfe0;background:#f7faff;border-radius:14px;color:#1b448d;cursor:pointer;text-align:center;margin:22px 0;padding:22px}
.journey-drop.dragging{background:#edf3ff;border-color:#c49d4a}
.journey-drop strong{font-size:19px}.journey-drop span{font-size:13px;color:#6a7489}.journey-drop input{position:absolute;opacity:0;width:1px;height:1px}
.journey-split{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:16px 0 28px}
.journey-source-table{overflow-x:auto;margin:14px 0 26px}.journey-source-table table{width:100%;border-collapse:collapse;min-width:650px}.journey-source-table th,.journey-source-table td{text-align:left;border-bottom:1px solid #dce4f0;padding:10px 12px;vertical-align:top}.journey-source-table th{background:#eef3fb;color:#193a75;font-size:12px}.journey-source-table td{font-size:13px;color:#263b61}.journey-source-table a{color:#244d94}.journey-exception form>details{grid-column:1/-1}.journey-exception form>details label{margin:9px 0}.journey-exception label small{color:#66728b;font-weight:400}
.journey-source,.journey-finding{border:1px solid #e2e8f0;border-radius:9px;padding:12px;margin-bottom:9px;display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}
.journey-source div,.journey-finding div{min-width:0;flex:1}.journey-source strong,.journey-finding strong{display:block;overflow-wrap:anywhere}.journey-source small,.journey-finding small{display:block;color:#66728b;margin-top:4px}.journey-source a{font-size:12px;color:#244d94}
.journey-status{font-size:11px;font-weight:700;color:#227160;background:#e7f6f0;padding:5px 8px;border-radius:12px}.journey-status.attention{color:#9a562b;background:#fff0e4}
.journey-exception{border:1px solid #e6cd95;background:#fffaf1;border-radius:10px;padding:15px;margin-bottom:12px}.journey-exception h4{margin:0 0 8px;color:#644b19}.journey-exception>small{display:block;margin:5px 0;color:#7d6238}.journey-exception details{margin-top:12px}.journey-exception summary{cursor:pointer;color:#1d4282;font-weight:700}.journey-exception form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.journey-exception label{display:flex;flex-direction:column;gap:5px;color:#3c4b67;font-size:12px}.journey-exception label:has(input[type=checkbox]){flex-direction:row;align-items:center}.journey-exception select{width:100%;border:1px solid #ccd5e4;border-radius:6px;padding:7px;color:#192d57;background:#fff}.journey-exception .form-error{grid-column:1/-1;color:#af3d38}.journey-warning{background:#fff7e8;border-left:4px solid #bc9143;padding:12px 14px;color:#745427!important}
.journey-report-field{display:grid;gap:7px;margin:16px 0;color:#294475;font-size:13px;font-weight:700}.journey-report-field select,.journey-report-field textarea{width:100%;max-width:650px;border:1px solid #cbd5e5;border-radius:8px;padding:11px;background:#fff;color:#1b2b52;font:inherit}.journey-report-field textarea{resize:vertical}#journey-report-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.journey-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.journey-metrics article{background:#f8faff;border:1px solid #dfe7f4;padding:16px;border-radius:10px}.journey-metrics strong{display:block;font-size:23px;color:#153b83;margin:6px 0}.journey-metrics span{font-size:12px;color:#68758f}
.journey-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.journey-pillars button{background:#fff;border:1px solid #d9e2f0;border-radius:8px;padding:13px;text-align:left;color:#1f407c;cursor:pointer;font-weight:700}.journey-pillars span{display:block;color:#7f8aa0;font-size:11px;font-weight:400;margin-top:4px}
.journey-panel>details{margin:22px 0}.journey-panel>details summary{cursor:pointer;color:#1c4384;font-weight:700}.journey-panel>.primary-button,.journey-panel>.secondary-button{margin:6px 8px 6px 0}
.advanced-workspace{border:1px solid #dbe3f1;background:#f7f9fe;border-radius:12px;padding:0;margin-bottom:30px}.advanced-workspace>summary{padding:18px 24px;cursor:pointer;color:#244b8b;font-weight:700}.advanced-workspace[open]{padding:0 24px 24px}.advanced-workspace[open]>summary{margin:0 -24px 25px;border-bottom:1px solid #dbe3f1}
@media(max-width:900px){.journey-split{grid-template-columns:1fr}.journey-facts,.journey-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-pillars{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.journey-heading{display:block}.journey-grade{display:inline-block;margin-top:13px}.journey-facts,.journey-metrics,.journey-pillars{grid-template-columns:1fr}.journey-exception form{grid-template-columns:1fr}.journey-panel{padding:18px}}
.journey-period{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.journey-period label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#344f80;font-weight:700}.journey-period input{border:1px solid #cbd7e9;border-radius:8px;padding:10px 12px;color:#17356d;font:inherit}
.journey-health{border-left:4px solid #c39c4f;background:#fbf9f1;padding:12px 18px;margin:20px 0}.journey-health h3{margin:0 0 4px}.journey-health p{margin:0}
.journey-finding{display:block;padding:19px}.journey-finding p{margin:7px 0;color:#425476}.journey-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.journey-actions button{padding:9px 11px;font-size:10px}
.journey-limitation{border-left:3px solid #d2bb82;padding:6px 12px;margin:8px 0!important;background:#fffcf4}.journey-drilldown{margin:24px 0}.journey-drilldown summary{color:#1b4588;font-weight:700;cursor:pointer}.journey-drilldown .journey-pillars{margin-top:12px}
.journey-review{max-width:760px;max-height:90vh;overflow:auto}.journey-review>section{padding:clamp(18px,3vw,32px)}.journey-review-head{display:flex;justify-content:space-between;gap:18px}.journey-review-head h2{margin:2px 0 12px;color:#18366f}.journey-review form{display:grid;gap:12px}.journey-review label{display:grid;gap:5px;color:#36445f;font-size:12px;font-weight:700}.journey-review textarea,.journey-review input,.journey-review select{width:100%;border:1px solid #cbd5e5;border-radius:7px;padding:10px;background:#fff;color:#1b2b52;font:inherit}.journey-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.journey-review details{border-top:1px solid #e5eaf3;padding:12px 0}.journey-review summary{cursor:pointer;color:#1b4588;font-weight:700}.journey-review pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;background:#f7f9fc;padding:10px;max-height:220px;overflow:auto}.journey-review-actions{display:flex;gap:8px;flex-wrap:wrap}.journey-review [role=alert]{color:#a33b3b;margin:0}
@media(max-width:860px){body.show-advanced .portal-layout{grid-template-columns:1fr}body.show-advanced .portal-sidebar #pillar-nav{display:flex}.journey-review-grid{grid-template-columns:1fr}}
/* Client actions share the existing MASAR visual system. Native dialogs stay in
   the top layer and scroll within the viewport on desktop and narrow screens. */
dialog[open]{position:fixed;inset:0;margin:auto;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
.client-card{border:1px solid #dce2ed;border-radius:10px;padding:14px;margin:12px 0;background:#fff}
.client-card.selected{border:2px solid #173d80;background:#f5f7fc}
.client-card .client-entry{border:0;width:100%;margin:0;text-align:left;background:transparent}
.client-card-actions{display:flex;gap:12px;margin-top:12px}
.client-directory-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.client-directory-tools label{display:flex;align-items:center;gap:8px}
.client-management-dialog{max-width:620px}
@media(max-width:520px){dialog[open]{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.client-card{padding:8px}.dialog-heading h2{font-size:25px}.client-card-actions{flex-wrap:wrap}}
.source-selection{margin:24px 0;padding:20px;border:1px solid #dce3ef;border-radius:12px}.source-option{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid #edf0f6}.source-option input{width:20px;height:20px;margin-top:4px}.source-option small{display:block;color:#65708a;margin-top:4px}.pillar-review-section form{display:grid;gap:14px}.pillar-review-section label{display:grid;gap:6px}.pillar-review-section label:has(input[type=checkbox]){display:flex;align-items:center}.pillar-review-section input[type=checkbox]{width:20px;height:20px}.source-selection pre,.journey-drilldown pre{white-space:pre-wrap;overflow-wrap:anywhere}.journey-source-table td{overflow-wrap:anywhere;min-width:100px}
