
/*
FILE: web/css/runtime_logged_accounts_global_shell_v18_69.css
ROLE: logged client/partner account global shell
STATUS: active patch v18.69
DOES:
- applies the new global header/topbar/footer visual system to authenticated client and partner accounts
- uses correct role colors: client blue, partner purple
- keeps account content inside the same global page rhythm
- opens/widens the left menu/sidebar a little more
- keeps admin technical/private UI private
DOES NOT:
- touch backend, sessions, auth validation, database, API, submit logic, storage
*/

:root{
  --abc-v1869-bg:#07101d;
  --abc-v1869-max:min(1840px, calc(100vw - 52px));
  --abc-v1869-gap:7px;
  --abc-v1869-header-footer:rgba(231,70,174,.48);
  --abc-v1869-client:rgba(74,166,255,.52);
  --abc-v1869-partner:rgba(188,132,255,.58);
  --abc-v1869-content:rgba(255,215,90,.30);
  --abc-v1869-left-menu-w:248px;
  --abc-v1869-left-menu-w-open:282px;
}

/* Authenticated account/dashboard/profile routes */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page,
  .private-client-account-page,
  .business-client-account-page,
  .private-partner-account-page,
  .business-partner-account-page
){
  background:var(--abc-v1869-bg) !important;
  overflow-x:hidden !important;
}

/* Same global outer shell. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.page-shell,.compact-page,.account-shell,.dashboard-shell,.profile-shell){
  width:var(--abc-v1869-max) !important;
  max-width:var(--abc-v1869-max) !important;
  margin-inline:auto !important;
  padding:0 !important;
  gap:var(--abc-v1869-gap) !important;
  box-sizing:border-box !important;
}

/* New global header visible and stable in logged accounts. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.site-header,.abc-static-header,header[role="banner"],.account-header,.dashboard-header,.profile-header){
  display:block !important;
  visibility:visible !important;
  width:100% !important;
  min-height:64px !important;
  margin:0 0 var(--abc-v1869-gap) 0 !important;
  padding:10px 18px !important;
  border:1px solid var(--abc-v1869-header-footer) !important;
  border-radius:20px !important;
  box-sizing:border-box !important;
  background:linear-gradient(135deg,rgba(80,24,82,.86),rgba(12,20,42,.94)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035), 0 10px 26px rgba(0,0,0,.18) !important;
}

/* New global topbar visible and stable in logged accounts. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.content-top-strip,.content-top-bar,.abc-global-topbar-module,.global-topbar-module,.abc-topbar-v10,.account-topbar,.dashboard-topbar,.profile-topbar,[data-meta-content-topbar="true"]){
  display:flex !important;
  visibility:visible !important;
  align-items:center !important;
  width:100% !important;
  min-height:46px !important;
  margin:0 0 var(--abc-v1869-gap) 0 !important;
  padding:6px 12px !important;
  border:1px solid var(--abc-v1869-client) !important;
  border-radius:18px !important;
  box-sizing:border-box !important;
  background:rgba(7,18,35,.82) !important;
  box-shadow:inset 0 0 0 1px rgba(74,166,255,.055) !important;
}

/* New global footer visible and stable in logged accounts. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.site-footer,.abc-static-footer,footer[role="contentinfo"],.account-footer,.dashboard-footer,.profile-footer){
  display:block !important;
  visibility:visible !important;
  width:100% !important;
  min-height:104px !important;
  margin:var(--abc-v1869-gap) 0 0 0 !important;
  padding:10px 18px !important;
  border:1px solid var(--abc-v1869-header-footer) !important;
  border-radius:20px !important;
  box-sizing:border-box !important;
  background:linear-gradient(135deg,rgba(80,24,82,.76),rgba(12,20,42,.94)) !important;
  overflow:hidden !important;
}

/* Content shell with global yellow content frame. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.abc-stack,main.abc-stack,.content-engine-panel,.clean-main-panel,.account-content,.dashboard-content,.profile-content){
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  margin:0 0 var(--abc-v1869-gap) 0 !important;
  padding:8px !important;
  border:1px solid var(--abc-v1869-content) !important;
  border-radius:20px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}

/* Role colors */
body:is([data-page="client_dashboard"],[data-logged-account="client"],.client-dashboard-page,.client-profile-page) :is(.content-top-strip,.content-top-bar,.abc-global-topbar-module,.global-topbar-module,.abc-topbar-v10,.account-topbar,.dashboard-topbar,.profile-topbar,[data-meta-content-topbar="true"]){
  border-color:var(--abc-v1869-client) !important;
  box-shadow:inset 0 0 0 1px rgba(74,166,255,.06) !important;
}

body:is([data-page="partner_dashboard"],[data-logged-account="partner"],.partner-dashboard-page,.partner-profile-page) :is(.content-top-strip,.content-top-bar,.abc-global-topbar-module,.global-topbar-module,.abc-topbar-v10,.account-topbar,.dashboard-topbar,.profile-topbar,[data-meta-content-topbar="true"]){
  border-color:var(--abc-v1869-partner) !important;
  box-shadow:inset 0 0 0 1px rgba(188,132,255,.06) !important;
}

/* Left menu/sidebar: open a little more, but not aggressive. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(
  .left-menu,
  .side-menu,
  .sidebar,
  .account-sidebar,
  .dashboard-sidebar,
  .profile-sidebar,
  .client-sidebar,
  .partner-sidebar,
  nav[aria-label*="side"],
  nav[aria-label*="Side"],
  [data-left-menu],
  [data-sidebar],
  [data-account-menu]
){
  width:var(--abc-v1869-left-menu-w-open) !important;
  max-width:min(var(--abc-v1869-left-menu-w-open), 32vw) !important;
  min-width:var(--abc-v1869-left-menu-w) !important;
  flex:0 0 var(--abc-v1869-left-menu-w-open) !important;
  overflow:visible !important;
  border-width:1px !important;
  border-radius:16px !important;
}

/* If layout is grid-based, give sidebar a little more width. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(
  .account-layout,
  .dashboard-layout,
  .profile-layout,
  .shell-layout,
  .layout-with-sidebar,
  [data-layout="sidebar"]
){
  display:grid !important;
  grid-template-columns:minmax(248px, 282px) minmax(0, 1fr) !important;
  gap:10px !important;
  align-items:start !important;
}

/* Menu text should be visible when opened wider. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-account-authenticated="1"],
  [data-logged-account="client"],
  [data-logged-account="partner"],
  .client-dashboard-page,
  .partner-dashboard-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(
  .left-menu,
  .side-menu,
  .sidebar,
  .account-sidebar,
  .dashboard-sidebar,
  .profile-sidebar,
  .client-sidebar,
  .partner-sidebar,
  [data-left-menu],
  [data-sidebar],
  [data-account-menu]
) :is(
  .menu-label,
  .nav-label,
  .item-label,
  span,
  a
){
  opacity:1 !important;
  visibility:visible !important;
  max-width:100% !important;
  white-space:normal !important;
}

/* Technical/admin-private information remains hidden for logged client/partner users. */
body:not([data-page="admin"]):not([data-page="admin_control_panel"]):not([data-admin-view="1"]):not(.admin-private-page) :is(
  .admin-only,
  .admin-only-flow-card,
  .abc-admin-only-technical-copy,
  .technical,
  .technical-panel,
  .debug,
  .debug-panel,
  .diagnostic,
  .diagnostic-panel,
  .route-inspector,
  [data-admin-only],
  [data-technical],
  [data-debug],
  [data-private-admin]
){
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

/* Mobile/tablet: sidebar becomes full-width top block, not broken. */
@media (max-width:980px){
  body:is(
    [data-page="client_dashboard"],
    [data-page="partner_dashboard"],
    [data-page="profile_account"],
    [data-account-authenticated="1"],
    [data-logged-account="client"],
    [data-logged-account="partner"],
    .client-dashboard-page,
    .partner-dashboard-page,
    .client-profile-page,
    .partner-profile-page,
    .profile-account-page
  ) :is(.account-layout,.dashboard-layout,.profile-layout,.shell-layout,.layout-with-sidebar,[data-layout="sidebar"]){
    grid-template-columns:1fr !important;
  }

  body:is(
    [data-page="client_dashboard"],
    [data-page="partner_dashboard"],
    [data-page="profile_account"],
    [data-account-authenticated="1"],
    [data-logged-account="client"],
    [data-logged-account="partner"],
    .client-dashboard-page,
    .partner-dashboard-page,
    .client-profile-page,
    .partner-profile-page,
    .profile-account-page
  ) :is(.left-menu,.side-menu,.sidebar,.account-sidebar,.dashboard-sidebar,.profile-sidebar,.client-sidebar,.partner-sidebar,[data-left-menu],[data-sidebar],[data-account-menu]){
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    flex:0 1 auto !important;
  }
}

@media (max-width:760px){
  :root{
    --abc-v1869-max:calc(100vw - 10px);
  }

  body:is(
    [data-page="client_dashboard"],
    [data-page="partner_dashboard"],
    [data-page="profile_account"],
    [data-account-authenticated="1"],
    [data-logged-account="client"],
    [data-logged-account="partner"],
    .client-dashboard-page,
    .partner-dashboard-page,
    .client-profile-page,
    .partner-profile-page,
    .profile-account-page
  ) :is(.site-header,.abc-static-header,header[role="banner"],.content-top-strip,.content-top-bar,.abc-global-topbar-module,.global-topbar-module,.site-footer,.abc-static-footer,footer[role="contentinfo"]){
    padding:8px !important;
    border-radius:16px !important;
  }
}
