/* NAAM Hospitals Shareholder Portal — Modern React UI layer */
:root{--n-950:#073b2b;--n-900:#0a4b36;--n-800:#0c5d42;--n-700:#147452;--n-600:#1c8a61;--n-500:#31a875;--n-100:#dff5e9;--n-50:#f1faf5;--ink:#14342b;--muted:#697e75;--bg:#f3f8f5;--border:rgba(15,92,65,.12);--shadow:0 12px 32px rgba(16,70,52,.08);--shadow-lg:0 28px 80px rgba(11,61,43,.16);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
/* Login / logout */
body.login-page{margin:0;background:#eff7f2!important;color:var(--ink)}
.react-login-page,.react-logout-page{min-height:100vh;position:relative;overflow:hidden;display:grid;place-items:center;padding:clamp(18px,3vw,44px);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background:radial-gradient(circle at 8% 0%,rgba(49,168,117,.14),transparent 34%),radial-gradient(circle at 92% 100%,rgba(73,126,211,.11),transparent 34%),linear-gradient(145deg,#f9fcfa,#edf7f2 50%,#f5f8fb)}
.react-login-page:before,.react-logout-page:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.42;background-image:linear-gradient(rgba(15,92,65,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(15,92,65,.04) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}
.react-login-orb,.react-logout-glow{position:absolute;width:430px;height:430px;border-radius:50%;filter:blur(8px);opacity:.34;pointer-events:none;animation:nFloat 9s ease-in-out infinite alternate}.react-login-orb-a{left:-180px;top:-180px;background:rgba(49,168,117,.22)}.react-login-orb-b{right:-170px;bottom:-190px;background:rgba(79,127,213,.18);animation-delay:-4s}.react-logout-glow{background:rgba(49,168,117,.12)}
@keyframes nFloat{to{transform:translate3d(24px,18px,0) scale(1.08)}}@keyframes nIn{from{opacity:0;transform:translateY(16px) scale(.99)}to{opacity:1;transform:none}}
.react-login-frame{position:relative;z-index:2;width:min(1120px,100%);min-height:650px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);overflow:hidden;border:1px solid var(--border);border-radius:30px;background:rgba(255,255,255,.9);box-shadow:0 34px 100px rgba(12,67,45,.18);backdrop-filter:blur(20px);animation:nIn .5s ease-out both}
.react-login-brand-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:clamp(34px,5vw,64px);color:#fff;background:linear-gradient(150deg,#073d2c,#0b5c41 60%,#13734f)}.react-login-brand-panel:before{content:"";position:absolute;width:460px;height:460px;right:-230px;top:-190px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.018)}
.react-login-brand-top,.react-login-brand-copy,.react-login-feature-grid,.react-login-trust-row{position:relative;z-index:1}.react-login-brand-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.react-login-logo,.react-logout-logo{display:grid;place-items:center;width:176px;min-height:74px;padding:9px 13px;border-radius:17px;background:#fff;box-shadow:0 14px 38px rgba(0,0,0,.15)}.react-login-logo img,.react-logout-logo img{display:block;width:100%;height:auto;object-fit:contain}
.react-security-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);font-size:11px;font-weight:700;white-space:nowrap}.react-login-brand-copy{margin-top:auto;padding-top:52px}.react-eyebrow,.react-auth-kicker,.react-logout-kicker{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.react-eyebrow{color:rgba(225,250,236,.72)}.react-login-brand-copy h2{margin:14px 0 16px;max-width:620px;font-size:clamp(32px,4vw,48px);line-height:1.04;letter-spacing:-.045em}.react-login-brand-copy p{max-width:560px;margin:0;color:rgba(235,250,242,.76);font-size:14px;line-height:1.75}
.react-login-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:28px}.react-login-feature-grid>div{display:grid;grid-template-columns:38px 1fr;column-gap:10px;row-gap:2px;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(255,255,255,.055);transition:.2s}.react-login-feature-grid>div:hover{transform:translateY(-2px);background:rgba(255,255,255,.085)}.react-login-feature-grid>div>span{grid-row:1/span 2;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.1);color:#baf0d0}.react-login-feature-grid strong{font-size:12px}.react-login-feature-grid small{font-size:10.5px;color:rgba(231,247,239,.62);line-height:1.4}.react-login-trust-row{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:24px;color:rgba(235,250,242,.7);font-size:10.5px;font-weight:650}.react-login-trust-row span{display:inline-flex;align-items:center;gap:6px}
.react-login-auth-panel{display:grid;align-items:center;padding:clamp(30px,5vw,58px);background:rgba(255,255,255,.84)}.react-auth-inner{width:min(410px,100%);margin:auto}.react-auth-heading{margin-bottom:25px}.react-auth-kicker{color:var(--n-700)}.react-auth-heading h1{margin:10px 0 8px;font-size:clamp(29px,4vw,38px);line-height:1.1;letter-spacing:-.038em;color:#133f31}.react-auth-heading p{margin:0;color:#708179;font-size:13.5px;line-height:1.65}.react-login-alert,.react-login-error{display:flex;align-items:flex-start;gap:9px;margin-bottom:15px;padding:12px 13px;border-radius:13px;font-size:12px;line-height:1.5}.react-login-alert{border:1px solid rgba(47,125,91,.18);background:#eff9f3;color:#315e4a}.react-login-alert.warning{border-color:rgba(190,137,37,.22);background:#fff8e8;color:#7c5a1e}.react-login-error{border:1px solid rgba(187,63,72,.18);background:#fff1f2;color:#8c3943}.react-field-label{display:block;margin-bottom:7px;color:#2d4c41;font-size:11.5px;font-weight:750}.react-input-shell{display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid #d8e4de;border-radius:13px;background:#fff;color:#7f948b;transition:.18s}.react-input-shell:focus-within{border-color:#56a882;box-shadow:0 0 0 4px rgba(49,168,117,.11),0 8px 20px rgba(17,66,49,.06);transform:translateY(-1px);color:var(--n-700)}.react-input-shell input{width:100%;min-height:49px;border:0;outline:0;background:transparent;color:#173f32;font:inherit;font-size:13.5px}.react-input-shell input::placeholder{color:#9caaa4}
.react-primary-action,.react-secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 17px;border-radius:13px;font:inherit;font-size:12.5px;font-weight:780;text-decoration:none;cursor:pointer;transition:.18s}.react-auth-inner .react-primary-action{width:100%;margin-top:15px;border:0;color:#fff;background:linear-gradient(135deg,#0d6547,#1b8b61);box-shadow:0 12px 28px rgba(16,116,80,.22)}.react-primary-action:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 34px rgba(16,116,80,.26)}.react-primary-action:disabled{opacity:.68;cursor:wait}.react-otp-status{display:flex;align-items:center;gap:8px;margin-bottom:17px;padding:11px 12px;border-radius:12px;background:#eef9f3;color:#2f6b51;font-size:11.5px}.react-otp-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.react-otp-grid input{width:100%;height:52px;border:1px solid #d8e4de;border-radius:12px;background:#fff;color:#174a38;text-align:center;font:inherit;font-size:20px;font-weight:800;outline:0;transition:.15s}.react-otp-grid input:focus{border-color:#49a278;box-shadow:0 0 0 3px rgba(49,168,117,.11);transform:translateY(-1px)}.react-auth-links{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;margin-top:10px;color:#82918b;font-size:10.5px}.react-auth-links button{display:inline-flex;align-items:center;gap:5px;padding:4px 0;border:0;background:transparent;color:var(--n-700);font:inherit;font-size:10.5px;font-weight:700;cursor:pointer}.react-auth-security-note,.react-auth-support{display:flex;align-items:flex-start;gap:8px;color:#7c8d86;font-size:10.5px;line-height:1.5}.react-auth-security-note{margin-top:22px;padding-top:18px;border-top:1px solid #e5ece8}.react-auth-support{margin-top:10px}.react-auth-support a{color:var(--n-700);font-weight:700;text-decoration:none}.react-login-footer{position:absolute;z-index:2;left:50%;bottom:10px;transform:translateX(-50%);display:flex;gap:10px 24px;width:min(1080px,calc(100% - 40px));justify-content:center;color:#82948d;font-size:9.5px}
.react-logout-card{position:relative;z-index:1;width:min(510px,100%);padding:clamp(28px,5vw,46px);border:1px solid var(--border);border-radius:28px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-lg);text-align:center;backdrop-filter:blur(18px);animation:nIn .45s ease-out both}.react-logout-logo{margin:0 auto 23px;width:170px;min-height:70px;border:1px solid #edf1ef}.react-logout-icon{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 14px;border-radius:20px;color:var(--n-700);background:linear-gradient(145deg,#e4f6ec,#f4fbf7);font-size:30px}.react-logout-kicker{color:#5b786d}.react-logout-card h1{margin:8px 0;color:#103e2f;font-size:34px;letter-spacing:-.035em}.react-logout-card p{max-width:410px;margin:0 auto 24px;color:#6c7e77;font-size:12.5px;line-height:1.7}.react-logout-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.react-logout-actions .react-primary-action{color:#fff;background:linear-gradient(135deg,#0d6547,#1b8b61);box-shadow:0 12px 28px rgba(16,116,80,.2)}.react-secondary-action{color:#2f5d4c;border:1px solid #dce7e1;background:#fff}.react-secondary-action:hover{transform:translateY(-1px);border-color:#bcd3c6;box-shadow:0 10px 24px rgba(17,66,49,.08)}.react-countdown{margin-top:22px}.react-countdown>span{display:block;width:100%;height:4px;overflow:hidden;border-radius:99px;background:#e5ece8;position:relative}.react-countdown>span:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--countdown);border-radius:inherit;background:linear-gradient(90deg,#24a372,#6cc598);transition:width .9s linear}.react-countdown small{display:block;margin-top:8px;color:#84938d;font-size:10.5px}.react-countdown strong{color:#315f4e;font-variant-numeric:tabular-nums}.react-logout-version{display:block;margin-top:12px;color:#a0aaa6;font-size:9.5px}
/* Authenticated shell */
body.portal-body{background:radial-gradient(circle at 8% 0%,rgba(45,167,113,.055),transparent 25%),radial-gradient(circle at 98% 30%,rgba(80,127,210,.045),transparent 27%),var(--bg)!important;color:var(--ink)}.react-portal-sidebar{background:linear-gradient(180deg,#073b2b,#084a35 58%,#073d2d)!important;box-shadow:10px 0 34px rgba(8,58,42,.09)}.react-sb-brand{min-height:92px!important;padding:15px 15px 12px!important;border-bottom:1px solid rgba(255,255,255,.075)!important;position:relative}.react-sb-brand>a{display:flex!important;align-items:center!important;gap:10px;width:100%;padding:8px 9px!important;border-radius:14px;transition:.18s}.react-sb-brand>a:hover{background:rgba(255,255,255,.055)}.react-brand-logo{flex:0 0 45px;display:grid;place-items:center;width:45px;height:45px;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.16)}.react-brand-logo img{width:100%;height:100%;object-fit:contain;padding:4px}.react-brand-copy{display:flex;flex-direction:column;min-width:0}.react-brand-copy strong{color:#fff;font-size:12px;white-space:nowrap}.react-brand-copy small{color:rgba(225,247,236,.62);font-size:9px;font-weight:650;white-space:nowrap}.react-secure-dot{position:absolute;right:10px;top:12px;display:grid;place-items:center;width:25px;height:25px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.06);color:#9de0bb}.react-sidebar-nav{padding:8px 10px 12px!important}.react-sidebar-nav .s-section{padding:13px 9px 5px!important}.react-sidebar-nav .s-section-label{color:rgba(213,240,225,.43)!important;font-size:8.5px!important;font-weight:800!important;letter-spacing:.11em!important}.react-s-link{min-height:42px!important;margin:2px 0!important;padding:7px 9px!important;border-radius:11px!important;color:rgba(236,248,242,.75)!important;transition:.16s!important}.react-s-link:hover{color:#fff!important;background:rgba(255,255,255,.065)!important;transform:translateX(2px)}.react-s-link.active{color:#fff!important;background:linear-gradient(90deg,rgba(75,190,133,.20),rgba(255,255,255,.075))!important;box-shadow:inset 3px 0 0 #64d49b,inset 0 0 0 1px rgba(255,255,255,.055)}.react-s-icon{display:grid!important;place-items:center;width:31px!important;height:31px!important;flex:0 0 31px;border-radius:9px!important;color:var(--nav-accent,#80d7aa)!important;background:rgba(255,255,255,.065)!important}.react-s-link .s-label{font-size:11px!important;font-weight:650!important}.react-s-link .sb-badge{min-width:20px!important;height:20px!important;padding:0 5px!important;border:1px solid rgba(255,255,255,.14);background:rgba(245,189,85,.18)!important;color:#f9cf7d!important;font-size:8.5px!important}.react-user-wrap{padding:10px!important;border-top:1px solid rgba(255,255,255,.07);background:rgba(3,34,24,.12)}.react-user-card{padding:8px 8px 10px!important;border:0!important;background:transparent!important}.react-user-card .user-avatar{width:34px!important;height:34px!important;font-size:10px!important}.react-user-card .sb-user-text strong{color:#fff!important;font-size:10.5px!important}.react-user-card .sb-user-text small{color:rgba(218,241,228,.5)!important;font-size:8.5px!important}.react-signout{color:#f0c1c5!important}.react-signout .react-s-icon{color:#f0a4aa!important}
.portal-sidebar.collapsed .react-brand-copy,.portal-sidebar.collapsed .react-secure-dot,.portal-sidebar.collapsed .react-user-card .sb-user-text{display:none!important}.portal-sidebar.collapsed .react-sb-brand{padding-inline:8px!important}.portal-sidebar.collapsed .react-sb-brand>a{justify-content:center;padding-inline:0!important}.portal-sidebar.collapsed .react-s-link{justify-content:center!important;padding-inline:5px!important}.portal-sidebar.collapsed .react-s-link .s-label,.portal-sidebar.collapsed .react-s-link .sb-badge,.portal-sidebar.collapsed .react-sidebar-nav .s-section-label{display:none!important}.portal-sidebar.collapsed .react-sidebar-nav .s-section{height:9px!important;min-height:9px!important;padding:0!important}
.react-topbar{min-height:78px!important;padding:10px clamp(16px,2.1vw,30px)!important;border-bottom:1px solid rgba(15,92,65,.095)!important;background:rgba(250,253,251,.9)!important;box-shadow:0 10px 26px rgba(16,71,53,.035);backdrop-filter:blur(18px)}.react-sidebar-toggle{width:36px!important;height:36px!important;border:1px solid #dce7e1!important;border-radius:10px!important;background:#fff!important;color:#477162!important}.react-sidebar-toggle:hover{border-color:#bcd5c7!important;color:#176f50!important;transform:translateY(-1px)}.react-breadcrumbs{margin-bottom:3px}.react-breadcrumbs ol{display:flex!important;align-items:center;gap:4px!important}.react-breadcrumbs li{font-size:8.5px!important}.react-crumb-divider{color:#9aa9a3}.react-title-row{display:flex;align-items:center;gap:13px}.react-title-row h1{margin:0!important;color:#163f31!important;font-size:clamp(18px,2vw,22px)!important;letter-spacing:-.028em!important}.react-title-row p{margin:2px 0 0!important;color:#809087!important;font-size:9px!important}.react-live-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid rgba(49,168,117,.13);border-radius:999px;background:#edf8f2;color:#31805d;font-size:8px;font-weight:800;white-space:nowrap}.react-topbar-actions{gap:8px!important}.react-date{display:inline-flex!important;align-items:center;gap:6px;padding:7px 9px!important;border:1px solid #e0e8e4;border-radius:10px;background:#fff;color:#6d8078!important;font-size:9px!important}.react-topbar-user{gap:8px!important;min-height:42px;padding:5px 9px 5px 5px!important;border:1px solid #e0e8e4!important;border-radius:12px!important;background:#fff!important}.react-topbar-user .user-avatar{width:31px!important;height:31px!important;font-size:9.5px!important;background:linear-gradient(145deg,#e5f6ed,#d2efdf)!important;color:#176846!important}.react-topbar-user .topbar-user-copy strong{color:#29493e!important;font-size:9.5px!important}.react-topbar-user .topbar-user-copy small{color:#889890!important;font-size:8px!important}.react-role-shield{display:grid;place-items:center;color:#4a9d77}.react-topbar-logout{min-height:36px!important;padding:0 10px!important;border:1px solid rgba(184,69,78,.11)!important;border-radius:10px!important;background:#fff6f6!important;color:#a24b53!important;font-size:9px!important;font-weight:750!important}.react-topbar-logout:hover{background:#fff0f1!important;transform:translateY(-1px)}
/* Global content polish — business markup remains server-rendered */
.portal-main{padding:clamp(14px,2vw,26px)!important;animation:nContent .3s ease-out both}@keyframes nContent{from{opacity:.1;transform:translateY(5px)}to{opacity:1;transform:none}}.portal-main>*{max-width:1600px;margin-left:auto;margin-right:auto}.portal-footer{border-top:1px solid rgba(15,92,65,.08)!important;background:rgba(250,253,251,.72)!important;color:#8a9993!important}.card,.admin-brand-hero,.nbss-entitlement-card,.form-card,.table-card,.dashboard-list-card,.chart-card,.detail-card,.panel,.content-card{border-color:var(--border)!important;border-radius:var(--radius)!important;background:rgba(255,255,255,.95)!important;box-shadow:0 8px 24px rgba(18,67,51,.06)!important}.card{transition:.18s}a.card:hover{transform:translateY(-2px);border-color:rgba(24,125,87,.2)!important;box-shadow:var(--shadow)!important}.admin-brand-hero{position:relative;overflow:hidden;padding:clamp(18px,2.2vw,28px)!important;background:radial-gradient(circle at 88% 20%,rgba(49,168,117,.13),transparent 30%),linear-gradient(135deg,#fff,#eff9f4)!important}.admin-brand-copy h2{color:#164331!important;letter-spacing:-.025em}.admin-brand-copy span,.section-kicker{color:var(--n-700)!important}.admin-brand-copy p{color:#71847b!important}.admin-brand-trust span{border-color:rgba(15,92,65,.12)!important;border-radius:999px!important;background:rgba(255,255,255,.72)!important;color:#4e7264!important}.admin-dashboard-metrics,.dashboard-metrics,.portfolio-financial-grid{gap:11px!important}.metric-card{position:relative;overflow:hidden;min-height:128px!important;padding:16px!important}.metric-card:after{content:"";position:absolute;width:90px;height:90px;right:-35px;top:-35px;border-radius:50%;background:currentColor;opacity:.035}.metric-card .metric-icon{width:37px!important;height:37px!important;border-radius:11px!important}.metric-card small{color:#75877e!important;font-weight:700!important}.metric-card strong{color:#183f32!important;letter-spacing:-.035em}.metric-card p{color:#8a9992!important}
button,.btn,.btn-primary,.btn-secondary,.btn-success,.btn-danger,.btn-outline,.action-button,input[type=submit]{border-radius:11px!important;transition:.16s!important}.btn-primary,button.btn-primary,a.btn-primary{background:linear-gradient(135deg,#0f6b4b,#1c8b62)!important;border-color:transparent!important;box-shadow:0 7px 18px rgba(16,116,80,.16)!important}.btn-primary:hover,button.btn-primary:hover,a.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(16,116,80,.22)!important}.btn-secondary,.btn-outline{background:#fff!important;border-color:#dbe6e0!important;color:#47695c!important}.btn-danger{background:#fff3f4!important;border-color:#f0d4d7!important;color:#a34b53!important}input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea{border-color:#d7e3dd!important;border-radius:11px!important;background-color:#fff!important;color:#26473c!important;transition:.15s!important}input:not([type=checkbox]):not([type=radio]):not([type=submit]):focus,select:focus,textarea:focus{border-color:#67af8c!important;box-shadow:0 0 0 3px rgba(49,168,117,.10)!important;outline:0!important}
.table-wrap,.table-responsive,.data-table-wrap{border:1px solid rgba(15,92,65,.10);border-radius:15px!important;background:#fff;box-shadow:0 8px 22px rgba(18,67,51,.045)}table{border-collapse:separate!important;border-spacing:0!important}thead th{background:#f3f8f5!important;color:#527064!important;border-bottom-color:#dfe9e4!important;font-size:9.5px!important;letter-spacing:.035em!important;text-transform:uppercase}tbody td{border-bottom-color:#edf2ef!important;color:#3a5148;vertical-align:middle!important}tbody tr{transition:.14s}tbody tr:hover{background:#f8fbf9!important}.badge,.status-badge,.pill,.chip{border-radius:999px!important;font-weight:750!important}.flash,.alert,.notice{border-radius:13px!important}.portal-modal-card,.modal-card,.session-dialog{border-radius:22px!important;border-color:var(--border)!important;box-shadow:0 28px 80px rgba(10,54,39,.2)!important}.portal-modal-backdrop,.session-modal{backdrop-filter:blur(7px)}.dashboard-list-row{border-radius:12px!important;transition:.15s!important}.dashboard-list-row:hover{background:#f4faf6!important;transform:translateX(2px)}.compact-empty{border-radius:13px!important;background:#f7faf8!important}.nbss-entitlement-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#fffdf6,#fff 62%,#f5fbf7)!important}.table-actions{gap:5px!important;flex-wrap:wrap}td .btn,td button,.table-actions a,.table-actions button{min-height:30px;padding-top:5px!important;padding-bottom:5px!important}:focus-visible{outline:3px solid rgba(49,168,117,.3)!important;outline-offset:2px!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:1000px){.react-login-frame{grid-template-columns:1fr;width:min(700px,100%)}.react-login-brand-panel{padding:28px}.react-login-brand-copy{padding-top:34px}.react-login-brand-copy h2{font-size:34px}.react-login-auth-panel{padding:34px 28px 38px}.react-login-footer{position:relative;left:auto;bottom:auto;transform:none;margin-top:12px;flex-wrap:wrap}}
@media(max-width:820px){.react-topbar{padding:9px 12px!important}.react-live-pill,.react-date,.react-topbar-user .topbar-user-copy,.react-role-shield{display:none!important}.react-topbar-user{padding-right:5px!important}.react-topbar-logout span{display:none}.react-topbar-logout{width:36px;padding:0!important}.portal-main{padding:13px!important}}
@media(max-width:620px){.react-login-page,.react-logout-page{padding:12px}.react-login-frame{border-radius:22px}.react-login-brand-panel{padding:22px}.react-login-logo{width:146px;min-height:62px}.react-security-chip{font-size:0;padding:8px}.react-login-brand-copy{padding-top:28px}.react-login-brand-copy h2{font-size:29px}.react-login-feature-grid{gap:7px}.react-login-feature-grid>div{grid-template-columns:32px 1fr;padding:10px}.react-login-feature-grid>div>span{width:32px;height:32px}.react-login-feature-grid small,.react-login-trust-row{display:none}.react-login-auth-panel{padding:28px 20px 32px}.react-otp-grid{gap:5px}.react-otp-grid input{height:48px;border-radius:10px;font-size:18px}.react-login-footer{font-size:8.5px;gap:5px 12px;text-align:center}.react-logout-card{border-radius:22px}.react-logout-actions{grid-template-columns:1fr}}

/* ========================================================================== 
   v1.1 premium interactive workspace — deliberately more expressive than
   the PHP baseline while retaining the same forms, tables and controllers.
   ========================================================================== */
.portal-body{
  background:
    radial-gradient(circle at 12% 8%,rgba(14,165,233,.055),transparent 26%),
    radial-gradient(circle at 86% 20%,rgba(168,85,247,.045),transparent 28%),
    radial-gradient(circle at 78% 88%,rgba(16,185,129,.055),transparent 30%),
    #f4f8f7!important;
}
.portal-body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.42;background-image:linear-gradient(rgba(15,118,110,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(15,118,110,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent 92%)}

/* Sidebar: richer navigation with genuinely color-coded iconography */
.react-portal-sidebar{background:linear-gradient(178deg,#062d25 0%,#073c30 46%,#062b28 100%)!important;box-shadow:18px 0 50px rgba(4,47,38,.14)!important}
.react-portal-sidebar::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 2%,rgba(94,234,212,.12),transparent 22%),radial-gradient(circle at 88% 72%,rgba(96,165,250,.10),transparent 24%)}
.react-sb-brand{position:relative!important;border-bottom-color:rgba(255,255,255,.09)!important}
.react-brand-logo{box-shadow:0 12px 28px rgba(0,0,0,.18)!important;transition:transform .25s ease,box-shadow .25s ease!important}
.react-sb-brand:hover .react-brand-logo{transform:translateY(-2px) rotate(-1deg);box-shadow:0 18px 36px rgba(0,0,0,.24)!important}
.react-secure-dot{color:#5eead4!important;background:rgba(45,212,191,.10)!important;border:1px solid rgba(94,234,212,.15)!important;animation:naamSecurePulse 2.8s ease-in-out infinite}
@keyframes naamSecurePulse{50%{box-shadow:0 0 0 7px rgba(45,212,191,0)}}
.react-sidebar-nav .s-section-label{color:rgba(219,255,244,.46)!important;letter-spacing:.13em!important}
.react-s-link{position:relative!important;overflow:hidden!important;margin:2px 8px!important;border:1px solid transparent!important;border-radius:13px!important;color:rgba(239,255,249,.72)!important;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease!important}
.react-s-link::after{content:"";position:absolute;inset:0;opacity:0;background:linear-gradient(90deg,rgba(255,255,255,.07),transparent);transition:opacity .18s ease;pointer-events:none}
.react-s-link:hover{transform:translateX(3px);border-color:rgba(255,255,255,.075)!important;background:rgba(255,255,255,.055)!important;color:#fff!important}
.react-s-link:hover::after{opacity:1}
.react-s-link.active{background:linear-gradient(105deg,rgba(255,255,255,.15),rgba(255,255,255,.07))!important;border-color:rgba(255,255,255,.13)!important;color:#fff!important;box-shadow:0 10px 24px rgba(0,0,0,.12)!important}
.react-s-link.active::before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;border-radius:0 8px 8px 0;background:linear-gradient(#5eead4,#60a5fa);box-shadow:0 0 18px rgba(94,234,212,.5)}
.react-s-icon{position:relative;z-index:1!important;display:grid!important;place-items:center!important;width:31px!important;height:31px!important;flex:0 0 31px!important;border-radius:10px!important;color:var(--nav-accent,#7dd3fc)!important;background:color-mix(in srgb,var(--nav-accent,#7dd3fc) 14%,transparent)!important;border:1px solid color-mix(in srgb,var(--nav-accent,#7dd3fc) 24%,transparent)!important;box-shadow:inset 0 1px rgba(255,255,255,.08)!important;transition:transform .2s ease,filter .2s ease!important}
.react-s-link:hover .react-s-icon,.react-s-link.active .react-s-icon{transform:scale(1.08) rotate(-3deg);filter:saturate(1.25) brightness(1.12)}
.react-s-link .s-label{position:relative;z-index:1!important;font-weight:680!important}
.react-s-link .sb-badge{position:relative;z-index:1!important;background:linear-gradient(135deg,#fb7185,#f43f5e)!important;color:#fff!important;box-shadow:0 5px 12px rgba(244,63,94,.25)!important}
.react-user-card{border:1px solid rgba(255,255,255,.095)!important;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035))!important;box-shadow:inset 0 1px rgba(255,255,255,.05)!important}
.react-user-card .user-avatar{background:linear-gradient(135deg,#5eead4,#60a5fa)!important;color:#073b31!important;box-shadow:0 8px 18px rgba(45,212,191,.17)!important}
.react-signout:hover{background:rgba(244,63,94,.10)!important;border-color:rgba(251,113,133,.14)!important}

/* Top bar: glass + visual status */
.react-topbar{background:rgba(250,253,252,.82)!important;border-bottom:1px solid rgba(15,118,110,.10)!important;box-shadow:0 10px 34px rgba(15,62,52,.055)!important;backdrop-filter:blur(22px) saturate(1.12)!important}
.react-title-row h1{background:linear-gradient(90deg,#123d32,#0f766e 64%,#2563eb);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.react-live-pill{color:#047857!important;background:linear-gradient(135deg,#ecfdf5,#eff6ff)!important;border-color:rgba(16,185,129,.18)!important;box-shadow:0 5px 16px rgba(16,185,129,.07)!important}
.react-live-pill i{color:#8b5cf6;animation:naamSparkle 2.3s ease-in-out infinite}
@keyframes naamSparkle{0%,100%{transform:rotate(0) scale(1)}50%{transform:rotate(16deg) scale(1.16)}}
.react-sidebar-toggle,.react-date,.react-topbar-user{box-shadow:0 7px 18px rgba(23,71,58,.045)!important}
.react-sidebar-toggle:hover{color:#0f766e!important;border-color:#99d5c4!important;box-shadow:0 10px 24px rgba(15,118,110,.10)!important}
.react-topbar-user .user-avatar{background:linear-gradient(135deg,#d1fae5,#dbeafe)!important;color:#0f766e!important}
.react-role-shield{color:#7c3aed!important}

/* React contextual page hero */
.react-page-hero-host:empty{display:none}
.react-page-hero{--hero-a:#087f5b;--hero-b:#1d4ed8;--hero-glow:#5eead4;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;min-height:158px;margin:0 0 18px;padding:22px clamp(20px,2.4vw,34px);overflow:hidden;border:1px solid rgba(255,255,255,.44);border-radius:24px;color:#fff;background:linear-gradient(122deg,var(--hero-a),var(--hero-b));box-shadow:0 20px 46px color-mix(in srgb,var(--hero-a) 22%,transparent),inset 0 1px rgba(255,255,255,.14);animation:naamHeroIn .48s cubic-bezier(.2,.8,.2,1) both}
.react-page-hero::before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.08),transparent 36%,rgba(255,255,255,.045) 72%,transparent);background-size:220% 100%;animation:naamHeroSweep 8s linear infinite}
.react-page-hero::after{content:"";position:absolute;z-index:-1;inset:auto -5% -55% 34%;height:130%;border:1px solid rgba(255,255,255,.11);border-radius:50%;box-shadow:0 0 0 48px rgba(255,255,255,.028),0 0 0 96px rgba(255,255,255,.018)}
@keyframes naamHeroIn{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
@keyframes naamHeroSweep{to{background-position:-220% 0}}
.react-page-hero-orb{position:absolute;z-index:-1;border-radius:999px;filter:blur(2px);pointer-events:none;opacity:.28;animation:naamHeroFloat 8s ease-in-out infinite alternate}
.react-page-hero-orb-a{width:180px;height:180px;right:21%;top:-96px;background:var(--hero-glow)}
.react-page-hero-orb-b{width:120px;height:120px;right:-32px;bottom:-52px;background:#fff;animation-delay:-3s}
@keyframes naamHeroFloat{to{transform:translate3d(20px,14px,0) scale(1.12)}}
.react-page-hero-main{display:flex;align-items:center;gap:18px;min-width:0}
.react-page-hero-icon{display:grid;place-items:center;width:62px;height:62px;flex:0 0 62px;border:1px solid rgba(255,255,255,.2);border-radius:19px;background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.08));box-shadow:0 14px 32px rgba(0,0,0,.13),inset 0 1px rgba(255,255,255,.2);font-size:24px;color:#fff;animation:naamIconFloat 4s ease-in-out infinite}
@keyframes naamIconFloat{50%{transform:translateY(-3px) rotate(-2deg)}}
.react-page-hero-copy{min-width:0}.react-page-kicker{display:inline-flex;align-items:center;gap:7px;color:rgba(240,253,250,.78);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.react-page-kicker i{color:var(--hero-glow)}
.react-page-hero-copy h2{margin:6px 0 5px;color:#fff!important;font-size:clamp(22px,2.4vw,31px);line-height:1.05;letter-spacing:-.04em;text-shadow:0 4px 16px rgba(0,0,0,.10)}
.react-page-hero-copy p{max-width:720px;margin:0;color:rgba(244,255,252,.76);font-size:12px;line-height:1.55}
.react-page-hero-meta{position:relative;z-index:1;display:grid;justify-items:end;gap:9px;min-width:230px}
.react-hero-glass-card{display:grid;min-width:220px;padding:12px 14px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.10);box-shadow:inset 0 1px rgba(255,255,255,.10);backdrop-filter:blur(12px)}
.react-hero-mini-label{color:var(--hero-glow);font-size:8.5px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.react-hero-glass-card strong{margin-top:3px;color:#fff;font-size:11px}.react-hero-glass-card small{margin-top:2px;color:rgba(245,255,251,.58);font-size:9px}
.react-hero-trust-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.react-hero-trust-chips span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.075);color:rgba(255,255,255,.80);font-size:8.5px;font-weight:720;backdrop-filter:blur(8px)}.react-hero-trust-chips i{color:var(--hero-glow)}

/* Content surfaces and motion */
.portal-main{padding-top:18px!important}.portal-main>*:not([data-react-component="PortalPageHero"]){animation:naamSurfaceIn .4s ease-out both}.portal-main>*:nth-child(3){animation-delay:.04s}.portal-main>*:nth-child(4){animation-delay:.08s}.portal-main>*:nth-child(5){animation-delay:.12s}
@keyframes naamSurfaceIn{from{opacity:.12;transform:translateY(7px)}to{opacity:1;transform:none}}
.card,.admin-brand-hero,.nbss-entitlement-card,.form-card,.table-card,.dashboard-list-card,.chart-card,.detail-card,.panel,.content-card,.document-list-card{border:1px solid rgba(15,118,110,.10)!important;border-radius:18px!important;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(252,254,253,.96))!important;box-shadow:0 10px 28px rgba(25,73,59,.06)!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important}
.card:hover,.form-card:hover,.dashboard-list-card:hover,.chart-card:hover,.detail-card:hover,.panel:hover,.content-card:hover{border-color:rgba(14,116,144,.17)!important;box-shadow:0 16px 38px rgba(25,73,59,.085)!important}

/* KPI cards: colorful, trustworthy, immediately distinct */
.metric-card{--metric-color:#0f766e;position:relative!important;overflow:hidden!important;border-top:0!important;border-left:4px solid var(--metric-color)!important;background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--metric-color) 5%,#fff) 100%)!important;box-shadow:0 12px 28px color-mix(in srgb,var(--metric-color) 10%,transparent)!important;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease!important}
.metric-card:nth-child(6n+1){--metric-color:#0f766e}.metric-card:nth-child(6n+2){--metric-color:#2563eb}.metric-card:nth-child(6n+3){--metric-color:#7c3aed}.metric-card:nth-child(6n+4){--metric-color:#d97706}.metric-card:nth-child(6n+5){--metric-color:#db2777}.metric-card:nth-child(6n+6){--metric-color:#0891b2}
.metric-card::before{content:"";position:absolute;right:-26px;top:-34px;width:112px;height:112px;border-radius:50%;background:color-mix(in srgb,var(--metric-color) 12%,transparent);box-shadow:0 0 0 20px color-mix(in srgb,var(--metric-color) 4%,transparent)}
.metric-card::after{content:""!important;position:absolute!important;inset:auto 12px 10px auto!important;width:42px!important;height:4px!important;border-radius:999px!important;background:linear-gradient(90deg,var(--metric-color),transparent)!important;opacity:.5!important}
.metric-card:hover{transform:translateY(-5px)!important;border-color:var(--metric-color)!important;box-shadow:0 20px 42px color-mix(in srgb,var(--metric-color) 15%,transparent)!important}
.metric-card .metric-icon{position:relative;z-index:1!important;color:var(--metric-color)!important;background:color-mix(in srgb,var(--metric-color) 10%,#fff)!important;border:1px solid color-mix(in srgb,var(--metric-color) 20%,transparent)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--metric-color) 10%,transparent)!important}.metric-card:hover .metric-icon{transform:rotate(-5deg) scale(1.08)}
.metric-card strong{position:relative;z-index:1!important;color:#173d33!important}.metric-card small,.metric-card p{position:relative;z-index:1!important}

/* Buttons: tactile without becoming flashy */
button,.btn,.btn-primary,.btn-secondary,.btn-success,.btn-danger,.btn-outline,.action-button,input[type=submit]{position:relative;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important}
button:active,.btn:active,.action-button:active,input[type=submit]:active{transform:translateY(1px) scale(.985)!important}
.btn-primary,button.btn-primary,a.btn-primary{background:linear-gradient(135deg,#0f766e,#0ea5a4 52%,#2563eb)!important;background-size:180% 180%!important;box-shadow:0 10px 24px rgba(14,116,144,.20)!important}.btn-primary:hover,button.btn-primary:hover,a.btn-primary:hover{background-position:100% 50%!important;box-shadow:0 14px 30px rgba(37,99,235,.18)!important}
.btn-success{background:linear-gradient(135deg,#047857,#10b981)!important}.btn-secondary,.btn-outline{background:linear-gradient(180deg,#fff,#f8fbfa)!important}.btn-secondary:hover,.btn-outline:hover{border-color:#8ecbc1!important;color:#0f766e!important;box-shadow:0 8px 20px rgba(15,118,110,.08)!important}

/* Data tables and toolbars */
.table-wrap,.table-responsive,.data-table-wrap,.document-list-card{overflow:hidden;border-color:rgba(14,116,144,.11)!important;box-shadow:0 12px 30px rgba(25,73,59,.055)!important}
.table-toolbar{background:linear-gradient(90deg,#f5fbf8,#f7faff 50%,#fbf7ff)!important;border-bottom:1px solid rgba(14,116,144,.09)!important}.table-search{border-color:#d5e5e1!important;background:#fff!important;box-shadow:0 5px 14px rgba(32,78,64,.04)!important}.table-search:focus-within{border-color:#67c4b5!important;box-shadow:0 0 0 3px rgba(20,184,166,.09),0 8px 18px rgba(32,78,64,.05)!important}.table-search>i{color:#0e7490!important}
thead th{background:linear-gradient(180deg,#edf8f5,#eef6fb)!important;color:#45695f!important;border-bottom:1px solid #dceae6!important}.table-sort-button:hover{color:#0f766e!important}.table-sort-button i{color:#8b5cf6!important}
tbody tr{position:relative}.data-table tbody tr:hover{background:linear-gradient(90deg,rgba(236,253,245,.75),rgba(239,246,255,.72))!important}.data-table tbody tr:hover td:first-child{box-shadow:inset 3px 0 #14b8a6}
.table-pagination button[aria-current="page"],.portal-pagination .active{background:linear-gradient(135deg,#0f766e,#2563eb)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 6px 14px rgba(37,99,235,.16)!important}

/* Form experience */
input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea{box-shadow:inset 0 1px 1px rgba(15,65,51,.02)!important}input:not([type=checkbox]):not([type=radio]):not([type=submit]):focus,select:focus,textarea:focus{border-color:#5dbfae!important;box-shadow:0 0 0 4px rgba(20,184,166,.10),0 8px 18px rgba(15,118,110,.05)!important;transform:translateY(-1px)}
.form-label,label{color:#35574d}.section-title i,.card-title i,h2 i,h3 i{color:#0e7490}

/* Documents: colorful type cues + premium viewer */
.document-tabs{gap:8px!important}.document-tabs .tab-btn{border-radius:12px!important;transition:transform .18s ease,box-shadow .18s ease!important}.document-tabs .tab-btn:hover{transform:translateY(-2px)}.document-tabs .tab-btn.active{background:linear-gradient(135deg,#0f766e,#2563eb)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 10px 22px rgba(37,99,235,.14)!important}
.document-folder-filter{border-radius:11px!important;box-shadow:0 6px 16px rgba(30,73,60,.04)!important}.document-folder-filter i{color:#f59e0b!important}.document-folder-filter:hover{transform:translateY(-2px);border-color:#93c5fd!important}.document-folder-filter.active{background:linear-gradient(135deg,#0f766e,#2563eb)!important;border-color:transparent!important;box-shadow:0 9px 20px rgba(37,99,235,.16)!important}.document-folder-filter.active i{color:#fde68a!important}
.document-row-icon{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;flex:0 0 36px!important;border-radius:11px!important;background:#f4f7f6!important;border:1px solid #e5ece9!important;box-shadow:0 5px 12px rgba(31,74,61,.045)!important}.document-row-icon .fa-file-pdf{color:#e11d48!important}.document-row-icon .fa-file-image{color:#7c3aed!important}.document-row-icon .fa-file-word{color:#2563eb!important}.document-row-icon .fa-file-excel{color:#059669!important}.document-row-icon .fa-file-lines{color:#0e7490!important}.document-name-link{color:#164e63!important}.document-name-link:hover{color:#2563eb!important;text-decoration-color:#93c5fd!important}.document-icon-action{border-radius:10px!important}.document-icon-action[title*="View"]{color:#0e7490!important;background:#ecfeff!important;border-color:#bae6fd!important}.document-icon-action[title*="Download"]{color:#7c3aed!important;background:#faf5ff!important;border-color:#e9d5ff!important}
.document-preview-modal{background:rgba(6,32,27,.68)!important;backdrop-filter:blur(12px) saturate(.9)!important}.document-preview-dialog{border:1px solid rgba(255,255,255,.3)!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 34px 100px rgba(0,0,0,.34)!important}.document-preview-head{background:linear-gradient(100deg,#063f36,#0f766e 54%,#1d4ed8)!important;color:#fff!important}.document-preview-head strong{color:#fff!important}.document-preview-stage{background:linear-gradient(145deg,#dfe9e6,#edf3f5)!important}.document-preview-note{background:linear-gradient(90deg,#f0fdf4,#eff6ff)!important;color:#42645b!important;border-top:1px solid #d8e8e3!important}.document-preview-note i{color:#0f766e!important}.document-preview-watermark-item{color:rgba(15,76,109,.24)!important;font-size:clamp(.78rem,1vw,.98rem)!important}.document-preview-dialog .portal-modal-close{color:#fff!important;background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.16)!important;backdrop-filter:blur(8px)}.document-preview-dialog .portal-modal-close:hover{background:rgba(255,255,255,.22)!important;transform:rotate(4deg)}

/* Communication/status surfaces */
.badge,.status-badge,.pill,.chip{box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}.flash,.alert,.notice{box-shadow:0 8px 22px rgba(30,73,60,.055)!important}.empty-state-icon{background:linear-gradient(135deg,#ecfdf5,#eff6ff)!important;color:#0e7490!important;box-shadow:0 10px 24px rgba(14,116,144,.08)!important}
.dashboard-list-row:hover{background:linear-gradient(90deg,#f0fdf4,#eff6ff)!important;transform:translateX(4px)!important}.dashboard-list-row i{color:#7c3aed}

/* Footer */
.portal-footer{background:linear-gradient(90deg,rgba(248,252,250,.94),rgba(247,250,255,.94))!important;border-top-color:rgba(14,116,144,.09)!important}

/* Responsive hero */
@media(max-width:980px){.react-page-hero{grid-template-columns:1fr;min-height:0}.react-page-hero-meta{justify-items:start;min-width:0}.react-hero-trust-chips{justify-content:flex-start}.react-hero-glass-card{min-width:min(340px,100%)}}
@media(max-width:620px){.react-page-hero{padding:18px;border-radius:19px;gap:16px}.react-page-hero-main{align-items:flex-start}.react-page-hero-icon{width:48px;height:48px;flex-basis:48px;border-radius:15px;font-size:19px}.react-page-hero-copy h2{font-size:22px}.react-page-hero-copy p{font-size:10.5px}.react-hero-trust-chips span:nth-child(3){display:none}.react-hero-glass-card{min-width:100%}.metric-card:hover{transform:translateY(-2px)!important}}
@media(prefers-reduced-motion:reduce){.react-secure-dot,.react-live-pill i,.react-page-hero,.react-page-hero::before,.react-page-hero-orb,.react-page-hero-icon,.portal-main>*{animation:none!important}.react-s-link:hover,.metric-card:hover,.document-folder-filter:hover{transform:none!important}}
.document-preview-loading{position:absolute;z-index:2;inset:0;display:grid;place-content:center;justify-items:center;gap:7px;padding:28px;text-align:center;color:#47665e;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.98),rgba(239,247,244,.96));transition:opacity .22s ease,visibility .22s ease}.document-preview-loading.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.document-preview-loading>span{display:grid;place-items:center;width:48px;height:48px;margin-bottom:3px;border-radius:15px;color:#0e7490;background:linear-gradient(135deg,#ccfbf1,#dbeafe);box-shadow:0 10px 24px rgba(14,116,144,.12);font-size:20px}.document-preview-loading>strong{color:#164e46;font-size:12px}.document-preview-loading>small{max-width:360px;color:#71857e;font-size:10px;line-height:1.55}.document-preview-loading .document-preview-error-icon{color:#b45309;background:linear-gradient(135deg,#fef3c7,#fff7ed)}
/* The React hero now owns the primary dashboard introduction. Keep the older
   admin branding block out of the way, and convert shareholder identity hero
   into a complementary identity/action strip rather than a second masthead. */
[data-react-component="PortalPageHero"] + .admin-brand-hero{display:none!important}
[data-react-component="PortalPageHero"] + .portfolio-hero{position:relative;overflow:hidden;padding:15px 18px!important;border:1px solid rgba(15,118,110,.12)!important;border-radius:17px!important;color:#244b40!important;background:linear-gradient(100deg,#ffffff,#f0fdfa 62%,#eff6ff)!important;box-shadow:0 9px 24px rgba(26,73,59,.055)!important}
[data-react-component="PortalPageHero"] + .portfolio-hero::after{content:"";position:absolute;right:-38px;top:-58px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.11),transparent 66%);pointer-events:none}
[data-react-component="PortalPageHero"] + .portfolio-hero .portfolio-kicker{color:#0f766e!important}
[data-react-component="PortalPageHero"] + .portfolio-hero h2{color:#153f35!important;font-size:1.12rem!important}
[data-react-component="PortalPageHero"] + .portfolio-hero p{color:#6b8179!important}
[data-react-component="PortalPageHero"] + .portfolio-hero .hero-btn{border-color:#cce0db!important;color:#0f766e!important;background:#fff!important;box-shadow:0 5px 14px rgba(25,73,59,.04)!important}
[data-react-component="PortalPageHero"] + .portfolio-hero .hero-btn-light{border-color:transparent!important;color:#fff!important;background:linear-gradient(135deg,#0f766e,#2563eb)!important;box-shadow:0 8px 18px rgba(37,99,235,.14)!important}

/* v1.0.0 final — premium register/table treatment */
.table-shell{position:relative;border:1px solid rgba(14,116,144,.12)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 16px 42px rgba(18,69,55,.075)!important;overflow:hidden!important}
.table-shell>.table-scroll{border-radius:0!important;background:#fff}
.table-shell>.table-toolbar{margin:0!important;padding:11px 12px!important;border:0!important;border-bottom:1px solid rgba(14,116,144,.10)!important;border-radius:0!important;background:linear-gradient(105deg,#f0fdfa 0%,#f8fbff 55%,#faf7ff 100%)!important}
.table-shell>.client-pagination{margin:0!important;padding:10px 12px!important;border-top:1px solid #e7efec!important;background:linear-gradient(180deg,#fff,#f8fbfa)!important}
.premium-data-table{border:0!important;border-radius:0!important;background:#fff!important}
.premium-data-table thead th{height:46px!important;padding:.72rem .82rem!important;border-right:1px solid rgba(255,255,255,.12)!important;border-bottom:0!important;color:#f8fffc!important;background:linear-gradient(120deg,#075e4b 0%,#0f766e 48%,#176b96 100%)!important;font-size:.64rem!important;font-weight:800!important;letter-spacing:.055em!important;text-shadow:0 1px 1px rgba(0,0,0,.08)!important}
.premium-data-table thead th:first-child{border-top-left-radius:0!important}.premium-data-table thead th:last-child{border-top-right-radius:0!important;border-right:0!important}
.premium-data-table .table-sort-button{width:100%;color:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important}.premium-data-table .table-sort-button:hover{color:#fff!important}.premium-data-table .table-sort-button i{color:#99f6e4!important;opacity:.82}.premium-data-table th[aria-sort] .table-sort-button i{color:#fde68a!important;opacity:1}
.premium-data-table tbody td{height:auto!important;min-height:44px;padding:.66rem .82rem!important;border-right:1px solid #edf2f0!important;border-bottom:1px solid #e8efec!important;color:#314b42!important;background:#fff!important;line-height:1.35!important;transition:background .16s ease,box-shadow .16s ease,transform .16s ease!important}
.premium-data-table tbody tr:nth-child(even) td{background:#fbfdfc!important}.premium-data-table tbody tr:hover td{background:linear-gradient(90deg,#ecfdf7 0%,#f2fbff 62%,#faf7ff 100%)!important}.premium-data-table tbody tr:hover td:first-child{box-shadow:inset 4px 0 #14b8a6!important}.premium-data-table tbody tr:last-child td{border-bottom:0!important}
.premium-data-table .table-link,.premium-data-table a:not(.icon-action):not(.btn-primary):not(.btn-secondary){color:#0b6b65;font-weight:750;text-underline-offset:2px}.premium-data-table .table-link:hover,.premium-data-table a:not(.icon-action):not(.btn-primary):not(.btn-secondary):hover{color:#1d4ed8}
.premium-data-table .table-person strong{color:#194c3c!important}.premium-data-table .table-person small{color:#788b83!important}.premium-data-table .numeric,.premium-data-table td[style*="text-align:right"]{color:#1d4f43!important;font-weight:700!important}
.table-result-count{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid #dbeae5;border-radius:999px;color:#45675c!important;background:rgba(255,255,255,.84);font-weight:750!important}.table-result-count:before{content:"";width:6px;height:6px;border-radius:50%;background:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.11)}
.table-row-action.icon-action,.icon-action{transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease!important}.table-row-action.icon-action:hover,.icon-action:hover{transform:translateY(-2px)!important;box-shadow:0 7px 16px rgba(28,67,56,.10)!important}.action-tone-view{color:#0369a1!important;background:#f0f9ff!important;border-color:#bae6fd!important}.action-tone-edit{color:#6d28d9!important;background:#faf5ff!important;border-color:#e9d5ff!important}.action-tone-success{color:#047857!important;background:#ecfdf5!important;border-color:#a7f3d0!important}.action-tone-download{color:#b45309!important;background:#fffbeb!important;border-color:#fde68a!important}.action-tone-danger{color:#be123c!important;background:#fff1f2!important;border-color:#fecdd3!important}.action-tone-neutral{color:#475569!important;background:#f8fafc!important;border-color:#e2e8f0!important}

/* Rich announcement / bulk-mail editor: clearer hierarchy and live composition feedback */
.rich-editor-shell{border-color:#c9ddd3!important;border-radius:14px!important;box-shadow:0 12px 28px rgba(23,78,58,.06)!important;overflow:visible!important}.rich-editor-toolbar{min-height:47px!important;padding:7px 8px!important;border-radius:13px 13px 0 0!important;background:linear-gradient(100deg,#f0fdfa,#f8fbff 60%,#faf7ff)!important;border-bottom-color:#dce9e4!important}.rich-editor-toolbar button,.rich-editor-select{height:32px!important;border-radius:7px!important}.rich-editor-toolbar button.is-active{color:#fff!important;border-color:transparent!important;background:linear-gradient(135deg,#0f766e,#2563eb)!important;box-shadow:0 5px 12px rgba(37,99,235,.14)!important}.rich-editor-block{width:112px!important;min-width:112px!important;max-width:112px!important}.rich-editor-font{width:132px!important;min-width:132px!important;max-width:132px!important}.rich-editor-surface{min-height:380px!important;border-radius:0 0 13px 13px!important;background:linear-gradient(180deg,#fff,#fefefe)!important}.rich-editor-foot{padding:2px 3px!important}.rich-editor-foot-meta{display:inline-flex!important;align-items:center!important;gap:10px!important}.rich-editor-foot [data-rich-count]{color:#60786e;font-weight:650;white-space:nowrap}.rich-editor-surface[aria-invalid="true"]{box-shadow:inset 0 0 0 2px rgba(190,24,93,.28)!important}

/* Mobile/tablet register layout: read-only tables become compact information cards. */
@media(max-width:760px){
  .table-shell{border-radius:15px!important;box-shadow:0 10px 28px rgba(18,69,55,.07)!important}.table-shell>.table-toolbar{padding:10px!important}.table-shell>.table-scroll{overflow:visible!important}
  .premium-mobile-cards{display:block!important;width:100%!important;min-width:0!important;border:0!important;background:transparent!important}
  .premium-mobile-cards thead{display:none!important}.premium-mobile-cards tbody{display:grid!important;gap:11px!important;padding:10px!important;background:#f6faf8!important}
  .premium-mobile-cards tbody tr{display:grid!important;width:100%!important;overflow:hidden!important;border:1px solid #dce9e4!important;border-radius:14px!important;background:#fff!important;box-shadow:0 7px 18px rgba(25,75,57,.055)!important}
  .premium-mobile-cards tbody tr[hidden]{display:none!important}.premium-mobile-cards tbody tr:hover{transform:none!important}.premium-mobile-cards tbody tr:hover td:first-child{box-shadow:none!important}
  .premium-mobile-cards tbody td{display:grid!important;grid-template-columns:minmax(88px,34%) minmax(0,1fr)!important;align-items:center!important;gap:10px!important;width:100%!important;max-width:none!important;min-height:42px!important;height:auto!important;padding:9px 11px!important;border-right:0!important;border-bottom:1px solid #edf2ef!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;background:#fff!important;text-align:left!important}
  .premium-mobile-cards tbody td:last-child{border-bottom:0!important}.premium-mobile-cards tbody td:before{content:attr(data-label);align-self:start;padding-top:1px;color:#6d8279;font-size:.61rem;font-weight:800;letter-spacing:.045em;text-transform:uppercase}.premium-mobile-cards tbody td[colspan]{display:block!important;padding:20px!important}.premium-mobile-cards tbody td[colspan]:before{display:none!important}
  .premium-mobile-cards tbody td>*{min-width:0}.premium-mobile-cards .table-row-actions,.premium-mobile-cards .document-row-actions{justify-content:flex-start!important;flex-wrap:wrap!important}.premium-mobile-cards .table-cell-compact,.premium-mobile-cards .table-cell-wide{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
  .rich-editor-block{width:106px!important;min-width:106px!important}.rich-editor-font{width:116px!important;min-width:116px!important}.rich-editor-surface{min-height:310px!important;padding:15px!important}.rich-editor-foot{align-items:flex-start!important;flex-direction:column!important}.rich-editor-foot-meta{width:100%;justify-content:space-between}.rich-editor-foot [data-rich-selection-status]{display:inline!important}
}
@media(max-width:480px){.premium-mobile-cards tbody{padding:8px!important}.premium-mobile-cards tbody td{grid-template-columns:82px minmax(0,1fr)!important;padding:8px 10px!important}.rich-editor-block{width:102px!important;min-width:102px!important}.rich-editor-font{width:110px!important;min-width:110px!important}.rich-editor-foot [data-rich-selection-status]{display:none!important}}


/* v1.0.0 NAAM brand alignment — logo blue + hospital green */
:root{--naam-blue:#1f5da8;--naam-blue-dark:#123f78;--naam-green:#67be4b;--naam-green-dark:#4b9b36;--naam-sky:#4aa7df}
.react-login-brand-panel{background:linear-gradient(145deg,#123f78 0%,#1f5da8 56%,#2876bb 74%,#4c9f39 132%)!important}
.react-login-brand-panel:after{content:"";position:absolute;inset:auto -14% -35% 24%;height:72%;border-radius:50%;background:radial-gradient(circle,rgba(103,190,75,.34),rgba(103,190,75,.08) 38%,transparent 68%);pointer-events:none}
.react-eyebrow{color:rgba(220,242,255,.82)!important}.react-security-chip{background:rgba(103,190,75,.14)!important;border-color:rgba(212,255,197,.24)!important}
.react-auth-kicker{color:var(--naam-blue)!important}.react-auth-heading h1{color:#163f68!important}.react-input-shell:focus-within{border-color:#6ba9d8!important;box-shadow:0 0 0 4px rgba(31,93,168,.10),0 8px 20px rgba(19,70,113,.06)!important;color:var(--naam-blue)!important}
.react-auth-inner .react-primary-action{background:linear-gradient(135deg,#1b579e,#2778bd 56%,#62b747)!important;box-shadow:0 12px 28px rgba(31,93,168,.22)!important}.react-primary-action:hover:not(:disabled){box-shadow:0 16px 34px rgba(31,93,168,.27)!important}
.react-otp-status{background:linear-gradient(100deg,#edf5fd,#eff9ea)!important;color:#345f75!important}.react-otp-grid input:focus{border-color:#66a4d4!important;box-shadow:0 0 0 3px rgba(31,93,168,.10)!important}.react-auth-links button,.react-auth-support a{color:var(--naam-blue)!important}
.react-portal-sidebar{background:linear-gradient(180deg,#174f8f 0%,#123f78 58%,#0d3464 100%)!important;box-shadow:10px 0 34px rgba(15,58,105,.13)!important}
.react-s-link.active{background:linear-gradient(90deg,rgba(103,190,75,.23),rgba(74,167,223,.10))!important;box-shadow:inset 3px 0 0 #7bd35c,inset 0 0 0 1px rgba(255,255,255,.055)!important}.react-s-icon{color:var(--nav-accent,#9ecdf0)!important}.react-secure-dot{color:#9fe081!important}
.react-title-row h1{background:linear-gradient(90deg,#163f68,#1f5da8 62%,#58aa40)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}.react-sidebar-toggle:hover{color:#1f5da8!important;border-color:#9fc6e4!important;box-shadow:0 10px 24px rgba(31,93,168,.10)!important}.react-topbar-user .user-avatar{background:linear-gradient(135deg,#e8f3fc,#eff9e9)!important;color:#1f5da8!important}
.react-page-hero{--hero-a:#1b579e;--hero-b:#3b80bd;--hero-glow:#9be47e}.btn-primary,button.btn-primary,a.btn-primary{background:linear-gradient(135deg,#1b579e,#287bc0 58%,#5ead43)!important;box-shadow:0 10px 24px rgba(31,93,168,.20)!important}.btn-primary:hover,button.btn-primary:hover,a.btn-primary:hover{box-shadow:0 14px 30px rgba(31,93,168,.20)!important}.btn-secondary:hover,.btn-outline:hover{border-color:#a5c9e5!important;color:#1f5da8!important;box-shadow:0 8px 20px rgba(31,93,168,.08)!important}
.premium-data-table thead th{background:linear-gradient(120deg,#164d89 0%,#1f5da8 55%,#3d89c8 78%,#5ba943 132%)!important}.table-shell>.table-toolbar{background:linear-gradient(105deg,#eef6fd 0%,#f8fbff 55%,#f2faee 100%)!important}.document-tabs .tab-btn.active,.document-folder-filter.active{background:linear-gradient(135deg,#1f5da8,#2e82c6 64%,#60b246)!important}.rich-editor-toolbar button.is-active{background:linear-gradient(135deg,#1f5da8,#2c80c4 65%,#61b347)!important}.rich-editor-toolbar{background:linear-gradient(100deg,#eef6fd,#f8fbff 58%,#f2faee)!important}

/* ==========================================================================\n   NAAM Hospitals corporate brand system — base v1.0.0\n   Shared across login, authenticated workspaces and logout.\n   Brand palette is derived from the supplied NAAM Hospitals logo.\n   ========================================================================== */
:root{
  --naam-blue:#0c50a1;--naam-blue-2:#1f5da8;--naam-blue-soft:#eaf3fb;
  --naam-green:#64bf46;--naam-green-2:#4fa83a;--naam-green-soft:#eff9eb;
  --naam-cyan:#2b8fbd;--naam-ink:#173451;--naam-muted:#647787;
  --naam-line:#dce7ef;--naam-surface:#ffffff;--naam-canvas:#f4f8fb;
  --naam-card-radius:15px;--naam-shadow:0 9px 24px rgba(18,63,104,.075);
}
body.portal-body{background:
  radial-gradient(circle at 100% 0%,rgba(31,93,168,.075),transparent 26%),
  radial-gradient(circle at 0% 100%,rgba(100,191,70,.065),transparent 28%),
  linear-gradient(180deg,#f7fafc 0%,#f3f7fa 100%)!important;color:var(--naam-ink)}
.main-wrap{position:relative;isolation:isolate}
.main-wrap::before{content:"";position:fixed;z-index:-1;right:3vw;bottom:3vh;width:min(36vw,430px);aspect-ratio:1;border-radius:50%;background:url('/assets/images/naam-hospitals-favicon.png') center/contain no-repeat;opacity:.018;filter:saturate(.75);pointer-events:none}

/* Remove continuous/decorative motion; keep only short interaction transitions. */
.react-login-orb,.react-logout-glow,.react-page-hero-orb,.react-page-hero::before,.react-page-hero-icon,.react-secure-dot,.react-live-pill i,.portal-main>*{animation:none!important}

/* Login branding */
.react-login-page,.react-logout-page{background:
  radial-gradient(circle at 8% 8%,rgba(31,93,168,.15),transparent 31%),
  radial-gradient(circle at 91% 86%,rgba(100,191,70,.12),transparent 30%),
  linear-gradient(145deg,#f7fbfe,#eef5fa 52%,#f4faef)!important}
.react-login-page::before,.react-logout-page::before{opacity:.28!important;background-image:linear-gradient(rgba(31,93,168,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(31,93,168,.035) 1px,transparent 1px)!important;background-size:30px 30px!important}
.react-login-frame{min-height:620px!important;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr)!important;border-radius:26px!important;border-color:rgba(31,93,168,.13)!important;box-shadow:0 28px 80px rgba(18,63,104,.18)!important}
.react-login-brand-panel{padding:clamp(30px,4vw,52px)!important;background:linear-gradient(145deg,#0b4388 0%,#1557a4 56%,#2a75b6 78%,#55aa3e 132%)!important}
.react-login-brand-panel::before{opacity:.72}
.react-login-logo{width:min(300px,62%)!important;min-height:78px!important;padding:8px 12px!important;border-radius:16px!important;background:#0c50a1!important;border:1px solid rgba(255,255,255,.20)!important;box-shadow:0 12px 30px rgba(2,30,68,.18)!important}
.react-login-logo img{max-height:96px!important;object-fit:contain!important}
.react-login-brand-copy{margin-top:32px!important;padding-top:0!important}
.react-login-brand-copy h2{margin:8px 0 10px!important;font-size:clamp(29px,3.4vw,43px)!important;line-height:1.05!important;letter-spacing:-.035em!important}
.react-login-brand-copy p{font-size:13px!important;line-height:1.65!important}
.react-login-feature-grid{margin-top:20px!important;gap:9px!important}.react-login-feature-grid>div{padding:10px 11px!important;border-radius:12px!important}.react-login-feature-grid>div:hover{transform:none!important;background:rgba(255,255,255,.09)!important}
.react-company-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin-top:18px;padding:13px 14px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(5,39,78,.18);color:rgba(255,255,255,.82);font-size:10.5px;line-height:1.45}
.react-company-details>span,.react-company-details>a{display:flex;align-items:flex-start;gap:7px;min-width:0;color:inherit;text-decoration:none}.react-company-details i{width:14px;margin-top:2px;color:#9dde82;text-align:center}.react-company-details .react-company-id{font-size:9.5px;letter-spacing:.02em}.react-company-details .react-company-id strong{font-weight:750}
.react-login-trust-row{margin-top:16px!important}
.react-login-auth-panel{background:linear-gradient(180deg,#fff,#fbfdff)!important}.react-auth-inner{width:min(420px,100%)!important}
.react-auth-brandline{display:flex;align-items:center;gap:9px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid #e6eef5}.react-auth-brandline img{width:38px;height:38px;border-radius:10px;object-fit:cover;background:#0c50a1}.react-auth-brandline span{display:flex;flex-direction:column;line-height:1.15}.react-auth-brandline strong{color:#174c86;font-size:12px}.react-auth-brandline small{margin-top:3px;color:#6e7f8c;font-size:9.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.react-auth-heading h1{font-size:clamp(25px,3vw,33px)!important;color:#173f68!important}.react-auth-kicker{color:#1f5da8!important}.react-auth-security-note{background:linear-gradient(100deg,#eef6fd,#f2faee)!important}
.react-brand-login-footer{display:grid!important;grid-template-columns:auto minmax(200px,1fr) auto auto!important;align-items:center!important;gap:8px 18px!important;width:min(1120px,100%)!important;color:#637888!important}.react-brand-login-footer strong{color:#315c7f!important}.react-brand-login-footer span{min-width:0}

/* Sidebar and header */
.react-portal-sidebar{background:linear-gradient(180deg,#10498a 0%,#0c3e77 62%,#092f5c 100%)!important;border-right:1px solid rgba(255,255,255,.07)!important}
.react-sb-brand{min-height:84px!important;padding:9px 10px!important}.react-sb-brand>a{min-height:64px!important;padding:7px 9px!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:13px!important;background:rgba(255,255,255,.075)!important}
.react-brand-logo-full{display:flex!important;width:112px!important;min-width:112px!important;height:42px!important;padding:2px 5px!important;border-radius:8px!important;background:#0c50a1!important;overflow:hidden}.react-brand-logo-full img{width:100%!important;height:100%!important;object-fit:contain!important}
.react-brand-logo-mark{display:none!important}.react-brand-copy strong{font-size:11px!important}.react-brand-copy small{font-size:8.7px!important;color:#b9d8ef!important}
.portal-sidebar.collapsed .react-brand-logo-full{display:none!important}.portal-sidebar.collapsed .react-brand-logo-mark{display:flex!important;width:38px!important;height:38px!important;border-radius:10px!important;overflow:hidden;background:#fff!important}.portal-sidebar.collapsed .react-brand-logo-mark img{width:100%!important;height:100%!important;object-fit:cover!important}.portal-sidebar.collapsed .react-brand-copy{display:none!important}
.react-s-link{min-height:38px!important;border-radius:9px!important}.react-s-link.active{background:linear-gradient(90deg,rgba(100,191,70,.24),rgba(63,139,201,.11))!important;box-shadow:inset 3px 0 0 #77cf5b!important}.react-s-link:hover{transform:none!important;background:rgba(255,255,255,.075)!important}.react-s-icon{border-radius:8px!important}
.react-topbar{min-height:64px!important;padding:7px 16px!important;background:rgba(255,255,255,.94)!important;border-bottom:1px solid #e3ebf1!important;box-shadow:0 5px 20px rgba(18,63,104,.045)!important}
.react-topbar-brand{display:flex;align-items:center;gap:8px;min-width:145px;padding-right:13px;border-right:1px solid #e1eaf0}.react-topbar-brand img{width:34px;height:34px;border-radius:9px;object-fit:cover;background:#0c50a1}.react-topbar-brand span{display:flex;flex-direction:column;line-height:1.12}.react-topbar-brand strong{color:#174d86;font-size:10.5px}.react-topbar-brand small{margin-top:2px;color:#667d8e;font-size:8px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}
.react-topbar-heading{min-width:0!important}.react-title-row h1{font-size:16px!important;background:none!important;color:#183f65!important;-webkit-text-fill-color:initial!important}.react-title-row p{font-size:9.5px!important}.react-live-pill{padding:4px 7px!important;font-size:8.5px!important;color:#41775b!important;background:#eff8ed!important;border-color:#d6ebcf!important}
.react-date,.react-topbar-user{min-height:36px!important;border-radius:10px!important}.react-topbar-logout{min-height:36px!important}

/* Consistent page hero — branded rather than page-by-page rainbow styling. */
.react-page-hero{min-height:132px!important;margin-bottom:14px!important;padding:17px 21px!important;border-radius:18px!important;background:linear-gradient(118deg,#124986 0%,#1f5da8 58%,#347eb9 82%,#55a940 128%)!important;box-shadow:0 13px 32px rgba(20,72,126,.16)!important}
.react-page-hero::after{height:120%!important;opacity:.62}.react-page-hero-watermark{position:absolute;right:26%;top:50%;width:110px;height:110px;transform:translateY(-50%);opacity:.065;filter:grayscale(.25);pointer-events:none}.react-page-hero-watermark img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.react-page-hero-icon{width:52px!important;height:52px!important;flex-basis:52px!important;border-radius:15px!important;font-size:20px!important}.react-page-hero-copy h2{font-size:clamp(20px,2.2vw,27px)!important}.react-page-hero-copy p{font-size:11.5px!important}.react-page-kicker{font-size:9.5px!important}.react-page-kicker i{color:#a6e58f!important}.react-page-hero-meta{min-width:215px!important}.react-hero-glass-card{padding:9px 12px!important;border-radius:11px!important}.react-hero-trust-chips span{font-size:8.5px!important}

/* Universal surfaces/cards. Keeps dense operational pages compact and aligned. */
.portal-main{max-width:1580px!important;padding:14px 18px 26px!important}.portal-main>*{animation:none!important}
.portal-main .card,.portal-main .form-section,.portal-main .form-card,.portal-main .panel,.portal-main .content-card{border-radius:var(--naam-card-radius)!important;border:1px solid var(--naam-line)!important;background:linear-gradient(180deg,#fff 0%,#fcfdfe 100%)!important;box-shadow:var(--naam-shadow)!important}
.portal-main .naam-surface-card{position:relative!important;min-height:0!important;overflow:hidden}.portal-main .naam-surface-card:not(.metric-card)::before{content:"";position:absolute;z-index:2;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,var(--naam-card-accent,#1f5da8),color-mix(in srgb,var(--naam-card-accent,#1f5da8) 25%,transparent),transparent 72%);pointer-events:none}
.portal-main .naam-surface-card:hover{border-color:#cfdee9!important;box-shadow:0 11px 26px rgba(18,63,104,.085)!important;transform:none!important}.portal-main .naam-card-title{color:#183f65!important;letter-spacing:-.015em}.portal-main .naam-card-title i:first-child{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:7px!important;border-radius:7px;color:var(--naam-card-accent,#1f5da8)!important;background:color-mix(in srgb,var(--naam-card-accent,#1f5da8) 10%,#fff)!important}
.dashboard-metrics{gap:.72rem!important;margin-bottom:.9rem!important}.metric-card{min-height:0!important;padding:.88rem .95rem!important;border:1px solid #dce7ef!important;border-left:3px solid var(--metric-color,#1f5da8)!important;border-radius:14px!important;background:linear-gradient(140deg,#fff 0%,color-mix(in srgb,var(--metric-color,#1f5da8) 4%,#fff) 100%)!important;box-shadow:0 8px 20px color-mix(in srgb,var(--metric-color,#1f5da8) 8%,transparent)!important}.metric-card::before{width:82px!important;height:82px!important;right:-30px!important;top:-35px!important;opacity:.65}.metric-card::after{display:none!important}.metric-card:hover{transform:none!important;box-shadow:0 10px 24px color-mix(in srgb,var(--metric-color,#1f5da8) 11%,transparent)!important}.metric-card .metric-icon{width:31px!important;height:31px!important;margin-bottom:.55rem!important;border-radius:8px!important;box-shadow:none!important}.metric-card:hover .metric-icon{transform:none!important}.metric-card>strong{font-size:1.08rem!important}.metric-card small{font-size:.61rem!important}.metric-card p{font-size:.64rem!important;line-height:1.3!important}
.card-heading{padding:12px 14px!important}.card-heading h2,.card-heading h3{font-size:.94rem!important}.card-heading p{font-size:.7rem!important;line-height:1.45!important}
.form-section{padding:1rem!important}.form-group{gap:.35rem!important}

/* Tables — consistent company-blue register treatment with restrained colour. */
.table-shell{border:1px solid #d9e5ed!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 22px rgba(18,63,104,.055)!important}.table-shell>.table-toolbar{padding:8px 10px!important;background:linear-gradient(105deg,#eef5fb,#f8fbfd 65%,#f2faee)!important;border-bottom:1px solid #dce8ef!important}.premium-data-table{font-size:.73rem!important}.premium-data-table thead th{padding:.55rem .65rem!important;background:linear-gradient(110deg,#164d89 0%,#1f5da8 68%,#3b80b8 100%)!important;border-bottom-color:#15477d!important;font-size:.6rem!important;letter-spacing:.055em!important}.premium-data-table tbody td{padding:.48rem .65rem!important;border-bottom-color:#e7edf2!important}.premium-data-table tbody tr:nth-child(even) td{background:#fafcfe!important}.premium-data-table tbody tr:hover td{background:#f0f6fb!important}.premium-data-table tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 #67be4b!important}.table-search input{min-height:32px!important}.table-action-button{min-height:32px!important}.table-row-action.icon-action,.icon-action{min-width:29px!important;min-height:29px!important;border-radius:8px!important}.table-row-action.icon-action:hover,.icon-action:hover{transform:none!important;box-shadow:0 4px 10px rgba(18,63,104,.08)!important}

/* Rich text editor keeps the existing functional JS and uses the same brand language. */
.rich-editor-shell{border-color:#cfdee9!important;box-shadow:0 8px 22px rgba(18,63,104,.055)!important}.rich-editor-toolbar{background:linear-gradient(100deg,#eef5fb,#fafcfe 62%,#f2faee)!important}.rich-editor-toolbar button.is-active{background:linear-gradient(135deg,#1f5da8,#2d7bb8 70%,#5cab43)!important}.rich-editor-surface{min-height:340px!important}

/* Branded authenticated footer */
.portal-brand-footer{display:grid!important;grid-template-columns:minmax(210px,.75fr) minmax(360px,1.55fr) minmax(250px,.9fr)!important;align-items:center!important;gap:12px 22px!important;min-height:82px!important;padding:13px 20px!important;background:linear-gradient(90deg,#f8fbfd,#f4f8fb 60%,#f5faF2)!important;border-top:1px solid #dce7ef!important;text-align:left!important}
.portal-footer-brand{display:flex;align-items:center;gap:9px;min-width:0}.portal-footer-brand img{width:37px;height:37px;border-radius:9px;object-fit:cover;background:#0c50a1}.portal-footer-brand div{display:flex;flex-direction:column;min-width:0}.portal-footer-brand strong{color:#174d86;font-size:.68rem;white-space:nowrap}.portal-footer-brand span{margin-top:2px;color:#738491;font-size:.56rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.portal-footer-contact{display:grid;grid-template-columns:1fr 1fr;gap:5px 14px;min-width:0}.portal-footer-contact span{display:flex;align-items:flex-start;gap:6px;min-width:0;color:#687c8c;font-size:.57rem;line-height:1.35}.portal-footer-contact i{width:12px;color:#4387b8;text-align:center}.portal-footer a{color:inherit;text-decoration:none}.portal-footer a:hover{color:#1f5da8;text-decoration:underline}
.portal-footer-legal{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:4px 10px;color:#71818d;font-size:.54rem;text-align:right}.portal-footer-legal .portal-version{color:#52785e;font-weight:700}

/* Logout */
.react-logout-card{width:min(620px,100%)!important;padding:30px!important;border-radius:22px!important}.react-logout-logo{width:230px!important;min-height:70px!important;margin:0 auto 10px!important;background:#0c50a1!important}.react-logout-card>.react-company-details{margin-top:18px!important;color:#607889!important;background:linear-gradient(100deg,#eef5fb,#f4faef)!important;border-color:#dbe8ef!important;text-align:left!important}.react-logout-card>.react-company-details i{color:#1f5da8!important}.react-logout-version{display:block;margin-top:13px!important;color:#7b8994!important}

@media(max-width:1180px){.react-topbar-brand{display:none}.portal-brand-footer{grid-template-columns:1fr 1.6fr!important}.portal-footer-legal{grid-column:1/-1;justify-content:center;text-align:center}.react-brand-login-footer{grid-template-columns:1fr 1fr!important;text-align:center!important}}
@media(max-width:900px){.react-login-frame{grid-template-columns:1fr!important;max-width:720px!important}.react-login-brand-panel{padding:28px!important}.react-login-brand-copy{margin-top:20px!important}.react-login-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.react-login-auth-panel{padding:32px 24px!important}.react-company-details{grid-template-columns:1fr 1fr}.react-page-hero-watermark{right:8%;opacity:.05}.portal-brand-footer{grid-template-columns:1fr!important;text-align:center!important}.portal-footer-brand{justify-content:center}.portal-footer-contact{grid-template-columns:1fr 1fr;max-width:720px;margin:0 auto}.portal-footer-legal{justify-content:center}.portal-main{padding:12px 13px 22px!important}}
@media(max-width:620px){.react-login-page,.react-logout-page{padding:10px!important}.react-login-frame{border-radius:18px!important}.react-login-brand-panel{padding:22px 18px!important}.react-login-brand-top{align-items:flex-start!important}.react-login-logo{width:205px!important}.react-security-chip{font-size:9px!important}.react-login-brand-copy h2{font-size:28px!important}.react-company-details{grid-template-columns:1fr!important}.react-login-feature-grid{grid-template-columns:1fr 1fr!important}.react-login-feature-grid>div{grid-template-columns:31px 1fr!important}.react-login-feature-grid>div>span{width:31px!important;height:31px!important}.react-login-auth-panel{padding:26px 18px!important}.react-brand-login-footer{grid-template-columns:1fr!important;font-size:9px!important}.react-topbar{padding:7px 9px!important}.react-title-row .react-live-pill{display:none!important}.react-date{display:none!important}.react-page-hero{padding:15px!important;border-radius:15px!important}.react-page-hero-meta{display:none!important}.react-page-hero-watermark{right:-16px;width:90px;height:90px}.react-page-hero-copy p{font-size:10.5px!important}.portal-main{padding:9px 8px 18px!important}.dashboard-metrics{gap:.55rem!important}.metric-card{padding:.76rem .8rem!important}.portal-footer-contact{grid-template-columns:1fr!important;text-align:left}.portal-footer-contact span{justify-content:center}.react-logout-card{padding:24px 18px!important}}

/* Compact legacy inline card paddings into the shared density scale. */
.portal-main .naam-surface-card[style*="padding:1.3rem"],
.portal-main .naam-surface-card[style*="padding: 1.3rem"],
.portal-main .naam-surface-card[style*="padding:1.4rem"],
.portal-main .naam-surface-card[style*="padding: 1.4rem"],
.portal-main .naam-surface-card[style*="padding:1.5rem"],
.portal-main .naam-surface-card[style*="padding: 1.5rem"],
.portal-main .naam-surface-card[style*="padding:1.8rem"],
.portal-main .naam-surface-card[style*="padding: 1.8rem"]{padding:1.05rem 1.1rem!important}
.portal-main .naam-surface-card[style*="padding:1.3rem 2rem"],
.portal-main .naam-surface-card[style*="padding: 1.3rem 2rem"]{padding:1rem 1.2rem!important}
.portal-main .naam-surface-card[style*="padding:3rem"],
.portal-main .naam-surface-card[style*="padding: 3rem"]{padding:1.8rem 1.2rem!important}
.naam-card-title{display:flex!important;align-items:center!important;gap:7px!important}.naam-card-heading-icon{display:inline-grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:8px;color:var(--naam-card-accent,#1f5da8);background:color-mix(in srgb,var(--naam-card-accent,#1f5da8) 10%,#fff);border:1px solid color-mix(in srgb,var(--naam-card-accent,#1f5da8) 18%,transparent)}.naam-card-heading-icon i{margin:0!important;color:inherit!important;font-size:.72rem!important}
body.portal-body{background-image:url('/assets/images/shareholder-portal-background.svg'),radial-gradient(circle at 100% 0%,rgba(31,93,168,.075),transparent 26%),radial-gradient(circle at 0% 100%,rgba(100,191,70,.065),transparent 28%),linear-gradient(180deg,#f7fafc 0%,#f3f7fa 100%)!important;background-repeat:no-repeat,no-repeat,no-repeat,no-repeat!important;background-position:center top,100% 0%,0% 100%,0 0!important;background-size:cover,auto,auto,auto!important;background-attachment:fixed,fixed,fixed,fixed!important}
.react-login-page,.react-logout-page{background-image:url('/assets/images/shareholder-portal-background.svg'),radial-gradient(circle at 8% 8%,rgba(31,93,168,.15),transparent 31%),radial-gradient(circle at 91% 86%,rgba(100,191,70,.12),transparent 30%),linear-gradient(145deg,#f7fbfe,#eef5fa 52%,#f4faef)!important;background-size:cover,auto,auto,auto!important;background-position:center,0 0,100% 100%,0 0!important}

/* ==========================================================================\n   NAAM Shareholder Portal — v1.0.0 unified premium UI/UX pass\n   Shared across every authenticated role and page; presentation only.\n   ========================================================================== */
:root{
  --naam-blue:#1f5da8;--naam-blue-2:#2b7fbd;--naam-blue-deep:#123f78;
  --naam-green:#67be4b;--naam-teal:#0f8f87;--naam-purple:#6f63b6;--naam-gold:#d69a2d;
  --naam-rose:#b95b76;--naam-slate:#5f7388;--naam-ink:#183b5e;--naam-muted:#6d7f8f;
  --naam-line:rgba(30,86,137,.16);--naam-glass:rgba(255,255,255,.82);
  --naam-glass-strong:rgba(255,255,255,.94);--naam-card-radius:16px;
  --naam-shadow-soft:0 10px 28px rgba(18,63,104,.075);--naam-shadow-hover:0 17px 38px rgba(18,63,104,.12);
  --page-accent:#1f5da8;--page-accent-2:#2b7fbd;--page-glow:#8ec8ea;
}

@keyframes naamHeroIn{0%{opacity:0;transform:translateY(8px) scale(.995)}100%{opacity:1;transform:none}}
@keyframes naamHeroSheen{0%{transform:translateX(-120%) skewX(-16deg)}55%,100%{transform:translateX(280%) skewX(-16deg)}}
@keyframes naamCardIn{0%{opacity:0;transform:translateY(7px)}100%{opacity:1;transform:none}}
@keyframes naamSoftPulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:.8;transform:scale(1.04)}}

/* Portal canvas: locally-created shareholder / governance visual, no third-party imagery. */
body.portal-body{
  background-color:#f3f7fb!important;
  background-image:
    linear-gradient(rgba(247,250,253,.78),rgba(247,250,253,.78)),
    url('/assets/images/shareholder-trust-network.svg')!important;
  background-repeat:no-repeat,no-repeat!important;
  background-size:cover,cover!important;
  background-position:center top,center top!important;
  background-attachment:fixed,fixed!important;
}
body.portal-body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 85% 6%,color-mix(in srgb,var(--page-accent) 9%,transparent),transparent 29%),radial-gradient(circle at 12% 88%,color-mix(in srgb,var(--naam-green) 7%,transparent),transparent 31%)}
.portal-main{max-width:1640px!important;padding:14px 18px 26px!important}

/* Sidebar: logo-first identity, compact rounded brand frame, no repeated brand copy. */
.react-portal-sidebar{background:linear-gradient(180deg,#104a8c 0%,#0d3f78 58%,#0a315f 100%)!important;border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:10px 0 30px rgba(12,48,84,.12)!important}
.react-sb-brand-minimal{min-height:112px!important;padding:12px 12px 8px!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
.react-sb-brand-minimal>a{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:100%!important;min-height:88px!important;padding:9px 9px 7px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:16px!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,251,255,.92))!important;box-shadow:0 10px 24px rgba(3,22,42,.19)!important;text-decoration:none!important;overflow:hidden!important}
.react-sb-brand-minimal .react-brand-logo-full{display:flex!important;align-items:center!important;justify-content:center!important;width:176px!important;max-width:100%!important;height:50px!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important}
.react-sb-brand-minimal .react-brand-logo-full img{width:100%!important;height:100%!important;object-fit:contain!important}
.react-sb-brand-minimal .react-brand-logo-mark{display:none!important}
.react-brand-portal-label{display:block;color:#45657d;font-size:.57rem;font-weight:800;letter-spacing:.10em;text-transform:uppercase;white-space:nowrap}
.portal-sidebar.collapsed .react-sb-brand-minimal{min-height:78px!important;padding:10px!important}.portal-sidebar.collapsed .react-sb-brand-minimal>a{min-height:56px!important;padding:6px!important;border-radius:13px!important}.portal-sidebar.collapsed .react-brand-logo-full{display:none!important}.portal-sidebar.collapsed .react-brand-logo-mark{display:flex!important;width:42px!important;height:42px!important;border-radius:11px!important;overflow:hidden!important;background:#fff!important}.portal-sidebar.collapsed .react-brand-logo-mark img{width:100%!important;height:100%!important;object-fit:cover!important}.portal-sidebar.collapsed .react-brand-portal-label{display:none!important}
.react-s-link{margin:2px 5px!important;padding:6px 8px!important;border-radius:11px!important;color:rgba(245,250,255,.85)!important;transition:background .18s ease,color .18s ease,transform .18s ease,border-color .18s ease!important}
.react-s-link:hover{transform:translateX(2px)!important;background:rgba(255,255,255,.09)!important;color:#fff!important}.react-s-link.active{background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.08))!important;border:1px solid rgba(255,255,255,.11)!important;color:#fff!important;box-shadow:inset 3px 0 0 #78cf5b!important}
.react-s-icon{border:1px solid rgba(255,255,255,.08)!important;background:rgba(255,255,255,.075)!important;box-shadow:none!important}.react-s-link:hover .react-s-icon,.react-s-link.active .react-s-icon{background:color-mix(in srgb,var(--nav-accent,#7fd3a7) 18%,rgba(255,255,255,.07))!important;color:var(--nav-accent,#bde8d0)!important;border-color:color-mix(in srgb,var(--nav-accent,#7fd3a7) 25%,rgba(255,255,255,.08))!important}
.s-section{padding-top:13px!important}.s-section-label{font-size:.55rem!important;letter-spacing:.12em!important;color:rgba(224,238,250,.53)!important}
.react-user-card{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.10)!important;box-shadow:none!important}.react-signout{color:#ffd7d3!important}

/* Topbar: cleaner hierarchy and thinner footprint. */
.react-topbar{min-height:60px!important;padding:7px 16px!important;background:rgba(252,254,255,.9)!important;border-bottom:1px solid rgba(35,92,143,.12)!important;backdrop-filter:blur(15px) saturate(125%)!important;box-shadow:0 4px 16px rgba(18,63,104,.045)!important}
.react-topbar-brand{padding-right:12px!important;border-right:1px solid #e5edf3!important}.react-topbar-brand img{width:31px!important;height:31px!important;border-radius:9px!important;border:1px solid #d6e4ed!important;box-shadow:0 4px 12px rgba(18,63,104,.06)!important}.react-topbar-brand strong{font-size:.65rem!important;color:#1a4d80!important}.react-topbar-brand small{font-size:.52rem!important}
.react-title-row h1{font-size:1.02rem!important;letter-spacing:-.025em!important}.react-title-row .react-live-pill{padding:4px 8px!important;border-color:#d9e7ef!important;background:#f7fbfd!important;color:#557284!important;font-size:.56rem!important;box-shadow:none!important}.react-title-row .react-live-pill i{color:#4f9f41!important}
.react-date{font-size:.6rem!important}.react-topbar-user{padding:5px 7px!important;border-radius:10px!important;border-color:#dce7ef!important;background:rgba(255,255,255,.8)!important}.react-topbar-user .user-avatar{width:29px!important;height:29px!important}.react-topbar-user-copy strong{font-size:.65rem!important}.react-topbar-user-copy small{font-size:.53rem!important}.react-topbar-logout{min-height:34px!important;border-radius:9px!important}

/* One unified animated page hero for every route and role. */
.react-page-hero{position:relative!important;isolation:isolate;overflow:hidden!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;min-height:124px!important;margin:0 0 12px!important;padding:16px 19px!important;border:1px solid color-mix(in srgb,var(--hero-glow,#8ec8ea) 28%,rgba(255,255,255,.20))!important;border-radius:18px!important;background:linear-gradient(118deg,var(--hero-a,#17569a) 0%,var(--hero-b,#2b7fbd) 72%,color-mix(in srgb,var(--hero-b,#2b7fbd) 72%,#67be4b) 115%)!important;box-shadow:0 15px 34px color-mix(in srgb,var(--hero-a,#17569a) 18%,transparent)!important;animation:naamHeroIn .42s ease-out both!important}
.react-page-hero::before{content:""!important;position:absolute!important;z-index:-1!important;inset:-45% auto -45% -25%!important;width:30%!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent)!important;transform:translateX(-120%) skewX(-16deg);animation:naamHeroSheen 8s ease-in-out 1.1s infinite!important;pointer-events:none!important}
.react-page-hero::after{content:"";position:absolute;z-index:-2;inset:0;background-image:url('/assets/images/shareholder-trust-network.svg');background-size:780px auto;background-position:right 42% center;opacity:.085;mix-blend-mode:screen;pointer-events:none}
.react-page-hero-main{min-width:0!important}.react-page-hero-icon{width:48px!important;height:48px!important;flex-basis:48px!important;border-radius:14px!important;border:1px solid rgba(255,255,255,.24)!important;background:linear-gradient(145deg,rgba(255,255,255,.20),rgba(255,255,255,.08))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 20px rgba(0,0,0,.08)!important;color:#fff!important;font-size:18px!important;animation:naamSoftPulse 5.8s ease-in-out infinite!important}
.react-page-hero-copy h2{margin:4px 0 4px!important;color:#fff!important;font-size:clamp(20px,2vw,26px)!important;letter-spacing:-.03em!important}.react-page-hero-copy p{max-width:720px!important;margin:0!important;color:rgba(245,251,255,.82)!important;font-size:10.8px!important;line-height:1.55!important}.react-page-kicker{color:rgba(238,250,255,.77)!important;font-size:9px!important}.react-page-kicker i{color:#b7f0a3!important}
.react-page-hero-watermark{right:31%!important;width:96px!important;height:96px!important;opacity:.055!important}.react-page-hero-meta{min-width:210px!important;gap:7px!important}.react-hero-glass-card{min-width:205px!important;padding:8px 11px!important;border:1px solid rgba(255,255,255,.19)!important;border-radius:11px!important;background:rgba(255,255,255,.10)!important;backdrop-filter:blur(8px)!important;box-shadow:none!important}.react-hero-mini-label{font-size:8px!important}.react-hero-glass-card strong{font-size:10px!important}.react-hero-glass-card small{font-size:8px!important}.react-hero-trust-chips{gap:5px!important}.react-hero-trust-chips span{padding:4px 6px!important;font-size:7.8px!important;border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.08)!important}

/* Remove duplicated dashboard-only marketing hero; shared hero above is authoritative. */
.admin-brand-hero{display:none!important}

/* Secondary page intro/portfolio heroes become compact contextual strips instead of second oversized heroes. */
.portal-page-intro,.portfolio-hero,.compact-hero{position:relative!important;overflow:hidden!important;min-height:0!important;margin:0 0 11px!important;padding:10px 13px!important;border:1px solid color-mix(in srgb,var(--page-accent) 16%,#dbe6ee)!important;border-radius:14px!important;background:linear-gradient(110deg,rgba(255,255,255,.90),color-mix(in srgb,var(--page-accent) 4%,rgba(255,255,255,.88)) 64%,color-mix(in srgb,var(--naam-green) 4%,rgba(255,255,255,.88)))!important;box-shadow:0 8px 20px rgba(18,63,104,.055)!important;backdrop-filter:blur(10px)!important;color:var(--naam-ink)!important}
.portal-page-intro::before,.portfolio-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--page-accent),var(--page-accent-2));pointer-events:none}.portal-page-intro-copy{gap:9px!important}.portal-page-intro-icon{width:34px!important;height:34px!important;border-radius:10px!important;color:var(--page-accent)!important;background:color-mix(in srgb,var(--page-accent) 9%,#fff)!important;border:1px solid color-mix(in srgb,var(--page-accent) 16%,transparent)!important;box-shadow:none!important}.portal-page-intro h1,.portal-page-intro h2,.portfolio-hero h2{margin:0!important;color:#173f66!important;font-size:1rem!important;letter-spacing:-.02em!important}.portal-page-intro p,.portfolio-hero p{margin:2px 0 0!important;color:#70818f!important;font-size:.68rem!important;line-height:1.45!important}.section-kicker,.portfolio-kicker{font-size:.56rem!important;letter-spacing:.08em!important;color:#6b8191!important}.portfolio-hero-actions,.portal-page-actions{gap:6px!important}.hero-btn{min-height:33px!important;padding:6px 10px!important;border-radius:9px!important}

/* Universal card system: translucent, identifiable borders, semantic accent, compact density. */
.portal-main .card,.portal-main .form-section,.portal-main .form-card,.portal-main .panel,.portal-main .content-card,.portal-main .naam-surface-card{
  border:1px solid color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 16%,#dce6ed)!important;
  border-radius:var(--naam-card-radius)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.90) 0%,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 3.5%,rgba(255,255,255,.84)) 100%)!important;
  box-shadow:var(--naam-shadow-soft)!important;
  backdrop-filter:blur(12px) saturate(116%)!important;
}
.portal-main .naam-surface-card{position:relative!important;min-height:0!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease!important;animation:naamCardIn .34s ease-out both!important;animation-delay:var(--naam-card-delay,0ms)!important}
.portal-main .naam-surface-card::before{content:""!important;position:absolute!important;z-index:2!important;left:0!important;top:0!important;width:100%!important;height:3px!important;background:linear-gradient(90deg,var(--naam-card-accent,var(--page-accent)) 0%,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 60%,var(--naam-green)) 55%,transparent 100%)!important;opacity:.86!important;pointer-events:none!important}
.portal-main .naam-surface-card::after{content:"";position:absolute;right:-44px;top:-46px;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 8%,transparent),transparent 68%);pointer-events:none}
.portal-main .naam-surface-card:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 27%,#d9e5ed)!important;box-shadow:var(--naam-shadow-hover)!important;background:linear-gradient(145deg,rgba(255,255,255,.95),color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 5%,rgba(255,255,255,.88)))!important}
.portal-main .naam-card-title{display:flex!important;align-items:center!important;gap:6px!important;margin-top:0!important;color:#183f65!important;font-size:.9rem!important;letter-spacing:-.012em!important}.naam-card-heading-icon{display:none!important}
.portal-main .naam-card-title>i:first-child,.portal-main .section-title>i:first-child{display:inline!important;width:auto!important;height:auto!important;padding:0!important;margin-right:4px!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--naam-card-accent,var(--page-accent))!important;box-shadow:none!important;font-size:.82em!important}
.card-heading{padding:10px 12px!important;border-bottom:1px solid color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 10%,#e8eef3)!important;background:linear-gradient(90deg,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 4%,transparent),transparent)!important}.card-heading h2,.card-heading h3{font-size:.88rem!important}.card-heading>a{font-size:.67rem!important}
.portal-main .naam-surface-card[style*="padding:1.3rem"],.portal-main .naam-surface-card[style*="padding: 1.3rem"],.portal-main .naam-surface-card[style*="padding:1.4rem"],.portal-main .naam-surface-card[style*="padding: 1.4rem"],.portal-main .naam-surface-card[style*="padding:1.5rem"],.portal-main .naam-surface-card[style*="padding: 1.5rem"],.portal-main .naam-surface-card[style*="padding:1.8rem"],.portal-main .naam-surface-card[style*="padding: 1.8rem"]{padding:.92rem 1rem!important}.portal-main .naam-surface-card[style*="padding:3rem"],.portal-main .naam-surface-card[style*="padding: 3rem"]{padding:1.45rem 1rem!important}

/* Metric/financial cards: icon sits beside the label, not as an odd floating corner badge. */
.dashboard-metrics,.admin-dashboard-metrics,.investment-summary-grid{gap:.66rem!important;margin-bottom:.82rem!important}
.metric-card,.financial-card{display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;column-gap:8px!important;row-gap:2px!important;align-content:start!important;min-height:112px!important;padding:.78rem .85rem!important;border:1px solid color-mix(in srgb,var(--metric-color,var(--page-accent)) 22%,#dce6ed)!important;border-left:1px solid color-mix(in srgb,var(--metric-color,var(--page-accent)) 22%,#dce6ed)!important;border-top:1px solid color-mix(in srgb,var(--metric-color,var(--page-accent)) 22%,#dce6ed)!important;border-radius:14px!important;background:linear-gradient(138deg,rgba(255,255,255,.94),color-mix(in srgb,var(--metric-color,var(--page-accent)) 7%,rgba(255,255,255,.88)))!important;box-shadow:0 9px 22px color-mix(in srgb,var(--metric-color,var(--page-accent)) 9%,transparent)!important;overflow:hidden!important}
.metric-card::before{content:""!important;position:absolute!important;left:0!important;top:0!important;width:100%!important;height:3px!important;background:linear-gradient(90deg,var(--metric-color,var(--page-accent)),color-mix(in srgb,var(--metric-color,var(--page-accent)) 55%,#67be4b),transparent)!important;opacity:.88!important}.metric-card::after{content:""!important;display:block!important;position:absolute!important;right:-36px!important;bottom:-54px!important;width:112px!important;height:112px!important;border-radius:50%!important;background:radial-gradient(circle,color-mix(in srgb,var(--metric-color,var(--page-accent)) 10%,transparent),transparent 70%)!important;pointer-events:none!important}.metric-card:hover{transform:translateY(-2px)!important;box-shadow:0 14px 30px color-mix(in srgb,var(--metric-color,var(--page-accent)) 13%,transparent)!important}.metric-card .metric-icon{grid-column:1!important;grid-row:1!important;display:grid!important;place-items:center!important;width:28px!important;height:28px!important;margin:0!important;border:1px solid color-mix(in srgb,var(--metric-color,var(--page-accent)) 18%,transparent)!important;border-radius:9px!important;color:var(--metric-color,var(--page-accent))!important;background:color-mix(in srgb,var(--metric-color,var(--page-accent)) 10%,#fff)!important;box-shadow:none!important;font-size:.72rem!important}.metric-card small{grid-column:2!important;grid-row:1!important;align-self:center!important;margin:0!important;color:#687d8e!important;font-size:.58rem!important;font-weight:800!important;letter-spacing:.045em!important;line-height:1.25!important;text-transform:uppercase!important}.metric-card>strong{grid-column:1/-1!important;grid-row:2!important;margin:.33rem 0 .05rem!important;color:#173e62!important;font-size:1.06rem!important;line-height:1.15!important}.metric-card>p{grid-column:1/-1!important;grid-row:3!important;margin:.12rem 0 0!important;color:#82909c!important;font-size:.62rem!important;line-height:1.35!important}.investment-summary-card{min-height:86px!important;padding:.78rem .85rem!important;border-color:color-mix(in srgb,var(--page-accent) 15%,#dce7ed)!important;background:rgba(255,255,255,.86)!important}.investment-summary-card>span{width:32px!important;height:32px!important;border-radius:9px!important}

/* Tables: compact grid, crisp separation, sticky header, readable hover and long-content preview. */
.table-shell{position:relative!important;overflow:hidden!important;margin-bottom:12px!important;border:1px solid color-mix(in srgb,var(--page-accent) 16%,#d9e4ec)!important;border-radius:15px!important;background:rgba(255,255,255,.92)!important;box-shadow:0 10px 26px rgba(18,63,104,.07)!important;backdrop-filter:blur(10px)!important}.table-shell::before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--page-accent),var(--page-accent-2),#67be4b)}
.table-shell>.table-toolbar{padding:7px 9px!important;background:linear-gradient(105deg,color-mix(in srgb,var(--page-accent) 5%,#f7fbfd),#fbfdfe 60%,#f4faf1)!important;border-bottom:1px solid #dfe9f0!important}.table-toolbar-main{gap:8px!important}.table-search input{min-height:31px!important;border-radius:9px!important;background:rgba(255,255,255,.92)!important}.table-action-button{min-height:31px!important;border-radius:9px!important}.table-toolbar-meta{font-size:.61rem!important}
.table-scroll{overflow:auto!important;scrollbar-width:thin;scrollbar-color:#b7c9d6 #eef3f6}.premium-data-table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;font-size:.71rem!important}.premium-data-table thead{position:sticky;top:0;z-index:3}.premium-data-table thead th{padding:.52rem .62rem!important;border-right:1px solid rgba(255,255,255,.10)!important;border-bottom:1px solid #144878!important;background:linear-gradient(112deg,#164b82 0%,#1f5da8 58%,#2d74ac 100%)!important;color:#f8fbff!important;font-size:.58rem!important;font-weight:800!important;letter-spacing:.045em!important;text-transform:uppercase!important;white-space:nowrap!important}.premium-data-table thead th:last-child{border-right:0!important}.premium-data-table tbody td{position:relative;padding:.45rem .62rem!important;border-right:1px solid #edf2f5!important;border-bottom:1px solid #e7edf2!important;background:rgba(255,255,255,.93)!important;color:#334a5d!important;vertical-align:middle!important;line-height:1.4!important}.premium-data-table tbody td:last-child{border-right:0!important}.premium-data-table tbody tr:nth-child(even) td{background:rgba(247,250,252,.94)!important}.premium-data-table tbody tr:hover td{background:color-mix(in srgb,var(--page-accent) 5%,#fff)!important}.premium-data-table tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--page-accent)!important}.premium-data-table td strong,.premium-data-table td a{font-weight:700}.premium-data-table td.num{font-variant-numeric:tabular-nums}.table-cell-compact{max-width:235px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;cursor:help}.table-cell-wide{max-width:310px!important}.table-cell-compact:focus{outline:2px solid color-mix(in srgb,var(--page-accent) 35%,transparent);outline-offset:-2px}.table-hover-preview{position:fixed;z-index:9999;display:none;width:min(330px,calc(100vw - 24px));max-height:126px;overflow:auto;padding:9px 11px;border:1px solid #cbdce7;border-radius:10px;color:#29485d;background:rgba(255,255,255,.98);box-shadow:0 16px 38px rgba(8,40,67,.18);font:600 11px/1.5 Inter,system-ui,sans-serif;white-space:normal;pointer-events:none;backdrop-filter:blur(12px)}.table-hover-preview.show{display:block;animation:naamHeroIn .13s ease-out both}.table-row-action.icon-action,.icon-action{min-width:28px!important;min-height:28px!important;border-radius:8px!important;border-color:#d9e5ec!important;background:#fff!important}.table-row-action.icon-action:hover,.icon-action:hover{transform:translateY(-1px)!important;border-color:color-mix(in srgb,var(--page-accent) 25%,#d9e5ec)!important;box-shadow:0 5px 12px rgba(18,63,104,.08)!important}

/* Forms and tabs follow the same compact surface language. */
.form-section{padding:.92rem 1rem!important}.form-input,select.form-input,textarea.form-input{border-color:#d2dfe8!important;border-radius:9px!important;background:rgba(255,255,255,.93)!important;box-shadow:inset 0 1px 1px rgba(18,63,104,.02)!important}.form-input:focus,select.form-input:focus,textarea.form-input:focus{border-color:color-mix(in srgb,var(--page-accent) 55%,#a9c4d8)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--page-accent) 10%,transparent)!important}.tab-btn{border-radius:9px!important}.tab-btn.active{color:var(--page-accent)!important;background:color-mix(in srgb,var(--page-accent) 8%,#fff)!important;border-color:color-mix(in srgb,var(--page-accent) 18%,#d8e4eb)!important}
.btn-primary,button.btn-primary,a.btn-primary{background:linear-gradient(135deg,var(--page-accent,#1f5da8),var(--page-accent-2,#2b7fbd) 72%,color-mix(in srgb,var(--page-accent-2,#2b7fbd) 72%,#67be4b))!important;box-shadow:0 7px 17px color-mix(in srgb,var(--page-accent,#1f5da8) 17%,transparent)!important}.btn-primary:hover,button.btn-primary:hover,a.btn-primary:hover{transform:translateY(-1px)!important;box-shadow:0 10px 22px color-mix(in srgb,var(--page-accent,#1f5da8) 22%,transparent)!important}.btn-secondary,.btn-green,.btn-danger{border-radius:9px!important}

/* Login/logout: shareholder-focused local visual and a more deliberate corporate composition. */
.react-login-page,.react-logout-page{background-image:linear-gradient(rgba(244,249,252,.78),rgba(244,249,252,.82)),url('/assets/images/shareholder-trust-network.svg')!important;background-size:cover,cover!important;background-position:center,center!important}
.react-login-frame{width:min(1160px,100%)!important;min-height:620px!important;border:1px solid rgba(31,93,168,.14)!important;border-radius:26px!important;background:rgba(255,255,255,.91)!important;box-shadow:0 28px 80px rgba(15,62,103,.17)!important;backdrop-filter:blur(18px) saturate(120%)!important}.react-login-brand-panel{background:linear-gradient(145deg,rgba(12,71,132,.97),rgba(26,91,155,.95) 60%,rgba(49,121,165,.94)),url('/assets/images/shareholder-login-visual.svg')!important;background-size:cover,cover!important;background-position:center,center!important}.react-login-brand-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,45,86,.04),rgba(7,45,86,.24));pointer-events:none}.react-login-brand-top,.react-login-brand-copy,.react-login-feature-grid,.react-company-details,.react-login-trust-row{position:relative;z-index:2}.react-login-logo{width:220px!important;min-height:70px!important;padding:8px 12px!important;border:1px solid rgba(255,255,255,.55)!important;border-radius:16px!important;background:rgba(255,255,255,.96)!important}.react-login-brand-copy h2{font-size:clamp(31px,3.7vw,45px)!important;max-width:570px!important}.react-login-brand-copy p{font-size:13px!important;max-width:535px!important}.react-login-feature-grid>div{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.13)!important;backdrop-filter:blur(7px)!important}.react-login-feature-grid>div:hover{background:rgba(255,255,255,.14)!important}.react-login-feature-grid>div>span{color:#c7f3b9!important;background:rgba(255,255,255,.12)!important}.react-login-auth-panel{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(250,253,255,.96))!important}.react-primary-action{background:linear-gradient(135deg,#174f91,#2578b9 68%,#5cab43)!important}.react-auth-brandline img{border:1px solid #d9e6ee!important;border-radius:10px!important}.react-auth-security-note{background:linear-gradient(100deg,#f1f7fc,#f5faF1)!important;border-color:#dce8ee!important}

/* Footer slightly more compact so records remain the visual priority. */
.portal-brand-footer{min-height:70px!important;padding:10px 17px!important;background:rgba(248,251,253,.92)!important;backdrop-filter:blur(10px)!important}.portal-footer-brand img{width:32px!important;height:32px!important}.portal-footer-brand strong{font-size:.63rem!important}.portal-footer-contact span{font-size:.54rem!important}.portal-footer-legal{font-size:.51rem!important}

/* Responsive consistency. */
@media(max-width:1180px){.react-page-hero{grid-template-columns:1fr!important}.react-page-hero-meta{display:flex!important;align-items:center!important;justify-content:space-between!important;min-width:0!important}.react-hero-trust-chips{justify-content:flex-end!important}.dashboard-metrics,.admin-dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:900px){.portal-main{padding:11px 11px 22px!important}.react-sb-brand-minimal{min-height:104px!important}.portal-sidebar.collapsed .react-brand-portal-label{display:block!important}.portal-sidebar.collapsed .react-brand-logo-full{display:flex!important}.portal-sidebar.collapsed .react-brand-logo-mark{display:none!important}.react-page-hero{min-height:0!important;padding:14px 15px!important}.react-page-hero-meta{display:none!important}.react-page-hero-watermark{right:5%!important}.dashboard-metrics,.admin-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.portal-page-intro,.portfolio-hero{align-items:flex-start!important;flex-direction:column!important}.portal-page-actions,.portfolio-hero-actions{width:100%!important;justify-content:flex-start!important}}
@media(max-width:620px){body.portal-body{background-attachment:scroll!important}.portal-main{padding:8px 7px 18px!important}.react-topbar{min-height:56px!important;padding:6px 8px!important}.react-page-hero{margin-bottom:8px!important;padding:13px!important;border-radius:14px!important}.react-page-hero-icon{width:42px!important;height:42px!important;flex-basis:42px!important;border-radius:12px!important;font-size:16px!important}.react-page-hero-copy h2{font-size:19px!important}.react-page-hero-copy p{font-size:9.8px!important;line-height:1.45!important}.react-page-hero-watermark{right:-8px!important;width:80px!important;height:80px!important}.portal-page-intro,.portfolio-hero{padding:9px 10px!important;border-radius:12px!important}.portal-page-intro-icon{width:30px!important;height:30px!important}.portal-page-intro h1,.portal-page-intro h2,.portfolio-hero h2{font-size:.9rem!important}.dashboard-metrics,.admin-dashboard-metrics,.investment-summary-grid{grid-template-columns:1fr!important;gap:.52rem!important}.metric-card,.financial-card{min-height:98px!important;padding:.7rem .75rem!important}.portal-main .naam-surface-card{border-radius:13px!important}.portal-main .naam-surface-card:hover{transform:none!important}.premium-data-table{font-size:.69rem!important}.table-shell{border-radius:12px!important}.table-cell-compact{max-width:190px!important}.react-login-page,.react-logout-page{padding:9px!important}.react-login-frame{border-radius:19px!important}.react-login-brand-panel{padding:20px 17px!important}.react-login-logo{width:190px!important}.react-login-brand-copy h2{font-size:28px!important}.react-login-feature-grid{grid-template-columns:1fr 1fr!important}.portal-brand-footer{padding:10px!important}}

@media(prefers-reduced-motion:reduce){.react-page-hero,.react-page-hero::before,.react-page-hero-icon,.portal-main .naam-surface-card,.table-hover-preview{animation:none!important}.react-s-link:hover,.portal-main .naam-surface-card:hover,.metric-card:hover,.btn-primary:hover{transform:none!important}}

/* Standalone onboarding and error pages use the same portal skin. */
.onboarding-page,.error-page{min-height:100vh;background:linear-gradient(rgba(247,250,253,.82),rgba(247,250,253,.86)),url('/assets/images/shareholder-trust-network.svg') center/cover fixed no-repeat!important;color:#25465d}
.onboarding-shell{width:min(1160px,calc(100% - 24px))!important;margin:0 auto!important;padding:18px 0 30px!important}.onboarding-header{margin-bottom:10px!important;padding:9px 11px!important;border:1px solid rgba(31,93,168,.14)!important;border-radius:15px!important;background:rgba(255,255,255,.9)!important;box-shadow:0 10px 26px rgba(18,63,104,.07)!important;backdrop-filter:blur(10px)!important}.onboarding-brand img{width:205px!important;height:auto!important}.onboarding-intro{position:relative!important;overflow:hidden!important;margin-bottom:12px!important;padding:18px 20px!important;border:1px solid rgba(255,255,255,.20)!important;border-radius:18px!important;background:linear-gradient(118deg,#124986,#1f5da8 67%,#4b9d52 120%)!important;box-shadow:0 15px 34px rgba(20,72,126,.16)!important;animation:naamHeroIn .42s ease-out both!important}.onboarding-intro::after{content:"";position:absolute;inset:0;background:url('/assets/images/shareholder-trust-network.svg') right center/760px auto no-repeat;opacity:.08;mix-blend-mode:screen;pointer-events:none}.onboarding-intro>*{position:relative;z-index:1}.onboarding-intro h1{margin:4px 0 5px!important;font-size:1.55rem!important}.onboarding-intro p{max-width:760px!important;margin:0!important;font-size:.72rem!important;line-height:1.55!important}.onboarding-code{border-color:rgba(255,255,255,.18)!important;background:rgba(255,255,255,.10)!important;backdrop-filter:blur(8px)!important}.onboarding-card,.onboarding-submit{position:relative!important;overflow:hidden!important;margin-bottom:10px!important;padding:1rem!important;border:1px solid rgba(31,93,168,.15)!important;border-radius:15px!important;background:rgba(255,255,255,.9)!important;box-shadow:0 10px 26px rgba(18,63,104,.07)!important;backdrop-filter:blur(10px)!important}.onboarding-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,#1f5da8,#2b8fbd,#67be4b)}.onboarding-section-heading>span{color:#1f5da8!important;background:#eef6fb!important;border:1px solid #d7e7f1!important}.onboarding-section-heading h2{font-size:.92rem!important}.onboarding-grid{gap:.75rem!important}.onboarding-address-grid{gap:.8rem!important}.onboarding-address-grid fieldset{border-color:#dce7ee!important;border-radius:12px!important;background:rgba(249,252,254,.82)!important}.onboarding-submit{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important}
.error-page{display:grid!important;place-items:center!important;padding:18px!important}.error-card{width:min(520px,100%)!important;padding:27px 25px!important;border:1px solid rgba(31,93,168,.15)!important;border-radius:21px!important;background:rgba(255,255,255,.92)!important;box-shadow:0 22px 60px rgba(18,63,104,.14)!important;backdrop-filter:blur(14px)!important}.error-logo{width:225px!important;max-width:80%!important;margin:0 auto 12px!important;padding:8px 11px!important;border:1px solid #d8e5ee!important;border-radius:14px!important;background:#fff!important}.error-logo img{display:block;width:100%!important;height:auto!important}.error-icon{box-shadow:none!important}.error-code{background:linear-gradient(90deg,#164f8f,#2b7fbd,#5cab43)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}.error-action{border-radius:10px!important;background:linear-gradient(135deg,#174f91,#2578b9 68%,#5cab43)!important;box-shadow:0 8px 18px rgba(31,93,168,.18)!important}.error-meta{padding-top:12px!important;border-top:1px solid #e3ebf1!important;color:#718390!important}
@media(max-width:700px){.onboarding-shell{width:min(100% - 14px,1160px)!important;padding-top:8px!important}.onboarding-header{padding:7px 8px!important}.onboarding-brand img{width:165px!important}.onboarding-intro{padding:15px!important;border-radius:15px!important}.onboarding-submit{grid-template-columns:1fr!important}.onboarding-submit .btn-primary{width:100%!important;justify-content:center!important}.error-card{padding:22px 17px!important}}

/* Secondary mini-cards and record panels share the same visual grammar. */
.portal-main .attention-card,.portal-main .nbss-entitlement-card,.portal-main .nbss-detail-card,
.portal-main .share-issuance-card,.portal-main .share-code-card,.portal-main .share-capital-update-card,
.portal-main .lifecycle-recipient-card,.portal-main .lifecycle-audit-card,.portal-main .lifecycle-review-card,
.portal-main .change-proof-panel,.portal-main .communication-sender-card,.portal-main .communication-sender-compact,
.portal-main .message-detail-grid>div,.portal-main .request-detail-grid>div,.portal-main .detail-field,
.portal-main .document-list-card,.portal-main .document-folder-panel,.portal-main .import-template-link,
.portal-main .communication-active-note{
  border-color:color-mix(in srgb,var(--page-accent) 14%,#dde7ed)!important;
  border-radius:12px!important;
  background:linear-gradient(140deg,rgba(255,255,255,.90),color-mix(in srgb,var(--page-accent) 3%,rgba(249,252,254,.88)))!important;
  box-shadow:0 6px 16px rgba(18,63,104,.045)!important;
}
.portal-main .attention-card:hover,.portal-main .import-template-link:hover,.portal-main .document-list-card:hover{
  border-color:color-mix(in srgb,var(--page-accent) 23%,#dce6ed)!important;
  box-shadow:0 9px 20px rgba(18,63,104,.07)!important;
}
.portal-main .detail-field,.portal-main .message-detail-grid>div,.portal-main .request-detail-grid>div{padding:.7rem .76rem!important}
.portal-main .detail-field>span,.portal-main .message-detail-grid>div>span,.portal-main .request-detail-grid>div>span{color:#728392!important}
.portal-main .document-meta-badge{border-color:#dbe6ed!important;background:rgba(249,252,254,.9)!important}
.portal-main .document-meta-badge.category{color:#236d86!important;background:#eff7fb!important}.portal-main .document-meta-badge.visible{color:#1b744d!important;background:#eef8f2!important}.portal-main .document-meta-badge.folder{color:#6b5d9e!important;background:#f5f2fb!important}

/* ==========================================================================
   v1.0.0 UI refinement — compact identity, visual cards, responsive registers
   ========================================================================== */
:root{
  --naam-card-glass:rgba(255,255,255,.88);
  --naam-card-line:rgba(31,93,168,.15);
  --naam-card-shadow:0 10px 26px rgba(18,63,104,.065);
}

/* Sidebar brand: the artwork itself carries the brand field; no oversized white tile. */
.react-sb-brand-minimal{min-height:96px!important;padding:9px 10px 7px!important}
.react-sb-brand-minimal>a{
  min-height:0!important;padding:3px!important;gap:6px!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;overflow:visible!important;
}
.react-sb-brand-minimal .react-brand-logo-full{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:178px!important;max-width:100%!important;height:63px!important;padding:0!important;
  overflow:hidden!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:10px!important;
  background:#0c50a1!important;box-shadow:0 7px 18px rgba(3,26,52,.14)!important;
}
.react-sb-brand-minimal .react-brand-logo-full img{width:100%!important;height:100%!important;object-fit:cover!important}
.react-brand-portal-label{margin-top:1px!important;color:rgba(244,250,255,.86)!important;font-size:.57rem!important;font-weight:800!important;letter-spacing:.115em!important;text-shadow:0 1px 8px rgba(0,0,0,.12)}
.portal-sidebar.collapsed .react-sb-brand-minimal{min-height:70px!important;padding:8px 7px!important}
.portal-sidebar.collapsed .react-sb-brand-minimal>a{min-height:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.portal-sidebar.collapsed .react-brand-logo-full{display:none!important}
.portal-sidebar.collapsed .react-brand-logo-mark{
  display:flex!important;width:44px!important;height:44px!important;padding:0!important;overflow:hidden!important;
  border:1px solid rgba(255,255,255,.72)!important;border-radius:12px!important;background:#0c50a1!important;
  box-shadow:0 7px 18px rgba(3,26,52,.14)!important;
}
.portal-sidebar.collapsed .react-brand-logo-mark img{width:100%!important;height:100%!important;object-fit:cover!important}
.portal-sidebar.collapsed .react-brand-portal-label{display:none!important}

/* Card surfaces: restrained page-accent tint + local shareholder graphic, never a blank white slab. */
.portal-main .naam-surface-card:not(.metric-card),
.portal-main .attention-card,.portal-main .nbss-entitlement-card,.portal-main .nbss-detail-card,
.portal-main .share-issuance-card,.portal-main .share-code-card,.portal-main .share-capital-update-card,
.portal-main .lifecycle-recipient-card,.portal-main .lifecycle-audit-card,.portal-main .lifecycle-review-card,
.portal-main .change-proof-panel,.portal-main .communication-sender-card,.portal-main .communication-sender-compact,
.portal-main .message-detail-grid>div,.portal-main .request-detail-grid>div,.portal-main .detail-field,
.portal-main .document-list-card,.portal-main .document-folder-panel,.portal-main .import-template-link,
.portal-main .communication-active-note{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 18%,#d8e4ec)!important;
  background:
    radial-gradient(circle at 96% 0%,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 9%,transparent),transparent 31%),
    linear-gradient(142deg,rgba(255,255,255,.93) 0%,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 4.5%,rgba(248,252,254,.90)) 72%,rgba(247,251,253,.90) 100%)!important;
  box-shadow:var(--naam-card-shadow)!important;backdrop-filter:blur(12px) saturate(112%)!important;
}
.portal-main .naam-surface-card:not(.metric-card)::after,
.portal-main .attention-card::after,.portal-main .nbss-entitlement-card::after,.portal-main .nbss-detail-card::after,
.portal-main .share-issuance-card::after,.portal-main .share-code-card::after,.portal-main .share-capital-update-card::after,
.portal-main .lifecycle-recipient-card::after,.portal-main .lifecycle-audit-card::after,.portal-main .lifecycle-review-card::after,
.portal-main .change-proof-panel::after,.portal-main .communication-sender-card::after,.portal-main .communication-sender-compact::after,
.portal-main .message-detail-grid>div::after,.portal-main .request-detail-grid>div::after,.portal-main .detail-field::after,
.portal-main .document-list-card::after,.portal-main .document-folder-panel::after,.portal-main .import-template-link::after,
.portal-main .communication-active-note::after{
  content:""!important;position:absolute!important;z-index:0!important;right:-34px!important;top:-18px!important;
  width:min(320px,44%)!important;height:150%!important;border-radius:0!important;
  background-image:url('/assets/images/shareholder-trust-network.svg')!important;background-repeat:no-repeat!important;
  background-position:right center!important;background-size:430px auto!important;opacity:.09!important;
  filter:saturate(.8)!important;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.34) 28%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.34) 28%,#000 100%);pointer-events:none!important;
}
.portal-main .naam-surface-card:not(.metric-card)>*,.portal-main .attention-card>*,.portal-main .nbss-entitlement-card>*,.portal-main .nbss-detail-card>*{position:relative;z-index:1}
.portal-main .naam-surface-card:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 30%,#d5e2ea)!important;box-shadow:0 15px 32px rgba(18,63,104,.09)!important}
.portal-main .card-heading{background:linear-gradient(90deg,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 6%,rgba(255,255,255,.78)),rgba(255,255,255,.40),transparent)!important}
.portal-main .card-heading h2,.portal-main .card-heading h3,.portal-main .naam-card-title{color:#173f65!important}

/* KPI cards keep their semantic color but gain the same quiet graphical depth. */
.metric-card,.financial-card{isolation:isolate!important;background:
  radial-gradient(circle at 94% 8%,color-mix(in srgb,var(--metric-color,var(--page-accent)) 11%,transparent),transparent 34%),
  linear-gradient(138deg,rgba(255,255,255,.95),color-mix(in srgb,var(--metric-color,var(--page-accent)) 7%,rgba(250,252,254,.90)))!important}
.metric-card::after{right:-18px!important;bottom:-30px!important;width:126px!important;height:126px!important;border-radius:0!important;background:url('/assets/images/shareholder-trust-network.svg') right center/250px auto no-repeat!important;opacity:.10!important;filter:saturate(.82)!important;mask-image:linear-gradient(90deg,transparent,#000)!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000)!important}
.metric-card>*{position:relative;z-index:1}

/* Table shells visually belong to the same card system, with a clear scrolling affordance. */
.table-shell{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(247,251,253,.91))!important}
.table-shell::after{content:"";position:absolute;z-index:0;right:-70px;top:0;width:230px;height:84px;background:url('/assets/images/shareholder-trust-network.svg') right top/360px auto no-repeat;opacity:.055;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000)}
.table-shell>*{position:relative;z-index:1}
.table-scroll{position:relative!important;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}

/* Footer: modest brand finish without competing with the records above. */
.portal-brand-footer{position:relative!important;overflow:hidden!important;min-height:68px!important;border-top:0!important;background:
  linear-gradient(100deg,rgba(247,251,254,.97),rgba(250,253,255,.95) 56%,rgba(244,250,241,.96))!important;
  box-shadow:inset 0 1px 0 rgba(31,93,168,.09),0 -5px 18px rgba(18,63,104,.035)!important
}
.portal-brand-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#1f5da8,#2b8fbd 66%,#67be4b)}
.portal-brand-footer::after{content:"";position:absolute;right:-48px;bottom:-85px;width:230px;height:180px;background:url('/assets/images/shareholder-trust-network.svg') center/360px auto no-repeat;opacity:.055;pointer-events:none}
.portal-brand-footer>div{position:relative;z-index:1}.portal-footer-brand img{border:1px solid #cfe0eb!important;border-radius:10px!important;background:#0c50a1!important;box-shadow:0 5px 12px rgba(18,63,104,.07)!important}.portal-footer-contact i{color:#2b7fbd!important}.portal-footer-contact a{color:#436981!important}.portal-footer-legal span{padding:2px 6px;border:1px solid rgba(31,93,168,.08);border-radius:999px;background:rgba(255,255,255,.60)}

/* Tablet/mobile: every data table becomes a labelled record stack, including editable rows. */
@media(max-width:920px){
  .table-shell{overflow:visible!important;border-radius:14px!important}.table-shell>.table-toolbar{border-radius:14px 14px 0 0!important}.table-shell>.table-scroll{overflow:visible!important}
  .table-toolbar-main,.table-toolbar-meta{gap:7px!important;flex-wrap:wrap!important}.table-toolbar-main .table-search{flex:1 1 260px!important;min-width:min(100%,220px)!important}.table-toolbar-actions{flex-wrap:wrap!important}.table-toolbar-meta{justify-content:space-between!important}
  .premium-mobile-cards{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;border:0!important;background:transparent!important;table-layout:auto!important}
  .premium-mobile-cards colgroup,.premium-mobile-cards thead{display:none!important}
  .premium-mobile-cards tbody{display:grid!important;gap:10px!important;padding:9px!important;background:linear-gradient(145deg,#f6fafc,#f7fbf6)!important}
  .premium-mobile-cards tbody tr{display:grid!important;width:100%!important;min-width:0!important;overflow:hidden!important;border:1px solid color-mix(in srgb,var(--page-accent) 16%,#dce6ed)!important;border-radius:13px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 7px 18px rgba(18,63,104,.055)!important}
  .premium-mobile-cards tbody tr[hidden]{display:none!important}.premium-mobile-cards tbody tr:hover{transform:none!important}.premium-mobile-cards tbody tr:hover td:first-child{box-shadow:none!important}
  .premium-mobile-cards tbody td{display:grid!important;grid-template-columns:minmax(112px,30%) minmax(0,1fr)!important;align-items:start!important;gap:9px!important;width:100%!important;max-width:none!important;min-width:0!important;min-height:40px!important;height:auto!important;padding:8px 10px!important;border-right:0!important;border-bottom:1px solid #edf2f5!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;background:transparent!important;text-align:left!important;line-height:1.42!important}
  .premium-mobile-cards tbody td:last-child{border-bottom:0!important}.premium-mobile-cards tbody td::before{content:attr(data-label);align-self:start;padding-top:2px;color:#647b8d;font-size:.58rem;font-weight:850;letter-spacing:.045em;text-transform:uppercase;line-height:1.35}.premium-mobile-cards tbody td[colspan]{display:block!important;padding:18px!important}.premium-mobile-cards tbody td[colspan]::before{display:none!important}
  .premium-mobile-cards tbody td>*,.premium-mobile-cards tbody td>div{min-width:0!important;max-width:100%!important}.premium-mobile-cards .table-cell-compact,.premium-mobile-cards .table-cell-wide{max-width:none!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;cursor:default!important}
  .premium-mobile-cards input:not([type="checkbox"]):not([type="radio"]),.premium-mobile-cards select,.premium-mobile-cards textarea{width:100%!important;max-width:100%!important;min-width:0!important}.premium-mobile-cards input[type="file"]{font-size:.67rem!important}.premium-mobile-cards .phone-field{display:grid!important;grid-template-columns:minmax(72px,90px) minmax(0,1fr)!important;width:100%!important;gap:5px!important}.premium-mobile-cards .phone-code{width:100%!important;min-width:0!important}.premium-mobile-cards .table-row-actions,.premium-mobile-cards .document-row-actions,.premium-mobile-cards .movement-register-actions{justify-content:flex-start!important;flex-wrap:wrap!important;gap:5px!important}
  .premium-mobile-cards .nowrap{white-space:normal!important}.premium-mobile-cards .num{text-align:left!important}.premium-mobile-cards .table-empty{text-align:center!important}.premium-mobile-cards .table-empty::before{display:none!important}
  .client-pagination,.ledger-pagination,.portal-pagination{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}
@media(max-width:600px){
  .premium-mobile-cards tbody{padding:7px!important;gap:8px!important}.premium-mobile-cards tbody td{grid-template-columns:minmax(86px,31%) minmax(0,1fr)!important;padding:7px 9px!important;gap:7px!important}.premium-mobile-cards tbody td::before{font-size:.55rem!important}.table-toolbar-main .table-search{flex-basis:100%!important;min-width:100%!important}.table-toolbar-actions{width:100%!important}.table-toolbar-actions .table-action-button{flex:1 1 auto!important;justify-content:center!important}.table-toolbar-meta{align-items:center!important}.portal-brand-footer{gap:8px!important}.portal-footer-contact{gap:4px 10px!important}.portal-footer-legal{gap:4px!important}.portal-footer-legal span{border-radius:7px!important}
}

/* Keep collapsed identity image-only at every desktop/tablet width. */
@media(min-width:821px){.portal-sidebar.collapsed .react-brand-logo-full{display:none!important}.portal-sidebar.collapsed .react-brand-logo-mark{display:flex!important}.portal-sidebar.collapsed .react-brand-portal-label{display:none!important}}
@media(max-width:820px){.react-sb-brand-minimal{min-height:92px!important}.react-sb-brand-minimal .react-brand-logo-full{width:170px!important;height:60px!important}.react-brand-portal-label{font-size:.55rem!important}}

@media(prefers-reduced-motion:reduce){.portal-main .naam-surface-card{transition:none!important}}

/* ==========================================================================
   v1.0.0 final refinement — logo clarity + richer universal card surfaces
   ========================================================================== */

/* Keep the full hospital wordmark fully visible in the navigation. */
.react-sb-brand-minimal{min-height:103px!important;padding:10px 10px 7px!important}
.react-sb-brand-minimal>a{gap:5px!important;padding:2px!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
.react-sb-brand-minimal .react-brand-logo-full{
  width:188px!important;max-width:calc(100% - 2px)!important;height:67px!important;
  padding:2px!important;border:1px solid rgba(255,255,255,.78)!important;border-radius:10px!important;
  background:#1557a1!important;box-shadow:0 7px 18px rgba(3,25,51,.18)!important;overflow:hidden!important
}
.react-sb-brand-minimal .react-brand-logo-full img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;border-radius:8px!important}
.react-brand-portal-label{margin-top:1px!important;color:rgba(255,255,255,.91)!important;font-size:.57rem!important;letter-spacing:.12em!important;text-shadow:0 1px 5px rgba(0,0,0,.18)!important}
.portal-sidebar.collapsed .react-brand-logo-mark{width:44px!important;height:44px!important;padding:1px!important;border:1px solid rgba(255,255,255,.80)!important;background:#fff!important}
.portal-sidebar.collapsed .react-brand-logo-mark img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
@media(max-width:820px){.react-sb-brand-minimal .react-brand-logo-full{width:184px!important;height:66px!important}}

/* Universal cards: layered graphical depth without turning content panels into banners. */
@keyframes naamCardAmbient{
  0%{background-position:0% 0%,100% 0%,100% 50%,0 0}
  100%{background-position:8% 4%,94% 8%,92% 54%,0 0}
}
@keyframes naamCardReveal{from{opacity:.72;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.portal-main .naam-surface-card:not(.metric-card){
  isolation:isolate!important;overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 22%,#d7e3eb)!important;
  background-image:
    radial-gradient(circle at 8% 6%,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 8%,transparent) 0 7%,transparent 24%),
    radial-gradient(circle at 92% 12%,color-mix(in srgb,var(--naam-green) 7%,transparent) 0 8%,transparent 26%),
    linear-gradient(145deg,rgba(255,255,255,.94),color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 4.5%,rgba(247,251,253,.90))),
    url('/assets/images/shareholder-trust-network.svg')!important;
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat!important;
  background-size:220px 220px,210px 210px,100% 100%,480px auto!important;
  background-position:0% 0%,100% 0%,100% 50%,right center!important;
  box-shadow:0 11px 27px rgba(18,63,104,.072)!important;
  backdrop-filter:blur(12px) saturate(116%)!important;
  animation:naamCardReveal .34s ease-out both,naamCardAmbient 10s ease-in-out 1s infinite alternate!important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important
}
.portal-main .naam-surface-card:not(.metric-card)::before{
  content:""!important;position:absolute!important;z-index:1!important;inset:0 auto auto 0!important;width:100%!important;height:3px!important;
  background:linear-gradient(90deg,var(--naam-card-accent,var(--page-accent)),color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 62%,#67be4b),transparent 78%)!important;
  opacity:.92!important;pointer-events:none!important
}
.portal-main .naam-surface-card:not(.metric-card)::after{
  content:""!important;position:absolute!important;z-index:0!important;right:-34px!important;bottom:-42px!important;top:auto!important;
  width:170px!important;height:170px!important;border-radius:42% 58% 61% 39%/48% 45% 55% 52%!important;
  background:
    conic-gradient(from 32deg,color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 8%,transparent),transparent 24% 54%,color-mix(in srgb,#67be4b 7%,transparent) 55% 72%,transparent 73%),
    radial-gradient(circle at 38% 38%,rgba(255,255,255,.65),transparent 42%)!important;
  opacity:.82!important;filter:none!important;mask-image:none!important;-webkit-mask-image:none!important;pointer-events:none!important;transform:rotate(-8deg)!important
}
.portal-main .naam-surface-card:not(.metric-card)>*{position:relative!important;z-index:2!important}
.portal-main .naam-surface-card:not(.metric-card):hover{transform:translateY(-3px)!important;border-color:color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 34%,#d3e0e9)!important;box-shadow:0 17px 36px rgba(18,63,104,.105)!important}
.portal-main .naam-surface-card:not(.metric-card):focus-within{border-color:color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 40%,#cbdce7)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--naam-card-accent,var(--page-accent)) 9%,transparent),0 14px 32px rgba(18,63,104,.09)!important}

/* Metrics gain richer depth while keeping values dominant. */
.metric-card,.financial-card,.investment-summary-card{
  isolation:isolate!important;overflow:hidden!important;
  background-image:
    radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--metric-color,var(--page-accent)) 13%,transparent),transparent 33%),
    linear-gradient(138deg,rgba(255,255,255,.96),color-mix(in srgb,var(--metric-color,var(--page-accent)) 8%,rgba(248,252,254,.91)))!important;
  border-color:color-mix(in srgb,var(--metric-color,var(--page-accent)) 25%,#d9e4eb)!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important
}
.metric-card::after,.financial-card::after,.investment-summary-card::after{
  content:""!important;position:absolute!important;z-index:0!important;right:-25px!important;bottom:-38px!important;width:124px!important;height:124px!important;border-radius:50%!important;
  background:
    linear-gradient(42deg,transparent 41%,color-mix(in srgb,var(--metric-color,var(--page-accent)) 10%,transparent) 42% 49%,transparent 50%),
    radial-gradient(circle,color-mix(in srgb,#67be4b 8%,transparent),transparent 64%)!important;
  opacity:.9!important;mask-image:none!important;-webkit-mask-image:none!important;pointer-events:none!important
}
.metric-card>*,.financial-card>*,.investment-summary-card>*{position:relative!important;z-index:2!important}
.metric-card:hover,.financial-card:hover,.investment-summary-card:hover{transform:translateY(-3px)!important;box-shadow:0 15px 31px color-mix(in srgb,var(--metric-color,var(--page-accent)) 14%,transparent)!important}

/* Allocation tables keep their add/remove lifecycle obvious on desktop and mobile. */
.lifecycle-allocation-section{padding-top:.85rem!important}
.lifecycle-allocation-section>.btn-secondary{margin-top:.65rem!important}
.lifecycle-allocation-table .allocation-action{width:48px!important;text-align:center!important}
.lifecycle-allocation-table .remove-allocation[hidden],.lifecycle-allocation-table .remove-edit-allocation[hidden]{display:none!important}
.lifecycle-edit-allocation-section{margin-top:.2rem!important;padding:.8rem!important;border:1px solid color-mix(in srgb,var(--page-accent) 14%,#dce7ee)!important;border-radius:13px!important;background:rgba(249,252,254,.72)!important}

/* Email/login polish hooks: remove repeated visual identity in the authentication column. */
.react-auth-brandline{display:none!important}
.react-auth-heading{margin-top:0!important}
.react-login-brand-copy .react-eyebrow{opacity:.86!important}
.react-login-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.react-login-feature-grid>div{min-height:82px!important}

@media(max-width:920px){
  .portal-main .naam-surface-card:not(.metric-card){animation:naamCardReveal .3s ease-out both!important;background-size:180px 180px,170px 170px,100% 100%,400px auto!important}
  .lifecycle-allocation-section{padding-top:.55rem!important}
  .premium-mobile-cards.lifecycle-allocation-table tbody td{grid-template-columns:minmax(100px,32%) minmax(0,1fr)!important}
  .premium-mobile-cards.lifecycle-allocation-table .allocation-action{width:100%!important;text-align:left!important}
}
@media(max-width:620px){
  .portal-main .naam-surface-card:not(.metric-card)::after{width:125px!important;height:125px!important;right:-42px!important;bottom:-38px!important;opacity:.68!important}
  .react-login-feature-grid{grid-template-columns:1fr!important}
  .react-login-feature-grid>div{min-height:64px!important}
}
@media(prefers-reduced-motion:reduce){
  .portal-main .naam-surface-card:not(.metric-card){animation:none!important}
  .portal-main .naam-surface-card:not(.metric-card):hover,.metric-card:hover,.financial-card:hover,.investment-summary-card:hover{transform:none!important}
}

/* Performance guard: card motion is interaction-led rather than continuously repainting. */
.portal-main .naam-surface-card:not(.metric-card){animation:naamCardReveal .34s ease-out both!important}
.portal-main .naam-surface-card:not(.metric-card)::after{transition:transform .32s ease,opacity .32s ease!important}
.portal-main .naam-surface-card:not(.metric-card):hover::after{transform:rotate(2deg) scale(1.055)!important;opacity:.96!important}

/* ==========================================================================
   v1.0.0 final identity refinement — larger logo, no empty brand tile
   ========================================================================== */
.react-sb-brand-minimal{
  min-height:118px!important;
  padding:10px 10px 8px!important;
}
.react-sb-brand-minimal>a{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  width:100%!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.react-sb-brand-minimal .react-brand-logo-full{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:214px!important;
  max-width:calc(100% - 4px)!important;
  height:75px!important;
  padding:0!important;
  overflow:hidden!important;
  border:2px solid rgba(255,255,255,.96)!important;
  border-radius:12px!important;
  background:#1459a6!important;
  box-shadow:0 8px 20px rgba(2,29,58,.22),inset 0 0 0 1px rgba(255,255,255,.10)!important;
}
.react-sb-brand-minimal .react-brand-logo-full img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:9px!important;
}
.react-brand-portal-label{
  margin:0!important;
  color:#ffffff!important;
  font-size:.68rem!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:.105em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 6px rgba(0,0,0,.24)!important;
}
.portal-sidebar.collapsed .react-sb-brand-minimal{
  min-height:72px!important;
  padding:9px 7px!important;
}
.portal-sidebar.collapsed .react-sb-brand-minimal>a{padding:0!important}
.portal-sidebar.collapsed .react-brand-logo-full{display:none!important}
.portal-sidebar.collapsed .react-brand-logo-mark{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:48px!important;
  height:48px!important;
  padding:0!important;
  overflow:hidden!important;
  border:2px solid rgba(255,255,255,.96)!important;
  border-radius:13px!important;
  background:#ffffff!important;
  box-shadow:0 7px 18px rgba(2,29,58,.22)!important;
}
.portal-sidebar.collapsed .react-brand-logo-mark img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
}
.portal-sidebar.collapsed .react-brand-portal-label{display:none!important}

/* PHP fallback brand uses the same compact visual treatment if React has not mounted yet. */
.sb-brand .sb-logo-full img{
  height:72px!important;
  width:auto!important;
  max-width:214px!important;
  padding:0!important;
  border:2px solid rgba(255,255,255,.96)!important;
  border-radius:12px!important;
  background:#1459a6!important;
  box-shadow:0 8px 20px rgba(2,29,58,.22)!important;
}

@media(max-width:820px){
  .react-sb-brand-minimal{min-height:112px!important;padding:9px 9px 7px!important}
  .react-sb-brand-minimal .react-brand-logo-full{width:206px!important;height:73px!important}
  .react-brand-portal-label{font-size:.64rem!important}
}

/* Final logo dimensions — sized for the 252px desktop sidebar. */
.react-sb-brand-minimal .react-brand-logo-full{width:220px!important;height:78px!important;border-width:3px!important}
.react-brand-portal-label{font-size:.72rem!important;letter-spacing:.10em!important}
.portal-sidebar.collapsed .react-brand-logo-mark{width:50px!important;height:50px!important;border-width:3px!important}
.sb-brand .sb-logo-full img{height:76px!important;max-width:220px!important;border-width:3px!important}
@media(max-width:820px){.react-sb-brand-minimal .react-brand-logo-full{width:212px!important;height:75px!important}.react-brand-portal-label{font-size:.68rem!important}}

/* v1.0.0 production identity: full-width logo with no dead tile space */
.react-sb-brand-minimal{min-height:120px!important;padding:7px 5px 8px!important}
.react-sb-brand-minimal>a{width:100%!important;gap:7px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.react-sb-brand-minimal .react-brand-logo-full{
  width:calc(100% - 2px)!important;max-width:242px!important;height:auto!important;aspect-ratio:1458/421!important;
  padding:0!important;margin:0!important;overflow:hidden!important;border:4px solid #fff!important;border-radius:13px!important;
  background:#0c50a1!important;box-shadow:0 8px 22px rgba(1,25,50,.28),0 0 0 1px rgba(7,45,90,.22)!important
}
.react-sb-brand-minimal .react-brand-logo-full img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center!important;padding:0!important;margin:0!important;border:0!important;border-radius:8px!important}
.react-brand-portal-label{font-size:.78rem!important;line-height:1.15!important;font-weight:850!important;letter-spacing:.11em!important;margin-top:1px!important;color:#fff!important;text-shadow:0 1px 7px rgba(0,0,0,.28)!important}
.portal-sidebar.collapsed .react-sb-brand-minimal{min-height:74px!important;padding:8px 6px!important}
.portal-sidebar.collapsed .react-brand-logo-mark{width:52px!important;height:52px!important;border:4px solid #fff!important;border-radius:14px!important;background:#fff!important;box-shadow:0 7px 18px rgba(1,25,50,.28)!important}
.portal-sidebar.collapsed .react-brand-logo-mark img{width:100%!important;height:100%!important;object-fit:cover!important}
.sb-brand .sb-logo-full img{height:auto!important;width:calc(100% - 8px)!important;max-width:240px!important;aspect-ratio:1458/421!important;object-fit:cover!important;border:4px solid #fff!important;border-radius:13px!important;padding:0!important;margin:0 auto!important}
@media(max-width:820px){
  .react-sb-brand-minimal{min-height:116px!important;padding:7px 5px!important}
  .react-sb-brand-minimal .react-brand-logo-full{width:calc(100% - 2px)!important;max-width:238px!important;height:auto!important}
  .react-brand-portal-label{font-size:.75rem!important}
}


/* ===== Base v1.0.0 final brand/header cleanup =====
   One primary sidebar identity, one date location, and no duplicated portal branding. */
.react-sb-brand-minimal{
  min-height:104px!important;
  padding:9px 9px 8px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.react-sb-brand-minimal>a{
  width:100%!important;
  min-height:0!important;
  gap:7px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.react-sb-brand-minimal .react-brand-logo-full{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:232px!important;
  height:auto!important;
  aspect-ratio:281/82!important;
  padding:0!important;
  overflow:hidden!important;
  border:2px solid rgba(255,255,255,.98)!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(0,24,62,.18)!important;
}
.react-sb-brand-minimal .react-brand-logo-full img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:9px!important;
  background:#fff!important;
}
.react-brand-portal-label{
  display:block!important;
  margin:0!important;
  color:#fff!important;
  font-size:.72rem!important;
  font-weight:800!important;
  line-height:1.1!important;
  letter-spacing:.085em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 3px rgba(0,24,62,.30)!important;
}
.portal-sidebar.collapsed .react-sb-brand-minimal{
  min-height:72px!important;
  padding:9px 7px!important;
}
.portal-sidebar.collapsed .react-sb-brand-minimal>a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.portal-sidebar.collapsed .react-brand-logo-full{display:none!important}
.portal-sidebar.collapsed .react-brand-logo-mark{
  display:flex!important;
  width:46px!important;
  height:46px!important;
  border:2px solid rgba(255,255,255,.96)!important;
  border-radius:12px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:0 5px 14px rgba(0,24,62,.20)!important;
}
.portal-sidebar.collapsed .react-brand-logo-mark img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  padding:0!important;
}
.portal-sidebar.collapsed .react-brand-portal-label{display:none!important}

/* PHP fallback when React has not mounted yet. */
.sb-brand{
  min-height:96px!important;
  padding:8px 9px!important;
}
.sb-brand>a{
  width:100%!important;
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.sb-brand .sb-logo-full{width:100%!important}
.sb-brand .sb-logo-full img{
  display:block!important;
  width:100%!important;
  max-width:232px!important;
  height:auto!important;
  aspect-ratio:281/82!important;
  object-fit:contain!important;
  padding:0!important;
  margin:0 auto!important;
  border:2px solid rgba(255,255,255,.98)!important;
  border-radius:11px!important;
  background:#fff!important;
}

/* The sidebar is the application brand anchor; the top bar should not repeat it. */
.react-topbar-brand{display:none!important}
.react-topbar-heading{
  flex:1 1 auto!important;
  min-width:0!important;
  padding-left:2px!important;
}
.react-topbar-heading .react-title-row{gap:10px!important}
.react-topbar-heading .react-title-row p{margin-top:1px!important}

/* Hero metadata shows context and role only. Date remains once in the top bar. */
.react-hero-glass-card small{display:none!important}
.react-hero-mini-label{letter-spacing:.06em!important}

/* On compact screens the off-canvas sidebar still shows the full brand while open. */
@media(max-width:820px){
  .portal-sidebar:not(.collapsed) .react-sb-brand-minimal{min-height:102px!important;padding:8px 9px 7px!important}
  .portal-sidebar:not(.collapsed) .react-sb-brand-minimal .react-brand-logo-full{
    display:flex!important;
    width:100%!important;
    max-width:224px!important;
  }
  .portal-sidebar:not(.collapsed) .react-brand-portal-label{display:block!important;font-size:.68rem!important}
}

/* ===== Base v1.0.0 final document workspace + sidebar brand refinement =====
   Presentation-only. Business logic, permissions, document security and database
   behaviour are intentionally unchanged. */

/* Sidebar brand: slightly narrower than the sidebar, but taller and easier to read.
   The logo asset is already tightly cropped; only a minimal white field remains. */
.react-sb-brand-minimal{
  min-height:100px!important;
  padding:7px 8px 6px!important;
}
.react-sb-brand-minimal>a{
  width:100%!important;
  gap:5px!important;
  padding:0!important;
  margin:0!important;
}
.react-sb-brand-minimal .react-brand-logo-full{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:214px!important;
  max-width:calc(100% - 4px)!important;
  height:66px!important;
  box-sizing:border-box!important;
  padding:0!important;
  margin:0 auto!important;
  border:3px solid #fff!important;
  border-radius:13px!important;
  background:#fff!important;
  overflow:hidden!important;
  box-shadow:0 7px 18px rgba(0,24,62,.22)!important;
}
.react-sb-brand-minimal .react-brand-logo-full img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:9px!important;
  background:#fff!important;
}
.react-brand-portal-label{
  margin-top:1px!important;
  font-size:.72rem!important;
  line-height:1.05!important;
  letter-spacing:.045em!important;
}
.portal-sidebar.collapsed .react-brand-logo-mark{
  width:48px!important;
  height:48px!important;
  padding:1px!important;
  border:3px solid #fff!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(1,25,50,.26)!important;
}
.portal-sidebar.collapsed .react-brand-logo-mark img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}
.sb-brand{
  min-height:96px!important;
  padding:7px 8px 6px!important;
}
.sb-brand>a{
  width:100%!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.sb-brand .sb-logo-full{
  display:block!important;
  width:100%!important;
}
.sb-brand .sb-logo-full img{
  display:block!important;
  width:214px!important;
  max-width:calc(100% - 4px)!important;
  height:66px!important;
  box-sizing:border-box!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:0!important;
  margin:0 auto!important;
  border:3px solid #fff!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 7px 18px rgba(0,24,62,.22)!important;
}

/* Folder workspace: the selected folder already occupies the full working area. */
.document-browser.is-folder-open{
  grid-template-columns:minmax(0,1fr)!important;
  gap:.66rem!important;
}
.document-browser.is-folder-open .document-content{
  width:100%!important;
  min-width:0!important;
}

/* File registers: no decorative file/PDF thumbnail is rendered in the name cell.
   Primary filename, size/uploader and row controls stay on one compact line. */
.document-list-card{
  min-width:0!important;
}
.document-list-card .table-scroll{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
}
.admin-document-register,
.folder-content-register,
.folder-register-table,
.shareholder-document-table{
  width:100%!important;
  table-layout:fixed!important;
}
.premium-data-table.admin-document-register thead th,
.premium-data-table.folder-content-register thead th,
.premium-data-table.folder-register-table thead th,
.premium-data-table.shareholder-document-table thead th,
.admin-document-register thead th,
.folder-content-register thead th,
.folder-register-table thead th,
.shareholder-document-table thead th{
  height:40px!important;
  padding:.52rem .62rem!important;
  font-size:.60rem!important;
  line-height:1.2!important;
  vertical-align:middle!important;
}
.premium-data-table.admin-document-register tbody td,
.premium-data-table.folder-content-register tbody td,
.premium-data-table.folder-register-table tbody td,
.premium-data-table.shareholder-document-table tbody td,
.admin-document-register tbody td,
.folder-content-register tbody td,
.folder-register-table tbody td,
.shareholder-document-table tbody td{
  height:auto!important;
  min-height:40px!important;
  padding:.42rem .62rem!important;
  font-size:.72rem!important;
  line-height:1.3!important;
  vertical-align:middle!important;
}
.document-name-cell-compact{
  white-space:nowrap!important;
  overflow:hidden!important;
}
.document-row-copy-compact{
  display:flex!important;
  align-items:baseline!important;
  gap:.36rem!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.document-row-copy-compact .document-name-link,
.document-row-copy-compact>strong{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:none!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:.74rem!important;
  line-height:1.25!important;
  font-weight:760!important;
}
.document-row-copy-compact>small{
  display:block!important;
  flex:0 1 auto!important;
  min-width:0!important;
  max-width:42%!important;
  margin:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#7c8d99!important;
  font-size:.60rem!important;
  line-height:1.15!important;
}
.document-inline-meta{
  font-size:inherit!important;
}
.document-meta-badge{
  min-height:24px!important;
  padding:.22rem .44rem!important;
  font-size:.60rem!important;
  line-height:1.05!important;
}

/* Folder register stays compact as well, while retaining the useful folder symbol. */
.folder-register-table .document-folder-table-link{
  gap:.34rem!important;
}
.folder-register-table .document-row-icon.folder{
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  flex-basis:26px!important;
  margin:0!important;
  border-radius:6px!important;
  font-size:.60rem!important;
  box-shadow:none!important;
}
.folder-register-table .folder-row-copy-compact{
  display:flex!important;
  align-items:baseline!important;
  gap:.34rem!important;
  width:calc(100% - 32px)!important;
  max-width:calc(100% - 32px)!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
.folder-register-table .folder-row-copy-compact strong{
  flex:1 1 auto!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:.73rem!important;
  line-height:1.24!important;
}
.folder-register-table .folder-row-copy-compact small{
  flex:0 0 auto!important;
  margin:0!important;
  font-size:.59rem!important;
  line-height:1.15!important;
}

/* Action controls: reserve enough real width so every icon is visible.
   This fixes the clipped first/last action seen in the document register. */
.premium-data-table.document-list-table thead th:last-child,
.premium-data-table.document-list-table tbody td:last-child,
.document-list-table th:last-child,
.document-list-table td:last-child{
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  text-align:right!important;
}
.document-row-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:4px!important;
  width:max-content!important;
  min-width:max-content!important;
  margin-left:auto!important;
  overflow:visible!important;
}
.document-row-actions form{
  display:inline-flex!important;
  flex:0 0 auto!important;
  margin:0!important;
}
.document-row-actions .document-icon-action{
  display:inline-grid!important;
  place-items:center!important;
  flex:0 0 28px!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  min-height:28px!important;
  padding:0!important;
  border-radius:8px!important;
  font-size:.64rem!important;
  line-height:1!important;
}
.admin-document-register:not(.is-shareholder-docs) th:first-child,
.admin-document-register:not(.is-shareholder-docs) td:first-child{width:34%!important}
.admin-document-register:not(.is-shareholder-docs) th:nth-child(2),
.admin-document-register:not(.is-shareholder-docs) td:nth-child(2),
.admin-document-register:not(.is-shareholder-docs) th:nth-child(3),
.admin-document-register:not(.is-shareholder-docs) td:nth-child(3),
.admin-document-register:not(.is-shareholder-docs) th:nth-child(4),
.admin-document-register:not(.is-shareholder-docs) td:nth-child(4),
.admin-document-register:not(.is-shareholder-docs) th:nth-child(5),
.admin-document-register:not(.is-shareholder-docs) td:nth-child(5){width:auto!important}
.admin-document-register:not(.is-shareholder-docs) th:last-child,
.admin-document-register:not(.is-shareholder-docs) td:last-child{width:132px!important;min-width:132px!important}

.admin-document-register.is-shareholder-docs th:first-child,
.admin-document-register.is-shareholder-docs td:first-child{width:42%!important}
.admin-document-register.is-shareholder-docs th:nth-child(2),
.admin-document-register.is-shareholder-docs td:nth-child(2),
.admin-document-register.is-shareholder-docs th:nth-child(3),
.admin-document-register.is-shareholder-docs td:nth-child(3),
.admin-document-register.is-shareholder-docs th:nth-child(4),
.admin-document-register.is-shareholder-docs td:nth-child(4){width:auto!important}
.admin-document-register.is-shareholder-docs th:last-child,
.admin-document-register.is-shareholder-docs td:last-child{width:154px!important;min-width:154px!important}

.folder-content-register th:first-child,.folder-content-register td:first-child{width:48%!important}
.folder-content-register th:nth-child(2),.folder-content-register td:nth-child(2),
.folder-content-register th:nth-child(3),.folder-content-register td:nth-child(3),
.folder-content-register th:nth-child(4),.folder-content-register td:nth-child(4){width:auto!important}
.folder-content-register th:last-child,.folder-content-register td:last-child{width:96px!important;min-width:96px!important}

.folder-register-table th:first-child,.folder-register-table td:first-child{width:30%!important}
.folder-register-table th:nth-child(2),.folder-register-table td:nth-child(2){width:auto!important}
.folder-register-table th:nth-child(3),.folder-register-table td:nth-child(3){width:64px!important}
.folder-register-table th:last-child,.folder-register-table td:last-child{width:96px!important;min-width:96px!important}

.shareholder-document-table th:first-child,.shareholder-document-table td:first-child{width:54%!important}
.shareholder-document-table th:nth-child(2),.shareholder-document-table td:nth-child(2),
.shareholder-document-table th:nth-child(3),.shareholder-document-table td:nth-child(3){width:auto!important}
.shareholder-document-table th:last-child,.shareholder-document-table td:last-child{width:80px!important;min-width:80px!important}

/* Desktop/tablet widths above the record-card breakpoint keep a stable minimum
   register width; below 920px the existing labelled mobile-card system takes over. */
@media(min-width:921px) and (max-width:1120px){
  .admin-document-register:not(.is-shareholder-docs){min-width:790px!important}
  .admin-document-register.is-shareholder-docs{min-width:760px!important}
  .folder-content-register{min-width:720px!important}
  .folder-register-table{min-width:680px!important}
}
@media(max-width:920px){
  .portal-sidebar:not(.collapsed) .react-sb-brand-minimal{
    min-height:96px!important;
    padding:7px 8px 6px!important;
  }
  .portal-sidebar:not(.collapsed) .react-sb-brand-minimal .react-brand-logo-full{
    width:206px!important;
    max-width:calc(100% - 4px)!important;
    height:64px!important;
  }

  /* Once converted to labelled mobile cards, remove desktop fixed widths/heights. */
  .premium-mobile-cards.document-list-table{
    min-width:0!important;
    table-layout:auto!important;
  }
  .premium-mobile-cards.document-list-table tbody td{
    width:100%!important;
    height:auto!important;
    min-height:36px!important;
    overflow:visible!important;
  }
  .premium-mobile-cards .document-row-copy-compact{
    display:block!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .premium-mobile-cards .document-row-copy-compact .document-name-link,
  .premium-mobile-cards .document-row-copy-compact>strong{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .premium-mobile-cards .document-row-copy-compact>small{
    max-width:100%!important;
    margin-top:2px!important;
    white-space:normal!important;
  }
  .premium-mobile-cards .document-row-actions{
    width:auto!important;
    min-width:0!important;
    margin-left:0!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
  }
}


/* Shared modal lifecycle: consistent focus/scroll behavior across all portal roles. */
body.portal-modal-open{overflow:hidden!important}
[data-portal-modal].app-modal-active{overscroll-behavior:contain}
[data-portal-modal]>.portal-modal-dialog,[data-portal-modal]>.portal-modal-card{max-width:min(96vw,760px);max-height:92vh;overflow:auto}
@media(max-width:700px){[data-portal-modal]{padding:.5rem!important}[data-portal-modal]>.portal-modal-dialog,[data-portal-modal]>.portal-modal-card{width:min(100%,calc(100vw - 1rem))!important;max-width:calc(100vw - 1rem)!important;max-height:94vh!important;border-radius:15px!important}.portal-modal-actions{display:grid!important;grid-template-columns:1fr!important}.portal-modal-actions>*{width:100%!important;justify-content:center!important}}

/* v1.0.1 mobile workflow refinement: phone pages should scroll vertically, not
   horizontally. Desktop and tablet layouts above the existing 920px breakpoint
   remain unchanged. */
@media(max-width:920px){
  html,body,.portal-app,.portal-main,.main-wrap,.content-wrap{max-width:100%!important;overflow-x:hidden!important}
  .portal-main .table-responsive,.portal-main .table-wrap,.portal-main .data-table-wrap,.portal-main .document-list-card,.portal-main .table-shell,.portal-main .table-scroll{max-width:100%!important;overflow-x:visible!important}
  .shareholder-change-entry-grid,.shareholder-change-entry-grid.is-wide{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .shareholder-change-entry-grid>.card,.change-request-review-grid,.change-request-fields,.form-grid{min-width:0!important;max-width:100%!important}
  .portal-main form,.portal-main fieldset,.portal-main .card{max-width:100%!important;min-width:0!important}
  .portal-main input:not([type="checkbox"]):not([type="radio"]),.portal-main select,.portal-main textarea{max-width:100%!important}
  .premium-mobile-cards{max-width:100%!important;overflow:visible!important}
  .premium-mobile-cards tbody td{overflow-wrap:anywhere!important;word-break:normal!important}
  .premium-mobile-cards tbody td .form-input,.premium-mobile-cards tbody td input:not([type="checkbox"]):not([type="radio"]),.premium-mobile-cards tbody td select,.premium-mobile-cards tbody td textarea{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
  .premium-mobile-cards tbody td .table-row-actions,.premium-mobile-cards tbody td .document-row-actions{max-width:100%!important}
}
@media(max-width:640px){
  .premium-mobile-cards tbody td{grid-template-columns:minmax(0,1fr)!important;gap:4px!important}
  .premium-mobile-cards tbody td::before{padding:0!important}
  .shareholder-change-entry-grid .card{padding:1rem!important}
  .shareholder-change-entry-grid [style*="grid-template-columns:1fr 1fr"],.shareholder-change-entry-grid [style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:minmax(0,1fr)!important}
  .shareholder-change-entry-grid [style*="grid-column:span 2"],.shareholder-change-entry-grid [style*="grid-column: span 2"]{grid-column:auto!important}
}


/* v1.0.1 responsive-width + change-request register refinement */
.portal-main{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:clamp(12px,1.35vw,30px)!important;
  padding-right:clamp(12px,1.35vw,30px)!important;
}
.portal-main>*{
  max-width:none!important;
}
.change-request-register-card{
  overflow:hidden!important;
}
.change-request-register-card .table-responsive{
  width:100%!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
}
.change-request-register-table{
  width:100%!important;
  min-width:1040px!important;
  table-layout:auto!important;
}
.change-request-register-table th:nth-child(1),
.change-request-register-table td:nth-child(1){width:150px!important;min-width:135px!important}
.change-request-register-table th:nth-child(2),
.change-request-register-table td:nth-child(2){min-width:190px!important}
.change-request-register-table th:nth-child(3),
.change-request-register-table td:nth-child(3){min-width:160px!important}
.change-request-register-table th:nth-child(4),
.change-request-register-table td:nth-child(4){width:105px!important;min-width:95px!important}
.change-request-register-table th:nth-child(5),
.change-request-register-table td:nth-child(5){width:145px!important;min-width:130px!important}
.change-request-register-table th:nth-child(6),
.change-request-register-table td:nth-child(6){min-width:160px!important}
.change-request-register-table .change-request-action-heading,
.change-request-register-table .change-request-action-cell{
  width:84px!important;
  min-width:84px!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.change-request-register-table .change-request-action-cell .icon-action{
  margin-inline:auto!important;
}
.change-request-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.change-request-panel{
  min-width:0!important;
}
.tone-card-red{--metric-color:#a34b43!important}
.tone-card-red .metric-icon{color:#a34b43!important;background:#fbeeed!important}
.portfolio-basis-note{
  display:flex;
  align-items:flex-start;
  gap:.6rem;
  margin:-.15rem 0 .9rem;
  padding:.68rem .78rem;
  border:1px solid #dbe7ee;
  border-radius:11px;
  color:#5f7381;
  background:linear-gradient(135deg,rgba(244,249,252,.96),rgba(250,252,253,.9));
  font-size:.7rem;
  line-height:1.5;
}
.portfolio-basis-note i{margin-top:.12rem;color:#2e7a9d}
.portfolio-basis-note strong{color:#284e68}

@media(max-width:1180px){
  .change-request-register-table{min-width:960px!important}
}
@media(max-width:920px){
  .change-request-grid{grid-template-columns:minmax(0,1fr)!important}
  .change-request-register-card .table-responsive{overflow-x:visible!important}
  .change-request-register-table{min-width:0!important}
}
