#sticker-safe-overlay {position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden;display:none}
  #sticker-safe-rect {position:absolute;border:2px dashed rgba(244,114,182,.92);box-shadow:0 0 0 9999px rgba(244,114,182,.055),inset 0 0 0 1px rgba(255,255,255,.48);box-sizing:border-box}
  #sticker-safe-caption {position:absolute;top:5px;left:7px;padding:2px 5px;background:rgba(15,23,42,.82);color:#f9a8d4;border-radius:4px;font-size:10px;white-space:nowrap}
  #main-canvas.sticker-interactive {touch-action:none;cursor:grab}
  #main-canvas.sticker-interactive:active {cursor:grabbing}
  #sticker-mode-panel input[type=range] {accent-color:#ec4899}


    /* ===== MIMO Studio 品牌化主题 ===== */
    :root {
      --mimo-radius: 18px;
      --mimo-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
    }
    body.mimo-theme { 
      --mimo-bg: #fff7fa;
      --mimo-bg-soft: #fffdfd;
      --mimo-panel: #ffffff;
      --mimo-panel-2: #fff1f7;
      --mimo-panel-3: #ffe8f2;
      --mimo-border: #f0c5d8;
      --mimo-border-strong: #e9a5c3;
      --mimo-text: #23141c;
      --mimo-muted: #674958;
      --mimo-subtle: #8e7181;
      --mimo-accent: #e84a8a;
      --mimo-accent-2: #ff86b6;
      --mimo-accent-soft: rgba(232, 74, 138, 0.12);
      --mimo-success: #5f9f7f;
      --mimo-canvas-bg: #fffdfd;
      background: radial-gradient(circle at top, #fff8fb 0%, #fff4f8 40%, #fff1f7 100%) !important;
      color: var(--mimo-text) !important;
      transition: background .25s ease, color .25s ease;
    }
    body.mimo-theme[data-theme="dark"] {
      --mimo-bg: #0d0a0f;
      --mimo-bg-soft: #151018;
      --mimo-panel: #171119;
      --mimo-panel-2: #21151f;
      --mimo-panel-3: #291925;
      --mimo-border: #422234;
      --mimo-border-strong: #a63b71;
      --mimo-text: #fff6fb;
      --mimo-muted: #d5adc3;
      --mimo-subtle: #9c7f90;
      --mimo-accent: #ff4f9c;
      --mimo-accent-2: #ff8dc1;
      --mimo-accent-soft: rgba(255, 79, 156, 0.15);
      --mimo-success: #86d1a7;
      --mimo-canvas-bg: #fcf8fb;
      background: radial-gradient(circle at top, #171019 0%, #100c12 45%, #09070a 100%) !important;
      color: var(--mimo-text) !important;
    }
    body.mimo-theme, body.mimo-theme * { scrollbar-color: var(--mimo-accent) transparent; }
    body.mimo-theme .custom-scrollbar::-webkit-scrollbar-track { background: transparent; }
    body.mimo-theme .custom-scrollbar::-webkit-scrollbar-thumb { background: color-mix(in srgb, var(--mimo-accent) 85%, white 15%); border: 2px solid transparent; }
    body.mimo-theme .custom-scrollbar::-webkit-scrollbar-thumb:hover { background: var(--mimo-accent); }
    body.mimo-theme header {
      background: color-mix(in srgb, var(--mimo-panel) 88%, white 12%) !important;
      border-color: var(--mimo-border) !important;
      box-shadow: 0 10px 32px rgba(232,74,138,.08);
    }
    body.mimo-theme aside,
    body.mimo-theme main,
    body.mimo-theme #modal-tiling > div,
    body.mimo-theme #export-menu {
      background: var(--mimo-panel) !important;
      border-color: var(--mimo-border) !important;
      color: var(--mimo-text) !important;
    }
    body.mimo-theme #canvas-viewport {
      background: radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--mimo-panel-2) 80%, white 20%) 0%, var(--mimo-bg) 72%) !important;
    }
    body.mimo-theme #canvas-wrapper {
      background: var(--mimo-canvas-bg) !important;
      border-color: var(--mimo-border-strong) !important;
      border-radius: 18px !important;
      box-shadow: 0 22px 44px rgba(232,74,138,.14) !important;
    }
    body.mimo-theme aside > section,
    body.mimo-theme #sticker-mode-panel,
    body.mimo-theme #shared-common-panel,
    body.mimo-theme #seamless-module-panel {
      background: transparent !important;
      border-color: var(--mimo-border) !important;
    }
    body.mimo-theme #drop-zone,
    body.mimo-theme #elements-list > div,
    body.mimo-theme #export-menu,
    body.mimo-theme .bg-slate-900,
    body.mimo-theme .bg-slate-900\/40,
    body.mimo-theme .bg-slate-900\/60,
    body.mimo-theme .bg-slate-950,
    body.mimo-theme .bg-slate-950\/70,
    body.mimo-theme .bg-slate-950\/90,
    body.mimo-theme .bg-slate-800,
    body.mimo-theme .bg-slate-800\/80 {
      background-color: var(--mimo-panel-2) !important;
      border-color: var(--mimo-border) !important;
      color: var(--mimo-text) !important;
    }
    body.mimo-theme .from-pink-950\/20,
    body.mimo-theme .from-indigo-950\/20,
    body.mimo-theme .to-transparent {
      background-image: none !important;
    }
    body.mimo-theme input[type="number"],
    body.mimo-theme input[type="text"],
    body.mimo-theme select,
    body.mimo-theme input[type="color"],
    body.mimo-theme textarea {
      background: var(--mimo-bg-soft) !important;
      color: var(--mimo-text) !important;
      border-color: var(--mimo-border-strong) !important;
    }
    body.mimo-theme input[type="range"] { accent-color: var(--mimo-accent); }
    body.mimo-theme button,
    body.mimo-theme .layout-mode-btn,
    body.mimo-theme .sizemode-btn,
    body.mimo-theme .rot-mode-btn,
    body.mimo-theme .canvas-preset-btn,
    body.mimo-theme .dpi-preset-btn {
      border-color: var(--mimo-border) !important;
      color: var(--mimo-text) !important;
      transition: transform .15s ease, box-shadow .2s ease, background-color .2s ease;
    }
    body.mimo-theme button:hover { box-shadow: 0 6px 20px rgba(232,74,138,.12); }
    body.mimo-theme .layout-mode-btn.active,
    body.mimo-theme .sizemode-btn.active,
    body.mimo-theme .rot-mode-btn.active,
    body.mimo-theme .canvas-preset-btn.active,
    body.mimo-theme .dpi-preset-btn.bg-indigo-600 {
      background: var(--mimo-accent-soft) !important;
      border-color: var(--mimo-accent) !important;
      color: var(--mimo-accent) !important;
    }
    body.mimo-theme #btn-shuffle,
    body.mimo-theme #btn-quick-export,
    body.mimo-theme #btn-export-tile,
    body.mimo-theme #btn-apply-custom-size,
    body.mimo-theme #btn-delete-active,
    body.mimo-theme #btn-sticker-randomize,
    body.mimo-theme #btn-sticker-fill {
      background-image: linear-gradient(135deg, var(--mimo-accent), var(--mimo-accent-2)) !important;
      color: #fff !important;
      border: none !important;
      box-shadow: 0 10px 20px rgba(232,74,138,.22) !important;
    }
    body.mimo-theme #btn-export-dropdown {
      background: color-mix(in srgb, var(--mimo-accent) 82%, black 18%) !important;
      color: #fff !important;
      border-color: transparent !important;
    }
    body.mimo-theme #btn-preview-tile,
    body.mimo-theme #btn-save-preset,
    body.mimo-theme #btn-load-preset-file,
    body.mimo-theme #btn-toggle-guidelines,
    body.mimo-theme #btn-close-modal,
    body.mimo-theme #btn-load-presets,
    body.mimo-theme #btn-clear-assets,
    body.mimo-theme .btn-del-el {
      background: var(--mimo-panel-2) !important;
      color: var(--mimo-muted) !important;
    }
    body.mimo-theme #loading-overlay { background: rgba(20, 10, 16, 0.48) !important; }
    body.mimo-theme #loading-text { color: var(--mimo-text) !important; }
    body.mimo-theme #toast-container > div { border-radius: 16px !important; }
    body.mimo-theme .text-slate-100,
    body.mimo-theme .text-slate-200,
    body.mimo-theme .text-slate-300,
    body.mimo-theme .text-slate-900 { color: var(--mimo-text) !important; }
    body.mimo-theme .text-slate-400,
    body.mimo-theme .text-slate-500,
    body.mimo-theme .text-slate-600,
    body.mimo-theme .text-slate-700 { color: var(--mimo-muted) !important; }
    body.mimo-theme .border-slate-700,
    body.mimo-theme .border-slate-700\/60,
    body.mimo-theme .border-slate-700\/80,
    body.mimo-theme .border-slate-800,
    body.mimo-theme .border-slate-800\/60,
    body.mimo-theme .border-slate-800\/70,
    body.mimo-theme .border-slate-800\/80,
    body.mimo-theme .border-pink-500\/25,
    body.mimo-theme .border-amber-500\/20,
    body.mimo-theme .border-sky-500\/20,
    body.mimo-theme .border-indigo-500\/25,
    body.mimo-theme .border-indigo-500\/20 { border-color: var(--mimo-border) !important; }
    body.mimo-theme .text-indigo-300,
    body.mimo-theme .text-indigo-400,
    body.mimo-theme .text-purple-400,
    body.mimo-theme .text-pink-200,
    body.mimo-theme .text-pink-400,
    body.mimo-theme .text-sky-200,
    body.mimo-theme .text-amber-200,
    body.mimo-theme .text-emerald-400,
    body.mimo-theme .text-rose-400 { color: var(--mimo-accent) !important; }
    body.mimo-theme .checkerboard {
      background-color: #fff;
      background-image: linear-gradient(45deg, #f6dce7 25%, transparent 25%),
                        linear-gradient(-45deg, #f6dce7 25%, transparent 25%),
                        linear-gradient(45deg, transparent 75%, #f6dce7 75%),
                        linear-gradient(-45deg, transparent 75%, #f6dce7 75%);
    }
    body.mimo-theme .mimo-brand-title {
      background: linear-gradient(90deg, var(--mimo-accent), var(--mimo-accent-2));
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent !important;
    }
    .mimo-theme-switch {
      display: inline-flex; align-items: center; gap: 6px; padding: 4px; border-radius: 999px;
      background: var(--mimo-panel-2); border: 1px solid var(--mimo-border);
    }
    .mimo-theme-chip {
      border: none; border-radius: 999px; padding: 6px 10px; font-size: 11px; font-weight: 700;
      color: var(--mimo-muted) !important; background: transparent !important; box-shadow: none !important;
    }
    .mimo-theme-chip.active {
      background: linear-gradient(135deg, var(--mimo-accent), var(--mimo-accent-2)) !important;
      color: #fff !important; box-shadow: 0 8px 18px rgba(232,74,138,.22) !important;
    }
    .mimo-catmark {
      width: 38px; height: 38px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center;
      background: linear-gradient(135deg, var(--mimo-accent), var(--mimo-accent-2));
      box-shadow: 0 12px 24px rgba(232,74,138,.18);
    }
    .mimo-catmark svg { width: 22px; height: 22px; fill: white; }
    body.mimo-theme #modal-tiling,
    body.mimo-theme #loading-overlay { backdrop-filter: blur(12px); }
