/* The customer and administration spaces share Hedone's catalogue palette. */
.site-header .primary-nav a { position: relative; }
.site-header .primary-nav .active::after { position: absolute; right: 0; bottom: -.5rem; left: 0; height: 1px; background: currentColor; content: ''; }
.workspace-context { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; min-height: 3.5rem; padding: 0 2.5vw; border-bottom: 1px solid #dedbd5; background: #f0eee8; color: #625c50; }
.workspace-context > span, .workspace-eyebrow { font-size: .6rem; letter-spacing: .12em; text-transform: uppercase; }
.workspace-context a { display: inline-flex; align-items: center; gap: 1.5rem; color: #625c50; font-size: .68rem; text-decoration: none; }
.member-shell, .administration-layout { --accent: #414b3b; --muted: #7a766d; --hairline: #dedbd5; --paper: #faf9f6; width: 100%; max-width: none; min-height: calc(100svh - 9rem); margin: 0; padding: 3rem 2.5vw 5rem; box-sizing: border-box; background: var(--paper); }
.member-shell { grid-template-columns: 15rem minmax(0, 1fr); gap: clamp(2.5rem, 5vw, 7rem); }
.member-shell *, .administration-layout * { box-sizing: border-box; }
.member-sidebar, .administration-sidebar { position: sticky; top: 2rem; align-self: start; min-width: 0; padding: .8rem 1.5rem 1rem 0; }
.member-sidebar .catalog-kicker, .workspace-eyebrow { margin: 0 0 1rem; color: #777064; font: .58rem var(--sans); letter-spacing: .12em; text-transform: uppercase; }
.member-identity, .workspace-identity { margin: 0 0 2rem; color: #35362e; font: 400 1.8rem/1.2 var(--display); letter-spacing: -.035em; }
.member-navigation { display: grid; gap: .35rem; }
.member-navigation a { display: flex; align-items: center; justify-content: space-between; min-height: 3rem; border: 0; border-bottom: 1px solid transparent; padding: .85rem 1rem; color: #716c62; font: .78rem var(--sans); }
.member-navigation a.active { border: 0; background: #eeece5; color: #343b2f; }
.member-navigation a.active::after { content: '—'; }
.member-navigation a:hover { background: #f0eee8; color: #343b2f; }
.member-navigation .member-admin-link { margin-top: 1.5rem; border-top: 1px solid #dedbd5; padding-top: 1.2rem; }
.member-signout { margin-top: 2rem; padding: 1.2rem 1rem; border-color: #dedbd5; color: #716c62; font-size: .73rem; }
.member-page-heading { padding: .5rem 0 2rem; border-bottom: 1px solid #dedbd5; }
.member-page-heading .catalog-kicker { margin-bottom: .9rem; color: #777064; font: .58rem var(--sans); letter-spacing: .12em; }
.member-page-heading h1 { margin: 0 0 1rem; color: #292c25; font-size: clamp(2.6rem, 4vw, 4rem); letter-spacing: -.055em; }
.member-page-heading > p:last-child { color: #777064; font: .85rem/1.8 var(--sans); }
.member-session { margin: 1rem 0; color: #817b70; }
.member-panel { padding: clamp(1.5rem, 2.5vw, 2.75rem); border: 1px solid #e0dcd2; background: #fffefa; }
.member-panel h2 { color: #34362d; font-size: 1.7rem; }
.member-panel .catalog-kicker { color: #777064; font: .58rem var(--sans); letter-spacing: .12em; }
.member-panel > header > p:last-child { color: #777064; font-size: .8rem; }
.member-shortcuts { gap: 1.5rem; margin: 2rem 0; }
.member-shortcuts a { min-height: 8rem; border: 0; border-bottom: 1px solid #d2cdc1; padding: 1.5rem; background: #eeece5; }
.member-shortcuts strong { color: #4a5141; font: 400 2.8rem var(--display); }
.member-shortcuts span { color: #3f4237; font-size: .85rem; }
.member-shortcuts small { color: #777064; }
.member-details-grid { gap: 1.5rem; }
.member-shell .account-form label { color: #625d51; font: .68rem var(--sans); letter-spacing: .025em; }
.member-shell .account-form input, .member-shell .account-form select { min-height: 3rem; border-color: #dcd7cb; background: #faf9f6; color: #36382f; font: .8rem var(--sans); }
.member-shell .account-form { gap: 1.25rem; }
.member-shell .member-button { min-height: 3rem; gap: .8rem; padding: .85rem 1.5rem; border-color: #414b3b; background: #414b3b; color: #fffefa; font-size: .75rem; }
.member-shell .member-button:hover { background: #293223; }
.member-empty { display: flex; align-items: center; justify-content: center; flex-direction: column; min-height: 26rem; margin-top: 2rem; border: 0; padding: 3rem 1.5rem; background: #f0eee8; text-align: center; }
.member-empty-icon { display: grid; place-items: center; width: 4rem; height: 4rem; margin-bottom: 1.25rem; border: 1px solid #d5d0c3; border-radius: 50%; color: #7a7969; }
.member-empty-icon svg { width: 1.8rem; height: 1.8rem; fill: none; stroke: currentColor; stroke-width: 1; }
.member-empty .catalog-kicker { margin: 0 0 .5rem; color: #777064; font: .58rem var(--sans); letter-spacing: .12em; }
.member-empty h2 { margin: .6rem 0 .8rem; font-size: clamp(2rem, 3vw, 3rem); letter-spacing: -.045em; }
.member-empty > p:not(.catalog-kicker) { max-width: 25rem; margin: 0 0 1.2rem; color: #777064; font-size: .82rem; }
.member-order-status { color: #566146; border-color: #cdd1c1; background: #eef0e9; }
.member-orders { gap: 1.5rem; margin-top: 2rem; }
.member-address-layout { gap: 2rem; margin-top: 2rem; }
.member-address-card { padding: 1.75rem; border-color: #dedbd5; background: #fffefa; }
.member-address-card h2 { font-size: 1.6rem; }
.member-sidebar .member-signout:hover { color: #343b2f; }
.administration-layout { display: grid; grid-template-columns: 15rem minmax(0, 1fr); align-items: start; gap: clamp(2.5rem, 4vw, 5rem); }
.administration-content { min-width: 0; }
.administration-layout .admin-shell { --admin-panel: #fffefa; --admin-soft: #f0eee8; max-width: none; width: 100%; min-height: 0; margin: 0; padding: 0; overflow-x: auto; }
.administration-sidebar .admin-links { display: flex; align-items: stretch; flex-direction: column; gap: .35rem; }
.administration-sidebar .admin-links a { display: flex; align-items: center; justify-content: space-between; min-height: 3rem; margin: 0; border: 0; padding: .85rem 1rem; background: none; color: #716c62; font: .78rem var(--sans); text-decoration: none; text-transform: none; letter-spacing: 0; }
.administration-sidebar .admin-links a span { color: #8b887c; font-size: .8rem; }
.administration-sidebar .admin-links a.active, .administration-sidebar .admin-links a:hover { background: #eeece5; color: #343b2f; }
.administration-sidebar .admin-links a.active span { color: #414b3b; }
.administration-sidebar .admin-links .admin-return-store { margin-top: 1.5rem; border-top: 1px solid #dedbd5; padding-top: 1.2rem; }
.workspace-sidebar-note { margin: 2.5rem 1rem 0; color: #898276; font-size: .65rem; line-height: 1.9; }
.administration-layout .admin-heading { display: block; border-bottom: 1px solid #dedbd5; padding: .5rem 0 2rem; }
.administration-layout .admin-heading .catalog-kicker { margin: 0 0 .9rem; color: #777064; font: .58rem var(--sans); letter-spacing: .12em; }
.administration-layout .admin-heading h1 { margin: 0; color: #292c25; font-size: clamp(2.6rem, 4vw, 4rem); letter-spacing: -.055em; line-height: 1.1; }
.administration-layout .admin-note { max-width: 50rem; margin: 1.25rem 0 2rem; color: #777064; font-size: .82rem; line-height: 1.8; }
.administration-layout .admin-shell button { font-family: var(--sans); font-size: .68rem; letter-spacing: .015em; text-transform: none; }
.administration-layout .admin-button { min-height: 2.9rem; padding: .8rem 1.2rem !important; }
.administration-layout .admin-shell > .admin-button { margin-top: 0; margin-bottom: 1.5rem; }
.administration-layout .admin-table { border-color: #dedbd5; border-radius: 0; }
.administration-layout .admin-table thead { background: #f0eee8; }
.administration-layout .admin-table th { color: #6b665a; font-family: var(--sans); font-size: .65rem; letter-spacing: .025em; text-transform: none; }
.administration-layout .admin-table td { color: #57584e; font-family: var(--sans); font-size: .76rem; }
.administration-layout .admin-table tbody th { color: #34382d; font-family: var(--display); font-size: 1.1rem; letter-spacing: -.015em; }
.administration-layout .admin-table th, .administration-layout .admin-table td { padding: 1.15rem 1rem; }
.administration-layout .admin-editor, .administration-layout .product-workspace, .administration-layout .supply-record, .administration-layout .admin-order { border: 1px solid #dedbd5; background: #fffefa; box-shadow: none; }
.administration-layout .admin-editor h2 { font-size: 1.8rem; }
.administration-layout .admin-editor-summary { margin: .7rem 0 1.5rem; color: #777064; font: .76rem/1.7 var(--sans); text-transform: none; letter-spacing: 0; }
.administration-layout .admin-order-fields label, .administration-layout .admin-comment, .administration-layout .product-search, .administration-layout .product-filter { color: #625d51; font-family: var(--sans); font-size: .67rem; letter-spacing: .02em; text-transform: none; }
.administration-layout .admin-order-fields input:not([type="checkbox"]), .administration-layout .admin-order-fields select, .administration-layout .product-list-toolbar input, .administration-layout .product-list-toolbar select { height: 3rem; min-height: 3rem; background: #faf9f6; font-family: var(--sans); font-size: .8rem; }
.administration-layout .admin-form-grid { gap: 1.5rem; }
.administration-layout .admin-form-grid .admin-editor { min-width: 0; margin-top: 0; }
.administration-layout .catalog-empty { margin-top: 2rem; border: 1px solid #dedbd5; padding: 3rem; background: #f0eee8; color: #777064; font: .85rem/1.8 var(--sans); text-transform: none; }
.administration-layout .inventory-metrics { border-color: #dedbd5; background: #f0eee8; }
.administration-layout .inventory-metrics strong { color: #3d4634; font-family: var(--display); font-size: 2.4rem; }
.administration-layout .inventory-metrics span { color: #625d51; font-family: var(--sans); font-size: .58rem; letter-spacing: .04em; }
.administration-layout .inventory-toolbar { gap: 1rem; margin-block: 1.5rem; }
.administration-layout .inventory-shell .supply-tabs button { font-size: .73rem; }
.administration-layout .product-save-bar { background: #fffefa; }
.administration-layout :focus-visible, .member-shell :focus-visible, .workspace-context :focus-visible { outline: 2px solid #8b7857; outline-offset: 3px; }
@media (max-width: 1200px) {
    .member-shell, .administration-layout { grid-template-columns: 12rem minmax(0, 1fr); gap: 2rem; }
    .administration-layout .admin-form-grid { grid-template-columns: minmax(0, 1fr); }
    .member-details-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 850px) {
    .workspace-context { padding-inline: 1.25rem; }
    .member-shell, .administration-layout { display: block; padding: 1.25rem 1.25rem 4rem; }
    .member-sidebar, .administration-sidebar { position: static; padding: 0; margin-bottom: 1.75rem; }
    .member-sidebar > .catalog-kicker, .member-identity, .workspace-eyebrow, .workspace-identity, .workspace-sidebar-note { display: none; }
    .member-navigation, .administration-sidebar .admin-links { display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0; overflow-x: auto; border-bottom: 1px solid #dedbd5; scrollbar-width: thin; }
    .member-navigation a, .administration-sidebar .admin-links a { flex: 0 0 auto; min-height: 3rem; border: 0; border-bottom: 1px solid transparent; padding: .85rem 1rem; font-size: .73rem; white-space: nowrap; }
    .member-navigation a.active, .administration-sidebar .admin-links a.active { border-bottom: 1px solid #414b3b; background: none; }
    .member-navigation a.active::after, .administration-sidebar .admin-links a span { display: none; }
    .member-navigation .member-admin-link, .administration-sidebar .admin-links .admin-return-store { margin: 0; border: 0; padding-top: .85rem; }
    .member-signout { display: none; }
    .member-page-heading h1, .administration-layout .admin-heading h1 { font-size: 2.7rem; }
    .member-page-heading, .administration-layout .admin-heading { padding-bottom: 1.5rem; }
    .member-address-layout, .member-details-grid { grid-template-columns: minmax(0, 1fr); }
    .member-panel { padding: 1.5rem; }
    .member-shortcuts { gap: 1rem; }
    .member-empty { min-height: 24rem; }
    .administration-layout .admin-shell { padding: 0; }
}
@media (max-width: 450px) {
    .workspace-context { font-size: .55rem; }
    .workspace-context a { font-size: .6rem; gap: .7rem; }
    .member-shortcuts { grid-template-columns: minmax(0, 1fr); }
    .member-shortcuts a { grid-template-columns: 1fr auto; min-height: 6rem; }
    .member-shortcuts strong { grid-column: 2; grid-row: 1 / 3; }
    .member-form-grid { grid-template-columns: minmax(0, 1fr); }
    .administration-layout .catalog-empty { padding: 2rem 1.25rem; }
}
:root:has(.admin-drawer[open]) { overflow: hidden; }
.member-shipments { display: grid; gap: 20px; margin-top: 24px; }
.member-shipment { border: 1px solid var(--hairline); padding: clamp(20px, 3vw, 32px); }
.member-shipment > header { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.member-shipment h3 { font-size: 26px; margin: 8px 0 16px; }
.member-shipment > header > span { font-size: 12px; color: var(--muted); overflow-wrap: anywhere; }
.member-shipment-items { list-style: none; padding: 0; margin: 0 0 20px; font-size: 13px; color: var(--muted); }
.member-shipment a { font-size: 13px; color: var(--accent); }
.member-shipment-note { margin: 20px 0 0; color: var(--muted); font-size: 13px; }
.member-carrier-timeline { margin-top: 24px; }
.administration-workspace .admin-drawer-body .admin-editor { padding: 0; margin: 0; border: 0; box-shadow: none; background: transparent; }
.admin-drawer-body button:not(.admin-button):not(.workspace-close) { padding: .3rem 0; border: 0; border-bottom: 1px solid var(--hairline); background: transparent; color: var(--ink); font: inherit; font-size: .8rem; }
.admin-drawer-body button:not(.admin-button):not(.workspace-close):hover { border-bottom-color: var(--accent); }
.supplier-location-card > header > div { flex: 1; }
.administration-layout .product-draft-fields select { appearance: none; height: 3rem; min-height: 3rem; padding-right: 2.25rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%2342473c' stroke-width='1.4'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E"); background-position: right .75rem center; background-repeat: no-repeat; }
