.site,
#page,
.wp-site-blocks,
.np-site {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow-x: clip;
    background: var(--np-site-background, #f8fafc);
    color: var(--np-body-color, #334155);
}

.np-site.is-boxed,
.site.is-boxed,
body.np-layout-boxed .np-site,
body.np-layout-boxed .site,
body.np-layout-boxed #page {
    width: min(100%, var(--np-container-2xl, 1600px));
    margin-inline: auto;
    background: var(--np-color-surface, #ffffff);
    box-shadow: var(--np-shadow-lg, 0 24px 70px rgba(15, 23, 42, 0.14));
}

.np-site.is-framed,
.site.is-framed,
body.np-layout-framed .np-site,
body.np-layout-framed .site,
body.np-layout-framed #page {
    width: calc(100% - clamp(1rem, 3vw, 2rem));
    min-height: calc(100vh - clamp(1rem, 3vw, 2rem));
    margin: clamp(0.5rem, 1.5vw, 1rem) auto;
    overflow: hidden;
    background: var(--np-color-surface, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-radius: var(--np-radius-3xl, 2rem);
    box-shadow: var(--np-shadow-xl, 0 36px 100px rgba(15, 23, 42, 0.18));
}

.site-main,
#primary,
.wp-site-main,
.np-main {
    position: relative;
    flex: 1 0 auto;
    width: 100%;
    min-width: 0;
    min-height: var(--np-main-min-height, calc(100vh - var(--np-header-height, 88px)));
}

.np-main {
    background: var(--np-body-background, #f8fafc);
}

.np-main.is-surface {
    background: var(--np-color-surface, #ffffff);
}

.np-main.is-soft {
    background: var(--np-color-background-soft, #f1f5f9);
}

.np-main.is-muted {
    background: var(--np-color-background-muted, #e2e8f0);
}

.np-main.is-dark {
    background: var(--np-gradient-dark, linear-gradient(135deg, #0f172a 0%, #1e293b 100%));
    color: var(--np-color-white, #ffffff);
}

.site-content,
.content-area,
.np-site-content,
.np-content-area {
    position: relative;
    width: 100%;
    min-width: 0;
}

.np-content-area {
    padding-block: var(--np-content-area-padding-y, 0);
}

.np-page-layout {
    position: relative;
    width: 100%;
    padding-block: var(--np-page-layout-padding-y, var(--np-section-padding-y, clamp(3rem, 7vw, 7rem)));
}

.np-page-layout.is-compact {
    padding-block: clamp(2rem, 5vw, 4rem);
}

.np-page-layout.is-spacious {
    padding-block: clamp(4rem, 9vw, 9rem);
}

.np-page-layout.is-flush {
    padding-block: 0;
}

.np-page-layout.is-top-flush {
    padding-block-start: 0;
}

.np-page-layout.is-bottom-flush {
    padding-block-end: 0;
}

.np-layout {
    position: relative;
    width: 100%;
    min-width: 0;
}

.np-layout-default {
    display: grid;
    gap: var(--np-layout-gap, var(--np-spacing-xl, 2rem));
}

.np-layout-content {
    min-width: 0;
}

.np-layout-content > *:first-child {
    margin-block-start: 0;
}

.np-layout-content > *:last-child {
    margin-block-end: 0;
}

.np-layout-sidebar {
    min-width: 0;
}

.np-layout-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
    align-self: start;
}

.np-layout-sidebar-inner {
    display: grid;
    gap: var(--np-sidebar-widget-gap, 1.5rem);
}

.np-layout-with-sidebar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, var(--np-archive-sidebar-width, 320px));
    gap: var(--np-archive-gap, var(--np-spacing-xl, 2rem));
    align-items: start;
}

.np-layout-with-sidebar.is-sidebar-start {
    grid-template-columns: minmax(260px, var(--np-archive-sidebar-width, 320px)) minmax(0, 1fr);
}

.np-layout-with-sidebar.is-sidebar-start .np-layout-content {
    order: 2;
}

.np-layout-with-sidebar.is-sidebar-start .np-layout-sidebar {
    order: 1;
}

.np-layout-with-sidebar.is-wide-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
}

.np-layout-with-sidebar.is-narrow-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
}

.np-layout-with-sidebar.is-balanced {
    grid-template-columns: minmax(0, 0.72fr) minmax(280px, 0.28fr);
}

.np-layout-no-sidebar {
    display: block;
}

.np-layout-centered {
    width: 100%;
    max-width: var(--np-content-width, var(--np-container-content, 960px));
    margin-inline: auto;
}

.np-layout-narrow {
    width: 100%;
    max-width: var(--np-content-narrow-width, var(--np-container-narrow, 820px));
    margin-inline: auto;
}

.np-layout-wide {
    width: 100%;
    max-width: var(--np-container-width, 1280px);
    margin-inline: auto;
}

.np-layout-full {
    width: 100%;
    max-width: none;
}

.np-layout-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 1fr);
    gap: clamp(var(--np-spacing-xl, 2rem), 5vw, var(--np-spacing-3xl, 4rem));
    align-items: center;
}

.np-layout-split.is-reverse {
    grid-template-columns: minmax(320px, 1fr) minmax(0, 1fr);
}

.np-layout-split.is-reverse > :first-child {
    order: 2;
}

.np-layout-split.is-reverse > :last-child {
    order: 1;
}

.np-layout-split.is-start {
    align-items: start;
}

.np-layout-split.is-end {
    align-items: end;
}

.np-layout-stack {
    display: grid;
    gap: var(--np-layout-stack-gap, var(--np-spacing-xl, 2rem));
}

.np-layout-stack-sm {
    --np-layout-stack-gap: var(--np-spacing-md, 1rem);
    display: grid;
    gap: var(--np-layout-stack-gap);
}

.np-layout-stack-md {
    --np-layout-stack-gap: var(--np-spacing-xl, 2rem);
    display: grid;
    gap: var(--np-layout-stack-gap);
}

.np-layout-stack-lg {
    --np-layout-stack-gap: var(--np-spacing-2xl, 3rem);
    display: grid;
    gap: var(--np-layout-stack-gap);
}

.np-layout-stack-xl {
    --np-layout-stack-gap: var(--np-spacing-3xl, 4rem);
    display: grid;
    gap: var(--np-layout-stack-gap);
}

.np-layout-frame {
    position: relative;
    padding: var(--np-card-padding, 2rem);
    background: var(--np-card-background, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-color: var(--np-card-border-color, #e2e8f0);
    border-radius: var(--np-card-radius, 1.5rem);
    box-shadow: var(--np-card-shadow, 0 8px 24px rgba(15, 23, 42, 0.08));
}

.np-layout-frame.is-compact {
    padding: var(--np-card-compact-padding, 1.5rem);
}

.np-layout-frame.is-large {
    padding: var(--np-card-large-padding, 3rem);
}

.np-layout-frame.is-glass {
    background: var(--np-glass-background, rgba(255, 255, 255, 0.76));
    border-color: var(--np-glass-border-color, rgba(203, 213, 225, 0.62));
    box-shadow: var(--np-glass-shadow, 0 8px 24px rgba(15, 23, 42, 0.08));
    backdrop-filter: var(--np-glass-backdrop-filter, blur(16px));
}

.np-layout-frame.is-muted {
    background: var(--np-color-surface-muted, #f1f5f9);
}

.np-layout-frame.is-borderless {
    border: 0;
}

.np-layout-frame.is-shadowless {
    box-shadow: none;
}

.np-layout-panel {
    display: grid;
    gap: var(--np-spacing-lg, 1.5rem);
    padding: var(--np-spacing-xl, 2rem);
    background: var(--np-color-surface, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-radius: var(--np-radius-2xl, 1.5rem);
}

.np-layout-panel-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--np-spacing-md, 1rem);
}

.np-layout-panel-title {
    margin: 0;
    color: var(--np-color-heading, #0f172a);
    font-family: var(--np-heading-font-family, Tahoma, Arial, sans-serif);
    font-size: var(--np-font-size-xl, 1.25rem);
    font-weight: var(--np-font-weight-black, 900);
    line-height: var(--np-line-height-tight, 1.3);
}

.np-layout-panel-description {
    margin: var(--np-spacing-xs, 0.5rem) 0 0;
    color: var(--np-color-text-muted, #64748b);
    font-size: var(--np-font-size-sm, 0.875rem);
    line-height: var(--np-line-height-snug, 1.5);
}

.np-layout-panel-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: var(--np-spacing-xs, 0.5rem);
}

.np-layout-panel-body {
    min-width: 0;
}

.np-layout-panel-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--np-spacing-sm, 0.75rem);
    padding-block-start: var(--np-spacing-md, 1rem);
    border-block-start: var(--np-border, 1px solid #e2e8f0);
}

.np-page-header {
    position: relative;
    display: grid;
    gap: var(--np-spacing-md, 1rem);
    margin-block-end: clamp(var(--np-spacing-xl, 2rem), 5vw, var(--np-spacing-3xl, 4rem));
}

.np-page-header.is-center {
    max-width: var(--np-container-content, 960px);
    margin-inline: auto;
    text-align: center;
}

.np-page-header.is-center .np-page-description {
    margin-inline: auto;
}

.np-page-header.is-split {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
}

.np-page-header-content {
    min-width: 0;
}

.np-page-header-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: var(--np-spacing-sm, 0.75rem);
}

.np-page-kicker {
    display: inline-flex;
    align-items: center;
    gap: var(--np-spacing-xs, 0.5rem);
    width: fit-content;
    margin-block-end: var(--np-spacing-sm, 0.75rem);
    color: var(--np-color-primary, #4f46e5);
    font-family: var(--np-font-heading, Tahoma, Arial, sans-serif);
    font-size: var(--np-font-size-sm, 0.875rem);
    font-weight: var(--np-font-weight-extrabold, 800);
    line-height: var(--np-line-height-snug, 1.5);
}

.np-page-title {
    margin: 0;
}

.np-page-description {
    max-width: 72ch;
    margin: var(--np-spacing-md, 1rem) 0 0;
    color: var(--np-page-title-description-color, var(--np-color-text-muted, #64748b));
    font-size: var(--np-font-size-lg, 1.125rem);
    line-height: var(--np-line-height-relaxed, 1.9);
}

.np-page-body {
    min-width: 0;
}

.np-page-body > *:first-child {
    margin-block-start: 0;
}

.np-page-body > *:last-child {
    margin-block-end: 0;
}

.np-page-footer {
    margin-block-start: clamp(var(--np-spacing-xl, 2rem), 5vw, var(--np-spacing-3xl, 4rem));
}

.np-template-default .np-main,
body:not(.page-template-canvas):not(.page-template-blank):not(.page-template-landing) .np-main {
    background: var(--np-body-background, #f8fafc);
}

body.page-template-canvas,
body.page-template-blank,
body.page-template-landing,
body.np-template-canvas,
body.np-template-blank,
body.np-template-landing {
    --np-main-min-height: 100vh;
}

body.page-template-canvas .np-main,
body.page-template-blank .np-main,
body.np-template-canvas .np-main,
body.np-template-blank .np-main {
    padding-block: 0;
}

body.page-template-canvas .np-page-layout,
body.page-template-blank .np-page-layout,
body.np-template-canvas .np-page-layout,
body.np-template-blank .np-page-layout {
    padding-block: 0;
}

body.page-template-landing .np-main,
body.np-template-landing .np-main {
    background: var(--np-color-background, #f8fafc);
}

body.page-template-landing .np-page-layout,
body.np-template-landing .np-page-layout {
    padding-block: 0;
}

body.page-template-full-width .np-layout-centered,
body.page-template-full-width .np-layout-narrow,
body.page-template-full-width .np-container-content,
body.page-template-full-width .np-post-container {
    max-width: var(--np-container-xl, 1440px);
}

body.np-no-sidebar .np-layout-with-sidebar,
body.np-layout-no-sidebar .np-layout-with-sidebar,
body.page-template-full-width .np-layout-with-sidebar,
body.page-template-canvas .np-layout-with-sidebar,
body.page-template-blank .np-layout-with-sidebar,
body.page-template-landing .np-layout-with-sidebar {
    grid-template-columns: 1fr;
}

body.np-no-sidebar .np-layout-sidebar,
body.np-layout-no-sidebar .np-layout-sidebar,
body.page-template-full-width .np-layout-sidebar,
body.page-template-canvas .np-layout-sidebar,
body.page-template-blank .np-layout-sidebar,
body.page-template-landing .np-layout-sidebar {
    display: none;
}

body.np-has-sidebar .np-layout-sidebar {
    display: block;
}

.np-archive-layout {
    display: grid;
    gap: var(--np-archive-gap, var(--np-spacing-xl, 2rem));
}

.np-archive-layout.has-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(260px, var(--np-archive-sidebar-width, 320px));
    align-items: start;
}

.np-archive-layout.has-sidebar-start {
    grid-template-columns: minmax(260px, var(--np-archive-sidebar-width, 320px)) minmax(0, 1fr);
    align-items: start;
}

.np-archive-layout.has-sidebar-start .np-archive-main {
    order: 2;
}

.np-archive-layout.has-sidebar-start .np-archive-sidebar {
    order: 1;
}

.np-archive-main {
    min-width: 0;
}

.np-archive-sidebar {
    min-width: 0;
}

.np-archive-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-archive-header {
    display: grid;
    gap: var(--np-spacing-md, 1rem);
    margin-block-end: clamp(var(--np-spacing-xl, 2rem), 5vw, var(--np-spacing-3xl, 4rem));
}

.np-archive-header.is-center {
    max-width: var(--np-container-content, 960px);
    margin-inline: auto;
    text-align: center;
}

.np-archive-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--np-spacing-md, 1rem);
    margin-block-end: var(--np-spacing-xl, 2rem);
    padding: var(--np-spacing-md, 1rem);
    background: var(--np-color-surface, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-radius: var(--np-radius-xl, 1.25rem);
}

.np-archive-toolbar-start,
.np-archive-toolbar-end {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--np-spacing-sm, 0.75rem);
}

.np-archive-results-count {
    color: var(--np-color-text-muted, #64748b);
    font-size: var(--np-font-size-sm, 0.875rem);
    font-weight: var(--np-font-weight-medium, 500);
}

.np-archive-empty {
    display: grid;
    place-items: center;
    min-height: 320px;
    padding: var(--np-spacing-2xl, 3rem);
    background: var(--np-color-surface, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-style: dashed;
    border-radius: var(--np-radius-3xl, 2rem);
    color: var(--np-color-text-muted, #64748b);
    text-align: center;
}

.np-single-layout {
    display: grid;
    gap: var(--np-spacing-xl, 2rem);
}

.np-single-layout.has-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(260px, var(--np-archive-sidebar-width, 320px));
    align-items: start;
}

.np-single-main {
    min-width: 0;
}

.np-single-sidebar {
    min-width: 0;
}

.np-single-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-single-header {
    display: grid;
    gap: var(--np-spacing-md, 1rem);
    margin-block-end: var(--np-spacing-xl, 2rem);
}

.np-single-header.is-center {
    max-width: var(--np-container-content, 960px);
    margin-inline: auto;
    text-align: center;
}

.np-single-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--np-spacing-sm, 0.75rem);
    color: var(--np-color-text-muted, #64748b);
    font-size: var(--np-font-size-sm, 0.875rem);
    font-weight: var(--np-font-weight-medium, 500);
}

.np-single-header.is-center .np-single-meta {
    justify-content: center;
}

.np-single-featured {
    margin-block-end: var(--np-spacing-xl, 2rem);
    overflow: hidden;
    background: var(--np-color-surface-muted, #f1f5f9);
    border-radius: var(--np-radius-3xl, 2rem);
}

.np-single-featured img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.np-single-content {
    min-width: 0;
}

.np-single-footer {
    display: grid;
    gap: var(--np-spacing-lg, 1.5rem);
    margin-block-start: var(--np-spacing-2xl, 3rem);
}

.np-blog-layout {
    display: grid;
    gap: var(--np-spacing-xl, 2rem);
}

.np-blog-layout.has-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(260px, var(--np-archive-sidebar-width, 320px));
    align-items: start;
}

.np-blog-main {
    min-width: 0;
}

.np-blog-sidebar {
    min-width: 0;
}

.np-blog-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-search-layout {
    display: grid;
    gap: var(--np-spacing-xl, 2rem);
}

.np-search-layout.has-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(260px, var(--np-archive-sidebar-width, 320px));
    align-items: start;
}

.np-search-main {
    min-width: 0;
}

.np-search-sidebar {
    min-width: 0;
}

.np-error-layout {
    display: grid;
    place-items: center;
    min-height: min(720px, calc(100vh - var(--np-header-height, 88px)));
    padding-block: var(--np-section-padding-y, clamp(3rem, 7vw, 7rem));
    text-align: center;
}

.np-error-content {
    display: grid;
    gap: var(--np-spacing-lg, 1.5rem);
    width: 100%;
    max-width: 680px;
    margin-inline: auto;
}

.np-error-code {
    display: inline-flex;
    justify-content: center;
    background: var(--np-gradient-primary, linear-gradient(135deg, #4f46e5 0%, #38bdf8 100%));
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    font-family: var(--np-font-display, Tahoma, Arial, sans-serif);
    font-size: clamp(5rem, 20vw, 12rem);
    font-weight: var(--np-font-weight-black, 900);
    line-height: 0.9;
    letter-spacing: var(--np-letter-spacing-tight, -0.02em);
}

.np-error-title {
    margin: 0;
    color: var(--np-color-heading, #0f172a);
    font-family: var(--np-heading-font-family, Tahoma, Arial, sans-serif);
    font-size: clamp(var(--np-font-size-3xl, 1.875rem), 4vw, var(--np-font-size-5xl, 3rem));
    font-weight: var(--np-font-weight-black, 900);
    line-height: var(--np-line-height-tight, 1.3);
}

.np-error-description {
    max-width: 58ch;
    margin: 0 auto;
    color: var(--np-color-text-muted, #64748b);
    font-size: var(--np-font-size-lg, 1.125rem);
    line-height: var(--np-line-height-relaxed, 1.9);
}

.np-error-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: var(--np-spacing-sm, 0.75rem);
}

.np-shop-layout {
    display: grid;
    gap: var(--np-woocommerce-layout-gap, var(--np-spacing-xl, 2rem));
}

.np-shop-layout.has-sidebar {
    grid-template-columns: minmax(240px, var(--np-woocommerce-sidebar-width, 300px)) minmax(0, 1fr);
    align-items: start;
}

.np-shop-layout.has-sidebar-end {
    grid-template-columns: minmax(0, 1fr) minmax(240px, var(--np-woocommerce-sidebar-width, 300px));
    align-items: start;
}

.np-shop-layout.has-sidebar-end .np-shop-main {
    order: 1;
}

.np-shop-layout.has-sidebar-end .np-shop-sidebar {
    order: 2;
}

.np-shop-main {
    min-width: 0;
}

.np-shop-sidebar {
    min-width: 0;
}

.np-shop-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-shop-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--np-spacing-md, 1rem);
    margin-block-end: var(--np-spacing-xl, 2rem);
    padding: var(--np-spacing-md, 1rem);
    background: var(--np-color-surface, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-radius: var(--np-radius-xl, 1.25rem);
}

.np-product-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    gap: clamp(var(--np-spacing-xl, 2rem), 5vw, var(--np-spacing-3xl, 4rem));
    align-items: start;
}

.np-product-gallery-layout {
    min-width: 0;
}

.np-product-summary-layout {
    min-width: 0;
}

.np-product-summary-layout.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-cart-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
    gap: var(--np-grid-gap, 1.5rem);
    align-items: start;
}

.np-cart-main {
    min-width: 0;
}

.np-cart-totals {
    min-width: 0;
}

.np-cart-totals.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-checkout-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
    gap: var(--np-grid-gap, 1.5rem);
    align-items: start;
}

.np-checkout-main {
    min-width: 0;
}

.np-checkout-order {
    min-width: 0;
}

.np-checkout-order.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-account-layout {
    display: grid;
    grid-template-columns: minmax(240px, var(--np-account-sidebar-width, 280px)) minmax(0, 1fr);
    gap: var(--np-grid-gap, 1.5rem);
    align-items: start;
}

.np-account-navigation {
    min-width: 0;
}

.np-account-navigation.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-account-content {
    min-width: 0;
}

.np-seller-layout {
    display: grid;
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
    gap: var(--np-grid-gap, 1.5rem);
    align-items: start;
}

.np-seller-sidebar {
    min-width: 0;
}

.np-seller-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-seller-main {
    min-width: 0;
}

.np-service-layout {
    display: grid;
    gap: var(--np-spacing-xl, 2rem);
}

.np-service-layout.has-sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
    align-items: start;
}

.np-service-main {
    min-width: 0;
}

.np-service-sidebar {
    min-width: 0;
}

.np-service-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-dashboard-layout {
    display: grid;
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
    gap: var(--np-grid-gap, 1.5rem);
    align-items: start;
}

.np-dashboard-sidebar {
    min-width: 0;
}

.np-dashboard-sidebar.is-sticky {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
}

.np-dashboard-main {
    min-width: 0;
}

.np-dashboard-header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--np-spacing-md, 1rem);
    margin-block-end: var(--np-spacing-xl, 2rem);
}

.np-dashboard-title {
    margin: 0;
    color: var(--np-color-heading, #0f172a);
    font-family: var(--np-heading-font-family, Tahoma, Arial, sans-serif);
    font-size: var(--np-font-size-3xl, 1.875rem);
    font-weight: var(--np-font-weight-black, 900);
    line-height: var(--np-line-height-tight, 1.3);
}

.np-dashboard-description {
    margin: var(--np-spacing-xs, 0.5rem) 0 0;
    color: var(--np-color-text-muted, #64748b);
    font-size: var(--np-font-size-md, 1rem);
    line-height: var(--np-line-height-normal, 1.75);
}

.np-dashboard-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: var(--np-spacing-sm, 0.75rem);
}

.np-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
    gap: var(--np-grid-gap, 1.5rem);
}

.np-dashboard-section {
    display: grid;
    gap: var(--np-spacing-lg, 1.5rem);
}

.np-dashboard-section + .np-dashboard-section {
    margin-block-start: var(--np-spacing-xl, 2rem);
}

.np-sticky-top {
    position: sticky;
    top: calc(var(--np-header-height, 88px) + var(--np-admin-offset, 0px) + var(--np-spacing-lg, 1.5rem));
    z-index: var(--np-z-index-sticky, 100);
}

.np-sticky-bottom {
    position: sticky;
    bottom: var(--np-spacing-lg, 1.5rem);
    z-index: var(--np-z-index-sticky, 100);
}

.np-fixed-top {
    position: fixed;
    inset-block-start: var(--np-admin-offset, 0px);
    inset-inline: 0;
    z-index: var(--np-z-index-header, 200);
}

.np-fixed-bottom {
    position: fixed;
    inset-block-end: 0;
    inset-inline: 0;
    z-index: var(--np-z-index-sticky, 100);
}

.np-overlay-layout {
    position: fixed;
    inset: 0;
    z-index: var(--np-z-index-overlay, 500);
    display: grid;
    place-items: center;
    padding: var(--np-container-padding, 2rem);
    background: var(--np-overlay-background, rgba(15, 23, 42, 0.62));
}

.np-modal-layout {
    position: relative;
    width: min(100%, var(--np-modal-width-md, 640px));
    max-height: calc(100vh - (var(--np-container-padding, 2rem) * 2));
    overflow: auto;
    background: var(--np-modal-background, #ffffff);
    border-radius: var(--np-modal-radius, 2rem);
    box-shadow: var(--np-modal-shadow, 0 36px 100px rgba(15, 23, 42, 0.18));
}

.np-offcanvas-layout {
    position: fixed;
    inset-block: 0;
    inset-inline-start: 0;
    z-index: var(--np-z-index-modal, 1000);
    width: var(--np-offcanvas-width, min(88vw, 420px));
    max-width: 100%;
    overflow-y: auto;
    background: var(--np-offcanvas-background, #ffffff);
    color: var(--np-offcanvas-color, #334155);
    box-shadow: var(--np-offcanvas-shadow, 0 36px 100px rgba(15, 23, 42, 0.18));
}

.np-offcanvas-layout.is-end {
    inset-inline-start: auto;
    inset-inline-end: 0;
}

.np-layout-scroll-area {
    overflow: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.np-layout-scroll-x {
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}

.np-layout-scroll-y {
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-block: contain;
    -webkit-overflow-scrolling: touch;
}

.np-layout-cover {
    position: relative;
    display: grid;
    place-items: center;
    min-height: var(--np-layout-cover-height, 100vh);
    padding: var(--np-layout-cover-padding, var(--np-section-padding-y, 4rem) var(--np-container-padding, 2rem));
    overflow: hidden;
}

.np-layout-cover-content {
    position: relative;
    z-index: var(--np-z-index-content, 10);
    width: 100%;
    max-width: var(--np-container-content, 960px);
    margin-inline: auto;
}

.np-layout-cover-background {
    position: absolute;
    inset: 0;
    z-index: var(--np-z-index-negative, -1);
}

.np-layout-cover-background img,
.np-layout-cover-background video,
.np-layout-cover-background iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.np-layout-cover-overlay {
    position: absolute;
    inset: 0;
    z-index: var(--np-z-index-base, 1);
    background: var(--np-overlay-background, rgba(15, 23, 42, 0.62));
}

.np-layout-cover-content {
    z-index: var(--np-z-index-content, 10);
}

.np-layout-empty {
    display: grid;
    place-items: center;
    min-height: var(--np-layout-empty-min-height, 320px);
    padding: var(--np-spacing-2xl, 3rem);
    background: var(--np-color-surface, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-style: dashed;
    border-radius: var(--np-radius-3xl, 2rem);
    color: var(--np-color-text-muted, #64748b);
    text-align: center;
}

.np-layout-empty-content {
    display: grid;
    gap: var(--np-spacing-md, 1rem);
    max-width: 520px;
    margin-inline: auto;
}

.np-layout-empty-title {
    margin: 0;
    color: var(--np-color-heading, #0f172a);
    font-family: var(--np-heading-font-family, Tahoma, Arial, sans-serif);
    font-size: var(--np-font-size-2xl, 1.5rem);
    font-weight: var(--np-font-weight-black, 900);
    line-height: var(--np-line-height-tight, 1.3);
}

.np-layout-empty-description {
    margin: 0;
    color: var(--np-color-text-muted, #64748b);
    line-height: var(--np-line-height-relaxed, 1.9);
}

.np-layout-loading {
    position: relative;
    min-height: var(--np-layout-loading-min-height, 240px);
    pointer-events: none;
}

.np-layout-loading::before {
    position: absolute;
    inset: 0;
    z-index: var(--np-z-index-content, 10);
    background: rgba(255, 255, 255, 0.64);
    backdrop-filter: blur(4px);
    content: "";
}

.np-layout-loading::after {
    position: absolute;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    z-index: calc(var(--np-z-index-content, 10) + 1);
    width: 2rem;
    height: 2rem;
    margin-block-start: -1rem;
    margin-inline-start: -1rem;
    border: 3px solid var(--np-loader-track-color, #eef2ff);
    border-block-start-color: var(--np-loader-color, #4f46e5);
    border-radius: var(--np-radius-circle, 50%);
    animation: np-layout-spin 700ms linear infinite;
    content: "";
}

[dir="rtl"] .np-layout-loading::after,
.rtl .np-layout-loading::after {
    margin-inline-start: 0;
    margin-inline-end: -1rem;
}

.np-safe-bottom {
    padding-block-end: max(var(--np-spacing-md, 1rem), env(safe-area-inset-bottom));
}

.np-safe-top {
    padding-block-start: max(var(--np-spacing-md, 1rem), env(safe-area-inset-top));
}

.np-safe-inline {
    padding-inline-start: max(var(--np-container-padding, 2rem), env(safe-area-inset-left));
    padding-inline-end: max(var(--np-container-padding, 2rem), env(safe-area-inset-right));
}

.np-layout-zebra > :nth-child(even) {
    background: var(--np-color-background-soft, #f1f5f9);
}

.np-layout-zebra > :nth-child(odd) {
    background: var(--np-color-background, #f8fafc);
}

.np-layout-divider > * + * {
    border-block-start: var(--np-border, 1px solid #e2e8f0);
}

.np-layout-separated > * + * {
    margin-block-start: var(--np-spacing-xl, 2rem);
}

.np-layout-overlap-top {
    margin-block-start: calc(var(--np-layout-overlap, 4rem) * -1);
    position: relative;
    z-index: var(--np-z-index-content, 10);
}

.np-layout-overlap-bottom {
    margin-block-end: calc(var(--np-layout-overlap, 4rem) * -1);
    position: relative;
    z-index: var(--np-z-index-content, 10);
}

.np-layout-equal-height {
    align-items: stretch;
}

.np-layout-equal-height > * {
    height: 100%;
}

.np-layout-sidebar-card {
    padding: var(--np-sidebar-padding, 1.5rem);
    background: var(--np-sidebar-background, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-color: var(--np-sidebar-border-color, #e2e8f0);
    border-radius: var(--np-sidebar-radius, 1.5rem);
}

.np-layout-nav-rail {
    display: grid;
    gap: var(--np-spacing-xs, 0.5rem);
    padding: var(--np-spacing-sm, 0.75rem);
    background: var(--np-color-surface, #ffffff);
    border: var(--np-border, 1px solid #e2e8f0);
    border-radius: var(--np-radius-2xl, 1.5rem);
}

.np-layout-nav-rail a,
.np-layout-nav-rail button {
    display: flex;
    align-items: center;
    gap: var(--np-spacing-sm, 0.75rem);
    min-height: 2.75rem;
    padding-inline: var(--np-spacing-md, 1rem);
    border-radius: var(--np-radius-lg, 1rem);
    color: var(--np-color-text, #334155);
    font-weight: var(--np-font-weight-bold, 700);
    text-decoration: none;
}

.np-layout-nav-rail a:hover,
.np-layout-nav-rail a:focus,
.np-layout-nav-rail button:hover,
.np-layout-nav-rail button:focus,
.np-layout-nav-rail .is-active,
.np-layout-nav-rail [aria-current="page"] {
    background: var(--np-color-primary-soft, #eef2ff);
    color: var(--np-color-primary, #4f46e5);
}

.np-layout-dark {
    background: var(--np-gradient-dark, linear-gradient(135deg, #0f172a 0%, #1e293b 100%));
    color: var(--np-color-white, #ffffff);
}

.np-layout-dark :where(h1, h2, h3, h4, h5, h6, .np-layout-panel-title, .np-dashboard-title, .np-page-title, .np-error-title, .np-layout-empty-title) {
    color: var(--np-color-white, #ffffff);
}

.np-layout-dark :where(p, li, dd, .np-page-description, .np-dashboard-description, .np-layout-panel-description, .np-layout-empty-description) {
    color: rgba(255, 255, 255, 0.78);
}

.np-layout-dark .np-layout-frame,
.np-layout-dark .np-layout-panel,
.np-layout-dark .np-layout-sidebar-card,
.np-layout-dark .np-layout-nav-rail {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.12);
}

.np-layout-dark .np-layout-panel-footer,
.np-layout-dark .np-layout-divider > * + * {
    border-color: rgba(255, 255, 255, 0.12);
}

.np-layout-dark .np-layout-nav-rail a,
.np-layout-dark .np-layout-nav-rail button {
    color: rgba(255, 255, 255, 0.82);
}

.np-layout-dark .np-layout-nav-rail a:hover,
.np-layout-dark .np-layout-nav-rail a:focus,
.np-layout-dark .np-layout-nav-rail button:hover,
.np-layout-dark .np-layout-nav-rail button:focus,
.np-layout-dark .np-layout-nav-rail .is-active,
.np-layout-dark .np-layout-nav-rail [aria-current="page"] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--np-color-white, #ffffff);
}

@keyframes np-layout-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 1200px) {
    .np-layout-with-sidebar,
    .np-layout-with-sidebar.is-sidebar-start,
    .np-archive-layout.has-sidebar,
    .np-archive-layout.has-sidebar-start,
    .np-single-layout.has-sidebar,
    .np-blog-layout.has-sidebar,
    .np-search-layout.has-sidebar,
    .np-service-layout.has-sidebar {
        grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
    }

    .np-layout-with-sidebar.is-sidebar-start,
    .np-archive-layout.has-sidebar-start {
        grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
    }

    .np-product-layout {
        grid-template-columns: minmax(0, 1fr) minmax(300px, 0.9fr);
    }

    .np-checkout-layout,
    .np-cart-layout {
        grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    }
}

@media (max-width: 1024px) {
    .np-layout-with-sidebar,
    .np-layout-with-sidebar.is-sidebar-start,
    .np-archive-layout.has-sidebar,
    .np-archive-layout.has-sidebar-start,
    .np-single-layout.has-sidebar,
    .np-blog-layout.has-sidebar,
    .np-search-layout.has-sidebar,
    .np-shop-layout.has-sidebar,
    .np-shop-layout.has-sidebar-end,
    .np-product-layout,
    .np-cart-layout,
    .np-checkout-layout,
    .np-account-layout,
    .np-seller-layout,
    .np-service-layout.has-sidebar,
    .np-dashboard-layout,
    .np-layout-split,
    .np-layout-split.is-reverse {
        grid-template-columns: 1fr;
    }

    .np-layout-with-sidebar.is-sidebar-start .np-layout-content,
    .np-archive-layout.has-sidebar-start .np-archive-main,
    .np-layout-split.is-reverse > :first-child {
        order: initial;
    }

    .np-layout-with-sidebar.is-sidebar-start .np-layout-sidebar,
    .np-archive-layout.has-sidebar-start .np-archive-sidebar,
    .np-layout-split.is-reverse > :last-child {
        order: initial;
    }

    .np-layout-sidebar.is-sticky,
    .np-archive-sidebar.is-sticky,
    .np-single-sidebar.is-sticky,
    .np-blog-sidebar.is-sticky,
    .np-shop-sidebar.is-sticky,
    .np-product-summary-layout.is-sticky,
    .np-cart-totals.is-sticky,
    .np-checkout-order.is-sticky,
    .np-account-navigation.is-sticky,
    .np-seller-sidebar.is-sticky,
    .np-service-sidebar.is-sticky,
    .np-dashboard-sidebar.is-sticky,
    .np-sticky-top {
        position: relative;
        top: auto;
    }

    .np-page-header.is-split {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .np-page-header-actions {
        justify-content: flex-start;
    }

    .np-dashboard-header {
        display: grid;
    }

    .np-dashboard-actions {
        justify-content: flex-start;
    }

    .np-layout-panel-header {
        display: grid;
    }

    .np-layout-panel-actions {
        justify-content: flex-start;
    }

    .np-layout-cover {
        min-height: auto;
    }
}

@media (max-width: 782px) {
    .np-page-layout {
        padding-block: var(--np-section-padding-y, 3rem);
    }

    .np-page-layout.is-compact {
        padding-block: 2.5rem;
    }

    .np-page-layout.is-spacious {
        padding-block: 4rem;
    }

    .np-layout-frame,
    .np-layout-frame.is-compact,
    .np-layout-frame.is-large,
    .np-layout-panel,
    .np-layout-sidebar-card {
        padding: var(--np-card-padding, 1.25rem);
        border-radius: var(--np-card-radius, 1.25rem);
    }

    .np-layout-panel-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .np-page-header {
        margin-block-end: var(--np-spacing-xl, 2rem);
    }

    .np-page-description {
        font-size: var(--np-font-size-md, 1rem);
    }

    .np-page-header-actions,
    .np-dashboard-actions,
    .np-error-actions,
    .np-archive-toolbar,
    .np-shop-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .np-page-header-actions > *,
    .np-dashboard-actions > *,
    .np-error-actions > *,
    .np-archive-toolbar > *,
    .np-shop-toolbar > * {
        width: 100%;
    }

    .np-archive-toolbar-start,
    .np-archive-toolbar-end {
        width: 100%;
        justify-content: space-between;
    }

    .np-single-featured {
        border-radius: var(--np-radius-2xl, 1.5rem);
    }

    .np-error-layout {
        min-height: auto;
        padding-block: 4rem;
    }

    .np-error-code {
        font-size: clamp(4.5rem, 28vw, 8rem);
    }

    .np-error-title {
        font-size: var(--np-font-size-3xl, 1.875rem);
    }

    .np-error-description {
        font-size: var(--np-font-size-md, 1rem);
    }

    .np-modal-layout {
        width: calc(100vw - 2rem);
        max-height: calc(100vh - 2rem);
    }

    .np-overlay-layout {
        padding: var(--np-spacing-md, 1rem);
    }

    .np-offcanvas-layout {
        width: min(92vw, 390px);
    }

    .np-layout-empty {
        min-height: 280px;
        padding: var(--np-spacing-xl, 2rem);
        border-radius: var(--np-radius-2xl, 1.5rem);
    }

    .np-layout-overlap-top,
    .np-layout-overlap-bottom {
        margin-block-start: 0;
        margin-block-end: 0;
    }

    .np-sticky-bottom {
        position: relative;
        bottom: auto;
    }
}

@media (max-width: 480px) {
    .np-page-layout {
        padding-block: 2.5rem;
    }

    .np-layout-frame,
    .np-layout-frame.is-compact,
    .np-layout-frame.is-large,
    .np-layout-panel,
    .np-layout-sidebar-card {
        padding: var(--np-card-padding, 1rem);
        border-radius: var(--np-radius-xl, 1.25rem);
    }

    .np-layout-panel {
        gap: var(--np-spacing-md, 1rem);
    }

    .np-layout-panel-title {
        font-size: var(--np-font-size-lg, 1.125rem);
    }

    .np-dashboard-title {
        font-size: var(--np-font-size-2xl, 1.5rem);
    }

    .np-archive-toolbar,
    .np-shop-toolbar {
        padding: var(--np-spacing-sm, 0.75rem);
        border-radius: var(--np-radius-lg, 1rem);
    }

    .np-single-featured {
        border-radius: var(--np-radius-xl, 1.25rem);
    }

    .np-layout-empty {
        padding: var(--np-spacing-lg, 1.5rem);
        border-radius: var(--np-radius-xl, 1.25rem);
    }

    .np-modal-layout {
        width: calc(100vw - 1rem);
        max-height: calc(100vh - 1rem);
        border-radius: var(--np-radius-2xl, 1.5rem);
    }

    .np-overlay-layout {
        padding: var(--np-spacing-xs, 0.5rem);
    }

    .np-offcanvas-layout {
        width: min(94vw, 360px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .np-layout-loading::after {
        animation: none !important;
    }
}

@media print {
    .np-site,
    .site,
    #page,
    .wp-site-blocks,
    .np-main,
    .site-main,
    #primary,
    .wp-site-main,
    .np-page-layout,
    .np-layout,
    .np-layout-default,
    .np-layout-with-sidebar,
    .np-layout-with-sidebar.is-sidebar-start,
    .np-archive-layout,
    .np-single-layout,
    .np-blog-layout,
    .np-search-layout,
    .np-shop-layout,
    .np-product-layout,
    .np-cart-layout,
    .np-checkout-layout,
    .np-account-layout,
    .np-seller-layout,
    .np-service-layout,
    .np-dashboard-layout {
        display: block !important;
        min-height: 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        color: #000000 !important;
        box-shadow: none !important;
    }

    .np-layout-sidebar,
    .np-archive-sidebar,
    .np-single-sidebar,
    .np-blog-sidebar,
    .np-search-sidebar,
    .np-shop-sidebar,
    .np-account-navigation,
    .np-seller-sidebar,
    .np-service-sidebar,
    .np-dashboard-sidebar,
    .np-offcanvas-layout,
    .np-modal-layout,
    .np-overlay-layout,
    .np-fixed-top,
    .np-fixed-bottom,
    .np-sticky-top,
    .np-sticky-bottom {
        position: static !important;
        display: none !important;
    }

    .np-layout-frame,
    .np-layout-panel,
    .np-layout-sidebar-card,
    .np-archive-toolbar,
    .np-shop-toolbar,
    .np-layout-empty {
        padding: 0 !important;
        background: #ffffff !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    .np-page-header,
    .np-dashboard-header,
    .np-single-header,
    .np-archive-header {
        margin-block-end: 1rem !important;
    }

    .np-layout-loading::before,
    .np-layout-loading::after,
    .np-layout-cover-background,
    .np-layout-cover-overlay {
        display: none !important;
    }
}