/* Shared refinement for the existing Wahbi portal; illustration assets remain raster art. */
.portal-app{background:#f4f7fd}.portal-app main{max-width:1880px}.portal-topbar{background:#ffffffef;box-shadow:0 3px 20px #163f7403}.portal-sidebar{background:#fff;box-shadow:7px 0 35px #133c7003}.portal-sidebar nav>a{position:relative}.portal-app .panel,.admin-panel,.admin-company{box-shadow:0 7px 25px #173e7504}.portal-app .button.primary{box-shadow:0 6px 18px #155bff20}.portal-app .button:hover{box-shadow:0 7px 20px #18488b13}.portal-app .panel-head h2{letter-spacing:-.035em}.portal-app .page-heading .eyebrow{letter-spacing:.16em}.portal-app .page-heading h1{font-weight:750}.portal-view-selector{padding:4px;background:#f2f6fe;border-radius:11px;gap:4px;flex:none}.portal-view-selector a{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:550;min-height:31px;padding:5px 10px}.portal-view-selector a svg{width:15px;height:15px}.portal-view-selector a.admin-entry{background:#e4edff;color:#155bff}.portal-view-selector a.admin-entry:hover{background:#155bff;color:white}.portal-app .global-search{max-width:230px}.portal-app .portal-sidebar .portal-brand{margin-bottom:23px}.portal-app .sidebar-caption{margin-top:23px}.portal-app .sidebar-import{margin-top:19px;margin-bottom:20px}.portal-app .portal-sidebar nav{gap:4px}.portal-app .portal-sidebar nav>a{padding:10px 13px;min-height:42px;font-size:13px}.portal-app .sidebar-import>span{display:none}.portal-app .sidebar-import{padding:14px}.portal-app .sidebar-advisor{padding-top:15px}.portal-app .sidebar-home{margin-top:14px}.portal-login .login-preview-views a:last-child{background:#155bff;border-color:#155bff;box-shadow:0 7px 18px #155bff1a}.portal-login .login-preview-views a:last-child small{color:#fff}.portal-login .login-preview-views a:last-child svg{color:#fff}.portal-login .login-preview-views strong{font-size:14px}.portal-login .login-preview-views a{transition:transform .2s,box-shadow .2s}.portal-login .login-preview-views a:hover{transform:translateY(-2px);box-shadow:0 8px 22px #17468218}.portal-login .login-preview-views a:focus-visible{outline-offset:4px}.portal-app .kpi{transition:box-shadow .2s,border-color .2s}.portal-app .kpi:hover{border-color:#a9c5ff;box-shadow:0 9px 23px #155bff0b}.portal-app .chart-panel{box-shadow:0 12px 35px #10294f16}.portal-app .welcome-panel{border-color:#d7e5f9}.portal-app .portal-footer{font-size:11px}.portal-app .admin-context{border-bottom:1px solid #e0e8f5;margin-bottom:21px;padding-bottom:17px}.portal-app .admin-context p{font-size:11px}.portal-app .admin-context span{font-size:12px}.portal-app .admin-context a{font-weight:600}.portal-app .admin-hero{border-color:#d3e3fa}.portal-app .admin-kpi{box-shadow:0 7px 22px #14386d04}.portal-app .admin-kpi.accent{box-shadow:0 9px 24px #155bff1a}.portal-app .admin-panel-head h2{letter-spacing:-.035em}.portal-app .admin-company:hover{border-color:#bdd2f7}.portal-app .admin-table td strong{font-weight:600}.portal-app .admin-sidebar-note{background:#f2f6ff}.portal-app .admin-sidebar-note a{font-size:13px}.portal-app .admin-sidebar-note strong{font-size:15px}.portal-app .admin-workspace-label{background:#edf4ff}.portal-app .admin-workspace-label strong{font-size:14px}.portal-app .admin-sidebar-foot{padding-top:23px}.portal-app .admin-profile{font-weight:550}
@media(min-width:1700px){.portal-app .portal-topbar{height:84px;padding-inline:45px}.portal-app main{padding:32px 45px 50px}.portal-app .page-heading h1{font-size:38px}.portal-app .page-heading p{font-size:16px}.portal-app .welcome-panel h1{font-size:38px}.portal-app .welcome-panel p{font-size:16px}.portal-app .welcome-panel{min-height:280px}.portal-app .welcome-panel>img{width:380px;height:280px}.portal-app .welcome-panel>div{padding-right:360px}.portal-app .kpi>strong{font-size:37px}.portal-app .kpi-label{font-size:14px}.portal-app .kpi-foot{font-size:12px}.portal-app .kpi{padding:23px}.portal-app .panel-head h2{font-size:22px}.portal-app .panel-head p{font-size:13px}.portal-app .data-table{font-size:15px}.portal-app .data-table button{font-size:14px}.portal-app .data-table th{font-size:12px}.portal-app .panel-head .link-button{font-size:14px}.portal-app .task-row strong{font-size:15px}.portal-app .task-row p{font-size:13px}.portal-app .portal-view-selector a{font-size:13px}.portal-app .button{font-size:15px}.portal-app .admin-hero h1{font-size:45px}.portal-app .admin-hero p{font-size:16px}.portal-app .admin-hero-copy{padding:34px}.portal-app .admin-kpi strong{font-size:37px}.portal-app .admin-kpi>span{font-size:14px}.portal-app .admin-kpi small{font-size:12px}.portal-app .admin-table{font-size:15px}.portal-app .admin-table td strong{font-size:15px}.portal-app .admin-table td small{font-size:12px}.portal-app .admin-table th{font-size:12px}.portal-app .admin-mission-row strong{font-size:15px}.portal-app .admin-mission-row small{font-size:12px}}
@media(min-width:2800px){.portal-app{font-size:19px}.portal-app .portal-sidebar{width:310px;padding:37px 25px 24px}.portal-app .portal-workspace{margin-left:310px}.portal-app main{max-width:3300px;padding:43px 65px 65px}.portal-app .portal-topbar{height:106px;padding-inline:65px;gap:25px}.portal-app .portal-sidebar .portal-brand{margin-left:9px;margin-bottom:39px}.portal-app .portal-brand strong{font-size:37px}.portal-app .portal-brand>img{width:63px}.portal-app .portal-brand small{font-size:12px}.portal-app .portal-sidebar nav>a{font-size:18px;min-height:57px;gap:15px;padding:15px 17px}.portal-app .portal-sidebar nav>a svg{width:24px;height:24px}.portal-app .sidebar-caption{font-size:12px;margin:31px 17px 16px}.portal-app .workspace-button{padding:18px 13px}.portal-app .workspace-button strong{font-size:16px}.portal-app .workspace-button small{font-size:13px}.portal-app .company-monogram{width:46px;height:48px;font-size:15px}.portal-app .sidebar-import{padding:20px;margin-top:30px}.portal-app .sidebar-import strong{font-size:18px}.portal-app .sidebar-import small{font-size:14px}.portal-app .sidebar-import em{font-size:15px}.portal-app .sidebar-advisor strong{font-size:14px}.portal-app .sidebar-advisor small{font-size:12px}.portal-app .sidebar-home{font-size:13px}.portal-app .advisor-avatar{width:44px;height:44px;font-size:20px}.portal-app .topbar-path{font-size:16px}.portal-app .portal-view-selector a{font-size:16px;min-height:40px;padding:7px 14px}.portal-app .portal-view-selector a svg{width:19px;height:19px}.portal-app .global-search{max-width:400px;gap:14px}.portal-app .global-search input{font-size:16px}.portal-app .global-search>svg{width:22px}.portal-app .profile-button{width:45px;height:45px;font-size:14px}.portal-app .notification-button{width:45px;height:45px}.portal-app .notification-button svg{width:24px;height:24px}.portal-app .button{font-size:18px;padding:15px 23px;min-height:54px;border-radius:13px}.portal-app .button svg{width:23px;height:23px}.portal-app .button.small{font-size:15px;min-height:43px;padding:11px 17px}.portal-app .icon-button{width:47px;height:47px}.portal-app .icon-button svg{width:23px;height:23px}.portal-app .portal-page-toolbar{gap:20px;margin-bottom:31px}.portal-app .mode-switch button{font-size:14px;padding:9px 15px}.portal-app .local-note{font-size:14px}.portal-app .portal-page-toolbar>.button{font-size:16px;min-height:48px}.portal-app .page-heading{margin-bottom:33px}.portal-app .page-heading h1{font-size:53px}.portal-app .page-heading .eyebrow{font-size:13px}.portal-app .page-heading p{font-size:20px;max-width:1100px}.portal-app .welcome-panel{min-height:350px;border-radius:27px}.portal-app .welcome-panel>div{padding:43px 560px 43px 44px}.portal-app .welcome-panel h1{font-size:49px}.portal-app .welcome-panel p{font-size:21px;line-height:1.8}.portal-app .welcome-panel .eyebrow{font-size:13px}.portal-app .welcome-panel .text-button{font-size:17px;margin-top:22px}.portal-app .welcome-panel>img{width:580px;height:350px;right:25px}.portal-app .kpi-grid{gap:23px;margin:28px 0}.portal-app .kpi{padding:28px 31px;border-radius:19px}.portal-app .kpi-label{font-size:18px}.portal-app .kpi>strong{font-size:47px}.portal-app .kpi>strong small{font-size:14px}.portal-app .kpi-foot{font-size:15px}.portal-app .panel-head{padding:28px 31px}.portal-app .panel-head h2{font-size:28px}.portal-app .panel-head p{font-size:17px}.portal-app .panel-head .link-button{font-size:17px}.portal-app .task-row{padding:24px 29px}.portal-app .task-row strong{font-size:19px}.portal-app .task-row p{font-size:16px}.portal-app .task-panel-bottom{font-size:15px}.portal-app .task-head-count{font-size:14px}.portal-app .chart-wrap{height:310px}.portal-app .chart-period button{font-size:14px;padding:7px 12px}.portal-app .chart-legend,.portal-app .chart-data-details{font-size:14px}.portal-app .data-table{font-size:18px}.portal-app .data-table td,.portal-app .data-table th{padding:21px 28px}.portal-app .data-table th{font-size:15px}.portal-app .data-table button{font-size:17px}.portal-app .status{font-size:14px;padding:5px 10px}.portal-app .filters button{font-size:16px}.portal-app .table-search input{font-size:16px}.portal-app .table-pager{font-size:15px}.portal-app .table-pager button{font-size:14px}.portal-app .portal-footer{font-size:14px;padding-inline:65px}.portal-app .admin-context{font-size:15px;margin-bottom:28px;padding-bottom:23px}.portal-app .admin-context p{font-size:14px}.portal-app .admin-context span{font-size:16px}.portal-app .admin-context a{font-size:15px}.portal-app .admin-profile,.portal-app .admin-view-link{font-size:17px}.portal-app .admin-workspace-label{padding:19px 13px;gap:13px}.portal-app .admin-workspace-label strong{font-size:18px}.portal-app .admin-workspace-label small{font-size:14px}.portal-app .admin-workspace-label>span{width:45px;height:48px}.portal-app .admin-sidebar-note{padding:24px 20px;margin-top:41px}.portal-app .admin-sidebar-note strong{font-size:20px}.portal-app .admin-sidebar-note p{font-size:16px}.portal-app .admin-sidebar-note a{font-size:16px}.portal-app .admin-sidebar-foot>a{font-size:15px}.portal-app .preview-pill{font-size:14px}.portal-app .admin-hero{min-height:350px;border-radius:27px}.portal-app .admin-hero-copy{padding:43px}.portal-app .admin-hero h1{font-size:56px;max-width:870px}.portal-app .admin-hero p{font-size:21px;max-width:820px}.portal-app .admin-hero .eyebrow{font-size:13px}.portal-app .admin-hero-art img{max-height:355px}.portal-app .admin-hero-art>span{font-size:15px;right:30px;bottom:25px;padding:9px 16px}.portal-app .admin-kpis{gap:23px}.portal-app .admin-kpi{padding:26px 29px;border-radius:19px}.portal-app .admin-kpi>span{font-size:18px}.portal-app .admin-kpi strong{font-size:46px}.portal-app .admin-kpi small{font-size:15px}.portal-app .admin-grid{gap:26px}.portal-app .admin-panel{border-radius:22px}.portal-app .admin-panel-head{padding:27px 30px}.portal-app .admin-panel-head h2{font-size:27px}.portal-app .admin-panel-head p,.portal-app .admin-panel-head>a{font-size:16px}.portal-app .admin-mission-row{padding:23px 29px;gap:15px}.portal-app .admin-mission-row strong{font-size:19px}.portal-app .admin-mission-row small{font-size:15px}.portal-app .admin-service-icon{width:48px;height:50px}.portal-app .admin-service-icon svg{width:25px;height:25px}.portal-app .admin-status{font-size:14px;padding:6px 11px}.portal-app .admin-workload{padding:29px;gap:24px}.portal-app .admin-load-line>div{font-size:17px}.portal-app .admin-team-note{padding:19px;margin:0 29px 27px}.portal-app .admin-team-note p{font-size:16px}.portal-app .admin-recent{margin-top:28px}.portal-app .admin-activity{padding:22px 29px}.portal-app .admin-activity p{font-size:16px}.portal-app .admin-activity small{font-size:14px}.portal-app .admin-company{padding:30px}.portal-app .admin-company h2{font-size:28px}.portal-app .admin-company p{font-size:18px}.portal-app .admin-company-top small{font-size:16px}.portal-app .admin-company-bottom small,.portal-app .admin-company-bottom .link-button{font-size:16px}.portal-app .admin-tags span{font-size:14px}.portal-app .admin-table{font-size:18px}.portal-app .admin-table td{padding:25px 30px}.portal-app .admin-table td strong{font-size:18px}.portal-app .admin-table td small{font-size:15px}.portal-app .admin-table th{font-size:15px;padding:18px 30px}.portal-app .admin-search input,.portal-app .admin-filters select{font-size:17px;padding-block:16px}.portal-app .admin-search{min-width:400px}.portal-app .admin-filters select{max-width:330px}.portal-app .admin-table-caption{font-size:16px}.portal-app .admin-access-intro{padding:26px 29px}.portal-app .admin-access-intro h2{font-size:24px}.portal-app .admin-access-intro p{font-size:18px;max-width:1200px}.portal-app .admin-permission-pills span{font-size:13px}.portal-app .message-bubble{font-size:18px}.portal-app .message-bubble strong{font-size:15px}.portal-app .message-time{font-size:14px}.portal-app .message-compose textarea{font-size:19px}.portal-app .conversation-header strong{font-size:21px}.portal-app .conversation-header small{font-size:16px}.portal-app .thread-button strong{font-size:17px}.portal-app .thread-button small{font-size:14px}.portal-app .message-compose small{font-size:14px}.portal-app .document-card h3{font-size:20px}.portal-app .document-card p{font-size:16px}.portal-app .document-card-bottom .link-button{font-size:16px}.portal-app .settings-card h2{font-size:28px}.portal-app .settings-card>p,.portal-app .settings-security{font-size:18px}.portal-app .settings-form label{font-size:17px}.portal-app .settings-form input{font-size:19px}.portal-app .app-section-note{font-size:15px}.portal-app .portal-dialog{max-width:900px}.portal-app .portal-dialog .dialog-head h2{font-size:35px}.portal-app .dialog-body{font-size:18px}.portal-app .portal-form label{font-size:16px}.portal-app .portal-form input,.portal-app .portal-form select,.portal-app .portal-form textarea{font-size:19px}}
@media(max-width:1100px){.portal-app .global-search{display:none}.portal-app .portal-topbar{gap:12px}.portal-app .topbar-path{font-size:11px}.portal-view-selector a{font-size:11px;padding-inline:8px}}
@media(max-width:760px){.portal-app .portal-topbar{gap:9px;padding-inline:16px}.portal-view-selector{padding:3px;gap:2px}.portal-view-selector a{font-size:10px;padding:5px 7px;min-height:30px}.portal-view-selector a svg{width:14px;height:14px}.portal-view-selector .connection-label{display:none}.portal-view-selector a:first-child{padding-inline:7px}.portal-view-selector .admin-entry>svg:last-child{display:none}.portal-app .portal-sidebar nav>a{font-size:14px;min-height:44px}.portal-app .sidebar-caption{margin-top:25px}.portal-app .sidebar-import{margin-top:19px}.portal-app main{padding-top:22px}.portal-login .login-preview-views strong{font-size:12px}.portal-login .login-preview-views a{padding:13px 11px}.portal-app .admin-context{margin-bottom:20px}.portal-app .portal-footer{font-size:10px}}
@media(prefers-reduced-motion:reduce){.portal-app *,.portal-login *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* On a 4K desktop, bring actions and dossiers alongside the figures. */
@media(min-width:2800px){body[data-client-route="vue-ensemble"] #portal-view{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(650px,1fr);gap:25px;align-items:start}body[data-client-route="vue-ensemble"] .welcome-panel{grid-column:1;grid-row:1;min-height:330px;margin:0;padding:0}body[data-client-route="vue-ensemble"] .welcome-panel>div{padding:37px 390px 37px 38px;max-width:none;width:100%}body[data-client-route="vue-ensemble"] .welcome-panel h1{font-size:46px;max-width:1100px}body[data-client-route="vue-ensemble"] .welcome-panel p{font-size:20px;max-width:850px}body[data-client-route="vue-ensemble"] .welcome-panel>img{width:430px;height:295px;right:14px;top:13px}body[data-client-route="vue-ensemble"] .kpi-grid{grid-column:1;grid-row:2;margin:0;gap:17px}body[data-client-route="vue-ensemble"] .kpi{padding:25px 23px}body[data-client-route="vue-ensemble"] .kpi-label{font-size:16px}body[data-client-route="vue-ensemble"] .kpi>strong{font-size:42px}body[data-client-route="vue-ensemble"] .kpi-foot{font-size:13px}body[data-client-route="vue-ensemble"] .client-plus-command{grid-column:2;grid-row:1 / span 2;margin:0;align-self:stretch;padding:31px 33px;display:flex;flex-direction:column}body[data-client-route="vue-ensemble"] .client-plus-command h2{font-size:32px}body[data-client-route="vue-ensemble"] .client-plus-quick-actions{grid-template-columns:1fr;gap:12px;margin-top:21px}body[data-client-route="vue-ensemble"] .client-plus-quick-actions>button{padding:18px 21px}body[data-client-route="vue-ensemble"] .client-plus-quick-actions>button>span{font-size:19px}body[data-client-route="vue-ensemble"] .client-plus-quick-actions small{font-size:15px}body[data-client-route="vue-ensemble"] .client-plus-pulse{margin-top:auto;padding-top:20px;flex-wrap:wrap;gap:15px}body[data-client-route="vue-ensemble"] .client-plus-pulse>a{padding-inline:15px}body[data-client-route="vue-ensemble"] .client-plus-pulse>a:first-child{padding-left:0}body[data-client-route="vue-ensemble"] .client-plus-pulse>a span{font-size:14px;max-width:100px}body[data-client-route="vue-ensemble"] .client-plus-pulse>p{margin-left:0;max-width:none;flex-basis:100%;padding:0;font-size:13px}body[data-client-route="vue-ensemble"] .dashboard-middle{grid-column:1;grid-row:3;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;margin:0}body[data-client-route="vue-ensemble"] .dashboard-middle .panel-head{padding:24px}body[data-client-route="vue-ensemble"] .dashboard-middle .panel-head h2{font-size:24px}body[data-client-route="vue-ensemble"] .dashboard-middle .panel-head p{font-size:15px}body[data-client-route="vue-ensemble"] .task-row{padding:23px}body[data-client-route="vue-ensemble"] .task-row strong{font-size:17px}body[data-client-route="vue-ensemble"] .task-row p{font-size:14px}body[data-client-route="vue-ensemble"] #portal-view>section.panel{grid-column:1;grid-row:4;margin:0!important}body[data-client-route="vue-ensemble"] .client-plus-dashboard-followup{grid-column:2;grid-row:3 / span 2;grid-template-columns:1fr;gap:24px;margin:0}body[data-client-route="vue-ensemble"] .client-plus-dossier-summary .panel-head{padding:25px 29px}body[data-client-route="vue-ensemble"] .client-plus-dossier-summary .panel-head h2{font-size:27px}body[data-client-route="vue-ensemble"] .client-plus-compact-dossiers>button{padding-block:20px}body[data-client-route="vue-ensemble"] .client-plus-connection-panel{min-height:350px;padding:29px}body[data-client-route="vue-ensemble"] .client-plus-connection-copy{max-width:67%}body[data-client-route="vue-ensemble"] .client-plus-connection-copy h2{font-size:32px}body[data-client-route="vue-ensemble"] .client-plus-connection-copy>p{font-size:18px}body[data-client-route="vue-ensemble"] .client-plus-connection-panel>img{width:62%;right:-6%;bottom:-12%;opacity:.7}}
.admin-chat-attachment span{display:grid;gap:4px;text-align:left;min-width:0}
.admin-chat-attachment small{display:block;overflow-wrap:anywhere;line-height:1.5}
