/* Design Decor controls own their colours, including inside a WordPress theme. */
html body[data-dd-ui] :is(button, a.button):where(:not(.dialog-close, .dd-brief-close, .studio-back, #close-planner, #close-library)) {
  -webkit-appearance: none;
  appearance: none;
  background: var(--dd-button-bg, transparent) !important;
  color: var(--dd-button-ink, var(--ink, #282d28)) !important;
  border-style: solid !important;
  border-width: var(--dd-button-edge, 0) !important;
  border-color: var(--dd-button-line, transparent) !important;
  border-radius: var(--dd-button-radius, 5px) !important;
  box-shadow: var(--dd-button-shadow, none) !important;
  text-shadow: none !important;
  text-transform: none !important;
  font-family: var(--sans, Manrope, Arial, sans-serif);
  cursor: pointer;
}
html body[data-dd-ui] :is(button, a.button):not(:focus-visible) { outline: none !important; }
html body[data-dd-ui] :is(button, a.button):focus-visible { outline: 2px solid #78876c; outline-offset: 4px; }
html body[data-dd-ui] button:disabled { cursor: default; opacity: .45; }

/* Primary / secondary actions: stable spacing and a quiet, precise silhouette. */
body[data-dd-ui] .button {
  display: inline-flex; align-items: center; justify-content: space-between;
  min-height: 48px; padding: 13px 20px; gap: 20px;
  font-size: 14px; line-height: 1.45; font-weight: 550;
  text-decoration: none; letter-spacing: -.15px;
  --dd-button-edge: 1px;
  --dd-button-radius: 5px;
  transition: background .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease;
}
body[data-dd-ui] .button > span { flex: 0 0 auto; display: inline-grid; place-items: center; line-height: 1; }
body[data-dd-ui] .button-dark { --dd-button-bg: #282f29; --dd-button-ink: #faf9f4; --dd-button-line: #282f29; }
body[data-dd-ui] .button-dark:is(:hover, :focus-visible):not(:disabled) { --dd-button-bg: #414c40; --dd-button-line: #414c40; }
body[data-dd-ui] .button-cream { --dd-button-bg: #f7f5ef; --dd-button-ink: #282f29; --dd-button-line: #f7f5ef; }
body[data-dd-ui] .button-cream:is(:hover, :focus-visible) { --dd-button-bg: #e9e4d9; --dd-button-line: #e9e4d9; }
body[data-dd-ui] .button-outline { --dd-button-bg: transparent; --dd-button-ink: #343e32; --dd-button-line: #c7ccbf; }
body[data-dd-ui] .button-outline:is(:hover, :focus-visible) { --dd-button-bg: #e6eadf; --dd-button-line: #a7b59b; }
body[data-dd-ui] .button-outline[aria-pressed="true"] { --dd-button-bg: #303d2d; --dd-button-ink: #fff; --dd-button-line: #303d2d; }
body[data-dd-ui] .nav-cta { min-height: 46px; padding: 11px 18px; font-size: 13px; gap: 26px; }
body[data-dd-ui] .arrow-round { width: 28px; height: 28px; flex-basis: 28px; }

/* Editorial links and photo cards stay transparent in every pointer state. */
body[data-dd-ui] :is(.text-link, .account-link, .quote-reset-area, .saved-project-actions button, .footer-bottom button) {
  --dd-button-bg: transparent; --dd-button-ink: #374032; --dd-button-radius: 0;
}
body[data-dd-ui] .text-link { min-height: 44px; gap: 24px; --dd-button-edge: 0 0 1px; --dd-button-line: #747e6b; }
body[data-dd-ui] .text-link:hover { --dd-button-ink: #697a55; --dd-button-line: #697a55; gap: 30px; }
body[data-dd-ui] :is(.hero-project, .project-card) { --dd-button-bg: transparent; --dd-button-radius: 0; }
body[data-dd-ui] .hero-project { --dd-button-ink: #f5f3ee; --dd-button-edge: 1px 0 0; --dd-button-line: #ffffff60; }
body[data-dd-ui] .hero[data-hero-carousel-initialized] .hero-project { --dd-button-edge: 0; }
body[data-dd-ui] .project-card { --dd-button-ink: #282d28; }

/* Existing small tool dimensions remain intact to prevent toolbar overlap. */
body[data-dd-ui] :where(.canvas-tools button, .history-tools > button:not(.dialog-close), .alignment-actions button, .room-nudge button, .item-actions button, .floor-actions button, .object-actions button, .finish-personalization, .furniture-color-inputs button, #add-room, #duplicate-room, #reset-room-position) {
  --dd-button-bg: #f8f9f3; --dd-button-line: #d4dccb; --dd-button-edge: 1px; --dd-button-ink: #46523d;
}
body[data-dd-ui] :where(.canvas-tools button, .history-tools > button:not(.dialog-close), .alignment-actions button, .room-nudge button, .item-actions button, .floor-actions button, .object-actions button, .finish-personalization, .furniture-color-inputs button, #add-room, #duplicate-room, #reset-room-position):hover:not(:disabled) {
  --dd-button-bg: #e6ebdf; --dd-button-line: #aebb9f;
}
body[data-dd-ui] :is(.opening-actions button, #remove-room, #delete-item, #remove-level, .remove-saved, .floor-actions .danger-text, .dd-brief-remove-room) { --dd-button-ink: #925a46; }
body[data-dd-ui] .object-actions .delete-visible { --dd-button-bg: #a45b47; --dd-button-ink: #fff; --dd-button-line: #a45b47; }
body[data-dd-ui] .object-actions .delete-visible:hover { --dd-button-bg: #874a38; --dd-button-line: #874a38; }
body[data-dd-ui] :is(.scene-view-toggle button, .editing-toolbar > button, .catalog-filters button, .inspiration-filters button, .account-nav, .level-tabs button) { --dd-button-ink: #647059; }
body[data-dd-ui] :is(.scene-view-toggle button, .editing-toolbar > button, .catalog-filters button, .inspiration-filters button, .account-nav, .level-tabs button):hover { --dd-button-bg: #e7ecdf; --dd-button-ink: #34462e; }
body[data-dd-ui] :is(.scene-view-toggle button, .editing-toolbar > button, .catalog-filters button, .inspiration-filters button, .account-nav, .level-tabs button).active { --dd-button-bg: #303a2e; --dd-button-ink: #fafbf5; }
body[data-dd-ui] .account-sidebar .account-nav { --dd-button-ink: #c9d0bf; }
body[data-dd-ui] .account-sidebar .account-nav:is(:hover, .active) { --dd-button-bg: #48523e; --dd-button-ink: #fff; }
body[data-dd-ui] .planner-tabs button { --dd-button-radius: 0; --dd-button-edge: 0 0 2px; --dd-button-ink: #818b77; }
body[data-dd-ui] .planner-tabs button.active { --dd-button-ink: #2f3b2b; --dd-button-line: #2f3b2b; }
body[data-dd-ui] .planner-tabs[data-motion-marker="ready"] button.active { --dd-button-line: transparent; }
body[data-dd-ui] :is(.furniture-catalog button, .room-choice, .style-choice) { --dd-button-edge: 1px; --dd-button-line: #d4dccb; --dd-button-bg: #f7f8f1; --dd-button-ink: #3e4c36; }
body[data-dd-ui] :is(.furniture-catalog button, .room-choice, .style-choice):hover { --dd-button-bg: #eaf0e1; --dd-button-line: #a8b999; }
body[data-dd-ui] :is(.room-choice, .style-choice).active { --dd-button-bg: #e4ecda; --dd-button-line: #93a97e; }
body[data-dd-ui] .inspiration-card { --dd-button-edge: 1px; --dd-button-line: #d3dcc6; --dd-button-bg: #eef1e6; --dd-button-radius: 0; }
body[data-dd-ui] .inspiration-card:hover { --dd-button-line: #99ac85; }
body[data-dd-ui] .inspiration-more { --dd-button-edge: 1px; --dd-button-line: #b7c4a8; --dd-button-ink: #516546; }
body[data-dd-ui] .furniture-swatches button {
  --dd-button-bg: var(--swatch); --dd-button-edge: 1px; --dd-button-line: #cbd2c0;
  --dd-button-radius: 3px; --dd-button-shadow: inset 0 0 0 3px #f7f8f2;
}
body[data-dd-ui] .furniture-swatches button[aria-pressed="true"] { --dd-button-line: #4d693b; --dd-button-shadow: inset 0 0 0 3px #f7f8f2, 0 0 0 1px #4d693b; }

/* The guided project and its secondary actions use the same neutral palette. */
body[data-dd-ui] :is(.dd-brief-next, .dd-brief-back, .dd-brief-add-room, .design-program-card > button, .room-move-bar button) {
  --dd-button-edge: 1px; --dd-button-radius: 5px; --dd-button-line: #ccd4c1;
  --dd-button-bg: #f9faf5; --dd-button-ink: #465a3b;
  min-height: 46px; padding: 11px 18px; font-size: 13px; line-height: 1.45;
}
body[data-dd-ui] :is(.dd-brief-next, .room-move-bar button) { --dd-button-bg: #344930; --dd-button-line: #344930; --dd-button-ink: #fff; }
body[data-dd-ui] :is(.dd-brief-next, .room-move-bar button):hover { --dd-button-bg: #4b6440; --dd-button-line: #4b6440; }
body[data-dd-ui] :is(.dd-brief-back, .dd-brief-add-room, .design-program-card > button):hover { --dd-button-bg: #e7eddf; --dd-button-line: #a4b594; }

/* Light-on-image navigation and dark visit controls retain their contrast. */
body[data-dd-ui] .hero-carousel-controls button {
  --dd-button-bg: #12191228; --dd-button-ink: #fff; --dd-button-edge: 1px;
  --dd-button-line: #ffffff4d; --dd-button-radius: 50%;
}
body[data-dd-ui] .hero-carousel-controls button:hover { --dd-button-bg: #ffffff21; --dd-button-line: #ffffffa6; }
body[data-dd-ui] .hero-carousel-controls button[aria-pressed="true"] { --dd-button-bg: #ffffff24; }
body[data-dd-ui] .hero-slide-selectors button { --dd-button-bg: transparent; --dd-button-edge: 0; --dd-button-radius: 4px; --dd-button-ink: #ffffffb0; }
body[data-dd-ui] .hero-slide-selectors button[aria-current="true"] { --dd-button-ink: #fff; }
body[data-dd-ui] .hero-slide-selectors button:hover { --dd-button-bg: #ffffff12; }
body[data-dd-ui] #tour-hud button { --dd-button-bg: #26332bcf; --dd-button-ink: #fff; --dd-button-line: #ffffff24; --dd-button-edge: 1px; --dd-button-radius: 5px; }
body[data-dd-ui] #tour-hud button:is(:hover, :active) { --dd-button-bg: #3e5140e6; }
body[data-dd-ui] #tour-hud .tour-actions button[aria-pressed="true"] { --dd-button-bg: #4a5e4cdd; --dd-button-line: #d0ddbb80; }
body[data-dd-ui] #tour-hud .tour-dpad button.pressed { --dd-button-bg: #edf2dc; --dd-button-ink: #243128; --dd-button-line: #edf2dc; }
body[data-dd-ui] #tour-hud .tour-exit { --dd-button-bg: #f4f3ed; --dd-button-ink: #263629; --dd-button-line: #f4f3ed; }
body[data-dd-ui] #tour-hud .tour-exit:hover { --dd-button-bg: #fff; }
body[data-dd-ui] :is(.hero-carousel-controls, #tour-hud) button:focus-visible { outline-color: #fff; }

@media (max-width: 640px) {
  body[data-dd-ui] .nav-cta { min-height: 44px; padding: 10px 12px; font-size: 11px; gap: 12px; }
  body[data-dd-ui] .button { font-size: 13px; gap: 15px; }
  body[data-dd-ui] .planner-sidebar .button { width: 100%; padding: 12px 14px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-dd-ui] .button { transition: none; }
}
