/*
  Final visual rewrite layer.
  Purpose: one predictable ecommerce/admin UI language loaded after all older CSS.
  Scope: design only. No behavior, data, or layout logic is changed here.
*/
:root {
    --dr-bg: #f3f4f6;
    --dr-bg-2: #fafafa;
    --dr-surface: #ffffff;
    --dr-surface-2: #f7f8fa;
    --dr-surface-3: #eef2f6;
    --dr-text: #22242a;
    --dr-muted: #6b7280;
    --dr-soft: #8b929e;
    --dr-border: #e5e7eb;
    --dr-border-2: #d7dbe2;
    --dr-accent: var(--site-accent, #ef394e);
    --dr-accent-rgb: var(--site-accent-rgb, 239 57 78);
    --dr-accent-soft: rgb(var(--dr-accent-rgb) / .09);
    --dr-info: #19bfd3;
    --dr-success: #00a049;
    --dr-warning: #f9a825;
    --dr-danger: var(--danger, var(--site-accent, #ef394e));
    --dr-radius: 8px;
    --dr-radius-sm: 6px;
    --dr-shadow: 0 1px 2px rgb(15 23 42 / .04);
    --dr-shadow-lift: 0 10px 26px rgb(15 23 42 / .08);
    --dr-focus: 0 0 0 3px rgb(var(--dr-accent-rgb) / .16);
    --dr-container: 1440px;
    --dr-gap: 16px;
}

:root[data-theme="dark"],
html[data-theme="dark"] {
    --dr-bg: #11151d;
    --dr-bg-2: #171b24;
    --dr-surface: #1d2330;
    --dr-surface-2: #222938;
    --dr-surface-3: #161b25;
    --dr-text: #f3f4f6;
    --dr-muted: #c0c6d0;
    --dr-soft: #9aa3b2;
    --dr-border: rgba(255, 255, 255, .10);
    --dr-border-2: rgba(255, 255, 255, .18);
    --dr-shadow: 0 1px 2px rgb(0 0 0 / .20);
    --dr-shadow-lift: 0 14px 30px rgb(0 0 0 / .28);
}

html {
    font-size: 15px !important;
    scroll-padding-top: 112px;
}

body {
    margin: 0 !important;
    background: linear-gradient(180deg, var(--dr-bg-2), var(--dr-bg)) !important;
    color: var(--dr-text) !important;
    font-family: "Vazirmatn", "IRANSansX", "IRANSans", "Segoe UI", Tahoma, Arial, sans-serif !important;
    line-height: 1.75 !important;
    letter-spacing: 0 !important;
    overflow-x: hidden !important;
}

body,
button,
input,
textarea,
select {
    font-family: inherit !important;
}

* {
    min-width: 0;
}

a {
    color: inherit;
    text-decoration: none !important;
}

a:hover {
    color: var(--dr-accent);
}

img {
    max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
.hero-title,
.dashboard-title,
.dk-brand__name,
.brand-block__name,
.section-heading h1,
.section-heading h2,
.section-heading h3 {
    color: var(--dr-text) !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1.45 !important;
}

p,
.text-muted,
.small,
small,
.hero-subtitle,
.section-subtitle,
.settings-panel__subtitle {
    color: var(--dr-muted) !important;
}

:focus-visible {
    outline: none !important;
    box-shadow: var(--dr-focus) !important;
}

.page-frame {
    width: min(100% - 28px, var(--dr-container)) !important;
    margin-inline: auto !important;
}

.dk-main,
.shell-main {
    padding: 22px 0 42px !important;
}

.page-section {
    margin-top: 24px !important;
}

.section-heading {
    display: flex !important;
    align-items: end !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin-bottom: 14px !important;
}

.section-kicker {
    color: var(--dr-accent) !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

.hero-title {
    font-size: 2.45rem !important;
}

.hero-subtitle {
    max-width: 68ch !important;
    font-size: 1rem !important;
}

/* Header */
.dk-header {
    background: var(--dr-surface) !important;
    border-bottom: 1px solid var(--dr-border) !important;
    box-shadow: 0 1px 0 rgb(15 23 42 / .03) !important;
}

.dk-header__topline {
    height: 3px !important;
    background: linear-gradient(90deg, var(--dr-accent), color-mix(in srgb, var(--dr-accent) 68%, var(--dr-surface)), color-mix(in srgb, var(--dr-accent) 44%, var(--dr-surface))) !important;
}

.dk-header__inner {
    min-height: 68px !important;
    grid-template-columns: auto minmax(280px, 1fr) auto !important;
    gap: 16px !important;
}

.dk-brand__logo,
.brand-block__logo {
    width: 44px !important;
    height: 44px !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
    border: 1px solid var(--dr-border) !important;
    box-shadow: none !important;
}

.dk-brand__name,
.brand-block__name {
    font-size: 1.12rem !important;
}

.dk-brand__tagline,
.brand-block__tagline {
    color: var(--dr-soft) !important;
    font-size: .76rem !important;
}

.dk-search {
    height: 44px !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
    border: 1px solid var(--dr-border) !important;
    box-shadow: none !important;
}

.dk-search:focus-within {
    background: var(--dr-surface) !important;
    border-color: rgb(var(--dr-accent-rgb) / .45) !important;
    box-shadow: var(--dr-focus) !important;
}

.dk-navbar {
    height: 40px !important;
    border-top: 1px solid var(--dr-border) !important;
}

.dk-nav-chip,
.nav-chip {
    height: 34px !important;
    border-radius: var(--dr-radius-sm) !important;
    color: var(--dr-muted) !important;
    font-weight: 800 !important;
    padding-inline: 10px !important;
}

.dk-nav-chip:hover,
.nav-chip:hover,
.nav-chip.active {
    background: var(--dr-accent-soft) !important;
    color: var(--dr-accent) !important;
}

.icon-button,
.dk-icon-button,
.header-action {
    min-height: 40px !important;
    border-radius: var(--dr-radius) !important;
    border: 1px solid var(--dr-border) !important;
    background: var(--dr-surface) !important;
    color: var(--dr-text) !important;
    box-shadow: none !important;
}

.icon-button,
.dk-icon-button {
    width: 40px !important;
    height: 40px !important;
}

.header-action:hover,
.icon-button:hover,
.dk-icon-button:hover {
    background: var(--dr-accent-soft) !important;
    color: var(--dr-accent) !important;
    border-color: rgb(var(--dr-accent-rgb) / .34) !important;
    transform: none !important;
}

/* Cards, buttons, forms */
.page-card,
.card,
.product-card,
.blog-card,
.category-card,
.favorite-card,
.shop-card,
.feature-card,
.content-card,
.settings-panel,
.contact-panel,
.payment-card,
.admin-metric-card,
.blog-admin-form-card,
.preview-panel,
.address-card,
.address-editor-card,
.comment-card,
.cms-page-body,
.cms-page-hero {
    background: var(--dr-surface) !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    box-shadow: var(--dr-shadow) !important;
    overflow: hidden;
}

.page-card:hover,
.card:hover,
.product-card:hover,
.blog-card:hover,
.category-card:hover,
.favorite-card:hover,
.feature-card:hover,
.content-card:hover,
.settings-panel:hover,
.admin-metric-card:hover {
    border-color: var(--dr-border-2) !important;
    box-shadow: var(--dr-shadow-lift) !important;
    transform: none !important;
}

.page-card .page-card,
.settings-panel .page-card,
.page-card .settings-panel,
.page-card .feature-card,
.settings-panel .feature-card {
    background: var(--dr-surface-2) !important;
    box-shadow: none !important;
}

.btn {
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    border-radius: var(--dr-radius) !important;
    padding: .5rem .85rem !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    transform: none !important;
}

.btn:hover {
    transform: none !important;
    box-shadow: none !important;
}

.btn-sm {
    min-height: 34px !important;
    padding: .36rem .62rem !important;
    font-size: .82rem !important;
}

.btn-lg {
    min-height: 46px !important;
    padding: .66rem 1rem !important;
}

.btn-primary {
    background: var(--dr-accent) !important;
    border-color: var(--dr-accent) !important;
    color: #fff !important;
}

.btn-outline-primary {
    background: var(--dr-surface) !important;
    border-color: rgb(var(--dr-accent-rgb) / .42) !important;
    color: var(--dr-accent) !important;
}

.btn-outline-primary:hover {
    background: var(--dr-accent-soft) !important;
    color: var(--dr-accent) !important;
}

.btn-outline-secondary,
.btn-outline-dark,
.btn-outline-success,
.btn-outline-warning,
.btn-outline-danger,
.btn-light,
.btn-ghost {
    background: var(--dr-surface) !important;
    border-color: var(--dr-border) !important;
    color: var(--dr-text) !important;
}

.btn-outline-danger {
    color: var(--dr-danger) !important;
}

.btn:disabled,
.btn.disabled,
button:disabled {
    opacity: .55 !important;
    cursor: not-allowed !important;
}

.form-control,
.form-select,
textarea,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="search"],
select {
    width: 100%;
    min-height: 44px !important;
    border-radius: var(--dr-radius) !important;
    border: 1px solid var(--dr-border) !important;
    background: var(--dr-surface) !important;
    color: var(--dr-text) !important;
    padding: .58rem .72rem !important;
    box-shadow: none !important;
}

textarea.form-control,
textarea {
    min-height: 96px !important;
    line-height: 1.85 !important;
    resize: vertical;
}

.form-control:focus,
.form-select:focus,
textarea:focus,
input:focus,
select:focus {
    border-color: rgb(var(--dr-accent-rgb) / .45) !important;
    box-shadow: var(--dr-focus) !important;
    outline: 0 !important;
}

.form-label {
    display: block;
    margin-bottom: 6px !important;
    color: var(--dr-muted) !important;
    font-size: .84rem !important;
    font-weight: 900 !important;
}

.form-check {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.form-check-input {
    accent-color: var(--dr-accent);
}

.badge,
.status-pill,
.chip-soft,
.filter-chip {
    min-height: 26px;
    border-radius: 999px !important;
    padding: .26rem .58rem !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
}

.text-bg-primary,
.badge.text-bg-primary {
    color: #fff !important;
    background: var(--dr-accent) !important;
}

.text-bg-secondary,
.text-bg-light {
    color: var(--dr-muted) !important;
    background: var(--dr-surface-2) !important;
    border: 1px solid var(--dr-border) !important;
}

.text-bg-success {
    color: #fff !important;
    background: var(--dr-success) !important;
}

.text-bg-warning {
    color: #2d2400 !important;
    background: var(--dr-warning) !important;
}

.text-bg-danger {
    color: #fff !important;
    background: var(--dr-danger) !important;
}

.alert {
    border-radius: var(--dr-radius) !important;
    border: 1px solid var(--dr-border) !important;
    padding: 12px 14px !important;
}

.table-responsive {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
}

.table {
    width: 100%;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.table th,
.table td {
    padding: 11px 12px !important;
    border-bottom: 1px solid var(--dr-border) !important;
    vertical-align: middle !important;
}

.table th {
    background: var(--dr-surface-2) !important;
    color: var(--dr-muted) !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.table tr:last-child td {
    border-bottom: 0 !important;
}

/* Home and public pages */
.home-hero,
.hero,
.shop-hero,
.cart-hero,
.payment-hero,
.contact-hero,
.cms-page-hero,
.category-hero,
.admin-hero,
.account-hero-card,
.product-hero {
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
    border: 1px solid var(--dr-border) !important;
    box-shadow: var(--dr-shadow) !important;
    overflow: hidden !important;
}

.home-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 440px) !important;
    gap: 18px !important;
    align-items: stretch !important;
    padding: 22px !important;
}

.home-hero::before,
.shop-hero::before,
.admin-hero::before,
.account-hero-card::before {
    display: none !important;
}

.hero-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-top: 18px !important;
}

.hero-stats,
.stat-grid,
.shop-stats,
.home-stat-grid,
.payment-summary-grid,
.comment-summary-grid,
.admin-metric-grid,
.account-stat-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.stat-card,
.home-stat-card,
.trust-card,
.payment-summary-item,
.comment-summary-card,
.admin-metric-card,
.account-stat {
    padding: 13px !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
    border: 1px solid var(--dr-border) !important;
    box-shadow: none !important;
}

.hero-visual-card {
    min-height: 300px !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-3) !important;
    color: var(--dr-text) !important;
    overflow: hidden !important;
}

.hero-visual-card::before {
    display: none !important;
}

.hero-visual-card--image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.hero-visual-card__overlay {
    inset: auto 12px 12px 12px !important;
    border-radius: var(--dr-radius) !important;
    background: rgb(17 24 39 / .78) !important;
    backdrop-filter: blur(10px);
}

.content-grid,
.feature-grid,
.category-grid,
.blog-grid,
.favorite-grid {
    display: grid !important;
    gap: 14px !important;
}

.content-grid,
.feature-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
}

.category-grid {
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
}

.blog-grid,
.favorite-grid {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
}

.shop-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
    gap: 12px !important;
}

.shop-grid > .product-card,
.shop-grid > .product-card:nth-child(n) {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 0 !important;
}

.product-card,
.shop-card,
.blog-card,
.favorite-card {
    display: flex !important;
    flex-direction: column !important;
}

.product-card__media,
.shop-card__media {
    min-height: 190px !important;
    aspect-ratio: 1 / 1 !important;
    padding: 12px !important;
    display: grid !important;
    place-items: center !important;
    background: var(--dr-surface-2) !important;
}

.product-card__media::before,
.product-card__media::after,
.shop-card__media::before,
.shop-card__media::after {
    display: none !important;
}

.product-card__media > img,
.shop-card__media > img {
    width: 100% !important;
    height: 100% !important;
    max-width: 92% !important;
    max-height: 92% !important;
    object-fit: contain !important;
}

.product-card__body,
.shop-card__body,
.blog-card__body,
.favorite-card__body {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 13px !important;
}

.product-card__meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    min-height: 28px !important;
}

.product-card__title,
.product-card__title a,
.blog-card__body h3,
.blog-card__body h2 {
    color: var(--dr-text) !important;
    font-weight: 900 !important;
    line-height: 1.65 !important;
}

.product-card__title {
    min-height: auto !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.product-card__excerpt,
.blog-card p,
.category-card__text {
    color: var(--dr-muted) !important;
    line-height: 1.75 !important;
}

.product-card__excerpt {
    min-height: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.product-card__stock-row {
    margin-top: auto !important;
}

.product-card__footer,
.product-card__actions {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-top: 8px !important;
}

.product-card__price {
    display: grid !important;
    gap: 2px !important;
    color: var(--dr-text) !important;
    text-align: start !important;
}

.category-card {
    min-height: 92px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px !important;
}

.home-blog-carousel {
    overflow: hidden !important;
    border-radius: var(--dr-radius) !important;
}

.home-blog-track {
    gap: 12px !important;
}

.home-blog-card {
    flex: 0 0 320px !important;
    grid-template-rows: 150px minmax(0, 1fr) !important;
}

.home-blog-card__body {
    padding: 13px !important;
}

/* Admin layout */
.admin-main {
    background: var(--dr-bg) !important;
}

.admin-main .page-frame {
    width: min(100% - 28px, 1500px) !important;
}

.admin-main .page-card,
.admin-main .settings-panel,
.admin-main .card,
.admin-main .feature-card,
.admin-main .blog-admin-form-card,
.admin-main .admin-ticket-card {
    border-radius: var(--dr-radius) !important;
    box-shadow: var(--dr-shadow) !important;
}

.admin-main .page-card.p-3,
.admin-main .page-card.p-4,
.admin-main .settings-panel.p-3,
.admin-main .settings-panel.p-4,
.admin-main .admin-ticket-card {
    padding: 16px !important;
}

.admin-main .page-frame > .row.g-4 {
    display: grid !important;
    grid-template-columns: minmax(320px, .42fr) minmax(0, .58fr) !important;
    gap: 16px !important;
    align-items: start !important;
    margin: 0 !important;
}

.admin-main .page-frame > .row.g-4 > [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.admin-main .row.g-3 {
    --bs-gutter-x: 12px !important;
    --bs-gutter-y: 12px !important;
}

.admin-main .d-grid.gap-2,
.admin-main .d-grid.gap-3,
.admin-main .list-group,
.admin-main .dashboard-list,
.admin-main .address-list-stack {
    gap: 10px !important;
}

.admin-main .border.rounded-4,
.admin-main .list-group-item,
.admin-main .list-group-item-action,
.admin-main .admin-list-row {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
    box-shadow: none !important;
}

.admin-main .border.rounded-4.bg-white {
    background: var(--dr-surface) !important;
}

.admin-main .btn-group {
    display: inline-flex !important;
    gap: 6px !important;
}

.admin-main .btn-group .btn {
    border-radius: var(--dr-radius) !important;
}

.admin-main .table {
    min-width: 760px;
}

.admin-main .table-responsive {
    max-width: 100%;
}

.admin-main .form-control,
.admin-main .form-select {
    min-height: 42px !important;
}

.admin-main textarea.form-control {
    min-height: 104px !important;
}

.admin-main .ratio,
.admin-main .ratio-1x1 {
    aspect-ratio: 1 / 1;
    display: grid;
}

.admin-main .ratio img,
.admin-main .ratio-1x1 img {
    border-radius: var(--dr-radius) !important;
}

.admin-main .blog-admin-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
}

.admin-main .blog-admin-layout > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.1fr) minmax(400px, .9fr) !important;
    gap: 16px !important;
    align-items: start !important;
    margin: 0 !important;
}

.admin-main .blog-admin-layout > .row > [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.admin-main .blog-admin-form-card {
    position: sticky !important;
    top: 100px !important;
}

/* CMS and writing tools */
.cms-manager-grid {
    display: grid !important;
    grid-template-columns: minmax(260px, 330px) minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: start !important;
}

.cms-page-picker,
.cms-empty-editor,
.cms-editor-panel,
.cms-preview-card {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
    box-shadow: var(--dr-shadow) !important;
}

.cms-page-picker {
    position: sticky !important;
    top: 100px !important;
    padding: 12px !important;
}

.cms-page-picker-grid {
    display: grid !important;
    gap: 8px !important;
    max-height: calc(100dvh - 260px) !important;
    overflow: auto !important;
}

.cms-page-select {
    min-height: 104px !important;
    display: grid !important;
    gap: 5px !important;
    align-content: start !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
    color: var(--dr-text) !important;
    padding: 12px !important;
}

.cms-page-select:hover,
.cms-page-select--active {
    border-color: rgb(var(--dr-accent-rgb) / .36) !important;
    background: var(--dr-accent-soft) !important;
}

.cms-editor-panel {
    padding: 14px !important;
}

.cms-editor-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr) !important;
    gap: 14px !important;
    align-items: start !important;
}

.admin-form-grid {
    display: grid !important;
    gap: 12px !important;
}

.admin-form-grid--two {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.field-stack {
    display: grid !important;
    gap: 6px !important;
}

.writer-toolbar {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    padding: 8px !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
}

.writer-tool-button {
    min-height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius-sm) !important;
    background: var(--dr-surface) !important;
    color: var(--dr-text) !important;
    padding: 6px 9px !important;
    font-size: .8rem !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

.writer-tool-button:hover {
    border-color: rgb(var(--dr-accent-rgb) / .36) !important;
    color: var(--dr-accent) !important;
}

.writer-tool-button--file {
    margin: 0 !important;
}

.writer-tool-file {
    position: absolute !important;
    inset: 0 !important;
    opacity: 0 !important;
    cursor: pointer !important;
}

.cms-editor-shell__html,
.blog-content-editor {
    min-height: 320px !important;
    direction: ltr !important;
    text-align: left !important;
    font-family: Consolas, "Liberation Mono", monospace !important;
    font-size: .9rem !important;
}

.cms-preview-card {
    position: sticky !important;
    top: 100px !important;
    max-height: calc(100dvh - 124px) !important;
    overflow: auto !important;
    padding: 14px !important;
}

.cms-page-live-content,
.blog-article-content {
    line-height: 2 !important;
    overflow-wrap: anywhere !important;
}

.cms-page-live-content img,
.blog-article-content img {
    border-radius: var(--dr-radius) !important;
}

/* Tickets and contact */
.contact-support-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr) !important;
    gap: 16px !important;
    align-items: start !important;
}

.contact-form-card,
.contact-panel,
.contact-thread-card {
    padding: 16px !important;
}

.contact-support-grid__tickets .contact-panel {
    position: sticky !important;
    top: 100px !important;
}

.contact-ticket-list,
.admin-ticket-list {
    display: grid !important;
    gap: 8px !important;
    overflow: auto !important;
}

.contact-ticket-list__item,
.admin-ticket-list__item {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
    color: var(--dr-text) !important;
    padding: 12px !important;
    text-align: start !important;
}

.contact-ticket-list__item:hover,
.contact-ticket-list__item.active,
.admin-ticket-list__item:hover,
.admin-ticket-list__item.active {
    border-color: rgb(var(--dr-accent-rgb) / .36) !important;
    background: var(--dr-accent-soft) !important;
    color: var(--dr-text) !important;
}

.contact-ticket-thread,
.admin-ticket-message,
.admin-ticket-reply,
.contact-reply-item {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
    padding: 12px !important;
    overflow-wrap: anywhere !important;
}

.admin-ticket-workspace {
    display: grid !important;
    grid-template-columns: minmax(320px, 390px) minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: start !important;
}

.admin-ticket-workspace__list {
    position: sticky !important;
    top: 100px !important;
}

.admin-ticket-card--list {
    max-height: calc(100dvh - 124px) !important;
    display: grid !important;
    grid-template-rows: auto auto minmax(0, 1fr) !important;
}

.admin-ticket-filters {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) minmax(0, .85fr) !important;
    gap: 8px !important;
}

.admin-ticket-filters > * {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.admin-ticket-list {
    max-height: calc(100dvh - 280px) !important;
}

.admin-ticket-reply.is-admin {
    background: var(--dr-accent-soft) !important;
    border-color: rgb(var(--dr-accent-rgb) / .24) !important;
}

/* Product and article details */
.product-hero__layout,
.product-detail-layout {
    display: grid !important;
    grid-template-columns: minmax(320px, 420px) minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: start !important;
}

.product-media-shell,
.product-buybox,
.price-box,
.product-side {
    border-radius: var(--dr-radius) !important;
    border: 1px solid var(--dr-border) !important;
    background: var(--dr-surface) !important;
    box-shadow: var(--dr-shadow) !important;
}

.product-main-image {
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
}

.product-detail-content-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px) !important;
    gap: 16px !important;
    align-items: start !important;
}

.blog-article-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 350px) !important;
    gap: 16px !important;
    align-items: start !important;
}

.blog-article-main,
.blog-article-aside {
    border-radius: var(--dr-radius) !important;
    border: 1px solid var(--dr-border) !important;
    background: var(--dr-surface) !important;
    box-shadow: var(--dr-shadow) !important;
}

.blog-article-aside {
    position: sticky !important;
    top: 100px !important;
}

.blog-article-hero-media,
.blog-article-hero-image {
    border-radius: var(--dr-radius) !important;
    overflow: hidden !important;
}

.related-product-card {
    border-radius: var(--dr-radius) !important;
}

/* Footer */
.dk-footer,
.shell-footer {
    background: var(--dr-surface) !important;
    border-top: 1px solid var(--dr-border) !important;
}

.footer-trust__item,
.dk-footer-service {
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
    border-color: var(--dr-border) !important;
}

/* Utility fixes */
.bg-white,
.bg-light {
    background: var(--dr-surface) !important;
}

.rounded-4,
.rounded-3 {
    border-radius: var(--dr-radius) !important;
}

.shadow-sm {
    box-shadow: var(--dr-shadow) !important;
}

.text-truncate {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.object-fit-cover {
    object-fit: cover !important;
}

/* Responsive */
@media (max-width: 1199.98px) {
    body {
        padding-bottom: 64px;
    }

    .page-frame,
    .admin-main .page-frame {
        width: min(100% - 20px, var(--dr-container)) !important;
    }

    .dk-header__inner {
        grid-template-columns: auto 1fr !important;
        min-height: 62px !important;
    }

    .dk-header__inner > .dk-search {
        display: none !important;
    }

    .home-hero,
    .product-hero__layout,
    .product-detail-layout,
    .product-detail-content-grid,
    .blog-article-layout,
    .contact-support-grid,
    .admin-ticket-workspace,
    .cms-manager-grid,
    .cms-editor-layout,
    .admin-main .page-frame > .row.g-4,
    .admin-main .blog-admin-layout > .row {
        grid-template-columns: 1fr !important;
    }

    .contact-support-grid__tickets .contact-panel,
    .admin-ticket-workspace__list,
    .admin-main .blog-admin-form-card,
    .blog-article-aside,
    .cms-page-picker,
    .cms-preview-card {
        position: static !important;
        max-height: none !important;
    }

    .cms-page-picker-grid {
        max-height: none !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .hero-stats,
    .stat-grid,
    .shop-stats,
    .home-stat-grid,
    .payment-summary-grid,
    .comment-summary-grid,
    .admin-metric-grid,
    .account-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    html {
        font-size: 14px !important;
    }

    .page-frame,
    .admin-main .page-frame {
        width: min(100% - 14px, var(--dr-container)) !important;
    }

    .dk-main,
    .shell-main {
        padding-top: 12px !important;
    }

    .hero-title {
        font-size: 1.72rem !important;
    }

    .home-hero,
    .hero,
    .shop-hero,
    .cart-hero,
    .payment-hero,
    .contact-hero,
    .cms-page-hero,
    .category-hero,
    .admin-hero,
    .account-hero-card,
    .product-hero {
        padding: 14px !important;
    }

    .section-heading,
    .hero-actions,
    .admin-hero,
    .account-section-head,
    .cms-editor-panel__head,
    .cms-page-picker__head,
    .cms-preview-card__head {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .section-heading .btn,
    .hero-actions .btn,
    .admin-hero .btn,
    .account-section-head .btn,
    .admin-main .btn,
    .contact-support-grid .btn,
    .cms-editor-panel__head .btn {
        width: 100%;
    }

    .shop-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .product-card__media,
    .shop-card__media {
        min-height: 150px !important;
        padding: 8px !important;
    }

    .product-card__body,
    .shop-card__body,
    .blog-card__body,
    .favorite-card__body {
        padding: 10px !important;
    }

    .product-card__footer,
    .product-card__actions,
    .cart-item-card,
    .payment-line,
    .product-line,
    .dashboard-item,
    .admin-list-row,
    .contact-reply-item {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .product-card__footer .btn,
    .product-card__actions .btn {
        width: 100% !important;
    }

    .admin-form-grid--two,
    .cms-page-picker-grid,
    .admin-ticket-filters {
        grid-template-columns: 1fr !important;
    }

    .writer-tool-button {
        flex: 1 1 calc(50% - 6px) !important;
    }

    .home-blog-card {
        flex-basis: calc(100vw - 42px) !important;
    }

    .table {
        min-width: 680px;
    }
}

/* Full rebuild layer requested for home, shop, product, orders and admin orders */
.home-rebuild,
.shop-rebuild,
.product-rebuild-active,
.orders-rebuild,
.admin-orders-rebuild {
    --rb-gap: 18px;
    --rb-border: var(--dr-border);
    --rb-panel: var(--dr-surface);
    --rb-soft: var(--dr-surface-2);
    --rb-text: var(--dr-text);
    --rb-muted: var(--dr-muted);
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: var(--rb-gap) !important;
}

.home-rebuild *,
.shop-rebuild *,
.product-rebuild-active *,
.orders-rebuild *,
.admin-orders-rebuild * {
    min-width: 0;
}

.home-rebuild__loading,
.shop-rebuild__empty,
.orders-rebuild__empty,
.admin-orders-rebuild__empty,
.product-rebuild__empty {
    display: grid;
    place-items: center;
    gap: 12px;
    min-height: 220px;
    padding: 28px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
    text-align: center;
}

.home-rebuild__hero,
.shop-rebuild__masthead,
.orders-rebuild__hero,
.admin-orders-rebuild__hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
    gap: 18px;
    align-items: stretch;
    padding: clamp(20px, 3vw, 36px);
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background:
        linear-gradient(135deg, rgb(var(--dr-accent-rgb) / .10), transparent 42%),
        var(--rb-panel);
}

.home-rebuild__hero-copy,
.shop-rebuild__intro,
.orders-rebuild__hero > div,
.admin-orders-rebuild__hero > div {
    display: grid;
    align-content: center;
    gap: 12px;
}

.home-rebuild__hero h1,
.shop-rebuild__masthead h1,
.orders-rebuild__hero h1,
.admin-orders-rebuild__hero h1,
.product-rebuild__summary h1 {
    margin: 0;
    color: var(--rb-text) !important;
    font-size: clamp(2rem, 4vw, 3.45rem) !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
}

.home-rebuild__hero p,
.shop-rebuild__masthead p,
.orders-rebuild__hero p,
.admin-orders-rebuild__hero p,
.product-rebuild__summary p {
    max-width: 720px;
    margin: 0;
    color: var(--rb-muted) !important;
}

.home-rebuild__hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.home-rebuild__stats,
.shop-rebuild__metrics,
.orders-rebuild__summary,
.admin-orders-rebuild__stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.shop-rebuild__metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-content: center;
}

.home-rebuild__stats > div,
.shop-rebuild__metrics > div,
.orders-rebuild__summary > div,
.admin-orders-rebuild__stats > div {
    display: grid;
    gap: 4px;
    padding: 14px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.home-rebuild__stats strong,
.shop-rebuild__metrics strong,
.orders-rebuild__summary strong,
.admin-orders-rebuild__stats strong {
    color: var(--rb-text);
    font-size: 1.35rem;
    font-weight: 950;
}

.home-rebuild__stats span,
.shop-rebuild__metrics span,
.orders-rebuild__summary span,
.admin-orders-rebuild__stats span {
    color: var(--rb-muted);
    font-size: .86rem;
    font-weight: 800;
}

.home-rebuild__hero-media {
    position: relative;
    min-height: 420px;
    overflow: hidden;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.home-rebuild__hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-rebuild__hero-media > div:not(.home-rebuild__hero-fallback) {
    position: absolute;
    inset-inline: 16px;
    bottom: 16px;
    display: grid;
    gap: 6px;
    padding: 16px;
    border: 1px solid rgb(255 255 255 / .45);
    border-radius: var(--dr-radius);
    background: rgb(255 255 255 / .88);
    backdrop-filter: blur(12px);
}

.home-rebuild__hero-fallback {
    display: grid;
    place-items: center;
    gap: 10px;
    height: 100%;
    padding: 24px;
    text-align: center;
}

.home-rebuild-section {
    display: grid;
    gap: 14px;
}

.home-rebuild-section__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    padding: 18px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.home-rebuild-section__head span,
.home-rebuild-blog small,
.admin-order-card span,
.orders-rebuild-card__eyebrow {
    color: var(--dr-accent);
    font-size: .8rem;
    font-weight: 950;
}

.home-rebuild-section__head h2,
.product-rebuild__section-head h2 {
    margin: 0;
    font-size: 1.45rem !important;
}

.home-rebuild__category-grid,
.home-rebuild__cms-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
}

.home-rebuild-category,
.home-rebuild-cms {
    display: grid;
    gap: 9px;
    padding: 18px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.home-rebuild__product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.home-rebuild-product,
.shop-rebuild-card {
    display: grid;
    grid-template-rows: 240px minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.home-rebuild-product:first-child {
    grid-column: span 2;
}

.home-rebuild-product__media,
.shop-rebuild-card__media {
    position: relative;
    display: block;
    min-height: 100%;
    background: var(--rb-soft);
}

.home-rebuild-product__media img,
.shop-rebuild-card__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 16px;
}

.home-rebuild-product__media span,
.shop-rebuild-card__badge {
    position: absolute;
    top: 12px;
    inset-inline-start: 12px;
    z-index: 1;
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--dr-accent);
    color: #fff;
    font-size: .78rem;
    font-weight: 950;
}

.home-rebuild-product__body,
.shop-rebuild-card__body {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.home-rebuild-product__meta,
.shop-rebuild-card__meta,
.product-rebuild__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.home-rebuild-product__meta span,
.shop-rebuild-card__meta span,
.product-rebuild__chips span {
    padding: 4px 9px;
    border: 1px solid var(--rb-border);
    border-radius: 999px;
    background: var(--rb-soft);
    color: var(--rb-muted);
    font-size: .78rem;
    font-weight: 900;
}

.home-rebuild-product h3,
.shop-rebuild-card h2 {
    margin: 0;
    font-size: 1.02rem !important;
}

.home-rebuild-product p,
.shop-rebuild-card p {
    display: -webkit-box;
    min-height: 52px;
    margin: 0;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.home-rebuild-product__body > div:last-child,
.shop-rebuild-card__price-row {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 10px;
}

.home-rebuild-product small,
.shop-rebuild-card__price-row > span {
    color: var(--dr-success);
    font-size: .8rem;
    font-weight: 950;
}

.home-rebuild-product small.is-low,
.shop-rebuild-card__price-row > span.is-low {
    color: var(--dr-warning);
}

.home-rebuild__blog-strip {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(280px, 360px);
    gap: 14px;
    overflow: hidden;
}

.home-rebuild-blog {
    display: grid;
    grid-template-rows: 170px minmax(0, 1fr);
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
    overflow: hidden;
}

.home-rebuild-blog > a {
    display: grid;
    place-items: center;
    background: var(--rb-soft);
}

.home-rebuild-blog img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-rebuild-blog > div {
    display: grid;
    gap: 8px;
    padding: 14px;
}

.shop-rebuild__filterbar {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(190px, .45fr) auto minmax(190px, auto);
    gap: 12px;
    align-items: end;
    padding: 16px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.shop-rebuild__field,
.shop-rebuild__toggle {
    display: grid;
    gap: 7px;
}

.shop-rebuild__field span,
.shop-rebuild__toggle span {
    color: var(--rb-muted);
    font-size: .84rem;
    font-weight: 900;
}

.shop-rebuild__toggle {
    min-height: 42px;
    grid-auto-flow: column;
    align-items: center;
    justify-content: start;
    padding: 9px 12px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.shop-rebuild__filter-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.shop-rebuild__category-strip {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 10px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.shop-rebuild__category {
    flex: 0 0 auto;
    padding: 8px 13px;
    border: 1px solid var(--rb-border);
    border-radius: 999px;
    background: var(--rb-soft);
    color: var(--rb-muted);
    font-weight: 900;
}

.shop-rebuild__category.is-active,
.shop-rebuild__category:hover {
    border-color: var(--dr-accent);
    color: var(--dr-accent);
    background: var(--dr-accent-soft);
}

.shop-rebuild__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(265px, 1fr));
    gap: 16px;
}

.shop-rebuild-card__price-row del {
    display: block;
    color: var(--rb-muted);
    font-size: .82rem;
}

.shop-rebuild-card__price-row strong {
    display: block;
    font-size: 1.1rem;
}

.shop-rebuild-card__actions,
.shop-rebuild-card__cart {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 8px;
}

.shop-rebuild-card__cart {
    grid-template-columns: 42px 60px 42px minmax(0, 1fr);
}

.shop-rebuild__notice,
.product-rebuild__notice {
    padding: 12px 14px;
    border: 1px solid color-mix(in srgb, var(--dr-accent) 28%, var(--rb-border));
    border-radius: var(--dr-radius);
    background: var(--dr-accent-soft);
    color: var(--dr-accent);
    font-weight: 900;
}

.product-rebuild-active .product-detail-hero,
.product-rebuild-active .product-detail-content-grid {
    display: none !important;
}

.product-rebuild__hero {
    display: grid;
    grid-template-columns: minmax(360px, 520px) minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.product-rebuild__media {
    position: relative;
    display: grid;
    gap: 12px;
    align-content: start;
    min-height: 520px;
    padding: 14px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.product-rebuild__media > img {
    width: 100%;
    height: 430px;
    object-fit: contain;
}

.product-rebuild__badges,
.product-rebuild__thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.product-rebuild__badges span {
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--dr-accent);
    color: #fff;
    font-size: .78rem;
    font-weight: 950;
}

.product-rebuild__thumbs button {
    width: 72px;
    height: 72px;
    padding: 4px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.product-rebuild__thumbs button.is-active {
    border-color: var(--dr-accent);
}

.product-rebuild__thumbs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--dr-radius-sm);
}

.product-rebuild__summary {
    display: grid;
    align-content: start;
    gap: 14px;
}

.product-rebuild__price {
    display: grid;
    gap: 4px;
    padding: 16px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.product-rebuild__price strong {
    font-size: 2rem;
    font-weight: 950;
}

.product-rebuild__trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.product-rebuild__trust span,
.product-rebuild__kv {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 48px;
    padding: 10px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
    font-weight: 900;
}

.product-rebuild__actions {
    display: grid;
    grid-template-columns: 110px minmax(0, .8fr) minmax(0, 1fr);
    gap: 10px;
    align-items: end;
}

.product-rebuild__actions label,
.product-rebuild__form-grid label {
    display: grid;
    gap: 6px;
}

.product-rebuild__actions label span,
.product-rebuild__form-grid label span {
    color: var(--rb-muted);
    font-size: .84rem;
    font-weight: 900;
}

.product-rebuild__stepper {
    display: grid;
    grid-template-columns: 42px 1fr 42px;
    min-height: 42px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    overflow: hidden;
}

.product-rebuild__stepper button {
    border: 0;
    background: var(--rb-soft);
    font-weight: 950;
}

.product-rebuild__stepper span {
    display: grid;
    place-items: center;
    background: var(--rb-panel);
    font-weight: 950;
}

.product-rebuild__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    gap: 18px;
}

.product-rebuild__article,
.product-rebuild__side,
.product-rebuild__features,
.product-rebuild__related,
.product-rebuild__comments {
    padding: 18px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.product-rebuild__side {
    display: grid;
    align-content: start;
    gap: 10px;
}

.product-rebuild__section-head {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}

.product-rebuild__section-head > span,
.product-rebuild__related span {
    color: var(--dr-accent);
    font-size: .82rem;
    font-weight: 950;
}

.product-rebuild__features > div:last-child,
.product-rebuild__comment-grid,
.product-rebuild__form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.product-rebuild__features article,
.product-rebuild__comment-grid article {
    padding: 14px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.product-rebuild__related {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
    gap: 16px;
    align-items: center;
}

.product-rebuild__related img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    border-radius: var(--dr-radius);
}

.product-rebuild__comment-form {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--rb-border);
}

.product-rebuild__form-grid .is-wide {
    grid-column: 1 / -1;
}

.orders-rebuild__grid,
.admin-orders-rebuild__board {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 560px), 1fr));
    gap: 16px;
}

.orders-rebuild-card,
.admin-order-card {
    display: grid;
    gap: 14px;
    padding: 18px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.orders-rebuild-card__head,
.admin-order-card__head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--rb-border);
}

.orders-rebuild-card h2,
.admin-order-card h2 {
    margin: 4px 0;
    font-size: 1.2rem !important;
}

.orders-rebuild-card__status,
.admin-order-card__state {
    display: grid;
    justify-items: end;
    align-content: start;
    gap: 4px;
}

.orders-rebuild-card__status span,
.admin-order-card__state strong {
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--dr-accent-soft);
    color: var(--dr-accent);
    font-weight: 950;
}

.orders-rebuild-card__body,
.admin-order-card__customer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.orders-rebuild-card__box,
.admin-order-card__customer > div,
.admin-order-card__control,
.orders-rebuild-card__details,
.admin-order-card__history {
    padding: 12px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.orders-rebuild-card__box,
.admin-order-card__customer > div {
    display: grid;
    gap: 4px;
}

.orders-rebuild-card__items,
.admin-order-card__items {
    display: grid;
    gap: 8px;
}

.admin-order-card__items h3,
.admin-order-card__control h3 {
    margin: 0;
    font-size: .95rem !important;
}

.orders-rebuild-line,
.admin-order-line {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 10px;
    border: 1px solid var(--rb-border);
    border-radius: var(--dr-radius);
    background: var(--rb-panel);
}

.orders-rebuild-line__media,
.admin-order-line__media {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    overflow: hidden;
    border-radius: var(--dr-radius);
    background: var(--rb-soft);
}

.orders-rebuild-line__media img,
.admin-order-line__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.orders-rebuild-line div:nth-child(2),
.admin-order-line div:nth-child(2) {
    display: grid;
    gap: 3px;
}

.orders-rebuild-line span,
.admin-order-line span,
.orders-rebuild-card small,
.admin-order-card small {
    color: var(--rb-muted);
    font-size: .82rem;
}

.orders-rebuild-card__detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
}

.orders-rebuild-mini-row,
.admin-order-card__history p {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    margin: 0 0 8px;
    padding: 8px 0;
    border-bottom: 1px solid var(--rb-border);
}

.admin-order-card__control {
    display: grid;
    gap: 10px;
}

.admin-order-card__control-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.admin-order-card__warning {
    padding: 10px;
    border-radius: var(--dr-radius);
    background: color-mix(in srgb, var(--dr-warning) 12%, var(--rb-panel));
    color: var(--dr-warning);
    font-weight: 900;
}

@media (max-width: 1199.98px) {
    .home-rebuild__hero,
    .shop-rebuild__masthead,
    .orders-rebuild__hero,
    .admin-orders-rebuild__hero,
    .product-rebuild__hero,
    .product-rebuild__content,
    .product-rebuild__related {
        grid-template-columns: 1fr !important;
    }

    .home-rebuild__product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-rebuild-product:first-child {
        grid-column: auto;
    }

    .shop-rebuild__filterbar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .home-rebuild__hero,
    .shop-rebuild__masthead,
    .orders-rebuild__hero,
    .admin-orders-rebuild__hero,
    .product-rebuild__hero,
    .home-rebuild-section__head {
        padding: 16px;
    }

    .home-rebuild__stats,
    .shop-rebuild__metrics,
    .orders-rebuild__summary,
    .admin-orders-rebuild__stats,
    .home-rebuild__product-grid,
    .shop-rebuild__filterbar,
    .shop-rebuild__filter-actions,
    .shop-rebuild-card__actions,
    .shop-rebuild-card__cart,
    .product-rebuild__trust,
    .product-rebuild__actions,
    .product-rebuild__features > div:last-child,
    .product-rebuild__comment-grid,
    .product-rebuild__form-grid,
    .orders-rebuild-card__body,
    .admin-order-card__customer,
    .orders-rebuild-card__detail-grid,
    .admin-order-card__control-row {
        grid-template-columns: 1fr !important;
    }

    .home-rebuild__hero-media,
    .product-rebuild__media {
        min-height: 320px;
    }

    .product-rebuild__media > img {
        height: 300px;
    }

    .home-rebuild__blog-strip {
        grid-auto-flow: row;
        grid-auto-columns: auto;
    }

    .orders-rebuild-card__head,
    .admin-order-card__head {
        display: grid;
    }

    .orders-rebuild-card__status,
    .admin-order-card__state {
        justify-items: start;
    }
}

/* Focused redesign pass: home, shop, product detail, user orders, admin orders */
.route-home,
.route-shop,
.route-product-detail,
.route-orders,
.route-admin-orders {
    --focus-gap: 18px;
    --focus-panel: color-mix(in srgb, var(--dr-surface) 92%, var(--dr-bg));
}

.route-home {
    display: grid;
    gap: 22px;
}

.route-home .home-hero {
    grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr) !important;
    gap: 0 !important;
    min-height: 500px !important;
    overflow: hidden;
    border: 1px solid var(--dr-border) !important;
    background:
        linear-gradient(90deg, rgb(var(--dr-accent-rgb) / .07), transparent 38%),
        var(--dr-surface) !important;
}

.route-home .home-hero__copy {
    padding: clamp(24px, 4vw, 54px) !important;
    align-content: center;
}

.route-home .home-hero__visual {
    padding: 18px !important;
}

.route-home .hero-visual-card {
    min-height: 460px !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    box-shadow: none !important;
}

.route-home .hero-title {
    font-size: clamp(2rem, 3.4vw, 3.35rem) !important;
    max-width: 880px;
}

.route-home .hero-subtitle {
    max-width: 720px;
    font-size: 1rem !important;
}

.route-home .hero-actions {
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px !important;
}

.route-home .hero-stats {
    grid-template-columns: repeat(4, minmax(130px, 1fr)) !important;
    gap: 10px !important;
}

.route-home .stat-card,
.route-home .category-card,
.route-home .content-card {
    border-radius: var(--dr-radius) !important;
    border: 1px solid var(--dr-border) !important;
    box-shadow: none !important;
}

.route-home .page-section {
    gap: 16px !important;
    padding: 0 !important;
}

.route-home .section-heading {
    padding: 18px 20px !important;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.route-home .category-grid {
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
}

.route-home .shop-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.route-home .shop-grid .product-card {
    min-height: 100%;
}

.route-home .shop-grid .product-card:nth-child(1) {
    grid-column: span 2 !important;
    grid-row: span 1 !important;
}

.route-home .home-blog-section {
    padding: 18px !important;
    border-radius: var(--dr-radius) !important;
}

.route-shop {
    display: grid !important;
    grid-template-columns: minmax(250px, 310px) minmax(0, 1fr);
    gap: var(--focus-gap) !important;
    align-items: start;
}

.route-shop .shop-toolbar {
    grid-column: 1 !important;
    top: 116px !important;
    padding: 18px !important;
    border: 1px solid var(--dr-border) !important;
    background: var(--dr-surface) !important;
}

.route-shop .shop-toolbar__title {
    padding-bottom: 14px;
    border-bottom: 1px solid var(--dr-border);
}

.route-shop .shop-toolbar__summary {
    display: inline-flex;
    width: fit-content;
    margin-top: 8px;
    padding: 5px 10px;
    border-radius: 999px;
    color: var(--dr-accent);
    background: var(--dr-accent-soft);
    font-weight: 900;
}

.route-shop .shop-toolbar__filters {
    gap: 14px !important;
}

.route-shop .shop-toolbar__filters .btn,
.route-shop .shop-toolbar__filters .field,
.route-shop .shop-toolbar__filters select,
.route-shop .shop-toolbar__filters input {
    width: 100%;
}

.route-shop .shop-category-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.route-shop .shop-category-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 6px 11px;
    border: 1px solid var(--dr-border);
    border-radius: 999px;
    background: var(--dr-surface-2);
    color: var(--dr-muted);
    font-size: .88rem;
    font-weight: 900;
}

.route-shop .shop-category-pill:hover,
.route-shop .shop-category-pill.is-active {
    border-color: color-mix(in srgb, var(--dr-accent) 34%, var(--dr-border));
    color: var(--dr-accent);
    background: var(--dr-accent-soft);
}

.route-shop .shop-grid {
    grid-column: 2 !important;
    grid-template-columns: repeat(auto-fill, minmax(255px, 1fr)) !important;
    gap: 16px !important;
}

.route-shop > .alert,
.route-shop > section:not(.shop-toolbar) {
    grid-column: 2 !important;
}

.route-shop .product-card,
.route-home .product-card {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    overflow: hidden;
    background: var(--dr-surface) !important;
    box-shadow: none !important;
}

.route-shop .product-card__media,
.route-home .product-card__media {
    min-height: 238px !important;
    background: linear-gradient(180deg, var(--dr-surface-2), var(--dr-surface)) !important;
}

.route-shop .product-card__body,
.route-home .product-card__body {
    padding: 14px !important;
}

.route-shop .product-card__title,
.route-home .product-card__title {
    min-height: 48px;
}

.route-shop .product-card__actions {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 8px !important;
}

.route-shop .product-card__actions--in-cart {
    grid-template-columns: 38px 58px 38px minmax(0, 1fr) !important;
}

.route-product-detail {
    display: grid;
    gap: 18px !important;
}

.route-product-detail .product-detail-hero {
    padding: 18px !important;
    background: var(--dr-surface) !important;
}

.route-product-detail .product-detail-layout {
    grid-template-columns: minmax(380px, 540px) minmax(0, 1fr) !important;
    gap: 18px !important;
}

.route-product-detail .product-media-shell {
    min-height: 100%;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
}

.route-product-detail .product-main-image {
    min-height: 440px !important;
    max-height: 560px;
    border-radius: var(--dr-radius) !important;
}

.route-product-detail .thumb-grid {
    grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
}

.route-product-detail .product-buybox {
    border: 1px solid var(--dr-border) !important;
    background: linear-gradient(180deg, var(--dr-surface), var(--focus-panel)) !important;
}

.route-product-detail .product-detail-title {
    font-size: clamp(1.8rem, 2.4vw, 2.55rem) !important;
}

.route-product-detail .product-trust-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.route-product-detail .product-trust-strip span,
.route-product-detail .variant-chip,
.route-product-detail .glass-kv-row,
.route-product-detail .feature-glass,
.route-product-detail .comment-summary-card {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
}

.route-product-detail .product-action-panel {
    grid-template-columns: minmax(92px, 126px) minmax(0, 1fr) minmax(0, 1.1fr) !important;
    padding-top: 12px;
    border-top: 1px solid var(--dr-border);
}

.route-product-detail .product-detail-content-grid {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px) !important;
    gap: 18px !important;
}

.route-product-detail .product-detail-main {
    gap: 18px !important;
}

.route-product-detail .product-detail-main > .page-card,
.route-product-detail .product-info-card {
    border: 1px solid var(--dr-border) !important;
}

.route-orders,
.route-admin-orders {
    display: grid;
    gap: 18px;
}

.route-orders > .page-card:first-child,
.route-admin-orders > .page-card:first-child {
    padding: 22px !important;
    background:
        linear-gradient(90deg, rgb(var(--dr-accent-rgb) / .06), transparent 42%),
        var(--dr-surface) !important;
}

.route-orders > .d-grid,
.route-admin-orders > .d-grid {
    gap: 16px !important;
}

.route-orders > .d-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 640px), 1fr)) !important;
}

.route-orders article.page-card,
.route-admin-orders article.page-card {
    padding: 18px !important;
    border: 1px solid var(--dr-border) !important;
    box-shadow: none !important;
    background: var(--dr-surface) !important;
}

.route-orders article.page-card > .d-flex:first-child,
.route-admin-orders article.page-card > .d-flex:first-child {
    padding-bottom: 14px;
    border-bottom: 1px solid var(--dr-border);
}

.route-orders article.page-card > .row,
.route-admin-orders article.page-card > .row {
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr) !important;
    gap: 14px !important;
}

.route-orders details,
.route-admin-orders details {
    padding: 12px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface-2);
}

.route-orders details summary,
.route-admin-orders details summary {
    cursor: pointer;
    font-weight: 900;
    color: var(--dr-text) !important;
}

.route-orders .feature-card,
.route-admin-orders .feature-card {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
}

.route-orders .product-line,
.route-admin-orders .product-line {
    padding: 10px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.route-admin-orders > .d-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 560px), 1fr)) !important;
}

.route-admin-orders .input-group {
    grid-template-columns: minmax(0, 1fr) minmax(82px, auto) !important;
}

@media (max-width: 1199.98px) {
    .route-home .home-hero,
    .route-product-detail .product-detail-layout,
    .route-product-detail .product-detail-content-grid,
    .route-shop {
        grid-template-columns: 1fr !important;
    }

    .route-shop .shop-toolbar,
    .route-shop .shop-grid,
    .route-shop > .alert,
    .route-shop > section:not(.shop-toolbar) {
        grid-column: 1 !important;
    }

    .route-shop .shop-toolbar {
        position: static !important;
    }

    .route-home .shop-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .route-home .shop-grid .product-card:nth-child(1) {
        grid-column: span 1 !important;
    }

    .route-orders article.page-card > .row,
    .route-admin-orders article.page-card > .row {
        grid-template-columns: 1fr !important;
    }

    .route-product-detail .product-info-card {
        position: static !important;
    }
}

@media (max-width: 767.98px) {
    .route-home,
    .route-shop,
    .route-product-detail,
    .route-orders,
    .route-admin-orders {
        gap: 14px !important;
    }

    .route-home .home-hero__copy,
    .route-home .home-hero__visual {
        padding: 16px !important;
    }

    .route-home .hero-actions .btn,
    .route-shop .shop-toolbar__filters .btn,
    .route-product-detail .product-action-panel .btn,
    .route-orders .btn,
    .route-admin-orders .btn {
        width: 100%;
        min-width: 0;
    }

    .route-home .hero-stats,
    .route-home .category-grid,
    .route-home .shop-grid,
    .route-home .content-grid,
    .route-product-detail .product-trust-strip,
    .route-product-detail .product-action-panel,
    .route-product-detail .product-detail-main .row,
    .route-shop .product-card__actions,
    .route-shop .product-card__actions--in-cart {
        grid-template-columns: 1fr !important;
    }

    .route-product-detail .product-main-image {
        min-height: 300px !important;
    }

    .route-admin-orders .input-group {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 420px) {
    .shop-grid,
    .hero-stats,
    .stat-grid,
    .shop-stats,
    .home-stat-grid,
    .payment-summary-grid,
    .comment-summary-grid,
    .admin-metric-grid,
    .account-stat-grid {
        grid-template-columns: 1fr !important;
    }

    .dk-brand__copy {
        display: none !important;
    }

    .writer-tool-button {
        flex-basis: 100% !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}

/* Route scoped redesigns: each target page owns its layout language. */
.page-scope,
.admin-page-scope {
    display: grid;
    gap: 18px;
}

.page-scope .page-card,
.admin-page-scope .page-card,
.admin-page-scope .settings-panel {
    overflow: clip;
}

/* 1. Home: storefront editorial dashboard */
.route-home {
    --home-gap: 18px;
}

.route-home .home-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr) !important;
    gap: var(--home-gap) !important;
    align-items: stretch !important;
    min-height: 430px !important;
    padding: 0 !important;
    background: var(--dr-surface) !important;
}

.route-home .home-hero__copy {
    display: grid;
    align-content: center;
    gap: 16px;
    padding: 28px;
}

.route-home .home-hero__visual {
    min-height: 100%;
    padding: 12px;
}

.route-home .hero-title {
    max-width: 760px;
    font-size: 2.35rem !important;
}

.route-home .hero-actions {
    margin-top: 0 !important;
}

.route-home .hero-actions .btn {
    min-width: 150px;
}

.route-home .hero-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    margin-top: 4px !important;
}

.route-home .stat-card {
    min-height: 98px;
    display: grid;
    align-content: start;
    gap: 5px;
    background: var(--dr-surface-2) !important;
}

.route-home .stat-card__icon {
    width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    border-radius: var(--dr-radius) !important;
}

.route-home .hero-visual-card {
    height: 100%;
    min-height: 380px !important;
    display: grid !important;
    align-content: end !important;
}

.route-home .hero-mini-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 18px;
}

.route-home .hero-mini-card {
    min-height: 82px;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
}

.route-home .page-section {
    display: grid;
    gap: 14px;
    margin-top: 10px !important;
}

.route-home .section-heading {
    margin-bottom: 0 !important;
    padding: 2px 2px 0;
}

.route-home .category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.route-home .category-card {
    min-height: 112px !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) 24px !important;
    background: linear-gradient(180deg, var(--dr-surface), var(--dr-surface-2)) !important;
}

.route-home .category-card__icon {
    margin: 0 !important;
}

.route-home .shop-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.route-home .shop-grid .product-card:nth-child(1) {
    grid-column: span 2 !important;
}

.route-home .shop-grid .product-card:nth-child(1) .product-card__media {
    min-height: 260px !important;
}

.route-home .home-blog-section {
    padding: 16px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.route-home .home-blog-carousel {
    padding: 2px;
}

.route-home .home-blog-card {
    flex-basis: 340px !important;
    grid-template-rows: 170px minmax(0, 1fr) !important;
}

.route-home .content-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.route-home .content-card {
    display: grid;
    gap: 10px;
    align-content: start;
    padding: 16px !important;
}

/* 2. Shop: catalog workspace */
.route-shop {
    grid-template-columns: 310px minmax(0, 1fr);
    align-items: start;
}

.route-shop .shop-toolbar {
    position: sticky;
    top: 104px;
    display: grid !important;
    gap: 16px !important;
    padding: 16px !important;
}

.route-shop .shop-toolbar__title {
    display: grid;
    gap: 6px;
}

.route-shop .shop-toolbar__filters {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
}

.route-shop .shop-toolbar__toggle {
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 10px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface-2);
}

.route-shop > .alert,
.route-shop > .shop-grid,
.route-shop > section:not(.shop-toolbar) {
    grid-column: 2;
}

.route-shop .shop-grid {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 14px !important;
}

.route-shop .product-card {
    min-height: 100%;
}

.route-shop .product-card__media {
    min-height: 210px !important;
}

.route-shop .product-card__body {
    gap: 10px !important;
}

.route-shop .product-card__actions {
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
}

.route-shop .product-card__actions--in-cart {
    grid-template-columns: 40px 58px 40px minmax(86px, 1fr) !important;
}

.route-shop .shop-quantity-input {
    text-align: center;
    padding-inline: 6px !important;
}

/* 3. Blog: magazine index */
.route-blog {
    gap: 18px;
}

.route-blog .blog-hero-card {
    padding: 18px !important;
}

.route-blog .blog-hero-card .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr) !important;
    gap: 18px !important;
    margin: 0 !important;
}

.route-blog .blog-hero-card .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.route-blog .shop-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.route-blog .shop-filter-panel {
    position: static !important;
    height: 100%;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
}

.route-blog .blog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.route-blog .blog-card--polished {
    display: grid !important;
    grid-template-rows: 210px minmax(0, 1fr) !important;
}

.route-blog .blog-card--polished:first-child {
    grid-column: span 2;
    grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
    grid-template-rows: auto !important;
}

.route-blog .blog-card__media {
    height: 100% !important;
    aspect-ratio: auto !important;
}

.route-blog .blog-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.route-blog .blog-card__body {
    justify-content: space-between;
}

.route-blog .blog-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
}

/* 4. Product detail: purchase-focused page */
.route-product-detail {
    gap: 14px;
}

.route-product-detail .product-detail-hero {
    padding: 14px !important;
}

.route-product-detail .product-detail-layout {
    grid-template-columns: minmax(360px, 500px) minmax(0, 1fr) !important;
}

.route-product-detail .product-media-shell {
    padding: 12px !important;
}

.route-product-detail .product-main-image {
    aspect-ratio: 1 / 1;
    height: auto !important;
    min-height: 360px;
    object-fit: contain !important;
    background: var(--dr-surface-2) !important;
}

.route-product-detail .product-buybox {
    position: static !important;
    display: grid;
    gap: 14px;
}

.route-product-detail .product-detail-title {
    font-size: 1.9rem !important;
}

.route-product-detail .product-trust-strip {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

.route-product-detail .product-trust-strip span {
    min-height: 48px !important;
    border-radius: var(--dr-radius) !important;
}

.route-product-detail .product-price-panel {
    position: static !important;
    margin: 0 !important;
}

.route-product-detail .product-action-panel {
    display: grid !important;
    grid-template-columns: minmax(90px, 120px) minmax(0, 1fr) minmax(0, 1.2fr) !important;
    gap: 10px !important;
    align-items: end !important;
}

.route-product-detail .product-detail-content-grid {
    grid-template-columns: minmax(0, 1fr) minmax(290px, 340px) !important;
}

.route-product-detail .product-detail-main {
    display: grid;
    gap: 14px;
}

.route-product-detail .product-detail-main > .page-card {
    margin-bottom: 0 !important;
}

.route-product-detail .product-detail-main .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
}

.route-product-detail .product-detail-main .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.route-product-detail .product-info-card {
    top: 104px !important;
}

/* 5. Account: user workspace */
.route-account {
    display: grid !important;
    grid-template-columns: minmax(240px, 300px) minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: start !important;
}

.route-account .account-pro-sidebar {
    position: sticky !important;
    top: 104px !important;
    display: grid;
    gap: 16px;
    padding: 16px !important;
}

.route-account .account-profile-mini {
    display: grid;
    gap: 12px;
    justify-items: start;
}

.route-account .account-profile-mini__name {
    margin: 0;
    font-size: 1.18rem;
}

.route-account .account-profile-mini__email {
    max-width: 240px;
    color: var(--dr-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.route-account .account-pro-nav {
    display: grid !important;
    gap: 8px !important;
}

.route-account .account-pro-nav a {
    min-height: 42px !important;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface-2);
}

.route-account .account-pro-main {
    display: grid;
    gap: 16px;
}

.route-account .account-pro-main > section {
    margin-top: 0 !important;
}

.route-account .account-hero-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr);
    gap: 16px;
    align-items: center;
}

.route-account .account-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin: 0 !important;
}

.route-account .account-section-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.route-account #profile .row,
.route-account .address-editor-card .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
}

.route-account #profile .row > *,
.route-account .address-editor-card .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.route-account #profile .col-12,
.route-account .address-editor-card .col-12 {
    grid-column: 1 / -1;
}

.route-account .address-manager-grid {
    grid-template-columns: minmax(0, 1fr) minmax(340px, 420px) !important;
    gap: 14px !important;
}

.route-account .address-card,
.route-account .address-editor-card {
    border-radius: var(--dr-radius) !important;
}

.route-account .favorite-grid {
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
}

/* 6. Admin dashboard */
.route-admin-dashboard {
    gap: 16px;
}

.route-admin-dashboard .admin-hero {
    margin: 0 !important;
    padding: 18px !important;
}

.route-admin-dashboard .admin-metric-grid {
    display: grid !important;
    grid-template-columns: repeat(7, minmax(120px, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
}

.route-admin-dashboard .admin-metric-card {
    min-height: 96px;
    display: grid;
    align-content: center;
    gap: 6px;
    padding: 14px !important;
    background: var(--dr-surface) !important;
}

.route-admin-dashboard .admin-metric-card strong {
    font-size: 1.12rem !important;
}

.route-admin-dashboard > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr) !important;
    gap: 16px !important;
    margin: 0 !important;
}

.route-admin-dashboard > .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.route-admin-dashboard .admin-list-row {
    min-height: 72px;
}

.route-admin-dashboard .product-line-thumb {
    border-radius: var(--dr-radius) !important;
}

.route-admin-dashboard .page-card {
    margin-bottom: 0 !important;
}

/* 7-9. Admin settings editors */
.admin-settings-page {
    display: grid;
    gap: 16px;
}

.admin-settings-page > .settings-panel:first-child {
    padding: 18px !important;
}

.admin-settings-page > .settings-panel:first-child > .d-flex {
    align-items: center !important;
}

.admin-settings-page > .settings-panel:first-child .d-flex.flex-wrap.gap-2 {
    display: grid !important;
    grid-template-columns: repeat(3, auto);
    gap: 8px !important;
}

.admin-settings-page .preview-panel {
    padding: 0 !important;
    border-radius: var(--dr-radius) !important;
}

.admin-settings-page .inline-edit {
    border-color: var(--dr-border) !important;
    background: var(--dr-surface) !important;
}

.admin-settings-footer-page .preview-panel__footer {
    padding: 16px !important;
}

.admin-settings-footer-page .preview-panel__footer > .row {
    display: grid !important;
    grid-template-columns: minmax(280px, .9fr) minmax(360px, 1.15fr) minmax(240px, .65fr) !important;
    gap: 16px !important;
    margin: 0 !important;
}

.admin-settings-footer-page .preview-panel__footer > .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.admin-settings-footer-page .footer-section-card,
.admin-settings-footer-page .footer-social-editor {
    padding: 12px !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
}

.admin-settings-footer-page .footer-section-card .row,
.admin-settings-footer-page .footer-social-editor .row {
    display: grid !important;
    grid-template-columns: minmax(0, .9fr) minmax(0, .9fr) 44px !important;
    gap: 8px !important;
    margin: 0 !important;
}

.admin-settings-footer-page .footer-section-card .row > *,
.admin-settings-footer-page .footer-social-editor .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.admin-settings-footer-page .footer-social-editor .row {
    grid-template-columns: minmax(70px, .5fr) minmax(120px, .9fr) minmax(120px, .9fr) 44px !important;
}

.admin-settings-home-page .hero-panel {
    padding: 18px !important;
}

.admin-settings-home-page .hero-panel > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr) !important;
    gap: 18px !important;
    margin: 0 !important;
}

.admin-settings-home-page .hero-panel > .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.admin-settings-home-page .inline-edit--title {
    min-height: 56px !important;
    font-size: 1.25rem !important;
    font-weight: 900 !important;
}

.admin-settings-home-page .inline-edit-group {
    flex: 1 1 220px;
    min-width: 180px;
}

.admin-settings-home-page .home-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.admin-settings-home-page .home-stat-card {
    padding: 12px !important;
}

.admin-settings-branding-page .preview-panel__header {
    padding: 16px !important;
}

.admin-settings-branding-page .preview-panel__header > .row {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
}

.admin-settings-branding-page .preview-panel__header > .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

.admin-settings-branding-page .preview-panel__header > .row > :nth-child(1),
.admin-settings-branding-page .preview-panel__header > .row > :nth-child(2) {
    grid-column: span 5;
}

.admin-settings-branding-page .preview-panel__header > .row > :nth-child(3) {
    grid-column: span 2;
}

.admin-settings-branding-page .preview-panel__header > .row > :nth-child(4) {
    grid-column: span 3;
}

.admin-settings-branding-page .preview-panel__header > .row > :nth-child(5) {
    grid-column: span 5;
}

.admin-settings-branding-page .preview-panel__header > .row > :nth-child(6) {
    grid-column: span 4;
}

.admin-settings-branding-page .setting-field__row {
    min-height: 44px;
    padding: 6px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.admin-settings-branding-page .setting-swatch {
    width: 36px !important;
    height: 34px !important;
    overflow: hidden;
}

.admin-settings-branding-page .setting-swatch input {
    width: 44px;
    height: 44px;
    border: 0;
    padding: 0;
    transform: translate(5px, -5px);
}

.admin-settings-branding-page .dynamic-service-row {
    display: grid !important;
    grid-template-columns: minmax(100px, .6fr) minmax(0, 1.2fr) 96px !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 10px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.admin-settings-branding-page .dynamic-service-row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
}

@media (max-width: 1280px) {
    .route-admin-dashboard .admin-metric-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }

    .route-home .shop-grid,
    .route-home .content-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .route-blog .blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .route-blog .blog-card--polished:first-child {
        grid-column: span 2;
    }
}

@media (max-width: 1199.98px) {
    .route-home .home-hero,
    .route-shop,
    .route-blog .blog-hero-card .row,
    .route-product-detail .product-detail-layout,
    .route-product-detail .product-detail-content-grid,
    .route-account,
    .route-account .account-hero-card,
    .route-account .address-manager-grid,
    .route-admin-dashboard > .row,
    .admin-settings-footer-page .preview-panel__footer > .row,
    .admin-settings-home-page .hero-panel > .row {
        grid-template-columns: 1fr !important;
    }

    .route-shop .shop-toolbar,
    .route-account .account-pro-sidebar,
    .route-product-detail .product-info-card {
        position: static !important;
    }

    .route-shop > .alert,
    .route-shop > .shop-grid,
    .route-shop > section:not(.shop-toolbar) {
        grid-column: auto;
    }

    .route-home .category-grid,
    .route-home .shop-grid,
    .route-home .content-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .route-home .shop-grid .product-card:nth-child(1) {
        grid-column: span 1 !important;
    }

    .route-product-detail .product-action-panel {
        grid-template-columns: 1fr !important;
    }

    .admin-settings-branding-page .preview-panel__header > .row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .admin-settings-branding-page .preview-panel__header > .row > * {
        grid-column: auto !important;
    }
}

@media (max-width: 767.98px) {
    .route-home .hero-stats,
    .route-home .category-grid,
    .route-home .shop-grid,
    .route-home .content-grid,
    .route-blog .shop-stats,
    .route-blog .blog-grid,
    .route-account #profile .row,
    .route-account .address-editor-card .row,
    .admin-settings-home-page .home-stat-grid,
    .admin-settings-branding-page .preview-panel__header > .row,
    .admin-settings-branding-page .dynamic-service-row,
    .admin-settings-footer-page .footer-section-card .row,
    .admin-settings-footer-page .footer-social-editor .row {
        grid-template-columns: 1fr !important;
    }

    .route-blog .blog-card--polished:first-child {
        grid-column: span 1 !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 210px minmax(0, 1fr) !important;
    }

    .route-shop .product-card__actions,
    .route-shop .product-card__actions--in-cart {
        grid-template-columns: 1fr !important;
    }

    .route-product-detail .product-main-image {
        min-height: 260px !important;
    }

    .route-product-detail .product-trust-strip {
        grid-template-columns: 1fr !important;
    }

    .route-admin-dashboard .admin-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .admin-settings-page > .settings-panel:first-child .d-flex.flex-wrap.gap-2 {
        grid-template-columns: 1fr !important;
    }

    .admin-settings-page > .settings-panel:first-child .btn,
    .admin-settings-page .preview-panel .btn,
    .route-account .account-section-head .btn {
        width: 100%;
    }
}

/* Final route balancing pass for sparse data and editor-heavy screens. */
.route-home .page-section {
    padding: clamp(16px, 2vw, 22px);
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--dr-surface) 96%, transparent), var(--dr-surface-2));
}

.route-home .section-heading {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end !important;
    gap: 14px !important;
}

.route-home .category-grid,
.route-home .content-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr)) !important;
    gap: 14px !important;
}

.route-home .shop-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
    gap: 16px !important;
    align-items: stretch;
}

.route-home .shop-grid .product-card:nth-child(1) {
    grid-column: auto !important;
}

.route-home .shop-grid .product-card:nth-child(1) .product-card__media {
    min-height: 220px !important;
}

.route-home .shop-grid:has(> .product-card:only-child) {
    grid-template-columns: minmax(0, 920px) !important;
    justify-content: stretch;
}

.route-home .shop-grid > .product-card:only-child {
    display: grid !important;
    grid-template-columns: minmax(260px, .95fr) minmax(0, 1.05fr);
    overflow: hidden;
}

.route-home .shop-grid > .product-card:only-child .product-card__media {
    min-height: 320px !important;
    border-bottom: 0 !important;
    border-inline-end: 1px solid var(--dr-border);
}

.route-home .home-blog-carousel {
    gap: 14px !important;
    scroll-padding-inline: 2px;
}

.route-home .home-blog-card:only-child {
    flex-basis: min(100%, 760px) !important;
}

.route-shop .shop-grid,
.route-blog .blog-grid {
    padding: 16px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--dr-surface) 96%, transparent), var(--dr-surface-2));
}

.route-shop .shop-grid {
    min-height: 520px;
    grid-template-columns: repeat(auto-fill, minmax(260px, 330px)) !important;
    justify-content: start;
}

.route-shop .shop-grid:has(> .product-card:only-child) {
    grid-template-columns: minmax(0, 780px) !important;
}

.route-shop .shop-grid > .product-card:only-child {
    display: grid !important;
    grid-template-columns: minmax(250px, .85fr) minmax(0, 1.15fr);
    max-width: 780px;
    overflow: hidden;
}

.route-shop .shop-grid > .product-card:only-child .product-card__media {
    min-height: 100% !important;
    border-bottom: 0 !important;
    border-inline-end: 1px solid var(--dr-border);
}

.route-blog .blog-grid {
    min-height: 320px;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)) !important;
}

.route-blog .blog-grid:has(> .blog-card:only-child) {
    grid-template-columns: minmax(0, 900px) !important;
    justify-content: start;
}

.route-blog .blog-grid > .blog-card:only-child {
    grid-column: auto !important;
    display: grid !important;
    grid-template-columns: minmax(300px, .92fr) minmax(0, 1.08fr);
    max-width: 900px;
}

.route-account .address-manager-grid {
    align-items: start !important;
}

.route-account .address-list-stack .empty-state {
    min-height: 220px;
    display: grid;
    place-items: center;
}

.route-admin-dashboard .col-lg-5 > .page-card:last-child .d-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.route-admin-dashboard .col-lg-5 > .page-card:last-child .btn {
    min-height: 44px;
    justify-content: center;
}

.admin-settings-footer-page .preview-panel__footer--editor {
    color: var(--dr-ink) !important;
    background: linear-gradient(180deg, var(--dr-surface), var(--dr-surface-2)) !important;
}

.admin-settings-footer-page .footer-image-editor,
.admin-settings-footer-page .settings-subsection,
.admin-settings-footer-page .preview-panel__footer--editor code {
    padding: 12px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.admin-settings-footer-page .footer-image,
.admin-settings-footer-page .footer-image--small,
.admin-settings-footer-page .footer-image--tiny {
    display: block !important;
    width: auto !important;
    max-width: 144px !important;
    max-height: 112px !important;
    object-fit: contain !important;
    padding: 8px !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: #fff !important;
}

.admin-settings-branding-page .brand-logo,
.admin-settings-branding-page .brand-logo--small {
    width: 64px !important;
    height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
    object-fit: contain !important;
    padding: 6px !important;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: #fff !important;
}

.admin-settings-branding-page .preview-panel__header .d-flex.align-items-center .brand-logo:not(.brand-logo--small) {
    width: 52px !important;
    height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
}

@media (max-width: 1199.98px) {
    .route-home .section-heading {
        grid-template-columns: 1fr !important;
    }

    .route-home .shop-grid,
    .route-home .category-grid,
    .route-home .content-grid,
    .route-shop .shop-grid,
    .route-blog .blog-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
    }

    .route-home .shop-grid > .product-card:only-child,
    .route-shop .shop-grid > .product-card:only-child,
    .route-blog .blog-grid > .blog-card:only-child {
        grid-template-columns: 1fr !important;
    }

    .route-home .shop-grid > .product-card:only-child .product-card__media,
    .route-shop .shop-grid > .product-card:only-child .product-card__media {
        border-inline-end: 0 !important;
        border-bottom: 1px solid var(--dr-border) !important;
    }
}

@media (max-width: 767.98px) {
    .route-home .page-section,
    .route-shop .shop-grid,
    .route-blog .blog-grid {
        padding: 12px;
    }

    .route-shop .shop-grid {
        min-height: auto;
    }

    .route-admin-dashboard .col-lg-5 > .page-card:last-child .d-grid {
        grid-template-columns: 1fr !important;
    }

    .admin-settings-footer-page .footer-image,
    .admin-settings-footer-page .footer-image--small,
    .admin-settings-footer-page .footer-image--tiny {
        max-width: 118px !important;
        max-height: 96px !important;
    }
}

/* Bootstrap column utilities set grid-column spans; reset them where rows were promoted to CSS grid. */
.route-blog .blog-hero-card .row > *,
.route-product-detail .product-detail-main .row > *,
.route-account #profile .row > *,
.route-account .address-editor-card .row > *,
.route-admin-dashboard > .row > *,
.admin-settings-footer-page .preview-panel__footer > .row > *,
.admin-settings-footer-page .footer-section-card .row > *,
.admin-settings-footer-page .footer-social-editor .row > *,
.admin-settings-home-page .hero-panel > .row > *,
.admin-settings-branding-page .dynamic-service-row > * {
    grid-column: auto !important;
    grid-row: auto !important;
}

.route-account .address-editor-card .col-12 {
    grid-column: 1 / -1 !important;
}

.admin-settings-footer-page .preview-panel__footer > .row {
    align-items: start !important;
}

.admin-settings-footer-page .preview-panel__footer > .row > :nth-child(1),
.admin-settings-footer-page .preview-panel__footer > .row > :nth-child(2),
.admin-settings-footer-page .preview-panel__footer > .row > :nth-child(3) {
    min-width: 0;
}

@media (max-width: 1199.98px) {
    .admin-settings-footer-page .preview-panel__footer > .row > * {
        grid-column: auto !important;
    }
}

/* Extended scoped redesign sweep for remaining customer and admin workflows. */
.route-auth {
    min-height: min(680px, calc(100dvh - 220px));
    place-items: start center;
    padding-block: clamp(28px, 6vw, 74px);
}

.route-auth > .card {
    width: min(100%, 520px);
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    box-shadow: var(--dr-shadow) !important;
    background: var(--dr-surface) !important;
}

.route-auth form {
    display: grid;
    gap: 12px;
}

.route-auth form .mb-3,
.route-auth form .form-check {
    margin-bottom: 0 !important;
}

.route-cart > .row,
.route-checkout .checkout-page > .row,
.route-payment > .row,
.route-admin-products > .row,
.route-admin-users > .row,
.route-admin-blog > .row,
.admin-settings-overview-page > .row {
    display: grid !important;
    gap: 18px !important;
    margin: 0 !important;
    align-items: start !important;
}

.route-cart > .row,
.route-checkout .checkout-page > .row,
.route-payment > .row {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 390px) !important;
}

.route-admin-products > .row {
    grid-template-columns: minmax(340px, .82fr) minmax(0, 1.18fr) !important;
}

.route-admin-users > .row,
.route-admin-blog > .row {
    grid-template-columns: minmax(0, 1fr) minmax(330px, 420px) !important;
}

.admin-settings-overview-page > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.route-cart > .row > *,
.route-checkout .checkout-page > .row > *,
.route-payment > .row > *,
.route-contact .contact-form-card .row > *,
.route-admin-products > .row > *,
.route-admin-users > .row > *,
.route-admin-blog > .row > *,
.admin-settings-overview-page > .row > *,
.route-category-index .category-hero .row > *,
.route-category-detail .category-hero .row > *,
.admin-settings-advanced-page .settings-panel > .row > *,
.admin-settings-commerce-page .settings-panel > .row > * {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    grid-column: auto !important;
    grid-row: auto !important;
}

.route-contact .contact-form-card .row > .col-12,
.route-admin-products form > .row > .col-12 {
    grid-column: 1 / -1 !important;
}

.route-cart .cart-hero,
.route-checkout .checkout-page,
.route-contact .contact-hero,
.route-orders > .page-card:first-child,
.route-admin-products > .page-card:first-child,
.route-admin-orders > .page-card:first-child,
.route-admin-users > .page-card:first-child,
.route-admin-comments > .page-card:first-child,
.route-payment .payment-hero {
    border-color: color-mix(in srgb, var(--dr-accent) 14%, var(--dr-border)) !important;
    background: linear-gradient(180deg, var(--dr-surface), var(--dr-surface-2)) !important;
}

.route-cart .cart-item-card,
.route-orders article.page-card,
.route-admin-orders article.page-card,
.route-admin-comments article.page-card,
.route-my-comments .comment-card {
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.route-cart .cart-item-card > .row,
.route-orders article.page-card > .row,
.route-admin-orders article.page-card > .row,
.route-checkout .checkout-step-panel .row,
.route-contact .contact-form-card .row,
.route-admin-products section.page-card .row,
.route-admin-products form > .row,
.route-admin-blog section.page-card .row,
.admin-settings-advanced-page .settings-panel > .row,
.admin-settings-commerce-page .settings-panel > .row {
    display: grid !important;
    gap: 12px !important;
    margin: 0 !important;
}

.route-cart .cart-item-card > .row {
    grid-template-columns: minmax(140px, .7fr) minmax(150px, .8fr) minmax(150px, .8fr) !important;
}

.route-orders article.page-card > .row,
.route-admin-orders article.page-card > .row,
.route-checkout .checkout-step-panel .row,
.route-contact .contact-form-card .row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.route-admin-products section.page-card .row,
.route-admin-blog section.page-card .row {
    grid-template-columns: minmax(220px, .55fr) minmax(0, .95fr) !important;
}

.route-admin-products form > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.route-cart .cart-summary,
.route-checkout .checkout-summary-panel,
.route-payment .payment-side,
.route-admin-users aside.page-card,
.route-post-detail .blog-article-aside {
    position: sticky !important;
    top: 112px !important;
    align-self: start;
}

.route-cart .quantity-stepper {
    width: min(100%, 210px);
}

.route-checkout .checkout-page {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    box-shadow: none !important;
    background: var(--dr-surface) !important;
}

.route-checkout .checkout-stepper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-block: 16px;
}

.route-checkout .checkout-step {
    min-height: 54px;
    padding: 10px 12px;
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface-2);
}

.route-checkout .checkout-step.is-active,
.route-checkout .checkout-step.is-complete {
    border-color: color-mix(in srgb, var(--dr-accent) 38%, var(--dr-border));
    background: color-mix(in srgb, var(--dr-accent) 8%, var(--dr-surface));
}

.route-checkout .checkout-step-panel,
.route-checkout .checkout-summary-panel {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface-2) !important;
}

.route-contact .contact-support-grid {
    grid-template-columns: minmax(0, 1fr) minmax(340px, .72fr) !important;
    align-items: start;
}

.route-contact .contact-panel,
.route-contact .contact-form-card {
    min-height: 100%;
}

.route-contact .contact-ticket-list,
.route-admin-contacts .admin-ticket-list {
    display: grid !important;
    gap: 8px !important;
    border: 0 !important;
}

.route-contact .contact-ticket-list__item,
.route-admin-contacts .admin-ticket-list__item {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    margin-bottom: 0 !important;
}

.route-category-index .category-hero .row,
.route-category-detail .category-hero .row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px !important;
    margin: 0 !important;
}

.route-category-index .category-grid,
.route-category-detail .shop-grid,
.route-category-detail .blog-grid,
.route-my-comments .row {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)) !important;
    gap: 16px !important;
    margin: 0 !important;
}

.route-category-index .category-grid,
.route-category-detail .shop-grid,
.route-category-detail .blog-grid,
.route-my-comments > .card {
    padding: 16px;
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: linear-gradient(180deg, var(--dr-surface), var(--dr-surface-2)) !important;
}

.route-category-detail .shop-card,
.route-category-detail .blog-card {
    display: grid;
    grid-template-rows: 220px minmax(0, 1fr);
}

.route-category-detail .shop-card__media img,
.route-category-detail .blog-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.route-post-detail .blog-article-layout {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px) !important;
    gap: 18px !important;
}

.route-post-detail .blog-article-content,
.route-cms-page .cms-page-body {
    line-height: 1.95;
}

.route-post-detail .blog-article-content img,
.route-cms-page .cms-page-body img {
    max-width: 100%;
    height: auto;
    border-radius: var(--dr-radius);
}

.route-cms-page .cms-page-body {
    width: min(100%, 980px);
    margin-inline: auto;
}

.route-payment .payment-summary-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.route-payment .payment-line,
.route-payment .payment-summary-item {
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.route-admin-products .page-card,
.route-admin-blog .page-card,
.route-admin-cms .settings-panel,
.route-admin-orders .page-card,
.route-admin-users .page-card,
.route-admin-comments .page-card,
.route-admin-audit > .card,
.admin-settings-overview-page .settings-panel,
.admin-settings-advanced-page .settings-panel,
.admin-settings-commerce-page .settings-panel {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    box-shadow: none !important;
    background: var(--dr-surface) !important;
}

.route-admin-products .col-xl-5 > .page-card,
.route-admin-blog .col-xl-5 > .page-card,
.route-admin-users aside.page-card {
    background: var(--dr-surface-2) !important;
}

.route-admin-products .border.rounded-4,
.route-admin-products .feature-card,
.route-admin-blog .list-group-item,
.route-admin-blog .blog-admin-form-card,
.route-admin-orders .feature-card,
.route-admin-users .user-card,
.route-admin-users .role-toggle,
.route-admin-comments article.page-card,
.admin-settings-overview-page .settings-mini-card,
.admin-settings-advanced-page .settings-mini-card,
.admin-settings-commerce-page .preview-panel {
    border: 1px solid var(--dr-border) !important;
    border-radius: var(--dr-radius) !important;
    background: var(--dr-surface) !important;
}

.route-admin-products .d-grid.gap-2,
.route-admin-blog .list-group,
.route-admin-comments > .d-grid,
.route-admin-orders > .d-grid {
    gap: 10px !important;
}

.route-admin-blog .table-responsive,
.route-admin-audit .table-responsive {
    border: 1px solid var(--dr-border);
    border-radius: var(--dr-radius);
    background: var(--dr-surface);
}

.route-admin-blog table,
.route-admin-audit table {
    min-width: 720px;
}

.route-admin-cms .cms-manager-grid {
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr) !important;
}

.route-admin-contacts {
    grid-template-columns: minmax(310px, 390px) minmax(0, 1fr) !important;
}

.route-admin-contacts .admin-ticket-card {
    padding: 16px !important;
}

.route-admin-comments > .d-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)) !important;
}

.route-admin-orders > .d-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 1fr)) !important;
}

.route-admin-users .admin-search {
    width: min(100%, 420px);
}

.admin-settings-overview-page .settings-mini-card {
    display: grid;
    gap: 10px;
    align-content: start;
}

.admin-settings-advanced-page .settings-panel > .row,
.admin-settings-commerce-page .settings-panel > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.admin-settings-advanced-page > .settings-panel:first-child > .d-flex {
    align-items: flex-start !important;
}

.admin-settings-advanced-page > .settings-panel:first-child .d-flex.flex-wrap.gap-2 {
    justify-content: flex-end;
    align-items: center;
}

.admin-settings-advanced-page > .settings-panel:first-child .btn {
    min-width: 124px;
    justify-content: center;
}

.admin-settings-advanced-page > .settings-panel:first-child .btn-primary {
    min-width: 156px;
}

.admin-settings-advanced-page details > .d-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)) !important;
}

.admin-settings-advanced-page .input-group,
.route-admin-orders .input-group {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
}

@media (max-width: 1199.98px) {
    .route-cart > .row,
    .route-checkout .checkout-page > .row,
    .route-payment > .row,
    .route-admin-products > .row,
    .route-admin-users > .row,
    .route-admin-blog > .row,
    .route-admin-cms .cms-manager-grid,
    .route-admin-contacts,
    .route-contact .contact-support-grid,
    .admin-settings-overview-page > .row,
    .admin-settings-advanced-page .settings-panel > .row,
    .admin-settings-commerce-page .settings-panel > .row,
    .route-category-index .category-hero .row,
    .route-category-detail .category-hero .row,
    .route-post-detail .blog-article-layout {
        grid-template-columns: 1fr !important;
    }

    .route-cart .cart-summary,
    .route-checkout .checkout-summary-panel,
    .route-payment .payment-side,
    .route-admin-users aside.page-card,
    .route-post-detail .blog-article-aside {
        position: static !important;
    }

    .route-payment .payment-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .route-cart .cart-item-card > .row,
    .route-orders article.page-card > .row,
    .route-admin-orders article.page-card > .row,
    .route-checkout .checkout-step-panel .row,
    .route-contact .contact-form-card .row,
    .route-admin-products section.page-card .row,
    .route-admin-products form > .row,
    .route-admin-blog section.page-card .row,
    .route-checkout .checkout-stepper,
    .route-payment .payment-summary-grid {
        grid-template-columns: 1fr !important;
    }

    .admin-settings-advanced-page > .settings-panel:first-child > .d-flex {
        align-items: stretch !important;
    }

    .admin-settings-advanced-page > .settings-panel:first-child .d-flex.flex-wrap.gap-2 {
        width: 100%;
    }

    .admin-settings-advanced-page > .settings-panel:first-child .btn {
        flex: 1 1 100%;
        min-width: 0;
    }

    .admin-settings-advanced-page > .settings-panel:first-child .btn-primary {
        font-size: 0 !important;
    }

    .admin-settings-advanced-page > .settings-panel:first-child .btn-primary::after {
        content: "\0627\0641\0632\0648\062f\0646";
        font-size: .95rem;
        line-height: 1.4;
    }

    .route-cart .cart-hero .btn,
    .route-checkout .checkout-page .btn,
    .route-contact .contact-form-card .btn,
    .route-admin-products .btn,
    .route-admin-blog .btn,
    .route-admin-orders .btn,
    .route-admin-users .btn,
    .route-admin-comments .btn {
        min-width: 0;
    }
}

/* Final rebuild override: keep the newly rebuilt pages independent from older route rules. */
.home-rebuild,
.shop-rebuild,
.product-rebuild-active,
.orders-rebuild,
.admin-orders-rebuild {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    align-items: stretch !important;
}

.shop-rebuild > *,
.home-rebuild > *,
.product-rebuild-active > *,
.orders-rebuild > *,
.admin-orders-rebuild > * {
    grid-column: 1 / -1 !important;
}

.home-rebuild .btn,
.shop-rebuild .btn,
.product-rebuild-active .btn,
.orders-rebuild .btn,
.admin-orders-rebuild .btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    white-space: normal;
}

.home-rebuild__hero,
.shop-rebuild__masthead,
.orders-rebuild__hero,
.admin-orders-rebuild__hero,
.product-rebuild__hero {
    box-shadow: 0 18px 46px rgb(15 23 42 / .07);
}

.home-rebuild__blog-strip {
    display: flex !important;
    flex-wrap: nowrap;
    overflow: hidden;
    padding-block: 2px;
}

.home-rebuild__blog-strip > .home-rebuild-blog {
    flex: 0 0 clamp(280px, 28vw, 360px);
    animation: rb-home-blog-slide 34s linear infinite;
}

.home-rebuild__blog-strip:hover > .home-rebuild-blog {
    animation-play-state: paused;
}

@keyframes rb-home-blog-slide {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(50%);
    }
}

.shop-rebuild__masthead {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
}

.shop-rebuild__filterbar {
    grid-template-columns: minmax(260px, 1fr) minmax(220px, 300px) minmax(190px, 240px) minmax(210px, 260px) !important;
}

.shop-rebuild__grid {
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)) !important;
}

.shop-rebuild-card {
    min-height: 100%;
}

.product-rebuild-active .product-detail-hero,
.product-rebuild-active .product-detail-content-grid {
    display: none !important;
}

.product-rebuild__hero {
    grid-template-columns: minmax(360px, 520px) minmax(0, 1fr) !important;
}

.product-rebuild__media {
    min-height: 560px;
}

.orders-rebuild__grid,
.admin-orders-rebuild__board {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 560px), 1fr)) !important;
}

.orders-rebuild-card,
.admin-order-card,
.home-rebuild-product,
.shop-rebuild-card,
.home-rebuild-blog,
.home-rebuild-category,
.home-rebuild-cms {
    box-shadow: 0 10px 30px rgb(15 23 42 / .05);
}

@media (max-width: 1199.98px) {
    .shop-rebuild__masthead,
    .shop-rebuild__filterbar,
    .product-rebuild__hero {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767.98px) {
    .home-rebuild,
    .shop-rebuild,
    .product-rebuild-active,
    .orders-rebuild,
    .admin-orders-rebuild {
        gap: 14px !important;
    }

    .home-rebuild__stats,
    .shop-rebuild__metrics,
    .orders-rebuild__summary,
    .admin-orders-rebuild__stats,
    .home-rebuild__product-grid,
    .shop-rebuild__filterbar,
    .product-rebuild__actions,
    .product-rebuild__trust,
    .orders-rebuild-card__body,
    .admin-order-card__customer {
        grid-template-columns: 1fr !important;
    }

    .home-rebuild__blog-strip {
        overflow-x: auto;
        scroll-snap-type: x mandatory;
    }

    .home-rebuild__blog-strip > .home-rebuild-blog {
        animation: none;
        scroll-snap-align: start;
    }

    .product-rebuild__media {
        min-height: 320px;
    }
}

/* Higher-specificity guard for rebuilt routes after all older route-level rules. */
.route-home.home-rebuild,
.route-shop.shop-rebuild,
.route-product-detail.product-rebuild-active,
.route-orders.orders-rebuild,
.route-admin-orders.admin-orders-rebuild {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
    align-items: stretch !important;
}

.route-home.home-rebuild > *,
.route-shop.shop-rebuild > *,
.route-product-detail.product-rebuild-active > *,
.route-orders.orders-rebuild > *,
.route-admin-orders.admin-orders-rebuild > * {
    grid-column: 1 / -1 !important;
}

.route-shop.shop-rebuild .shop-rebuild__masthead {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
}

.route-shop.shop-rebuild .shop-rebuild__filterbar {
    grid-template-columns: minmax(260px, 1fr) minmax(220px, 300px) minmax(190px, 240px) minmax(210px, 260px) !important;
}

.route-product-detail.product-rebuild-active .product-rebuild__hero {
    grid-template-columns: minmax(360px, 520px) minmax(0, 1fr) !important;
}

@media (max-width: 1199.98px) {
    .route-shop.shop-rebuild .shop-rebuild__masthead,
    .route-shop.shop-rebuild .shop-rebuild__filterbar,
    .route-product-detail.product-rebuild-active .product-rebuild__hero {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

@media (max-width: 767.98px) {
    .route-home.home-rebuild,
    .route-shop.shop-rebuild,
    .route-product-detail.product-rebuild-active,
    .route-orders.orders-rebuild,
    .route-admin-orders.admin-orders-rebuild {
        gap: 14px !important;
    }
}

.route-shop.shop-rebuild > section.shop-rebuild__masthead,
.route-shop.shop-rebuild > section.shop-rebuild__filterbar,
.route-shop.shop-rebuild > section.shop-rebuild__empty,
.route-shop.shop-rebuild > section.shop-rebuild__grid,
.route-shop.shop-rebuild > nav.shop-rebuild__category-strip,
.route-shop.shop-rebuild > div.shop-rebuild__notice {
    grid-column: 1 / -1 !important;
    width: auto !important;
    max-width: none !important;
}

.route-shop.shop-rebuild .shop-rebuild__grid:has(> .shop-rebuild-card:only-child) {
    grid-template-columns: minmax(0, 1fr) !important;
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child {
    display: grid;
    grid-template-columns: minmax(280px, 420px) minmax(0, 1fr);
    grid-template-rows: auto;
    min-height: 360px;
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child .shop-rebuild-card__media {
    min-height: 100%;
    border-inline-end: 1px solid var(--rb-border);
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child .shop-rebuild-card__body {
    align-content: center;
    gap: 16px;
    padding: clamp(22px, 3vw, 36px);
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child .shop-rebuild-card__meta {
    align-items: center;
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child .shop-rebuild-card__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child h2 {
    font-size: clamp(1.25rem, 2vw, 1.7rem) !important;
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child p {
    max-width: 640px;
    min-height: auto;
}

.route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child .shop-rebuild-card__price-row {
    max-width: 560px;
}

@media (max-width: 767.98px) {
    .route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child {
        grid-template-columns: minmax(0, 1fr);
    }

    .route-shop.shop-rebuild .shop-rebuild__grid > .shop-rebuild-card:only-child .shop-rebuild-card__media {
        min-height: 240px;
        border-inline-end: 0;
        border-bottom: 1px solid var(--rb-border);
    }
}

/* Final local shell fixes: neutral splash, admin side navigation and search focus cleanup. */
.site-splash {
    min-height: 100dvh;
    display: grid;
    place-items: center;
    gap: 14px;
    direction: rtl;
    text-align: center;
    background: linear-gradient(180deg, #f8fafc, #eef2f7);
    color: #1f2937;
    padding: 24px;
}

.site-splash__mark {
    width: 56px;
    height: 56px;
    border: 4px solid #d8dee8;
    border-top-color: #64748b;
    border-radius: 999px;
    animation: siteSplashSpin .75s linear infinite;
}

.site-splash strong,
.site-splash span {
    display: block;
}

.site-splash strong {
    font-size: 1.1rem;
    font-weight: 950;
}

.site-splash span {
    margin-top: 4px;
    color: #64748b;
    font-weight: 800;
}

@keyframes siteSplashSpin {
    to {
        transform: rotate(360deg);
    }
}

.admin-workspace-frame {
    width: min(100% - 24px, 1480px) !important;
}

.admin-workspace-shell {
    display: grid;
    grid-template-columns: 252px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    direction: rtl;
}

.admin-workspace-content {
    min-width: 0;
}

.admin-dock-nav {
    position: sticky;
    top: 132px;
    display: grid;
    gap: 12px;
    max-height: calc(100dvh - 154px);
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    padding: 12px;
    box-shadow: 0 10px 28px rgb(15 23 42 / .05);
}

.admin-dock-nav__head {
    display: grid;
    gap: 2px;
    padding: 8px 9px 10px;
    border-bottom: 1px solid var(--border-soft);
}

.admin-dock-nav__head strong {
    color: var(--text);
    font-size: .98rem;
    font-weight: 950;
}

.admin-dock-nav__head span,
.admin-dock-nav__group {
    color: var(--text-soft);
    font-size: .78rem;
    font-weight: 900;
}

.admin-dock-nav__links {
    display: grid;
    gap: 5px;
}

.admin-dock-nav__link {
    min-height: 40px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: var(--text-muted);
    padding: 8px 10px;
    font-weight: 900;
}

.admin-dock-nav__link:hover,
.admin-dock-nav__link.is-active {
    border-color: rgb(var(--site-accent-rgb) / .26);
    background: rgb(var(--site-accent-rgb) / .08);
    color: var(--site-accent);
}

.admin-dock-nav__group {
    margin-top: 8px;
    padding: 8px 10px 2px;
}

.dk-search,
.dk-search--premium,
.dk-search--mobile {
    outline: 0 !important;
}

.dk-search:focus-within,
.dk-search--premium:focus-within,
.dk-search--mobile:focus-within {
    border-color: rgb(var(--site-accent-rgb) / .42) !important;
    box-shadow: 0 0 0 3px rgb(var(--site-accent-rgb) / .14) !important;
}

.dk-search input,
.dk-search input:focus,
.dk-search input:focus-visible {
    outline: 0 !important;
    box-shadow: none !important;
}

.dk-search__hint {
    flex: 0 0 auto;
    height: 26px !important;
    min-width: 50px !important;
    color: var(--text-soft) !important;
}

@media (max-width: 1180px) {
    .admin-workspace-shell {
        grid-template-columns: 1fr;
    }

    .admin-dock-nav {
        position: static;
        max-height: none;
    }

    .admin-dock-nav__links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .admin-dock-nav__group {
        grid-column: 1 / -1;
    }
}

@media (max-width: 680px) {
    .admin-workspace-frame {
        width: min(100% - 16px, 1480px) !important;
    }

    .admin-dock-nav__links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-dock-nav__link {
        min-height: 42px;
        justify-content: center;
        padding-inline: 8px;
        text-align: center;
    }
}

/* Final shell fixes: fixed header, full-scale logo, mobile admin drawer, and tighter account/admin forms. */
:root {
    --site-fixed-header-current: 145px;
}

html {
    scroll-padding-top: calc(var(--site-fixed-header-current) + 16px) !important;
}

.dk-shell,
.app-shell {
    padding-top: var(--site-fixed-header-current) !important;
}

.dk-header {
    position: fixed !important;
    inset-block-start: 0 !important;
    inset-inline: 0 !important;
    z-index: 1300 !important;
    background: var(--header-background, var(--dr-surface)) !important;
    color: var(--header-foreground, var(--dr-text)) !important;
}

.dk-brand__logo,
.brand-block__logo {
    padding: 0 !important;
    overflow: hidden !important;
}

img.dk-brand__logo,
img.brand-block__logo {
    width: 44px !important;
    height: 44px !important;
    object-fit: cover !important;
    display: block !important;
}

.dk-mobile-brand__mark {
    overflow: hidden !important;
}

.admin-dock-toggle,
.admin-dock-backdrop {
    display: none;
}

.admin-dock-toggle {
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    border: 1px solid rgb(var(--site-accent-rgb) / .28);
    border-radius: 14px;
    background: var(--surface);
    color: var(--site-accent);
    padding: 0 14px;
    font-weight: 950;
    box-shadow: 0 12px 24px rgb(15 23 42 / .08);
}

.admin-dock-nav {
    top: calc(var(--site-fixed-header-current) + 16px) !important;
    max-height: calc(100dvh - var(--site-fixed-header-current) - 32px) !important;
}

.admin-workspace-content > .admin-page-scope,
.admin-workspace-content > .route-admin-products,
.admin-workspace-content > .admin-settings-page,
.admin-workspace-content > .admin-settings-overview-page,
.admin-workspace-content > .admin-settings-advanced-page,
.admin-workspace-content > .admin-settings-commerce-page {
    width: 100% !important;
}

.admin-main .form-control,
.admin-main .form-select,
.admin-main input.form-control,
.admin-main textarea.form-control,
.admin-main select.form-select,
.route-account.account-redesign-shell input:not([type="checkbox"]),
.route-account.account-redesign-shell textarea {
    width: 100% !important;
    min-height: 46px !important;
    border: 1px solid var(--border, var(--dr-border)) !important;
    border-radius: 13px !important;
    background: var(--surface, var(--dr-surface)) !important;
    color: var(--text, var(--dr-text)) !important;
    padding: 10px 12px !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.admin-main textarea.form-control,
.route-account.account-redesign-shell textarea {
    min-height: 112px !important;
    resize: vertical;
}

.admin-main .form-control:focus,
.admin-main .form-select:focus,
.route-account.account-redesign-shell input:not([type="checkbox"]):focus,
.route-account.account-redesign-shell textarea:focus {
    border-color: rgb(var(--site-accent-rgb) / .48) !important;
    box-shadow: 0 0 0 4px rgb(var(--site-accent-rgb) / .14) !important;
}

.admin-main .btn,
.route-account.account-redesign-shell .account-redesign-button {
    border-radius: 13px !important;
    min-height: 42px !important;
}

.route-account.account-redesign-shell {
    width: min(100% - 28px, 1180px) !important;
    margin-inline: auto !important;
}

.route-account .account-redesign-section,
.route-account .account-redesign-hero,
.route-account .account-redesign-sidebar {
    box-shadow: 0 12px 28px rgb(15 23 42 / .05) !important;
}

.route-account .account-redesign-address-layout {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 420px) !important;
}

.dk-bottom-nav {
    grid-template-columns: repeat(5, 1fr) !important;
}

@media (max-width: 1199.98px) {
    :root {
        --site-fixed-header-current: 124px;
    }

    .admin-workspace-shell {
        grid-template-columns: 1fr !important;
    }

    .admin-dock-toggle {
        position: sticky;
        top: calc(var(--site-fixed-header-current) + 8px);
        z-index: 1260;
        display: inline-flex;
        justify-self: start;
        margin-bottom: 12px;
    }

    .admin-dock-backdrop {
        position: fixed;
        inset: var(--site-fixed-header-current) 0 0;
        z-index: 1400;
        border: 0;
        background: rgb(15 23 42 / .42);
        opacity: 0;
        pointer-events: none;
        transition: opacity .2s ease;
    }

    .admin-dock-backdrop.is-open {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }

    .admin-dock-nav {
        position: fixed !important;
        inset-block: var(--site-fixed-header-current) 0 !important;
        inset-inline-end: 0 !important;
        width: min(86vw, 340px) !important;
        max-height: none !important;
        overflow: auto !important;
        z-index: 1401 !important;
        border-radius: 18px 0 0 18px !important;
        transform: translateX(110%) !important;
        transition: transform .24s cubic-bezier(.2, .8, .2, 1) !important;
        box-shadow: -18px 0 38px rgb(15 23 42 / .16) !important;
    }

    .admin-dock-nav.is-open {
        transform: translateX(0) !important;
    }

    .admin-dock-nav__links {
        grid-template-columns: 1fr !important;
    }

    .admin-dock-nav__link {
        justify-content: flex-start !important;
        text-align: start !important;
    }
}

@media (max-width: 760px) {
    :root {
        --site-fixed-header-current: 120px;
    }

    .dk-shell,
    .app-shell {
        padding-top: var(--site-fixed-header-current) !important;
    }

    .admin-workspace-frame {
        width: min(100% - 14px, 1480px) !important;
    }

    .route-account.account-redesign-shell {
        width: min(100% - 14px, 1180px) !important;
    }

    .route-account .account-redesign-address-layout {
        grid-template-columns: 1fr !important;
    }
}

/* Final mobile polish: softer accent rails, fixed-header-safe drawers, and product CTA spacing. */
.dk-header__topline {
    height: 3px !important;
    background:
        linear-gradient(90deg, transparent, rgb(var(--site-accent-rgb) / .26), transparent) !important;
    box-shadow: 0 8px 22px rgb(var(--site-accent-rgb) / .10) !important;
}

.nav-chip.active,
.dk-nav-chip.active,
.admin-dock-nav__link.is-active,
.account-redesign-nav__item.is-active {
    border-color: rgb(var(--site-accent-rgb) / .22) !important;
    background:
        radial-gradient(120% 180% at 50% 100%, rgb(var(--site-accent-rgb) / .12), transparent 66%),
        color-mix(in srgb, var(--surface) 88%, var(--site-accent-soft)) !important;
    box-shadow:
        inset 0 -1px 0 rgb(var(--site-accent-rgb) / .18),
        0 12px 28px rgb(var(--site-accent-rgb) / .055) !important;
}

@media (max-width: 1199.98px) {
    .mobile-menu-shell {
        inset: var(--site-fixed-header-current) 0 0 !important;
        z-index: 1550 !important;
    }

    .mobile-menu-backdrop {
        inset: 0 !important;
    }

    .mobile-menu-panel {
        inset-block: 0 !important;
        max-height: calc(100dvh - var(--site-fixed-header-current)) !important;
        overflow: hidden !important;
        z-index: 1551 !important;
    }

    .mobile-menu-panel__content {
        padding-bottom: calc(18px + env(safe-area-inset-bottom)) !important;
    }

    .admin-dock-toggle {
        z-index: 1539 !important;
    }

    .admin-dock-backdrop {
        inset: var(--site-fixed-header-current) 0 0 !important;
        z-index: 1560 !important;
    }

    .admin-dock-nav {
        position: fixed !important;
        top: var(--site-fixed-header-current) !important;
        right: 0 !important;
        bottom: 0 !important;
        left: auto !important;
        width: min(88vw, 360px) !important;
        max-height: none !important;
        overflow-y: auto !important;
        z-index: 1561 !important;
        display: grid !important;
        align-content: start !important;
        border-radius: 18px 0 0 18px !important;
        transform: translate3d(112%, 0, 0) !important;
        visibility: visible !important;
        pointer-events: none !important;
        transition: transform .24s cubic-bezier(.2, .8, .2, 1) !important;
        box-shadow: -18px 0 40px rgb(15 23 42 / .18) !important;
    }

    .admin-dock-nav.is-open {
        transform: translate3d(0, 0, 0) !important;
        pointer-events: auto !important;
    }
}

@media (max-width: 760px) {
    body:has(.product-details-redesign-shell) .dk-bottom-nav {
        display: none !important;
    }
}
