
/*
FILE: web/css/runtime_profiles_global_ui_private_admin_v18_62.css
ROLE: profile/dashboard global UI association + private admin technical visibility
STATUS: active patch v18.62
DOES:
- applies the new global header/topbar/content/footer system to client/partner profiles and dashboards
- supports 6 account/profile families through role/data/path selectors:
  private client, business client, private partner, business partner, client dashboard, partner dashboard
- keeps administrator/private technical UI visible only on admin/private-admin surfaces
- keeps public consumer/profile frontend clean
- fixes the previous inversion: flow titles can remain strong in flow content; only auth portal titles stay compact
DOES NOT:
- touch database, sessions, passwords, API, submit logic, storage, jobs
*/

:root{
  --abc-v1862-bg:#07101d;
  --abc-v1862-max:min(1840px, calc(100vw - 52px));
  --abc-v1862-gap:7px;
  --abc-v1862-header-footer-line:rgba(231,70,174,.48);
  --abc-v1862-topbar-line:rgba(74,166,255,.36);
  --abc-v1862-content-line:rgba(255,215,90,.34);
  --abc-v1862-client-line:rgba(74,166,255,.48);
  --abc-v1862-emergency-line:rgba(255,82,112,.60);
  --abc-v1862-partner-line:rgba(188,132,255,.58);
  --abc-v1862-admin-line:rgba(75,220,145,.58);
  --abc-v1862-profile-bg-a:rgba(8,24,44,.95);
  --abc-v1862-profile-bg-b:rgba(6,16,30,.98);
}

/* Global module surface applied to dashboards + profile/account pages. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-profile-page="client"],
  [data-profile-page="partner"],
  .private-client-account-page,
  .business-client-account-page,
  .private-partner-account-page,
  .business-partner-account-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
){
  background:var(--abc-v1862-bg) !important;
  overflow-x:hidden !important;
}

body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-profile-page="client"],
  [data-profile-page="partner"],
  .private-client-account-page,
  .business-client-account-page,
  .private-partner-account-page,
  .business-partner-account-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.page-shell,.compact-page,.compact-index-page){
  width:var(--abc-v1862-max) !important;
  max-width:var(--abc-v1862-max) !important;
  margin-inline:auto !important;
  padding:0 !important;
  gap:var(--abc-v1862-gap) !important;
  box-sizing:border-box !important;
}

/* Header/footer/topbar/content global consistency for profiles. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-profile-page="client"],
  [data-profile-page="partner"],
  .private-client-account-page,
  .business-client-account-page,
  .private-partner-account-page,
  .business-partner-account-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.site-header,.abc-static-header,header[role="banner"]){
  width:100% !important;
  min-height:64px !important;
  margin:0 0 var(--abc-v1862-gap) 0 !important;
  padding:10px 18px !important;
  border:1px solid var(--abc-v1862-header-footer-line) !important;
  border-radius:20px !important;
  box-sizing:border-box !important;
}

body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-profile-page="client"],
  [data-profile-page="partner"],
  .private-client-account-page,
  .business-client-account-page,
  .private-partner-account-page,
  .business-partner-account-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,[data-meta-content-topbar="true"]){
  width:100% !important;
  min-height:46px !important;
  margin:0 0 var(--abc-v1862-gap) 0 !important;
  padding:6px 12px !important;
  border:1px solid var(--abc-v1862-topbar-line) !important;
  border-radius:18px !important;
  box-sizing:border-box !important;
}

body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-profile-page="client"],
  [data-profile-page="partner"],
  .private-client-account-page,
  .business-client-account-page,
  .private-partner-account-page,
  .business-partner-account-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.abc-stack,main.abc-stack,.content-engine-panel,.clean-main-panel,.profile-panel,.account-profile-panel,.dashboard-profile-panel){
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  margin:0 0 var(--abc-v1862-gap) 0 !important;
  padding:8px !important;
  border-width:1px !important;
  border-color:var(--abc-v1862-content-line) !important;
  border-radius:20px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}

body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-profile-page="client"],
  [data-profile-page="partner"],
  .private-client-account-page,
  .business-client-account-page,
  .private-partner-account-page,
  .business-partner-account-page,
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.site-footer,.abc-static-footer,footer[role="contentinfo"]){
  width:100% !important;
  min-height:104px !important;
  margin:var(--abc-v1862-gap) 0 0 0 !important;
  padding:10px 18px !important;
  border:1px solid var(--abc-v1862-header-footer-line) !important;
  border-radius:20px !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}

/* Profile/account cards: compact consumer UI. */
body:is(
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  [data-page="profile_account"],
  [data-profile-page="client"],
  [data-profile-page="partner"],
  .client-profile-page,
  .partner-profile-page,
  .profile-account-page
) :is(.profile-card,.account-card,.client-account-card,.partner-account-card,.dashboard-card,.profile-section,.account-section){
  min-height:0 !important;
  height:auto !important;
  padding:10px 12px !important;
  margin:0 0 8px 0 !important;
  border-width:1px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,var(--abc-v1862-profile-bg-a),var(--abc-v1862-profile-bg-b)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025), 0 10px 24px rgba(0,0,0,.18) !important;
}

/* Role colors for the 6 profile/account families. */
body:is([data-profile-role="client"],[data-page="client_dashboard"],.client-profile-page) :is(.profile-card,.account-card,.dashboard-card,.profile-section,.account-section){
  border-color:var(--abc-v1862-client-line) !important;
}

body:is([data-profile-role="partner"],[data-page="partner_dashboard"],.partner-profile-page) :is(.profile-card,.account-card,.dashboard-card,.profile-section,.account-section){
  border-color:var(--abc-v1862-partner-line) !important;
}

body.private-client-account-page :is(.profile-card,.account-card,.dashboard-card,.profile-section,.account-section,.clean-main-panel,.content-engine-panel){
  border-color:var(--abc-v1862-client-line) !important;
}

body.business-client-account-page :is(.profile-card,.account-card,.dashboard-card,.profile-section,.account-section,.clean-main-panel,.content-engine-panel){
  border-color:var(--abc-v1862-client-line) !important;
}

body.private-partner-account-page :is(.profile-card,.account-card,.dashboard-card,.profile-section,.account-section,.clean-main-panel,.content-engine-panel){
  border-color:var(--abc-v1862-partner-line) !important;
}

body.business-partner-account-page :is(.profile-card,.account-card,.dashboard-card,.profile-section,.account-section,.clean-main-panel,.content-engine-panel){
  border-color:var(--abc-v1862-partner-line) !important;
}

/* Emergency keeps red if route/job type exposes emergency. */
body:is([data-job-type="emergency"],[data-flow-type="emergency"],[data-account-flow="emergency"]) :is(.profile-card,.account-card,.dashboard-card,.profile-section,.account-section,.clean-main-panel,.content-engine-panel){
  border-color:var(--abc-v1862-emergency-line) !important;
}

/* Admin/private visibility rule: technical info not public, but admin surfaces keep it. */
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;
}

/* Admin/private surfaces: technical info visible, green, compact, not public. */
body:is([data-page="admin"],[data-page="admin_control_panel"],[data-admin-view="1"],.admin-private-page) :is(
  .admin-only,
  .admin-only-flow-card,
  .abc-admin-only-technical-copy,
  .technical,
  .technical-panel,
  .debug-panel,
  .diagnostic-panel,
  .route-inspector,
  [data-admin-only],
  [data-technical],
  [data-private-admin]
){
  display:block !important;
  visibility:visible !important;
  max-width:100% !important;
  max-height:440px !important;
  overflow:auto !important;
  padding:10px !important;
  margin:0 0 8px 0 !important;
  border:1px solid rgba(75,220,145,.34) !important;
  border-radius:14px !important;
  background:rgba(6,20,21,.78) !important;
  color:#d9ffe9 !important;
}

/* Correct the earlier inversion:
   Auth titles stay compact, but flow/content titles are allowed to be strong after account/data areas. */
body:is(.private-client-account-page,.business-client-account-page,.private-partner-account-page,.business-partner-account-page) :is(
  .flow-title,
  .request-title,
  .client-flow-title,
  .partner-flow-title,
  .account-flow-title,
  .section-flow-title,
  [data-flow-title]
){
  font-size:clamp(30px,3.2vw,48px) !important;
  line-height:1.04 !important;
  margin:8px 0 10px 0 !important;
  color:#f7fbff !important;
  opacity:1 !important;
  max-width:100% !important;
}

/* But auth portal titles remain compact from v18.61. */
body[data-page="auth_login"] :is(.auth-dashboard-panel__title,.auth-title,h1),
body[data-page="auth_notice"] :is(.auth-dashboard-panel__title,.auth-title,h1),
body[data-auth-role] :is(.auth-dashboard-panel__title,.auth-title,h1){
  font-size:clamp(24px,2.35vw,34px) !important;
  line-height:1.02 !important;
}

/* Account/profile data sections: compact and readable. */
body:is(
  [data-page="profile_account"],
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  .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
) :is(
  .account-data,
  .profile-data,
  .contact-data,
  .client-data,
  .partner-data,
  .job-data,
  .request-data,
  [data-profile-section],
  [data-account-section]
){
  min-height:0 !important;
  padding:9px 11px !important;
  margin:0 0 8px 0 !important;
  border-width:1px !important;
  border-radius:14px !important;
}

/* Fields in profile/forms: compact. */
body:is(
  [data-page="profile_account"],
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  .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
) :is(.client-form-field,.partner-form-field,.profile-field,.account-field,.flow-field,.form-field){
  min-height:0 !important;
  padding:7px 9px !important;
  margin:0 0 7px 0 !important;
  border-radius:11px !important;
}

/* Prevent dead fullpage height in profile/account pages. */
body:is(
  [data-page="profile_account"],
  [data-page="client_dashboard"],
  [data-page="partner_dashboard"],
  .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
) :is(.fullpage,.full-page,.fullpage-surface,.fullpage-panel,[class*="fullpage"],[class*="min-vh"],[style*="100vh"]){
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
}

/* Mobile */
@media (max-width:760px){
  :root{
    --abc-v1862-max:calc(100vw - 10px);
    --abc-v1862-gap:6px;
  }

  body:is(
    [data-page="client_dashboard"],
    [data-page="partner_dashboard"],
    [data-page="profile_account"],
    [data-profile-page="client"],
    [data-profile-page="partner"],
    .private-client-account-page,
    .business-client-account-page,
    .private-partner-account-page,
    .business-partner-account-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,.site-footer,.abc-static-footer,footer[role="contentinfo"]){
    padding:8px !important;
    border-radius:16px !important;
  }

  body:is(.private-client-account-page,.business-client-account-page,.private-partner-account-page,.business-partner-account-page) :is(.flow-title,.request-title,[data-flow-title]){
    font-size:clamp(26px,7vw,36px) !important;
  }
}
