.mz-top{background:linear-gradient(135deg,#1E6B3E,#3FA862)}
.mz-top .lvb.cur{box-shadow:0 0 0 3px #1E6B3E,0 0 0 5px #fff}
.mz-sub{color:#E3F4EA;font-size:16px}
.mz-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px;align-items:start}
.mz-wrap{background:#EAF6EE;border-radius:18px;padding:12px;overflow:auto;touch-action:none}
.mz-wrap svg{display:block;margin:0 auto;max-width:none;user-select:none;-webkit-user-select:none;cursor:pointer}
.mz-steps{font-family:var(--head);font-weight:500}
.mz-steps b{color:var(--accent);font-size:20px}
.mz-legend{display:grid;gap:8px}
.mz-legend div{display:flex;align-items:center;gap:10px;font-size:15px}
.mz-legend svg{flex:0 0 auto}
.mz-algo{margin:10px 0 0;font-size:15px;line-height:1.6}
.mz-pathline{fill:none;stroke:#E8833A;stroke-width:var(--pw,10);stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.mz-opt{fill:none;stroke:#1D5FA8;stroke-width:var(--pw,10);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:2 10;opacity:.9}
.mz-hint{fill:#FFC94D;opacity:.85;animation:mzblink .6s 4}
@keyframes mzblink{50%{opacity:.15}}
.mz-head{transition:transform .12s}
@media (max-width:900px){.mz-grid{grid-template-columns:minmax(0,1fr)}}
