/**
 * OKTANA HOUSE / UNIFIED WHITE — canonical public design system.
 * Scope: Gallery, artworks, WooCommerce cart/account, Booking Portal, artist/vendor
 * storefront and vendor dashboard. Operational WordPress admin stays untouched.
 * Palette is deliberately restrained: white, ink and ONE house accent (#7f2c24).
 * Versioned in the website repo. Child plugins inherit these tokens; no remote assets.
 */
:root {
  --oktana-ds-paper: #ffffff;
  --oktana-ds-paper-soft: #faf9f7;
  --oktana-ds-ink: #161513;
  --oktana-ds-text: #4a4640;
  --oktana-ds-muted: #6e6961;
  --oktana-ds-rule: rgba(22, 21, 19, .17);
  --oktana-ds-accent: #7f2c24;
  --oktana-ds-font: "Manrope", "Segoe UI", system-ui, sans-serif;
  --oktana-ds-radius: 0;
  --oktana-ds-focus: 2px solid var(--oktana-ds-accent);
  --oktana-ds-page: min(1280px, calc(100% - 2.5rem));
  /* Compatibility with the active Gallery theme: preserve existing component names. */
  --chalk: #f6f5f2;
  --chalk-2: var(--oktana-ds-paper);
  --ink: var(--oktana-ds-ink);
  --ink-2: var(--oktana-ds-text);
  --ink-3: var(--oktana-ds-muted);
  --line: var(--oktana-ds-rule);
  --kiln: var(--oktana-ds-accent);
  --focus: var(--oktana-ds-accent);
}
body { background: var(--oktana-ds-paper); color: var(--oktana-ds-ink); }
body,
button, input, select, textarea { font-family: var(--oktana-ds-font); }
.site-header, .site-footer, .menu, .account-panel {
  background: var(--oktana-ds-paper);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.site-header.is-scrolled { border-bottom-color: var(--oktana-ds-rule); }
.brand__mark, .brand__word { object-fit: contain; }
.site-header .brand { min-height: 44px; }
.site-header .brand__mark { flex: 0 0 auto; }
/* The house mark remains in the shared header, not repeated on every card. */
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible {
  outline: var(--oktana-ds-focus);
  outline-offset: 3px;
}
/* The tiny visual disobedience: a single oblique house-accent mark on sectional labels. */
.home-workshops > h2::before,
.home-selected > h2::before,
.works-top > h1::before,
.artists-open > h1::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: .8em;
  background: var(--oktana-ds-accent);
  transform: skew(-19deg) rotate(12deg);
  margin-right: .65em;
  vertical-align: -0.03em;
}
/* Art and imagery get space; hierarchy replaces ornamental card backgrounds. */
.work-unit, .roster-unit, .object-shell, .artist-open, .works-field,
.home-workshops, .home-selected { box-shadow: none; }
.works-forms__link, .works-artists__link,
.work-unit__title, .roster-unit__name { letter-spacing: -.02em; }
.work-unit .frame-45, .work-unit .frame-32,
.work-unit .frame-11 { border-radius: 0; }
.cta--book, .nav-book { color: var(--oktana-ds-accent) !important; }
/* Store, cart, checkout, account. Preserve Woo notices, validation, payment logic. */
.woocommerce,
.woocommerce-page,
.wc-block-components-sidebar-layout,
.wc-block-checkout,
.wc-block-cart {
  color: var(--oktana-ds-ink);
  font-family: var(--oktana-ds-font);
}
.woocommerce table.shop_table,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content,
.wc-block-components-order-summary,
.wc-block-components-totals-wrapper {
  border-radius: 0;
  box-shadow: none;
  background: var(--oktana-ds-paper);
  border-color: var(--oktana-ds-rule);
}
.woocommerce input:not([type="checkbox"]):not([type="radio"]),
.woocommerce textarea,
.woocommerce select,
.wc-block-components-text-input input,
.wc-block-components-combobox input {
  border: 1px solid var(--oktana-ds-rule);
  background: var(--oktana-ds-paper);
  color: var(--oktana-ds-ink);
  border-radius: 0;
  min-height: 44px;
}
.woocommerce button.button,
.woocommerce a.button,
.wc-block-components-button,
.woocommerce input.button {
  font-family: var(--oktana-ds-font);
  border-radius: 0;
  box-shadow: none;
}
.woocommerce .woocommerce-tabs,
.woocommerce .woocommerce-order-details { border-color: var(--oktana-ds-rule); }
/* Booking Portal: tokens shared with shop, works and header.
   Booking-specific layout resides in the plugin, but tokens are canonical here. */
.obp-booking, .obp-account, .obp-app {
  --ok-chalk: var(--chalk);
  --ok-chalk-2: var(--oktana-ds-paper);
  --ok-ink: var(--oktana-ds-ink);
  --ok-ink-2: var(--oktana-ds-text);
  --ok-ink-3: var(--oktana-ds-muted);
  --ok-line: var(--oktana-ds-rule);
  --ok-link: var(--oktana-ds-accent);
  --ok-focus: var(--oktana-ds-accent);
  --ok-font: var(--oktana-ds-font);
  background: var(--oktana-ds-paper);
  color: var(--oktana-ds-ink);
}
/* Artist dashboard, vendor storefront and application screens:
   neutralise the default blue WP-style without touching operational statuses. */
.oktana-vendor-dashboard, .oktana-vendor-store, .oktana-registration-form {
  --oktana-primary: var(--oktana-ds-ink);
  --oktana-primary-dark: var(--oktana-ds-accent);
  --oktana-text: var(--oktana-ds-ink);
  --oktana-text-light: var(--oktana-ds-text);
  --oktana-border: var(--oktana-ds-rule);
  --oktana-bg: var(--oktana-ds-paper-soft);
  --oktana-card-bg: var(--oktana-ds-paper);
  --oktana-radius: 0;
  --oktana-shadow: none;
  font-family: var(--oktana-ds-font);
  color: var(--oktana-ds-ink);
  background: var(--oktana-ds-paper);
}
.oktana-vendor-dashboard .oktana-dashboard-tabs {
  border-bottom: 1px solid var(--oktana-ds-rule);
  gap: clamp(.6rem, 2vw, 1.5rem);
}
.oktana-vendor-dashboard .oktana-tab {
  padding: .95rem .3rem;
  border-bottom-width: 1px;
  font-size: .88rem;
}
.oktana-vendor-dashboard .oktana-tab.active { color: var(--oktana-ds-ink); border-color: var(--oktana-ds-accent); }
/* Dashboard numerals replace the vendor plugin's unrelated emoji artwork.
   Labels remain explicit links; numbers are decorative only. */
.oktana-vendor-dashboard .oktana-dashboard-tabs { counter-reset: oktana-tab; }
.oktana-vendor-dashboard .oktana-tab-icon { font-size: 0; opacity: 1; filter: none; }
.oktana-vendor-dashboard .oktana-tab-icon::after {
  counter-increment: oktana-tab;
  content: counter(oktana-tab, decimal-leading-zero);
  display: inline-block;
  font: 600 .65rem/1 var(--oktana-ds-font);
  letter-spacing: .04em;
  color: var(--oktana-ds-muted);
}
.oktana-vendor-dashboard .oktana-stat-card,
.oktana-vendor-dashboard .oktana-calculator-widget,
.oktana-vendor-dashboard .oktana-calculator-result,
.oktana-vendor-store .oktana-product-card {
  border-radius: 0;
  background: var(--oktana-ds-paper);
  box-shadow: none;
  border: 1px solid var(--oktana-ds-rule);
}
.oktana-vendor-dashboard .oktana-stat-highlight {
  background: var(--oktana-ds-ink);
  color: white;
}
.oktana-vendor-dashboard .oktana-btn,
.oktana-vendor-store .oktana-btn,
.oktana-registration-form .oktana-btn { border-radius: 0; box-shadow: none; }
.oktana-vendor-dashboard .oktana-input,
.oktana-vendor-dashboard .oktana-select,
.oktana-vendor-dashboard .oktana-textarea,
.oktana-registration-form .oktana-input,
.oktana-registration-form .oktana-select,
.oktana-registration-form .oktana-textarea {
  border-width: 1px;
  border-color: var(--oktana-ds-rule);
  border-radius: 0;
  box-shadow: none;
}
.oktana-vendor-dashboard .oktana-dashboard-welcome h2 {
  font-weight: 500;
  letter-spacing: -.045em;
  font-size: clamp(1.55rem, 3vw, 2.35rem);
}
.oktana-vendor-dashboard .oktana-dashboard-welcome h2::before {
  content: "";
  width: 4px;
  height: .7em;
  display: inline-block;
  margin-right: .65rem;
  background: var(--oktana-ds-accent);
  transform: rotate(17deg);
}
.oktana-vendor-store .oktana-product-card:hover { transform: none; box-shadow: none; border-color: var(--oktana-ds-ink); }
.oktana-vendor-store .oktana-product-price { color: var(--oktana-ds-ink); }
@media (max-width: 759px) {
  :root { --oktana-ds-page: min(100%, calc(100% - 2.5rem)); }
  .oktana-vendor-dashboard { padding: 1.25rem 0; }
  .oktana-vendor-dashboard .oktana-dashboard-tabs { overflow-x: auto; scrollbar-width: thin; }
  .oktana-vendor-dashboard .oktana-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
}
@media (prefers-reduced-motion: reduce) {
  .oktana-vendor-dashboard *,
  .oktana-vendor-store *,
  .obp-booking *, .obp-app * { animation: none !important; transition: none !important; }
}

/* Contextual crosslinks, not promotional cards: clear next steps at the point
   where the visitor needs reassurance or has reached the end of a section. */
.works-context {
  max-width: 52ch;
  margin: .45rem 0 1.35rem;
  color: var(--oktana-ds-muted);
  font: 400 .88rem/1.6 var(--oktana-ds-font);
}
.object-buying-links,
.oh-crossroads {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem clamp(1rem, 3vw, 2.3rem);
}
.object-buying-links {
  margin-top: 1.4rem;
  padding-top: .95rem;
  border-top: 1px solid var(--oktana-ds-rule);
}
.object-buying-links a, .oh-crossroads a,
.home-path__secondary a, .account-booking-note a {
  color: var(--oktana-ds-text);
  font: 500 .84rem/1.6 var(--oktana-ds-font);
  text-underline-offset: .25em;
  text-decoration-thickness: 1px;
}
.object-buying-links a:hover, .oh-crossroads a:hover,
.home-path__secondary a:hover, .account-booking-note a:hover {
  color: var(--oktana-ds-accent);
}
.oh-crossroads {
  max-width: min(100% - 2.5rem, 1100px);
  margin: clamp(2.5rem, 7vw, 5rem) auto 0;
  padding: 1.5rem 0;
  border-top: 1px solid var(--oktana-ds-rule);
  align-items: baseline;
}
.oh-crossroads__intro {
  margin-right: auto;
  color: var(--oktana-ds-muted);
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.home-path__secondary { margin: .6rem 0 0; }
.account-booking-note {
  max-width: 65ch;
  padding: .75rem 0 1.2rem;
  margin-bottom: 1.4rem;
  border-bottom: 1px solid var(--oktana-ds-rule);
  color: var(--oktana-ds-muted);
  font: 400 .86rem/1.6 var(--oktana-ds-font);
}
.account-booking-note p { margin: 0 0 .4rem; }
@media (max-width: 600px) {
  .oh-crossroads { align-items: flex-start; flex-direction: column; gap: .5rem; }
  .oh-crossroads__intro { margin-bottom: .4rem; }
  .object-buying-links { gap: .35rem 1.2rem; }
}
