/* FINNEX 9700000 · Shared enterprise visual layer · strictly scoped. */
:root{--fx97-bg:#f4f7fb;--fx97-paper:#fff;--fx97-ink:#182c45;--fx97-muted:#60738a;--fx97-line:#e1e8f0;--fx97-primary:#205ba4;--fx97-soft:#edf4fd;--fx97-shadow:0 8px 28px rgba(19,43,77,.055);--fx97-r:17px}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap){font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--fx97-ink);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(h1,h2,h3,h4){color:var(--fx97-ink);letter-spacing:-.025em;line-height:1.25;overflow-wrap:anywhere}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(h1){font-size:clamp(25px,2.6vw,35px);font-weight:750}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(h2){font-size:clamp(20px,2vw,27px);font-weight:730}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(h3){font-size:clamp(16px,1.5vw,20px);font-weight:690}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(input,select,textarea,button){font:inherit;box-sizing:border-box}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%;border:1px solid #cad7e5;border-radius:10px;background:#fff;color:#1b2d43;min-height:39px;padding:8px 11px;box-shadow:none}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) textarea{min-height:94px}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(button,.button,.fn960-button){border-radius:10px;min-height:38px;transition:background-color .16s,border-color .16s,box-shadow .16s}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(button,a,input,select,textarea):focus-visible{outline:3px solid #6ba5f1!important;outline-offset:2px}
:is(.fnxf-app,.fnxf-role960,.fnxf615,.fnxf-white-label-root,.fnxf-design970-admin .wrap) :is(.fnxf-notice,.notice,[role=alert]){border-radius:12px;line-height:1.6}
/* FINNEX workspace: clean left navigation and breathing room for complex operational forms. */
.fnxf-app{background:var(--fx97-bg)!important;border:1px solid var(--fx97-line)!important;border-radius:20px!important;overflow:clip;box-shadow:var(--fx97-shadow)!important}
.fnxf-app .fnxf-sidebar{background:linear-gradient(180deg,#132841 0%,#1b3553 100%)!important}
.fnxf-app .fnxf-nav{gap:3px!important}
.fnxf-app .fnxf-nav a{border-radius:10px!important;font-weight:550!important;letter-spacing:0!important}
.fnxf-app .fnxf-nav a.fnxf-active,.fnxf-app .fnxf-nav a[aria-current=page]{background:#ffffff20!important;color:#fff!important;box-shadow:inset 3px 0 0 #8fbcfa!important}
.fnxf-app .fnxf-main{min-width:0!important;background:var(--fx97-bg)!important}
.fnxf-app .fnxf-topbar{background:#fff!important;border-bottom:1px solid var(--fx97-line)!important}
.fnxf-app .fnxf-panel{min-width:0!important;max-width:1520px!important;margin-inline:auto!important}
.fnxf-app .fnxf-panel>:first-child{margin-top:0}
.fnxf-app :is(.fnxf-stats article,.fnxf-command-cards article,.fnxf-overview-grid article,.fnxf-intake-overview,.fnxf-intake-form,.fnxf-command-grid>div){background:#fff!important;border:1px solid var(--fx97-line)!important;border-radius:var(--fx97-r)!important;box-shadow:var(--fx97-shadow)!important;min-width:0}
.fnxf-app :is(.fnxf-stats,.fnxf-command-cards,.fnxf-overview-grid){gap:16px!important}
.fnxf-app .fnxf-panel :is(table){width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--fx97-line);border-radius:12px;overflow:hidden}
.fnxf-app .fnxf-panel :is(th,td){padding:12px 14px;border-bottom:1px solid #e9eef5;text-align:left;vertical-align:top}
.fnxf-app .fnxf-panel th{background:#f1f5fa;font-size:12px;color:#3c526c;font-weight:700}
.fnxf-app .fnxf-panel tr:last-child td{border-bottom:0}
.fnxf-app .fnxf-panel :is(form,fieldset){min-width:0}
.fnxf-app .fnxf-panel fieldset{border-color:var(--fx97-line);border-radius:12px}
.fnxf-app .fnxf-panel :is(label){font-weight:560}
.fnxf-app .fnxf-panel :is(.fnxf-eyebrow,small){color:var(--fx97-muted)}
/* Role dashboards: all SaaS/White Label users receive same components, not hard-coded sample KPIs. */
.fnxf-role960{max-width:1500px!important}
.fnxf-role960 .fn960-header{background:linear-gradient(120deg,#fff 0%,#f7faff 100%);border:1px solid var(--fx97-line);border-radius:21px;box-shadow:var(--fx97-shadow)}
.fnxf-role960 .fn960-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.fnxf-role960 .fn960-tile{border-radius:16px;min-height:145px;border:1px solid var(--fx97-line);box-shadow:var(--fx97-shadow);transition:transform .16s,box-shadow .16s}
.fnxf-role960 .fn960-tile:hover{transform:translateY(-2px);box-shadow:0 12px 35px rgba(19,43,77,.085)}
.fnxf-role960 .fn960-tile-head{align-items:center;line-height:1.4}
.fnxf-role960 .fn960-icon{width:42px;height:42px;border-radius:12px;background:#e9f1fc}
.fnxf-role960 .fn960-reports{border:1px solid var(--fx97-line);border-radius:17px;box-shadow:var(--fx97-shadow)}
/* Legacy six-dashboard, FINNEX admin and embedded enterprise pages. */
.fnxf615.fnxf692-workspace{background:var(--fx97-bg)!important;border-radius:20px;padding:clamp(12px,1.5vw,22px)!important}
.fnxf615.fnxf692-workspace .fnxf615-nav{border-radius:18px!important;box-shadow:var(--fx97-shadow)!important}
.fnxf615.fnxf692-workspace .fnxf615-panel{background:#fff;border:1px solid var(--fx97-line);box-shadow:var(--fx97-shadow);border-radius:18px!important}
.fnxf615.fnxf692-workspace .fnxf200-quick-card{border-radius:15px!important;border:1px solid var(--fx97-line)!important;box-shadow:var(--fx97-shadow)!important}
body.fnxf-design970-admin #wpbody-content>.wrap,body.fnxf-design970-admin #wpbody-content>.fnxf-role960{max-width:1540px;box-sizing:border-box;margin:18px 24px 36px}
body.fnxf-design970-admin #wpbody-content>.wrap>h1:first-child{margin:0 0 22px;padding:0;font-weight:750}
body.fnxf-design970-admin #wpbody-content>.wrap :is(.card,.postbox){border:1px solid var(--fx97-line);border-radius:15px;box-shadow:var(--fx97-shadow);background:#fff;max-width:none}
body.fnxf-design970-admin #wpbody-content>.wrap :is(.widefat,.wp-list-table){border:1px solid var(--fx97-line);border-radius:12px;background:#fff}
body.fnxf-design970-admin #wpbody-content>.wrap :is(.widefat th,.wp-list-table th){background:#f2f6fb;color:#36506e;font-weight:700}
body.fnxf-design970-admin #wpbody-content>.wrap :is(.widefat td,.widefat th,.wp-list-table td,.wp-list-table th){padding:11px 12px}
body.fnxf-design970-admin #wpbody-content>.wrap :is(.button-primary){background:#205ba4;border-color:#205ba4;color:#fff}
body.fnxf-design970-admin #wpbody-content>.wrap :is(.notice){border-radius:10px}
body.fnxf-standalone-page .fnxf-white-label-root{background:var(--fx97-bg);min-height:100vh}
body.fnxf-standalone-page .fnxf-app{border:0!important;border-radius:0!important;min-height:100vh}
/* Device constraints and print clarity */
@media(max-width:1100px){.fnxf-role960 .fn960-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.fnxf-app .fnxf-panel{padding:22px!important}}
@media(max-width:750px){.fnxf-app{border-radius:12px!important}.fnxf-app .fnxf-panel{padding:16px!important}.fnxf-app .fnxf-topbar{padding:12px 16px!important}.fnxf-role960 .fn960-header{padding:18px}.fnxf-role960 .fn960-grid{grid-template-columns:1fr}.fnxf615.fnxf692-workspace{padding:10px!important}body.fnxf-design970-admin #wpbody-content>.wrap{margin:12px 10px}}
@media print{.fnxf-app .fnxf-sidebar,.fnxf-app .fnxf-topbar,.fnxf-role960 .fn960-switch{display:none!important}.fnxf-app{display:block!important;border:0!important;box-shadow:none!important}.fnxf-app .fnxf-main,.fnxf-app .fnxf-panel{padding:0!important;background:#fff!important}.fnxf-role960 .fn960-tile{break-inside:avoid;box-shadow:none}.fnxf-app :is(article,table),.fnxf-role960 :is(section,table){break-inside:avoid}}
@media(prefers-reduced-motion:reduce){.fnxf-role960 .fn960-tile{transition:none!important;transform:none!important}}
