
  /* Accepted mobile workspace arrangement: responsive anchors, no fixed X/Y drag offsets. */
  .vp-info { display: none !important; }

  /* The mode selector owns every free header pixel; actions keep their fixed touch targets. */
  .modebar > .mode-toggle-split {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    grid-template-columns: minmax(0, 1fr) 48px !important;
  }
  .modebar > .mode-toggle-split .mode-toggle-btn {
    width: auto !important;
    min-width: 0 !important;
    justify-content: flex-start !important;
  }
  .modebar > .mode-toggle-split #mode-label {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
    overflow: visible;
    white-space: normal;
    line-height: 1.05;
    text-align: left;
  }
  .modebar > .mode-toggle-split .mode-picker-arrow {
    width: 48px !important;
    min-width: 48px !important;
  }
  .modebar-cutout-spacer { display: none; pointer-events: none; }
  @media (max-width: 600px) {
    .modebar {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) clamp(80px, 22vw, 96px) repeat(3, 48px) !important;
    }
    .modebar-cutout-spacer { display: block; }
    #btn-redo { display: none !important; }
  }

  .create-sheet {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 0 0 4px;
  }
  .props-inner:has(.create-sheet) { padding-top: 5px !important; padding-bottom: 5px !important; }
  .create-toolbar {
    display: flex;
    align-items: center;
    gap: 5px;
    padding-bottom: 2px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  .create-sheet-actions {
    display: flex;
    align-items: center;
    gap: 4px;
    padding-left: 5px;
    border-left: 1px solid rgba(255,255,255,.14);
  }
  .create-icon-btn {
    width: 34px;
    min-width: 34px;
    height: 34px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: var(--bg-panel-2);
    color: var(--text);
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
  }
  .create-icon-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
  .create-search {
    min-height: 36px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 11px;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 9px;
    background: rgba(10,10,10,.48);
    color: var(--text-dim);
  }
  .create-search[hidden] { display: none !important; }
  .create-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--text);
    font: inherit;
  }
  .create-category-tabs {
    flex: 1 1 auto;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
  }
  .create-category-tabs .btn {
    position: relative;
    min-width: 0;
    height: 34px;
    padding: 0 3px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-size: 10px;
    font-weight: 700;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(255,255,255,.78) !important;
  }
  .create-category-tabs .btn svg { width: 16px; height: 16px; flex: 0 0 16px; fill: none; stroke: currentColor; stroke-width: 2; }
  .create-category-tabs .btn:hover,
  .create-category-tabs .btn:focus-visible { color: #fff !important; }
  .create-category-tabs .btn.primary { color: var(--accent) !important; }
  .create-category-tabs .btn.primary::after {
    content: '';
    position: absolute;
    left: 5px;
    right: 5px;
    bottom: -5px;
    height: 2px;
    border-radius: 2px;
    background: var(--accent);
  }
  .create-card-section { display: flex; flex-direction: column; gap: 3px; }
  .create-sheet .prim-card-grid {
    grid-template-columns: repeat(auto-fill, minmax(64px, 1fr));
    column-gap: 6px;
    row-gap: 3px;
  }
  .create-sheet .prim-card { min-height: 70px; padding: 7px 4px; gap: 3px; border-radius: 8px; }
  .create-sheet .prim-card-icon svg { width: 28px; height: 28px; }
  .create-sheet .prim-card-label { font-size: 10px; line-height: 1.1; }
  .create-empty { padding: 18px 10px; text-align: center; color: var(--text-dim); }

  /* One-row progressive navigation for the portrait object inspector. */
  .props-tab-bar.panel-drill-active > .panel-min-btn,
  .props-tab-bar.panel-drill-active > .tab-btn { display: none !important; }
  .props-tab-bar.panel-drill-active {
    z-index: 3;
    margin-bottom: 6px;
    background: #1d1d1f;
    border-bottom-color: rgba(255,255,255,.10);
  }
  .props-tab-bar.panel-drill-active::after {
    content: '';
    position: absolute;
    z-index: -1;
    left: 7px;
    right: 7px;
    bottom: -6px;
    height: 7px;
    border: 1px solid rgba(255,255,255,.08);
    border-top: 0;
    border-radius: 0 0 8px 8px;
    background: #151517;
    box-shadow: 0 4px 10px rgba(0,0,0,.28);
    pointer-events: none;
  }
  .panel-drill-nav[hidden] { display: none !important; }
  .panel-drill-nav {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 58px;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    position: relative;
  }
  .panel-drill-layer {
    width: 100%;
    min-width: 0;
    min-height: 58px;
    display: flex;
    align-items: stretch;
    will-change: transform, opacity;
  }
  .panel-drill-layer.is-exiting { position: absolute; inset: 0; pointer-events: none; }
  .panel-drill-layer.enter-forward { animation: panel-drill-enter-forward 180ms cubic-bezier(.2,.75,.25,1) both; }
  .panel-drill-layer.exit-forward  { animation: panel-drill-exit-forward  180ms cubic-bezier(.2,.75,.25,1) both; }
  .panel-drill-layer.enter-back    { animation: panel-drill-enter-back    180ms cubic-bezier(.2,.75,.25,1) both; }
  .panel-drill-layer.exit-back     { animation: panel-drill-exit-back     180ms cubic-bezier(.2,.75,.25,1) both; }
  @keyframes panel-drill-enter-forward { from { opacity:0; transform:translateX(16px); } to { opacity:1; transform:translateX(0); } }
  @keyframes panel-drill-exit-forward  { from { opacity:1; transform:translateX(0); } to { opacity:0; transform:translateX(-10px); } }
  @keyframes panel-drill-enter-back    { from { opacity:0; transform:translateX(-16px); } to { opacity:1; transform:translateX(0); } }
  @keyframes panel-drill-exit-back     { from { opacity:1; transform:translateX(0); } to { opacity:0; transform:translateX(10px); } }
  #props-inner.panel-drill-content-forward { animation: panel-drill-content-forward 180ms cubic-bezier(.2,.75,.25,1) both; }
  #props-inner.panel-drill-content-back { animation: panel-drill-content-back 180ms cubic-bezier(.2,.75,.25,1) both; }
  @keyframes panel-drill-content-forward { from { opacity:.2; transform:translateY(6px); } to { opacity:1; transform:translateY(0); } }
  @keyframes panel-drill-content-back { from { opacity:.2; transform:translateY(-4px); } to { opacity:1; transform:translateY(0); } }
  .props-tab-bar.panel-drill-root-arriving > .tab-btn {
    animation: panel-drill-enter-back 180ms cubic-bezier(.2,.75,.25,1) both;
  }
  .panel-drill-btn {
    min-width: 0;
    border: 0;
    border-right: 1px solid rgba(255,255,255,.07);
    border-bottom: 2px solid transparent;
    background: transparent;
    color: rgba(255,255,255,.82);
    display: flex;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 7px 4px 8px;
    font-family: inherit;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.1;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }
  .panel-drill-btn:active { background: rgba(255,255,255,.06); }
  .panel-drill-btn svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .panel-drill-icon {
    flex: 0 0 44px;
    width: 44px;
    padding-inline: 0;
  }
  .panel-drill-back {
    flex: 0 0 48px;
    width: 48px;
    padding-inline: 0;
    color: var(--accent);
    background: rgba(255,143,0,.13);
    border-right-color: rgba(255,143,0,.36);
    box-shadow: inset -1px 0 rgba(255,143,0,.08);
  }
  .panel-drill-back:active { background: rgba(255,143,0,.25); }
  .panel-drill-title {
    flex: 1 1 auto;
    justify-content: flex-start;
    padding-left: 12px;
    color: #fff;
    font-size: 12px;
    pointer-events: none;
  }
  .panel-drill-choice.active,
  .panel-drill-choice:focus-visible {
    color: var(--accent);
    border-bottom-color: var(--accent);
    background: linear-gradient(180deg, rgba(255,143,0,.13), rgba(255,143,0,.055));
    outline: none;
  }
  .panel-drill-close { font-size: 22px; font-weight: 400; }
  @media (prefers-reduced-motion: reduce) {
    .panel-drill-layer,
    #props-inner.panel-drill-content-forward,
    #props-inner.panel-drill-content-back,
    .props-tab-bar.panel-drill-root-arriving > .tab-btn { animation: none !important; }
  }

  /* XYZ gizmo alone, top-left — same spot in both Object and Sculpt modes. */
  #m3-top-left-controls {
    position: absolute;
    top: max(8px, env(safe-area-inset-top, 0px));
    left: max(8px, env(safe-area-inset-left, 0px));
    z-index: 12;
    display: flex;
    align-items: center;
    width: max-content;
    height: max-content;
  }
  #m3-top-left-controls .axis-gizmo {
    width: 60px !important;
    height: 60px !important;
    margin: 0 !important;
    flex: 0 0 60px;
    box-sizing: border-box;
    padding: 0;
  }

  /* Lock/Eye vertical stack — lives outside the Outliner DOM so hiding or
     collapsing the Outliner never hides these controls. Positioned by
     _syncM3ViewLockStack() (script "m3-responsive-workspace-arrangement"):
     docked immediately left of the Outliner, top-aligned with it, snapping
     to its edge as it resizes/collapses; falls back to the viewport's
     top-right safe area when the Outliner itself is hidden (Sculpt, etc). */
  #m3-view-lock-stack {
    position: absolute;
    z-index: 12;
    display: flex;
    flex-direction: column;
    gap: 7px;
    width: max-content;
    height: max-content;
  }
  #m3-view-lock-stack .vp-view-controls {
    position: relative !important;
    inset: auto !important;
    z-index: 1 !important;
  }
  #m3-view-lock-stack .vp-view-lock,
  #m3-view-lock-stack .vp-saved-view {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
  }
  #m3-view-lock-stack .vp-view-lock svg { width: 19px !important; height: 19px !important; }
  body.mode-sculpt #m3-view-lock-stack { z-index: 28; }

  /* Temporary tutorial sits above the permanent controls; dismissal reveals them without layout shift. */
  #tutorial-btn-wrap {
    top: max(8px, env(safe-area-inset-top, 0px)) !important;
    left: max(8px, env(safe-area-inset-left, 0px)) !important;
    z-index: 30 !important;
    margin: 0 !important;
  }

  .left-tools,
  .right-actions {
    top: auto !important;
    width: max-content !important;
    height: auto !important;
    max-height: calc(100% - 72px);
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    gap: clamp(5px, 1.4vw, 8px) !important;
    overflow-y: auto !important;
    overflow-x: visible !important;
    scrollbar-width: none;
    z-index: 12 !important;
  }
  .left-tools {
    left: max(8px, env(safe-area-inset-left, 0px)) !important;
    right: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom, 0px)) !important;
    align-items: flex-start !important;
  }
  .right-actions {
    right: max(8px, env(safe-area-inset-right, 0px)) !important;
    left: auto !important;
    bottom: max(12px, env(safe-area-inset-bottom, 0px)) !important;
    align-items: flex-end !important;
  }
  .left-tools::-webkit-scrollbar,
  .right-actions::-webkit-scrollbar { display: none; }

  .left-tools > #ltool-transform,
  .left-tools > #ltool-frame,
  .left-tools > #rb-view,
  .left-tools > #rb-grid,
  .right-actions > #rb-select,
  .right-actions > #rb-tools,
  .right-actions > #ltool-actions,
  .right-actions > #rb-edit {
    width: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 6px 3px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    transform: none !important;
  }
  .left-tools > #rb-view,
  .left-tools > #rb-grid,
  .right-actions > #rb-tools,
  .right-actions > #ltool-actions {
    background: rgba(18,18,18,.88);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 8px;
    color: var(--text);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  .left-tools > #rb-view svg,
  .left-tools > #rb-grid svg,
  .right-actions > #rb-tools svg,
  .right-actions > #ltool-actions svg {
    width: 22px !important;
    height: 22px !important;
  }
  .left-tools > #rb-grid { order: 1; }
  .left-tools > #rb-view { order: 2; }
  .left-tools > #ltool-frame { order: 3; }
  .left-tools > #ltool-transform { order: 4; }
  .right-actions > #rb-tools { order: 0; }
  .right-actions > #ltool-actions { order: 1; }
  .right-actions > #rb-edit { order: 2; }
  .right-actions > #rb-select { order: 3; }
  .right-actions > #ltool-actions .outer-tool-label {
    white-space: normal;
    line-height: 1.05;
  }
  .right-actions > #rb-tools .outer-tool-label {
    white-space: normal;
    line-height: 1.05;
  }
  .left-tools > .left-tool-sep { display: none !important; }

  /* Scene is one aligned top-right panel; Render Image belongs to the Render tab. */
  .vp-savepng { display: none !important; }
  .right-outliner,
  .right-outliner.collapsed {
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: auto !important;
    width: min(184px, calc(100% - 16px)) !important;
    height: auto !important;
    max-height: min(220px, calc(100% - 16px)) !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    border-radius: 2px 2px 2px 10px !important;
  }
  .right-outliner .outliner-shading,
  .right-outliner.collapsed .outliner-shading {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    flex: 0 0 44px !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    border-radius: 0 !important;
  }
  .right-outliner .shading-btn {
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }
  .right-outliner .outliner-body,
  .right-outliner.collapsed .outliner-body {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
  .right-outliner .outliner-collapse-btn { top: 49px !important; }
  .right-outliner.has-light-tools .outliner-collapse-btn { top: 93px !important; }
  /* Minimize vertically, never squeeze the four shading controls into a tiny
     horizontal strip. The restore arrow owns a dedicated area on the right. */
  .right-outliner.viewport-panel-minimized {
    width: min(184px, calc(100% - 16px)) !important;
    height: 44px !important;
    max-height: 44px !important;
    background: rgba(18,18,18,.94) !important;
    border-color: rgba(255,255,255,.08) !important;
    border-radius: 2px 2px 2px 10px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.30) !important;
    overflow: hidden !important;
  }
  .right-outliner.viewport-panel-minimized .outliner-shading {
    width: calc(100% - 40px) !important;
    min-width: 0 !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    border-right: 1px solid rgba(255,255,255,.08) !important;
  }
  .right-outliner.viewport-panel-minimized .outliner-collapse-btn {
    top: 4px !important;
    right: 3px !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 36px !important;
    min-height: 36px !important;
    border-radius: 7px !important;
    background: rgba(27,27,29,.98) !important;
    color: var(--accent) !important;
    box-shadow: none !important;
  }
  /* Compact Scene hierarchy: visibility is the first aligned control, then
     hierarchy/type, while the object name receives every remaining pixel. */
  .right-outliner:not(.viewport-panel-minimized) .outliner-body {
    padding: 2px 3px 3px !important;
  }
  .right-outliner:not(.viewport-panel-minimized) .outliner-new-group {
    width: calc(100% - 36px) !important;
    min-height: 28px !important;
    height: 28px !important;
    margin: 1px 33px 1px 2px !important;
    padding: 2px 8px !important;
    font-size: 9px !important;
  }
  .right-outliner:not(.viewport-panel-minimized) .outliner-collapse-btn {
    top: 47px !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
  }
  .right-outliner.has-light-tools:not(.viewport-panel-minimized) .outliner-collapse-btn {
    top: 91px !important;
  }
  .right-outliner .outline-item {
    min-height: 36px !important;
    padding: 4px 5px !important;
    margin-bottom: 0 !important;
    gap: 5px !important;
    box-sizing: border-box !important;
  }
  .right-outliner .outline-item .vis {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
    margin: 0 !important;
  }
  .right-outliner .outline-item .name {
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }
  .right-outliner .outline-group-row {
    grid-template-columns: 16px 14px 13px minmax(0,1fr) 22px !important;
    column-gap: 4px !important;
  }
  .right-outliner .outline-item.outliner-drag-source {
    position: relative;
    z-index: 3;
    color: #fff;
    background: rgba(255,128,0,.17) !important;
    outline: 1px solid rgba(255,128,0,.72);
    transform: scale(.98);
  }
  .right-outliner .outline-group-row.group-drop-target {
    position: relative;
    z-index: 4;
    color: #fff !important;
    opacity: 1 !important;
    background: rgba(255,128,0,.24) !important;
    box-shadow: inset 0 0 0 2px var(--accent), 0 0 12px rgba(255,128,0,.28);
  }
  /* Sculpt is a locked single-object workspace. Hide the complete Scene
     hierarchy and its shading strip without mutating the panel's own state;
     removing mode-sculpt therefore restores it exactly as the user left it. */
  body.mode-sculpt .right-outliner,
  body.mode-sculpt .right-outliner.collapsed,
  body.mode-sculpt .right-outliner.viewport-panel-minimized {
    display: none !important;
  }
  /* Complete categorized object/edit tool library. Quick Action remains a
     small radial shortcut; this layered card owns depth and discoverability. */
  #tools-menu-backdrop {
    position:absolute;
    inset:0;
    z-index:70;
    background:rgba(0,0,0,.12);
    backdrop-filter:blur(.4px);
  }
  #tools-menu-backdrop[hidden],
  #tools-menu[hidden] { display:none !important; }
  .right-actions.tools-menu-open { z-index:92 !important; }
  #tools-menu {
    position:absolute;
    z-index:91;
    width:min(292px,calc(100% - 76px));
    max-height:calc(100% - 16px);
    overflow:hidden;
    box-sizing:border-box;
    border:1px solid rgba(255,255,255,.13);
    border-radius:12px;
    color:var(--text);
    background:rgba(20,20,21,.98);
    box-shadow:0 14px 38px rgba(0,0,0,.48);
    backdrop-filter:blur(14px);
    animation:tools-menu-enter 150ms ease-out both;
  }
  .tools-menu-head {
    display:grid;
    grid-template-columns:34px minmax(0,1fr) 34px;
    align-items:center;
    min-height:39px;
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .tools-menu-head button {
    width:30px;
    height:30px;
    margin:auto;
    padding:0;
    border:0;
    border-radius:7px;
    color:var(--text-dim);
    background:rgba(255,255,255,.045);
    cursor:pointer;
    font:800 16px/1 system-ui,sans-serif;
  }
  .tools-menu-head button:hover,
  .tools-menu-head button:active { color:var(--accent); background:rgba(245,132,0,.10); }
  .tools-menu-head button[hidden] { visibility:hidden; display:block !important; }
  #tools-menu-title {
    min-width:0;
    overflow:hidden;
    color:#eee;
    font:800 10px/1 system-ui,sans-serif;
    letter-spacing:.35px;
    text-align:center;
    text-overflow:ellipsis;
    text-transform:uppercase;
    white-space:nowrap;
  }
  #tools-menu-body {
    max-height:calc(100% - 39px);
    padding:6px;
    overflow-y:auto;
    scrollbar-width:none;
  }
  #tools-menu-body::-webkit-scrollbar { display:none; }
  .tools-category-grid,
  .tools-action-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px;
  }
  .tools-category,
  .tools-action {
    min-width:0;
    min-height:54px;
    padding:7px 6px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    color:#ddd;
    background:#29292b;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:7px;
    text-align:left;
  }
  .tools-category:active,
  .tools-action:active { color:#fff; border-color:rgba(245,132,0,.55); background:rgba(245,132,0,.14); }
  .tools-category-icon,
  .tools-action-icon {
    flex:0 0 27px;
    width:27px;
    color:var(--accent);
    font:800 19px/1 system-ui,sans-serif;
    text-align:center;
  }
  .tools-category-copy,
  .tools-action-copy { min-width:0; }
  .tools-category-name,
  .tools-action-name {
    display:block;
    overflow:hidden;
    font:750 9px/1.15 system-ui,sans-serif;
    text-overflow:ellipsis;
  }
  .tools-category-count {
    display:block;
    margin-top:3px;
    color:var(--text-dim);
    font:650 7.5px/1 system-ui,sans-serif;
  }
  .tools-action.danger { color:#ff8b83; border-color:rgba(239,68,68,.22); }
  .tools-action.danger .tools-action-icon { color:#ff6b63; }
  .tools-menu-empty {
    display:grid;
    place-items:center;
    min-height:92px;
    padding:12px;
    color:var(--text-dim);
    font:650 9px/1.35 system-ui,sans-serif;
    text-align:center;
  }
  .sel-pie-hub.quick-action-close-hub {
    width:54px;
    height:54px;
    gap:1px;
    color:var(--text-dim);
    background:#1e1e20;
    border-color:rgba(255,255,255,.12);
    font:750 8px/1 system-ui,sans-serif;
  }
  .sel-pie-hub.quick-action-close-hub .quick-action-close-mark {
    color:#ddd;
    font-size:18px;
    line-height:16px;
  }
  @keyframes tools-menu-enter {
    from { opacity:0; transform:translateX(7px) scale(.98); }
    to { opacity:1; transform:translateX(0) scale(1); }
  }
  @media (prefers-reduced-motion:reduce) {
    #tools-menu { animation:none; }
  }
  .outliner-drag-ghost {
    position: fixed;
    z-index: 10050;
    max-width: 150px;
    padding: 7px 10px;
    border: 1px solid rgba(255,128,0,.82);
    border-radius: 8px;
    color: #fff;
    background: rgba(23,23,25,.96);
    box-shadow: 0 8px 24px rgba(0,0,0,.42);
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    transform: translate(12px, 12px);
  }
  .outliner-drag-ghost.has-target {
    color: var(--accent);
    background: rgba(39,31,20,.98);
  }
  body.outliner-object-dragging {
    cursor: grabbing;
    user-select: none;
  }
  /* Dense material inspector: one stable label rail and one control rail,
     matching the compact scan pattern used by desktop material editors. */
  .material-inspector {
    margin-top: 4px;
  }
  .material-inspector .mat-edit-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 6px !important;
    margin-top: 0 !important;
  }
  .material-inspector .mat-edit-section {
    min-width: 0;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
  }
  .material-inspector .mat-edit-section-title {
    margin: 0 !important;
    padding: 7px 2px 4px !important;
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
    color: var(--text);
    font-size: 10px;
    line-height: 1;
  }
  .material-inspector .property-row {
    display: grid !important;
    grid-template-columns: 82px minmax(0,1fr) 42px !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 3px 2px !important;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .material-inspector .property-row .property-label,
  .material-inspector .property-label {
    grid-column: auto !important;
    margin: 0 !important;
    color: var(--text-dim);
    font-size: 10px !important;
    font-weight: 600;
  }
  .material-inspector .property-input {
    min-width: 0;
    height: 27px;
    padding: 3px 7px;
    border-radius: 5px;
    font-size: 10px;
  }
  .material-inspector .property-color-input {
    min-width: 0;
    width: 100%;
    height: 27px;
    padding: 2px 3px;
    border-radius: 5px;
  }
  .material-inspector .property-value {
    min-width: 0;
    padding: 4px 5px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font-size: 9px;
    text-align: right;
  }
  .material-inspector .property-value:empty {
    visibility: hidden;
  }
  .material-inspector .property-control[type="range"] {
    min-width: 0;
    height: 20px;
    margin: 0;
  }
  .material-inspector .mat-texture-block {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr);
    align-items: center;
    gap: 6px;
    min-height: 30px;
    margin: 0 !important;
    padding: 3px 2px !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .material-inspector .mat-texture-label {
    margin: 0;
    color: var(--text-dim);
    font-size: 10px;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: 0;
    text-transform: none;
  }
  .material-inspector .mat-texture-row {
    min-width: 0;
    min-height: 27px;
    gap: 4px;
    padding: 2px 3px;
    border-radius: 5px;
  }
  .material-inspector .mat-texture-row .btn,
  .material-inspector .mat-texture-block > .btn,
  .material-inspector .mat-texture-actions .btn {
    min-height: 23px;
    padding: 2px 6px !important;
    border-radius: 4px;
    font-size: 9px !important;
  }
  .material-inspector .mat-texture-thumb,
  .material-inspector .mat-texture-thumb canvas {
    width: 23px !important;
    height: 23px !important;
    border-radius: 3px;
  }
  .material-inspector .mat-texture-name {
    min-width: 0;
    font-size: 9px;
  }
  .material-inspector .mat-texture-actions {
    display: flex !important;
    flex-direction: row !important;
    gap: 3px !important;
    min-width: 0;
  }
  .material-inspector .mat-texture-actions .btn {
    flex: 1 1 0;
  }
  .material-inspector .material-xy-row {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr) minmax(0,1fr);
    align-items: center;
    gap: 6px;
    grid-column: 1 / -1;
    min-height: 30px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .material-inspector .material-xy-field {
    display: grid;
    grid-template-columns: 12px minmax(0,1fr);
    align-items: center;
    gap: 3px;
    min-width: 0;
    color: var(--text-dim);
    font-size: 9px;
  }
  .material-inspector .material-xy-field input {
    min-width: 0;
    width: 100%;
    height: 26px;
    padding: 2px 5px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font-size: 10px;
    box-sizing: border-box;
  }
  .material-inspector .material-inspector-subsection {
    margin: 0 !important;
    padding: 3px 2px !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .material-inspector .material-inspector-subsection > .property-label {
    display: block;
    margin-bottom: 3px !important;
  }
  .material-inspector .material-inspector-subsection .btn-row {
    gap: 3px;
  }
  .material-inspector .material-inspector-subsection .btn {
    min-height: 27px;
    padding: 3px 5px;
    font-size: 9px;
  }
  .material-inspector .material-emission-block > .property-row {
    padding: 0 !important;
    border-bottom: 0;
  }
  .material-inspector .em-controls.open {
    padding-top: 2px;
  }
  .material-inspector .mat-action-row {
    gap: 4px;
    margin-top: 6px;
    padding-top: 6px;
  }
  .material-inspector .mat-action-row .btn {
    min-height: 30px;
    padding: 4px 6px;
    font-size: 10px;
  }
  .material-inspector .mat-hint {
    margin-top: 5px;
    font-size: 9px;
  }
  .material-inspector .material-name-row {
    grid-template-columns: 82px minmax(0,1fr) !important;
  }
  .material-inspector .material-name-row .property-value {
    display: none;
  }
  .material-inspector-heading {
    margin: 5px 0 0;
    padding: 7px 2px 4px;
    border-bottom: 1px solid rgba(255,255,255,.10);
    color: var(--text);
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .45px;
    text-transform: uppercase;
  }
  .material-alpha-row,
  .material-map-row {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr);
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .material-alpha-controls {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 3px;
    min-width: 0;
  }
  .material-alpha-controls .btn {
    min-width: 0;
    min-height: 27px;
    padding: 3px 4px;
    border-radius: 5px;
    font-size: 9px;
  }
  .material-map-controls {
    display: grid;
    grid-template-columns: minmax(70px,1fr) 42px 92px;
    align-items: center;
    gap: 4px;
    min-width: 0;
  }
  .material-map-controls.material-map-only {
    grid-template-columns: minmax(0,1fr) 92px;
  }
  .material-map-controls.material-map-only > .material-texture-slot {
    grid-column: 2;
  }
  .material-base-map-controls {
    display: flex;
    justify-content: flex-end;
    gap: 4px;
  }
  .material-base-map-controls > .material-texture-slot {
    flex: 0 0 92px;
    width: 92px;
  }
  .material-base-map-controls > .property-color-input {
    flex: 0 0 42px;
    width: 42px;
  }
  .material-base-map-controls > .material-paint-texture {
    flex: 0 0 42px;
  }
  .material-inspector .material-paint-texture {
    min-width: 0;
    min-height: 27px;
    padding: 3px 6px;
    border-radius: 5px;
    font-size: 9px;
  }
  .material-inspector .material-texture-slot {
    display: flex;
    align-items: center;
    width: 92px;
    height: 27px;
    min-height: 27px;
    min-width: 0;
    padding: 2px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    overflow: hidden;
    box-sizing: border-box;
  }
  .material-inspector button.material-texture-slot {
    gap: 5px;
    cursor: pointer;
    font: inherit;
    text-align: left;
  }
  .material-inspector .material-texture-slot:hover,
  .material-inspector .material-texture-slot:focus-within {
    border-color: rgba(245,132,0,.62);
    background: rgba(245,132,0,.08);
  }
  .material-texture-main {
    display: flex;
    align-items: center;
    gap: 5px;
    flex: 1 1 auto;
    min-width: 0;
    align-self: stretch;
    padding: 0;
    border: 0;
    color: inherit;
    background: transparent;
    cursor: pointer;
    font: inherit;
    text-align: left;
  }
  .material-texture-preview {
    display: block;
    flex: 0 0 21px;
    width: 21px;
    height: 21px;
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 3px;
    background-color: #c4c4c4;
    background-image:
      linear-gradient(45deg, rgba(0,0,0,.13) 25%, transparent 25%),
      linear-gradient(-45deg, rgba(0,0,0,.13) 25%, transparent 25%),
      linear-gradient(45deg, transparent 75%, rgba(0,0,0,.13) 75%),
      linear-gradient(-45deg, transparent 75%, rgba(0,0,0,.13) 75%);
    background-size: 8px 8px;
    background-position: 0 0, 0 4px, 4px -4px, -4px 0;
    box-sizing: border-box;
  }
  .material-texture-preview.empty {
    opacity: .56;
  }
  .material-texture-slot-label {
    min-width: 0;
    overflow: hidden;
    color: var(--text);
    font-size: 9px;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .material-texture-remove {
    flex: 0 0 19px;
    width: 19px;
    height: 21px;
    min-width: 19px;
    padding: 0;
    border: 0;
    border-left: 1px solid rgba(255,255,255,.10);
    color: #e05050;
    background: transparent;
    cursor: pointer;
    font-size: 12px;
    line-height: 1;
  }
  .material-texture-remove:hover {
    color: #ff7676;
    background: rgba(224,80,80,.10);
  }
  .material-emission-controls {
    display: grid;
    grid-template-columns: minmax(70px,1fr) 42px 92px;
    align-items: center;
    gap: 4px;
    min-width: 0;
  }
  .material-emission-controls .em-toggle-row {
    min-width: 0;
    margin: 0;
    padding: 0;
    gap: 4px;
    font-size: 9px;
  }
  .material-emission-controls .em-switch {
    flex: 0 0 auto;
  }
  .material-emission-controls .property-color-input {
    width: 42px;
  }
  .material-emission-controls :disabled,
  .material-emission-intensity-controls :disabled {
    opacity: .38;
  }

  /* Light tab v3: one task at a time, compact inspector geometry, and the
     same label / control / value rails established by the Material tab. */
  .light-panel-v3 .light-destination-tabs {
    position: sticky;
    top: -10px;
    z-index: 7;
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    margin: 0 0 5px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    background: #1c1c1d;
    overflow: hidden;
  }
  .light-panel-v3 .light-destination-tab {
    min-width: 0;
    min-height: 34px;
    padding: 4px 6px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--text-dim);
    background: transparent;
    cursor: pointer;
    font: 700 10px/1 inherit;
  }
  .light-panel-v3 .light-destination-tab + .light-destination-tab {
    border-left: 1px solid rgba(255,255,255,.06);
  }
  .light-panel-v3 .light-destination-tab.active {
    border-bottom-color: var(--accent);
    color: var(--accent);
    background: rgba(245,132,0,.10);
  }
  .light-panel-v3 .studio-lighting-popup.lighting-ui-v2 {
    display: block;
    margin: 0;
  }
  .lighting-studio-nav {
    position: sticky;
    top: 29px;
    z-index: 6;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 0;
    width: 100%;
    overflow: hidden;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: #1c1c1d;
  }
  .lighting-studio-tab {
    min-width: 0;
    min-height: 32px;
    padding: 4px 7px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--text-dim);
    background: transparent;
    cursor: pointer;
    font: 650 9px/1 inherit;
  }
  .lighting-studio-tab.active {
    border-bottom-color: var(--accent);
    color: var(--accent);
    background: rgba(245,132,0,.06);
  }
  .lighting-detail-nav {
    position: sticky;
    top: 29px;
    z-index: 6;
    display: grid;
    grid-template-columns: 42px minmax(0,1fr);
    align-items: center;
    min-height: 34px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: #211e1a;
  }
  .lighting-detail-back {
    align-self: stretch;
    padding: 0;
    border: 0;
    border-right: 1px solid rgba(255,255,255,.07);
    color: var(--accent);
    background: rgba(245,132,0,.08);
    cursor: pointer;
    font-size: 18px;
  }
  .lighting-detail-title {
    padding: 0 10px;
    color: var(--text);
    font-size: 10px;
    font-weight: 750;
  }
  .lighting-section-menu {
    display: grid;
    gap: 0;
  }
  .lighting-section-menu-row {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto 20px;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 5px 8px;
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,.055);
    color: var(--text);
    background: transparent;
    cursor: pointer;
    font: 650 10px/1 inherit;
    text-align: left;
  }
  .lighting-section-menu-row:active {
    color: var(--accent);
    background: rgba(245,132,0,.08);
  }
  .lighting-section-state {
    min-width: 30px;
    padding: 4px 5px;
    border-radius: 5px;
    color: var(--text-dim);
    background: rgba(255,255,255,.05);
    font-size: 8px;
    text-align: center;
  }
  .lighting-section-state.on {
    color: var(--accent);
    background: rgba(245,132,0,.11);
  }
  .lighting-section-chevron {
    color: var(--text-dim);
    font-size: 15px;
    text-align: right;
  }
  .lighting-studio-toolbar {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 4px;
    min-height: 31px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.05);
  }
  .light-panel-v3 .lighting-studio-toolbar .lighting-group-toggle {
    position: static;
    right: auto;
    top: auto;
    transform: none;
    min-width: 44px;
    height: 25px;
    padding: 0 7px;
    border-radius: 6px;
    font-size: 8px;
  }
  .lighting-reset-icon {
    width: 30px;
    height: 25px;
    padding: 0;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 6px;
    color: var(--text-dim);
    background: rgba(255,255,255,.035);
    cursor: pointer;
  }
  .lighting-reset-icon:active {
    color: var(--accent);
    border-color: rgba(245,132,0,.35);
    background: rgba(245,132,0,.10);
  }
  .lighting-compact-body { min-width: 0; }
  .lighting-control-row {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr) 42px;
    align-items: center;
    gap: 6px;
    min-height: 31px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .lighting-control-label,
  .lighting-control-row > label:first-child {
    min-width: 0;
    color: var(--text-dim);
    font-size: 10px;
    font-weight: 600;
  }
  .lighting-control-row input[type="range"] {
    width: 100%;
    min-width: 0;
    height: 20px;
    margin: 0;
    accent-color: #ff8514;
  }
  .light-panel-v3 .lighting-control-row input[type="color"] {
    width: 42px;
    min-width: 42px;
    height: 27px;
    padding: 2px 3px;
    border-radius: 5px;
  }
  .lighting-control-row > b,
  .lighting-control-value {
    min-width: 0;
    padding: 4px 5px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font-size: 9px;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    text-align: right;
  }
  .lighting-control-row .lighting-wide-control {
    grid-column: 2 / 4;
    width: 100%;
    min-width: 0;
    height: 27px;
    padding: 2px 7px;
    border-radius: 5px;
    font-size: 9px;
  }
  .lighting-direction-presets,
  .lighting-compact-presets {
    display: grid;
    gap: 3px;
    padding: 5px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .lighting-direction-presets { grid-template-columns: repeat(5,minmax(0,1fr)); }
  .lighting-compact-presets { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .lighting-direction-presets .lighting-chip,
  .lighting-compact-presets .lighting-chip {
    min-width: 0;
    min-height: 29px;
    padding: 4px 2px;
    border-radius: 6px;
    font-size: 8px;
  }
  .lighting-compact-toggle {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    color: var(--text-dim);
    font-size: 9px;
    white-space: nowrap;
  }
  .lighting-compact-toggle input { margin: 0; }
  .light-add-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 4px;
    padding-top: 4px;
  }
  .light-add-card {
    min-width: 0;
    min-height: 64px;
    padding: 7px 4px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 8px;
    color: var(--text);
    background: rgba(255,255,255,.035);
    cursor: pointer;
    font: 650 10px/1.1 inherit;
  }
  .light-add-card svg {
    display: block;
    width: 24px;
    height: 24px;
    margin: 0 auto 5px;
  }
  .light-add-card:active {
    color: var(--accent);
    border-color: rgba(245,132,0,.40);
    background: rgba(245,132,0,.10);
  }
  .light-empty-state {
    display: grid;
    place-items: center;
    gap: 8px;
    min-height: 112px;
    padding: 16px;
    color: var(--text-dim);
    text-align: center;
    font-size: 10px;
  }
  .light-empty-state .btn { min-height: 31px; padding: 4px 12px; }
  .light-panel-v3 .studio-lighting-popup,
  .light-panel-v3 .light-selected-editor,
  .light-panel-v3 .light-add-grid,
  .light-panel-v3 .light-empty-state {
    animation: light-view-enter 160ms cubic-bezier(.2,.75,.25,1) both;
  }
  @keyframes light-view-enter {
    from { opacity: .25; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .light-panel-v3 .studio-lighting-popup,
    .light-panel-v3 .light-selected-editor,
    .light-panel-v3 .light-add-grid,
    .light-panel-v3 .light-empty-state { animation: none !important; }
  }
  .light-selected-editor { min-width: 0; }
  .light-selected-header {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    padding: 4px 2px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  .light-selected-name {
    min-width: 0;
    overflow: hidden;
    color: var(--text);
    font-size: 10px;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .light-selected-editor .property-row {
    display: grid !important;
    grid-template-columns: 82px minmax(0,1fr) 42px !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 31px !important;
    margin: 0 !important;
    padding: 3px 2px !important;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .light-selected-editor .property-control[type="range"] {
    width: 100%;
    min-width: 0;
    margin: 0;
  }
  .light-selected-editor input[type="color"] {
    width: 42px;
    height: 27px;
    padding: 2px 3px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 5px;
    background: var(--bg-card);
  }
  .light-selected-editor select.property-control {
    grid-column: 2 / 4;
    width: 100%;
    min-width: 0;
    height: 27px;
    padding: 2px 7px;
    border-radius: 5px;
    font-size: 9px;
  }
  .light-selected-subsection {
    padding: 7px 2px 4px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    color: var(--text-dim);
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .35px;
    text-transform: uppercase;
  }
  .light-selected-note {
    margin: 5px 2px 0;
    color: var(--text-dim);
    font-size: 8px;
    line-height: 1.35;
  }
  .light-use-selected {
    width: 100%;
    min-height: 29px;
    margin-top: 5px;
    padding: 4px 7px;
    font-size: 9px;
  }

  /* Texture Paint v3: texture lifecycle, brush behavior, and blending are
     separate destinations. Viewport paint tools remain direct actions. */
  .tpaint-panel-v3 { min-width: 0; }
  .tpaint-destination-tabs {
    position: sticky;
    top: -10px;
    z-index: 7;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    margin: 0 0 5px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    background: #1c1c1d;
  }
  .tpaint-destination-tab {
    min-width: 0;
    min-height: 34px;
    padding: 4px 6px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--text-dim);
    background: transparent;
    cursor: pointer;
    font: 700 10px/1 inherit;
  }
  .tpaint-destination-tab + .tpaint-destination-tab { border-left: 1px solid rgba(255,255,255,.06); }
  .tpaint-destination-tab.active {
    color: var(--accent);
    border-bottom-color: var(--accent);
    background: rgba(245,132,0,.10);
  }
  .tpaint-v3-status {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    min-height: 31px;
    margin-bottom: 4px;
    border-bottom: 1px solid rgba(255,255,255,.07);
  }
  .tpaint-v3-status > span {
    display: grid;
    place-items: center;
    align-content: center;
    min-width: 0;
    padding: 3px 4px;
    color: var(--text-dim);
    font-size: 7px;
    line-height: 1.1;
    text-align: center;
  }
  .tpaint-v3-status > span + span { border-left: 1px solid rgba(255,255,255,.045); }
  .tpaint-v3-status b {
    display: block;
    max-width: 100%;
    margin-bottom: 2px;
    overflow: hidden;
    color: var(--text);
    font-size: 9px;
    font-variant-numeric: tabular-nums;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .tpaint-v3-status .active b { color: var(--accent); }
  .tpaint-v3-pane {
    min-width: 0;
    padding-top: 2px;
    animation: tpaint-view-enter 160ms cubic-bezier(.2,.75,.25,1) both;
  }
  @keyframes tpaint-view-enter {
    from { opacity: .25; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
  }
  .tpaint-v3-field-row,
  .tpaint-v3-color-row,
  .tpaint-v3-control-row,
  .tpaint-v3-toggle-row {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr);
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .tpaint-v3-color-row,
  .tpaint-v3-control-row { grid-template-columns: 82px minmax(0,1fr) 54px; }
  .tpaint-v3-field-row > span,
  .tpaint-v3-color-row > span,
  .tpaint-v3-control-row > span,
  .tpaint-v3-toggle-row > span {
    min-width: 0;
    color: var(--text-dim);
    font-size: 10px;
    font-weight: 600;
  }
  .tpaint-v3-field-row select,
  .tpaint-v3-existing select {
    width: 100%;
    min-width: 0;
    min-height: 27px;
    height: 27px;
    padding: 2px 7px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font: 600 9px/1 inherit;
  }
  .tpaint-v3-color-row input[type="color"] {
    width: 42px;
    min-width: 42px;
    height: 27px;
    padding: 2px 3px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 5px;
    background: var(--bg-card);
    cursor: pointer;
  }
  .tpaint-v3-color-row strong,
  .tpaint-v3-control-row strong {
    min-width: 0;
    padding: 4px 5px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font: 600 8px/1 inherit;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .tpaint-v3-control-row input[type="range"] {
    width: 100%;
    min-width: 0;
    margin: 0;
    accent-color: #ff8514;
  }
  .tpaint-v3-toggle-row .toggle-switch { justify-self: end; }
  .tpaint-v3-action-grid,
  .tpaint-v3-preset-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 5px;
    padding: 6px 2px;
  }
  .tpaint-v3-preset-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .tpaint-panel-v3 .btn {
    min-width: 0;
    min-height: 31px;
    padding: 4px 7px;
    border-radius: 6px;
    font-size: 9px;
  }
  .tpaint-panel-v3 .btn.danger { color: #ff6d6d; border-color: rgba(255,88,88,.28); }
  .tpaint-v3-existing {
    padding: 5px 2px;
    color: var(--text-dim);
    font-size: 9px;
  }
  .tpaint-v3-existing[hidden] { display: none !important; }
  .tpaint-v3-blend-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 4px;
    padding: 5px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .tpaint-panel-v3 .tpaint-mode-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    min-height: 45px;
    padding: 5px 2px;
  }
  .tpaint-panel-v3 .tpaint-mode-btn svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
  }
  @media (max-width: 420px) {
    .tpaint-v3-blend-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  }
  @media (prefers-reduced-motion: reduce) {
    .tpaint-v3-pane { animation: none !important; }
  }

  /* UV tab v3: Unwrap, Transform, and View are peer destinations. The compact
     status rail remains visible so selection and UV health never require a
     separate inspector layer. */
  .uv-panel-v3 { min-width: 0; }
  .uv-destination-tabs {
    position: sticky;
    top: -10px;
    z-index: 7;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    margin: 0 0 5px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    background: #1c1c1d;
  }
  .uv-destination-tab {
    min-width: 0;
    min-height: 34px;
    padding: 4px 6px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--text-dim);
    background: transparent;
    cursor: pointer;
    font: 700 10px/1 inherit;
  }
  .uv-destination-tab + .uv-destination-tab { border-left: 1px solid rgba(255,255,255,.06); }
  .uv-destination-tab.active {
    color: var(--accent);
    border-bottom-color: var(--accent);
    background: rgba(245,132,0,.10);
  }
  .uv-v3-status {
    display: grid;
    grid-template-columns: repeat(6,minmax(0,1fr));
    min-height: 31px;
    margin-bottom: 4px;
    overflow: hidden;
    border-bottom: 1px solid rgba(255,255,255,.07);
  }
  .uv-v3-status > span {
    display: grid;
    place-items: center;
    align-content: center;
    min-width: 0;
    padding: 3px 2px;
    color: var(--text-dim);
    font-size: 7px;
    line-height: 1.1;
    text-align: center;
    white-space: nowrap;
  }
  .uv-v3-status > span + span { border-left: 1px solid rgba(255,255,255,.045); }
  .uv-v3-status b {
    display: block;
    margin-bottom: 2px;
    color: var(--text);
    font-size: 9px;
    font-variant-numeric: tabular-nums;
  }
  .uv-v3-status .ok b { color: #72cf87; }
  .uv-v3-status .warning b { color: #ff746b; }
  .uv-v3-pane {
    min-width: 0;
    padding-top: 2px;
    animation: uv-view-enter 160ms cubic-bezier(.2,.75,.25,1) both;
  }
  @keyframes uv-view-enter {
    from { opacity: .25; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
  }
  .uv-v3-field-row,
  .uv-v3-toggle-row {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr);
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .uv-v3-field-row > span,
  .uv-v3-toggle-row > span {
    color: var(--text-dim);
    font-size: 10px;
    font-weight: 600;
  }
  .uv-v3-field-row .uv-grid-sel {
    width: 100%;
    min-width: 0;
    min-height: 27px;
    height: 27px;
    padding: 2px 7px;
    border-radius: 5px;
    background: var(--bg-card);
    font: 600 9px/1 inherit;
  }
  .uv-v3-toggle-row .toggle-switch { justify-self: end; }
  .uv-panel-v3 .uv-tool-grid {
    margin: 5px 0 0;
    gap: 4px;
  }
  .uv-panel-v3 .uv-v3-unwrap-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .uv-panel-v3 .uv-v3-transform-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .uv-panel-v3 .uv-tool-btn {
    min-width: 0;
    min-height: 42px;
    padding: 6px 3px;
    gap: 3px;
    border-radius: 7px;
    font-size: 9px;
    line-height: 1.1;
  }
  .uv-panel-v3 .uv-v3-transform-grid .uv-tool-btn {
    min-height: 34px;
    padding: 5px 2px;
  }
  .uv-panel-v3 .uv-tool-btn svg { width: 17px; height: 17px; }
  .uv-panel-v3 .uv-tool-btn.primary {
    color: #fff;
    border-color: var(--accent);
    background: var(--accent-bg);
  }
  .uv-panel-v3 .uv-tool-btn.danger {
    color: #ff7474;
    border-color: rgba(255,88,88,.23);
  }
  @media (max-width: 420px) {
    .uv-panel-v3 .uv-v3-transform-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  }
  @media (prefers-reduced-motion: reduce) {
    .uv-v3-pane { animation: none !important; }
  }

  /* Animation tab v3: task destinations replace the previous all-in-one
     inspector. Playback remains available across destinations; timeline-only
     tools are split into Keys and Range so neither layer becomes a button wall. */
  .anim-panel.anim-panel-v3 {
    padding: 0;
    color: var(--text);
  }
  .anim-panel-v3 .anim-destination-tabs {
    position: sticky;
    top: -10px;
    z-index: 7;
    display: flex;
    margin: 0 0 5px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    background: #1c1c1d;
  }
  .anim-destination-tab {
    flex: 1 1 0;
    min-width: 0;
    min-height: 34px;
    padding: 4px 6px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--text-dim);
    background: transparent;
    cursor: pointer;
    font: 700 10px/1 inherit;
  }
  .anim-destination-tab + .anim-destination-tab { border-left: 1px solid rgba(255,255,255,.06); }
  .anim-destination-tab.active {
    border-bottom-color: var(--accent);
    color: var(--accent);
    background: rgba(245,132,0,.10);
  }
  .anim-v3-playback {
    display: grid;
    grid-template-columns: minmax(82px,110px) minmax(0,1fr);
    align-items: center;
    gap: 7px;
    min-height: 39px;
    padding: 3px 2px 5px;
    border-bottom: 1px solid rgba(255,255,255,.07);
  }
  .anim-v3-now { min-width: 0; line-height: 1.15; }
  .anim-v3-now strong,
  .anim-v3-now span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .anim-v3-now strong { color: var(--text); font-size: 9px; }
  .anim-v3-now span { margin-top: 2px; color: var(--text-dim); font-size: 8px; font-variant-numeric: tabular-nums; }
  .anim-panel-v3 .anim-transport.anim-v3-transport {
    grid-template-columns: repeat(6,minmax(28px,1fr));
    gap: 3px;
    margin: 0;
  }
  .anim-panel-v3 .anim-icon-btn,
  .anim-panel-v3 .anim-text-btn {
    min-height: 29px !important;
    border-radius: 6px;
    font-size: 9px;
  }
  .anim-panel-v3 .anim-icon-btn {
    width: 100%;
    min-width: 0;
    font-size: 11px;
  }
  .anim-panel-v3 .anim-text-btn { padding: 3px 7px; }
  .anim-panel-v3 .anim-text-btn.primary {
    color: #fff;
    border-color: var(--accent);
    background: var(--accent-bg);
  }
  .anim-panel-v3 .anim-text-btn.danger { color: #ff6d6d; border-color: rgba(255,88,88,.26); }
  .anim-v3-pane {
    min-width: 0;
    padding: 2px 0 0;
    animation: anim-view-enter 160ms cubic-bezier(.2,.75,.25,1) both;
  }
  @keyframes anim-view-enter {
    from { opacity: .25; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
  }
  .anim-v3-field-row,
  .anim-v3-control-row {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr);
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .anim-v3-control-row { grid-template-columns: 82px minmax(0,1fr) 48px; }
  .anim-v3-field-row > span,
  .anim-v3-control-row > span {
    min-width: 0;
    color: var(--text-dim);
    font-size: 10px;
    font-weight: 600;
  }
  .anim-v3-field-row input,
  .anim-v3-field-row select,
  .anim-v3-key-settings select {
    width: 100%;
    min-width: 0;
    min-height: 27px;
    height: 27px;
    padding: 2px 7px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font: 600 9px/1 inherit;
  }
  .anim-v3-control-row input[type="range"] {
    width: 100%;
    min-width: 0;
    margin: 0;
    accent-color: #ff8514;
  }
  .anim-v3-control-row > strong {
    padding: 4px 5px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font-size: 9px;
    font-variant-numeric: tabular-nums;
    text-align: right;
  }
  .anim-v3-action-grid,
  .anim-v3-key-grid,
  .anim-v3-key-primary {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 4px;
    padding: 6px 2px;
  }
  .anim-v3-clip-summary {
    padding: 5px 2px;
    color: var(--text-dim);
    font-size: 8px;
    font-variant-numeric: tabular-nums;
  }
  .anim-panel-v3 .props-empty {
    min-height: 86px;
    display: grid;
    place-items: center;
    padding: 14px;
    text-align: center;
  }
  .anim-v3-timeline-pane .anim-ruler-scroll { margin-top: 4px; }
  /* Compact always-visible current-frame Add/Remove Key row (Timeline pane). */
  .anim-keyrow {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 6px;
    padding: 4px 2px;
  }
  .anim-keyrow-frame {
    font: 650 10px/1 inherit;
    color: var(--text-dim);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
  }
  .anim-keyrow-diamond { flex: 0 0 auto; }
  .anim-keyrow-diamond.keyed path { filter: drop-shadow(0 0 2px rgba(245,132,0,.55)); }
  .anim-keyrow-btn { flex: 1 1 0; min-height: 36px; padding: 0 8px; font-size: 10px; }
  .anim-keyrow-btn:disabled { opacity: .4; cursor: default; }
  .anim-timeline-sections {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    margin-top: 5px;
    overflow: hidden;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  .anim-timeline-sections button {
    min-height: 31px;
    padding: 3px 6px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--text-dim);
    background: transparent;
    cursor: pointer;
    font: 650 9px/1 inherit;
  }
  .anim-timeline-sections button.active {
    color: var(--accent);
    border-bottom-color: var(--accent);
    background: rgba(245,132,0,.06);
  }
  .anim-v3-key-pane,
  .anim-v3-range-pane { padding-top: 2px; }
  .anim-v3-key-primary { border-bottom: 1px solid rgba(255,255,255,.045); }
  .anim-v3-key-grid { padding-top: 4px; padding-bottom: 4px; }
  .anim-v3-key-settings {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    align-items: center;
    gap: 6px;
    padding: 4px 2px;
    border-top: 1px solid rgba(255,255,255,.045);
  }
  .anim-v3-key-settings > label:first-child {
    display: grid;
    grid-template-columns: 74px minmax(0,1fr);
    align-items: center;
    gap: 5px;
    color: var(--text-dim);
    font-size: 9px;
  }
  .anim-panel-v3 .anim-auto-key { min-width: 0; }
  .anim-panel-v3 .anim-time {
    min-height: 27px;
    align-items: center;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
    font-size: 9px;
  }
  .anim-panel-v3 .anim-field-grid {
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 4px;
    margin: 5px 0;
  }
  .anim-panel-v3 .anim-field label { margin-bottom: 3px; font-size: 8px; }
  .anim-panel-v3 .anim-field input,
  .anim-panel-v3 .anim-field select {
    height: 29px;
    padding: 0 5px;
    border-radius: 5px;
    font-size: 9px;
  }
  .anim-v3-presets-pane .anim-presets {
    margin: 0;
    padding: 2px 0 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }
  .anim-v3-presets-pane .anim-presets > .section-title-row,
  .anim-v3-presets-pane .anim-presets > .pi-meta { display: none; }
  .anim-v3-presets-pane .anim-presets .anim-key-tools {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 4px;
  }
  .anim-v3-presets-pane .anim-presets .anim-text-btn { min-height: 31px !important; }
  .anim-v3-pose-toolbar {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 5px;
    padding: 4px 2px;
    border-bottom: 1px solid rgba(255,255,255,.055);
  }
  .anim-v3-pose-pane > .anim-options {
    margin: 4px 2px;
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .anim-panel-v3 .anim-options { gap: 8px; margin-top: 6px; }
  .anim-panel-v3 .anim-check { gap: 4px; font-size: 9px; }
  .anim-panel-v3 .anim-check input { width: 14px; height: 14px; margin: 0; }
  .anim-v3-pose-pane > .bone-info > .section-title:first-child { display: none; }
  .anim-v3-pose-pane .rig-info-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 4px;
    margin: 5px 0;
  }
  .anim-v3-pose-pane .rig-info-cell { padding: 5px; border-radius: 5px; }
  .anim-v3-pose-pane .rig-info-cell span { margin-bottom: 2px; font-size: 7px; }
  .anim-v3-pose-pane .rig-info-cell b { font-size: 9px; }
  .anim-v3-pose-pane .bone-info {
    margin-top: 6px !important;
    padding: 7px;
    border-radius: 7px;
  }
  @media (max-width: 520px) {
    .anim-v3-playback { grid-template-columns: 78px minmax(0,1fr); }
    .anim-panel-v3 .anim-field-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .anim-v3-key-settings { grid-template-columns: 1fr; }
  }
  @media (prefers-reduced-motion: reduce) {
    .anim-v3-pane { animation: none !important; }
  }

  /* Render tab v3: Output, Focus, and Fog are peer destinations. Only one
     working layer is rendered at a time, so the panel stays compact and every
     control retains the same label / control / value rails as Material/Light. */
  .render-panel-v3 .render-destination-tabs {
    position: sticky;
    top: -10px;
    z-index: 7;
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    margin: 0 0 5px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 9px;
    background: #1c1c1d;
  }
  .render-destination-tab {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 0;
    min-height: 34px;
    padding: 4px 6px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--text-dim);
    background: transparent;
    cursor: pointer;
    font: 700 10px/1 inherit;
  }
  .render-destination-tab + .render-destination-tab { border-left: 1px solid rgba(255,255,255,.06); }
  .render-destination-tab.active {
    border-bottom-color: var(--accent);
    color: var(--accent);
    background: rgba(245,132,0,.10);
  }
  .render-destination-tab > i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 0 2px rgba(245,132,0,.12);
  }
  .render-quick-action {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 8px;
    min-height: 41px;
    padding: 4px 2px 6px;
    border-bottom: 1px solid rgba(255,255,255,.07);
  }
  .render-quick-summary {
    min-width: 0;
    line-height: 1.2;
  }
  .render-quick-summary strong,
  .render-quick-summary span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .render-quick-summary strong { color: var(--text); font-size: 10px; font-variant-numeric: tabular-nums; }
  .render-quick-summary span { margin-top: 2px; color: var(--text-dim); font-size: 8px; }
  .render-v3-pane {
    min-width: 0;
    padding: 2px 0 0;
    animation: render-view-enter 160ms cubic-bezier(.2,.75,.25,1) both;
  }
  @keyframes render-view-enter {
    from { opacity: .25; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
  }
  .render-v3-field-row,
  .render-v3-control-row,
  .render-v3-color-row {
    display: grid;
    grid-template-columns: 82px minmax(0,1fr);
    align-items: center;
    gap: 6px;
    min-height: 32px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .render-v3-control-row,
  .render-v3-color-row { grid-template-columns: 82px minmax(0,1fr) 54px; }
  .render-v3-field-row > span,
  .render-v3-control-row > span,
  .render-v3-color-row > span,
  .render-v3-toolbar > span {
    min-width: 0;
    color: var(--text-dim);
    font-size: 10px;
    font-weight: 600;
  }
  .render-v3-field-row select,
  .render-v3-field-row input,
  .render-v3-color-row input[type="text"] {
    width: 100%;
    min-width: 0;
    min-height: 27px !important;
    height: 27px;
    padding: 2px 7px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font: 600 9px/1 inherit;
  }
  .render-v3-control-row input[type="range"] {
    width: 100%;
    min-width: 0;
    height: 20px;
    margin: 0;
    accent-color: #ff8514;
  }
  .render-v3-control-row > strong {
    min-width: 0;
    padding: 4px 5px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 5px;
    color: var(--text);
    background: var(--bg-card);
    font-size: 9px;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    text-align: right;
  }
  .render-panel-v3 .render-fog-number {
    width: 54px;
    min-width: 0;
    min-height: 27px !important;
    height: 27px;
    padding: 2px 5px;
    border-radius: 5px;
    font-size: 9px;
  }
  .render-v3-color-row input[type="color"] {
    width: 42px;
    min-width: 42px;
    height: 27px;
    padding: 2px 3px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 5px;
    background: var(--bg-card);
    cursor: pointer;
  }
  .render-v3-size-row > div {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    align-items: center;
    gap: 5px;
  }
  .render-v3-size-row b { color: var(--text-dim); font-size: 9px; font-weight: 600; }
  .render-v3-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 34px;
    padding: 3px 2px;
    border-bottom: 1px solid rgba(255,255,255,.055);
  }
  .render-panel-v3 .render-live-switch {
    min-width: 62px;
    min-height: 27px;
    padding: 0 8px;
    border-radius: 6px;
    font-size: 9px;
  }
  .render-v3-target-picker {
    padding: 6px 2px 2px;
    border-bottom: 1px solid rgba(255,255,255,.045);
  }
  .render-v3-target-picker[hidden],
  .render-v3-field-row[hidden],
  .render-v3-control-row[hidden] { display: none !important; }
  .render-v3-picker-row {
    display: grid;
    grid-template-columns: 45px minmax(0,1fr) 34px;
    gap: 5px;
  }
  .render-v3-picker-row .btn,
  .render-v3-picker-row select {
    min-width: 0;
    min-height: 29px;
    height: 29px;
    padding: 3px 6px;
    border-radius: 6px;
    font-size: 9px;
  }
  .render-v3-targets {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 5px;
    color: var(--text-dim);
    font-size: 8px;
  }
  .render-panel-v3 .render-effect-hint.compact {
    margin: 5px 2px 0;
    color: var(--text-dim);
    font-size: 8px;
    line-height: 1.35;
  }
  @media (prefers-reduced-motion: reduce) {
    .render-v3-pane { animation: none !important; }
  }
  #render-tab-start {
    min-height: 32px !important;
    padding: 4px 10px !important;
    border-radius: 7px !important;
    font-size: 9px !important;
    font-weight: 800 !important;
  }

  @media (orientation: landscape) and (max-height: 540px) {
    .left-tools, .right-actions {
      gap: 4px !important;
      max-height: calc(100% - 58px);
    }
    .left-tools > #ltool-transform,
    .left-tools > #ltool-frame,
    .left-tools > #rb-view,
    .left-tools > #rb-grid,
    .right-actions > #rb-select,
    .right-actions > #rb-tools,
    .right-actions > #ltool-actions,
    .right-actions > #rb-edit {
      width: 46px !important;
      min-width: 46px !important;
      min-height: 44px !important;
      padding: 4px 2px !important;
    }
  }
