/* ======================================== Section Block Styles Prefix: bkbg-section ======================================== */ /* CSS Custom Properties */ .bkbg-section { --bkbg-section-max-width: 1200px; --bkbg-section-padding-none: 0; --bkbg-section-padding-xs: 8px; --bkbg-section-padding-s: 16px; --bkbg-section-padding-m: 32px; --bkbg-section-padding-l: 48px; --bkbg-section-padding-xl: 64px; --bkbg-section-bg-light: #f8fafc; --bkbg-section-bg-dark: #1e293b; --bkbg-section-bg-accent: #3b82f6; position: relative; width: 100%; box-sizing: border-box; } /* Content Width */ .bkbg-section--width-full .bkbg-section__inner { width: 100%; max-width: 100%; padding-left: 20px; padding-right: 20px; } .bkbg-section--width-boxed .bkbg-section__inner { width: 100%; max-width: var(--bkbg-section-max-width); margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; box-sizing: border-box; } /* Vertical Padding */ .bkbg-section--padding-none { padding-top: var(--bkbg-section-padding-none); padding-bottom: var(--bkbg-section-padding-none); } .bkbg-section--padding-xs { padding-top: var(--bkbg-section-padding-xs); padding-bottom: var(--bkbg-section-padding-xs); } .bkbg-section--padding-s { padding-top: var(--bkbg-section-padding-s); padding-bottom: var(--bkbg-section-padding-s); } .bkbg-section--padding-m { padding-top: var(--bkbg-section-padding-m); padding-bottom: var(--bkbg-section-padding-m); } .bkbg-section--padding-l { padding-top: var(--bkbg-section-padding-l); padding-bottom: var(--bkbg-section-padding-l); } .bkbg-section--padding-xl { padding-top: var(--bkbg-section-padding-xl); padding-bottom: var(--bkbg-section-padding-xl); } /* Background Presets */ .bkbg-section--bg-none { background-color: transparent; } .bkbg-section--bg-light { background-color: var(--bkbg-section-bg-light); } .bkbg-section--bg-dark { background-color: var(--bkbg-section-bg-dark); color: #ffffff; } .bkbg-section--bg-accent { background-color: var(--bkbg-section-bg-accent); color: #ffffff; } .bkbg-section--bg-custom { background-color: var(--bkbg-section-custom-bg, transparent); } /* Inner wrapper */ .bkbg-section__inner { display: flex; flex-direction: column; gap: 24px; } /* Editor-specific styles */ .editor-styles-wrapper .bkbg-section { min-height: 60px; border: 1px dashed transparent; border-radius: 4px; transition: border-color 0.15s ease, box-shadow 0.15s ease; } .editor-styles-wrapper .bkbg-section:hover { border-color: rgba(59, 130, 246, 0.3); } .editor-styles-wrapper .bkbg-section.is-selected, .editor-styles-wrapper .bkbg-section:focus-within { border-color: rgba(59, 130, 246, 0.5); } /* Drag and drop state */ .editor-styles-wrapper .bkbg-section.is-dragging-over, .editor-styles-wrapper [data-type="blockenberg/section"].is-dragging-over > .bkbg-section { border-color: rgba(59, 130, 246, 0.6) !important; background-color: rgba(59, 130, 246, 0.03) !important; } /* Ensure InnerBlocks placeholder shows correctly - direct children only */ .editor-styles-wrapper .bkbg-section > .bkbg-section__inner > .block-editor-inner-blocks { width: 100%; } .editor-styles-wrapper .bkbg-section > .bkbg-section__inner > .block-editor-inner-blocks > .block-editor-block-list__layout { width: 100%; display: flex; flex-direction: column; gap: 24px; } /* Section label in editor */ .editor-styles-wrapper .bkbg-section::before { content: 'Section'; position: absolute; top: -20px; left: 0; font-size: 10px; font-weight: 600; color: #3b82f6; text-transform: uppercase; letter-spacing: 0.5px; opacity: 0; transition: opacity 0.15s ease; pointer-events: none; } .editor-styles-wrapper .bkbg-section:hover::before, .editor-styles-wrapper .bkbg-section.is-selected::before { opacity: 1; } /* Full width alignment - break out of container - only for top-level sections */ .bkbg-section.alignfull:not(.bkbg-column .bkbg-section) { width: 100vw; max-width: 100vw; margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); } .bkbg-section.alignwide:not(.bkbg-column .bkbg-section) { width: calc(100% + 80px); max-width: calc(100vw - 40px); margin-left: -40px; margin-right: -40px; } /* Nested sections inside columns should be full width of column */ .bkbg-column .bkbg-section, .bkbg-column .bkbg-section.alignfull, .bkbg-column .bkbg-section.alignwide { width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; } /* Editor full width support */ .editor-styles-wrapper .bkbg-section.alignfull, .editor-styles-wrapper [data-type="blockenberg/section"][data-align="full"] > .bkbg-section { width: 100% !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; } /* Responsive adjustments */ @media (max-width: 782px) { .bkbg-section--width-boxed .bkbg-section__inner, .bkbg-section--width-full .bkbg-section__inner { padding-left: 16px; padding-right: 16px; } .bkbg-section--padding-l { padding-top: 32px; padding-bottom: 32px; } .bkbg-section--padding-xl { padding-top: 48px; padding-bottom: 48px; } }