/* MENU_EDITOR_V2 - menu editor (cards, soft shadows, rounded rows). Scoped to .mb-*; the old .sidebar-links rules below stay for the live sidebar. */
.sidebar-links{display:flex;flex-direction:column;gap:8px}
.sidebar-tools{margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}
.sidebar-tools a{display:block;font-size:14px}

.mb-page{--mb-primary:var(--tenant-primary,#1f5eff);--mb-ink:#1f2430;--mb-muted:#667085;--mb-line:#e4e7ec;--mb-soft:#f4f6fa;max-width:1280px;margin:0 auto;color:var(--mb-ink)}
.mb-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.mb-head h1{margin:0 0 4px;font-size:26px;letter-spacing:-.01em}
.mb-head p{margin:0;color:var(--mb-muted);max-width:640px;line-height:1.5}
.mb-head-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.mb-dirty{font-size:13px;font-weight:700;color:#b54708;background:#fffaeb;border:1px solid #fedf89;border-radius:999px;padding:5px 12px}
.mb-btn{border:0;border-radius:10px;padding:10px 16px;font-weight:700;font-size:14px;cursor:pointer;transition:transform .08s,box-shadow .15s,background .15s}
.mb-btn:active{transform:translateY(1px)}
.mb-btn:disabled{opacity:.45;cursor:not-allowed}
.mb-btn-primary{background:var(--mb-primary);color:#fff;box-shadow:0 4px 14px rgba(31,94,255,.28)}
.mb-btn-primary:hover:not(:disabled){filter:brightness(1.06)}
.mb-btn-soft{background:color-mix(in srgb,var(--mb-primary) 10%,#fff);color:var(--mb-primary)}
.mb-btn-ghost{background:#fff;color:#344054;border:1px solid var(--mb-line)}
.mb-btn-ghost:hover:not(:disabled){background:var(--mb-soft)}
.mb-btn-danger-ghost{background:#fff;color:#b42318;border:1px solid #fecdca}
.mb-btn-danger-ghost:hover{background:#fef3f2}

.mb-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}
.mb-card{background:#fff;border:1px solid var(--mb-line);border-radius:16px;box-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px rgba(16,24,40,.05);padding:18px}
.mb-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
.mb-search{flex:1 1 220px;display:flex;align-items:center;gap:8px;border:1px solid var(--mb-line);border-radius:10px;padding:0 12px;background:var(--mb-soft)}
.mb-search input{flex:1;border:0;background:transparent;padding:10px 0;font-size:14px;outline:0;min-width:0}
.mb-search:focus-within{border-color:var(--mb-primary);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--mb-primary) 18%,transparent)}
.mb-hint{margin:0 0 12px;color:var(--mb-muted);font-size:13px;line-height:1.5}
.mb-hint kbd{background:var(--mb-soft);border:1px solid var(--mb-line);border-radius:5px;padding:0 5px;font-size:12px}

.mb-tree,.mb-children{list-style:none;margin:0;padding:0}
.mb-children{margin-left:26px;padding-left:12px;border-left:2px solid var(--mb-line)}
.mb-item{margin:2px 0;position:relative}
.mb-row{display:flex;align-items:center;gap:8px;min-height:42px;padding:3px 8px;border-radius:10px;border:1px solid transparent;transition:background .12s,border-color .12s}
.mb-row:hover,.mb-row:focus-within{background:var(--mb-soft)}
.mb-row:focus{outline:2px solid color-mix(in srgb,var(--mb-primary) 55%,transparent);outline-offset:1px}
.mb-caret{width:24px;height:24px;border:0;background:transparent;border-radius:6px;cursor:pointer;color:var(--mb-muted);font-size:13px;padding:0}
.mb-caret:hover{background:#e9edf5}
.mb-caret.is-empty{visibility:hidden}
.mb-handle{cursor:grab;color:#98a2b3;font-size:18px;letter-spacing:-5px;user-select:none;touch-action:none;padding:4px 6px 4px 2px}
.mb-handle:active{cursor:grabbing}
.mb-name{flex:1;min-width:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mb-label{border:0;background:transparent;font:inherit;font-weight:650;color:var(--mb-ink);cursor:text;padding:4px 6px;border-radius:6px;text-align:left}
.mb-label:hover{background:#e9edf5}
.mb-input{font:inherit;font-weight:650;border:1.5px solid var(--mb-primary);border-radius:7px;padding:5px 8px;min-width:200px;outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--mb-primary) 18%,transparent)}
.mb-chip{font-size:11px;font-weight:700;border-radius:999px;padding:2px 8px;background:#eef0f4;color:#475467}
.mb-chip-group{background:color-mix(in srgb,var(--mb-primary) 14%,#fff);color:var(--mb-primary)}
.mb-chip-renamed{background:#f4ebff;color:#6941c6}
.mb-count{font-size:12px;color:var(--mb-muted);background:#fff;border:1px solid var(--mb-line);border-radius:999px;padding:0 7px}
.mb-actions{display:flex;align-items:center;gap:4px;opacity:.0;transition:opacity .12s}
.mb-row:hover .mb-actions,.mb-row:focus-within .mb-actions,.mb-item.is-dragging .mb-actions{opacity:1}
.mb-ico{border:1px solid var(--mb-line);background:#fff;border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:14px;line-height:1;padding:0;color:#344054}
.mb-ico:hover{background:#eef2ff;border-color:#c7d7fe}
.mb-ico.is-off{background:#fef3f2;border-color:#fecdca}
.mb-del:hover{background:#fef3f2;border-color:#fecdca}
.mb-move{border:1px solid var(--mb-line);border-radius:8px;height:30px;font-size:12.5px;color:#344054;background:#fff;max-width:150px;padding:0 4px}
.mb-item.is-hidden>.mb-row .mb-label{text-decoration:line-through;color:#98a2b3}
.mb-item.is-group>.mb-row{background:color-mix(in srgb,var(--mb-primary) 5%,#fff);border-color:color-mix(in srgb,var(--mb-primary) 18%,#fff)}
.mb-empty{padding:24px;text-align:center;color:var(--mb-muted)}
.mb-tail{margin-top:10px;border:2px dashed var(--mb-line);border-radius:12px;padding:12px;text-align:center;color:#98a2b3;font-size:13px}
.mb-tail.drop-on{border-color:var(--mb-primary);background:color-mix(in srgb,var(--mb-primary) 8%,#fff);color:var(--mb-primary)}
.mb-foot{margin-top:16px;padding-top:14px;border-top:1px solid var(--mb-line);display:flex;justify-content:flex-end}

/* drag and drop */
.mb-dragging{cursor:grabbing;user-select:none}
.mb-item.is-dragging{opacity:.4}
.mb-row{position:relative}
.mb-z{display:none;position:absolute;left:0;right:0;z-index:3}
.mb-dragging .mb-z{display:block}
.mb-z-before{top:0;height:30%}
.mb-z-inside{top:30%;height:40%}
.mb-z-after{bottom:0;height:30%}
.mb-dragbar{display:none;position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:2147483000;background:#101828;color:#fff;font-weight:650;font-size:13px;padding:9px 16px;border-radius:999px;box-shadow:0 10px 28px rgba(16,24,40,.35);pointer-events:none;max-width:92vw}
.mb-dragging .mb-dragbar{display:block}
.mb-sz{display:none;position:fixed;left:0;right:0;height:80px;z-index:2147482000}
.mb-dragging .mb-sz{display:block}
.mb-sz-up{top:0}
.mb-sz-down{bottom:0}
.mb-item.drop-before>.mb-row{box-shadow:0 -3px 0 0 var(--mb-primary)}
.mb-item.drop-after>.mb-row{box-shadow:0 3px 0 0 var(--mb-primary)}
.mb-item.drop-inside>.mb-row{background:color-mix(in srgb,var(--mb-primary) 12%,#fff);border-color:var(--mb-primary)}

/* live preview */
.mb-preview{position:sticky;top:16px}
.mb-preview h2{margin:0 0 2px;font-size:16px}
.mb-preview-note{margin:0 0 12px;color:var(--mb-muted);font-size:12.5px}
.mb-side{background:linear-gradient(180deg,#0f2a52,#0b1f3f);border-radius:14px;padding:10px;max-height:calc(100vh - 160px);overflow:auto;display:flex;flex-direction:column;gap:2px}
.mb-side-item{color:#eef4fd;font-weight:650;font-size:13.5px;padding:8px 12px;border-radius:9px;display:flex;justify-content:space-between;align-items:center}
.mb-side-item:hover{background:rgba(255,255,255,.08)}
.mb-side-item.is-sub{margin-left:16px;font-weight:550;font-size:12.5px;color:#c9d8f0}
.mb-side-item.is-group{color:#fff}
.mb-side-caret{opacity:.6}

@media(max-width:1000px){.mb-layout{grid-template-columns:1fr}.mb-preview{position:static;order:-1}.mb-side{max-height:260px}}
@media(max-width:640px){.mb-actions{opacity:1;flex-wrap:wrap}.mb-row{flex-wrap:wrap}.mb-head-actions .mb-btn{flex:1}}
@media(prefers-reduced-motion:reduce){.mb-btn,.mb-row,.mb-actions{transition:none}}
