.asmm-mobile-canvas {
    position: fixed; top: 0; left: 0; width: 400px; max-width: 100%; height: 100vh;
    background: var(--asmm-bg); color: #fff; z-index: 10001;
    transform: translateX(-100%); transition: transform var(--asmm-transition);
    overflow-y: auto;
}
.asmm-mobile-canvas.is-active { transform: translateX(0); }
.asmm-overlay {
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.7);
    backdrop-filter: blur(4px); z-index: 10000; opacity: 0; visibility: hidden; transition: opacity var(--asmm-transition);
}
.asmm-overlay.is-active { opacity: 1; visibility: visible; }

/* Mobile Accordion */
.asmm-accordion-menu { list-style: none; padding: 0; margin: 0; border-top: 1px solid #333; }
.asmm-acc-trigger {
    width: 100%; display: flex; justify-content: space-between; align-items: center;
    background: none; border: none; border-bottom: 1px solid #333; color: #fff;
    padding: 20px; font-size: 16px; cursor: pointer; font-weight: 500;
}
.asmm-acc-content {
    max-height: 0; overflow: hidden; transition: max-height 0.4s ease; background: #0a0a0a;
}
.asmm-acc-item.is-open .asmm-acc-content { max-height: 1000px; /* JS adjusts this dynamically */ }
.asmm-acc-item.is-open .chevron { transform: rotate(180deg); }
.asmm-acc-inner { padding: 15px 20px; display: flex; flex-direction: column; gap: 15px; }
.asmm-acc-inner a { color: #a3a3a3; text-decoration: none; font-size: 14px; }