:root{--bg:#f7f8fa;--panel:#fff;--text:#17191c;--muted:#6d737c;--line:#e5e7eb;--soft:#f1f3f5;--accent:#1f4d3d;--accent-soft:#e9f1ee;--danger:#9d2c2c;--warning:#8a5b12;--radius:14px;--shadow:0 1px 2px rgba(0,0,0,.04)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}a{color:inherit}.hidden{display:none!important}.shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.sidebar{background:#111a17;color:#f7faf8;padding:22px 18px;position:sticky;top:0;height:100vh}.brand{font-weight:720;letter-spacing:-.02em;font-size:20px;margin:4px 8px 28px}.brand span{color:#90b7aa}.nav{display:grid;gap:6px}.nav button{border:0;background:transparent;color:#c8d0cd;padding:11px 12px;border-radius:10px;text-align:left;cursor:pointer}.nav button.active,.nav button:hover{background:#1b2823;color:white}.side-foot{position:absolute;bottom:22px;left:18px;right:18px;color:#99a49f;font-size:14px}.main{padding:30px 34px 56px;min-width:0}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:28px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:14px;font-weight:700;color:#818791}.title{font-size:28px;font-weight:720;letter-spacing:-.03em;margin:5px 0 6px}.subtitle{color:var(--muted);font-size:14px}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn{border:1px solid var(--line);background:#fff;padding:9px 13px;border-radius:9px;cursor:pointer;color:#25282c}.btn:hover{background:#f9fafb}.btn.primary{background:var(--accent);color:white;border-color:var(--accent)}.btn.danger{color:var(--danger);border-color:#e6caca;background:#fff}.btn.small{padding:6px 9px;font-size:14px}.grid{display:grid;gap:14px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.kpi{padding:18px}.kpi .n{font-size:28px;font-weight:720;letter-spacing:-.04em}.kpi .l{color:var(--muted);font-size:14px;margin-top:5px}.section{margin-top:24px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:12px}.section h2{font-size:17px;margin:0;letter-spacing:-.01em}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.input,.select,.textarea{border:1px solid var(--line);border-radius:9px;background:#fff;padding:9px 10px;color:var(--text)}.input{min-width:220px}.textarea{width:100%;min-height:92px;resize:vertical}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:white}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{font-size:14px;text-transform:uppercase;letter-spacing:.07em;color:#858b93;font-weight:700;background:#fafafa;text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:12px;border-bottom:1px solid #edf0f2;vertical-align:top}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:#fcfdfd}.muted{color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 7px;font-size:14px;font-weight:650;background:var(--soft);color:#596068}.badge.ok{background:#eaf4ef;color:#275f49}.badge.hold{background:#fff5dc;color:#805711}.badge.bad{background:#fbecec;color:#8d3232}.epc{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:5px;font-weight:800;background:#e9ecef}.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-card{padding:18px;cursor:pointer}.client-card:hover{border-color:#bcc8c3}.client-card h3{margin:0 0 7px;font-size:16px}.client-card .meta{font-size:14px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap}.region-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.chip{border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:14px;background:#fff}.panel{padding:18px}.split{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:16px}.empty{padding:34px;text-align:center;color:var(--muted)}.notice{border:1px solid #d6e3de;background:#f2f7f5;border-radius:10px;padding:12px 14px;color:#335e4f;font-size:14px}.danger-note{border-color:#ead3d3;background:#fff7f7;color:#863c3c}.login-page{min-height:100vh;display:grid;place-items:center;background:#f4f6f5;padding:22px}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 10px 35px rgba(23,25,28,.06)}.login-card .brand{color:#17201d;margin:0 0 28px}.login-card .brand span{color:#467764}.form-row{display:grid;gap:6px;margin:14px 0}.form-row label{font-size:14px;color:#555b62;font-weight:650}.form-row input{width:100%}.error{color:#a03232;font-size:14px;margin-top:10px}.dropzone{border:1px dashed #b9c1c6;border-radius:14px;background:#fbfcfc;padding:28px;text-align:center}.preview{max-height:320px;overflow:auto}.detail{display:grid;gap:12px}.detail-row{display:grid;grid-template-columns:130px 1fr;gap:12px;font-size:14px}.detail-row .key{color:var(--muted)}.toast{position:fixed;right:22px;bottom:22px;background:#15211d;color:white;padding:11px 14px;border-radius:10px;font-size:14px;z-index:50;box-shadow:0 8px 30px rgba(0,0,0,.18)}.client-shell{max-width:1180px;margin:0 auto;padding:28px 24px 60px}.client-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:28px}.opportunity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.opp-card{padding:18px}.opp-card h3{margin:0 0 4px;font-size:16px}.opp-card .line{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin:8px 0 14px}.opp-card .facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.fact{background:#f7f8f8;border-radius:9px;padding:9px}.fact b{display:block;font-size:14px}.fact span{font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.feedback-actions{display:flex;gap:7px;flex-wrap:wrap}.feedback-actions button.selected{background:var(--accent-soft);border-color:#bdd3ca;color:#245443}.mobile-nav{display:none}@media(max-width:980px){.shell{grid-template-columns:1fr}.sidebar{display:none}.main{padding:22px 18px 50px}.mobile-nav{display:flex;gap:7px;overflow:auto;margin-bottom:18px}.mobile-nav button{white-space:nowrap}.kpis{grid-template-columns:repeat(2,1fr)}.client-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.opportunity-grid{grid-template-columns:1fr}}@media(max-width:620px){.kpis,.client-grid{grid-template-columns:1fr}.topbar,.client-top{flex-direction:column}.main{padding:18px 12px 42px}.opportunity-grid{grid-template-columns:1fr}.opp-card .facts{grid-template-columns:1fr 1fr}.input{min-width:0;width:100%}}

.match-score{display:inline-grid;place-items:center;min-width:38px;height:30px;border-radius:8px;font-weight:800;font-size:14px;background:#eef1f0;color:#49514e}.match-score.high{background:#e4f1eb;color:#245c45}.match-score.medium{background:#fff3d8;color:#795719}.match-score.low{background:#f1f2f4;color:#666d75}.match-reasons{display:grid;gap:4px;min-width:190px}.match-reasons span{font-size:14px;color:#626970}.match-reasons span:before{content:'•';margin-right:6px;color:#9aa29e}.match-actions{display:flex;gap:6px;flex-wrap:wrap}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:disabled:hover{background:inherit}

/* Client portal v1 — deliberately calmer and more editorial than the admin. */
:root{--client-accent:#214e3d}.client-portal-body{background:#f5f6f6}.client-portal-loading{min-height:100vh;display:grid;place-items:center;padding:24px}.client-loading-card{width:min(560px,100%);padding:30px;background:white;border:1px solid var(--line);border-radius:16px}.client-preview-banner{min-height:48px;background:#fff7df;border-bottom:1px solid #eadca7;padding:9px 24px;display:flex;align-items:center;gap:12px;font-size:14px;color:#695820}.client-preview-banner span{flex:1}.client-app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.client-sidebar{background:#fff;border-right:1px solid var(--line);padding:25px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.client-brand{padding:0 8px 24px}.client-powered{font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:#93989e;margin-top:5px}.client-company-block{display:flex;gap:11px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 8px;margin-bottom:18px}.client-monogram{width:37px;height:37px;border-radius:10px;background:color-mix(in srgb,var(--client-accent) 11%,white);color:var(--client-accent);display:grid;place-items:center;font-weight:800;font-size:14px}.client-company-name{font-size:14px;font-weight:750}.client-company-focus{font-size:14px;color:var(--muted);margin-top:3px;max-width:145px;line-height:1.35}.client-nav{display:grid;gap:4px}.client-nav button{display:flex;align-items:center;gap:8px;border:0;background:transparent;border-radius:8px;padding:10px 9px;text-align:left;font-size:14px;color:#596068;cursor:pointer}.client-nav button span{margin-left:auto;font-size:14px;color:#999}.client-nav button:hover,.client-nav button.active{background:#f2f5f4;color:#1e2724}.client-nav button.active{font-weight:700}.client-nav button.active:before{content:'';width:3px;height:16px;background:var(--client-accent);border-radius:4px}.client-side-bottom{margin-top:auto;border-top:1px solid var(--line);padding:17px 6px 0}.client-user{display:flex;align-items:center;gap:9px}.client-user-avatar{width:30px;height:30px;border-radius:50%;background:#eef1f0;display:grid;place-items:center;font-size:14px;font-weight:800}.client-user b,.client-user span{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-user b{font-size:14px}.client-user span{font-size:14px;color:var(--muted);margin-top:2px}.client-signout{margin-top:11px;width:100%}.client-main{padding:34px 42px 70px;min-width:0}.client-page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:30px}.client-page-head h1{font-size:29px;line-height:1.16;letter-spacing:-.035em;margin:5px 0 7px;max-width:720px}.client-page-head p{color:var(--muted);font-size:14px;max-width:680px;margin:0;line-height:1.55}.client-head-actions{padding-top:7px}.client-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:28px}.client-stat{padding:18px 20px;border-right:1px solid var(--line)}.client-stat:last-child{border-right:0}.client-stat span,.client-stat small{display:block}.client-stat span{text-transform:uppercase;letter-spacing:.07em;font-size:14px;color:#8a9096;font-weight:700}.client-stat b{display:block;font-size:23px;letter-spacing:-.035em;margin:7px 0 3px}.client-stat small{font-size:14px;color:var(--muted)}.client-two-col{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.65fr);gap:24px}.client-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:11px}.client-section-head h2,.client-context-card h2{margin:4px 0 0;font-size:17px;letter-spacing:-.02em}.client-opportunity-list{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.client-opportunity-row{display:grid;grid-template-columns:minmax(270px,1.6fr) 110px 80px 115px auto;gap:14px;align-items:center;padding:16px 17px;border-bottom:1px solid #eceff0;cursor:pointer}.client-opportunity-row:last-child{border-bottom:0}.client-opportunity-row:hover{background:#fbfcfc}.client-opp-titleline{display:flex;align-items:flex-start;gap:10px}.client-opp-titleline h3{font-size:14px;margin:0 0 4px}.client-opp-titleline p{font-size:14px;color:var(--muted);margin:0}.client-epc{flex:0 0 auto;background:#f0f2f1;color:#303633}.client-epc.large{width:38px;height:38px;font-size:16px}.client-opp-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.client-opp-tags span{font-size:14px;color:#69716d;background:#f4f5f5;padding:4px 6px;border-radius:5px}.client-opp-metric span,.client-opp-metric b{display:block}.client-opp-metric span{font-size:14px;text-transform:uppercase;letter-spacing:.07em;color:#969b9f}.client-opp-metric b{font-size:14px;margin-top:4px}.client-opp-actions{display:flex;gap:5px;justify-content:flex-end}.client-feedback{border:1px solid var(--line);background:white;border-radius:7px;padding:6px 8px;font-size:14px;cursor:pointer}.client-feedback:hover,.client-feedback.selected{border-color:color-mix(in srgb,var(--client-accent) 35%,#ddd);background:color-mix(in srgb,var(--client-accent) 8%,white);color:var(--client-accent)}.client-context-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;height:max-content}.client-context-group{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.client-context-group>span{display:block;font-size:14px;text-transform:uppercase;letter-spacing:.07em;color:#92989d;margin-bottom:8px}.client-chip-list,.client-big-chip-list{display:flex;flex-wrap:wrap;gap:6px}.client-chip-list span,.client-big-chip-list span{border:1px solid var(--line);border-radius:7px;padding:6px 7px;font-size:14px;background:#fafbfb}.client-big-chip-list{margin-top:16px}.client-big-chip-list span{font-size:14px;padding:8px 10px}.client-context-note{font-size:14px;color:var(--muted);line-height:1.55;background:#f6f7f7;border-radius:8px;padding:10px 11px;margin-top:18px}.client-empty{background:white;border:1px solid var(--line);border-radius:12px;padding:34px;text-align:center}.client-empty b,.client-empty span{display:block}.client-empty b{font-size:14px}.client-empty span{font-size:14px;color:var(--muted);margin-top:6px}.client-list-head{margin-top:5px}.client-criteria-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.client-criteria-lines{margin-top:18px}.client-criteria-lines>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.client-criteria-lines>div:last-child{border-bottom:0}.client-criteria-lines span{color:var(--muted)}.client-criteria-lines b{text-align:right;max-width:60%}.client-modal-bg{position:fixed;inset:0;background:rgba(10,14,12,.46);display:grid;place-items:center;padding:22px;z-index:70}.client-detail-modal{width:min(760px,100%);max-height:92vh;overflow:auto;background:white;border-radius:15px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.17)}.client-detail-head{display:flex;justify-content:space-between;gap:18px}.client-detail-head h2{font-size:22px;margin:5px 0}.client-detail-head p{font-size:14px;color:var(--muted)}.client-detail-score{display:flex;align-items:center;gap:25px;padding:17px 0;margin-top:7px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.client-detail-score>div span,.client-detail-score>div b{display:block}.client-detail-score>div span{font-size:14px;text-transform:uppercase;color:#93989d}.client-detail-score>div b{font-size:14px;margin-top:4px}.client-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:18px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.client-detail-grid>div{padding:13px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.client-detail-grid>div:nth-child(3n){border-right:0}.client-detail-grid>div:nth-last-child(-n+3){border-bottom:0}.client-detail-grid span,.client-detail-grid b{display:block}.client-detail-grid span{font-size:14px;text-transform:uppercase;color:#979ca0;letter-spacing:.06em}.client-detail-grid b{font-size:14px;margin-top:5px}.client-why{margin-top:18px;background:#f5f7f6;border-radius:9px;padding:13px}.client-why span{font-size:14px;text-transform:uppercase;color:#87908c}.client-why p{font-size:14px;line-height:1.55;margin:6px 0 0}.client-detail-footer{display:flex;justify-content:space-between;gap:12px;margin-top:20px}.client-preview-banner+.client-app-shell .client-sidebar{top:48px;height:calc(100vh - 48px)}
@media(max-width:1050px){.client-app-shell{grid-template-columns:210px 1fr}.client-main{padding:28px 24px 60px}.client-opportunity-row{grid-template-columns:minmax(240px,1fr) 90px 70px auto}.client-opp-metric:nth-of-type(4){display:none}.client-two-col{grid-template-columns:1fr}.client-context-card{order:2}}
@media(max-width:780px){.client-app-shell{display:block}.client-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.client-company-block{margin-bottom:10px}.client-nav{display:flex;overflow:auto}.client-nav button{white-space:nowrap}.client-side-bottom{display:none}.client-main{padding:22px 14px 50px}.client-page-head{display:block}.client-head-actions{margin-top:14px}.client-summary-grid{grid-template-columns:repeat(2,1fr)}.client-stat:nth-child(2){border-right:0}.client-stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.client-opportunity-row{grid-template-columns:1fr;gap:11px}.client-opp-metric{display:inline-block!important;margin-right:22px}.client-opp-actions{justify-content:flex-start}.client-criteria-grid{grid-template-columns:1fr}.client-detail-grid{grid-template-columns:1fr 1fr}.client-detail-grid>div,.client-detail-grid>div:nth-child(3n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.client-detail-grid>div:nth-child(2n){border-right:0}.client-detail-grid>div:nth-last-child(-n+2){border-bottom:0}.client-detail-footer,.client-preview-banner{flex-direction:column;align-items:flex-start}.client-preview-banner+.client-app-shell .client-sidebar{height:auto}}

/* Client portal v2 — prioritisation-first B2B workspace */
.rs2-preview{min-height:46px;background:#fff9e8;border-bottom:1px solid #eadfb5;display:flex;gap:12px;align-items:center;padding:8px 22px;font-size:14px;color:#655b32}.rs2-preview span{flex:1}.rs2-shell{min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr);background:#f7f8f7}.rs2-sidebar{background:#fff;border-right:1px solid #e5e8e6;padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.rs2-preview+.rs2-shell .rs2-sidebar{top:46px;height:calc(100vh - 46px)}.rs2-brand{padding:2px 8px 23px}.rs2-brand small{display:block;margin-top:5px;font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:#929994}.rs2-company{border-top:1px solid #eceeec;border-bottom:1px solid #eceeec;padding:16px 7px;margin-bottom:18px;display:flex;align-items:center;gap:10px}.rs2-monogram{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--client-accent) 10%,#fff);color:var(--client-accent);font-weight:800;font-size:14px;flex:0 0 auto}.rs2-company b,.rs2-company span{display:block}.rs2-company b{font-size:14px}.rs2-company span{font-size:14px;color:#7f8782;margin-top:3px;line-height:1.35}.rs2-nav{display:grid;gap:3px}.rs2-nav button{border:0;background:transparent;display:flex;align-items:center;gap:8px;padding:9px 8px;border-radius:7px;color:#5e6561;font-size:14px;cursor:pointer;text-align:left}.rs2-nav button:hover,.rs2-nav button.active{background:#f1f4f2;color:#202824}.rs2-nav button.active{font-weight:700}.rs2-nav button b{margin-left:auto;font-size:14px;font-weight:700;color:#9aa19d}.rs2-nav-dot{width:4px;height:4px;border-radius:50%;background:#c5cbc8}.rs2-nav button.active .rs2-nav-dot{height:14px;width:3px;border-radius:3px;background:var(--client-accent)}.rs2-side-footer{margin-top:auto;border-top:1px solid #eceeec;padding:16px 6px 0}.rs2-user{display:flex;gap:8px;align-items:center}.rs2-user>div{width:29px;height:29px;border-radius:50%;background:#eef1ef;display:grid;place-items:center;font-size:14px;font-weight:800}.rs2-user span b,.rs2-user span small{display:block;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs2-user span b{font-size:14px}.rs2-user span small{font-size:14px;color:#8a918d;margin-top:2px}.rs2-quiet-btn{width:100%;border:1px solid #e2e5e3;background:#fff;padding:7px 9px;border-radius:7px;margin-top:10px;font-size:14px;color:#626a65;cursor:pointer}.rs2-main{padding:34px 38px 70px;min-width:0}.rs2-page-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;margin-bottom:24px}.rs2-page-head h1{font-size:27px;letter-spacing:-.035em;line-height:1.15;margin:5px 0 7px;max-width:760px}.rs2-page-head p{margin:0;color:#727a75;max-width:720px;font-size:14px;line-height:1.55}.rs2-eyebrow{display:block;font-size:14px;text-transform:uppercase;letter-spacing:.115em;font-weight:750;color:#8b928e}.rs2-head-meta{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex-wrap:wrap;padding-top:6px}.rs2-refresh{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#7e8581;border:1px solid #e4e7e5;background:#fff;padding:7px 9px;border-radius:7px;white-space:nowrap}.rs2-refresh i{width:6px;height:6px;border-radius:50%;background:#4c9a75}.rs2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid #e4e7e5;border-radius:11px;margin-bottom:26px}.rs2-stat{padding:17px 19px;border-right:1px solid #eceeec}.rs2-stat:last-child{border-right:0}.rs2-stat span,.rs2-stat small{display:block}.rs2-stat span{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#909691;font-weight:700}.rs2-stat strong{display:block;font-size:23px;letter-spacing:-.04em;margin:6px 0 2px}.rs2-stat small{font-size:14px;color:#7f8682}.rs2-overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.65fr);gap:23px}.rs2-main-column,.rs2-side-column{min-width:0}.rs2-side-column{display:grid;align-content:start;gap:15px}.rs2-section-title{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:11px}.rs2-section-title h2{font-size:16px;letter-spacing:-.02em;margin:4px 0 0}.rs2-section-title p{font-size:14px;color:#858c88;margin:4px 0 0}.rs2-space-top{margin-top:27px}.rs2-link-btn{border:0;background:transparent;color:var(--client-accent);font-size:14px;font-weight:700;cursor:pointer;padding:3px}.rs2-link-btn.rs2-full{width:100%;border-top:1px solid #eceeec;margin-top:15px;padding-top:12px;text-align:left}.rs2-recommended{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rs2-reco-card{background:#fff;border:1px solid #e4e7e5;border-radius:10px;padding:15px;cursor:pointer;transition:border-color .15s,transform .15s}.rs2-reco-card:hover{border-color:#bfc8c2;transform:translateY(-1px)}.rs2-reco-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.rs2-reco-top>div:first-child{display:flex;align-items:center;gap:6px}.rs2-reco-card h3{font-size:14px;margin:14px 0 4px}.rs2-reco-card>p{font-size:14px;color:#7d8580;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rs2-reco-card ul{list-style:none;padding:0;margin:12px 0 13px;display:grid;gap:6px}.rs2-reco-card li{font-size:14px;color:#555d58;padding-left:13px;position:relative}.rs2-reco-card li:before{content:'•';position:absolute;left:0;color:var(--client-accent)}.rs2-reco-foot{border-top:1px solid #eff1ef;padding-top:10px;display:flex;justify-content:space-between;gap:10px;font-size:14px;color:#808783}.rs2-confidence{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:5px;background:#a8afab}.rs2-confidence.high{background:#39845f}.rs2-confidence.medium{background:#b1873c}.rs2-confidence.low{background:#8f9792}.rs2-region{font-size:14px;color:#6e7671;background:#f2f4f3;border-radius:5px;padding:4px 6px}.rs2-match{display:inline-flex;flex-direction:column;align-items:flex-end;line-height:1.05}.rs2-match b{font-size:14px;color:#3a413d}.rs2-match small{font-size:14px;color:#929894;margin-top:3px}.rs2-match.strong b{color:#245e46}.rs2-match.good b{color:#6f5b2a}.rs2-epc{display:inline-grid;place-items:center;min-width:26px;height:25px;border-radius:5px;padding:0 7px;font-size:14px;font-weight:800;background:#ecefed;color:#383e3b}.rs2-epc.epc-f,.rs2-epc.epc-g{background:#f5e6e4;color:#894139}.rs2-epc.epc-e{background:#f7efdc;color:#7c6124}.rs2-epc.epc-d{background:#e8f0e8;color:#41684b}.rs2-panel{background:#fff;border:1px solid #e4e7e5;border-radius:10px;padding:17px}.rs2-panel h3{font-size:14px;margin:4px 0 6px}.rs2-panel>p{font-size:14px;color:#7c837f;line-height:1.55;margin:0}.rs2-week-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.rs2-week-head>span{font-size:14px;color:#8c938f}.rs2-week-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #eceeec;border-left:1px solid #eceeec;margin-top:13px}.rs2-week-grid div{padding:12px;border-right:1px solid #eceeec;border-bottom:1px solid #eceeec}.rs2-week-grid b,.rs2-week-grid span{display:block}.rs2-week-grid b{font-size:17px}.rs2-week-grid span{font-size:14px;color:#858c88;margin-top:2px}.rs2-chip-wrap{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}.rs2-chip-wrap span{font-size:14px;border:1px solid #e3e6e4;background:#fafbfa;border-radius:6px;padding:5px 6px}.rs2-divider{height:1px;background:#eceeec;margin:15px 0}.rs2-field-label{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#929994;font-weight:700}.rs2-profile-lines{display:grid;gap:5px;margin-top:8px}.rs2-profile-lines div{font-size:14px;color:#565e59}.rs2-update-list{background:#fff;border:1px solid #e4e7e5;border-radius:10px;overflow:hidden}.rs2-update{width:100%;border:0;border-bottom:1px solid #eef0ef;background:#fff;display:grid;grid-template-columns:31px 1fr auto;gap:10px;align-items:center;padding:11px 13px;text-align:left;cursor:pointer}.rs2-update:last-child{border-bottom:0}.rs2-update:hover{background:#fbfcfb}.rs2-update-icon{width:29px;height:29px;border-radius:7px;background:#f0f2f1;display:grid;place-items:center;font-size:14px;font-weight:800}.rs2-update span b,.rs2-update span small{display:block}.rs2-update span b{font-size:14px}.rs2-update span small{font-size:14px;color:#858c88;margin-top:3px}.rs2-update-right{text-align:right;font-size:14px;color:#737b76}.rs2-update-right small{color:#9aa09c!important}.rs2-filterbar{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-bottom:11px}.rs2-filterbar select,.rs2-filterbar input{border:1px solid #dfe3e0;background:#fff;border-radius:7px;padding:8px 9px;font-size:14px;color:#4e5651;outline:none}.rs2-filterbar select:focus,.rs2-filterbar input:focus{border-color:#aab8b0}.rs2-search{position:relative;flex:1;min-width:230px}.rs2-search span{position:absolute;left:10px;top:7px;color:#8d948f}.rs2-search input{width:100%;padding-left:27px}.rs2-clear{border:0;background:transparent;color:#848b87;font-size:14px;cursor:pointer}.rs2-table-wrap{background:#fff;border:1px solid #e2e6e3;border-radius:10px;overflow:auto}.rs2-table{width:100%;border-collapse:collapse;min-width:900px}.rs2-table th{font-size:14px;text-transform:uppercase;letter-spacing:.075em;color:#929995;background:#fafbfa;text-align:left;padding:10px 11px;border-bottom:1px solid #e8ebe9}.rs2-table td{font-size:14px;padding:11px;border-bottom:1px solid #eef0ef;vertical-align:middle;color:#59615c}.rs2-table tr:last-child td{border-bottom:0}.rs2-table tbody tr{cursor:pointer}.rs2-table tbody tr:hover td{background:#fcfdfc}.rs2-property-cell b,.rs2-property-cell span{display:block}.rs2-property-cell b{font-size:14px;color:#252b28}.rs2-property-cell span{font-size:14px;color:#8a918d;margin-top:3px}.rs2-normal{font-weight:600;color:#4a514d}.rs2-block{display:block;font-size:14px;color:#999f9b;margin-top:3px}.rs2-stage{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:14px;font-weight:700;background:#f0f2f1;color:#666e69}.rs2-stage.stage-interested{background:#eaf2ee;color:#37624f}.rs2-stage.stage-contacted{background:#e9eef5;color:#3e5b7a}.rs2-stage.stage-won{background:#e5f2e8;color:#2c6a40}.rs2-stage.stage-lost{background:#f3eceb;color:#7d514c}.rs2-saved-dot{font-size:14px;color:#9a7a31;margin-left:5px}.rs2-empty{padding:36px 20px;text-align:center;color:#818884}.rs2-empty b,.rs2-empty span{display:block}.rs2-empty b{font-size:14px;color:#414844}.rs2-empty span{font-size:14px;margin-top:5px}.rs2-map-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.55fr);gap:18px}.rs2-map-panel{background:#fff;border:1px solid #e3e6e4;border-radius:10px;padding:15px}.rs2-map-panel svg{width:100%;height:min(62vh,610px);display:block;background:#f7f9f8;border-radius:8px}.rs2-uk-shape{fill:#e8ece9;stroke:#cfd6d2;stroke-width:2}.rs2-map-pin{cursor:pointer}.rs2-map-pin circle{fill:var(--client-accent);opacity:.9;stroke:#fff;stroke-width:3}.rs2-map-pin text{fill:#fff;font-size:14px;font-weight:800}.rs2-map-note{font-size:14px;color:#8c938f;margin-top:8px}.rs2-map-list{background:#fff;border:1px solid #e3e6e4;border-radius:10px;overflow:hidden;height:max-content}.rs2-map-list button{border:0;border-bottom:1px solid #edf0ee;background:#fff;width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 14px;text-align:left;cursor:pointer}.rs2-map-list button:last-child{border-bottom:0}.rs2-map-list button:hover{background:#fafbfa}.rs2-map-list span b,.rs2-map-list span small{display:block}.rs2-map-list span b{font-size:14px}.rs2-map-list span small{font-size:14px;color:#929995;margin-top:3px}.rs2-map-list strong{font-size:17px}.rs2-pipeline{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:9px;overflow:auto;padding-bottom:6px}.rs2-pipe-col{background:#f0f2f1;border:1px solid #e2e5e3;border-radius:10px;min-height:390px}.rs2-pipe-head{display:flex;align-items:center;justify-content:space-between;padding:11px;border-bottom:1px solid #e2e5e3}.rs2-pipe-head>b{font-size:14px;color:#8b928e}.rs2-pipe-body{padding:7px;display:grid;gap:7px;align-content:start}.rs2-pipe-card{background:#fff;border:1px solid #dfe3e0;border-radius:8px;padding:10px;cursor:pointer}.rs2-pipe-card:hover{border-color:#b8c3bd}.rs2-pipe-card>div:first-child b,.rs2-pipe-card>div:first-child span{display:block}.rs2-pipe-card>div:first-child b{font-size:14px}.rs2-pipe-card>div:first-child span{font-size:14px;color:#8b928e;margin-top:3px}.rs2-pipe-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;border-top:1px solid #eef0ef;margin-top:9px;padding-top:8px}.rs2-pipe-meta span{font-size:14px;color:#7c847f}.rs2-pipe-meta .rs2-epc{height:20px;min-width:21px;padding:0 5px;font-size:14px}.rs2-pipe-empty{font-size:14px;color:#949b96;padding:12px;text-align:center}.rs2-coverage-grid,.rs2-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.rs2-territory-list{margin-top:14px;border-top:1px solid #eceeec}.rs2-territory-list>div,.rs2-account-lines>div,.rs2-criteria-lines>div{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid #eceeec}.rs2-territory-list span b,.rs2-territory-list span small{display:block}.rs2-territory-list span b,.rs2-account-lines b,.rs2-criteria-lines b{font-size:14px}.rs2-territory-list span small{font-size:14px;color:#949a96;margin-top:3px}.rs2-territory-list strong{font-size:14px}.rs2-account-lines,.rs2-criteria-lines{margin-top:14px}.rs2-account-lines span,.rs2-criteria-lines span{font-size:14px;color:#8c938f}.rs2-account-lines b,.rs2-criteria-lines b{text-align:right;max-width:62%}.rs2-trust-note{font-size:14px;color:#737b76;background:#f5f7f6;border-radius:7px;padding:10px;margin-top:14px;line-height:1.5}.rs2-security-list{display:grid;gap:8px;margin-top:15px}.rs2-security-list div{font-size:14px;color:#59615c}.rs2-security-list i{font-style:normal;color:#3d7a5b;margin-right:7px}.rs2-modal-bg{position:fixed;inset:0;background:rgba(15,19,17,.48);z-index:90;display:grid;place-items:center;padding:18px}.rs2-detail{width:min(1020px,96vw);max-height:94vh;overflow:auto;background:#fff;border-radius:13px;box-shadow:0 28px 80px rgba(0,0,0,.22)}.rs2-detail-head{padding:21px 23px 16px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e8ebe9}.rs2-detail-tags{display:flex;align-items:center;gap:7px}.rs2-detail-tags>span:not(.rs2-epc):not(.rs2-stage){font-size:14px;color:#7d8580}.rs2-detail-head h2{font-size:22px;letter-spacing:-.03em;margin:9px 0 4px}.rs2-detail-head p{font-size:14px;color:#858c88;margin:0}.rs2-close{width:31px;height:31px;border:1px solid #e2e5e3;background:#fff;border-radius:8px;font-size:19px;line-height:1;cursor:pointer}.rs2-detail-hero{padding:13px 23px;background:#fafbfa;border-bottom:1px solid #e8ebe9;display:flex;justify-content:space-between;gap:20px;align-items:center}.rs2-detail-hero>div:first-child{display:flex;gap:14px;align-items:center}.rs2-detail-hero>div:last-child{text-align:right}.rs2-detail-hero>div:last-child span,.rs2-detail-hero>div:last-child b{display:block}.rs2-detail-hero>div:last-child span{font-size:14px;text-transform:uppercase;letter-spacing:.07em;color:#959b97}.rs2-detail-hero>div:last-child b{font-size:14px;margin-top:3px}.rs2-confidence-pill{display:inline-flex;align-items:center;gap:5px;font-size:14px;color:#58605b}.rs2-confidence-pill i{width:7px;height:7px;border-radius:50%;background:#a8afab}.rs2-confidence-pill.high i{background:#3e8a65}.rs2-confidence-pill.medium i{background:#b28a3f}.rs2-detail-cols{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.6fr)}.rs2-detail-main{padding:4px 23px 23px}.rs2-detail-side{border-left:1px solid #e8ebe9;background:#fbfcfb;padding:4px 20px 22px}.rs2-detail-section{padding-top:19px}.rs2-detail-section h3{font-size:14px;margin:4px 0 12px}.rs2-why-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.rs2-why-list li{font-size:14px;border:1px solid #e6e9e7;border-radius:7px;padding:9px;background:#fbfcfb;color:#515954}.rs2-why-list i{font-style:normal;color:#3e7d5e;margin-right:7px}.rs2-fact-grid,.rs2-evidence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #e5e8e6;border-radius:8px;overflow:hidden}.rs2-fact-grid>div,.rs2-evidence>div{padding:11px;border-right:1px solid #e8ebe9;border-bottom:1px solid #e8ebe9}.rs2-fact-grid>div:nth-child(3n),.rs2-evidence>div:nth-child(3n){border-right:0}.rs2-fact-grid>div:nth-last-child(-n+3),.rs2-evidence>div:nth-last-child(-n+3){border-bottom:0}.rs2-fact-grid span,.rs2-fact-grid b,.rs2-evidence span,.rs2-evidence b{display:block}.rs2-fact-grid span,.rs2-evidence span{font-size:14px;text-transform:uppercase;letter-spacing:.07em;color:#969c98}.rs2-fact-grid b,.rs2-evidence b{font-size:14px;margin-top:4px}.rs2-evidence-note{font-size:14px;color:#717975;line-height:1.55;background:#f4f6f5;border-radius:7px;padding:9px;margin:9px 0 0}.rs2-source-link{display:inline-block;font-size:14px;color:var(--client-accent);font-weight:700;margin-top:9px;text-decoration:none}.rs2-timeline{display:grid;gap:0}.rs2-timeline>div{display:grid;grid-template-columns:12px 1fr auto;gap:9px;position:relative;padding-bottom:13px}.rs2-timeline>div:not(:last-child):before{content:'';position:absolute;left:4px;top:10px;bottom:0;width:1px;background:#dfe4e1}.rs2-timeline>div>i{width:9px;height:9px;border-radius:50%;background:var(--client-accent);margin-top:2px;z-index:1}.rs2-timeline span b,.rs2-timeline span small{display:block}.rs2-timeline span b{font-size:14px}.rs2-timeline span small{font-size:14px;color:#8a918d;margin-top:2px}.rs2-timeline time{font-size:14px;color:#8e9591}.rs2-contact-lines{border-top:1px solid #e5e8e6}.rs2-contact-lines>div{padding:10px 0;border-bottom:1px solid #e5e8e6}.rs2-contact-lines span,.rs2-contact-lines b{display:block}.rs2-contact-lines span{font-size:14px;text-transform:uppercase;letter-spacing:.07em;color:#979d99}.rs2-contact-lines b{font-size:14px;margin-top:3px;word-break:break-word}.rs2-contact-actions{display:flex;gap:6px;margin-top:10px}.rs2-contact-actions a,.rs2-contact-actions button{flex:1;text-align:center;text-decoration:none;border:1px solid #dfe3e0;background:#fff;border-radius:7px;padding:7px;font-size:14px;color:#4f5752;cursor:pointer}.rs2-stage-picker{display:grid;gap:5px}.rs2-stage-picker button{border:1px solid #dfe3e0;background:#fff;border-radius:7px;padding:8px;text-align:left;font-size:14px;cursor:pointer;color:#5e6661}.rs2-stage-picker button:hover,.rs2-stage-picker button.active{border-color:color-mix(in srgb,var(--client-accent) 35%,#dfe3e0);background:color-mix(in srgb,var(--client-accent) 7%,#fff);color:var(--client-accent);font-weight:700}.rs2-save-btn{width:100%;border:1px solid #dfe3e0;background:#fff;border-radius:7px;padding:8px;margin-top:8px;font-size:14px;cursor:pointer}.rs2-save-btn.active{background:#faf4e5;color:#806223;border-color:#ead8aa}.rs2-preview-note{font-size:14px;color:#8c938f;line-height:1.45;margin-top:8px}
@media(max-width:1100px){.rs2-shell{grid-template-columns:205px 1fr}.rs2-main{padding:28px 24px 60px}.rs2-overview-grid{grid-template-columns:1fr}.rs2-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.rs2-recommended{grid-template-columns:repeat(2,minmax(0,1fr))}.rs2-map-grid{grid-template-columns:1fr}.rs2-detail-cols{grid-template-columns:1fr}.rs2-detail-side{border-left:0;border-top:1px solid #e8ebe9;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}}
@media(max-width:760px){.rs2-shell{display:block}.rs2-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid #e5e8e6}.rs2-company{margin-bottom:10px}.rs2-nav{display:flex;overflow:auto;padding-bottom:2px}.rs2-nav button{white-space:nowrap}.rs2-side-footer{display:none}.rs2-main{padding:22px 13px 50px}.rs2-page-head{display:block}.rs2-head-meta{justify-content:flex-start;margin-top:12px}.rs2-kpis{grid-template-columns:repeat(2,1fr)}.rs2-stat:nth-child(2){border-right:0}.rs2-stat:nth-child(-n+2){border-bottom:1px solid #eceeec}.rs2-recommended,.rs2-side-column,.rs2-coverage-grid,.rs2-account-grid{grid-template-columns:1fr}.rs2-map-panel svg{height:480px}.rs2-detail{width:98vw}.rs2-detail-hero,.rs2-detail-head{align-items:flex-start}.rs2-detail-hero{flex-direction:column}.rs2-detail-hero>div:last-child{text-align:left}.rs2-detail-side{grid-template-columns:1fr}.rs2-why-list{grid-template-columns:1fr}.rs2-fact-grid,.rs2-evidence{grid-template-columns:repeat(2,1fr)}.rs2-fact-grid>div,.rs2-evidence>div,.rs2-fact-grid>div:nth-child(3n),.rs2-evidence>div:nth-child(3n){border-right:1px solid #e8ebe9;border-bottom:1px solid #e8ebe9}.rs2-fact-grid>div:nth-child(2n),.rs2-evidence>div:nth-child(2n){border-right:0}.rs2-fact-grid>div:nth-last-child(-n+2),.rs2-evidence>div:nth-last-child(-n+2){border-bottom:0}.rs2-preview{align-items:flex-start;flex-direction:column}.rs2-preview+.rs2-shell .rs2-sidebar{height:auto}}

/* =========================================================
   RetrofitSignal — Client Visual v3
   Visual-only layer. No data, auth, RLS or workflow changes.
   ========================================================= */
:root{
  --rs3-ink:#14201c;
  --rs3-muted:#6e7a74;
  --rs3-line:#dfe6e2;
  --rs3-canvas:#f3f6f4;
  --rs3-panel:#ffffff;
  --rs3-soft:#f7f9f8;
  --rs3-shadow:0 18px 50px rgba(20,43,34,.07),0 2px 7px rgba(20,43,34,.035);
  --rs3-shadow-soft:0 8px 26px rgba(20,43,34,.055);
}

/* ---------- Animated login, visual only ---------- */
.login-page-v3{
  position:relative;overflow:hidden;min-height:100vh;padding:0;background:#0e1714;color:#eef5f1;isolation:isolate;
}
.login-atmosphere{position:fixed;inset:0;z-index:-2;overflow:hidden;background:
  radial-gradient(circle at 16% 18%,rgba(91,151,123,.12),transparent 29%),
  radial-gradient(circle at 78% 72%,rgba(61,111,91,.12),transparent 31%),
  linear-gradient(135deg,#0c1512 0%,#111c18 55%,#0d1714 100%)}
.login-atmosphere:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.025),transparent 36%,rgba(255,255,255,.018));pointer-events:none}
.login-orb{position:absolute;border-radius:999px;filter:blur(80px);opacity:.34;will-change:transform;animation:rs3Float 18s ease-in-out infinite alternate}
.login-orb.orb-a{width:360px;height:360px;left:-90px;top:10%;background:#5ca684}
.login-orb.orb-b{width:430px;height:430px;right:-120px;bottom:-80px;background:#32644f;animation-duration:23s;animation-delay:-5s}
.login-orb.orb-c{width:220px;height:220px;left:55%;top:12%;background:#8bb4a2;opacity:.15;animation-duration:20s;animation-delay:-11s}
.login-grid{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 88%)}
@keyframes rs3Float{0%{transform:translate3d(-2%,-2%,0) scale(.96)}50%{transform:translate3d(6%,5%,0) scale(1.07)}100%{transform:translate3d(-1%,8%,0) scale(1.02)}}
.login-stage{width:min(1180px,calc(100% - 44px));min-height:100vh;margin:auto;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(380px,.72fr);gap:70px;align-items:center;padding:58px 0}
.login-story{min-height:620px;display:flex;flex-direction:column;justify-content:space-between;padding:18px 4px}
.login-story-brand{display:flex;align-items:center;gap:18px}.login-story-brand .brand{margin:0;color:#f7fbf9;font-size:22px}.login-story-brand .brand span{color:#8ec0aa}.login-story-brand>span{padding-left:18px;border-left:1px solid rgba(255,255,255,.14);font-size:14px;color:#8f9f97;letter-spacing:.02em}
.login-story-copy{max-width:650px;margin:78px 0 40px}.login-kicker{display:inline-flex;align-items:center;gap:9px;color:#a9b8b0;font-size:14px;font-weight:650;letter-spacing:.025em}.login-kicker i,.login-live i{width:7px;height:7px;border-radius:50%;background:#65be92;box-shadow:0 0 0 5px rgba(101,190,146,.09)}
.login-story-copy h2{font-size:clamp(42px,5vw,68px);line-height:.99;letter-spacing:-.055em;font-weight:680;margin:22px 0 24px;max-width:750px;color:#f4f8f6}.login-story-copy p{font-size:17px;line-height:1.65;max-width:610px;color:#9ca9a3;margin:0}
.login-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1);border-radius:15px;overflow:hidden;max-width:650px}.login-proof-grid>div{background:rgba(15,27,22,.84);padding:18px 20px}.login-proof-grid strong,.login-proof-grid span{display:block}.login-proof-grid strong{font-size:14px;color:#eef5f1}.login-proof-grid span{font-size:14px;color:#87968f;margin-top:4px;text-transform:uppercase;letter-spacing:.08em}
.login-signal-card{position:absolute;left:calc(50% - 100px);bottom:80px;width:300px;padding:15px;border-radius:16px;border:1px solid rgba(255,255,255,.11);background:rgba(18,31,26,.72);backdrop-filter:blur(18px);box-shadow:0 28px 70px rgba(0,0,0,.18);transform:rotate(-2deg)}
.login-signal-top,.login-signal-foot{display:flex;justify-content:space-between;align-items:center;gap:10px}.login-signal-top{padding-bottom:11px;border-bottom:1px solid rgba(255,255,255,.08);font-size:14px;color:#819088;text-transform:uppercase;letter-spacing:.07em}.login-signal-top b{font-size:14px;color:#8fc4ab;text-transform:none;letter-spacing:0}.login-signal-line{display:grid;grid-template-columns:7px 1fr auto;gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}.login-signal-line>i{width:6px;height:6px;border-radius:50%;background:#68aa8a}.login-signal-line span b,.login-signal-line span small{display:block}.login-signal-line span b{font-size:14px;color:#e6eeea}.login-signal-line span small{font-size:14px;color:#77867e;margin-top:2px}.login-signal-line>strong{font-size:14px;color:#cce1d6}.login-signal-foot{padding-top:11px;font-size:14px;color:#77867e}.login-live{display:inline-flex;align-items:center;gap:7px;color:#99b8a8}.login-live i{width:5px;height:5px;box-shadow:none}
.login-card-v3{width:100%;max-width:450px;justify-self:end;background:rgba(252,254,253,.97);border:1px solid rgba(255,255,255,.72);border-radius:24px;padding:38px 38px 32px;color:#16201c;box-shadow:0 38px 100px rgba(0,0,0,.28);backdrop-filter:blur(24px)}
.login-card-v3 .eyebrow{font-size:14px;color:#6d7973;letter-spacing:.14em}.login-card-v3 .title{font-size:34px!important;letter-spacing:-.045em;margin:8px 0 8px}.login-card-v3 .subtitle{font-size:14px;line-height:1.55;color:#6d7872;margin-bottom:26px}.login-card-v3 .form-row{margin:15px 0 0}.login-card-v3 .form-row label{font-size:14px;color:#53605a;margin-bottom:2px}.login-card-v3 .input{height:47px;border-radius:11px;border-color:#dce4e0;background:#f8faf9;padding:0 13px;transition:.18s ease;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}.login-card-v3 .input:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,#dce4e0);background:white;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 9%,transparent)}
.login-submit{height:48px;width:100%;margin-top:20px;border-radius:11px!important;display:flex;align-items:center;justify-content:space-between;padding:0 16px!important;box-shadow:0 9px 22px rgba(31,77,61,.18)}.login-submit b{font-size:17px;font-weight:500;transition:transform .18s ease}.login-submit:hover b{transform:translateX(3px)}
.login-security-note{display:flex;gap:10px;align-items:flex-start;border-top:1px solid #e8edea;margin-top:25px;padding-top:18px;color:#69746f}.login-security-note>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#edf3f0;color:#37624f;font-size:14px}.login-security-note b,.login-security-note small{display:block}.login-security-note b{font-size:14px;color:#4e5a54}.login-security-note small{font-size:14px;line-height:1.45;margin-top:3px}.login-mobile-brand{display:none}

/* ---------- Client shell ---------- */
.visual-v3{background:var(--rs3-canvas);color:var(--rs3-ink)}
.visual-v3 .rs2-shell{grid-template-columns:236px minmax(0,1fr);background:var(--rs3-canvas)}
.visual-v3 .rs2-sidebar{background:rgba(251,253,252,.94);border-right:1px solid #dfe5e2;padding:26px 16px 19px;backdrop-filter:blur(18px);box-shadow:5px 0 30px rgba(30,50,41,.025)}
.visual-v3 .rs2-brand{padding:1px 10px 24px}.visual-v3 .rs2-brand .brand{font-size:19px;letter-spacing:-.03em;color:#13201b}.visual-v3 .rs2-brand .brand span{color:var(--client-accent)}.visual-v3 .rs2-brand small{font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#9aa39e;margin-top:6px;display:block}
.visual-v3 .rs2-company{border:1px solid #e1e7e4;background:linear-gradient(145deg,#fff,#f7faf8);border-radius:13px;padding:11px;margin:0 2px 22px;box-shadow:0 4px 16px rgba(22,48,37,.035)}.visual-v3 .rs2-monogram{width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--client-accent) 10%,#fff);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--client-accent) 12%,#e4ebe7);font-size:14px}.visual-v3 .rs2-company b{font-size:14px;color:#26332d}.visual-v3 .rs2-company span{font-size:14px;color:#86918b;line-height:1.4;margin-top:3px}
.visual-v3 .rs2-nav{gap:4px}.visual-v3 .rs2-nav button{height:40px;border-radius:10px;padding:0 10px;font-size:14px;color:#66716b;transition:background .16s ease,color .16s ease,transform .16s ease}.visual-v3 .rs2-nav button:hover{background:#f0f4f2;color:#25342d;transform:translateX(1px)}.visual-v3 .rs2-nav button.active{background:color-mix(in srgb,var(--client-accent) 8%,#f8faf9);color:var(--client-accent);font-weight:720;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--client-accent) 10%,#e5ebe8)}.visual-v3 .rs2-nav button.active:before{display:none}.visual-v3 .rs2-nav-dot{width:6px;height:6px;border-radius:50%;background:#c4ccc8;flex:0 0 auto}.visual-v3 .rs2-nav button.active .rs2-nav-dot{background:var(--client-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--client-accent) 10%,transparent)}.visual-v3 .rs2-nav button b{margin-left:auto;min-width:21px;padding:3px 6px;border-radius:999px;background:#edf1ef;color:#7d8782;text-align:center;font-size:14px}
.visual-v3 .rs2-side-footer{border-top:1px solid #e5eae7;padding:15px 4px 0}.visual-v3 .rs2-user>div{width:31px;height:31px;border-radius:9px;background:#eef3f0;color:#496052}.visual-v3 .rs2-user b{font-size:14px}.visual-v3 .rs2-user small{font-size:14px}.visual-v3 .rs2-quiet-btn{font-size:14px;border-radius:8px}
.visual-v3 .rs2-main{padding:34px 38px 64px;max-width:1540px;width:100%;margin:0 auto}
.visual-v3 .rs2-page-head{margin-bottom:25px;align-items:flex-end}.visual-v3 .rs2-eyebrow{font-size:14px;letter-spacing:.13em;color:#87928c;font-weight:750}.visual-v3 .rs2-page-head h1{font-size:32px;line-height:1.06;letter-spacing:-.047em;color:#17231e;margin:6px 0 7px;font-weight:690}.visual-v3 .rs2-page-head p{font-size:14px;line-height:1.55;color:#78837d;max-width:650px;margin:0}.visual-v3 .rs2-refresh{font-size:14px;border:1px solid #e0e6e3;background:#fff;border-radius:999px;padding:7px 10px;color:#7b8680;box-shadow:0 2px 10px rgba(31,53,43,.03)}.visual-v3 .rs2-refresh i{background:#55a77e;box-shadow:0 0 0 4px rgba(85,167,126,.1)}
.visual-v3 .rs2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 26px;background:transparent;border:0}.visual-v3 .rs2-stat{position:relative;background:#fff;border:1px solid #e0e6e3;border-radius:14px;padding:17px 18px;overflow:hidden;box-shadow:0 8px 24px rgba(21,44,34,.035)}.visual-v3 .rs2-stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:color-mix(in srgb,var(--client-accent) 42%,#dbe4df)}.visual-v3 .rs2-stat span{font-size:14px;color:#7c8781;text-transform:uppercase;letter-spacing:.075em}.visual-v3 .rs2-stat strong{font-size:29px;line-height:1;margin-top:13px;letter-spacing:-.055em;color:#1a2721}.visual-v3 .rs2-stat small{font-size:14px;color:#9aa39e;margin-top:7px;line-height:1.35}
.visual-v3 .rs2-overview-grid{grid-template-columns:minmax(0,1.65fr) minmax(255px,.55fr);gap:24px}.visual-v3 .rs2-section-title{margin-bottom:13px;align-items:flex-end}.visual-v3 .rs2-section-title h2{font-size:16px;letter-spacing:-.025em;margin:3px 0 3px;color:#243029}.visual-v3 .rs2-section-title p{font-size:14px;color:#8a948f;margin:0}.visual-v3 .rs2-link-btn{font-size:14px;color:var(--client-accent);padding:6px 0;background:transparent}
.visual-v3 .rs2-recommended{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.visual-v3 .rs2-reco-card{position:relative;padding:17px 17px 14px;border-radius:15px;border:1px solid #dee5e1;background:linear-gradient(180deg,#fff 0%,#fbfcfb 100%);box-shadow:var(--rs3-shadow-soft);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;overflow:hidden}.visual-v3 .rs2-reco-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--client-accent),transparent);opacity:.25}.visual-v3 .rs2-reco-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--client-accent) 24%,#dfe5e2);box-shadow:0 18px 42px rgba(20,43,34,.09)}.visual-v3 .rs2-reco-card h3{font-size:14px;margin:15px 0 4px;letter-spacing:-.02em}.visual-v3 .rs2-reco-card>p{font-size:14px;color:#818b86;line-height:1.4}.visual-v3 .rs2-reco-card ul{padding-left:14px;margin:13px 0 13px;display:grid;gap:6px}.visual-v3 .rs2-reco-card li{font-size:14px;color:#5d6963;line-height:1.4}.visual-v3 .rs2-reco-foot{font-size:14px;color:#87928c;padding-top:10px;border-top:1px solid #edf0ee}.visual-v3 .rs2-region{font-size:14px;color:#7d8882;margin-left:7px}.visual-v3 .rs2-match{border-radius:8px;padding:5px 7px;background:#f5f7f6}.visual-v3 .rs2-match b{font-size:14px}.visual-v3 .rs2-match small{font-size:14px}
.visual-v3 .rs2-panel{border:1px solid #dfe6e2;border-radius:15px;background:#fff;padding:17px;box-shadow:0 7px 24px rgba(22,44,35,.035)}.visual-v3 .rs2-panel h3{font-size:14px;letter-spacing:-.02em;margin:5px 0 5px}.visual-v3 .rs2-panel p{font-size:14px;line-height:1.55;color:#7b8680}.visual-v3 .rs2-week{background:linear-gradient(145deg,color-mix(in srgb,var(--client-accent) 7%,#fff),#fff)}.visual-v3 .rs2-week-grid{gap:7px}.visual-v3 .rs2-week-grid>div{background:#fff;border:1px solid #e4e9e6;border-radius:10px;padding:12px 9px}.visual-v3 .rs2-week-grid b{font-size:19px}.visual-v3 .rs2-week-grid span{font-size:14px;color:#8d9691}
.visual-v3 .rs2-update-list{border:1px solid #dfe5e2;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 6px 18px rgba(22,44,35,.03)}.visual-v3 .rs2-update{padding:12px 14px;transition:background .15s ease}.visual-v3 .rs2-update:hover{background:#f8faf9}.visual-v3 .rs2-update-icon{width:28px;height:28px;border-radius:8px;background:#f1f4f2;font-size:14px}.visual-v3 .rs2-update span b{font-size:14px}.visual-v3 .rs2-update span small{font-size:14px}.visual-v3 .rs2-update-right{font-size:14px}.visual-v3 .rs2-chip-wrap span{background:#f4f7f5;border-color:#e2e7e4;border-radius:999px;font-size:14px;padding:5px 8px}

/* ---------- Opportunity list ---------- */
.visual-v3 .rs2-filterbar{position:sticky;top:12px;z-index:12;display:grid;grid-template-columns:minmax(220px,1.7fr) repeat(4,minmax(110px,.55fr)) auto;gap:8px;padding:10px;margin-bottom:11px;border:1px solid rgba(219,226,222,.9);border-radius:13px;background:rgba(250,252,251,.92);backdrop-filter:blur(15px);box-shadow:0 10px 30px rgba(20,43,34,.045)}.visual-v3 .rs2-filterbar select,.visual-v3 .rs2-search{height:37px;border-radius:9px;border:1px solid #e0e6e3;background:#fff;font-size:14px;color:#59655f}.visual-v3 .rs2-search input{font-size:14px}.visual-v3 .rs2-search span{color:#9aa49f}.visual-v3 .rs2-clear{font-size:14px;border-radius:9px;padding:0 11px}
.visual-v3 .rs2-table-wrap{border:1px solid #dfe5e2;border-radius:14px;background:#fff;box-shadow:0 8px 27px rgba(22,44,35,.035);overflow:auto}.visual-v3 .rs2-table{font-size:14px}.visual-v3 .rs2-table th{background:#f8faf9;color:#8c9691;font-size:14px;letter-spacing:.085em;padding:11px 12px;border-color:#e7ece9}.visual-v3 .rs2-table td{padding:13px 12px;border-color:#edf0ee;color:#59645f}.visual-v3 .rs2-table tbody tr{transition:background .13s ease}.visual-v3 .rs2-table tbody tr:hover{background:#f8faf9}.visual-v3 .rs2-property-cell b{font-size:14px;color:#25322c}.visual-v3 .rs2-property-cell span{font-size:14px;color:#8e9792;margin-top:4px}.visual-v3 .rs2-normal{font-size:14px;color:#44514b}.visual-v3 .rs2-block{font-size:14px;color:#969f9a;margin-top:3px}.visual-v3 .rs2-epc{min-width:28px;height:28px;border-radius:7px;font-size:14px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.035)}.visual-v3 .rs2-stage{font-size:14px;padding:5px 7px;border-radius:999px}

/* ---------- Map: same region-click functionality, richer visual treatment ---------- */
.visual-v3 .rs2-map-grid{grid-template-columns:minmax(0,1.7fr) minmax(230px,.48fr);gap:14px}.visual-v3 .rs2-map-panel{position:relative;min-height:610px;border:1px solid #dce4df;border-radius:18px;background:
  radial-gradient(circle at 64% 22%,color-mix(in srgb,var(--client-accent) 7%,transparent),transparent 28%),
  linear-gradient(180deg,#f9fbfa,#f0f4f2);overflow:hidden;box-shadow:var(--rs3-shadow)}.visual-v3 .rs2-map-panel:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(73,97,86,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(73,97,86,.045) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),rgba(0,0,0,.15));pointer-events:none}.visual-v3 .rs2-map-panel:after{content:"Opportunity density";position:absolute;left:18px;top:17px;padding:7px 10px;border-radius:999px;border:1px solid #dde5e0;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);font-size:14px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#77837d}.visual-v3 .rs2-map-panel svg{position:relative;z-index:1;height:565px;filter:drop-shadow(0 18px 26px rgba(23,50,38,.08))}.visual-v3 .rs2-uk-shape{fill:#f9fbfa;stroke:#cbd7d1;stroke-width:1.5}.visual-v3 .rs2-map-pin{cursor:pointer;transition:filter .16s ease}.visual-v3 .rs2-map-pin circle{fill:var(--client-accent);stroke:#fff;stroke-width:4;filter:drop-shadow(0 8px 10px rgba(20,56,41,.18));transition:r .16s ease,filter .16s ease}.visual-v3 .rs2-map-pin:hover circle{filter:drop-shadow(0 10px 14px rgba(20,56,41,.3)) brightness(1.08)}.visual-v3 .rs2-map-pin text{fill:#fff;font-size:14px;font-weight:800;pointer-events:none}.visual-v3 .rs2-map-note{position:absolute;left:18px;bottom:17px;z-index:2;margin:0;padding:8px 11px;border:1px solid #dde5e1;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-radius:9px;font-size:14px;color:#77827c}.visual-v3 .rs2-map-list{border:1px solid #dfe6e2;border-radius:15px;background:#fff;box-shadow:0 7px 24px rgba(22,44,35,.035);padding:7px;height:max-content}.visual-v3 .rs2-map-list:before{content:"Territories";display:block;padding:9px 9px 11px;font-size:14px;text-transform:uppercase;letter-spacing:.1em;color:#8d9691;font-weight:750}.visual-v3 .rs2-map-list button{border:0;border-radius:9px;margin-bottom:3px;padding:10px 9px;transition:.15s ease}.visual-v3 .rs2-map-list button:hover{background:#f3f7f5}.visual-v3 .rs2-map-list span b{font-size:14px;color:#344039}.visual-v3 .rs2-map-list span small{font-size:14px}.visual-v3 .rs2-map-list strong{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#f1f5f3;font-size:14px;color:var(--client-accent)}

/* ---------- Pipeline: modern board, same click/status functionality ---------- */
.visual-v3 .rs2-pipeline{display:grid;grid-template-columns:repeat(5,minmax(205px,1fr));gap:11px;overflow:auto;padding:2px 1px 16px;scrollbar-width:thin}.visual-v3 .rs2-pipe-col{position:relative;min-height:510px;border:1px solid #dfe5e2;border-radius:14px;background:#eef2f0;overflow:hidden;box-shadow:0 6px 20px rgba(22,44,35,.025)}.visual-v3 .rs2-pipe-col:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:color-mix(in srgb,var(--client-accent) 40%,#d9e1dd)}.visual-v3 .rs2-pipe-head{position:sticky;top:0;z-index:2;padding:13px 12px 11px;border-bottom:1px solid #dfe5e2;background:rgba(247,249,248,.94);backdrop-filter:blur(10px)}.visual-v3 .rs2-pipe-head>b{display:grid;place-items:center;min-width:25px;height:25px;border-radius:8px;background:#fff;border:1px solid #e1e6e3;color:#65716b;font-size:14px}.visual-v3 .rs2-pipe-body{padding:9px;gap:8px}.visual-v3 .rs2-pipe-card{position:relative;border:1px solid #dde4e0;border-radius:11px;background:#fff;padding:12px;box-shadow:0 5px 16px rgba(22,44,35,.04);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.visual-v3 .rs2-pipe-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--client-accent) 20%,#dbe4df);box-shadow:0 10px 24px rgba(22,44,35,.075)}.visual-v3 .rs2-pipe-card>div:first-child b{font-size:14px;color:#26332d;line-height:1.35}.visual-v3 .rs2-pipe-card>div:first-child span{font-size:14px;margin-top:5px}.visual-v3 .rs2-pipe-meta{gap:7px;margin-top:11px;padding-top:10px}.visual-v3 .rs2-pipe-meta span{font-size:14px;color:#78847e}.visual-v3 .rs2-pipe-meta .rs2-epc{height:22px;min-width:23px;padding:0 6px;font-size:14px}.visual-v3 .rs2-pipe-empty{font-size:14px;color:#949d98;padding:25px 12px;border:1px dashed #d5ddd9;border-radius:9px;background:rgba(255,255,255,.35)}

/* ---------- Detail modal ---------- */
.visual-v3 .rs2-modal-bg{background:rgba(9,16,13,.58);backdrop-filter:blur(5px)}.visual-v3 .rs2-detail{width:min(1080px,96vw);border-radius:19px;box-shadow:0 40px 100px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.45)}.visual-v3 .rs2-detail-head{padding:25px 27px 19px}.visual-v3 .rs2-detail-head h2{font-size:25px}.visual-v3 .rs2-detail-head p{font-size:14px}.visual-v3 .rs2-close{width:34px;height:34px;border-radius:10px;background:#f8faf9}.visual-v3 .rs2-detail-hero{padding:14px 27px;background:#f6f9f7}.visual-v3 .rs2-detail-cols{grid-template-columns:minmax(0,1.55fr) minmax(280px,.62fr)}.visual-v3 .rs2-detail-main{padding:3px 27px 27px}.visual-v3 .rs2-detail-side{padding:3px 23px 25px;background:#f8faf9}.visual-v3 .rs2-detail-section{padding-top:22px}.visual-v3 .rs2-detail-section h3{font-size:15px;margin-top:5px}.visual-v3 .rs2-why-list li{font-size:14px;padding:10px;border-radius:9px;background:#f8faf9}.visual-v3 .rs2-fact-grid,.visual-v3 .rs2-evidence{border-radius:10px}.visual-v3 .rs2-fact-grid>div,.visual-v3 .rs2-evidence>div{padding:13px}.visual-v3 .rs2-fact-grid b,.visual-v3 .rs2-evidence b{font-size:14px}.visual-v3 .rs2-stage-picker button{font-size:14px;padding:9px 10px;border-radius:9px}.visual-v3 .rs2-contact-actions a,.visual-v3 .rs2-contact-actions button,.visual-v3 .rs2-save-btn{font-size:14px;border-radius:9px;padding:9px}.visual-v3 .rs2-source-link{font-size:14px}

/* ---------- Shared panels / account / coverage ---------- */
.visual-v3 .rs2-coverage-grid,.visual-v3 .rs2-account-grid{gap:17px}.visual-v3 .rs2-territory-list span b,.visual-v3 .rs2-account-lines b,.visual-v3 .rs2-criteria-lines b{font-size:14px}.visual-v3 .rs2-territory-list span small{font-size:14px}.visual-v3 .rs2-account-lines span,.visual-v3 .rs2-criteria-lines span{font-size:14px}.visual-v3 .rs2-trust-note{font-size:14px;border:1px solid #e3e8e5;background:#f7f9f8;border-radius:9px}.visual-v3 .rs2-empty{padding:50px 24px}.visual-v3 .rs2-empty b{font-size:14px}.visual-v3 .rs2-empty span{font-size:14px;margin-top:6px}

/* ---------- Preview banner ---------- */
.visual-v3 .rs2-preview{background:#fff9e8;border-color:#eadcae;color:#6d5d27;box-shadow:0 4px 18px rgba(75,64,30,.035)}

/* ---------- Responsive ---------- */
@media(max-width:1100px){
  .login-stage{grid-template-columns:1fr 410px;gap:38px}.login-story-copy h2{font-size:48px}.login-signal-card{display:none}
  .visual-v3 .rs2-main{padding:29px 24px 58px}.visual-v3 .rs2-overview-grid{grid-template-columns:1fr}.visual-v3 .rs2-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-v3 .rs2-map-grid{grid-template-columns:1fr}.visual-v3 .rs2-map-list{display:grid;grid-template-columns:repeat(2,1fr)}.visual-v3 .rs2-map-list:before{grid-column:1/-1}
  .visual-v3 .rs2-filterbar{grid-template-columns:1fr repeat(2,minmax(120px,.5fr));position:static}.visual-v3 .rs2-filterbar .rs2-clear{min-height:37px}
}
@media(max-width:780px){
  .login-stage{width:min(520px,calc(100% - 30px));display:block;padding:38px 0}.login-story{display:none}.login-card-v3{max-width:none;margin:0 auto;padding:30px 25px}.login-mobile-brand{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px}.login-mobile-brand .brand{margin:0;color:#17201d}.login-mobile-brand>span{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#89938e}
  .visual-v3 .rs2-shell{display:block}.visual-v3 .rs2-sidebar{position:static;height:auto;padding:16px 13px 11px}.visual-v3 .rs2-brand{padding-bottom:13px}.visual-v3 .rs2-company{display:none}.visual-v3 .rs2-nav{display:flex;overflow:auto;gap:5px}.visual-v3 .rs2-nav button{white-space:nowrap;min-width:max-content;padding:0 11px}.visual-v3 .rs2-side-footer{display:none}.visual-v3 .rs2-main{padding:21px 13px 46px}.visual-v3 .rs2-page-head h1{font-size:27px}.visual-v3 .rs2-kpis{grid-template-columns:repeat(2,1fr)}.visual-v3 .rs2-recommended,.visual-v3 .rs2-side-column,.visual-v3 .rs2-coverage-grid,.visual-v3 .rs2-account-grid{grid-template-columns:1fr}.visual-v3 .rs2-filterbar{grid-template-columns:1fr 1fr}.visual-v3 .rs2-search{grid-column:1/-1}.visual-v3 .rs2-map-panel{min-height:500px}.visual-v3 .rs2-map-panel svg{height:470px}.visual-v3 .rs2-map-list{grid-template-columns:1fr}.visual-v3 .rs2-detail-cols{grid-template-columns:1fr}.visual-v3 .rs2-detail-side{border-left:0;border-top:1px solid #e5eae7}.visual-v3 .rs2-pipeline{grid-template-columns:repeat(5,minmax(235px,1fr))}
}
@media(max-width:520px){
  .visual-v3 .rs2-kpis{grid-template-columns:1fr}.visual-v3 .rs2-filterbar{grid-template-columns:1fr}.visual-v3 .rs2-filterbar .rs2-search{grid-column:auto}.visual-v3 .rs2-page-head{align-items:flex-start}.visual-v3 .rs2-head-meta{margin-top:12px}.visual-v3 .rs2-map-panel{min-height:420px}.visual-v3 .rs2-map-panel svg{height:395px}.visual-v3 .rs2-detail-head{padding:21px}.visual-v3 .rs2-detail-main,.visual-v3 .rs2-detail-side{padding-left:20px;padding-right:20px}.visual-v3 .rs2-fact-grid,.visual-v3 .rs2-evidence{grid-template-columns:1fr}.visual-v3 .rs2-why-list{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.login-orb{animation:none}.visual-v3 .rs2-reco-card,.visual-v3 .rs2-pipe-card,.visual-v3 .rs2-nav button{transition:none}}


/* ========================================================================== 
   CLIENT HOME V4 — premium overview treatment only; functionality unchanged
   ========================================================================== */
.visual-v4 .rs2-main{background:
  radial-gradient(circle at 72% -12%,color-mix(in srgb,var(--client-accent) 8%,transparent) 0,transparent 28%),
  linear-gradient(180deg,#f7f9f8 0%,#f6f8f7 42%,#f8f9f8 100%)}
.visual-v4 .rs4-home-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:34px;align-items:end;padding:30px 31px 28px;margin:0 0 14px;border:1px solid #dfe6e2;border-radius:21px;background:linear-gradient(128deg,#ffffff 0%,#fbfdfc 52%,color-mix(in srgb,var(--client-accent) 7%,#fff) 100%);box-shadow:0 16px 46px rgba(24,50,39,.055)}
.visual-v4 .rs4-home-hero-copy,.visual-v4 .rs4-home-hero-status{position:relative;z-index:2}
.visual-v4 .rs4-home-hero h1{max-width:780px;margin:7px 0 9px;font-size:34px;line-height:1.04;letter-spacing:-.052em;color:#17251e;font-weight:690}
.visual-v4 .rs4-home-hero p{max-width:690px;margin:0;color:#75817b;font-size:14px;line-height:1.65}
.visual-v4 .rs4-hero-actions{display:flex;align-items:center;gap:8px;margin-top:21px}
.visual-v4 .rs4-primary,.visual-v4 .rs4-secondary{height:36px;border-radius:9px;padding:0 13px;font-size:14px;font-weight:750;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.visual-v4 .rs4-primary{border:1px solid var(--client-accent);background:var(--client-accent);color:#fff;box-shadow:0 7px 16px color-mix(in srgb,var(--client-accent) 18%,transparent)}
.visual-v4 .rs4-primary span{margin-left:9px}.visual-v4 .rs4-primary:hover{transform:translateY(-1px);box-shadow:0 10px 22px color-mix(in srgb,var(--client-accent) 24%,transparent)}
.visual-v4 .rs4-secondary{border:1px solid #d9e1dd;background:rgba(255,255,255,.72);color:#4e5a54}.visual-v4 .rs4-secondary:hover{border-color:#c5d0ca;background:#fff}
.visual-v4 .rs4-home-hero-status{border:1px solid rgba(215,225,220,.88);border-radius:15px;background:rgba(255,255,255,.72);backdrop-filter:blur(16px);padding:17px 18px;box-shadow:0 12px 30px rgba(26,49,40,.04)}
.visual-v4 .rs4-live{display:flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.1em;font-size:14px;font-weight:800;color:#74817a}.visual-v4 .rs4-live i{width:7px;height:7px;border-radius:50%;background:#59aa81;box-shadow:0 0 0 4px rgba(89,170,129,.11)}
.visual-v4 .rs4-home-hero-status>strong{display:block;margin:13px 0 16px;font-size:14px;line-height:1.4;letter-spacing:-.025em;color:#25322c}
.visual-v4 .rs4-hero-meta{display:grid;grid-template-columns:1.3fr .7fr;border-top:1px solid #e6ebe8;padding-top:12px;gap:12px}.visual-v4 .rs4-hero-meta span,.visual-v4 .rs4-hero-meta b{display:block}.visual-v4 .rs4-hero-meta span{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#9aa39e}.visual-v4 .rs4-hero-meta b{font-size:14px;color:#55615b;margin-top:4px;line-height:1.35}
.visual-v4 .rs4-orb{position:absolute;border-radius:50%;filter:blur(18px);pointer-events:none;z-index:0;opacity:.45}.visual-v4 .rs4-orb-a{width:170px;height:170px;right:-42px;top:-62px;background:color-mix(in srgb,var(--client-accent) 20%,#dfece6)}.visual-v4 .rs4-orb-b{width:105px;height:105px;left:47%;bottom:-77px;background:#e8f0ec}
.visual-v4 .rs4-kpis{margin-top:0;margin-bottom:27px}.visual-v4 .rs4-kpis .rs2-stat{min-height:101px}.visual-v4 .rs4-kpis .rs2-stat:after{content:"";position:absolute;right:15px;top:16px;width:23px;height:23px;border:1px solid #e7ece9;border-radius:8px;background:linear-gradient(135deg,#fbfcfb,#f1f5f3)}
.visual-v4 .rs4-overview-grid{grid-template-columns:minmax(0,1.7fr) minmax(270px,.58fr);gap:25px}.visual-v4 .rs4-side-column{gap:14px}
.visual-v4 .rs4-empty-signal{grid-column:1/-1;min-height:255px;border:1px solid #dfe6e2;border-radius:17px;background:linear-gradient(135deg,#fff 0%,#fbfdfc 62%,color-mix(in srgb,var(--client-accent) 5%,#fff) 100%);display:grid;grid-template-columns:190px 1fr;align-items:center;padding:26px 31px;box-shadow:0 14px 38px rgba(28,52,42,.035);overflow:hidden;position:relative}
.visual-v4 .rs4-radar-visual{position:relative;width:152px;height:152px;margin:auto;display:grid;place-items:center}.visual-v4 .rs4-radar-visual span{position:absolute;border:1px solid color-mix(in srgb,var(--client-accent) 17%,#dfe6e2);border-radius:50%}.visual-v4 .rs4-radar-visual span:nth-child(1){width:54px;height:54px}.visual-v4 .rs4-radar-visual span:nth-child(2){width:100px;height:100px}.visual-v4 .rs4-radar-visual span:nth-child(3){width:146px;height:146px}.visual-v4 .rs4-radar-visual:before,.visual-v4 .rs4-radar-visual:after{content:"";position:absolute;background:#e5ebe8}.visual-v4 .rs4-radar-visual:before{width:1px;height:145px}.visual-v4 .rs4-radar-visual:after{height:1px;width:145px}.visual-v4 .rs4-radar-visual i{width:11px;height:11px;border-radius:50%;background:var(--client-accent);box-shadow:0 0 0 7px color-mix(in srgb,var(--client-accent) 11%,transparent);z-index:2;animation:rs4Pulse 2.6s ease-in-out infinite}
@keyframes rs4Pulse{0%,100%{transform:scale(.9);opacity:.72}50%{transform:scale(1.06);opacity:1}}
.visual-v4 .rs4-empty-copy h3{font-size:20px;letter-spacing:-.035em;margin:5px 0 7px;color:#26332d}.visual-v4 .rs4-empty-copy>p{font-size:14px;color:#7b8781;max-width:650px;line-height:1.6;margin:0}.visual-v4 .rs4-readiness{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}.visual-v4 .rs4-readiness>div{display:flex;gap:9px;align-items:flex-start;border:1px solid #e7ebe9;border-radius:10px;background:rgba(255,255,255,.72);padding:10px}.visual-v4 .rs4-readiness i{font-style:normal;font-size:14px;font-weight:800;color:var(--client-accent);background:color-mix(in srgb,var(--client-accent) 8%,#fff);padding:4px;border-radius:5px}.visual-v4 .rs4-readiness b,.visual-v4 .rs4-readiness small{display:block}.visual-v4 .rs4-readiness b{font-size:14px;color:#4c5953}.visual-v4 .rs4-readiness small{font-size:14px;color:#929c97;margin-top:3px;line-height:1.4}
.visual-v4 .rs4-updates-empty{min-height:106px;border:1px solid #e0e6e3;border-radius:14px;background:#fff;display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;padding:17px 18px;box-shadow:0 9px 28px rgba(24,48,39,.025)}.visual-v4 .rs4-pulse-icon{width:36px;height:36px;border-radius:11px;background:#f2f6f4;display:grid;place-items:center}.visual-v4 .rs4-pulse-icon i{width:8px;height:8px;border-radius:50%;background:#8fb5a3;box-shadow:0 0 0 5px rgba(84,153,120,.09)}.visual-v4 .rs4-updates-empty b,.visual-v4 .rs4-updates-empty span{display:block}.visual-v4 .rs4-updates-empty b{font-size:14px;color:#4a5751}.visual-v4 .rs4-updates-empty div>span{font-size:14px;color:#919a95;margin-top:4px}.visual-v4 .rs4-awaiting{font-size:14px!important;text-transform:uppercase;letter-spacing:.08em;color:#75817b!important;border:1px solid #e1e7e4;background:#f7f9f8;border-radius:999px;padding:6px 8px}
.visual-v4 .rs4-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.visual-v4 .rs4-count-badge{min-width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--client-accent) 8%,#fff);color:var(--client-accent);font-size:14px;font-weight:800}.visual-v4 .rs4-coverage-card .rs2-chip-wrap{margin-top:14px}.visual-v4 .rs4-coverage-card .rs2-link-btn span{float:right}
.visual-v4 .rs4-radar-card>p{margin-top:5px}.visual-v4 .rs4-bars{display:grid;gap:12px;margin-top:17px}.visual-v4 .rs4-bars>div>span{display:flex;justify-content:space-between;font-size:14px;color:#75817b;margin-bottom:5px}.visual-v4 .rs4-bars>div>span b{color:#4c5953}.visual-v4 .rs4-bars>div>i{display:block;height:5px;border-radius:999px;background:#edf1ef;overflow:hidden}.visual-v4 .rs4-bars em{display:block;height:100%;min-width:2px;border-radius:999px;background:linear-gradient(90deg,var(--client-accent),color-mix(in srgb,var(--client-accent) 45%,#9bb9aa));transition:width .4s ease}
.visual-v4 .rs2-week{border-radius:15px}.visual-v4 .rs2-week-grid>div{background:#fbfcfb}.visual-v4 .rs2-panel{box-shadow:0 10px 30px rgba(24,48,39,.028)}
@media(max-width:1100px){.visual-v4 .rs4-home-hero{grid-template-columns:1fr}.visual-v4 .rs4-home-hero-status{max-width:520px}.visual-v4 .rs4-overview-grid{grid-template-columns:1fr}.visual-v4 .rs4-side-column{grid-template-columns:repeat(3,minmax(0,1fr))}.visual-v4 .rs4-empty-signal{grid-template-columns:150px 1fr}.visual-v4 .rs4-radar-visual{transform:scale(.82)}}
@media(max-width:800px){.visual-v4 .rs4-home-hero{padding:23px 20px;border-radius:16px}.visual-v4 .rs4-home-hero h1{font-size:29px}.visual-v4 .rs4-side-column{grid-template-columns:1fr}.visual-v4 .rs4-empty-signal{grid-template-columns:1fr;padding:22px}.visual-v4 .rs4-radar-visual{display:none}.visual-v4 .rs4-readiness{grid-template-columns:1fr}.visual-v4 .rs4-hero-meta{grid-template-columns:1fr}.visual-v4 .rs4-hero-actions{flex-wrap:wrap}}
@media(max-width:520px){.visual-v4 .rs4-home-hero h1{font-size:25px}.visual-v4 .rs4-primary,.visual-v4 .rs4-secondary{width:100%}.visual-v4 .rs4-updates-empty{grid-template-columns:36px 1fr}.visual-v4 .rs4-awaiting{display:none}}
@media(prefers-reduced-motion:reduce){.visual-v4 .rs4-radar-visual i{animation:none}}

/* ========================================================================== 
   CLIENT INTELLIGENCE V5 — action center, intelligence, map, analytics, dark mode
   ========================================================================== */
:root{--rs5-bg:#f5f7f6;--rs5-panel:#fff;--rs5-panel-2:#f9fbfa;--rs5-text:#17201d;--rs5-muted:#76817c;--rs5-line:#dfe6e2;--rs5-line-2:#e9eeeb;--rs5-shadow:0 14px 38px rgba(28,52,42,.045);--rs5-danger:#b34b4b;--rs5-warn:#aa711d;--rs5-ok:#317655}
html[data-theme="dark"]{--rs5-bg:#0f1513;--rs5-panel:#151c19;--rs5-panel-2:#19211e;--rs5-text:#edf3f0;--rs5-muted:#93a09a;--rs5-line:#29332f;--rs5-line-2:#222b27;--rs5-shadow:0 16px 44px rgba(0,0,0,.2);--bg:#0f1513;--panel:#151c19;--text:#edf3f0;--muted:#93a09a;--line:#29332f;--soft:#202925;--accent-soft:#20332b}
body.client-portal-body.visual-v5{background:var(--rs5-bg);color:var(--rs5-text);transition:background .18s ease,color .18s ease}.visual-v5 .rs2-main,.visual-v5 .rs5-main{background:radial-gradient(circle at 78% -10%,color-mix(in srgb,var(--client-accent) 7%,transparent),transparent 29%),var(--rs5-bg);min-height:100vh}.visual-v5 .rs2-sidebar,.visual-v5 .rs5-sidebar{background:color-mix(in srgb,var(--rs5-panel) 96%,transparent);border-color:var(--rs5-line)}
.visual-v5 .rs5-nav{overflow:auto;padding-bottom:8px}.visual-v5 .rs5-nav-label{display:block;padding:16px 12px 6px;text-transform:uppercase;letter-spacing:.12em;font-size:14px;color:color-mix(in srgb,var(--rs5-muted) 82%,transparent);font-weight:800}.visual-v5 .rs5-nav button{display:grid;grid-template-columns:18px 1fr auto;align-items:center}.visual-v5 .rs5-nav-icon{font-size:14px;color:var(--rs5-muted);display:grid;place-items:center}.visual-v5 .rs5-nav button.active .rs5-nav-icon{color:var(--client-accent)}.visual-v5 .rs5-theme-mini{width:100%;border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-text);border-radius:9px;padding:8px 10px;margin-bottom:11px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:14px;cursor:pointer}.visual-v5 .rs5-theme-mini:hover{border-color:color-mix(in srgb,var(--client-accent) 40%,var(--rs5-line))}
.visual-v5 .rs5-home-hero,.visual-v5 .rs4-home-hero{background:linear-gradient(128deg,var(--rs5-panel),color-mix(in srgb,var(--rs5-panel) 94%,var(--client-accent) 6%));border-color:var(--rs5-line);box-shadow:var(--rs5-shadow)}.visual-v5 .rs4-home-hero h1,.visual-v5 h1,.visual-v5 h2,.visual-v5 h3,.visual-v5 h4{color:var(--rs5-text)}.visual-v5 .rs4-home-hero p,.visual-v5 p,.visual-v5 .rs2-page-head p{color:var(--rs5-muted)}.visual-v5 .rs4-home-hero-status{background:color-mix(in srgb,var(--rs5-panel) 84%,transparent);border-color:var(--rs5-line)}.visual-v5 .rs4-home-hero-status>strong,.visual-v5 .rs4-hero-meta b{color:var(--rs5-text)}.visual-v5 .rs4-hero-meta{border-color:var(--rs5-line)}.visual-v5 .rs4-secondary{background:var(--rs5-panel-2);border-color:var(--rs5-line);color:var(--rs5-text)}
.visual-v5 .rs2-stat,.visual-v5 .rs2-panel,.visual-v5 .rs2-table-wrap,.visual-v5 .rs5-table-wrap,.visual-v5 .rs2-detail-section{background:var(--rs5-panel);border-color:var(--rs5-line);box-shadow:var(--rs5-shadow)}.visual-v5 .rs2-stat span,.visual-v5 .rs2-stat small,.visual-v5 .rs2-eyebrow{color:var(--rs5-muted)}.visual-v5 .rs2-stat strong{color:var(--rs5-text)}.visual-v5 .rs5-stats{margin:14px 0 24px}
.visual-v5 .rs5-change-banner{width:100%;border:1px solid color-mix(in srgb,var(--client-accent) 22%,var(--rs5-line));background:color-mix(in srgb,var(--client-accent) 6%,var(--rs5-panel));color:var(--rs5-text);border-radius:13px;padding:12px 15px;margin:0 0 13px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;cursor:pointer}.visual-v5 .rs5-change-banner>span{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.visual-v5 .rs5-change-banner i{grid-row:1/3;display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:var(--client-accent);color:white;font-style:normal;font-size:14px}.visual-v5 .rs5-change-banner b{font-size:14px}.visual-v5 .rs5-change-banner small{font-size:14px;color:var(--rs5-muted);margin-top:3px}.visual-v5 .rs5-change-banner strong{font-size:14px;color:var(--client-accent);white-space:nowrap}
.visual-v5 .rs5-home-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(255px,.58fr);gap:24px}.visual-v5 .rs5-home-main,.visual-v5 .rs5-home-side{display:grid;gap:18px;align-content:start}.visual-v5 .rs5-section{min-width:0}.visual-v5 .rs5-section-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin-bottom:10px}.visual-v5 .rs5-section-head h2{font-size:17px;letter-spacing:-.035em;margin:3px 0 2px}.visual-v5 .rs5-section-head p{font-size:14px;margin:0}.visual-v5 .rs2-link-btn,.visual-v5 .rs5-text-btn{border:0;background:transparent;color:var(--client-accent);font-size:14px;font-weight:750;cursor:pointer;padding:5px}
.visual-v5 .rs5-action-list{border:1px solid var(--rs5-line);background:var(--rs5-panel);border-radius:15px;overflow:hidden;box-shadow:var(--rs5-shadow)}.visual-v5 .rs5-action-row{width:100%;border:0;border-bottom:1px solid var(--rs5-line-2);background:transparent;color:var(--rs5-text);display:grid;grid-template-columns:5px minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:13px 14px;text-align:left;cursor:pointer}.visual-v5 .rs5-action-row:last-child{border-bottom:0}.visual-v5 .rs5-action-row:hover{background:var(--rs5-panel-2)}.visual-v5 .rs5-action-urg{width:4px;height:31px;border-radius:10px;background:#aeb7b3}.visual-v5 .rs5-action-urg.high{background:#c18b32}.visual-v5 .rs5-action-urg.today{background:#be664f}.visual-v5 .rs5-action-urg.overdue{background:#b34444}.visual-v5 .rs5-action-copy b,.visual-v5 .rs5-action-copy small,.visual-v5 .rs5-action-meta small{display:block}.visual-v5 .rs5-action-copy b{font-size:14px}.visual-v5 .rs5-action-copy small,.visual-v5 .rs5-action-meta small{font-size:14px;color:var(--rs5-muted);margin-top:3px}.visual-v5 .rs5-action-meta{text-align:right}
.visual-v5 .rs5-rec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.visual-v5 .rs5-rec-card{background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:14px;padding:15px;box-shadow:var(--rs5-shadow);cursor:pointer;transition:transform .16s ease,border-color .16s ease}.visual-v5 .rs5-rec-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--client-accent) 28%,var(--rs5-line))}.visual-v5 .rs5-rec-top,.visual-v5 .rs5-rec-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.visual-v5 .rs5-rec-top>div{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-rec-card h3{font-size:14px;margin:12px 0 4px}.visual-v5 .rs5-rec-card>p{font-size:14px;margin:0}.visual-v5 .rs5-rec-why{display:grid;gap:4px;margin:11px 0 13px}.visual-v5 .rs5-rec-why span{font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-rec-foot>b{font-size:14px}.visual-v5 .rs5-watch-tag,.visual-v5 .rs5-watch-inline{display:inline-flex;color:var(--client-accent);font-size:14px;font-weight:750;background:color-mix(in srgb,var(--client-accent) 8%,var(--rs5-panel));border-radius:999px;padding:4px 6px}.visual-v5 .rs5-watch-inline{margin-top:4px}
.visual-v5 .rs5-activity-list{background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:14px;overflow:hidden}.visual-v5 .rs5-activity-row{display:flex;width:100%;gap:10px;align-items:center;border:0;border-bottom:1px solid var(--rs5-line-2);background:transparent;color:var(--rs5-text);padding:11px 13px;text-align:left;cursor:pointer}.visual-v5 .rs5-activity-row:last-child{border-bottom:0}.visual-v5 .rs5-activity-icon{width:27px;height:27px;border-radius:8px;background:var(--rs5-panel-2);display:grid;place-items:center;color:var(--client-accent);font-size:14px}.visual-v5 .rs5-activity-row b,.visual-v5 .rs5-activity-row small{display:block}.visual-v5 .rs5-activity-row b{font-size:14px}.visual-v5 .rs5-activity-row small{font-size:14px;color:var(--rs5-muted);margin-top:3px}.visual-v5 .rs5-alert-mini button[data-alert-open]{width:100%;border:0;border-top:1px solid var(--rs5-line-2);background:transparent;padding:9px 0;display:flex;text-align:left;justify-content:space-between;gap:8px;color:var(--rs5-text);cursor:pointer}.visual-v5 .rs5-alert-mini button span{display:grid;gap:3px}.visual-v5 .rs5-alert-mini button b{font-size:14px}.visual-v5 .rs5-alert-mini button small{font-size:14px;color:var(--rs5-muted);line-height:1.35}
.visual-v5 .rs5-head-btn{height:31px;padding:0 10px;border-radius:8px;border:1px solid var(--rs5-line);background:var(--rs5-panel);color:var(--rs5-text);font-size:14px;font-weight:700;cursor:pointer}.visual-v5 .rs5-head-btn.primary{background:var(--client-accent);border-color:var(--client-accent);color:#fff}.visual-v5 .rs5-pipeline-total{border:1px solid var(--rs5-line);background:var(--rs5-panel);border-radius:999px;padding:7px 10px;font-size:14px;font-weight:750}
.visual-v5 .rs5-filterbar{background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:13px;padding:9px;box-shadow:var(--rs5-shadow)}.visual-v5 .rs5-filterbar input,.visual-v5 .rs5-filterbar select,.visual-v5 .rs5-filterbar button,.visual-v5 .rs5-map-toolbar select{border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-text);border-radius:8px;font-size:14px;padding:8px 9px}.visual-v5 .rs5-saved-view-bar{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin:8px 0 12px}.visual-v5 .rs5-saved-view-bar>span{font-size:14px;color:var(--rs5-muted);text-transform:uppercase;letter-spacing:.08em;margin-right:4px}.visual-v5 .rs5-saved-view-bar button{border:1px solid var(--rs5-line);background:var(--rs5-panel);color:var(--rs5-text);border-radius:999px;padding:5px 8px;font-size:14px;cursor:pointer}.visual-v5 .rs5-saved-view-bar .rs5-view-x{padding:5px 6px;margin-left:-5px}.visual-v5 .rs5-table-meta{display:flex;justify-content:space-between;color:var(--rs5-muted);font-size:14px;margin:8px 2px}.visual-v5 .rs5-table th{background:var(--rs5-panel-2);color:var(--rs5-muted);border-color:var(--rs5-line)}.visual-v5 .rs5-table td{border-color:var(--rs5-line-2);color:var(--rs5-text)}.visual-v5 .rs5-table tr:hover td{background:var(--rs5-panel-2)}.visual-v5 .rs5-table td:first-of-type+td b,.visual-v5 .rs5-table td:first-of-type+td span{display:block}.visual-v5 .rs5-table td:first-of-type+td span{font-size:14px;color:var(--rs5-muted);margin-top:3px}.visual-v5 .rs5-check-col{width:28px}.visual-v5 .rs5-row-arrow{border:0;background:transparent;color:var(--client-accent);cursor:pointer}.visual-v5 .rs5-compare-tray{position:fixed;z-index:45;left:50%;bottom:24px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;background:#17201d;color:#fff;border-radius:12px;padding:9px 12px;box-shadow:0 14px 40px rgba(0,0,0,.25);font-size:14px}.visual-v5 .rs5-compare-tray button{border:1px solid #3a4742;background:#26312d;color:white;border-radius:8px;padding:7px 10px;font-size:14px;cursor:pointer}.visual-v5 .rs5-compare-tray button:first-of-type{background:#f5f8f6;color:#18211d}.visual-v5 .rs5-compare-tray button:disabled{opacity:.5}
.visual-v5 .rs5-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px}.visual-v5 .rs5-map-panel,.visual-v5 .rs5-map-side{background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:15px;box-shadow:var(--rs5-shadow)}.visual-v5 .rs5-map-panel{padding:10px}.visual-v5 .rs5-map-toolbar{display:flex;align-items:center;gap:7px;padding:2px 2px 9px}.visual-v5 .rs5-map-toolbar>span{flex:1;font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-map-side{padding:18px;align-self:start}.visual-v5 .rs5-osm-map{height:600px;position:relative;overflow:hidden;border-radius:11px;background:#dce5e1;touch-action:none;cursor:grab}.visual-v5 .rs5-osm-map:active{cursor:grabbing}.visual-v5 .rs5-tile-layer,.visual-v5 .rs5-map-overlay{position:absolute;inset:0}.visual-v5 .rs5-tile-layer img{position:absolute;width:256px;height:256px;user-select:none;-webkit-user-drag:none}.visual-v5 .rs5-map-overlay{pointer-events:none}.visual-v5 .rs5-map-marker,.visual-v5 .rs5-map-cluster,.visual-v5 .rs5-heat-dot{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;border:0;cursor:pointer}.visual-v5 .rs5-map-marker{width:31px;height:31px;border-radius:50% 50% 50% 4px;transform:translate(-50%,-50%) rotate(-45deg);background:#26322d;color:white;box-shadow:0 6px 15px rgba(0,0,0,.22);border:2px solid white}.visual-v5 .rs5-map-marker span{display:grid;place-items:center;width:100%;height:100%;transform:rotate(45deg);font-size:14px;font-weight:850}.visual-v5 .rs5-map-marker.epc-f,.visual-v5 .rs5-map-marker.epc-g{background:#b85346}.visual-v5 .rs5-map-marker.epc-e{background:#c18b32}.visual-v5 .rs5-map-marker.epc-d{background:#7c9141}.visual-v5 .rs5-map-cluster{width:35px;height:35px;border-radius:50%;background:#173f32;color:white;border:3px solid rgba(255,255,255,.86);font-weight:800;font-size:14px;box-shadow:0 6px 16px rgba(0,0,0,.2)}.visual-v5 .rs5-heat-dot{width:var(--heat);height:var(--heat);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,#d75142 68%,transparent) 0,color-mix(in srgb,#d98a39 35%,transparent) 38%,transparent 72%);filter:blur(3px)}.visual-v5 .rs5-map-controls{position:absolute;z-index:4;right:10px;top:10px;display:grid;gap:4px}.visual-v5 .rs5-map-controls button{width:31px;height:31px;border:1px solid rgba(0,0,0,.12);background:white;border-radius:7px;font-size:18px;cursor:pointer}.visual-v5 .rs5-map-attribution{font-size:14px;color:var(--rs5-muted);padding:7px 2px 0}.visual-v5 .rs5-density-list{display:grid;gap:8px;margin-top:17px}.visual-v5 .rs5-density-list button{position:relative;overflow:hidden;border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-text);border-radius:9px;padding:9px;display:flex;justify-content:space-between;font-size:14px;cursor:pointer}.visual-v5 .rs5-density-list button i{position:absolute;left:0;bottom:0;height:2px;width:var(--w);background:var(--client-accent)}.visual-v5 .rs5-map-card h3{font-size:17px;margin:14px 0 5px}.visual-v5 .rs5-map-card>p{font-size:14px}.visual-v5 .rs5-map-card dl{display:grid;gap:0;margin:16px 0}.visual-v5 .rs5-map-card dl div{border-top:1px solid var(--rs5-line-2);padding:9px 0}.visual-v5 .rs5-map-card dt{font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-map-card dd{margin:3px 0 0;font-size:14px;font-weight:700}.visual-v5 .rs5-map-back{border:0;background:transparent;color:var(--client-accent);font-size:14px;padding:0 0 14px;cursor:pointer}.visual-v5 .rs5-segment{display:flex;border:1px solid var(--rs5-line);border-radius:8px;padding:2px;background:var(--rs5-panel)}.visual-v5 .rs5-segment button{border:0;background:transparent;color:var(--rs5-muted);font-size:14px;padding:5px 8px;border-radius:6px;cursor:pointer}.visual-v5 .rs5-segment button.active{background:var(--rs5-panel-2);color:var(--rs5-text);font-weight:750}
.visual-v5 .rs5-kanban{display:grid;grid-template-columns:repeat(5,minmax(185px,1fr));gap:10px;overflow:auto;padding-bottom:8px}.visual-v5 .rs5-kanban-col{background:color-mix(in srgb,var(--rs5-panel-2) 82%,transparent);border:1px solid var(--rs5-line);border-radius:14px;min-height:510px;padding:9px;transition:border-color .14s ease,background .14s ease}.visual-v5 .rs5-kanban-col.drag-over{border-color:var(--client-accent);background:color-mix(in srgb,var(--client-accent) 5%,var(--rs5-panel-2))}.visual-v5 .rs5-kanban-col>header{display:grid;grid-template-columns:8px 1fr auto;gap:8px;align-items:center;padding:7px 4px 11px}.visual-v5 .rs5-kanban-col header b,.visual-v5 .rs5-kanban-col header small{display:block}.visual-v5 .rs5-kanban-col header b{font-size:14px}.visual-v5 .rs5-kanban-col header small{font-size:14px;color:var(--rs5-muted);margin-top:2px}.visual-v5 .rs5-kanban-col header strong{font-size:14px}.visual-v5 .rs5-stage-dot{width:7px;height:7px;border-radius:50%;background:#9ba6a1}.visual-v5 .rs5-stage-dot.stage-interested{background:#688ca9}.visual-v5 .rs5-stage-dot.stage-contacted{background:#8d78b5}.visual-v5 .rs5-stage-dot.stage-won{background:#4c936a}.visual-v5 .rs5-stage-dot.stage-lost{background:#b26060}.visual-v5 .rs5-kanban-list{display:grid;gap:7px}.visual-v5 .rs5-kanban-card{background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:11px;padding:11px;box-shadow:0 5px 15px rgba(0,0,0,.025);cursor:grab;transition:transform .15s ease,opacity .15s ease}.visual-v5 .rs5-kanban-card:hover{transform:translateY(-1px)}.visual-v5 .rs5-kanban-card.dragging{opacity:.45;transform:rotate(1deg)}.visual-v5 .rs5-kanban-card>div:first-child{display:flex;justify-content:space-between}.visual-v5 .rs5-kanban-card h4{font-size:14px;margin:9px 0 4px}.visual-v5 .rs5-kanban-card>p{font-size:14px;margin:0}.visual-v5 .rs5-kanban-action{background:var(--rs5-panel-2);border-radius:8px;padding:7px;margin:9px 0}.visual-v5 .rs5-kanban-action small,.visual-v5 .rs5-kanban-action b{display:block}.visual-v5 .rs5-kanban-action small{font-size:14px;color:var(--rs5-muted);text-transform:uppercase;letter-spacing:.07em}.visual-v5 .rs5-kanban-action b{font-size:14px;line-height:1.35;margin-top:3px}.visual-v5 .rs5-kanban-card footer{display:flex;justify-content:space-between;font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-kanban-card footer strong{color:var(--rs5-text)}.visual-v5 .rs5-kanban-empty{font-size:14px;color:var(--rs5-muted);text-align:center;border:1px dashed var(--rs5-line);border-radius:9px;padding:24px 8px}.visual-v5 .rs5-kanban-help{font-size:14px;text-align:right;margin-top:5px}
.visual-v5 .rs5-toolbar-tabs{display:flex;gap:5px;margin:12px 0}.visual-v5 .rs5-toolbar-tabs button{border:1px solid var(--rs5-line);background:var(--rs5-panel);color:var(--rs5-muted);border-radius:999px;padding:6px 10px;font-size:14px;cursor:pointer}.visual-v5 .rs5-toolbar-tabs button.active{background:var(--client-accent);border-color:var(--client-accent);color:white}.visual-v5 .rs5-toolbar-tabs b{margin-left:4px}.visual-v5 .rs5-task-list,.visual-v5 .rs5-alert-list{display:grid;gap:7px}.visual-v5 .rs5-task-card{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto 24px;gap:10px;align-items:center;background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:11px;padding:10px 12px}.visual-v5 .rs5-task-card.overdue{border-left:3px solid #b34b4b}.visual-v5 .rs5-task-card.done{opacity:.62}.visual-v5 .rs5-task-check{width:24px;height:24px;border-radius:7px;border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-ok);cursor:pointer}.visual-v5 .rs5-task-copy b,.visual-v5 .rs5-task-copy span{display:block}.visual-v5 .rs5-task-copy b{font-size:14px}.visual-v5 .rs5-task-copy span{font-size:14px;color:var(--rs5-muted);margin-top:3px}.visual-v5 .rs5-priority{font-size:14px;border-radius:999px;padding:4px 7px;background:var(--rs5-panel-2);color:var(--rs5-muted)}.visual-v5 .rs5-priority.high{background:#fff2dd;color:#9a6111}.visual-v5 .rs5-icon-btn{border:0;background:transparent;color:var(--rs5-muted);cursor:pointer;font-size:14px}
.visual-v5 .rs5-alert-row{display:grid;grid-template-columns:6px minmax(0,1fr) auto;gap:13px;align-items:center;background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:12px;padding:13px 14px}.visual-v5 .rs5-alert-row.unread{background:color-mix(in srgb,var(--client-accent) 3%,var(--rs5-panel));border-color:color-mix(in srgb,var(--client-accent) 22%,var(--rs5-line))}.visual-v5 .rs5-alert-dot{width:6px;height:38px;border-radius:8px;background:#9aa5a0}.visual-v5 .rs5-alert-dot.medium{background:#c48a31}.visual-v5 .rs5-alert-dot.high{background:#b8574d}.visual-v5 .rs5-alert-row h3{font-size:14px;margin:5px 0 3px}.visual-v5 .rs5-alert-row p{font-size:14px;margin:0}.visual-v5 .rs5-alert-row small{font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-alert-row>button{border:0;background:transparent;color:var(--client-accent);font-size:14px;cursor:pointer}.visual-v5 .rs5-alert-severity{font-size:14px;text-transform:uppercase;letter-spacing:.07em;border-radius:999px;padding:3px 5px;background:var(--rs5-panel-2);color:var(--rs5-muted)}.visual-v5 .rs5-alert-severity.high{background:#f9e8e6;color:#a3453c}.visual-v5 .rs5-alert-severity.medium{background:#fff2df;color:#936119}.visual-v5 .rs5-new-tag{font-size:14px;background:var(--client-accent);color:white;border-radius:999px;padding:3px 5px;margin-left:4px}
.visual-v5 .rs5-analytics-grid,.visual-v5 .rs5-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.visual-v5 .rs5-analytics-wide,.visual-v5 .rs5-report-wide{grid-column:1/-1}.visual-v5 .rs5-funnel-modern{display:grid;gap:7px;margin-top:16px}.visual-v5 .rs5-funnel-modern>div{display:grid;grid-template-columns:90px minmax(0,1fr) 30px 90px;align-items:center;gap:9px;width:var(--w)}.visual-v5 .rs5-funnel-modern span,.visual-v5 .rs5-funnel-modern small{font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-funnel-modern b{font-size:14px;text-align:right}.visual-v5 .rs5-funnel-modern i{height:9px;border-radius:999px;background:var(--rs5-panel-2);overflow:hidden}.visual-v5 .rs5-funnel-modern em{display:block;height:100%;background:linear-gradient(90deg,var(--client-accent),color-mix(in srgb,var(--client-accent) 50%,#86ac9a));border-radius:999px}.visual-v5 .rs5-analytics-bars{display:grid;gap:10px;margin-top:14px}.visual-v5 .rs5-analytics-bars>div{display:grid;grid-template-columns:120px 1fr 30px;gap:9px;align-items:center}.visual-v5 .rs5-analytics-bars span b,.visual-v5 .rs5-analytics-bars span small{display:block}.visual-v5 .rs5-analytics-bars span b{font-size:14px}.visual-v5 .rs5-analytics-bars span small{font-size:14px;color:var(--rs5-muted);margin-top:2px}.visual-v5 .rs5-analytics-bars i{height:6px;background:var(--rs5-panel-2);border-radius:999px;overflow:hidden}.visual-v5 .rs5-analytics-bars em{display:block;height:100%;background:var(--client-accent);border-radius:999px}.visual-v5 .rs5-analytics-bars strong{font-size:14px}.visual-v5 .rs5-velocity{display:grid;place-items:start;margin-top:18px}.visual-v5 .rs5-velocity strong{font-size:38px;letter-spacing:-.05em}.visual-v5 .rs5-velocity span{font-size:14px}.visual-v5 .rs5-velocity small,.visual-v5 .rs5-muted{font-size:14px;color:var(--rs5-muted);line-height:1.5;margin-top:7px}
.visual-v5 .rs5-report-hero{display:flex;justify-content:space-between;gap:30px;align-items:center;background:linear-gradient(130deg,var(--rs5-panel),color-mix(in srgb,var(--client-accent) 7%,var(--rs5-panel)));border:1px solid var(--rs5-line);border-radius:17px;padding:23px;margin-bottom:13px}.visual-v5 .rs5-report-hero h2{font-size:21px;margin:5px 0}.visual-v5 .rs5-report-score{text-align:right}.visual-v5 .rs5-report-score strong,.visual-v5 .rs5-report-score span{display:block}.visual-v5 .rs5-report-score strong{font-size:34px}.visual-v5 .rs5-report-score span{font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-report-list{margin:13px 0 0}.visual-v5 .rs5-report-list div{display:flex;justify-content:space-between;border-top:1px solid var(--rs5-line-2);padding:9px 0;font-size:14px}.visual-v5 .rs5-report-list dd{margin:0;font-weight:800}.visual-v5 .rs5-export-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.visual-v5 .rs5-export-grid button{border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-text);border-radius:10px;padding:13px;text-align:left;cursor:pointer}.visual-v5 .rs5-export-grid b,.visual-v5 .rs5-export-grid span{display:block}.visual-v5 .rs5-export-grid b{font-size:14px}.visual-v5 .rs5-export-grid span{font-size:14px;color:var(--rs5-muted);margin-top:4px}.visual-v5 .rs5-report-top{display:grid;margin-top:12px}.visual-v5 .rs5-report-top button{border:0;border-top:1px solid var(--rs5-line-2);background:transparent;color:var(--rs5-text);display:flex;justify-content:space-between;align-items:center;padding:9px 0;text-align:left;cursor:pointer}.visual-v5 .rs5-report-top button span{display:grid;grid-template-columns:auto 1fr;gap:5px}.visual-v5 .rs5-report-top button small{grid-column:2;font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-report-top button strong{font-size:14px}
.visual-v5 .rs5-saved-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.visual-v5 .rs5-card-list{display:grid;gap:8px}.visual-v5 .rs5-saved-card{background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:12px;padding:13px;cursor:pointer}.visual-v5 .rs5-saved-card h3{font-size:14px;margin:10px 0 3px}.visual-v5 .rs5-saved-card p{font-size:14px;margin:0}.visual-v5 .rs5-saved-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:11px}.visual-v5 .rs5-saved-card footer>span{font-size:14px;color:var(--client-accent)}
.visual-v5 .rs5-theme-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:15px}.visual-v5 .rs5-theme-selector button{border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-text);border-radius:10px;padding:12px;text-align:left;cursor:pointer}.visual-v5 .rs5-theme-selector button.active{border-color:var(--client-accent);box-shadow:0 0 0 1px var(--client-accent)}.visual-v5 .rs5-theme-selector b,.visual-v5 .rs5-theme-selector span{display:block}.visual-v5 .rs5-theme-selector b{font-size:14px}.visual-v5 .rs5-theme-selector span{font-size:14px;color:var(--rs5-muted);margin-top:4px}
.visual-v5 .rs5-detail{max-width:1160px;background:var(--rs5-bg);color:var(--rs5-text)}.visual-v5 .rs5-detail-hero{background:var(--rs5-panel);border-color:var(--rs5-line)}.visual-v5 .rs5-action-center{margin:0 22px 14px;padding:15px 16px;border:1px solid color-mix(in srgb,var(--client-accent) 20%,var(--rs5-line));background:color-mix(in srgb,var(--client-accent) 5%,var(--rs5-panel));border-radius:13px;display:flex;justify-content:space-between;align-items:center;gap:15px}.visual-v5 .rs5-action-center h3{font-size:14px;margin:4px 0}.visual-v5 .rs5-action-center p{font-size:14px;margin:0}.visual-v5 .rs5-action-center-actions{display:flex;gap:6px}.visual-v5 .rs5-action-center-actions button{border:1px solid var(--rs5-line);background:var(--rs5-panel);color:var(--rs5-text);border-radius:8px;padding:7px 9px;font-size:14px;cursor:pointer}.visual-v5 .rs5-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.visual-v5 .rs5-evidence-grid>div{border:1px solid var(--rs5-line);border-radius:9px;padding:9px;display:flex;gap:8px}.visual-v5 .rs5-evidence-grid i{font-style:normal;width:20px;height:20px;border-radius:6px;background:var(--rs5-panel-2);display:grid;place-items:center;color:var(--rs5-muted)}.visual-v5 .rs5-evidence-grid .ok i{background:color-mix(in srgb,var(--rs5-ok) 10%,var(--rs5-panel));color:var(--rs5-ok)}.visual-v5 .rs5-evidence-grid b,.visual-v5 .rs5-evidence-grid small{display:block}.visual-v5 .rs5-evidence-grid b{font-size:14px}.visual-v5 .rs5-evidence-grid small{font-size:14px;color:var(--rs5-muted);margin-top:2px}.visual-v5 .rs5-value-form{display:grid;gap:9px}.visual-v5 .rs5-value-form label,.visual-v5 .rs5-form-modal label{display:grid;gap:5px;font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-value-form input,.visual-v5 .rs5-form-modal input,.visual-v5 .rs5-form-modal select,.visual-v5 .rs5-note-form textarea{border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-text);border-radius:8px;padding:8px;font-size:14px}.visual-v5 .rs5-two-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.visual-v5 .rs5-mini-tasks{display:grid;gap:6px;margin-top:8px}.visual-v5 .rs5-mini-tasks>div{display:flex;gap:7px;align-items:flex-start}.visual-v5 .rs5-mini-tasks button{width:19px;height:19px;border:1px solid var(--rs5-line);background:var(--rs5-panel-2);color:var(--rs5-ok);border-radius:5px}.visual-v5 .rs5-mini-tasks b,.visual-v5 .rs5-mini-tasks small{display:block}.visual-v5 .rs5-mini-tasks b{font-size:14px}.visual-v5 .rs5-mini-tasks small{font-size:14px;color:var(--rs5-muted)}.visual-v5 .rs5-note-form{display:flex;gap:7px;margin:10px 0}.visual-v5 .rs5-note-form textarea{flex:1;min-height:60px;resize:vertical}.visual-v5 .rs5-note-form button{align-self:flex-end;background:var(--client-accent);color:white;border:0;border-radius:8px;padding:8px 10px;font-size:14px}.visual-v5 .rs5-note-list{display:grid;gap:8px}.visual-v5 .rs5-note-list article{display:grid;grid-template-columns:28px 1fr auto;gap:8px;border-top:1px solid var(--rs5-line-2);padding-top:9px}.visual-v5 .rs5-note-avatar{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:var(--rs5-panel-2);font-size:14px;font-weight:800}.visual-v5 .rs5-note-list b,.visual-v5 .rs5-note-list small{display:block;font-size:14px}.visual-v5 .rs5-note-list p{font-size:14px;margin:4px 0}.visual-v5 .rs5-note-list small{color:var(--rs5-muted)}.visual-v5 .rs5-note-list article>button{border:0;background:transparent;color:var(--rs5-muted);cursor:pointer}.visual-v5 .rs5-form-modal{width:min(520px,calc(100vw - 28px));background:var(--rs5-panel);color:var(--rs5-text);border:1px solid var(--rs5-line);border-radius:15px;padding:22px;position:relative;box-shadow:0 25px 80px rgba(0,0,0,.25)}.visual-v5 .rs5-form-modal h2{margin:5px 0 16px}.visual-v5 .rs5-form-modal>label{margin:10px 0}.visual-v5 .rs5-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.visual-v5 .rs5-compare-modal{width:min(1180px,calc(100vw - 32px));max-height:90vh;overflow:hidden;background:var(--rs5-panel);color:var(--rs5-text);border:1px solid var(--rs5-line);border-radius:16px;padding:20px}.visual-v5 .rs5-compare-scroll{overflow:auto;max-height:72vh}.visual-v5 .rs5-compare-modal table{width:100%;border-collapse:collapse;font-size:14px}.visual-v5 .rs5-compare-modal th,.visual-v5 .rs5-compare-modal td{border:1px solid var(--rs5-line);padding:10px;min-width:150px;vertical-align:top}.visual-v5 .rs5-compare-modal th{background:var(--rs5-panel-2);text-align:left}.visual-v5 .rs5-compare-modal thead th b,.visual-v5 .rs5-compare-modal thead th small{display:block;margin-top:5px}
.visual-v5 .rs5-empty{background:var(--rs5-panel);border:1px solid var(--rs5-line);border-radius:13px;min-height:130px;display:grid;place-items:center;align-content:center;gap:5px}.visual-v5 .rs5-empty-mark{width:29px;height:29px;border-radius:9px;background:var(--rs5-panel-2);display:grid;place-items:center;color:var(--client-accent)}
.visual-v5 .rs2-epc,.visual-v5 .rs2-stage,.visual-v5 .rs2-match,.visual-v5 .rs2-confidence-pill{border-color:var(--rs5-line)}.visual-v5 .rs2-detail-head,.visual-v5 .rs2-detail-hero,.visual-v5 .rs2-detail-main,.visual-v5 .rs2-detail-side{border-color:var(--rs5-line)}.visual-v5 .rs2-detail,.visual-v5 .rs2-modal-bg{color:var(--rs5-text)}.visual-v5 .rs2-detail-head{background:var(--rs5-panel)}.visual-v5 .rs2-detail-main,.visual-v5 .rs2-detail-side{background:var(--rs5-bg)}.visual-v5 .rs2-fact-grid>div,.visual-v5 .rs2-evidence>div,.visual-v5 .rs2-contact-lines>div{background:var(--rs5-panel-2);border-color:var(--rs5-line)}
/* Dark mode surfaces for legacy client v2-v4 selectors. */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-sidebar,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-panel,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stat,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-table-wrap,html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-updates-empty,html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-empty-signal,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-week-grid>div{background:var(--rs5-panel);border-color:var(--rs5-line);color:var(--rs5-text)}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-nav button,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-company span,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-user small{color:var(--rs5-muted)}html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-nav button.active,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-nav button:hover{background:#202925;color:#f0f5f2}html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-company,html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-side-footer{border-color:var(--rs5-line)}
html[data-theme="dark"] .client-portal-body.visual-v5 input,html[data-theme="dark"] .client-portal-body.visual-v5 select,html[data-theme="dark"] .client-portal-body.visual-v5 textarea{color-scheme:dark}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stage.stage-new{background:#202a26;color:#b7c0bc}html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stage.stage-interested{background:#1d2d38;color:#9ec4de}html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stage.stage-contacted{background:#2a2436;color:#c5b1e2}html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stage.stage-won{background:#173226;color:#89c9a4}html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stage.stage-lost{background:#362020;color:#dfa1a1}
/* Login dark mode. */
html[data-theme="dark"] body.login-page-v5{background:#0d1311;color:#edf3f0}.login-theme-toggle{position:fixed;z-index:10;right:22px;top:20px;border:1px solid rgba(255,255,255,.15);background:rgba(17,25,22,.68);backdrop-filter:blur(14px);color:#dfe9e4;border-radius:999px;padding:8px 11px;font-size:14px;cursor:pointer}.login-page-v5 .login-card{transition:background .2s ease,border-color .2s ease}.login-page-v5[data-login-theme="dark"] .login-card{}html[data-theme="dark"] .login-page-v5 .login-card{background:#151c19;border-color:#2b3631;color:#edf3f0}html[data-theme="dark"] .login-page-v5 .title,html[data-theme="dark"] .login-page-v5 .login-card .brand{color:#edf3f0}html[data-theme="dark"] .login-page-v5 .subtitle,html[data-theme="dark"] .login-page-v5 .form-row label{color:#95a29c}html[data-theme="dark"] .login-page-v5 .input{background:#101714;border-color:#303b36;color:#eef4f1}html[data-theme="dark"] .login-page-v5 .login-security-note{border-color:#2b3631;background:#111815;color:#a9b5af}
@media(max-width:1180px){.visual-v5 .rs5-home-grid{grid-template-columns:1fr}.visual-v5 .rs5-home-side{grid-template-columns:repeat(3,minmax(0,1fr))}.visual-v5 .rs5-map-layout{grid-template-columns:1fr}.visual-v5 .rs5-map-side{display:none}.visual-v5 .rs5-kanban{grid-template-columns:repeat(5,220px)}}
@media(max-width:850px){.visual-v5 .rs5-home-side,.visual-v5 .rs5-rec-grid,.visual-v5 .rs5-analytics-grid,.visual-v5 .rs5-report-grid,.visual-v5 .rs5-saved-columns{grid-template-columns:1fr}.visual-v5 .rs5-export-grid{grid-template-columns:1fr 1fr}.visual-v5 .rs5-report-wide,.visual-v5 .rs5-analytics-wide{grid-column:auto}.visual-v5 .rs5-task-card{grid-template-columns:30px 1fr auto}.visual-v5 .rs5-task-card .rs5-priority,.visual-v5 .rs5-task-card .rs5-text-btn{display:none}.visual-v5 .rs5-evidence-grid{grid-template-columns:1fr}.visual-v5 .rs5-osm-map{height:480px}}
@media(max-width:560px){.visual-v5 .rs5-export-grid,.visual-v5 .rs5-theme-selector,.visual-v5 .rs5-form-grid{grid-template-columns:1fr}.visual-v5 .rs5-action-row{grid-template-columns:4px 1fr 15px}.visual-v5 .rs5-action-meta{display:none}.visual-v5 .rs5-funnel-modern>div{grid-template-columns:75px 1fr 25px}.visual-v5 .rs5-funnel-modern small{display:none}.visual-v5 .rs5-report-hero{align-items:flex-start;flex-direction:column}.visual-v5 .rs5-report-score{text-align:left}.visual-v5 .rs5-change-banner{align-items:flex-start;flex-direction:column}.visual-v5 .rs5-osm-map{height:420px}}
@media(prefers-reduced-motion:reduce){.visual-v5 *{scroll-behavior:auto!important;transition:none!important}}

/* ==========================================================================
   CLIENT DARK THEME V5.1 — approved teal/charcoal treatment
   Keeps Light/System/Dark behavior intact while matching the approved dark mockup.
   ========================================================================== */
html[data-theme="dark"]{
  --rs5-bg:#081416;
  --rs5-panel:#0e1c1f;
  --rs5-panel-2:#122326;
  --rs5-text:#f1f7f5;
  --rs5-muted:#91a3a1;
  --rs5-line:#22373a;
  --rs5-line-2:#192d30;
  --rs5-shadow:0 18px 48px rgba(0,0,0,.28);
  --bg:#081416;
  --panel:#0e1c1f;
  --text:#f1f7f5;
  --muted:#91a3a1;
  --line:#22373a;
  --soft:#122326;
  --accent-soft:#15372f;
  color-scheme:dark;
}
html[data-theme="dark"] body.client-portal-body.visual-v5{
  --rs5-dark-accent:color-mix(in srgb,var(--client-accent) 28%,#4de5a8 72%);
  background:
    radial-gradient(circle at 76% -8%,rgba(35,154,118,.10),transparent 30%),
    linear-gradient(180deg,#071214 0%,#081416 42%,#071315 100%);
  color:var(--rs5-text);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-main,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-main{
  background:
    radial-gradient(circle at 78% -10%,color-mix(in srgb,var(--rs5-dark-accent) 9%,transparent),transparent 31%),
    linear-gradient(180deg,#091619 0%,var(--rs5-bg) 48%,#071315 100%);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-sidebar,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-sidebar{
  background:linear-gradient(180deg,#091619 0%,#081416 72%,#071315 100%);
  border-right-color:#1d3033;
  box-shadow:14px 0 40px rgba(0,0,0,.10);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .brand{color:#eff7f4!important}
html[data-theme="dark"] .client-portal-body.visual-v5 .brand span{color:var(--rs5-dark-accent)!important}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-brand small,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-nav-label{color:#7f9290}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-company{
  border-color:#1e3235;
  background:rgba(255,255,255,.015);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-monogram{
  background:color-mix(in srgb,var(--rs5-dark-accent) 17%,#0d1c1f);
  color:#dff9ef;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rs5-dark-accent) 18%,transparent);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-company b,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-user b{color:#eef6f3}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-company span,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-user small{color:#829592}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-nav button{
  color:#9badaa;
  transition:background .15s ease,color .15s ease,box-shadow .15s ease;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-nav button:hover{
  background:#102528;
  color:#eff7f4;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-nav button.active{
  background:linear-gradient(90deg,color-mix(in srgb,var(--rs5-dark-accent) 15%,#0f2426),#102426);
  color:#dff8ee;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rs5-dark-accent) 20%,#1f3437);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-nav button.active:before{background:var(--rs5-dark-accent)}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-nav button.active .rs5-nav-icon,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-link-btn,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-text-btn,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-watch-tag,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-watch-inline{color:var(--rs5-dark-accent)}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-side-footer{border-color:#1d3033}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-theme-mini,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-quiet-btn{
  background:#0d1d20;
  border-color:#24383b;
  color:#d9e6e2;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-theme-mini:hover,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-quiet-btn:hover{
  background:#12272a;
  border-color:color-mix(in srgb,var(--rs5-dark-accent) 32%,#24383b);
}

/* Page headings and utility pills */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-page-head h1,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-home-hero h1{color:#f3f8f6}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-eyebrow,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-home-kicker{color:var(--rs5-dark-accent)}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-home-kicker i,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-refresh i{background:var(--rs5-dark-accent)}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-refresh,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-pipeline-total{
  color:#a9bbb7;
  background:#0d1d20;
  border-color:#21373a;
}

/* Hero and dashboard surfaces */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-home-hero,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-home-hero{
  background:
    radial-gradient(circle at 94% 6%,color-mix(in srgb,var(--rs5-dark-accent) 9%,transparent),transparent 28%),
    linear-gradient(128deg,#0d1b1e 0%,#0f1f22 58%,#102326 100%);
  border-color:#203538;
  box-shadow:0 18px 52px rgba(0,0,0,.24);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-home-hero p{color:#9aaba8}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-home-hero-status{
  background:rgba(11,27,29,.78);
  border-color:#254044;
  box-shadow:0 14px 34px rgba(0,0,0,.16);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-live-pill,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-live{color:#a9bbb7}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-live-pill i,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-live i{
  background:var(--rs5-dark-accent);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--rs5-dark-accent) 13%,transparent);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-hero-meta{border-color:#22383b}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-hero-meta small,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-hero-meta span{color:#7d908d}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-hero-meta b{color:#dbe7e3}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-primary,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-head-btn.primary,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-note-form button{
  background:var(--rs5-dark-accent);
  border-color:var(--rs5-dark-accent);
  color:#061612;
  box-shadow:0 8px 22px color-mix(in srgb,var(--rs5-dark-accent) 18%,transparent);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-primary:hover,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-head-btn.primary:hover{filter:brightness(1.06)}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-secondary,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-head-btn{
  background:#112326;
  border-color:#263b3e;
  color:#dbe7e3;
}

/* KPI cards, panels, empty states and activity surfaces */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stat,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-panel,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-action-list,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-rec-card,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-activity-list,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-empty,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-updates-empty,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-empty-signal,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-update-list,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-week-grid>div,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-readiness>div{
  background:#0e1c1f;
  border-color:#22373a;
  color:var(--rs5-text);
  box-shadow:0 14px 38px rgba(0,0,0,.16);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stat:after,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-pulse-icon,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-empty-mark,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-activity-icon{
  background:#132528;
  border-color:#243a3d;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stat strong,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-action-copy b,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-rec-card h3,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-activity-row b,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-updates-empty b,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-readiness b{color:#eef6f3}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stat span,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-stat small,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-action-copy small,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-rec-why span,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-activity-row small,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-updates-empty div>span,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs4-readiness small{color:#869996}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-action-row,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-activity-row{border-color:#1a3033}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-action-row:hover,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-activity-row:hover,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-update:hover{background:#112326}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-change-banner{
  background:linear-gradient(90deg,color-mix(in srgb,var(--rs5-dark-accent) 8%,#0e1c1f),#0e1c1f);
  border-color:color-mix(in srgb,var(--rs5-dark-accent) 24%,#22373a);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-change-banner i{background:var(--rs5-dark-accent);color:#071612}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-change-banner strong{color:var(--rs5-dark-accent)}

/* Filters, forms and tables */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-filterbar,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-filterbar,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-toolbar-tabs,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-segment{
  background:rgba(12,28,31,.90);
  border-color:#213639;
  box-shadow:0 12px 34px rgba(0,0,0,.18);
}
html[data-theme="dark"] .client-portal-body.visual-v5 input,
html[data-theme="dark"] .client-portal-body.visual-v5 select,
html[data-theme="dark"] .client-portal-body.visual-v5 textarea,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-search,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-filterbar select,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-value-form input,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-form-modal input,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-form-modal select,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-note-form textarea{
  background:#0b1a1d;
  border-color:#263b3e;
  color:#edf5f2;
}
html[data-theme="dark"] .client-portal-body.visual-v5 input::placeholder,
html[data-theme="dark"] .client-portal-body.visual-v5 textarea::placeholder{color:#687d7a}
html[data-theme="dark"] .client-portal-body.visual-v5 input:focus,
html[data-theme="dark"] .client-portal-body.visual-v5 select:focus,
html[data-theme="dark"] .client-portal-body.visual-v5 textarea:focus{
  outline:none;
  border-color:color-mix(in srgb,var(--rs5-dark-accent) 56%,#263b3e);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--rs5-dark-accent) 10%,transparent);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-table-wrap,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-table-wrap{background:#0e1c1f;border-color:#22373a}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-table th,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-table th{
  background:#102124;
  color:#80928f;
  border-color:#203437;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-table td,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-table td{
  color:#b8c7c3;
  border-color:#192d30;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-table tbody tr:hover,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-table tbody tr:hover{background:#102326}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-property-cell b,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-table td>b{color:#eef6f3}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-property-cell span,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-block{color:#819390}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-row-arrow,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-icon-btn,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-task-check{
  background:#112326;
  border-color:#263b3e;
  color:#cbd9d5;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-toolbar-tabs button,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-segment button{color:#8fa19e}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-toolbar-tabs button.active,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-segment button.active{
  background:#16302e;
  color:#e3f8f0;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rs5-dark-accent) 28%,#23383b);
}

/* Pipeline and task cards */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-kanban-col{
  background:#0b191c;
  border-color:#203538;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-kanban-col>header{
  background:rgba(14,30,33,.94);
  border-color:#203538;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-kanban-card,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-task-card{
  background:#0f2023;
  border-color:#23393c;
  box-shadow:0 10px 28px rgba(0,0,0,.17);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-kanban-card:hover,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-task-card:hover{
  background:#122629;
  border-color:color-mix(in srgb,var(--rs5-dark-accent) 25%,#23393c);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-kanban-empty{
  background:#0b191c;
  border-color:#263a3d;
  color:#758885;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-kanban-card h4,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-task-copy b{color:#edf5f2}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-kanban-card p,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-task-copy span{color:#869996}

/* Map: keep OSM usable without a bright island in dark mode. */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-panel,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-side{
  background:#0d1c1f;
  border-color:#22373a;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-toolbar,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-attribution{
  background:#0b191c;
  border-color:#203538;
  color:#839693;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-tile-layer img{
  filter:brightness(.62) saturate(.62) contrast(1.08);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-controls button,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-back,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-density-list button{
  background:#0f2023;
  border-color:#263b3e;
  color:#d7e4e0;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-marker span,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-map-cluster{
  box-shadow:0 8px 22px rgba(0,0,0,.35);
}

/* Detail modal, notes, account/report cards */
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-modal-bg{background:rgba(1,8,9,.76)}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-detail,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-form-modal,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-compare-modal{
  background:#0e1c1f;
  border-color:#263b3e;
  color:#edf5f2;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-detail-head{background:#0e1c1f;border-color:#22373a}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-detail-hero,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-detail-side,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-detail-main{background:#091719;border-color:#22373a}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-close{background:#122326;color:#dbe7e3}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-fact-grid>div,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-evidence>div,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-contact-lines>div,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-evidence-grid>div,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-note-avatar{
  background:#112326;
  border-color:#263b3e;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-theme-selector button{
  background:#0b1a1d;
  border-color:#263b3e;
  color:#e7f0ed;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-theme-selector button.active{
  border-color:var(--rs5-dark-accent);
  box-shadow:0 0 0 1px var(--rs5-dark-accent),0 8px 24px rgba(0,0,0,.18);
}

/* Loading / error state */
html[data-theme="dark"] .client-portal-body.visual-v5 .client-portal-loading{
  background:radial-gradient(circle at 70% 10%,rgba(46,182,137,.09),transparent 34%),#081416;
}
html[data-theme="dark"] .client-portal-body.visual-v5 .client-loading-card{
  background:#0e1c1f;
  border-color:#23383b;
  color:#eff7f4;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}
html[data-theme="dark"] .client-portal-body.visual-v5 .client-loading-card .brand{color:#f0f7f4!important}
html[data-theme="dark"] .client-portal-body.visual-v5 .client-loading-card .brand span{color:#4de5a8!important}

/* Login follows the same dark visual language. */
html[data-theme="dark"] body.login-page-v5{
  background:
    radial-gradient(circle at 18% 20%,rgba(44,181,136,.12),transparent 32%),
    radial-gradient(circle at 84% 82%,rgba(33,95,77,.12),transparent 30%),
    #071315;
  color:#eff7f4;
}
html[data-theme="dark"] .login-page-v5 .login-card{
  background:rgba(13,28,31,.94);
  border-color:#243a3d;
  box-shadow:0 30px 90px rgba(0,0,0,.34);
}
html[data-theme="dark"] .login-page-v5 .login-card .brand,
html[data-theme="dark"] .login-page-v5 .title{color:#f2f8f6!important}
html[data-theme="dark"] .login-page-v5 .login-card .brand span{color:#4de5a8!important}
html[data-theme="dark"] .login-page-v5 .subtitle,
html[data-theme="dark"] .login-page-v5 .form-row label{color:#91a3a0}
html[data-theme="dark"] .login-page-v5 .input{
  background:#09181b;
  border-color:#273d40;
  color:#eef6f3;
}
html[data-theme="dark"] .login-page-v5 .login-submit{
  background:#34d89b;
  border-color:#34d89b;
  color:#061712;
}
html[data-theme="dark"] .login-page-v5 .login-security-note{
  background:#0a191c;
  border-color:#23383b;
  color:#a9bbb7;
}
html[data-theme="dark"] .login-page-v5 .login-theme-toggle{
  background:rgba(11,27,30,.86);
  border-color:#294044;
  color:#dce8e4;
}

/* Smooth theme change and dark scrollbars. */
.client-portal-body.visual-v5 .rs2-sidebar,
.client-portal-body.visual-v5 .rs2-main,
.client-portal-body.visual-v5 .rs2-panel,
.client-portal-body.visual-v5 .rs2-stat,
.client-portal-body.visual-v5 .rs4-home-hero,
.client-portal-body.visual-v5 .rs5-kanban-card,
.client-portal-body.visual-v5 .rs5-task-card,
.client-portal-body.visual-v5 .rs5-rec-card{transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}
html[data-theme="dark"] .client-portal-body.visual-v5 *{scrollbar-color:#284044 #0a181b}



/* v5.2 — required first-login password rotation */
.rs-password-stage .login-story-copy h2{max-width:720px}.rs-password-info{display:grid;gap:9px}.rs-password-rule{display:flex;align-items:center;gap:9px;padding:9px 0;border-top:1px solid color-mix(in srgb,currentColor 10%,transparent);font-size:14px}.rs-password-rule i{font-style:normal;color:#3fcf8e;font-weight:800}.rs-password-checks{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:-2px 0 14px}.rs-password-checks span{display:flex;gap:7px;align-items:center;font-size:14px;color:var(--muted);padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--panel) 84%,transparent)}.rs-password-checks span i{font-style:normal;width:13px;text-align:center}.rs-password-checks span.ok{color:#2e7d5b;border-color:color-mix(in srgb,#3fcf8e 36%,var(--line));background:color-mix(in srgb,#3fcf8e 8%,var(--panel))}html[data-theme="dark"] .rs-password-checks span.ok{color:#70e6ae}.login-submit:disabled{opacity:.6;cursor:wait}@media(max-width:640px){.rs-password-checks{grid-template-columns:1fr}}


/* v5.4 — full-width dark portal and overflow guard */
body.client-portal-body.visual-v5,
html[data-theme="dark"] body.client-portal-body.visual-v5{
  margin:0;
  min-height:100vh;
  overflow-x:hidden;
}
.client-portal-body.visual-v5 #clientApp,
.client-portal-body.visual-v5 .rs2-shell,
.client-portal-body.visual-v5 .rs5-shell{
  width:100%;
  max-width:none;
  margin:0;
}
.client-portal-body.visual-v5 .rs2-main,
.client-portal-body.visual-v5 .rs5-main{
  width:100%;
  min-width:0;
  overflow-x:hidden;
}
html[data-theme="dark"]{background:#081416;}


/* v5.5 — eliminate white side bars with hard portal background isolation */
.client-portal-root{
  min-height:100vh;
  width:100%;
  display:block;
  padding:0;
  margin:0;
  background:transparent;
}
body.client-portal-body.visual-v5,
.client-portal-body.visual-v5 #clientApp,
.client-portal-body.visual-v5 .rs2-shell,
.client-portal-body.visual-v5 .rs5-shell,
.client-portal-body.visual-v5 .rs2-main,
.client-portal-body.visual-v5 .rs5-main{
  background:var(--rs5-bg)!important;
}
.client-portal-body.visual-v5 .rs2-shell,
.client-portal-body.visual-v5 .rs5-shell{
  min-height:100vh;
  width:100%;
  max-width:none!important;
  margin:0!important;
  gap:0!important;
}
.client-portal-body.visual-v5 .rs2-main,
.client-portal-body.visual-v5 .rs5-main{
  min-width:0;
  width:100%;
  background:
    radial-gradient(circle at 78% -10%,color-mix(in srgb,var(--client-accent) 7%,transparent),transparent 29%),
    var(--rs5-bg)!important;
}
html[data-theme="dark"] body.client-portal-body.visual-v5,
html[data-theme="dark"] .client-portal-body.visual-v5 #clientApp,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-shell,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-shell,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs2-main,
html[data-theme="dark"] .client-portal-body.visual-v5 .rs5-main{
  background-color:#081416!important;
}


/* v5.6 — definitive legacy max-width neutralization */
body.client-portal-body.visual-v5 .rs2-main,
body.client-portal-body.visual-v5 .rs5-main,
body.client-portal-body.visual-v3.visual-v5 .rs2-main,
body.client-portal-body.visual-v4.visual-v5 .rs2-main,
body.client-portal-body.visual-v3.visual-v4.visual-v5 .rs2-main{
  max-width:none!important;
  width:auto!important;
  margin:0!important;
  min-width:0!important;
  justify-self:stretch!important;
}
body.client-portal-body.visual-v5 .rs2-shell,
body.client-portal-body.visual-v5 .rs5-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  grid-template-columns:232px minmax(0,1fr)!important;
}
@media(max-width:1100px){
  body.client-portal-body.visual-v5 .rs2-shell,
  body.client-portal-body.visual-v5 .rs5-shell{grid-template-columns:205px minmax(0,1fr)!important;}
}
@media(max-width:760px){
  body.client-portal-body.visual-v5 .rs2-shell,
  body.client-portal-body.visual-v5 .rs5-shell{display:block!important;}
}


/* v5.7 — DARK ONLY: light mode removed from client-facing application */
body.client-portal-body.visual-v5{
  --rs5-bg:#081416;--rs5-panel:#0e1c1f;--rs5-panel-2:#122326;--rs5-text:#f1f7f5;--rs5-muted:#91a3a1;--rs5-line:#22373a;--rs5-line-2:#192d30;
  --bg:#081416;--panel:#0e1c1f;--text:#f1f7f5;--muted:#91a3a1;--line:#22373a;--soft:#122326;--accent-soft:#15372f;
  background:#081416!important;color:#f1f7f5!important;color-scheme:dark!important;
}
body.client-portal-body.visual-v5 #clientApp,body.client-portal-body.visual-v5 .client-portal-root,body.client-portal-body.visual-v5 .rs2-shell,body.client-portal-body.visual-v5 .rs5-shell{background:#081416!important}
body.client-portal-body.visual-v5 .rs2-main,body.client-portal-body.visual-v5 .rs5-main{max-width:none!important;width:auto!important;margin:0!important;justify-self:stretch!important;background:radial-gradient(circle at 78% -10%,rgba(77,229,168,.06),transparent 29%),#081416!important}
body.client-portal-body.visual-v5 .rs2-sidebar,body.client-portal-body.visual-v5 .rs5-sidebar{background:#091619!important;border-right-color:#1d3033!important}
body.client-portal-body.visual-v5 .rs5-theme-mini,body.client-portal-body.visual-v5 .rs5-theme-selector,.login-page-v5 .login-theme-toggle{display:none!important}


/* v5.8 — final dark component migration + working control system */
.client-portal-body.visual-v5 .rs4-home-hero{
  position:relative;isolation:isolate;overflow:hidden;display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:34px;align-items:end;
  padding:30px 31px 28px;margin:0 0 14px;border:1px solid var(--rs5-line);border-radius:21px;
}
.client-portal-body.visual-v5 .rs4-home-hero-copy,.client-portal-body.visual-v5 .rs4-home-hero-status{position:relative;z-index:2}
.client-portal-body.visual-v5 .rs4-home-hero h1{max-width:780px;margin:7px 0 9px;font-size:34px;line-height:1.04;letter-spacing:-.052em;font-weight:690}
.client-portal-body.visual-v5 .rs4-home-hero p{max-width:690px;margin:0;font-size:14px;line-height:1.65}
.client-portal-body.visual-v5 .rs4-home-kicker{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:650;color:var(--rs5-dark-accent)}
.client-portal-body.visual-v5 .rs4-home-kicker i{width:6px;height:6px;border-radius:50%;background:var(--rs5-dark-accent)}
.client-portal-body.visual-v5 .rs4-hero-actions{display:flex;align-items:center;gap:8px;margin-top:21px;flex-wrap:wrap}
.client-portal-body.visual-v5 .rs4-home-hero-status{border:1px solid var(--rs5-line);border-radius:15px;background:#0d1b1e;padding:17px 18px;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.client-portal-body.visual-v5 .rs4-live-pill{display:flex;align-items:center;gap:7px;font-size:14px;color:#a9bbb7;margin-bottom:13px}
.client-portal-body.visual-v5 .rs4-live-pill i{width:6px;height:6px;border-radius:50%;background:var(--rs5-dark-accent);box-shadow:0 0 0 4px rgba(77,229,168,.08)}
.client-portal-body.visual-v5 .rs4-hero-meta{display:grid;grid-template-columns:1.3fr .7fr;border-top:1px solid var(--rs5-line);padding-top:12px;gap:12px}
.client-portal-body.visual-v5 .rs4-hero-meta small,.client-portal-body.visual-v5 .rs4-hero-meta b{display:block}
.client-portal-body.visual-v5 .rs4-hero-meta small{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#7d908d}
.client-portal-body.visual-v5 .rs4-hero-meta b{font-size:14px;color:#dbe7e3;margin-top:4px;line-height:1.35}
.client-portal-body.visual-v5 .rs4-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.client-portal-body.visual-v5 .rs4-count-badge{min-width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#122a27;color:var(--rs5-dark-accent);font-size:14px;font-weight:800}
.client-portal-body.visual-v5 .rs4-coverage-card .rs2-chip-wrap{margin-top:14px}

/* One consistent button language for every client action. */
.client-portal-body.visual-v5 .rs4-primary,
.client-portal-body.visual-v5 .rs4-secondary,
.client-portal-body.visual-v5 .rs5-btn{
  appearance:none;min-height:36px;border-radius:9px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-size:14px;font-weight:750;line-height:1;border:1px solid var(--rs5-line);cursor:pointer;text-decoration:none;
  transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease;
}
.client-portal-body.visual-v5 .rs4-primary,
.client-portal-body.visual-v5 .rs5-btn.primary{background:var(--rs5-dark-accent);border-color:var(--rs5-dark-accent);color:#062118;box-shadow:0 7px 18px rgba(77,229,168,.12)}
.client-portal-body.visual-v5 .rs4-secondary,
.client-portal-body.visual-v5 .rs5-btn.secondary{background:#102326;border-color:#294044;color:#dce8e4}
.client-portal-body.visual-v5 .rs4-primary:hover,
.client-portal-body.visual-v5 .rs5-btn.primary:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 10px 24px rgba(77,229,168,.16)}
.client-portal-body.visual-v5 .rs4-secondary:hover,
.client-portal-body.visual-v5 .rs5-btn.secondary:hover{background:#152b2e;border-color:#365055}
.client-portal-body.visual-v5 .rs4-primary:disabled,
.client-portal-body.visual-v5 .rs5-btn:disabled{opacity:.55;cursor:wait;transform:none}
.client-portal-body.visual-v5 .rs4-primary span{margin-left:4px}

/* Task/follow-up modal: complete dark form, no native browser-looking controls. */
.client-portal-body.visual-v5 .rs5-task-modal{padding:24px}
.client-portal-body.visual-v5 .rs5-form-intro{font-size:14px!important;line-height:1.55;margin:-7px 0 14px!important;color:var(--rs5-muted)!important}
.client-portal-body.visual-v5 .rs5-form-modal input,
.client-portal-body.visual-v5 .rs5-form-modal select{
  width:100%;min-height:36px;outline:none;transition:border-color .15s ease,box-shadow .15s ease;
}
.client-portal-body.visual-v5 .rs5-form-modal input:focus,
.client-portal-body.visual-v5 .rs5-form-modal select:focus{border-color:#42635e;box-shadow:0 0 0 3px rgba(77,229,168,.07)}
.client-portal-body.visual-v5 .rs5-form-error{margin-top:10px;border:1px solid #603337;background:#2a1719;color:#efb4b8;border-radius:8px;padding:9px 10px;font-size:14px}
.client-portal-body.visual-v5 .rs5-form-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:16px}
.client-portal-body.visual-v5 .rs5-form-actions .rs5-btn{min-width:92px}

/* Improve visible affordance of task list actions. */
.client-portal-body.visual-v5 .rs5-task-card{transition:border-color .15s ease,background .15s ease,transform .15s ease}
.client-portal-body.visual-v5 .rs5-task-card:hover{transform:translateY(-1px);border-color:#365055;background:#102124}
.client-portal-body.visual-v5 .rs5-task-check:hover{border-color:var(--rs5-dark-accent);background:#143029}
.client-portal-body.visual-v5 .rs5-icon-btn{width:26px;height:26px;border-radius:7px!important;display:grid;place-items:center}
.client-portal-body.visual-v5 .rs5-icon-btn:hover{background:#2b181b!important;color:#f2a9ae!important}

@media(max-width:1100px){.client-portal-body.visual-v5 .rs4-home-hero{grid-template-columns:1fr}.client-portal-body.visual-v5 .rs4-home-hero-status{max-width:520px}}
@media(max-width:800px){.client-portal-body.visual-v5 .rs4-home-hero{padding:23px 20px;border-radius:16px}.client-portal-body.visual-v5 .rs4-home-hero h1{font-size:29px}.client-portal-body.visual-v5 .rs4-hero-meta{grid-template-columns:1fr}.client-portal-body.visual-v5 .rs5-form-grid{grid-template-columns:1fr}}
@media(max-width:520px){.client-portal-body.visual-v5 .rs4-home-hero h1{font-size:25px}.client-portal-body.visual-v5 .rs4-primary,.client-portal-body.visual-v5 .rs4-secondary{width:100%}.client-portal-body.visual-v5 .rs5-form-actions{flex-direction:column-reverse}.client-portal-body.visual-v5 .rs5-form-actions .rs5-btn{width:100%}}

/* v5.8.1 — restore the missing KPI and coverage layout containers */
.client-portal-body.visual-v5 .rs2-stats,
.client-portal-body.visual-v5 .rs5-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:14px 0 24px;
  background:transparent;
}
.client-portal-body.visual-v5 .rs2-stats .rs2-stat,
.client-portal-body.visual-v5 .rs5-stats .rs2-stat{
  min-width:0;
  border:1px solid var(--rs5-line);
  border-radius:12px;
  padding:16px 17px;
  background:var(--rs5-panel);
  box-shadow:var(--rs5-shadow);
}
.client-portal-body.visual-v5 .rs2-stats .rs2-stat:after,
.client-portal-body.visual-v5 .rs5-stats .rs2-stat:after{display:none}
.client-portal-body.visual-v5 .rs2-coverage-list{display:grid;gap:8px;margin-top:12px}
.client-portal-body.visual-v5 .rs5-coverage-explain{display:grid;gap:10px}
.client-portal-body.visual-v5 .rs5-map-loading{display:grid;place-items:center;min-height:420px;color:var(--rs5-muted);font-size:14px}
@media(max-width:1050px){.client-portal-body.visual-v5 .rs2-stats,.client-portal-body.visual-v5 .rs5-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.client-portal-body.visual-v5 .rs2-stats,.client-portal-body.visual-v5 .rs5-stats{grid-template-columns:1fr}}

/* v5.9 — readable workspace, consistent actions and responsive layouts. */
body.client-portal-body.visual-v5{font-size:16px;line-height:1.5}
body.client-portal-body.visual-v5 .rs5-shell{grid-template-columns:268px minmax(0,1fr)!important}
body.client-portal-body.visual-v5 .rs5-sidebar{padding:24px 16px;overflow-y:auto;overscroll-behavior:contain}
body.client-portal-body.visual-v5 .rs5-main{padding:32px clamp(20px,3vw,48px) 64px}
body.client-portal-body.visual-v5 .rs2-nav button{min-height:46px;padding:10px 12px;font-size:15px;gap:10px}
body.client-portal-body.visual-v5 .rs5-nav-label{margin:18px 10px 6px;font-size:12px;letter-spacing:.08em}
body.client-portal-body.visual-v5 .rs2-company{padding:18px 4px;align-items:flex-start}
body.client-portal-body.visual-v5 .rs2-company>div:last-child{min-width:0;overflow-wrap:anywhere}
body.client-portal-body.visual-v5 .rs2-side-footer{padding-top:18px;margin-top:24px}
body.client-portal-body.visual-v5 .rs2-page-head{flex-wrap:wrap;gap:18px;margin-bottom:28px}
body.client-portal-body.visual-v5 .rs2-page-head>div:first-child{flex:1 1 360px}
body.client-portal-body.visual-v5 .rs2-head-meta{justify-content:flex-start;align-self:flex-start;max-width:100%}
body.client-portal-body.visual-v5 .rs2-refresh{white-space:normal}
body.client-portal-body.visual-v5 :is(p,.rs5-form-intro){font-size:16px!important;line-height:1.6}
body.client-portal-body.visual-v5 :is(h1,h2,h3,h4){line-height:1.25;letter-spacing:-.025em}
body.client-portal-body.visual-v5 h1{font-size:32px}
body.client-portal-body.visual-v5 h2{font-size:24px}
body.client-portal-body.visual-v5 h3{font-size:20px}
body.client-portal-body.visual-v5 h4{font-size:17px}
body.client-portal-body.visual-v5 .rs4-home-hero h1{font-size:clamp(28px,2.6vw,38px);line-height:1.2;letter-spacing:-.035em}
body.client-portal-body.visual-v5 .rs2-stat strong{font-size:32px;line-height:1.2;margin:12px 0 8px;overflow-wrap:anywhere}
body.client-portal-body.visual-v5 .rs2-stat span{letter-spacing:.035em}
body.client-portal-body.visual-v5 :is(button,.rs2-contact-actions a,.rs4-primary,.rs4-secondary){font-size:14px;line-height:1.4;cursor:pointer}
body.client-portal-body.visual-v5 :is(.rs4-primary,.rs4-secondary,.rs5-btn,.rs5-head-btn,.rs5-text-btn,.rs2-link-btn,.rs5-action-center-actions button,.rs2-contact-actions a,.rs2-contact-actions button,.rs2-stage-picker button,.rs2-save-btn,.rs5-note-form button,.rs5-filterbar button,.rs5-toolbar-tabs button,.rs5-segment button,.rs5-compare-tray button,.rs5-map-back,.rs2-quiet-btn){min-height:44px;padding:10px 16px;border:1px solid #345052;border-radius:10px;background:#14292c;color:#e4f2ee;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:650;white-space:normal}
body.client-portal-body.visual-v5 :is(.rs4-primary,.rs5-btn.primary,.rs5-head-btn.primary){background:#4de5a8;border-color:#4de5a8;color:#06271b}
body.client-portal-body.visual-v5 :is(.rs2-stage-picker button.active,.rs2-save-btn.active,.rs5-toolbar-tabs button.active,.rs5-segment button.active){background:#19483a;border-color:#4de5a8;color:#a6f4ce}
body.client-portal-body.visual-v5 button:hover:not(:disabled){filter:brightness(1.12)}
body.client-portal-body.visual-v5 button:disabled{opacity:.5;cursor:not-allowed}
body.client-portal-body.visual-v5 :is(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #70edbc;outline-offset:3px}
body.client-portal-body.visual-v5 :is(input:not([type=checkbox]),select,textarea){font-size:16px;line-height:1.5;min-height:46px;padding:10px 12px;border:1px solid #345052;border-radius:9px;max-width:100%;min-width:0;background:#102326;color:#f1f7f5}
body.client-portal-body.visual-v5 input[type=checkbox]{width:20px;height:20px;accent-color:#4de5a8;cursor:pointer}
body.client-portal-body.visual-v5 :is(label,.rs5-task-copy b){font-size:16px;line-height:1.5}
body.client-portal-body.visual-v5 .rs5-filterbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px;align-items:center}
body.client-portal-body.visual-v5 .rs5-filterbar>*{width:100%;min-width:0}
body.client-portal-body.visual-v5 .rs5-filterbar #fSearch{grid-column:span 2}
body.client-portal-body.visual-v5 .rs5-table-wrap{overflow:auto}
body.client-portal-body.visual-v5 .rs5-table{min-width:1200px;font-size:14px}
body.client-portal-body.visual-v5 .rs5-table :is(td,th){padding:16px 14px;line-height:1.5}
body.client-portal-body.visual-v5 .rs5-table td:nth-child(2){min-width:250px}
body.client-portal-body.visual-v5 :is(.rs5-row-arrow,.rs5-icon-btn,.rs5-task-check,.rs2-close){width:44px;height:44px;min-width:44px;flex-shrink:0;display:inline-grid;place-items:center;border:1px solid #345052;border-radius:10px;background:#14292c;color:#dff5ec;font-size:22px;padding:0}
body.client-portal-body.visual-v5 .rs5-kanban{grid-template-columns:repeat(5,minmax(270px,1fr));gap:16px;overflow-x:auto;padding-bottom:16px;align-items:start}
body.client-portal-body.visual-v5 .rs5-kanban-card{padding:18px}
body.client-portal-body.visual-v5 .rs5-kanban-col>header{flex-wrap:wrap;gap:10px;padding:16px}
body.client-portal-body.visual-v5 .rs5-kanban-card footer{flex-wrap:wrap;gap:8px}
body.client-portal-body.visual-v5 .rs5-task-list{gap:12px}
body.client-portal-body.visual-v5 .rs5-task-card{display:flex;flex-wrap:wrap;gap:14px;padding:18px;align-items:center}
body.client-portal-body.visual-v5 .rs5-task-copy{flex:1 1 240px;min-width:0;overflow-wrap:anywhere}
body.client-portal-body.visual-v5 .rs5-task-card :is(.rs5-priority,.rs5-text-btn){display:inline-flex}
body.client-portal-body.visual-v5 .rs5-task-card .rs5-priority{padding:6px 12px}
body.client-portal-body.visual-v5 .rs5-map-side{display:block;min-width:0;padding:24px}
body.client-portal-body.visual-v5 .rs5-map-toolbar{flex-wrap:wrap;gap:12px}
body.client-portal-body.visual-v5 .rs5-osm-map{touch-action:none}
body.client-portal-body.visual-v5 .rs5-map-controls button{min-width:44px;min-height:44px;font-size:24px}
body.client-portal-body.visual-v5 .rs5-form-modal{width:min(600px,100%);padding:28px;max-height:90dvh;overflow:auto;position:relative}
body.client-portal-body.visual-v5 .rs5-form-modal>h2{padding-right:44px}
body.client-portal-body.visual-v5 .rs5-form-modal label{display:grid;gap:8px;margin:16px 0}
body.client-portal-body.visual-v5 .rs2-modal-bg{padding:24px;overflow:auto;align-items:flex-start}
body.client-portal-body.visual-v5 .rs5-detail{width:min(1200px,100%);max-height:calc(100dvh - 48px);overflow:auto;margin:auto}
body.client-portal-body.visual-v5 .rs2-detail-head{gap:20px;padding:24px;align-items:flex-start}
body.client-portal-body.visual-v5 .rs2-detail-head>div{min-width:0;overflow-wrap:anywhere}
body.client-portal-body.visual-v5 .rs2-detail-cols{grid-template-columns:minmax(0,1fr) 360px}
body.client-portal-body.visual-v5 .rs2-detail-section{padding:24px}
body.client-portal-body.visual-v5 .rs2-contact-lines b{overflow-wrap:anywhere}
body.client-portal-body.visual-v5 :is(.rs5-action-center,.rs5-section-head,.rs2-section-title,.rs5-compare-tray){flex-wrap:wrap;gap:16px}
body.client-portal-body.visual-v5 :is(.rs5-action-center-actions,.rs2-contact-actions,.rs2-stage-picker,.rs5-toolbar-tabs,.rs5-saved-view-bar){display:flex;flex-wrap:wrap;gap:8px}
body.client-portal-body.visual-v5 .rs5-value-form{display:grid;gap:14px}
body.client-portal-body.visual-v5 .rs5-value-form label{display:grid;gap:8px}
body.client-portal-body.visual-v5 .rs5-mini-tasks>div>button{width:36px;height:36px;flex-shrink:0}
body.client-portal-body.visual-v5 .rs5-compare-modal{max-width:100%;width:min(1200px,100%)}
body.client-portal-body.visual-v5 .rs5-compare-scroll{overflow:auto}
body.client-portal-body.visual-v5 .rs5-compare-scroll th{min-width:180px}
body.client-portal-body.visual-v5.modal-open{overflow:hidden}
body.client-portal-body.visual-v5 .toast{z-index:10000;font-size:15px;max-width:calc(100vw - 32px)}
@media(max-width:1200px){
 body.client-portal-body.visual-v5 .rs5-shell{grid-template-columns:240px minmax(0,1fr)!important}
 body.client-portal-body.visual-v5 :is(.rs5-home-side,.rs2-account-grid,.rs2-coverage-grid){grid-template-columns:1fr}
 body.client-portal-body.visual-v5 .rs2-detail-cols{grid-template-columns:1fr}
}
@media(max-width:760px){
 body.client-portal-body.visual-v5 .rs5-shell{display:block!important}
 body.client-portal-body.visual-v5 .rs5-sidebar{position:relative;height:auto;padding:16px;overflow:visible}
 body.client-portal-body.visual-v5 .rs2-brand{padding:0 0 12px}
 body.client-portal-body.visual-v5 .rs2-company{display:none}
 body.client-portal-body.visual-v5 .rs5-nav{display:flex;overflow-x:auto;gap:8px;padding:4px 0 12px}
 body.client-portal-body.visual-v5 .rs5-nav button{flex:0 0 auto;white-space:nowrap}
 body.client-portal-body.visual-v5 .rs5-nav-label{display:none}
 body.client-portal-body.visual-v5 .rs2-side-footer{display:block;margin:0;padding:0;border:0}
 body.client-portal-body.visual-v5 .rs2-user{display:none}
 body.client-portal-body.visual-v5 .rs2-quiet-btn{width:auto;margin:4px 0 0}
 body.client-portal-body.visual-v5 .rs5-main{padding:24px 16px 48px}
 body.client-portal-body.visual-v5 .rs5-filterbar{grid-template-columns:1fr 1fr;padding:14px}
 body.client-portal-body.visual-v5 .rs5-task-copy{flex-basis:calc(100% - 60px)}
 body.client-portal-body.visual-v5 .rs2-modal-bg{padding:12px}
 body.client-portal-body.visual-v5 .rs5-detail{max-height:calc(100dvh - 24px)}
 body.client-portal-body.visual-v5 .rs5-form-modal{padding:22px}
 body.client-portal-body.visual-v5 .rs4-home-hero{padding:24px}
 body.client-portal-body.visual-v5 .rs5-funnel-modern>div{grid-template-columns:95px 1fr 30px}
}
@media(max-width:440px){
 body.client-portal-body.visual-v5 .rs5-filterbar{grid-template-columns:1fr}
 body.client-portal-body.visual-v5 .rs5-filterbar #fSearch{grid-column:auto}
 body.client-portal-body.visual-v5 :is(.rs2-fact-grid,.rs5-export-grid){grid-template-columns:1fr}
 body.client-portal-body.visual-v5 .rs2-detail-head,body.client-portal-body.visual-v5 .rs2-detail-section{padding:18px}
}
@media(prefers-reduced-motion:reduce){body.client-portal-body.visual-v5 *{scroll-behavior:auto!important;transition:none!important}}

body.client-portal-body.visual-v5 .rs5-map-cluster-list{position:absolute;inset:16px 16px auto;z-index:8;max-height:300px;overflow:auto;pointer-events:auto;background:#102326;border:1px solid #345052;border-radius:12px;padding:16px;display:grid;gap:8px}
body.client-portal-body.visual-v5 .rs5-map-cluster-list button{min-height:44px;background:#183337;border:1px solid #345052;border-radius:8px;color:#f1f7f5;text-align:left;padding:10px}

/* Production readability: operations and sign-in. */
.operations-page{font-size:16px;line-height:1.55;color-scheme:dark;background:#071315;color:#e5efec}
.operations-page .btn,.operations-page .nav button{min-height:44px;padding:10px 16px;font-size:15px;white-space:normal}
.operations-page .input,.operations-page .select,.operations-page .textarea{min-height:46px;font-size:16px;max-width:100%}
.operations-page .muted,.operations-page .meta,.operations-page .badge,.operations-page .chip,.operations-page label,.operations-page td,.operations-page th{font-size:14px!important}
.operations-page .actions{gap:10px;flex-wrap:wrap}.operations-page .table-wrap{max-width:100%;overflow:auto}
.operations-page .section-head{gap:16px;flex-wrap:wrap}.operations-page .panel{min-width:0}
.login-page input{min-height:48px;font-size:16px}.login-page .login-submit{min-height:50px;font-size:16px}
@media(max-width:760px){.operations-page .split{grid-template-columns:1fr!important}.operations-page .grid.kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.operations-page .topbar{align-items:flex-start;flex-direction:column}.operations-page .shell{min-width:0}}

.operations-page{--bg:#071315;--panel:#102024;--text:#e5efec;--muted:#9cabae;--line:#294045;--soft:#1c3135;--accent:#238368;--accent-soft:#173c34}
.operations-page .btn{background:var(--soft);color:var(--text)}.operations-page .btn:hover{background:#264348}.operations-page .btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.operations-page .btn.danger{background:#392426;color:#ffc0c0;border-color:#704247}
.operations-page .input,.operations-page .select,.operations-page .textarea,.operations-page .table-wrap{background:var(--panel);color:var(--text)}
.operations-page .table th{background:#152a2e;color:#adc0c3}.operations-page .table td{border-color:var(--line)}.operations-page .table tr:hover td{background:#152a2e}
.operations-page .notice{background:#132d2a;color:#bed9d0;border-color:#31564b}.operations-page .badge{background:var(--soft);color:#c2d4d6}.operations-page .badge.ok{background:#164d3b;color:#99efd0}.operations-page .badge.hold{background:#463818;color:#f7dda2}.operations-page .badge.bad{background:#482529;color:#ffc0c0}
.login-page{overflow-x:hidden;overflow-y:auto}button:disabled{cursor:wait;opacity:.62}
