﻿/* Global shared layout & utility styles (ApparelBridge) */

/* Ensure proper white background for the entire site */
html, body { 
  height: 100%; 
  background-color: #ffffff !important; /* Force white background */
  color: #212529; /* Ensure dark text on white background */
}

body { 
  overflow: hidden; 
  overflow-x: hidden; 
  background-color: #ffffff !important; /* Force white background */
}

/* Full-bleed utility */
main.container,
.container { max-width:100% !important; width:100% !important; padding-left:0 !important; padding-right:0 !important; }

.ab-page { overflow-x:hidden; }
.ab-fill { height:calc(100vh - var(--ab-header-offset, 0px)); overflow:hidden; display:flex; }
.ab-fill > [class*='col-'] { display:flex; flex-direction:column; min-height:0; }

/* Core layout regions */
.ab-main { min-width:0; min-height:0; overflow:hidden; display:flex; flex-direction:column; flex:1 1 auto; }
.ab-drop-area { min-height:0; flex:1 1 auto; overflow:auto; }

/* General helpers */
.ab-border-dashed { border-style:dashed !important; }

/* Branding */
.ab-brand { margin-left:0.75rem; display:inline-flex; align-items:center; }
.ab-brand-logo { height:2rem; width:auto; display:block; }

/* Header offset handling */
body.ab-with-header { padding-top:var(--ab-header-offset,0); }

/* Viewport sizing for main content when sidebar present */
body.ab-has-sidebar #ab-main, body.ab-has-sidebar .ab-main-content { height:calc(100vh - var(--ab-header-offset,0)); overflow:hidden; display:flex; flex-direction:column; }
body.ab-has-sidebar.ab-sidebar-collapsed #ab-main, body.ab-has-sidebar.ab-sidebar-collapsed .ab-main-content { height:calc(100vh - var(--ab-header-offset,0)); }
@media (max-width:575.98px){ body.ab-has-sidebar #ab-main, body.ab-has-sidebar .ab-main-content { margin-left:0 !important; } }

/* Space adjustment for main content wrapper */
#ab-main.ab-main-content { padding:0 !important; }

/* Utility color for brand border (used by drag/drop etc.) */
.ab-border-brand { border-color:#1976D2 !important; }

/* Force default site header / navbar to be white */
body .navbar {
    --bs-navbar-color: #000000;
    color: #fff !important;
    background-color: #fff !important;
    --bs-navbar-hover-color: #000;
    --bs-navbar-disabled-color: #000;
    --bs-navbar-active-color: #000;
    --bs-navbar-brand-color: #000;
    --bs-navbar-brand-hover-color: #000;
}

/* Separator line only under main site header / navigation */
header.site-header, .ab-site-header, body > .navbar { border-bottom:1px solid #e5e7eb !important; }

/* Remove unwanted border under internal page header component */
.ab-page-header { border-bottom:none !important; }

/* Ensure all main content areas have white background */
.ab-main-content {
  background-color: #ffffff !important;
}

#ab-main {
  background-color: #ffffff !important;
}

/* Override any potential dark backgrounds */
.container,
.container-fluid,
main {
  background-color: #ffffff !important;
}

/* Ensure content areas are white */
.content,
.main-content,
.page-content {
  background-color: #ffffff !important;
}
