/* EraNorth Phase 12.1 — Premium Workspace UI Refinement v21.2
   Brand direction: midnight/navy, EraNorth electric blue, cool silver, compact executive software UI. */
:root{
  --en-p121-blue:#0b67e8;
  --en-p121-blue-bright:#1d78ff;
  --en-p121-blue-soft:#5ea0ff;
  --en-p121-silver:#d7dde6;
  --en-p121-app-sidebar:240px;
  --en-p121-app-rail:60px;
  --en-p121-context:300px;
  --en-p121-header:58px;
  --en-p121-control:38px;
  --en-p121-radius:10px;
}
html[data-theme="dark"]{
  --en-bg-page:#050d18;
  --en-bg-surface:#0b1624;
  --en-bg-elevated:#0f1c2b;
  --en-bg-subtle:#152438;
  --en-bg-inverse:#020812;
  --en-text-primary:#f2f5f9;
  --en-text-secondary:#c5cfdb;
  --en-text-muted:#96a6b8;
  --en-text-inverse:#f7f9fc;
  --en-border-default:#263a50;
  --en-border-strong:#40566e;
  --en-action-primary:#1878ff;
  --en-action-primary-hover:#3c8cff;
  --en-action-primary-text:#ffffff;
  --en-action-soft:#122b4c;
  --en-info:#79afff;
  --en-info-bg:#102742;
  --en-focus:#76adff;
  --en-shadow-sm:0 1px 1px rgba(0,0,0,.35),0 5px 16px rgba(0,0,0,.18);
  --en-shadow-md:0 16px 38px rgba(0,0,0,.34);
  --en-shadow-lg:0 28px 80px rgba(0,0,0,.52);
}
html[data-theme="light"]{
  --en-bg-page:#f4f6f9;
  --en-bg-surface:#ffffff;
  --en-bg-elevated:#f8fafc;
  --en-bg-subtle:#edf2f7;
  --en-text-primary:#0d1b2a;
  --en-text-secondary:#405165;
  --en-text-muted:#66778a;
  --en-border-default:#d7e0e9;
  --en-border-strong:#bdc9d5;
  --en-action-primary:#0b57b7;
  --en-action-primary-hover:#08478f;
  --en-action-soft:#e8f1fd;
}
body{font-family:var(--en-font-sans)!important;font-size:14px;line-height:1.5}

/* Brand visibility and public dark mode */
html[data-theme="dark"] .header{background:rgba(5,13,24,.94)!important}
html[data-theme="dark"] .header .brand img,
html[data-theme="dark"] .footer-logo{filter:brightness(1.9) saturate(1.15) drop-shadow(0 0 8px rgba(35,119,255,.18))}
html[data-theme="dark"] .header .navlinks a{color:#e9eef5!important}
html[data-theme="dark"] .header .navlinks a:hover,
html[data-theme="dark"] .header .navlinks a.active{color:#68a7ff!important}
html[data-theme="dark"] .section:not(.ink):not(.cta) p,
html[data-theme="dark"] .service-row p,
html[data-theme="dark"] .client-question{color:var(--en-text-secondary)!important}
html[data-theme="dark"] .eyebrow{color:#69a8ff!important}

/* Compact AI shell inspired by leading AI workspaces, while preserving EraNorth identity */
.en-ai-panel.en-ai-maximized.en-ws-ready{
  left:10px!important;right:10px!important;top:10px!important;bottom:10px!important;
  border-radius:18px!important;
  grid-template-columns:var(--en-p121-app-sidebar) minmax(0,1fr) var(--en-p121-context)!important;
  grid-template-rows:var(--en-p121-header) minmax(0,1fr)!important;
  box-shadow:0 24px 70px rgba(2,12,24,.18)!important;
  border-color:var(--en-border-default)!important;
}
.en-ai-panel.en-ws-ready>.en-ai-head{
  min-height:var(--en-p121-header)!important;height:var(--en-p121-header)!important;
  padding:8px 170px 8px 14px!important;
  background:var(--en-bg-surface)!important;border-color:var(--en-border-default)!important;
}
.en-ai-panel .en-ai-brand{gap:9px!important;min-width:0}
.en-ai-panel .en-ai-brand img{width:32px!important;height:32px!important;object-fit:contain;filter:none!important}
.en-ai-panel .en-ai-name{font:800 12.5px/1.15 var(--en-font-sans)!important;letter-spacing:.02em!important;color:var(--en-text-primary)!important}
.en-ai-panel .en-ai-sub{font:500 10.5px/1.25 var(--en-font-sans)!important;color:var(--en-text-muted)!important;margin-top:2px}
.en-ai-panel.en-ws-ready .en-ai-window-controls{gap:5px!important}
.en-ai-panel.en-ws-ready .en-ai-window-btn{width:34px!important;height:34px!important;min-width:34px!important;border-radius:50%!important;background:var(--en-bg-elevated)!important;color:var(--en-text-primary)!important;border:1px solid var(--en-border-default)!important}
.en-ai-panel.en-ws-ready .en-ai-window-btn:hover{background:var(--en-bg-subtle)!important;border-color:var(--en-border-strong)!important}
.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-body{padding:16px 18px 10px!important;background:var(--en-bg-page)!important}
.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-chips{padding:9px 16px 7px!important;background:var(--en-bg-elevated)!important;border-color:var(--en-border-default)!important}
.en-ai-panel .en-ai-chip{font-size:12px!important;min-height:32px!important;padding:6px 11px!important;border-radius:9px!important}
.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-form{padding:10px 16px 12px!important;background:var(--en-bg-surface)!important}
.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-input{min-height:50px!important;max-height:180px!important;border-radius:12px!important;padding:13px 15px!important;font-size:14px!important;background:var(--en-bg-surface)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-strong)!important}
.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-send{width:50px!important;height:50px!important;border-radius:12px!important;font-size:18px!important;background:var(--en-action-primary)!important;color:#fff!important}
.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-note{padding:0 16px 12px!important;font-size:10.5px!important;color:var(--en-text-muted)!important;background:var(--en-bg-surface)!important}
.en-ai-panel .en-ai-msg{max-width:min(820px,92%)!important;font-size:14px!important;line-height:1.65!important}

/* Workspace sidebar */
.en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-left{width:auto!important;min-width:0!important;min-height:0!important;position:relative!important;left:auto!important;top:auto!important;bottom:auto!important;transform:none!important;border-radius:0!important;box-shadow:none!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;scrollbar-width:thin;scrollbar-gutter:stable;background:var(--en-bg-elevated)!important}
.en-ws-left{display:flex!important;flex-direction:column!important;border-color:var(--en-border-default)!important}
.en-ws-side-head{padding:13px 14px 7px!important;font:800 10.5px/1.2 var(--en-font-sans)!important;letter-spacing:.11em!important;color:var(--en-text-muted)!important}
.en-ws-left .en-ws-new{min-height:38px!important;margin:7px 10px 9px!important;padding:8px 11px!important;border-radius:9px!important;font:750 13px/1 var(--en-font-sans)!important;background:var(--en-action-soft)!important;color:var(--en-text-primary)!important;border:1px solid color-mix(in srgb,var(--en-action-primary) 35%,var(--en-border-default))!important}
.en-ws-left .en-ws-new:hover{background:color-mix(in srgb,var(--en-action-primary) 18%,var(--en-bg-elevated))!important}
.en-ws-nav{display:grid!important;gap:2px!important;padding:0 8px 8px!important;flex:0 0 auto!important}
.en-ws-nav button,.en-ws-nav .en-ws-nav-item{
  display:flex!important;align-items:center!important;gap:10px!important;width:100%;min-height:38px!important;
  padding:8px 10px!important;border-radius:8px!important;border:0!important;background:transparent!important;
  color:var(--en-text-secondary)!important;font:650 13px/1.2 var(--en-font-sans)!important;text-decoration:none!important;text-align:left!important;cursor:pointer;
}
.en-ws-nav button:hover,.en-ws-nav .en-ws-nav-item:hover{background:var(--en-bg-subtle)!important;color:var(--en-text-primary)!important}
.en-ws-nav button.active,.en-ws-nav .en-ws-nav-item[aria-current="page"]{background:color-mix(in srgb,var(--en-action-primary) 14%,var(--en-bg-elevated))!important;color:var(--en-text-primary)!important}
.en-p121-nav-icon,.en-p4-nav-icon{width:18px!important;height:18px!important;min-width:18px!important;display:grid!important;place-items:center!important;color:var(--en-text-muted)!important;font-size:0!important}
.en-p121-nav-icon svg,.en-p4-nav-icon svg{display:block;width:17px;height:17px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.en-ws-nav button:hover .en-p121-nav-icon,.en-ws-nav .en-ws-nav-item:hover .en-p121-nav-icon,.en-ws-nav button.active .en-p121-nav-icon{color:var(--en-action-primary)!important}
.en-p121-nav-group{margin:8px 10px 4px;padding-top:9px;border-top:1px solid var(--en-border-default);font:800 9.5px/1 var(--en-font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--en-text-muted)}
.en-ws-list{padding:0 8px 10px!important;min-height:0!important;overflow:visible!important;flex:0 0 auto!important}
.en-ws-item,.en-ws-folder-child{padding:8px 9px!important;border-radius:8px!important;font-size:12px!important;color:var(--en-text-secondary)!important}
.en-ws-account{margin-top:auto!important;padding:9px 10px!important;border-color:var(--en-border-default)!important;background:var(--en-bg-elevated)!important;position:relative;z-index:2}
.en-ws-account-name{font-size:12.5px!important}.en-ws-plan{font-size:10.5px!important}.en-ws-avatar{width:30px!important;height:30px!important}
/* Phase 12.1.5 — one independent vertical scroller for the entire AI workspace navigation. */
.en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-left::-webkit-scrollbar{width:8px}
.en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-left::-webkit-scrollbar-track{background:transparent}
.en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-left::-webkit-scrollbar-thumb{background:#c4ced9;border:2px solid transparent;border-radius:999px;background-clip:padding-box}
.en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-left::-webkit-scrollbar-thumb:hover{background:#9facbb;background-clip:padding-box}

.en-p4-sidebar-toggle{min-height:34px!important;margin:3px 8px 8px!important;padding:6px 8px!important;border-radius:8px!important;background:transparent!important;color:var(--en-text-muted)!important;border:1px solid transparent!important;font:650 11px/1 var(--en-font-sans)!important;text-align:left!important}
.en-p4-sidebar-toggle:hover{background:var(--en-bg-subtle)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-default)!important}

/* Deliberate collapsed icon rail */
@media(min-width:1201px){
  .en-ai-panel.en-ai-maximized.en-ws-ready:has(.en-ws-left.en-p4-collapsed){grid-template-columns:var(--en-p121-app-rail) minmax(0,1fr) var(--en-p121-context)!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed{width:var(--en-p121-app-rail)!important;min-width:var(--en-p121-app-rail)!important;max-width:var(--en-p121-app-rail)!important;overflow:visible!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-side-head,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-new,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-list,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p121-nav-group,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-account-card>div:not(.en-ws-avatar),
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p4-account-links{display:none!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav{padding:8px 7px!important;gap:4px!important;justify-items:center!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav button,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav .en-ws-nav-item{position:relative!important;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;justify-content:center!important;border-radius:10px!important;overflow:visible!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav button>span:not(.en-p121-nav-icon):not(.en-p4-nav-icon),
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav .en-ws-nav-item>span:not(.en-p121-nav-icon){display:none!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav button::after,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav .en-ws-nav-item::after{
    content:attr(aria-label);position:absolute;left:52px;top:50%;transform:translateY(-50%) translateX(-4px);z-index:999999;
    opacity:0;pointer-events:none;white-space:nowrap;padding:7px 9px;border-radius:7px;background:var(--en-bg-inverse);color:var(--en-text-inverse);
    border:1px solid var(--en-border-default);box-shadow:var(--en-shadow-md);font:650 11.5px/1 var(--en-font-sans);transition:opacity .12s,transform .12s;
  }
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav button:hover::after,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav button:focus-visible::after,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav .en-ws-nav-item:hover::after,
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-nav .en-ws-nav-item:focus-visible::after{opacity:1;transform:translateY(-50%) translateX(0)}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p4-sidebar-toggle{width:44px!important;height:38px!important;margin:auto 8px 7px!important;padding:0!important;text-align:center!important;font-size:0!important;display:grid!important;place-items:center!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p4-sidebar-toggle::before{content:"›";font:700 22px/1 var(--en-font-sans)}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-account{padding:8px!important;display:grid;place-items:center;border-top:1px solid var(--en-border-default)!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-account-card{justify-content:center!important}.en-ai-panel .en-ws-left.en-p4-collapsed .en-ws-avatar{width:34px!important;height:34px!important}
}

/* Center / context */
.en-ws-center{background:var(--en-bg-page)!important}.en-ws-right{background:var(--en-bg-elevated)!important;border-color:var(--en-border-default)!important}
.en-ws-analysis{gap:5px!important;padding:8px 14px!important;background:var(--en-bg-elevated)!important}
.en-ws-analysis button{min-height:32px!important;padding:5px 10px!important;border-radius:9px!important;font:700 11.5px/1 var(--en-font-sans)!important}
.en-ws-analysis button.active{background:var(--en-action-primary)!important;color:#fff!important}
.en-ws-savebar{padding:5px 14px 8px!important;gap:6px!important;background:var(--en-bg-elevated)!important}
.en-ws-savebar button{min-height:30px!important;padding:5px 9px!important;border-radius:8px!important;font-size:10.5px!important}
.en-ws-context-card,.en-ws-info-card,.en-ws-empty-card{border-radius:10px!important;padding:12px!important;box-shadow:none!important}.en-ws-context-card strong{font-size:12px!important}.en-ws-context-card span{font-size:11px!important;color:var(--en-text-secondary)!important}

/* Module shells: same compact application language */
.p7-shell,.p8-shell,.p9-shell{font-family:var(--en-font-sans)!important;background:var(--en-bg-page)!important;color:var(--en-text-primary)!important;grid-template-columns:228px minmax(0,1fr)!important;min-height:calc(100vh - 64px)!important}
.p7-sidebar,.p8-sidebar,.p9-sidebar{padding:18px 14px!important;background:var(--en-bg-elevated)!important;border-color:var(--en-border-default)!important;height:calc(100vh - 64px)!important;top:64px!important;overflow:auto}
.p7-back,.p8-back,.p9-back{font-size:11.5px!important;color:var(--en-text-muted)!important;margin-bottom:16px!important;text-decoration:none!important}
.p7-brand,.p8-brand,.p9-brand{gap:9px!important;margin-bottom:18px!important;padding:4px 2px!important}.p7-brand strong,.p8-brand strong,.p9-brand strong{font-size:13px!important}.p7-brand small,.p8-brand small,.p9-brand small{font-size:10.5px!important;color:var(--en-text-muted)!important}
.p7-mark,.p8-brand>span,.p9-brand>span{width:32px!important;height:32px!important;border-radius:9px!important;background:var(--en-action-soft)!important;color:var(--en-action-primary)!important;border:1px solid color-mix(in srgb,var(--en-action-primary) 28%,var(--en-border-default))!important}
.p7-nav,.p8-nav,.p9-sidebar nav{gap:2px!important}.p7-nav button,.p8-nav button,.p9-sidebar nav button{min-height:38px!important;padding:8px 10px!important;border-radius:8px!important;font:650 12.5px/1.2 var(--en-font-sans)!important;color:var(--en-text-secondary)!important}
.p7-nav button:hover,.p7-nav button.active,.p8-nav button:hover,.p8-nav button.active,.p9-sidebar nav button:hover,.p9-sidebar nav button.active{background:var(--en-bg-subtle)!important;color:var(--en-text-primary)!important}
.p7-side-note,.p8-note,.p9-trust{padding:11px!important;border-radius:10px!important;background:var(--en-bg-surface)!important;border:1px solid var(--en-border-default)!important;font-size:11px!important;color:var(--en-text-secondary)!important}.p7-side-note p,.p8-note p,.p9-trust p{font-size:10.5px!important;color:var(--en-text-muted)!important}
.p7-main,.p8-main,.p9-main{padding:24px 28px!important;max-width:1500px!important;margin:0 auto!important;width:100%!important}
.p7-topbar,.p8-top,.p9-top{align-items:flex-start!important;margin-bottom:18px!important;gap:18px!important}
.p7-topbar h1,.p8-top h1,.p9-top h1{font:780 clamp(23px,2.2vw,28px)/1.12 var(--en-font-sans)!important;letter-spacing:-.025em!important;margin:4px 0 6px!important;max-width:850px!important}
.p7-topbar p,.p8-top p,.p9-top p{font-size:13px!important;line-height:1.55!important;color:var(--en-text-secondary)!important;margin:0!important;max-width:760px!important}
.p7-topbar .eyebrow,.p8-top .eyebrow,.p9-top .eyebrow{font-size:10px!important;letter-spacing:.13em!important;color:var(--en-action-primary)!important}
.p7-primary,.p7-secondary,.p8-primary,.p8-secondary,.p9-primary,.p9-secondary{min-height:38px!important;padding:8px 12px!important;border-radius:9px!important;font:700 12.5px/1 var(--en-font-sans)!important}
.p7-dashboard{grid-template-columns:repeat(4,minmax(110px,1fr))!important;gap:8px!important;margin:18px 0!important}.p7-stat{padding:12px 14px!important;border-radius:10px!important;box-shadow:none!important}.p7-stat strong{font-size:21px!important}.p7-stat span{font-size:9.5px!important;letter-spacing:.06em!important}
.p7-content{min-height:300px!important;border-radius:12px!important}.p7-section-head{padding:15px 17px!important}.p7-section-head h2{font-size:15px!important}.p7-empty,.p7-loading{padding:42px 20px!important;font-size:12px!important}
.p8-grid{gap:10px!important}.p8-card{padding:15px!important;border-radius:11px!important;box-shadow:none!important}.p8-card h3{font-size:14px!important}.p8-card p{font-size:12px!important;color:var(--en-text-secondary)!important}.p8-context-label{font-size:11px!important;margin-bottom:15px!important}
.p9-grid{grid-template-columns:repeat(3,minmax(230px,1fr))!important;gap:10px!important}.p9-card{padding:15px!important;border-radius:11px!important;box-shadow:none!important}.p9-card h3{font-size:14px!important}.p9-card p{font-size:12px!important;line-height:1.5!important}.p9-badge{font-size:10px!important;padding:4px 7px!important}.p9-meta{font-size:10.5px!important}.p9-actions{margin-top:11px!important}.p9-pro-banner{padding:11px 13px!important;border-radius:10px!important;margin-bottom:12px!important}.p9-pro-banner strong{font-size:12px!important}.p9-pro-banner span{font-size:11.5px!important}

/* Dark compatibility for legacy module hard-coded values */
html[data-theme="dark"] :is(.p7-shell,.p8-shell,.p9-shell) :is(input,select,textarea){background:var(--en-bg-surface)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-strong)!important}
html[data-theme="dark"] :is(.p7-shell,.p8-shell,.p9-shell) :is(.p7-card,.p7-content,.p8-card,.p8-modal-card,.p9-card,.p9-modal-card){background:var(--en-bg-surface)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-default)!important}
html[data-theme="dark"] .p8-alert{background:var(--en-warning-bg)!important;color:var(--en-warning)!important}
html[data-theme="dark"] .p8-primary,html[data-theme="dark"] .p8-tabs button.active{background:var(--en-action-primary)!important;color:#fff!important;border-color:var(--en-action-primary)!important}
html[data-theme="dark"] .p9-secondary,html[data-theme="dark"] .p7-secondary,html[data-theme="dark"] .p8-secondary{background:var(--en-bg-surface)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-default)!important}

/* General application controls */
:where(.p7-shell,.p8-shell,.p9-shell,.en-ai-panel) button{transition:background .12s ease,border-color .12s ease,color .12s ease,transform .12s ease!important}
:where(.p7-shell,.p8-shell,.p9-shell,.en-ai-panel) button:active{transform:translateY(1px)}

/* Tablet: drawer-style workspace; compact horizontal module navigation */
@media(max-width:1200px){
  .en-ai-panel.en-ai-maximized.en-ws-ready{grid-template-columns:minmax(0,1fr) minmax(250px,290px)!important;grid-template-areas:'head head' 'center right'!important}
  .en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-left{position:fixed!important;left:10px!important;top:68px!important;bottom:10px!important;width:min(88vw,300px)!important;z-index:99998!important;border:1px solid var(--en-border-default)!important;border-radius:14px!important;box-shadow:var(--en-shadow-lg)!important;transform:translateX(calc(-100% - 24px))!important;transition:transform .18s ease!important;overflow:auto!important}
  .en-ai-panel.en-ai-maximized.en-ws-ready.en-ws-drawer-open>.en-ws-left{transform:translateX(0)!important}
  .p7-shell,.p8-shell,.p9-shell{grid-template-columns:210px minmax(0,1fr)!important}.p7-main,.p8-main,.p9-main{padding:22px!important}
}
@media(max-width:900px){
  .p7-shell,.p8-shell,.p9-shell{display:block!important}.p7-sidebar,.p8-sidebar,.p9-sidebar{position:static!important;height:auto!important;padding:12px 14px!important;border-right:0!important;border-bottom:1px solid var(--en-border-default)!important;overflow:hidden!important}
  .p7-brand,.p8-brand,.p9-brand,.p7-side-note,.p8-note,.p9-trust,.p8-context-label{display:none!important}
  .p7-back,.p8-back,.p9-back{display:inline-flex!important;margin:0 0 8px!important}.p7-nav,.p8-nav,.p9-sidebar nav{display:flex!important;overflow-x:auto!important;gap:4px!important;padding-bottom:3px!important;scrollbar-width:thin}.p7-nav button,.p8-nav button,.p9-sidebar nav button{flex:0 0 auto!important;white-space:nowrap!important}
  .p7-main,.p8-main,.p9-main{padding:18px 14px!important}.p7-topbar,.p8-top,.p9-top{display:flex!important;flex-direction:column!important}.p7-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))!important}.p8-grid,.p9-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Mobile: no miniature 3-column layout; drawer + conversation */
@media(max-width:760px){
  .en-ai-panel.en-ai-maximized.en-ws-ready{left:0!important;right:0!important;top:0!important;bottom:0!important;border-radius:0!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:54px minmax(0,1fr)!important;grid-template-areas:'head' 'center'!important}
  .en-ai-panel.en-ws-ready>.en-ai-head{height:54px!important;min-height:54px!important;padding:7px 154px 7px 10px!important}.en-ai-panel .en-ai-brand img{width:30px!important;height:30px!important}.en-ai-panel .en-ai-name{font-size:11.5px!important}.en-ai-panel .en-ai-sub{display:none!important}
  .en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-right{display:none!important}
  .en-ai-panel.en-ai-maximized.en-ws-ready>.en-ws-left{left:0!important;top:54px!important;bottom:0!important;width:min(88vw,300px)!important;border-radius:0 14px 0 0!important}
  .en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-body{padding:12px 10px 8px!important}.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-chips{padding:7px 10px!important;overflow-x:auto!important;white-space:nowrap!important}.en-ai-panel .en-ai-chip{flex:0 0 auto!important;font-size:11px!important;min-height:30px!important;padding:5px 9px!important}.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-form{padding:8px 10px 10px!important}.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-input{min-height:46px!important;font-size:14px!important}.en-ai-panel.en-ai-maximized.en-ws-ready .en-ai-send{width:46px!important;height:46px!important}.en-ws-analysis{padding:6px 10px!important}.en-ws-savebar{padding:4px 10px 7px!important}
  .p7-topbar h1,.p8-top h1,.p9-top h1{font-size:22px!important}.p7-main,.p8-main,.p9-main{padding:14px 10px!important}.p8-grid,.p9-grid{grid-template-columns:1fr!important}.p7-dashboard{grid-template-columns:repeat(2,1fr)!important}.p7-topbar>.p7-primary,.p8-top-actions,.p9-top>div:last-child{width:100%!important}.p7-topbar>.p7-primary{align-self:stretch!important}.p8-top-actions button{flex:1 1 auto!important}
}
@media(max-width:420px){
  .p7-dashboard{grid-template-columns:1fr 1fr!important}.p7-stat{padding:10px!important}.p7-stat strong{font-size:19px!important}.p9-card,.p8-card{padding:13px!important}
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){.en-ai-panel .en-ws-left,.en-ws-nav button,.en-ws-nav .en-ws-nav-item{transition:none!important}}
/* Keep global theme switcher from covering the compact workspace rail; Appearance remains in Settings. */
body:has(.en-ai-panel.en-ai-maximized.en-ws-ready:not([hidden]))>.en-theme-control{display:none!important}
.en-p121-account-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:7px}.en-p121-account-links a{font-size:10.5px!important;color:var(--en-text-secondary)!important;text-decoration:none!important;font-weight:650!important}.en-p121-account-links a:hover{color:var(--en-action-primary)!important}
@media(min-width:1201px){.en-ai-panel .en-ws-left.en-p4-collapsed .en-p121-account-links{display:none!important}}
/* Application pages keep the corporate header restrained rather than marketing-sized. */
body:has(.p7-shell,.p8-shell,.p9-shell) .header{min-height:64px!important}
body:has(.p7-shell,.p8-shell,.p9-shell) .header .nav{min-height:64px!important}
body:has(.p7-shell,.p8-shell,.p9-shell) .header .brand img{max-height:40px!important;width:auto!important}
body:has(.p7-shell,.p8-shell,.p9-shell) .header .navlinks a{font-size:12px!important}


/* Phase 12.1.1 hotfix — prevent mixed-theme admin login surfaces. */
html[data-theme="dark"] body:has(.login-card){background:var(--en-bg-page)!important;color:var(--en-text-primary)!important}
html[data-theme="dark"] .login-card{background:var(--en-bg-surface)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-default)!important;box-shadow:var(--en-shadow-md)!important}
html[data-theme="dark"] .login-card h1,
html[data-theme="dark"] .login-card .field label{color:var(--en-text-primary)!important}
html[data-theme="dark"] .login-card .muted{color:var(--en-text-secondary)!important}
html[data-theme="dark"] .login-card .field input,
html[data-theme="dark"] .login-card .field textarea,
html[data-theme="dark"] .login-card .field select{background:var(--en-bg-elevated)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-strong)!important;caret-color:var(--en-text-primary)!important}
html[data-theme="dark"] .login-card .field input::placeholder{color:var(--en-text-muted)!important}
html[data-theme="dark"] .login-card .btn{background:var(--en-action-primary)!important;color:var(--en-action-primary-text)!important;border-color:var(--en-action-primary)!important}
html[data-theme="dark"] .login-card .btn:hover{background:var(--en-action-primary-hover)!important}
html[data-theme="light"] .login-card{background:var(--en-bg-surface)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-default)!important}
html[data-theme="light"] .login-card h1,
html[data-theme="light"] .login-card .field label{color:var(--en-text-primary)!important}
html[data-theme="light"] .login-card .field input,
html[data-theme="light"] .login-card .field textarea,
html[data-theme="light"] .login-card .field select{background:var(--en-bg-surface)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-strong)!important}


/* Phase 12.1.2 — strict surface-aware theme contrast contract */
/* Legacy public CSS historically reused --ink for both foreground text and dark
   background fills. The Experience System makes --ink theme-aware, so every
   important surface is now assigned its own explicit background/foreground pair. */

/* Dark surfaces always carry light foregrounds in both theme preferences. */
:is(.section.ink,.ink,.cta-box,.footer,footer.footer){
  background:var(--en-bg-inverse)!important;
  color:var(--en-text-inverse)!important;
}
:is(.section.ink,.ink,.cta-box,.footer,footer.footer) :is(h1,h2,h3,h4,h5,h6,p,li,strong,span,label,.display,.h1,.h2,.h3,.lede,.muted,.small,.quote){
  color:inherit!important;
}
:is(.section.ink,.ink,.cta-box) .eyebrow{color:#78a9ff!important}
:is(.section.ink,.ink,.cta-box) .button:not(.dark){
  border-color:rgba(255,255,255,.72)!important;
  color:#f8fbff!important;
  background:transparent!important;
}
:is(.section.ink,.ink,.cta-box) .button:not(.dark):hover{
  background:#f8fbff!important;
  color:#0b1b2c!important;
  border-color:#f8fbff!important;
}

/* Light surfaces always carry dark foregrounds, even while the user's global
   preference is Dark. This is the fail-safe for intentionally light cards/panels. */
html[data-theme="dark"] :is(.en-light-surface,[data-surface="light"]){
  --en-surface-text:#0d1b2a;
  --en-surface-text-secondary:#405165;
  --en-surface-text-muted:#66778a;
  background:#f7f9fc!important;
  color:var(--en-surface-text)!important;
}
html[data-theme="dark"] :is(.en-light-surface,[data-surface="light"]) :is(h1,h2,h3,h4,h5,h6,strong,label,.display,.h1,.h2,.h3){color:var(--en-surface-text)!important}
html[data-theme="dark"] :is(.en-light-surface,[data-surface="light"]) :is(p,li,.lede,.muted,.small){color:var(--en-surface-text-secondary)!important}

/* EraNorth public sections follow the selected theme rather than retaining a
   light legacy background with dark-theme foreground tokens. */
html[data-theme="dark"] :is(.section.white,.white,.en-trust){
  background:var(--en-bg-surface)!important;
  color:var(--en-text-primary)!important;
}
html[data-theme="dark"] :is(.section.white,.white,.en-trust) :is(h1,h2,h3,h4,h5,h6,strong,label,.display,.h1,.h2,.h3){color:var(--en-text-primary)!important}
html[data-theme="dark"] :is(.section.white,.white,.en-trust) :is(p,li,.lede,.muted,.small,.client-question){color:var(--en-text-secondary)!important}
html[data-theme="dark"] :is(.section.white,.white) :is(.card,.founder-card,.callout){
  background:var(--en-bg-elevated)!important;
  color:var(--en-text-primary)!important;
  border-color:var(--en-border-default)!important;
}
html[data-theme="dark"] :is(.section.white,.white) :is(.card,.founder-card,.callout) :is(h1,h2,h3,h4,strong){color:var(--en-text-primary)!important}
html[data-theme="dark"] :is(.section.white,.white) :is(.card,.founder-card,.callout) :is(p,.lede,.muted,.small){color:var(--en-text-secondary)!important}

/* Public non-white sections use the theme page surface and matching text. */
html[data-theme="dark"] .section:not(.ink):not(.white){background:var(--en-bg-page)!important;color:var(--en-text-primary)!important}
html[data-theme="dark"] .section:not(.ink):not(.white) :is(h1,h2,h3,h4,strong,.display,.h1,.h2,.h3){color:var(--en-text-primary)!important}
html[data-theme="dark"] .section:not(.ink):not(.white) :is(p,li,.lede,.muted,.small,.client-question,.service-row p){color:var(--en-text-secondary)!important}

/* Explicit light-theme foregrounds for light application/public surfaces. */
html[data-theme="light"] :is(.section.white,.white,.en-trust,.card,.founder-card,.callout){color:#0d1b2a!important}
html[data-theme="light"] :is(.section.white,.white,.en-trust,.card,.founder-card,.callout) :is(h1,h2,h3,h4,h5,h6,strong,label,.display,.h1,.h2,.h3){color:#0d1b2a!important}
html[data-theme="light"] :is(.section.white,.white,.en-trust,.card,.founder-card,.callout) :is(p,li,.lede,.muted,.small,.client-question){color:#405165!important}

/* Footer already uses this visible identity treatment. Reuse the same white-card
   principle for the main logo whenever it sits on a dark header. */
/* REMOVED: the white identity plate behind the header logo.

   It existed because the old header emitted a single dark-ink wordmark that
   vanished on a dark header, so the logo was given a white card to sit on.
   That is no longer true: layout/nav.php emits BOTH artworks as
   .brand-art-light / .brand-art-dark and en.min.css swaps them on
   html[data-theme]. includes/header.php is only a shim forwarding to
   layout/head.php, so every page gets the pair.

   With a real dark-background wordmark shipping, the plate was a white slab
   on an otherwise dark header. The img rule below is kept: it only cancels
   legacy filters, which is still wanted. */
html[data-theme="dark"] :is(.header,.site-header,header.site-header) .brand img{
  filter:none!important;
  object-fit:contain!important;
}
/* Was background:rgba(5,13,24,.96) - 96% opaque, which defeated the frosted
   header on every compat page. Kept translucent and blurred so compat pages
   match the rebuilt ones; the colour still comes from this sheet because the
   older pages have no --glass-* tokens of their own. */
html[data-theme="dark"] :is(.header,.site-header,header.site-header){
  background:rgba(5,13,24,.58)!important;
  -webkit-backdrop-filter:saturate(180%) blur(16px)!important;
  backdrop-filter:saturate(180%) blur(16px)!important;
  color:#f2f5f9!important;
  border-color:rgba(255,255,255,.09)!important;
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  html[data-theme="dark"] :is(.header,.site-header,header.site-header){
    background:rgba(5,13,24,.96)!important;
  }
}
@media (prefers-reduced-transparency: reduce){
  html[data-theme="dark"] :is(.header,.site-header,header.site-header){
    background:rgba(5,13,24,.98)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}
html[data-theme="dark"] :is(.header,.site-header,header.site-header) :is(.navlinks a,nav a){color:#e9eef5!important}
html[data-theme="dark"] :is(.header,.site-header,header.site-header) :is(.navlinks a,nav a):hover,
html[data-theme="dark"] :is(.header,.site-header,header.site-header) :is(.navlinks a.active,nav a.active){color:#68a7ff!important}

/* Forms inherit their surface rather than using legacy hard-coded white/dark pairs. */
html[data-theme="dark"] :is(.form,.contact-form,.en-settings-card,.admin-panel,.admin-main) :is(input,textarea,select){
  background:var(--en-bg-surface)!important;
  color:var(--en-text-primary)!important;
  border-color:var(--en-border-strong)!important;
}
html[data-theme="dark"] :is(.form,.contact-form,.en-settings-card,.admin-panel,.admin-main) label{color:var(--en-text-primary)!important}
html[data-theme="light"] :is(.form,.contact-form,.en-settings-card,.admin-panel,.admin-main) :is(input,textarea,select){
  background:#ffffff!important;
  color:#0d1b2a!important;
  border-color:#bdc9d5!important;
}
html[data-theme="light"] :is(.form,.contact-form,.en-settings-card,.admin-panel,.admin-main) label{color:#0d1b2a!important}

/* Theme control must remain readable over both page schemes. */
html[data-theme="dark"] .en-theme-control{background:rgba(11,22,36,.96)!important;color:var(--en-text-primary)!important;border-color:var(--en-border-default)!important}
html[data-theme="light"] .en-theme-control{background:rgba(255,255,255,.96)!important;color:#0d1b2a!important;border-color:#d7e0e9!important}

@media(max-width:900px){
  html[data-theme="dark"] :is(.header,.site-header,header.site-header) .brand{padding:5px 9px!important;border-radius:10px!important}
  html[data-theme="dark"] :is(.header,.site-header,header.site-header) .navlinks{background:#0b1624!important;border-color:#263a50!important}
  html[data-theme="dark"] :is(.header,.site-header,header.site-header) .navlinks a{color:#edf3f8!important}
}

/* Phase 12.1.2 header CTA contrast: do not let legacy --en-ink turn the
   primary Contact action into a light button with light text in Dark mode. */
html[data-theme="dark"] :is(.header,.site-header,header.site-header) .button.dark{
  background:var(--en-action-primary)!important;
  color:#ffffff!important;
  border-color:var(--en-action-primary)!important;
}
html[data-theme="dark"] :is(.header,.site-header,header.site-header) .button.dark:hover{
  background:var(--en-action-primary-hover)!important;
  color:#ffffff!important;
  border-color:var(--en-action-primary-hover)!important;
}
html[data-theme="light"] :is(.header,.site-header,header.site-header) .button.dark{
  background:#0d1b2a!important;
  color:#ffffff!important;
  border-color:#0d1b2a!important;
}
html[data-theme="light"] :is(.header,.site-header,header.site-header) .button.dark:hover{
  background:#0b57b7!important;
  color:#ffffff!important;
  border-color:#0b57b7!important;
}


/* Phase 12.1.4 — stable Light-only interface */
:root,html,body{color-scheme:light!important}
html{--en-bg-page:#f4f6f8!important;--en-bg-surface:#ffffff!important;--en-bg-raised:#ffffff!important;--en-text-primary:#0b1b2c!important;--en-text-secondary:#40546a!important;--en-text-muted:#66788a!important;--en-border:#d5dde6!important;--en-border-strong:#bcc8d5!important}
.en-theme-control{display:none!important}
html[data-theme="dark"],html[data-theme="system"],html.dark{color-scheme:light!important}
body.dark-mode{color-scheme:light!important}


/* Phase 12.1.6 — collapsible sidebar categories, single-view productivity surfaces, account footer */
.en-p126-section-toggle{
  width:100%!important;min-height:34px!important;margin:7px 0 3px!important;padding:7px 8px!important;
  border:0!important;border-top:1px solid var(--en-border-default)!important;border-radius:0!important;background:transparent!important;
  color:var(--en-text-muted)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;
  font:800 10.5px/1.1 var(--en-font-sans)!important;letter-spacing:.085em!important;text-transform:uppercase!important;text-align:left!important;cursor:pointer!important;
}
.en-p126-section-toggle:first-child{border-top:0!important;margin-top:0!important}
.en-p126-section-toggle:hover{color:var(--en-action-primary)!important;background:color-mix(in srgb,var(--en-action-primary) 5%,transparent)!important}
.en-p126-section-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s ease}
.en-p126-section-toggle[aria-expanded="false"] svg{transform:rotate(-90deg)}
.en-p126-section-hidden{display:none!important}
.en-ws-nav button[data-p126-section-item]{transition:background .14s ease,color .14s ease}


.en-p126-account-actions{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;margin-top:10px!important;padding-top:10px!important;border-top:1px solid var(--en-border-default)!important}
.en-p126-account-actions a{position:relative!important;min-height:40px!important;padding:8px 10px!important;border:0!important;border-radius:9px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;background:transparent!important;color:var(--en-text-secondary)!important;font:700 12.5px/1.15 var(--en-font-sans)!important;text-decoration:none!important;white-space:nowrap!important;transition:background .15s ease,color .15s ease,transform .15s ease!important}
.en-p126-account-actions a svg{width:18px!important;height:18px!important;flex:0 0 18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.en-p126-account-actions a:hover,.en-p126-account-actions a:focus-visible{background:color-mix(in srgb,var(--en-action-primary) 9%,#fff)!important;color:var(--en-action-primary)!important;outline:0!important}
.en-p126-account-actions a:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--en-action-primary) 34%,transparent)!important}
.en-p126-account-actions a[aria-current="page"]{background:color-mix(in srgb,var(--en-action-primary) 10%,#fff)!important;color:var(--en-action-primary)!important;font-weight:800!important}
.en-p126-account-actions a[aria-current="page"]::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--en-action-primary)}
.en-p126-account-actions .en-p126-signout{color:#40546a!important}
.en-p126-account-actions .en-p126-signout:hover,.en-p126-account-actions .en-p126-signout:focus-visible{background:#fff4f2!important;color:#a33b2e!important}
.en-p126-signout-confirm{position:fixed!important;inset:0!important;z-index:100!important;display:grid!important;place-items:center!important;padding:20px!important;background:rgba(10,27,46,.34)!important;backdrop-filter:blur(4px)!important}
.en-p126-signout-confirm[hidden]{display:none!important}
.en-p126-signout-card{width:min(380px,calc(100vw - 32px))!important;padding:20px!important;border:1px solid var(--en-border-default)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 24px 70px rgba(10,27,46,.2)!important;color:var(--en-text-primary)!important}
.en-p126-signout-card h3{margin:0 0 7px!important;font:800 18px/1.25 var(--en-font-sans)!important}.en-p126-signout-card p{margin:0 0 18px!important;color:var(--en-text-secondary)!important;font:500 13px/1.5 var(--en-font-sans)!important}.en-p126-signout-actions{display:flex!important;justify-content:flex-end!important;gap:8px!important}.en-p126-signout-actions button,.en-p126-signout-actions a{min-height:38px!important;padding:8px 14px!important;border-radius:9px!important;border:1px solid var(--en-border-default)!important;background:#fff!important;color:var(--en-text-primary)!important;font:750 12.5px/1 var(--en-font-sans)!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.en-p126-signout-actions a{background:var(--en-action-primary)!important;border-color:var(--en-action-primary)!important;color:#fff!important}
.en-p4-account-links,.en-p121-account-links{display:none!important}

/* Productivity modules become the main centre view instead of a floating window. */
.en-ai-panel.en-ws-ready.en-p4-surface-open>.en-ws-center{position:relative!important;overflow:hidden!important}
.en-ai-panel.en-ws-ready.en-p4-surface-open>.en-ws-center>:not(.en-p4-surface){display:none!important}
.en-ai-panel.en-ws-ready.en-p4-surface-open>.en-ws-right{display:none!important}
.en-ai-panel.en-ai-maximized.en-ws-ready.en-p4-surface-open{grid-template-columns:var(--en-p121-app-nav) minmax(0,1fr)!important;grid-template-areas:'head head' 'left center'!important}
.en-ai-panel.en-ws-ready .en-ws-center>.en-p4-surface.en-p126-single-view{
  position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:1!important;
  width:100%!important;height:100%!important;min-height:0!important;flex:1 1 auto!important;border-left:0!important;border-radius:0!important;
}
@media(max-width:1200px){
  .en-ai-panel.en-ai-maximized.en-ws-ready.en-p4-surface-open{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:'head' 'center'!important}
}
@media(min-width:1201px){
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p126-section-toggle{display:none!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed [data-p126-section-item]{display:flex!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p126-account-actions{display:grid!important;width:44px!important;margin:8px auto 0!important;padding-top:8px!important;gap:4px!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p126-account-actions a{width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;justify-content:center!important;overflow:visible!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p126-account-actions a span{display:none!important}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p126-account-actions a::after{content:attr(aria-label);position:absolute;left:48px;top:50%;z-index:150;min-width:max-content;padding:6px 8px;border-radius:7px;background:#0b1b2c;color:#fff;font:700 11px/1 var(--en-font-sans);opacity:0;pointer-events:none;transform:translateY(-50%) translateX(-4px);transition:.14s ease;box-shadow:0 8px 20px rgba(10,27,46,.18)}
  .en-ai-panel .en-ws-left.en-p4-collapsed .en-p126-account-actions a:hover::after,.en-ai-panel .en-ws-left.en-p4-collapsed .en-p126-account-actions a:focus-visible::after{opacity:1;transform:translateY(-50%) translateX(0)}
}

.en-ai-panel.en-ws-ready>.en-ws-left>.en-ws-account{position:sticky!important;bottom:0!important;z-index:8!important;background:#f7f9fb!important;box-shadow:0 -8px 18px rgba(12,40,78,.045)!important}
