/* Baskibu Designer 0.23.0-dev.43 — Product Studio + CM Rulers + Typography Studio */

.bbd-pro-workspace-v0230-dev43 {
  --bbd-v43-panel: 352px;
  --bbd-v43-ink: #101828;
  --bbd-v43-muted: #667085;
  --bbd-v43-line: #e4e7ec;
  --bbd-v43-soft: #f7f9fb;
  --bbd-v43-green: #0a9f78;
}

/* Real Baskibu brand slot: prefer configured / WordPress custom logo. */
.bbd-pro-workspace-v0230-dev43 .bbd-brand-slot {
  min-width: 0;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 7px;
  border: 1px solid #e6e9ee;
  border-radius: 9px;
  background: #fff;
  color: #0f172a;
  font-size: 0;
  font-weight: 800;
  box-shadow: 0 1px 2px rgba(16,24,40,.04);
}
.bbd-pro-workspace-v0230-dev43 .bbd-brand-slot img {
  width: auto;
  max-width: 112px;
  height: 28px !important;
  max-height: 28px;
  object-fit: contain;
}
.bbd-pro-workspace-v0230-dev43 .bbd-brand-slot:not(:has(img)) {
  font-size: 12px;
}

/* ----- precision rulers + dimensions ----- */
.bbd-pro-workspace-v0230-dev43:not(.is-preview-mode) .bbd-ruler {
  display: block !important;
  opacity: 1 !important;
  pointer-events: auto;
  background: rgba(250,251,252,.96);
  border-color: #d9dee6;
  box-shadow: 0 1px 0 rgba(16,24,40,.03);
  color: #667085;
  font-size: 9px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-ruler--horizontal {
  height: 22px;
  top: 48px;
  left: 52px;
  right: 14px;
  border: 1px solid #e5e9ef;
  border-radius: 7px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-ruler--vertical {
  width: 22px;
  top: 78px;
  bottom: 48px;
  left: 14px;
  border: 1px solid #e5e9ef;
  border-radius: 7px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-ruler__tick {
  padding-top: 3px;
  border-left-color: #bdc5d0;
}
.bbd-pro-workspace-v0230-dev43 .bbd-ruler--vertical .bbd-ruler__tick {
  width: 48px;
  color: #667085;
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-overlay {
  position: absolute;
  inset: 0;
  z-index: 18;
  pointer-events: none;
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line {
  position: absolute;
  color: #475467;
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .02em;
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line::before,
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line::after {
  content: '';
  position: absolute;
  background: rgba(71,84,103,.42);
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-width {
  left: var(--bbd-art-left);
  top: calc(var(--bbd-art-top) - 30px);
  width: var(--bbd-art-width);
  height: 18px;
  border-top: 1px solid rgba(71,84,103,.32);
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-width::before,
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-width::after {
  top: -4px;
  width: 1px;
  height: 8px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-width::before { left: 0; }
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-width::after { right: 0; }
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-width span {
  position: absolute;
  left: 50%;
  top: -10px;
  transform: translate(-50%,-50%);
  padding: 2px 7px;
  border: 1px solid #d8dee7;
  border-radius: 999px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 2px 8px rgba(16,24,40,.06);
  white-space: nowrap;
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-height {
  left: calc(var(--bbd-art-left) + var(--bbd-art-width) + 22px);
  top: var(--bbd-art-top);
  width: 18px;
  height: var(--bbd-art-height);
  border-left: 1px solid rgba(71,84,103,.32);
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-height::before,
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-height::after {
  left: -4px;
  width: 8px;
  height: 1px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-height::before { top: 0; }
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-height::after { bottom: 0; }
.bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-height span {
  position: absolute;
  left: 7px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  transform-origin: center;
  padding: 2px 7px;
  border: 1px solid #d8dee7;
  border-radius: 999px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 2px 8px rgba(16,24,40,.06);
  white-space: nowrap;
}
.bbd-pro-workspace-v0230-dev43 .bbd-ruler-unit-badge {
  position: absolute;
  left: 12px;
  top: 8px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 7px;
  border: 1px solid #dfe4eb;
  border-radius: 7px;
  background: rgba(255,255,255,.94);
  color: #667085;
  font-size: 9px;
  font-weight: 800;
}
.bbd-pro-workspace-v0230-dev43 .bbd-ruler-unit-badge svg { width: 13px; height: 13px; }
.bbd-pro-workspace-v0230-dev43.is-preview-mode .bbd-dimension-overlay { display: none !important; }

/* ----- Typography Studio ----- */
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 {
  padding-bottom: 28px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 > h2 {
  margin-bottom: 3px;
  font-size: 20px;
  letter-spacing: -.025em;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 .bbd-text-mode-tabs {
  margin: 8px 0 12px;
  padding: 3px;
  border: 1px solid #e5e9ef;
  border-radius: 10px;
  background: #f4f6f8;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 .bbd-text-mode-tabs button {
  min-height: 32px;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 750;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-composer {
  display: grid;
  gap: 7px;
  margin: 0 0 12px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-composer label {
  color: #344054;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .025em;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-composer textarea {
  width: 100%;
  min-height: 76px;
  resize: vertical;
  padding: 11px 12px;
  border: 1px solid #d6dce5;
  border-radius: 9px;
  background: #fff;
  box-shadow: inset 0 1px 2px rgba(16,24,40,.02);
  color: #101828;
  font: 600 13px/1.45 Inter, ui-sans-serif, sans-serif;
  outline: none;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-composer textarea:focus {
  border-color: rgba(255,75,0,.55);
  box-shadow: 0 0 0 3px rgba(255,75,0,.08);
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-composer button {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 0;
  border-radius: 9px;
  background: var(--bbd-color-accent, #ff4b00);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 .bbd-dev43-legacy-quick,
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 .bbd-dev43-hide-categories,
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 .bbd-dev43-legacy-presets {
  display: none !important;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 .bbd-search-field {
  margin-bottom: 14px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-studio-v43 .bbd-search-field input {
  min-height: 38px;
  border-radius: 9px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-section {
  margin: 0 0 18px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 9px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-head strong {
  display: block;
  color: #101828;
  font-size: 12px;
  font-weight: 820;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-head small {
  display: block;
  margin-top: 2px;
  color: #98a2b3;
  font-size: 9px;
  font-weight: 600;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-visual-preset-card {
  min-height: 122px;
  display: grid;
  grid-template-rows: 78px auto;
  align-items: stretch;
  padding: 7px;
  border: 1px solid #e3e8ef;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(16,24,40,.025);
  transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-visual-preset-card:hover {
  transform: translateY(-1px);
  border-color: #c8d0db;
  box-shadow: 0 8px 20px rgba(16,24,40,.07);
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-preset-preview {
  height: 74px;
  min-height: 74px;
  padding: 6px;
  border: 0;
  border-radius: 8px;
  background: #fff;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-preset-preview i,
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-preset-preview em {
  display: none;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-preset-preview b {
  color: var(--bbd-preset-accent, #111827);
  font-family: var(--bbd-preset-font), Inter, sans-serif;
  font-size: 19px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -.025em;
  text-align: center;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-visual-preset-card > strong {
  margin: 3px 2px 0;
  color: #667085;
  font-size: 9px;
  font-weight: 720;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-visual-preset-card > small {
  display: none;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-preset-favorite {
  top: 6px;
  right: 7px;
  color: #98a2b3;
  font-size: 13px;
  opacity: 0;
  transition: opacity .12s ease;
}
.bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-visual-preset-card:hover .bbd-preset-favorite { opacity: 1; }

/* ----- unified Product Studio ----- */
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview {
  padding: 12px;
  background:
    radial-gradient(circle at 50% 8%, rgba(255,255,255,.86), transparent 34%),
    linear-gradient(180deg, #edf1f4 0%, #e4e9ed 100%);
}
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview__viewport {
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 14px;
  background: #e9edf0;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 14px 40px rgba(15,23,42,.08);
  overflow: hidden;
}
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview__three-canvas {
  filter: saturate(1.015) contrast(1.015);
}
.bbd-pro-workspace-v0230-dev43 .bbd-mega-scene-bar,
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview__three-controls {
  border: 1px solid rgba(208,213,221,.9);
  background: rgba(255,255,255,.92);
  box-shadow: 0 8px 28px rgba(16,24,40,.10);
  backdrop-filter: blur(14px);
}
.bbd-pro-workspace-v0230-dev43 .bbd-mega-scene-bar button,
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview__three-controls button {
  border-radius: 8px;
}
.bbd-pro-workspace-v0230-dev43 .bbd-mega-scene-bar button.is-active,
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview__three-controls button.is-active {
  background: #ecfdf8;
  color: #087a5f;
  box-shadow: inset 0 0 0 1px rgba(10,159,120,.20);
}
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview__header {
  border: 1px solid #e1e6ed;
  border-radius: 12px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 6px 20px rgba(16,24,40,.05);
}
.bbd-pro-workspace-v0230-dev43 .bbd-product-preview__footer {
  color: #667085;
}

/* Make the design surface feel like a precision studio rather than a blank page. */
.bbd-pro-workspace-v0230-dev43 .bbd-canvas-shell {
  background:
    radial-gradient(circle at 50% 38%, rgba(255,255,255,.84), transparent 42%),
    linear-gradient(180deg, #edf1f4 0%, #e7ebef 100%);
}
.bbd-pro-workspace-v0230-dev43 .canvas-container,
.bbd-pro-workspace-v0230-dev43 .bbd-canvas-container {
  filter: drop-shadow(0 14px 30px rgba(15,23,42,.13));
}

@media (max-width: 1180px) {
  .bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid { grid-template-columns: 1fr; }
  .bbd-pro-workspace-v0230-dev43 .bbd-dimension-line.is-height { left: calc(var(--bbd-art-left) + var(--bbd-art-width) + 14px); }
}

@media (max-width: 760px) {
  .bbd-pro-workspace-v0230-dev43 .bbd-dimension-overlay,
  .bbd-pro-workspace-v0230-dev43 .bbd-ruler { display: none !important; }
  .bbd-pro-workspace-v0230-dev43 .bbd-brand-slot img { max-width: 86px; height: 24px !important; }
  .bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .bbd-pro-workspace-v0230-dev43 .bbd-type-gallery-grid .bbd-visual-preset-card { transition: none; }
}
