:root {
    color-scheme: dark;
    --bg: #1c2420;
    --panel: #26312c;
    --panel-strong: #303b35;
    --text: #f2efe6;
    --muted: #b9b0a1;
    --line: #536057;
    --accent: #d8a84f;
    --accent-strong: #f0c66d;
    --danger: #e07464;
    --success: #76c893;
    --field: #101513;
    --focus: #84c7b7;
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    min-height: 100vh;
    background: radial-gradient(circle at top left, rgba(216, 168, 79, 0.18), transparent 30%), var(--bg);
    color: var(--text);
    font-size: 16px;
    scroll-behavior: smooth;
}

body.is-busy {
    overflow: hidden;
}

a {
    color: var(--accent-strong);
}

.site-header {
    position: relative;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 40px;
    padding: 4px clamp(10px, 1.4vw, 18px);
    background: rgba(28, 36, 32, 0.96);
    border-bottom: 1px solid var(--line);
    backdrop-filter: blur(10px);
}

.brand {
    display: inline-flex;
    align-items: center;
    padding: 0;
    background: #f2efe6;
    border: 1px solid rgba(216, 168, 79, 0.42);
    border-radius: 8px;
    overflow: hidden;
}

.brand img {
    display: block;
    width: min(156px, 30vw);
    height: auto;
    transform: scale(1.04);
    transform-origin: center;
}

.site-header__name {
    flex: 1 1 auto;
    min-width: 0;
    color: var(--text);
    text-decoration: none;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.15rem, 1vw + 0.85rem, 1.7rem);
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.1;
    text-align: center;
}

.site-header__name:hover,
.site-header__name:focus-visible {
    color: var(--accent-strong);
}

.top-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.top-nav a {
    color: var(--text);
    text-decoration: none;
    font-weight: 700;
}

.top-nav a.active {
    color: #111614;
    background: var(--accent);
    padding: 6px 10px;
    border-radius: 6px;
}

.top-nav--public {
    align-items: center;
    gap: 8px;
}

.top-nav--public a {
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 0.95rem;
    white-space: nowrap;
}

.top-nav--public a:not(.active):hover,
.top-nav--public a:not(.active):focus-visible {
    background: rgba(83, 96, 87, 0.3);
}

.admin-tools-bar {
    position: relative;
    z-index: 19;
    background: rgba(28, 36, 32, 0.94);
    border-bottom: 1px solid rgba(83, 96, 87, 0.75);
    backdrop-filter: blur(8px);
}

.admin-tools-bar__inner {
    width: calc(100% - 32px);
    max-width: none;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 8px 0;
}

.admin-tools-bar__inner a {
    color: var(--muted);
    text-decoration: none;
    font-weight: 700;
}

.admin-tools-bar__inner a.active {
    color: var(--accent-strong);
}

.page-jump-rail {
    position: fixed;
    left: 16px;
    bottom: 16px;
    z-index: 30;
    display: grid;
    gap: 8px;
}

.page-jump-rail__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 84px;
    min-height: 40px;
    padding: 8px 12px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: rgba(28, 36, 32, 0.94);
    color: var(--accent-strong);
    text-decoration: none;
    font-weight: 700;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}

.page-jump-rail__button.is-hidden {
    display: none;
}

.page-jump-rail__button:hover,
.page-jump-rail__button:focus-visible {
    background: rgba(36, 46, 40, 0.98);
}

.page-shell {
    width: calc(100% - 32px);
    max-width: none;
    margin: 0 auto;
    padding: 18px 0 34px;
}

.auth-wrap {
    min-height: calc(100vh - 156px);
    display: grid;
    align-items: start;
    justify-items: center;
    padding-top: 18px;
}

.panel {
    width: min(460px, 100%);
    padding: 28px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.28);
}

.panel-wide {
    width: min(860px, 100%);
}

.panel--full {
    width: 100%;
    max-width: none;
}

.panel-logo {
    display: block;
    width: min(260px, 80%);
    margin: 0 auto 20px;
    padding: 8px 12px;
    background: #f2efe6;
    border: 1px solid rgba(216, 168, 79, 0.55);
    border-radius: 8px;
}

h1 {
    margin: 0 0 12px;
    font-size: clamp(1.35rem, 1.5vw + 1rem, 1.95rem);
    line-height: 1.1;
    letter-spacing: 0;
}

h2 {
    margin: 0 0 10px;
    font-size: clamp(1.1rem, 1.1vw + 0.9rem, 1.6rem);
    line-height: 1.2;
}

h3 {
    margin: 0 0 8px;
    font-size: clamp(1rem, 0.65vw + 0.9rem, 1.2rem);
    line-height: 1.25;
}

p {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.public-site .page-shell {
    width: calc(100% - 32px);
    max-width: none;
    padding-top: 10px;
}

.public-site .site-header {
    justify-content: space-between;
}

.public-home {
    display: grid;
    gap: 32px;
}

.public-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.65fr);
    gap: 18px;
    align-items: start;
    min-height: auto;
    padding: 16px 24px 12px;
}

.public-hero__content {
    display: grid;
    gap: 14px;
    align-content: center;
    padding-right: 0;
    max-width: none;
    width: 100%;
}

.public-eyebrow {
    color: var(--accent-strong);
    font-size: 0.92rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.public-hero h1 {
    max-width: none;
    margin: 0;
    font-size: clamp(1.9rem, 1.9vw + 0.95rem, 3.2rem);
    line-height: 1.05;
}

.public-lead {
    max-width: none;
    color: #d7d0c1;
    font-size: clamp(0.98rem, 0.34vw + 0.94rem, 1.08rem);
}

.public-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    width: min(100%, 980px);
    justify-self: center;
}

.public-highlights,
.public-hero__facts {
    display: grid;
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.public-highlights {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 2px;
    max-width: none;
}

.public-highlights li,
.public-hero__facts span {
    display: grid;
    gap: 6px;
    padding: 14px 16px;
    color: var(--text);
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(83, 96, 87, 0.52);
    border-radius: 14px;
}

.public-highlights li strong {
    font-size: 0.98rem;
    line-height: 1.25;
}

.public-highlights li span {
    color: #d0c8b8;
    font-size: 0.94rem;
    line-height: 1.45;
}

.public-hero__visual {
    display: grid;
    gap: 0;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    align-self: start;
}

.public-hero__visual img {
    display: block;
    width: min(100%, 380px);
    max-height: 380px;
    margin: -4px auto 0;
}

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

.public-band {
    display: grid;
    gap: 18px;
    padding: 0;
    border-top: 1px solid rgba(83, 96, 87, 0.42);
}

.public-band--alt {
    padding: 18px;
    border: 1px solid rgba(83, 96, 87, 0.72);
    border-radius: 16px;
    background: rgba(38, 49, 44, 0.58);
}

.public-section-heading {
    display: grid;
    gap: 10px;
    max-width: 74ch;
}

.public-card-grid,
.public-material-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.public-feature-card,
.public-material-card,
.public-step {
    display: grid;
    gap: 10px;
    padding: 20px;
    background: rgba(38, 49, 44, 0.82);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 12px;
}

.public-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.public-step__number {
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    color: #111614;
    background: var(--accent);
    border-radius: 999px;
    font-weight: 800;
}

.public-cta {
    gap: 18px;
    padding-bottom: 8px;
}

.public-contact-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
}

.public-contact-meta p {
    color: var(--text);
}

.public-footer {
    padding: 0 0 18px;
    border-top: 1px solid rgba(83, 96, 87, 0.42);
}

.public-home--store {
    gap: 28px;
}

.public-hero--store {
    min-height: auto;
    gap: 16px;
    background:
        radial-gradient(circle at top right, rgba(216, 168, 79, 0.12), transparent 34%),
        rgba(34, 42, 38, 0.9);
    border: 1px solid rgba(83, 96, 87, 0.58);
    border-radius: 22px;
}

.public-hero--full {
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, 0.65fr);
    align-items: center;
}

.public-hero__visual--image img {
    width: 100%;
    max-width: none;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 18px;
    border: 0;
}

.public-section-heading--shop {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 14px;
    max-width: none;
}

.public-section-count {
    color: var(--muted);
    font-size: 0.92rem;
    white-space: nowrap;
}

.public-category-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.public-category-tiles {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
}

.public-category-tile,
.public-collection-spotlight {
    display: grid;
    gap: 10px;
    padding: 14px;
    color: var(--text);
    text-decoration: none;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 10px;
    overflow: hidden;
}

.public-category-tile img,
.public-collection-spotlight img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 8px;
}

.public-collection-spotlight {
    justify-items: center;
    width: min(500px, 100%);
    margin: 0;
}

.public-collection-spotlight__label {
    font-size: 1.05rem;
    font-weight: 800;
}

.public-collection-spotlight--single img {
    aspect-ratio: 4 / 3;
}

.public-collection-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.public-collection-grid--shop {
    margin-top: 18px;
}

.public-collection-grid--shop-compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: start;
    gap: 14px;
}

.public-collection-grid--shop-compact .public-collection-card {
    border-radius: 10px;
}

.public-collection-grid--shop-compact .public-collection-card__media img {
    aspect-ratio: 16 / 7;
}

.public-collection-grid--shop-compact .public-collection-card__price {
    left: 10px;
    bottom: 10px;
    padding: 0.38rem 0.62rem;
    font-size: 0.9rem;
}

.public-collection-grid--shop-compact .public-collection-card__body {
    gap: 4px;
    padding: 12px 14px;
}

.public-collection-grid--shop-compact .public-collection-card__body h2 {
    font-size: 1.02rem;
}

.public-collection-grid--shop-compact .public-collection-card__body p {
    font-size: 0.88rem;
    line-height: 1.35;
}

@media (max-width: 1180px) {
    .public-collection-grid--shop-compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .public-collection-grid--shop-compact {
        grid-template-columns: 1fr;
    }

    .public-collection-switcher__item {
        width: min(96px, 27vw);
    }
}

.public-collection-card {
    display: grid;
    gap: 0;
    color: inherit;
    text-decoration: none;
    overflow: hidden;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 12px;
    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.public-collection-card:hover,
.public-collection-card:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(216, 168, 79, 0.65);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}

.public-collection-card__media {
    position: relative;
    background: rgba(16, 21, 19, 0.45);
}

.public-collection-card__media img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.public-collection-card__price {
    position: absolute;
    left: 14px;
    bottom: 14px;
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 0.7rem;
    border-radius: 999px;
    background: rgba(18, 24, 21, 0.86);
    color: var(--text);
    font-weight: 800;
}

.public-collection-card__body {
    display: grid;
    gap: 8px;
    padding: 16px;
}

.public-collection-card__body p {
    color: var(--muted);
}

.public-collection-switcher {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
    margin-top: 18px;
}

.public-collection-switcher-wrap {
    display: grid;
    gap: 8px;
    justify-items: center;
    margin-bottom: 18px;
}

.public-collection-switcher__heading {
    margin: 0;
    color: var(--text);
    font-size: 1.12rem;
    font-weight: 800;
    text-align: center;
}

.public-collection-switcher__item {
    display: grid;
    justify-items: center;
    gap: 8px;
    width: 116px;
    color: inherit;
    text-decoration: none;
}

.public-collection-switcher__item img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 12px;
    border: 1px solid rgba(83, 96, 87, 0.82);
    background: rgba(16, 21, 19, 0.45);
    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.public-collection-switcher__item span {
    text-align: center;
    color: var(--muted);
    font-size: 0.88rem;
    font-weight: 700;
}

.public-collection-switcher__item:hover img,
.public-collection-switcher__item:focus-visible img,
.public-collection-switcher__item.is-active img {
    transform: translateY(-2px);
    border-color: rgba(216, 168, 79, 0.72);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}

.public-collection-switcher__item.is-active span {
    color: var(--accent-strong);
}

.public-category-nav a {
    padding: 10px 14px;
    color: var(--text);
    text-decoration: none;
    background: rgba(48, 59, 53, 0.72);
    border: 1px solid rgba(83, 96, 87, 0.72);
    border-radius: 999px;
    font-weight: 700;
}

.public-category-nav a:hover,
.public-category-nav a:focus-visible {
    border-color: rgba(216, 168, 79, 0.85);
    color: var(--accent-strong);
}

.public-shop-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.public-shop-grid--featured {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-product-card {
    display: grid;
    gap: 0;
    overflow: hidden;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 10px;
}

.public-product-card__media-link,
.public-product-card h3 a {
    color: inherit;
    text-decoration: none;
}

.public-product-card--linked {
    display: grid;
    height: 100%;
    color: inherit;
    text-decoration: none;
    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
    cursor: pointer;
}

.public-product-card--linked:hover,
.public-product-card--linked:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(216, 168, 79, 0.65);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}

.public-product-card__media {
    aspect-ratio: 1 / 1;
    background: rgba(16, 21, 19, 0.45);
}

.public-product-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.public-product-card__body {
    display: grid;
    gap: 8px;
    padding: 16px;
}

.public-product-card__meta {
    color: var(--accent-strong);
    font-size: 0.82rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.public-product-card__size,
.public-product-card__description,
.public-product-card__flag {
    color: var(--muted);
}

.public-product-card__variant {
    color: var(--text);
    font-weight: 700;
}

.public-product-card__description {
    font-size: 0.95rem;
    line-height: 1.5;
}

.public-product-card__footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 4px;
}

.public-card-grid--store {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-inline-link {
    color: var(--accent-strong);
    text-decoration: none;
    font-weight: 700;
}

.public-cart-offer {
    display: grid;
    gap: 10px;
    width: min(100%, 380px);
    padding: 12px 14px;
    border: 1px solid rgba(216, 168, 79, 0.35);
    border-radius: 12px;
    background: rgba(247, 244, 236, 0.04);
    justify-self: end;
    align-self: start;
}

.public-cart-offer summary {
    cursor: pointer;
    list-style: none;
    font-weight: 700;
    color: var(--accent-strong);
}

.public-cart-offer summary::-webkit-details-marker {
    display: none;
}

.public-cart-offer summary::after {
    content: " +";
}

.public-cart-offer[open] summary::after {
    content: " -";
}

.public-cart-offer__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.public-cart-offer__row--stacked {
    grid-template-columns: 1fr;
    gap: 10px;
}

.public-cart-offer__row span {
    display: block;
    margin-bottom: 4px;
    font-size: 0.86rem;
    font-weight: 700;
    color: var(--text);
}

.public-cart-offer__applied {
    display: grid;
    gap: 10px;
    width: 100%;
    margin-top: 10px;
}

.public-cart-offer__pill {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid rgba(216, 168, 79, 0.3);
    border-radius: 10px;
    background: rgba(216, 168, 79, 0.08);
}

.public-cart-offer__pill strong,
.public-cart-offer__pill span {
    display: block;
}

.public-carousel {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
}

.public-carousel__viewport {
    overflow: hidden;
}

.public-carousel__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(250px, 320px);
    gap: 16px;
}

.public-carousel__control {
    min-width: 44px;
    min-height: 44px;
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 999px;
    background: rgba(38, 49, 44, 0.88);
    color: var(--text);
}

.public-product-card--carousel {
    min-width: 0;
    height: auto;
}

.public-product-card--carousel .public-product-card__media {
    aspect-ratio: 1 / 1;
    display: grid;
    place-items: center;
    padding: 0;
    background: rgba(16, 21, 19, 0.45);
}

.public-product-card--carousel .public-product-card__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 10px;
}

.public-product-card--carousel .public-product-card__body {
    gap: 6px;
    padding: 12px 14px;
    align-content: start;
    min-width: 0;
}

.public-product-card--carousel h3,
.public-product-card--carousel .public-product-card__description,
.public-product-card--carousel .public-product-card__footer {
    min-width: 0;
    overflow-wrap: anywhere;
}

.public-product-card--carousel .public-product-card__description {
    font-size: 0.9rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(1.4em * 6);
}

.public-product-card--carousel .public-product-card__footer {
    justify-content: flex-start;
}

.public-feature-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.public-feature-strip__item {
    display: grid;
    gap: 8px;
    padding: 18px;
    background: rgba(255, 255, 255, 0.035);
    border: 1px solid rgba(83, 96, 87, 0.48);
    border-radius: 14px;
}

.public-feature-strip__item p {
    color: #d1cabb;
}

.public-reviews-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
}

.public-review-card {
    display: grid;
    grid-template-rows: auto auto auto 1fr auto;
    gap: 10px;
    min-height: 290px;
    padding: 20px;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 12px;
    overflow: hidden;
}

.public-review-card.is-hidden {
    display: none;
}

.public-review-card__stars {
    color: var(--accent-strong);
    font-size: 1.2rem;
    letter-spacing: 0.04em;
    text-align: center;
}

.public-review-card__meta {
    display: grid;
    gap: 4px;
    justify-items: center;
    margin: 0;
    color: var(--muted);
    text-align: center;
}

.public-review-card__meta strong {
    color: var(--text);
}

.public-review-card__meta span {
    font-size: 0.92rem;
}

.public-review-card__purchase {
    margin: 0;
    font-weight: 700;
    color: var(--text);
    text-align: left;
}

.public-review-card__text {
    margin: 0;
    color: var(--muted);
    text-align: left;
    line-height: 1.55;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
}

.public-review-card__more {
    justify-self: start;
}

.public-review-actions {
    display: flex;
    justify-content: center;
    margin-top: 18px;
}

.public-dialog {
    border: 0;
    padding: 0;
    background: transparent;
    max-width: min(760px, calc(100vw - 24px));
    width: 100%;
}

.public-dialog::backdrop {
    background: rgba(5, 8, 7, 0.7);
}

.public-dialog__panel {
    display: grid;
    gap: 16px;
    padding: 24px;
    background: rgba(28, 36, 32, 0.98);
    border: 1px solid rgba(216, 168, 79, 0.45);
    border-radius: 16px;
    color: var(--text);
}

.public-review-form textarea,
.public-review-moderation-form textarea {
    min-height: 120px;
}

.public-review-form__intro {
    color: #d6cebf;
}

.field-status {
    min-height: 18px;
    color: var(--muted);
    font-size: 0.86rem;
    font-weight: 600;
}

.field-status:not(:empty) {
    color: var(--danger);
}

input.is-invalid,
select.is-invalid,
textarea.is-invalid {
    border-color: rgba(224, 116, 100, 0.95);
    box-shadow: 0 0 0 1px rgba(224, 116, 100, 0.25);
}

.review-admin-card__form,
.public-review-moderation-form .form-grid {
    align-items: start;
}

.checkbox-label {
    display: flex;
    align-items: start;
    gap: 10px;
    font-weight: 600;
}

.checkbox-label input[type="checkbox"] {
    width: 18px;
    min-width: 18px;
    min-height: 18px;
    margin-top: 2px;
    padding: 0;
}

.checkbox-label span {
    color: var(--muted);
    line-height: 1.45;
}

.bundle-variant-choice {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    padding: 10px 12px;
    background: rgba(16, 21, 19, 0.56);
    border: 1px solid rgba(83, 96, 87, 0.62);
    border-radius: 8px;
}

.bundle-variant-choice input[type="checkbox"] {
    width: 16px;
    min-width: 16px;
    height: 16px;
    min-height: 16px;
    margin: 2px 0 0;
    padding: 0;
    accent-color: var(--accent);
}

.bundle-variant-choice span {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.bundle-variant-choice strong {
    color: var(--text);
}

.bundle-variant-choice small {
    color: var(--muted);
    line-height: 1.4;
}

.review-admin-card__form textarea {
    min-height: 130px;
}

@media (max-width: 1280px) {
    .public-reviews-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .public-reviews-grid {
        grid-template-columns: 1fr;
    }

    .public-review-card {
        min-height: 0;
    }
}

.public-search {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.public-search input[type="search"] {
    min-width: min(320px, 100%);
}

.public-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
    color: var(--muted);
    font-size: 0.95rem;
}

.public-breadcrumbs a {
    color: var(--muted);
    text-decoration: none;
}

.public-breadcrumbs a:hover,
.public-breadcrumbs a:focus-visible {
    color: var(--accent-strong);
}

.public-product-back {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 6px;
}

.public-product-detail {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    gap: 24px;
    align-items: start;
}

.public-product-detail__gallery,
.public-product-detail__content {
    display: grid;
    gap: 16px;
}

.public-product-detail__hero {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    background: rgba(16, 21, 19, 0.45);
    border: 1px solid rgba(83, 96, 87, 0.82);
}

.public-product-detail__hero img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.public-product-detail__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(83, 96, 87, 0.9);
    border-radius: 999px;
    background: rgba(28, 36, 32, 0.82);
    color: var(--text);
}

.public-product-detail__thumbs.is-hidden {
    display: none;
}

.public-product-detail__nav--prev {
    left: 12px;
}

.public-product-detail__nav--next {
    right: 12px;
}

.public-product-detail__thumbs {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(78px, 1fr));
    gap: 10px;
}

.public-product-detail__thumbs--primary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.public-product-detail__thumbs--primary.is-single {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.public-product-detail__thumbs--primary.is-single .public-product-detail__thumb {
    grid-column: 1 / span 2;
    justify-self: center;
    width: min(100%, calc(50% - 5px));
}

.public-product-detail__thumb {
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 8px;
    background: rgba(38, 49, 44, 0.88);
    cursor: pointer;
}

.public-product-detail__thumb.is-active {
    border-color: rgba(216, 168, 79, 0.92);
}

.public-product-detail__thumb img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.public-mini-picker {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(96px, 120px);
    justify-content: start;
    align-items: start;
    gap: 10px;
    overflow-x: auto;
}

.public-mini-picker__item {
    display: grid;
    gap: 8px;
    padding: 8px;
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 10px;
    background: rgba(38, 49, 44, 0.88);
    color: var(--text);
    font: inherit;
    cursor: pointer;
}

.public-mini-picker__item.is-active {
    border-color: rgba(216, 168, 79, 0.92);
    box-shadow: 0 0 0 1px rgba(216, 168, 79, 0.2);
}

.public-mini-picker__item img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 8px;
}

.public-mini-picker__item span {
    text-align: center;
    font-size: 0.9rem;
    color: var(--muted);
}

.public-product-detail__size,
.public-product-detail__description,
.public-product-detail__variant-name,
.public-product-detail__variant-meta,
.public-product-detail__location {
    color: var(--muted);
}

.public-product-detail__selected-item,
.public-product-detail__variant-name {
    color: var(--text);
    font-weight: 700;
}

.public-product-detail__selected-item {
    margin-top: -6px;
}

.public-product-detail__variant-block {
    display: grid;
    gap: 8px;
}

.public-product-detail__variant-picker {
    max-width: 340px;
}

.public-product-detail__variant-picker.is-hidden,
.public-product-detail__variant-help[hidden],
.public-product-detail__description[hidden] {
    display: none;
}

.public-product-detail__variant-help {
    color: var(--muted);
    font-size: 0.9rem;
}

.public-product-detail__variant-help--promo {
    color: var(--accent-strong);
    font-size: 0.98rem;
    font-style: italic;
    font-weight: 700;
}

.public-product-detail__size--bundle,
.public-product-detail__variant-meta--bundle {
    color: var(--accent-strong);
}

.public-product-detail__size--bundle {
    font-weight: 700;
}

.public-product-detail__variant-help--notice {
    color: var(--accent-strong);
    font-size: 0.98rem;
    font-style: italic;
    font-weight: 800;
}

.public-product-detail__price-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.public-product-detail__price-row strong {
    font-size: 1.3rem;
}

.public-product-detail__purchase {
    display: grid;
    gap: 10px;
}

.public-product-detail__checkout {
    display: grid;
    gap: 10px;
    width: min(100%, 320px);
}

.public-product-detail__checkout > div,
.public-product-detail__checkout > button {
    width: 100%;
    min-height: 46px;
}

.public-product-detail__checkout-live,
.public-product-detail__checkout-launch,
.public-paypal-modal__buttons {
    display: grid;
    gap: 10px;
}

.public-paypal-launch {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 46px;
    padding: 0.75rem 1rem;
    border: 1px solid transparent;
    border-radius: 6px;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.public-paypal-launch--paypal {
    color: #0a2e7a;
    background: #ffc439;
}

.public-paypal-launch--venmo {
    color: #ffffff;
    background: #008cff;
}

.public-paypal-modal__buttons > div {
    width: 100%;
    min-height: 46px;
}

.public-actions--product {
    display: grid;
    gap: 12px;
    justify-items: center;
    width: min(320px, 100%);
    min-width: 0;
    align-items: stretch;
}

.public-actions--product > .button,
.public-actions--product > a,
.public-actions--product > .public-product-detail__checkout {
    width: 100%;
}

.public-actions--product > a.button {
    justify-content: center;
    text-align: center;
}

.public-actions--product > .is-hidden {
    display: none !important;
}

.public-actions--bundle {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-items: stretch;
    width: min(760px, 100%);
    align-items: start;
}

.public-bundle-component {
    display: grid;
    gap: 8px;
    padding: 16px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(83, 96, 87, 0.52);
    border-radius: 12px;
}

.public-bundle-component .public-product-detail__variant-picker,
.public-bundle-component .public-product-detail__variant-picker select {
    width: 100%;
}

.public-bundle-component .public-product-detail__variant-picker span {
    color: var(--accent-strong);
}

.public-bundle-component h2 {
    margin: 0;
    font-size: 1rem;
}

.public-bundle-component .public-product-detail__detail,
.public-bundle-component .public-product-detail__variant-name,
.public-product-detail__variant-meta--bundle p {
    margin: 0;
}

.public-product-detail__variant-meta--bundle {
    display: grid;
    gap: 6px;
    padding: 12px 14px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(83, 96, 87, 0.42);
    border-radius: 10px;
}

.public-actions--bundle > :not(.public-bundle-component) {
    grid-column: 1 / -1;
    justify-self: center;
}

.public-product-detail__qty,
.public-cart-item__qty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: min(220px, 100%);
    gap: 10px;
    font-size: 0.9rem;
}

.public-product-detail__qty input,
.public-cart-item__qty input {
    min-height: 42px;
    text-align: center;
}

.public-product-detail__qty input {
    width: 92px;
    min-width: 92px;
}

.public-product-detail__variant-meta {
    display: grid;
    gap: 8px;
}

.public-store-note {
    color: var(--muted);
    font-size: 0.92rem;
}

.public-contact-form {
    display: grid;
    gap: 18px;
    width: min(860px, 100%);
    margin: 0 auto;
    padding: 22px;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 10px;
}

.public-contact-form .two-col {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: center;
    width: 100%;
    margin: 0;
}

.public-contact-form > label,
.public-contact-form > .status-label,
.public-contact-form > .public-actions {
    width: 100%;
    margin: 0;
}

.public-contact-form textarea {
    display: block;
    width: 100%;
    max-width: none;
}

.public-empty-state {
    display: grid;
    gap: 8px;
    padding: 24px;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 10px;
}

.public-cart-list {
    display: grid;
    gap: 14px;
    width: min(100%, 1100px);
    margin: 0 auto;
}

.public-cart-item {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 16px;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 10px;
}

.public-cart-item__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 8px;
}

.public-cart-item__content {
    display: grid;
    gap: 8px;
}

.public-cart-item__title-row {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
}

.public-cart-item__variant {
    color: var(--muted);
    margin: 0;
}

.public-cart-item__detail {
    color: var(--muted);
    margin: 0;
}

.public-cart-item__side {
    display: grid;
    gap: 18px;
    align-self: stretch;
    justify-items: end;
}

.public-cart-item__meta {
    display: grid;
    gap: 10px;
    justify-items: end;
    align-content: end;
}

.public-cart-item__qty {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    width: auto;
    min-width: 132px;
    white-space: nowrap;
}

.public-cart-item__qty span {
    font-weight: 700;
    flex: 0 0 auto;
}

.public-cart-item__qty input {
    width: 68px;
    min-width: 68px;
}

.public-cart-item__pricing {
    display: grid;
    gap: 4px;
    justify-items: end;
}

.public-cart-item__unit-pricing,
.public-cart-item__unit-savings,
.public-cart-item__line-total {
    margin: 0;
}

.public-cart-item__unit-pricing {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.public-cart-item__unit-pricing-old {
    position: relative;
    display: inline-block;
    color: var(--text);
    padding: 0 2px;
}

.public-cart-item__unit-pricing-old::after {
    content: "";
    position: absolute;
    left: -4px;
    right: -4px;
    top: 50%;
    border-top: 2px solid var(--danger);
    transform: rotate(-18deg);
    transform-origin: center;
    pointer-events: none;
}

.public-cart-item__unit-savings {
    color: var(--accent-strong);
    font-size: 0.88rem;
    font-weight: 700;
}

.public-cart-item__bundle-breakdown {
    color: var(--muted);
    font-size: 0.84rem;
}

.public-cart-item__line-total {
    color: var(--text);
    font-weight: 700;
}

.public-cart-item__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    align-items: center;
    align-self: end;
    padding-top: 6px;
}

.public-cart-item__actions .button {
    justify-content: center;
    text-align: center;
}

.public-cart-removed {
    display: grid;
    gap: 10px;
    width: min(100%, 1100px);
    margin: 8px auto 0;
}

.public-cart-removed__list {
    display: grid;
    gap: 10px;
    justify-items: start;
}

.public-cart-removed__item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    color: var(--muted);
}

.public-cart-removed__item strong {
    color: var(--text);
}

.public-cart-summary {
    display: grid;
    gap: 12px;
    justify-items: end;
    padding-top: 6px;
    width: min(100%, 1100px);
    margin: 0 auto;
}

.public-cart-summary__totals {
    display: grid;
    gap: 6px;
    width: min(320px, 100%);
}

.public-cart-summary__totals p {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.public-cart-summary__grand {
    padding-top: 6px;
    border-top: 1px solid rgba(83, 96, 87, 0.52);
}

.public-paypal-checkout {
    display: grid;
    gap: 10px;
    justify-items: center;
    width: min(360px, 100%);
}

.public-paypal-checkout__buttons {
    display: grid;
    gap: 10px;
    width: 100%;
}

.public-paypal-checkout__buttons > div {
    width: 100%;
    min-height: 46px;
}

.public-paypal-checkout__note {
    text-align: center;
    font-size: 0.92rem;
}

.public-cart-summary__checkout-links {
    width: min(360px, 100%);
    text-align: center;
}

.public-cart-summary__bundle-prompt {
    width: min(420px, 100%);
    margin: 0 auto 8px;
    color: var(--accent-strong);
    font-size: 0.92rem;
    font-weight: 700;
    text-align: center;
}

.public-receipt {
    display: grid;
    gap: 18px;
    width: min(100%, 760px);
    margin: 0 auto;
}

.public-receipt__summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.public-receipt__summary--single {
    grid-template-columns: minmax(0, 1fr);
}

.public-receipt__card {
    display: grid;
    gap: 10px;
    padding: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(83, 96, 87, 0.52);
    border-radius: 14px;
}

.public-receipt__card p {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.public-receipt__card--summary p {
    justify-content: flex-start;
    gap: 10px;
}

.public-receipt__card > div {
    margin-top: -2px;
}

.public-receipt__card--help p {
    display: block;
    overflow-wrap: anywhere;
}

.public-receipt__card--help strong,
.public-receipt__card--help a {
    color: var(--text);
    white-space: normal;
}

.editor-page__panel details,
.editor-page__panel details p,
.editor-page__panel details div,
.editor-page__panel details li,
.editor-page__panel details strong,
.editor-page__panel details summary {
    color: var(--text);
}

.editor-page__panel details a {
    color: var(--accent);
}

.public-receipt__card--narrow {
    width: min(100%, 520px);
    margin: 0 auto;
}

.public-receipt__items {
    display: grid;
    gap: 14px;
}

.public-receipt-item {
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 16px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(83, 96, 87, 0.52);
    border-radius: 14px;
}

.public-receipt-item__media img {
    width: 108px;
    height: 108px;
    object-fit: cover;
    border-radius: 10px;
}

.public-receipt-item__content {
    display: grid;
    gap: 6px;
}

.public-receipt-item__pricing {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.public-receipt-item__bundle-breakdown {
    color: var(--muted);
    font-size: 0.84rem;
}

.public-receipt-item__total {
    text-align: right;
    white-space: nowrap;
}

.public-receipt__grand {
    padding-top: 8px;
    border-top: 1px solid rgba(83, 96, 87, 0.52);
}

.public-receipt__actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: stretch;
    width: min(100%, 220px);
}

.public-receipt__actions .button {
    width: 100%;
    justify-content: center;
    text-align: center;
}

.public-stock-confirm__actions {
    grid-template-columns: 1fr;
}

.public-stock-confirm__actions button {
    min-height: 46px;
}

.public-band--receipt {
    width: min(100%, 860px);
    margin: 0 auto;
}

.public-band--receipt .public-section-heading {
    width: min(100%, 760px);
    margin-left: auto;
    margin-right: auto;
}

.public-signup-card {
    display: grid;
    gap: 14px;
    width: 100%;
    max-width: 420px;
    padding: 22px;
    background: rgba(38, 49, 44, 0.88);
    border: 1px solid rgba(83, 96, 87, 0.82);
    border-radius: 18px;
    justify-self: center;
}

.public-signup-card h2 {
    margin: 0;
}

.public-signup-card__note {
    font-size: 0.9rem;
}

.public-signup-form {
    display: grid;
    gap: 12px;
}

.public-signup-form .two-col {
    width: 100%;
}

.public-signup-form .button {
    justify-self: start;
}

.public-policy-card--cta {
    align-content: start;
}

.public-policy-card--cta .button {
    justify-self: start;
    margin-top: 6px;
}

.public-hero__visual--signup {
    align-self: center;
}

@media print {
    @page {
        margin: 0.32in 0.45in 0.5in;
    }

    .site-header,
    .public-footer--store,
    .page-jump-rail,
    .print-hide {
        display: none !important;
    }

    .page-shell {
        width: 100%;
        max-width: none;
        padding: 0;
        margin: 0;
    }

    .public-band--receipt {
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0.22in 0.34in 0.34in;
        -webkit-box-decoration-break: clone;
        box-decoration-break: clone;
    }

    body {
        background: #fff;
        color: #000;
        font-size: 11pt;
        line-height: 1.35;
        margin: 0;
        padding: 0;
    }

    .public-band--receipt,
    .public-band--receipt * {
        color: #111 !important;
    }

    .public-band--receipt a {
        color: #111 !important;
        text-decoration: underline;
    }

    .public-home,
    .public-home--store,
    .public-band,
    .public-band--receipt,
    .public-receipt,
    .public-band--receipt .public-section-heading {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .public-band {
        border-top: 0 !important;
    }

    .public-band--receipt .public-section-heading {
        display: grid;
        gap: 12pt;
        margin-bottom: 14pt !important;
    }

    .public-receipt {
        display: block;
        gap: 0;
    }

    .public-receipt__summary {
        display: block;
        gap: 0;
        break-inside: auto;
        page-break-inside: auto;
    }

    .public-receipt__summary--single,
    .public-receipt__items {
        display: block;
        break-inside: auto;
        page-break-inside: auto;
    }

    .public-receipt__card,
    .public-receipt-item {
        break-inside: avoid;
        page-break-inside: avoid;
        width: 100% !important;
        max-width: none !important;
        margin: 0 0 12pt 0;
    }

    .public-receipt__card,
    .public-receipt-item {
        background: #fff !important;
        border: 1px solid #c8d0ca !important;
        box-shadow: none !important;
    }

    .public-receipt__items {
        display: block;
    }

    .public-receipt-item {
        margin-bottom: 12pt;
    }

    .public-receipt-item:last-child {
        margin-bottom: 0;
    }

    .public-receipt-item__media img {
        width: 92px;
        height: 92px;
    }

    .public-receipt-item__content,
    .public-receipt-item__total,
    .public-receipt__card p,
    .public-receipt__card > div {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .public-receipt__card--narrow {
        width: 100% !important;
        margin: 0 0 12pt 0 !important;
    }

    .public-receipt__items + .public-receipt__summary,
    .public-receipt__summary + .public-receipt__summary {
        page-break-before: auto;
        break-before: auto;
    }

    .public-receipt__actions {
        display: none !important;
    }

    h1,
    h2,
    h3,
    p,
    li,
    tr,
    td,
    th {
        orphans: 3;
        widows: 3;
    }
}

@media (max-width: 960px) {
    .public-receipt {
        width: 100%;
    }

    .public-contact-form {
        width: 100%;
    }
}

@media (min-width: 961px) {
    .public-band > .form-grid,
    .public-band > form:not(.public-cart-list):not(.public-actions--product),
    .public-band > .settings-form {
        width: min(100%, 980px);
        margin-left: auto;
        margin-right: auto;
    }
}

.public-footer--store {
    display: grid;
    gap: 18px;
    margin-top: 8px;
    padding: 22px 0 12px;
}

.public-footer__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 0.9fr);
    gap: 18px;
    align-items: start;
}

.public-footer__nav,
.public-footer__contact {
    display: grid;
    gap: 8px;
}

.public-footer__nav--inline {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
    justify-content: center;
}

.public-footer__nav a,
.public-footer__contact a {
    color: var(--muted);
    text-decoration: none;
}

.public-footer__copyright {
    color: var(--muted);
    font-size: 0.92rem;
}

.public-footer__disclaimer {
    color: var(--muted);
    font-size: 0.88rem;
}

.public-policy-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.public-policy-card {
    display: grid;
    gap: 10px;
    padding: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(83, 96, 87, 0.52);
    border-radius: 14px;
}

.dashboard-grid--orders {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
}

.dashboard-grid--orders > .panel {
    height: 100%;
    width: 100%;
    margin-inline: 0;
}

.dashboard-grid--orders > .editor-page__panel {
    margin-top: 0 !important;
}

.dashboard-panel-full {
    width: 100% !important;
    max-width: none;
}

.dashboard-grid--orders,
.order-details-grid {
    margin-top: 20px;
}

.order-details-grid > .panel,
.order-details-grid > .editor-page__panel {
    width: 100%;
    margin-inline: 0;
    margin-top: 0 !important;
}

.dashboard-orders {
    display: grid;
    gap: 14px;
}

.dashboard-order-card {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
}

.dashboard-order-card p {
    margin: 0;
}

.dashboard-order-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.dashboard-order-card__heading {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.dashboard-order-status-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.dashboard-order-status {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1;
    cursor: help;
}

.dashboard-order-status--pending {
    color: #f3d18b;
    background: rgba(214, 168, 53, 0.14);
    border-color: rgba(214, 168, 53, 0.38);
}

.dashboard-order-status--shipped {
    color: #b8e1c1;
    background: rgba(68, 143, 92, 0.18);
    border-color: rgba(68, 143, 92, 0.42);
}

.dashboard-order-status--canceled {
    color: #f2b1a9;
    background: rgba(176, 71, 55, 0.16);
    border-color: rgba(176, 71, 55, 0.38);
}

.dashboard-order-status--oversold {
    color: #f2b1a9;
    background: rgba(176, 71, 55, 0.16);
    border-color: rgba(176, 71, 55, 0.38);
}

.dashboard-order-status--warning {
    color: #f3d18b;
    background: rgba(214, 168, 53, 0.14);
    border-color: rgba(214, 168, 53, 0.38);
}

.dashboard-order-status--low {
    color: #b8e1c1;
    background: rgba(68, 143, 92, 0.18);
    border-color: rgba(68, 143, 92, 0.42);
}

.public-section-heading h1,
.public-section-heading h2 {
    margin-bottom: 0;
}

.form-grid {
    display: grid;
    gap: 16px;
}

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

.inventory-grid--offers {
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.inventory-card--offer-scope {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    cursor: pointer;
}

.inventory-card--offer-scope .inventory-card__media img {
    width: 96px;
    height: 96px;
    object-fit: cover;
    border-radius: 8px;
}

.inventory-card--offer-scope .inventory-card__header {
    gap: 12px;
}

.inventory-card--offer-scope input[type="checkbox"] {
    width: 18px;
    height: 18px;
}

.offer-print__card {
    width: 100%;
}

.span-2 {
    grid-column: 1 / -1;
}

label {
    display: grid;
    gap: 7px;
    color: var(--text);
    font-weight: 700;
}

input,
select,
textarea {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 10px 12px;
    color: var(--text);
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 6px;
    font: inherit;
}

textarea {
    min-height: 160px;
    resize: vertical;
}

textarea:not([data-wysiwyg]) {
    display: block;
    line-height: 1.5;
}

.wysiwyg {
    border: 1px solid var(--line);
    border-radius: 6px;
    overflow: hidden;
    background: var(--field);
}

.wysiwyg-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px;
    border-bottom: 1px solid var(--line);
    background: var(--panel-strong);
}

.wysiwyg-toolbar button {
    min-height: 32px;
    padding: 6px 10px;
    color: var(--text);
    background: var(--field);
    border: 1px solid var(--line);
}

.wysiwyg-toolbar select,
.wysiwyg-toolbar input[type="color"] {
    width: auto;
    min-height: 32px;
    padding: 4px 8px;
}

.wysiwyg-toolbar input[type="color"] {
    width: 42px;
}

.wysiwyg-editor {
    min-height: 160px;
    padding: 12px;
    line-height: 1.5;
}

.wysiwyg-editor table,
.conversation table {
    width: 100%;
    border-collapse: collapse;
    margin: 10px 0;
}

.wysiwyg-editor td,
.wysiwyg-editor th,
.conversation td,
.conversation th {
    padding: 8px;
    border: 1px solid var(--line);
}

.wysiwyg-editor img,
.conversation img {
    max-width: 100%;
    height: auto;
}

.wysiwyg-editor:focus {
    outline: 2px solid var(--focus);
    outline-offset: -2px;
}

.wysiwyg-editor:empty::before {
    content: attr(data-placeholder);
    color: var(--muted);
}

input:focus,
select:focus,
textarea:focus {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

input[readonly] {
    color: var(--muted);
    background: #171d1b;
}

.secret-field {
    position: relative;
    display: block;
}

.secret-field input {
    min-width: 0;
    padding-right: 52px;
}

.secret-toggle {
    position: absolute;
    top: 50%;
    right: 6px;
    display: grid;
    place-items: center;
    width: 36px;
    min-width: 36px;
    height: 34px;
    min-height: 34px;
    padding: 0;
    color: var(--muted);
    background: transparent;
    border: 0;
    border-radius: 6px;
    transform: translateY(-50%);
}

.secret-toggle:hover,
.secret-toggle.is-visible {
    color: var(--accent-strong);
    background: rgba(216, 168, 79, 0.12);
}

.secret-toggle svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.button-row {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
}

.button-row .primary {
    grid-column: 2;
}

.button-row .left {
    justify-self: start;
}

.button-row .right {
    justify-self: end;
}

.button-row--inline {
    grid-template-columns: 1fr;
    margin-top: 0;
    align-self: end;
}

.checkbox-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.checkbox-row input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
}

.invoice-line-row {
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: rgba(38, 49, 44, 0.45);
}

.invoice-line-row__qty {
    align-items: end;
}

.auth-link {
    margin: 16px 0 0;
    text-align: center;
}

button,
.button {
    min-height: 42px;
    padding: 10px 16px;
    color: #111614;
    background: var(--accent);
    border: 0;
    border-radius: 6px;
    font: inherit;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

button:disabled {
    cursor: not-allowed;
    opacity: 0.55;
}

.button.secondary,
button.secondary {
    color: var(--text);
    background: var(--panel-strong);
    border: 1px solid var(--line);
}

button.compact,
.button.compact {
    min-height: 36px;
    padding: 7px 10px;
    font-size: 0.9rem;
}

.status {
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-strong);
    color: var(--text);
}

.status-toast {
    position: fixed;
    top: 66px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    z-index: 40;
    width: fit-content;
    max-width: min(720px, calc(100vw - 24px));
    padding: 12px 18px;
    line-height: 1.4;
    text-align: center;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.28);
    border-left-width: 4px;
}

.status.error {
    border-color: rgba(224, 116, 100, 0.8);
}

.status.success {
    border-color: rgba(118, 200, 147, 0.8);
}

.status.warn {
    border-color: rgba(216, 168, 79, 0.85);
}

.dashboard-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}

.dashboard-grid--summary {
    margin-top: 16px;
}

.settings-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0 22px;
    border-bottom: 1px solid var(--line);
}

.settings-tabs a {
    padding: 10px 12px;
    color: var(--text);
    text-decoration: none;
    border: 1px solid transparent;
    border-bottom: 0;
    border-radius: 6px 6px 0 0;
}

.settings-tabs a.active {
    color: #111614;
    background: var(--accent);
    border-color: var(--accent);
}

.settings-subtabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin: -4px 0 22px;
    border-bottom: 1px solid var(--line);
}

.settings-subtabs a {
    position: relative;
    bottom: -1px;
    padding: 10px 14px;
    color: var(--text);
    text-decoration: none;
    background: var(--field);
    border: 1px solid var(--line);
    border-bottom-color: var(--line);
    border-radius: 6px 6px 0 0;
}

.settings-subtabs a.active {
    color: #111614;
    background: var(--accent);
    border-color: var(--accent);
}

.settings-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
}

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

.section-heading > div {
    min-width: 0;
}

.section-heading h1,
.section-heading h2,
.section-heading h3 {
    margin: 0 0 6px;
}

.section-heading .button,
.section-heading button {
    flex: 0 0 auto;
}

.inventory-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
    align-items: start;
}

.inventory-card {
    display: grid;
    gap: 12px;
    padding: 18px;
    background: rgba(16, 21, 19, 0.56);
    border: 1px solid rgba(83, 96, 87, 0.72);
    border-radius: 10px;
}

.inventory-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

.inventory-card__header h2,
.inventory-card__header p {
    margin: 0;
}

.inventory-card__header .status {
    flex: 0 0 auto;
}

.bundle-admin-summary {
    display: grid;
    gap: 10px;
}

.bundle-admin-summary__pricing {
    display: grid;
    gap: 4px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(83, 96, 87, 0.52);
    border-radius: 8px;
}

.bundle-admin-summary__items {
    display: grid;
    gap: 10px;
}

.bundle-admin-summary__item {
    display: grid;
    gap: 4px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(83, 96, 87, 0.42);
    border-radius: 8px;
}

.bundle-admin-summary__item strong,
.bundle-admin-summary__pricing strong {
    color: var(--text);
}

.bundle-admin-summary__item p,
.bundle-admin-summary__pricing p {
    margin: 0;
}

.bundle-admin-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.bundle-admin-actions form {
    margin: 0;
}

.sticky-section-heading {
    position: sticky;
    top: 88px;
    z-index: 12;
    padding: 12px 0;
    background: rgba(28, 36, 32, 0.96);
    backdrop-filter: blur(10px);
}

.page-heading-bar {
    position: static;
    padding: 0;
    background: transparent;
    backdrop-filter: none;
}

.page-heading-bar .status-label {
    max-width: 64ch;
}

.page-heading-bar .section-actions {
    flex: 0 0 auto;
}

.settings-section-heading h2 {
    margin: 0 0 8px;
}

.settings-section-heading .status {
    margin: 0;
}

.status-label {
    margin: 4px 0 0;
    color: var(--muted);
}

.section-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 1 1 520px;
}

.toolbar-search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.toolbar-search input[type="search"] {
    width: auto;
    min-width: 220px;
    flex: 1 1 260px;
}

.toolbar-search--inline {
    flex-wrap: nowrap;
    justify-content: flex-end;
    flex: 1 1 320px;
    min-width: min(100%, 320px);
}

.toolbar-button-set {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.settings-group {
    display: grid;
    gap: 14px;
    margin-bottom: 28px;
}

.settings-group h2,
.panel h2 {
    margin: 0;
    font-size: 1.25rem;
}

.lookup-form {
    padding: 18px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.settings-table {
    display: grid;
    gap: 10px;
}

.settings-row {
    display: grid;
    gap: 6px;
    padding: 12px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 6px;
}

.settings-row.archived {
    opacity: 0.58;
}

.settings-row span {
    color: var(--muted);
}

.settings-row p {
    margin: 0;
}

.settings-form {
    display: grid;
    gap: 16px;
    margin-inline: auto;
}

.settings-form.panel-wide {
    width: min(1120px, 100%);
}

.editor-page {
    display: grid;
    gap: 16px;
}

.editor-page__heading {
    margin-bottom: 4px;
}

.editor-page__back {
    display: inline-flex;
    margin-bottom: 8px;
    color: var(--accent);
    text-decoration: none;
}

.editor-page__back:hover,
.editor-page__back:focus-visible {
    text-decoration: underline;
}

.editor-page__panel {
    width: min(1120px, 100%);
    margin-inline: auto;
}

.dashboard-grid + .editor-page__panel,
.dashboard-grid + section.editor-page__panel,
section.editor-page__panel + section.editor-page__panel {
    margin-top: 20px;
}

.editor-page__panel-heading {
    display: grid;
    gap: 6px;
    margin-bottom: 16px;
}

.editor-page__panel-heading h2,
.editor-page__panel-heading p {
    margin: 0;
}

.editor-page__panel-heading p {
    color: var(--muted);
}

.field-note {
    display: block;
    margin-top: 6px;
    color: var(--muted);
    font-size: 0.92rem;
    line-height: 1.45;
}

.field-note strong {
    color: var(--text);
}

.inventory-inline-check {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 8px;
    color: var(--muted);
    font-size: 0.88rem;
    font-weight: 600;
}

.inventory-inline-check input[type="checkbox"] {
    width: 16px;
    min-width: 16px;
    height: 16px;
    min-height: 16px;
    margin: 0;
}

.inventory-wholesale-label__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.settings-form-row {
    display: grid;
    gap: 14px;
}

.settings-form-row.cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.settings-form-row.cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.settings-form-row.cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.settings-form-row.cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.settings-form-row.cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.settings-form-row.cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.center-action {
    justify-self: center;
}

.settings-table-form {
    display: grid;
    gap: 16px;
    max-width: 100%;
}

.settings-table-grid {
    display: grid;
    grid-template-columns: minmax(96px, 1fr) minmax(132px, 1.6fr) 78px 78px 68px;
    gap: 0;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 8px;
}

.settings-table-grid.has-tags {
    grid-template-columns: minmax(84px, 1fr) minmax(84px, 1fr) minmax(118px, 1.5fr) 72px 72px 68px;
}

.settings-table-header {
    padding: 10px 8px;
    color: var(--text);
    font-weight: 800;
    background: var(--panel-strong);
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.settings-table-header.action-header {
    display: grid;
    place-items: center;
    text-align: center;
    border-right: 0;
}

.settings-table-header.action-header svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: var(--muted);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.settings-table-grid > input,
.settings-table-grid > select,
.settings-table-grid > .icon-danger,
.settings-table-grid > .settings-new-row-action {
    height: 100%;
    min-height: 48px;
    border: 0;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    border-radius: 0;
}

.settings-table-grid > .icon-danger,
.settings-table-grid > .settings-new-row-action {
    display: grid;
    place-items: center;
    border-right: 0;
    background: var(--field);
}

.settings-table-grid > .icon-danger {
    width: 100%;
    min-width: 0;
    border-color: rgba(224, 116, 100, 0.8);
}

.settings-empty-row,
.settings-add-row {
    grid-column: 1 / -1;
    padding: 12px;
    background: var(--field);
    border-bottom: 1px solid var(--line);
}

.settings-add-row {
    text-align: center;
    border-bottom: 0;
}

.settings-change-actions {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 12px;
    align-items: center;
}

.settings-change-actions .primary {
    grid-column: 2;
}

.operation-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 14px;
}

.operation-card {
    display: grid;
    gap: 14px;
    padding: 16px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.operation-title input {
    min-height: 48px;
    font-size: 1.1rem;
    font-weight: 800;
}

.operation-status-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.operation-card textarea {
    min-height: 120px;
}

.seasonal-dates {
    display: grid;
    gap: 10px;
}

.seasonal-dates__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--text);
    font-weight: 800;
}

.seasonal-date-rows {
    display: grid;
    gap: 8px;
}

.seasonal-date-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px;
    gap: 8px;
    align-items: center;
}

.operation-card-actions {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
}

.operation-card-actions .icon-danger {
    justify-self: start;
}

.operation-card-actions .primary {
    grid-column: 2;
}

.resource-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 14px;
}

.resource-cards--catalog {
    grid-template-columns: minmax(0, 1fr);
}

.resource-cards--products-compact {
    gap: 12px;
}

.resource-cards--plate-builder {
    grid-template-columns: minmax(0, 1fr);
}

.resource-card {
    position: relative;
    display: grid;
    gap: 8px;
    padding: 16px 56px 16px 16px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.resource-cards--products-compact .resource-card {
    gap: 6px;
    padding: 14px 52px 14px 14px;
}

.resource-card h3 {
    margin: 0;
}

.resource-card p {
    margin: 0;
}

.resource-card button {
    justify-self: start;
}

.resource-card__actions {
    margin-top: 4px;
    align-items: center;
}

.resource-status.default {
    color: var(--success);
    font-weight: 800;
}

.resource-status.not-active {
    color: var(--danger);
    font-weight: 800;
}

.resource-status.active {
    color: var(--accent-strong);
    font-weight: 800;
}

.resource-status.pending {
    color: #f3d18b;
    font-weight: 800;
}

.resource-status.approved {
    color: var(--success);
    font-weight: 800;
}

.resource-status.rejected {
    color: var(--danger);
    font-weight: 800;
}

.resource-cards--reviews {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.review-admin-card,
.review-admin-card__form {
    display: grid;
    gap: 12px;
}

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

.product-list-block {
    display: grid;
    gap: 6px;
}

.product-list-block ul {
    margin: 0;
    padding-left: 18px;
    color: var(--muted);
}

.dashboard-low-inventory {
    display: grid;
    gap: 10px;
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.dashboard-low-inventory li {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 10px 14px;
    align-items: center;
    padding: 8px 0;
    border-top: 1px solid rgba(83, 96, 87, 0.35);
}

.dashboard-low-inventory li:first-child {
    border-top: 0;
    padding-top: 0;
}

.dashboard-low-inventory__main {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.dashboard-low-inventory__meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.dashboard-thumb {
    width: 52px;
    aspect-ratio: 1;
    border-radius: 8px;
    overflow: hidden;
    background: rgba(16, 21, 19, 0.72);
    border: 1px solid rgba(83, 96, 87, 0.7);
    flex: 0 0 auto;
}

.dashboard-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.dashboard-thumb--inventory {
    width: 56px;
}

.dashboard-thumb--large {
    width: 92px;
    border-radius: 10px;
}

.order-details-panel {
    max-width: none;
}

.order-details-panel + .order-details-panel {
    margin-top: 18px;
}

.order-details-summary {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px 18px;
}

.order-details-items {
    gap: 14px;
}

.order-details-item-card {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: start;
    padding: 14px;
    border: 1px solid rgba(83, 96, 87, 0.8);
    border-radius: 10px;
    background: rgba(16, 21, 19, 0.72);
}

.order-details-item-card__body,
.order-details-item-card__meta {
    display: grid;
    gap: 6px;
}

.order-details-item-card__body p,
.order-details-item-card__meta p {
    margin: 0;
}

.order-details-item-card__meta {
    min-width: 120px;
    justify-items: end;
}

.product-list-block--variants {
    gap: 10px;
}

.variant-summary-list {
    display: grid;
    gap: 10px;
}

.resource-cards--products-compact .variant-summary-list {
    gap: 8px;
}

.variant-summary-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px 14px;
    align-items: center;
    padding: 12px;
    background: rgba(16, 21, 19, 0.72);
    border: 1px solid rgba(83, 96, 87, 0.8);
    border-radius: 8px;
}

.resource-cards--products-compact .variant-summary-row {
    gap: 8px 12px;
    padding: 10px;
}

.variant-summary-row__main {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.variant-summary-row__title {
    color: var(--text);
    font-weight: 700;
}

.variant-summary-row__meta {
    display: grid;
    gap: 4px;
    color: var(--muted);
}

.resource-cards--products-compact .variant-summary-row__meta {
    gap: 3px;
    font-size: 0.95rem;
}

.variant-summary-row__meta span {
    white-space: normal;
}

.variant-summary-row__actions {
    display: grid;
    gap: 8px;
    align-self: start;
}

.variant-summary-row__actions .button {
    justify-content: center;
    text-align: center;
}

.inventory-plate-runs-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 14px;
}

.inventory-plate-run-card {
    display: grid;
    gap: 8px;
    padding: 12px;
    background: rgba(16, 21, 19, 0.72);
    border: 1px solid rgba(83, 96, 87, 0.8);
    border-radius: 8px;
}

.inventory-plate-run-card__title {
    color: var(--text);
    font-weight: 700;
}

.inventory-image-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px;
    margin-top: 10px;
}

.inventory-image-card {
    display: grid;
    gap: 8px;
    padding: 12px;
    background: rgba(16, 21, 19, 0.72);
    border: 1px solid rgba(83, 96, 87, 0.8);
    border-radius: 8px;
}

.inventory-image-card img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid var(--line);
}

.inventory-image-card__option {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--muted);
}

.inventory-image-card__option input[type="checkbox"],
.inventory-image-card__option input[type="radio"] {
    width: 16px;
    min-width: 16px;
    height: 16px;
    min-height: 16px;
    margin: 0;
    accent-color: var(--accent);
}

.inventory-image-card--bundle {
    align-content: start;
}

.inventory-image-card--archived {
    opacity: 0.82;
}

.inventory-color-block {
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.02);
}

.inventory-color-select-wrap {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
}

.inventory-color-select-wrap__swatch {
    display: block;
    width: 28px;
    height: 28px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: transparent;
}

@media (max-width: 720px) {
    .variant-summary-row {
        grid-template-columns: 1fr;
    }

    .variant-summary-row .button {
        width: 100%;
        justify-content: center;
    }

    .inventory-plate-runs-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .inventory-toolbar {
        grid-template-columns: 1fr;
    }

    .inventory-toolbar .button,
    .inventory-toolbar button,
    .inventory-toolbar input,
    .inventory-toolbar label {
        width: 100%;
    }

    .inventory-row {
        grid-template-columns: 1fr;
        padding-right: 12px;
    }

    .inventory-row__media {
        justify-items: center;
        width: 100%;
    }

    .inventory-card-image--small,
    .inventory-row__image-controls {
        width: min(180px, 100%);
    }

    .inventory-row__headline {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .inventory-row__line,
    .inventory-row__line--pricing,
    .inventory-row__actions {
        flex-direction: column;
        align-items: flex-start;
    }

    .inventory-row__actions > .button,
    .inventory-row__actions > a,
    .inventory-row__details {
        width: 100%;
    }

    .inventory-row__details > summary {
        text-align: right;
    }

    .inventory-row__top {
        grid-template-columns: 1fr;
    }

    .inventory-adjustment-list__head {
        flex-direction: column;
    }

    .inventory-row__details {
        text-align: left;
    }

    .page-jump-rail {
        left: 12px;
        bottom: 12px;
    }

    .page-jump-rail__button {
        min-width: 72px;
        min-height: 38px;
        padding: 7px 10px;
        font-size: 0.9rem;
    }
}

.dynamic-stack {
    display: grid;
    gap: 12px;
    padding: 14px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.dynamic-stack__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.dynamic-stack__header h3 {
    margin: 0;
    font-size: 1rem;
}

.dynamic-stack__body {
    display: grid;
    gap: 10px;
}

.dynamic-row {
    display: grid;
    gap: 10px;
    align-items: end;
}

.dynamic-row--section-entry {
    grid-template-columns: minmax(0, 1fr) 42px;
}

.dynamic-row--3col {
    grid-template-columns: minmax(0, 1.7fr) minmax(0, 0.8fr) minmax(0, 0.9fr) minmax(0, 1.2fr) 42px;
}

.dynamic-row--component {
    gap: 14px;
    padding: 14px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.dynamic-row--component-top {
    grid-template-columns: minmax(0, 1.7fr) minmax(0, 0.8fr) minmax(0, 0.9fr) minmax(0, 0.9fr) 42px;
}

.component-color-sections {
    gap: 8px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.plate-card {
    display: grid;
    gap: 16px;
    padding: 16px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 10px;
}

.colorway-card {
    display: grid;
    gap: 14px;
    padding: 16px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 10px;
}

.colorway-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.colorway-card__header h3 {
    margin: 0;
}

.plate-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.plate-card__header h3,
.plate-card__header p {
    margin: 0;
}

.plate-card__items {
    gap: 12px;
}

.plate-card__usage {
    gap: 12px;
}

.plate-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.plate-summary-grid--build,
.pricing-recommendation-grid {
    margin-top: 12px;
}

.plate-summary-card {
    display: grid;
    gap: 10px;
    padding: 14px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.plate-summary-card h4 {
    margin: 0;
    font-size: 1rem;
}

/* Flatten form internals so the admin reads like a form instead of nested cards. */
.editor-page .dynamic-stack,
.editor-page .plate-card,
.editor-page .dynamic-row--component,
.editor-page .component-color-sections,
.editor-page .plate-summary-card,
.editor-page .inventory-plate-run-card,
.editor-page .inventory-image-card {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
}

.editor-page .dynamic-stack,
.editor-page .plate-card,
.editor-page .dynamic-row--component,
.editor-page .plate-summary-card,
.editor-page .inventory-image-card,
.editor-page .inventory-plate-run-card {
    gap: 12px;
}

.editor-page .dynamic-stack__header,
.editor-page .plate-card__header {
    padding: 0;
    margin: 0;
}

.editor-page .dynamic-stack__header h3,
.editor-page .plate-card__header h3,
.editor-page .plate-summary-card h4,
.editor-page .inventory-plate-run-card__title {
    font-size: 0.98rem;
    font-weight: 800;
}

.editor-page .dynamic-stack__body,
.editor-page .plate-card__items,
.editor-page .plate-card__usage {
    gap: 12px;
}

.editor-page [data-plates-body] {
    grid-template-columns: minmax(0, 1fr);
}

.editor-page .plate-card {
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.02);
}

.editor-page .plate-card + .plate-card,
.editor-page .dynamic-stack + .dynamic-stack,
.editor-page .plate-summary-card + .plate-summary-card {
    padding-top: 14px;
    margin-top: 2px;
}

.editor-page .plate-card + .plate-card {
    border-top: 1px solid var(--line);
}

.editor-page .dynamic-row--component,
.editor-page .inventory-image-card,
.editor-page .inventory-plate-run-card {
    border-top: 1px solid rgba(83, 96, 87, 0.55);
    padding-top: 10px;
}

.editor-page .dynamic-row--component-top,
.editor-page .dynamic-row--plate-item-top {
    align-items: end;
}

.editor-page .component-color-sections,
.editor-page .plate-item-card__sections,
.editor-page .inventory-image-card__option {
    padding: 0;
    margin: 0;
}

.editor-page .plate-summary-grid,
.editor-page .pricing-recommendation-grid {
    gap: 18px;
}

.editor-page .plate-summary-card {
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.03);
}

.editor-page .summary-list {
    gap: 7px;
}

.editor-page .summary-list div {
    align-items: start;
}

.editor-page .dynamic-stack__footer {
    padding-top: 4px;
}

.pricing-margin-line {
    min-height: 24px;
    text-align: center;
}

.pricing-warning-line {
    min-height: 20px;
    text-align: center;
    color: var(--danger);
}

.inventory-pricing-margins .status-label {
    margin: 0;
    text-align: center;
}

.summary-list {
    display: grid;
    gap: 8px;
    margin: 0;
}

.summary-list div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}

.summary-list dt,
.summary-list dd {
    margin: 0;
}

.summary-list dt {
    color: var(--muted);
    font-weight: 700;
}

.summary-list dd {
    color: var(--text);
    font-weight: 800;
    text-align: right;
}

.pricing-recommendation-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.pricing-goal-note {
    margin-left: 8px;
}

.pricing-warning-note {
    margin-left: 8px;
    color: #d98f87;
    font-size: 0.9rem;
}

.plate-build-warning {
    position: fixed;
    left: 50%;
    bottom: 16px;
    transform: translateX(-50%);
    z-index: 32;
    width: min(760px, calc(100vw - 24px));
    padding: 12px 16px;
    color: #fff2ee;
    background: rgba(148, 52, 52, 0.96);
    border: 1px solid rgba(224, 116, 100, 0.9);
    border-radius: 8px;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.28);
    text-align: center;
    font-weight: 700;
}

.plate-item-card {
    gap: 12px;
    padding: 12px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.dynamic-row--plate-item-top {
    grid-template-columns: minmax(0, 1.8fr) minmax(0, 0.9fr) 42px;
}

.plate-item-card__colors {
    gap: 8px;
}

.dynamic-row--plate-color {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dynamic-row--plate-color-head {
    margin-bottom: 2px;
}

.field-head {
    color: var(--muted);
    font-size: 0.88rem;
    font-weight: 800;
}

.field-cell {
    display: grid;
}

.section-picker {
    position: relative;
}

.section-picker > summary {
    min-height: 44px;
    padding: 10px 12px;
    color: var(--text);
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 6px;
    cursor: pointer;
    list-style: none;
}

.section-picker > summary::-webkit-details-marker {
    display: none;
}

.section-picker[open] > summary {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.section-picker__menu {
    position: absolute;
    top: calc(100% - 1px);
    left: 0;
    right: 0;
    z-index: 6;
    display: grid;
    gap: 8px;
    max-height: 220px;
    overflow: auto;
    padding: 10px 12px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-top: 0;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
}

.section-picker__option {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
}

.section-picker__option input[type="checkbox"] {
    width: 18px;
    min-width: 18px;
    height: 18px;
    min-height: 18px;
    margin: 0;
    accent-color: var(--accent);
}

.dynamic-row--plate-usage {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 0.8fr) minmax(0, 0.8fr) 42px;
}

.dynamic-row--plate-usage-head.inventory-colorway-head,
.dynamic-row--plate-usage.inventory-colorway-row {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) 42px;
}

.dynamic-row--extra-cost {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 0.85fr) minmax(0, 0.95fr) 42px;
}

.dynamic-row--inventory-image {
    grid-template-columns: minmax(0, 1.8fr) minmax(0, 1.2fr) minmax(0, 0.7fr) 42px;
}

.inventory-card-image {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--line);
    margin-bottom: 10px;
}

.inventory-card-image--small {
    width: 136px;
    height: 136px;
    aspect-ratio: auto;
    margin-bottom: 0;
}

.inventory-card-image--empty {
    display: grid;
    place-items: center;
    color: var(--muted);
    font-size: 0.85rem;
    background: var(--field);
}

.inventory-toolbar {
    display: grid;
    grid-template-columns: minmax(220px, 1.5fr) repeat(4, auto) repeat(2, minmax(90px, 120px)) auto auto;
    gap: 10px;
    align-items: center;
    margin: 0 0 16px;
}

.inventory-toolbar > * {
    min-width: 0;
}

.inventory-toolbar label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
}

.inventory-toolbar input[type="checkbox"] {
    width: 16px;
    min-height: 16px;
    height: 16px;
    margin: 0;
}

.inventory-list {
    display: grid;
    gap: 12px;
}

.inventory-list--grouped {
    gap: 16px;
}

.inventory-list--stacked {
    grid-template-columns: minmax(0, 1fr);
}

.inventory-group {
    display: grid;
    gap: 12px;
    padding: 14px;
    background: rgba(38, 49, 44, 0.62);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.inventory-group__header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px 16px;
    align-items: end;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(83, 96, 87, 0.45);
}

.inventory-group__heading {
    display: grid;
    gap: 4px;
}

.inventory-group__heading strong {
    font-size: 1.1rem;
}

.inventory-group__subheading,
.inventory-group__meta {
    color: var(--muted);
    font-size: 0.92rem;
}

.inventory-group__totals {
    color: var(--text);
    white-space: nowrap;
}

.inventory-group__items {
    display: grid;
    gap: 10px;
}

.inventory-sale-list {
    margin: 0 0 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.02);
}

.inventory-sale-list > summary {
    padding: 12px 14px;
    cursor: pointer;
    list-style: none;
    color: var(--accent-strong);
    font-weight: 700;
}

.inventory-sale-list > summary::-webkit-details-marker {
    display: none;
}

.inventory-sale-list__body {
    display: grid;
    gap: 12px;
    padding: 0 14px 14px;
}

.inventory-sale-list .settings-form-row label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.inventory-sale-list input[type="checkbox"] {
    width: 16px;
    min-width: 16px;
    height: 16px;
    min-height: 16px;
    margin: 0;
}

.inventory-row {
    position: relative;
    display: grid;
    grid-template-columns: 28px 136px minmax(0, 1fr);
    gap: 14px;
    padding: 12px 52px 12px 12px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.inventory-row--variant-preview {
    grid-template-columns: 136px minmax(0, 1fr);
    padding-right: 12px;
}

.inventory-row--nested {
    background: rgba(16, 21, 19, 0.26);
}

.inventory-row--variant-preview .inventory-row__media {
    width: 136px;
}

.inventory-row__select {
    display: grid;
    align-content: start;
    padding-top: 4px;
}

.inventory-row__select input {
    width: 18px;
    min-width: 18px;
    height: 18px;
    min-height: 18px;
    margin: 0;
}

.inventory-row__media {
    display: grid;
    gap: 8px;
    align-content: start;
    width: 136px;
}

.inventory-row__image-controls {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 36px;
    gap: 6px;
    align-items: center;
    width: 136px;
    font-size: 0.82rem;
    color: var(--muted);
}

.inventory-row__image-controls [data-inventory-image-count] {
    text-align: center;
    justify-self: center;
    width: 100%;
}

.inventory-row__image-controls .button {
    width: 36px;
    min-width: 36px;
    min-height: 32px;
    padding: 0;
}

.inventory-row__main {
    display: grid;
    gap: 8px;
    min-width: 0;
}

.inventory-row__top {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    align-items: start;
}

.inventory-row__headline {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    align-items: baseline;
}

.inventory-row__headline strong {
    font-size: 1rem;
}

.inventory-row__headline span {
    color: var(--muted);
    font-size: 0.92rem;
    white-space: nowrap;
}

.inventory-row__line {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    color: var(--muted);
    font-size: 0.92rem;
}

.inventory-row__line--pricing span {
    min-width: 0;
}

.inventory-row__line--pricing {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: baseline;
}

.inventory-inline-divider {
    display: inline-block;
    padding: 0 4px;
    color: var(--muted);
}

.inventory-row__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: start;
    justify-content: flex-end;
    padding-top: 8px;
    border-top: 1px solid rgba(83, 96, 87, 0.45);
}

.inventory-row__details {
    width: 100%;
    text-align: right;
}

.inventory-row__details > summary {
    cursor: pointer;
    list-style: none;
    color: var(--accent-strong);
    font-weight: 700;
}

.inventory-row__details > summary::-webkit-details-marker {
    display: none;
}

.inventory-row__details-body {
    display: grid;
    gap: 12px;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(83, 96, 87, 0.7);
    text-align: left;
}

.inventory-adjustment-list {
    display: grid;
    gap: 10px;
    padding-left: 0;
    list-style: none;
}

.inventory-adjustment-list li {
    display: grid;
    gap: 6px;
    padding: 10px 0 0;
    border-top: 1px solid rgba(83, 96, 87, 0.45);
}

.inventory-adjustment-list__head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    align-items: start;
}

.inventory-adjustment-edit > summary {
    list-style: none;
}

.inventory-adjustment-edit > summary::-webkit-details-marker {
    display: none;
}

.inventory-adjust-form {
    margin-top: 12px;
}

@media (max-width: 920px) {
    .inventory-toolbar {
        grid-template-columns: 1fr 1fr;
    }

    .inventory-toolbar > :first-child {
        grid-column: 1 / -1;
    }

    .inventory-row {
        grid-template-columns: 28px minmax(120px, 160px) minmax(0, 1fr);
        padding-right: 16px;
    }
}

.dynamic-row__remove {
    justify-self: end;
}

.filament-swatch {
    display: block;
    width: 90px;
    height: 52px;
    border: 1px solid var(--line);
    border-radius: 8px;
}

.filament-swatch-large {
    width: 110px;
    height: 64px;
}

.rgb-section {
    display: grid;
    gap: 10px;
}

.rgb-rows {
    display: grid;
    gap: 8px;
}

.rgb-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) 42px;
    gap: 8px;
    align-items: end;
}

.rgb-row label {
    gap: 4px;
}

.rgb-row input {
    min-height: 40px;
}

.source-only[hidden],
[data-subscription-cost-wrap][hidden] {
    display: none !important;
}

[hidden] {
    display: none !important;
}

.resource-delete-form {
    position: absolute;
    top: 10px;
    right: 10px;
}

.icon-danger {
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
    padding: 0;
    color: var(--danger);
    background: transparent;
    border: 1px solid rgba(224, 116, 100, 0.8);
    border-radius: 6px;
}

.icon-danger:hover {
    color: #ffffff;
    background: rgba(224, 116, 100, 0.18);
}

.icon-danger svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.operation-dialog,
.resource-dialog,
.editor-dialog,
.confirm-dialog {
    width: min(620px, calc(100% - 32px));
    padding: 0;
    color: var(--text);
    background: transparent;
    border: 0;
}

.operation-dialog::backdrop,
.resource-dialog::backdrop,
.editor-dialog::backdrop,
.confirm-dialog::backdrop {
    background: rgba(10, 14, 12, 0.72);
    backdrop-filter: blur(4px);
}

.operation-dialog .operation-card,
.resource-dialog form,
.editor-dialog form,
.confirm-dialog__panel {
    position: relative;
    display: grid;
    gap: 16px;
    padding: 24px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.38);
}

.confirm-dialog__panel h2,
.confirm-dialog__panel p {
    margin: 0;
}

.flash-dialog {
    position: fixed;
    inset: 0;
    z-index: 120;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 12px;
    background: rgba(10, 14, 12, 0.74);
    backdrop-filter: blur(4px);
}

.flash-dialog.is-open {
    display: flex;
}

.flash-dialog__panel {
    width: min(540px, 100%);
    display: grid;
    gap: 14px;
    padding: 24px;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.34);
}

.flash-dialog__panel h2,
.flash-dialog__panel p {
    margin: 0;
}

.flash-dialog__actions {
    margin-top: 6px;
}

.flash-dialog__actions form {
    width: 100%;
}

.flash-dialog__actions .button,
.flash-dialog__actions button {
    width: 100%;
    justify-content: center;
    text-align: center;
}

.flash-dialog__actions--stock {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.flash-dialog__actions--stock form:first-child {
    grid-column: 1 / -1;
}

.dialog-close {
    position: absolute;
    top: 10px;
    right: 10px;
    display: grid;
    place-items: center;
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
    padding: 0;
    color: #ffffff;
    background: var(--danger);
}

.tile {
    display: grid;
    gap: 10px;
    align-content: start;
    padding: 18px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.tile--linked {
    color: inherit;
    text-decoration: none;
    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.tile--linked:hover,
.tile--linked:focus-visible {
    border-color: var(--accent);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
    transform: translateY(-2px);
}

.tile strong,
.tile p {
    margin: 0;
}

.tile .button {
    justify-self: start;
    margin-top: 4px;
}

.tile-footnote {
    margin-top: 2px;
    text-align: center;
    font-size: 0.9rem;
    color: var(--muted);
}

.dashboard-grid--members {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.subscriber-list {
    display: grid;
    gap: 14px;
}

.subscriber-card {
    display: grid;
    gap: 8px;
    padding: 14px 16px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.subscriber-card p,
.subscriber-card strong {
    margin: 0;
}

.subscriber-card__header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}

.subscriber-reason-list li {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
}

.conversation {
    white-space: pre-wrap;
    padding: 16px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 6px;
}

.contact-summary {
    display: grid;
    gap: 16px;
    margin-bottom: 22px;
}

.filament-conflict-panel {
    display: grid;
    gap: 12px;
    margin-bottom: 18px;
}

.filament-conflict-panel h3,
.filament-conflict-panel p {
    margin: 0;
}

.filament-conflict-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.filament-conflict-actions form {
    margin: 0;
}

.filament-color-codes {
    display: grid;
    gap: 8px;
}

.filament-color-code {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: start;
}

.filament-color-code__swatch {
    display: block;
    width: 28px;
    height: 28px;
    border: 1px solid var(--line);
    border-radius: 6px;
}

.filament-color-code div {
    display: grid;
    gap: 2px;
}

.filament-color-code span {
    color: var(--muted);
    font-size: 0.92rem;
}

.color-list-shell {
    display: grid;
    gap: 22px;
}

.color-list-materials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.color-list-materials a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 8px 14px;
    color: var(--text);
    text-decoration: none;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 6px;
    font-weight: 700;
}

.color-list-materials a.active {
    color: #111614;
    background: var(--accent);
    border-color: var(--accent);
}

.color-list-builder {
    display: grid;
    gap: 18px;
}

.color-list-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 16px;
}

.color-list-option {
    display: grid;
    gap: 12px;
    padding: 16px;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.color-list-option__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.color-list-option__title {
    display: grid;
    gap: 4px;
}

.color-list-option__title strong {
    font-size: 1rem;
}

.color-list-option__title span {
    color: var(--muted);
    font-size: 0.9rem;
}

.color-list-option__swatch {
    width: 100%;
    height: 74px;
    border: 1px solid var(--line);
    border-radius: 8px;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    forced-color-adjust: none;
}

.color-list-option__toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
}

.color-list-option__toggle input {
    width: 18px;
    min-height: 18px;
    height: 18px;
    margin: 0;
}

.color-list-option__codes {
    display: grid;
    gap: 6px;
}

.color-list-option__codes div {
    display: grid;
    gap: 2px;
    color: var(--muted);
    font-size: 0.9rem;
}

.color-list-option__subswatches,
.print-color-card__subswatches {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.color-list-option__subswatches--centered,
.print-color-card__subswatches--centered {
    width: min(100%, 210px);
    margin: 0 auto;
}

.print-color-card__subswatch {
    display: block;
    width: 100%;
    min-height: 24px;
    border: 1px solid #bfc8c2;
    border-radius: 6px;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    forced-color-adjust: none;
}

.print-sheet {
    width: min(1200px, calc(100% - 32px));
    margin: 0 auto;
    padding: 28px 0 40px;
}

.print-sheet__actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-bottom: 18px;
}

.print-sheet__panel {
    padding: 28px;
    background: #ffffff;
    color: #17201c;
    border-radius: 10px;
    border: 1px solid #d7dfd9;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    forced-color-adjust: none;
}

.print-sheet__header {
    display: grid;
    grid-template-columns: 180px 1fr 180px;
    align-items: center;
    gap: 18px;
    margin-bottom: 24px;
}

.print-sheet__logo {
    width: 160px;
    padding: 8px 10px;
    background: #f7f4ec;
    border: 1px solid rgba(216, 168, 79, 0.55);
    border-radius: 8px;
}

.print-sheet__logo img {
    display: block;
    width: 100%;
    height: auto;
}

.print-sheet__brand {
    text-align: center;
}

.print-sheet__brand h1 {
    margin: 0;
    color: #17201c;
}

.print-sheet__brand p {
    margin: 6px 0 0;
    color: #4d5a54;
}

.print-sheet__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.print-color-group {
    display: grid;
    gap: 10px;
    margin-top: 18px;
    break-inside: auto;
    page-break-inside: auto;
}

.print-color-group__lead {
    display: grid;
    gap: 10px;
    break-inside: avoid-page;
    page-break-inside: avoid;
}

.print-color-group__title {
    margin: 0;
    padding-bottom: 6px;
    border-bottom: 1px solid #d7dfd9;
    break-after: avoid-page;
    page-break-after: avoid;
}

.print-color-group__title + .print-sheet__grid {
    break-before: avoid-page;
    page-break-before: avoid;
}

.print-color-card {
    display: grid;
    gap: 8px;
    padding: 12px;
    border: 1px solid #cfd7d1;
    border-radius: 8px;
    break-inside: avoid;
    page-break-inside: avoid;
}

.print-color-card__swatch {
    width: 100%;
    height: 58px;
    border: 1px solid #bfc8c2;
    border-radius: 8px;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    forced-color-adjust: none;
}

.print-color-card h2 {
    margin: 0;
    font-size: 1rem;
    color: #17201c;
}

.print-color-card p {
    margin: 0;
    color: #4d5a54;
    font-size: 0.88rem;
}

.print-color-card__codes {
    display: grid;
    gap: 8px;
}

.print-color-card__codes div {
    display: grid;
    gap: 2px;
    font-size: 0.92rem;
    color: #314039;
}

@media print {
    @page {
        margin: 0.58in 0.5in 0.5in;
    }

    body {
        background: #ffffff;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
        forced-color-adjust: none;
    }

    .print-sheet {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .print-sheet__actions {
        display: none;
    }

    .print-sheet__panel {
        padding: 0.14in;
        background: #ffffff;
        border-radius: 0;
        border: 1px solid #d7dfd9;
        -webkit-box-decoration-break: clone;
        box-decoration-break: clone;
    }

    .print-sheet__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .print-color-group {
        break-inside: auto;
        page-break-inside: auto;
    }

    .print-color-group__lead {
        break-inside: avoid-page;
        page-break-inside: avoid;
    }

    .print-color-group__title {
        break-after: avoid-page;
        page-break-after: avoid;
    }

    .print-color-group__title + .print-sheet__grid {
        break-before: avoid-page;
        page-break-before: avoid;
    }
}

.floating-add-button {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 30;
    min-width: 110px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28);
}

.message-received h2 {
    margin: 0;
    font-size: 1.2rem;
}

.message-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
}

.message-meta div,
.message-block {
    padding: 12px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 6px;
}

.message-meta dt,
.message-block h3 {
    margin: 0 0 5px;
    color: var(--muted);
    font-size: 0.88rem;
    font-weight: 700;
}

.message-meta dd,
.message-block p {
    margin: 0;
}

.summary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.summary-item {
    padding: 12px;
    background: var(--field);
    border: 1px solid var(--line);
    border-radius: 6px;
}

.summary-item span {
    display: block;
    color: var(--muted);
    font-size: 0.88rem;
    font-weight: 700;
}

.priority-pill {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 5px 10px;
    border-radius: 999px;
    color: #111614;
    font-weight: 800;
}

.priority-pill.high {
    background: var(--danger);
}

.priority-pill.medium {
    background: var(--accent-strong);
}

.priority-pill.low {
    background: var(--success);
}

.checkbox-line {
    display: inline-flex;
    grid-template-columns: none;
    align-items: center;
    gap: 10px;
    width: fit-content;
}

.checkbox-line input[type="checkbox"] {
    width: 18px;
    min-width: 18px;
    height: 18px;
    min-height: 18px;
    margin: 0;
    accent-color: var(--accent);
}

.setup-checks {
    display: grid;
    gap: 10px;
}

.setup-check {
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--field);
}

.setup-check.pass {
    border-color: rgba(118, 200, 147, 0.8);
}

.setup-check.fail {
    border-color: rgba(224, 116, 100, 0.85);
}

.setup-check small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
}

.working-dialog {
    position: fixed;
    inset: 0;
    z-index: 100;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(10, 14, 12, 0.72);
    backdrop-filter: blur(4px);
    min-height: 100dvh;
}

.working-dialog.is-open {
    display: flex;
}

.working-dialog__panel {
    width: min(420px, 100%);
    max-height: calc(100dvh - 48px);
    overflow: auto;
    padding: 28px;
    text-align: center;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.38);
}

.working-dialog__panel h2 {
    margin: 14px 0 8px;
    font-size: 1.35rem;
}

.working-dialog__panel p {
    margin: 0;
}

.working-dialog__spinner {
    width: 48px;
    height: 48px;
    margin: 0 auto;
    border: 4px solid rgba(242, 239, 230, 0.2);
    border-top-color: var(--accent-strong);
    border-radius: 50%;
    animation: working-spin 0.9s linear infinite;
}

@keyframes working-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 720px) {
    .site-header {
        min-height: 48px;
        padding: 6px 10px;
        align-items: flex-start;
        flex-direction: column;
    }

    .top-nav {
        justify-content: flex-start;
    }

    .brand img {
        width: min(160px, 46vw);
    }

    .site-header__name {
        width: 100%;
        font-size: 1.05rem;
    }

    .page-shell,
    .public-site .page-shell {
        width: calc(100% - 16px);
        padding: 18px 0 28px;
    }

    .two-col {
        grid-template-columns: 1fr;
    }

    .settings-section-heading {
        align-items: stretch;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 10px;
    }

    .section-heading {
        align-items: stretch;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 10px;
    }

    .section-heading .button,
    .section-heading button {
        align-self: stretch;
        text-align: center;
    }

    .settings-section-heading .primary {
        align-self: stretch;
    }

    .page-heading-bar .primary {
        align-self: auto;
    }

    .public-contact-form {
        padding: 16px 14px;
    }

    .public-contact-form > label,
    .public-contact-form > .status-label,
    .public-contact-form > .public-actions,
    .public-contact-form .two-col {
        width: 100%;
        margin: 0;
    }

    .admin-tools-bar {
        top: 48px;
    }

    .section-actions,
    .toolbar-search {
        width: 100%;
        justify-content: flex-start;
        gap: 8px;
        flex: 0 0 auto;
    }

    .toolbar-button-set {
        width: 100%;
        justify-content: flex-start;
        gap: 8px;
    }

    .toolbar-search--inline {
        flex-wrap: wrap;
        min-width: 0;
        width: 100%;
        flex: 0 0 auto;
    }

    .toolbar-button-set > .button,
    .toolbar-button-set > button {
        flex: 0 0 auto;
    }

    .toolbar-search input[type="search"] {
        width: 100%;
        min-width: 0;
        flex: 1 1 100%;
    }

    .settings-tabs,
    .settings-subtabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 2px;
    }

    .settings-tabs a,
    .settings-subtabs a {
        flex: 0 0 auto;
    }

    .settings-form-row.cols-2,
    .settings-form-row.cols-3,
    .settings-form-row.cols-4,
    .settings-form-row.cols-5,
    .settings-form-row.cols-6,
    .settings-form-row.cols-7,
    .settings-table-grid,
    .settings-table-grid.has-tags {
        grid-template-columns: 1fr;
    }

    .operation-cards,
    .resource-cards {
        grid-template-columns: 1fr;
    }

    .product-meta-grid {
        grid-template-columns: 1fr;
    }

    .color-list-grid,
    .print-sheet__grid {
        grid-template-columns: 1fr;
    }

    .editor-page .dynamic-row--component,
    .editor-page .inventory-image-card,
    .editor-page .inventory-plate-run-card,
    .editor-page .plate-card + .plate-card,
    .editor-page .dynamic-stack + .dynamic-stack,
    .editor-page .plate-summary-card + .plate-summary-card {
        padding-top: 12px;
    }

    .print-sheet__header {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .print-sheet--color-list .print-sheet__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .print-sheet--color-list .print-sheet__header {
        grid-template-columns: 180px 1fr 180px;
        justify-items: stretch;
        text-align: inherit;
    }

    .print-sheet--color-list .print-sheet__brand {
        text-align: center;
    }

    .status-toast {
        top: 58px;
        left: 50%;
        right: auto;
        bottom: auto;
        width: fit-content;
        max-width: calc(100vw - 24px);
    }

    .operation-status-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rgb-row {
        grid-template-columns: 1fr;
    }

    .dynamic-row--3col {
        grid-template-columns: 1fr;
    }

    .dynamic-row--component-top {
        grid-template-columns: 1fr;
    }

    .dynamic-row--plate-item-top,
    .dynamic-row--plate-color,
    .dynamic-row--plate-usage,
    .dynamic-row--extra-cost,
    .dynamic-row--inventory-image {
        grid-template-columns: 1fr;
    }

    .plate-summary-grid,
    .pricing-recommendation-grid {
        grid-template-columns: 1fr;
    }

    .rgb-row .icon-danger {
        justify-self: start;
    }

    .settings-table-header {
        display: none;
    }

    .button-row {
        grid-template-columns: 1fr;
    }

    .button-row .primary,
    .button-row .left,
    .button-row .right {
        grid-column: 1;
        justify-self: stretch;
        text-align: center;
    }

    .floating-add-button {
        display: none;
    }

    .public-site .site-header {
        align-items: center;
        justify-content: flex-start;
    }

    .public-site .page-shell {
        width: calc(100% - 20px);
        padding-top: 8px;
    }

    .site-header {
        gap: 10px;
        padding: 4px 10px;
    }

    .brand img {
        width: min(118px, 32vw);
    }

    .site-header__name {
        font-size: clamp(0.95rem, 3.4vw, 1.15rem);
    }

    .top-nav {
        width: 100%;
        justify-content: flex-start;
        gap: 4px;
    }

    .top-nav--public a {
        font-size: 0.86rem;
        padding: 4px 6px;
    }

    .public-home {
        gap: 24px;
    }

    .public-hero {
        grid-template-columns: 1fr;
        min-height: auto;
        gap: 16px;
        padding: 14px 12px;
        border-radius: 16px;
    }

    .public-hero h1 {
        max-width: none;
        font-size: clamp(1.55rem, 7vw, 2.2rem);
        line-height: 1.08;
    }

    .public-lead {
        font-size: 0.95rem;
    }

    .public-highlights li,
    .public-hero__facts span,
    .public-feature-strip__item {
        padding: 12px;
        border-radius: 12px;
    }

    .public-highlights li strong {
        font-size: 0.92rem;
    }

    .public-highlights li span {
        font-size: 0.85rem;
        line-height: 1.35;
    }

    .public-highlights,
    .public-card-grid,
    .public-material-grid,
    .public-steps,
    .public-hero__facts,
    .public-card-grid--store {
        grid-template-columns: 1fr;
    }

    .public-collection-grid,
    .public-shop-grid,
    .public-shop-grid--featured {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .public-hero--full,
    .public-footer__grid,
    .public-feature-strip,
    .public-carousel,
    .public-policy-grid {
        grid-template-columns: 1fr;
    }

    .public-hero__visual {
        padding: 0;
    }

    .public-section-heading--shop {
        flex-direction: column;
        align-items: stretch;
    }

    .public-band {
        gap: 14px;
    }

    .public-band--alt {
        padding: 14px;
    }

    .public-collection-card__body,
    .public-product-card__body {
        gap: 6px;
        padding: 12px;
    }

    .public-product-card__size,
    .public-product-card__description,
    .public-product-card__flag {
        font-size: 0.84rem;
        line-height: 1.35;
    }

    .public-category-nav {
        overflow-x: auto;
        padding-bottom: 2px;
        flex-wrap: nowrap;
    }

    .public-category-nav a {
        flex: 0 0 auto;
    }

    .public-carousel__track {
        grid-auto-columns: 86%;
    }

    .panel,
    .editor-page__panel {
        padding: 18px 16px;
    }

    .public-search {
        align-items: stretch;
    }

    .public-search input[type="search"] {
        min-width: 0;
    }

    .public-product-detail {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .public-product-detail__content {
        gap: 10px;
    }

    .public-product-detail__content h1 {
        font-size: clamp(1.45rem, 6.5vw, 1.95rem);
    }

    .form-grid.two-col,
    .two-col {
        grid-template-columns: 1fr;
    }

    .public-product-detail__thumbs,
    .public-product-detail__thumbs--primary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .public-product-detail__thumbs--primary.is-single .public-product-detail__thumb {
        width: min(100%, 250px);
    }

    .public-product-detail__price-row strong {
        font-size: 1.15rem;
    }

    .public-mini-picker {
        grid-auto-columns: minmax(72px, 88px);
        gap: 8px;
    }

    .public-mini-picker__item {
        gap: 6px;
        padding: 6px;
    }

    .public-mini-picker__item span {
        font-size: 0.78rem;
    }

    .public-cart-item {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 14px;
    }

    .public-cart-item__media {
        max-width: 180px;
    }

    .public-cart-item__actions {
        justify-content: stretch;
    }

    .public-cart-item__side,
    .public-cart-item__meta {
        justify-items: start;
    }

    .public-cart-item__actions .button,
    .public-actions--product .button,
    .public-actions--product .public-product-detail__qty {
        width: 100%;
    }

    .public-actions--bundle {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .public-bundle-component {
        padding: 14px;
    }

    .public-cart-item__qty {
        width: 100%;
        max-width: 120px;
    }

    .public-cart-summary,
    .public-paypal-checkout {
        justify-items: stretch;
        width: 100%;
    }

    .public-paypal-checkout__note {
        text-align: left;
    }

    .public-cart-offer__row {
        grid-template-columns: 1fr;
    }

    .public-receipt__summary {
        grid-template-columns: 1fr;
    }

    .dashboard-grid--orders {
        grid-template-columns: 1fr;
    }

    .public-receipt-item {
        grid-template-columns: 1fr;
    }

    .public-receipt-item__media img {
        width: 100%;
        max-width: 180px;
        height: auto;
    }

    .public-receipt-item__total {
        text-align: left;
    }

    .public-product-detail__variant-picker {
        max-width: none;
    }

    .public-actions,
    .public-contact-meta {
        flex-direction: column;
        align-items: stretch;
    }

    .public-actions {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 960px) and (orientation: landscape) {
    .public-site .page-shell {
        width: calc(100% - 24px);
    }

    .public-hero {
        grid-template-columns: minmax(0, 1.2fr) minmax(220px, 0.8fr);
        gap: 16px;
        padding: 14px 16px;
    }

    .public-hero h1 {
        font-size: clamp(1.6rem, 3.2vw, 2.2rem);
    }

    .public-lead {
        font-size: 0.94rem;
    }

    .public-collection-grid,
    .public-shop-grid,
    .public-shop-grid--featured {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .public-product-detail {
        grid-template-columns: minmax(0, 0.9fr) minmax(280px, 1.1fr);
        gap: 16px;
    }

    .public-product-detail__content {
        gap: 10px;
    }

    .public-product-detail__thumbs,
    .public-product-detail__thumbs--primary {
        grid-template-columns: repeat(2, minmax(110px, 1fr));
        gap: 8px;
    }

    .public-product-detail__thumbs--primary.is-single .public-product-detail__thumb {
        width: min(100%, 260px);
    }
}
