/* BUBU-ART brand palette, design-only overrides. No geometry/canvas/render data. */
:root {
  --bubu-pink:#FF9DC5;
  --bubu-sky:#99CFF1;
  --bubu-rose:#A83270;
  --bubu-blue:#257BAF;
  --bubu-deep:#1A4967;
  --bubu-pale-pink:#FFF0F6;
  --bubu-pale-blue:#ECF7FF;
  --bubu-soft-border:#E6EAF0;
  --bubu-ink:#24364B;
  --bubu-sub:#697F90;
}
/* Accessible selection: pastel fills with darker lettering, no layout changes. */
html[data-bubu-theme] :is(input[type="range"],input[type="checkbox"],input[type="radio"]) {accent-color:var(--bubu-blue)}
html[data-bubu-theme] :is(button,input,select,textarea):focus-visible,
html[data-bubu-theme] :is(.filepick,.upload):focus-visible {outline:2px solid var(--bubu-pink);outline-offset:2px}
html[data-bubu-theme] :is(input:not([type="range"]):not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea):focus {
 border-color:#E48AB2;box-shadow:0 0 0 3px #FF9DC52D;
}
/* Main, always-visible navigation */
html[data-bubu-theme="main"] {--mint:var(--bubu-blue);--text:var(--bubu-ink);--muted:var(--bubu-sub);--stroke:var(--bubu-soft-border);--blue:var(--bubu-blue)}
html[data-bubu-theme="main"] .brand-mark {background:linear-gradient(145deg,#B94B87,#277FAF);}
html[data-bubu-theme="main"] .brand-name {color:#24364B}
html[data-bubu-theme="main"] .brand-sub {color:#8A7D94}
html[data-bubu-theme="main"] .top-tab {color:#647B8F}
html[data-bubu-theme="main"] .top-tab:hover {background:var(--bubu-pale-blue);color:#246E9E}
html[data-bubu-theme="main"] .top-tab:focus-visible {outline-color:var(--bubu-pink)}
html[data-bubu-theme="main"] .top-tab.is-active {background:var(--bubu-pale-pink);border-color:#F2B1D0;color:var(--bubu-rose);box-shadow:inset 0 -2px #E178A8}
html[data-bubu-theme="main"] .toast:not(.is-error) {background:var(--bubu-pale-blue);border-color:#B7DDF4;color:#266F9C}
/* Custom clicker UI: geometry and model palette are intentionally untouched */
html[data-bubu-theme="clicker"] {--mint:var(--bubu-blue);--mintlight:var(--bubu-pale-blue);--blue:var(--bubu-blue);--ink:var(--bubu-ink);--secondary:var(--bubu-sub);--border:var(--bubu-soft-border)}
html[data-bubu-theme="clicker"] .brandicon {background:linear-gradient(140deg,#B94B87,#257BAF)}
html[data-bubu-theme="clicker"] .version {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="clicker"] .eyebrow,
html[data-bubu-theme="clicker"] .bubu-create-label {color:var(--bubu-rose)}
html[data-bubu-theme="clicker"] .seg button.active,
html[data-bubu-theme="clicker"] .bubu-source-tabs button.is-active,
html[data-bubu-theme="clicker"] .bubu-basic-tabs button.is-active,
html[data-bubu-theme="clicker"] .shape-tabs button.active {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="clicker"] .seg,
html[data-bubu-theme="clicker"] .bubu-source-tabs,
html[data-bubu-theme="clicker"] .bubu-basic-tabs,
html[data-bubu-theme="clicker"] .shape-tabs {background:#EDF4F9}
html[data-bubu-theme="clicker"] .tool.active {background:var(--bubu-pale-pink);border-color:#F0ADD0;color:var(--bubu-rose)}
html[data-bubu-theme="clicker"] .btn.primary {background:var(--bubu-blue);color:#fff}
html[data-bubu-theme="clicker"] .btn.dark {background:var(--bubu-deep);color:#fff}
html[data-bubu-theme="clicker"] .btn.subtle {border-color:#BCDDF1;color:var(--bubu-blue)}
html[data-bubu-theme="clicker"] .upload,
html[data-bubu-theme="clicker"] .pc-font-button,
html[data-bubu-theme="clicker"] .auto-offset-row button,
html[data-bubu-theme="clicker"] .reset-geometry {border-color:#B9DDF3;background:var(--bubu-pale-blue);color:var(--bubu-blue)}
html[data-bubu-theme="clicker"] .pc-font-button:hover,
html[data-bubu-theme="clicker"] .reset-geometry:hover {background:#DFF1FC}
html[data-bubu-theme="clicker"] .slider-head strong,
html[data-bubu-theme="clicker"] .margin-number-row input,
html[data-bubu-theme="clicker"] .unit-edit input {color:var(--bubu-blue)}
html[data-bubu-theme="clicker"] .notice,
html[data-bubu-theme="clicker"] .fit-summary,
html[data-bubu-theme="clicker"] .dimension-panel {background:#EFF8FE;border-color:#D4EAF8;color:#346C90}
html[data-bubu-theme="clicker"] .dimension-title strong {color:#256F9F}
html[data-bubu-theme="clicker"] .explode-panel-head output {color:var(--bubu-blue)}
html[data-bubu-theme="clicker"] .explode-panel input[type="range"] {accent-color:var(--bubu-blue)}
html[data-bubu-theme="clicker"] .shape-mode-title .dot {background:var(--bubu-pink)}
/* STL viewer */
html[data-bubu-theme="stl"] {--brand:var(--bubu-blue);--ink:var(--bubu-ink);--muted:var(--bubu-sub);--border:var(--bubu-soft-border)}
html[data-bubu-theme="stl"] .brandmark {background:linear-gradient(145deg,#B94B87,#277FAF)}
html[data-bubu-theme="stl"] .mini-tag,
html[data-bubu-theme="stl"] .edge-chip {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="stl"] .filepick:hover,
html[data-bubu-theme="stl"] .filepick.dragover {background:var(--bubu-pale-blue);border-color:#95C8E9}
html[data-bubu-theme="stl"] .upload-icon {background:var(--bubu-pale-blue);color:var(--bubu-blue)}
html[data-bubu-theme="stl"] .edge-tabs button.is-selected {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="stl"] .edge-button:not(.dark):not(.ghost) {background:var(--bubu-blue);color:white}
html[data-bubu-theme="stl"] .edge-button.dark {background:var(--bubu-deep)}
html[data-bubu-theme="stl"] .edge-button.ghost {background:white;border-color:#A8D2EE;color:var(--bubu-blue)}
html[data-bubu-theme="stl"] .orientation-axis button:hover,
html[data-bubu-theme="stl"] .orientation-actions button:hover {background:var(--bubu-pale-blue);border-color:#AACFE7;color:var(--bubu-blue)}
html[data-bubu-theme="stl"] .orientation-actions button:first-child {background:var(--bubu-pale-blue);border-color:#BDDCF0;color:var(--bubu-blue)}
/* Font to STL, including batch mode */
html[data-bubu-theme="font"] {--mint:var(--bubu-blue);--ink:var(--bubu-ink);--line:var(--bubu-soft-border);--muted:var(--bubu-sub)}
html[data-bubu-theme="font"] .mark {background:linear-gradient(145deg,#B94B87,#277FAF)}
html[data-bubu-theme="font"] .pill {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="font"] .filepick,
html[data-bubu-theme="font"] .minor {background:var(--bubu-pale-blue);border-color:#B3D9F0;color:var(--bubu-blue)}
html[data-bubu-theme="font"] .primary:not(.secondary) {background:var(--bubu-blue);color:white}
html[data-bubu-theme="font"] .primary.secondary {background:var(--bubu-deep)}
html[data-bubu-theme="font"] .font-work-modes button.active {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="font"] .batch-list-head {background:var(--bubu-pale-blue);color:#376E8D}
html[data-bubu-theme="font"] .batch-toolbar button {color:var(--bubu-blue);border-color:#BDDEF1}
html[data-bubu-theme="font"] .preview-toolbar .dot {background:var(--bubu-pink)}
/* SVG extrusion */
html[data-bubu-theme="svg"] {--mint:var(--bubu-blue);--ink:var(--bubu-ink);--line:var(--bubu-soft-border)}
html[data-bubu-theme="svg"] .tag {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="svg"] .download {background:var(--bubu-blue);color:white}
html[data-bubu-theme="svg"] .status::before {background:var(--bubu-pink)}
/* Image to SVG conversion */
html[data-bubu-theme="image"] {--mint:var(--bubu-blue);--ink:var(--bubu-ink);--line:var(--bubu-soft-border)}
html[data-bubu-theme="image"] .tag {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="image"] .download {background:var(--bubu-blue);color:white}
html[data-bubu-theme="image"] .status::before {background:var(--bubu-pink)}
html[data-bubu-theme="image"] .modebtn input {accent-color:var(--bubu-blue)}
/* Basic round, square and hex clickers */
html[data-bubu-theme="shape"] {--mint:var(--bubu-blue);--ink:var(--bubu-ink);--line:var(--bubu-soft-border);--muted:var(--bubu-sub)}
html[data-bubu-theme="shape"] .tag {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="shape"] .unitbox input {color:var(--bubu-blue)}
html[data-bubu-theme="shape"] .hint,
html[data-bubu-theme="shape"] .ok {background:var(--bubu-pale-blue);border-color:#C8E3F5;color:#326D94}
html[data-bubu-theme="shape"] .download:not(.secondary) {background:var(--bubu-blue);color:white}
html[data-bubu-theme="shape"] .download.secondary {background:var(--bubu-deep)}
html[data-bubu-theme="shape"] .preview .tools button.active {background:var(--bubu-pale-pink);border-color:#EFB1D0;color:var(--bubu-rose)}
html[data-bubu-theme="shape"] .bubu-source-tabs button.is-active,
html[data-bubu-theme="shape"] .bubu-basic-tabs button.is-active {background:var(--bubu-pale-pink);color:var(--bubu-rose)}
html[data-bubu-theme="shape"] .bubu-create-label {color:var(--bubu-rose)}
/* All status/warning/error semantics and user-selectable 3D model colors stay unchanged. */
