/* Icon Styles */
.ssm-icon-svg{display:inline-block;vertical-align:middle;object-fit:contain}
.ssm-icon-text{display:inline-block;line-height:1}

/* Font Awesome Fallback - Ensure icons display correctly */
i[class*="fa-"]{font-family:"Font Awesome 6 Free","Font Awesome 6 Pro","FontAwesome";font-weight:900;font-style:normal;display:inline-block;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* Overlay */
.ssm-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:9999998;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;pointer-events:none}
.ssm-overlay.active{opacity:1;visibility:visible;pointer-events:auto}

/* Menu Container */
.ssm-menu{position:fixed;top:0;height:100vh;width:300px;max-width:85vw;background:#fff;z-index:9999999;overflow:hidden;transition:transform .3s ease-in-out;box-shadow:2px 0 15px rgba(0,0,0,.2);display:flex;flex-direction:column}

/* Menu Location - Left */
.ssm-menu.ssm-left{left:0;transform:translateX(-100%)}
.ssm-menu.ssm-left.active{transform:translateX(0)}

/* Menu Location - Right */
.ssm-menu.ssm-right{right:0;transform:translateX(100%)}
.ssm-menu.ssm-right.active{transform:translateX(0)}

/* Header Bar */
.ssm-header-bar{position:relative;height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;z-index:10;flex-shrink:0}

/* Close Button Base */
.ssm-close{position:relative;top:auto;left:auto;right:auto;background:0 0;border:none;font-size:32px;cursor:pointer;padding:5px;line-height:1;color:inherit;width:40px;height:40px;display:flex;align-items:center;justify-content:center}
.ssm-close:hover{opacity:.6}

/* Close Button Location */
.ssm-close.ssm-close-left{order:1}
.ssm-close.ssm-close-right{order:2}

/* Search Toggle Button */
.ssm-search-toggle{position:relative;top:auto;left:auto;right:auto;background:0 0;border:none;font-size:20px;cursor:pointer;padding:5px;line-height:1;color:inherit;width:40px;height:40px;display:flex;align-items:center;justify-content:center}
.ssm-search-toggle:hover{opacity:.6}
.ssm-close-left~.ssm-search-toggle{order:2}
.ssm-close-right~.ssm-search-toggle{order:1}

/* Expandable Search Bar */
.ssm-search-bar{position:absolute;top:70px;left:15px;right:15px;z-index:9;overflow:hidden;transition:all .3s ease;background:#fff;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.ssm-search-bar.ssm-search-collapsed{max-height:0;opacity:0;visibility:hidden;padding:0}
.ssm-search-bar.ssm-search-expanded{max-height:60px;opacity:1;visibility:visible;padding:10px}
.ssm-search-bar .ssm-search-input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}

/* Static Search Bar */
.ssm-search-static{padding:15px;background:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.08);margin-bottom:0}
.ssm-search-static .ssm-search-input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}

/* Content Area */
.ssm-content{padding:0;flex:1;overflow-y:auto;overflow-x:hidden}
.ssm-search-bar.ssm-search-expanded~.ssm-content{padding-top:70px}

/* Drilldown Container */
.ssm-drilldown-container{overflow:hidden;position:relative;min-height:300px}

/* Menu Levels */
.ssm-level{list-style:none;padding:0;margin:0;position:absolute;top:0;left:0;width:100%;min-height:100%;background:inherit;transform:translateX(100%);opacity:0;visibility:hidden;transition:transform .25s ease-in-out,opacity .25s,visibility .25s}
.ssm-level.ssm-active{transform:translateX(0);opacity:1;visibility:visible;position:relative}
.ssm-level.ssm-out{transform:translateX(-100%)}

/* Menu Items - Full Width */
.ssm-item{border-bottom:1px solid rgba(0,0,0,.08);width:100%;border-left:none !important;border-right:none !important;border-top:none !important;list-style:none;padding:0 !important;margin:0;display:block;box-sizing:border-box}
.ssm-item:last-child{border-bottom:none;margin-bottom:0}

/* Back Item */
.ssm-back-item{background:transparent !important;border-bottom:1px solid rgba(0,0,0,.08);position:sticky;top:0;z-index:5;width:100%;padding:0 !important;margin:0 !important;border-left:none !important;border-right:none !important;border-top:none !important}

/* Menu Item Buttons and Links - Full Width */
.ssm-back-btn,.ssm-forward-btn,.ssm-link{display:block;width:100% !important;text-align:left;background:transparent !important;border:none !important;text-decoration:none;cursor:pointer;font:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0 !important;transition:background .2s,color .2s;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none !important;box-shadow:none !important}
.ssm-back-btn:hover,.ssm-forward-btn:hover,.ssm-link:hover{background:rgba(0,0,0,.05) !important}
.ssm-back-btn{display:flex !important;align-items:center;justify-content:space-between}
.ssm-back-btn:focus,.ssm-back-btn:active,.ssm-forward-btn:focus,.ssm-forward-btn:active,.ssm-link:focus,.ssm-link:active{outline:none !important;border:none !important;box-shadow:none !important;background:rgba(0,0,0,.05) !important}

/* Forward Button - Make it look like a regular menu item, not a button */
.ssm-forward-btn{display:flex !important;align-items:center;justify-content:space-between}
.ssm-forward-btn>span{display:inline;margin:0;padding:0}
.ssm-forward-btn>span:first-child{flex:1;text-align:left}

/* Back Button Layout */
.ssm-back-text{flex:1;text-align:right;margin:0;padding:0}

/* Arrows */
.ssm-back-arrow{font-size:18px;flex-shrink:0;margin:0;padding:0}
.ssm-arrow{margin-left:auto;opacity:.5;flex-shrink:0;font-size:14px;display:inline}

/* Bottom Buttons Container */
.ssm-bottom-buttons{display:flex;justify-content:space-between;padding:15px;border-top:1px solid rgba(0,0,0,.08);background:inherit;gap:10px}

/* Bottom Button Styles */
.ssm-bottom-btn{display:flex;align-items:center;justify-content:flex-start;flex:1;min-width:0;height:48px;border-radius:4px;text-decoration:none;transition:all .2s ease;cursor:pointer;padding:12px 15px;gap:10px}
.ssm-bottom-btn .ssm-btn-icon{font-size:20px;line-height:1;flex-shrink:0}
.ssm-bottom-btn .ssm-icon-svg{max-width:20px;max-height:20px;object-fit:contain;flex-shrink:0}
.ssm-bottom-btn .ssm-btn-text{font-size:14px;line-height:1.2;flex:1;text-align:left;word-break:break-word}

/* Body Lock */
body.ssm-open{overflow:hidden}

/* Menu Footer */
.ssm-menu-footer{padding:15px 20px;text-align:center;background:inherit}

/* Widget Area */
.ssm-widget-area{width:100%;box-sizing:border-box;overflow:hidden;word-wrap:break-word;flex:0 0 auto}
.ssm-widget-area *{max-width:100%;box-sizing:border-box}
.ssm-widget-area img{height:auto;display:block}
.ssm-widget-area ul{list-style:none;padding:0;margin:0;overflow:hidden}
.ssm-widget-area ul li{padding:5px 0;word-wrap:break-word}
.ssm-widget-area a{text-decoration:none;color:inherit;word-break:break-word}
.ssm-widget-area a:hover{opacity:.8}
.ssm-widget-area table{width:100%;table-layout:fixed}
.ssm-widget-area iframe,.ssm-widget-area video,.ssm-widget-area embed{max-width:100%;height:auto}

/* Bottom spacing for content */
.ssm-content>*:last-child{padding-bottom:20px}

/* Absolute Menu Button */
.ssm-absolute-button{position:fixed;z-index:999999;padding:12px 15px;border:none;border-radius:4px;cursor:pointer;font-size:24px;line-height:1;transition:opacity .3s;box-shadow:0 2px 10px rgba(0,0,0,.2)}
.ssm-absolute-button:hover{opacity:.9}
.ssm-position-top-left{top:20px;left:20px}
.ssm-position-top-right{top:20px;right:20px}
.ssm-position-bottom-left{bottom:20px;left:20px}
.ssm-position-bottom-right{bottom:20px;right:20px}

/* Menu Bar */
.ssm-menubar{top:0;left:0;right:0;z-index:999999;box-shadow:0 2px 10px rgba(0,0,0,.1);width:100%;margin:0}
.ssm-menubar-sticky{position:fixed !important;top:0}
.ssm-menubar-static{position:relative !important}
.ssm-menubar-inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:1200px;margin:0 auto;padding:0 20px;position:relative}
.ssm-menubar-right{display:flex;align-items:center;gap:0;z-index:2;position:relative}
.ssm-menubar-button{padding:10px 15px;border:none;border-radius:4px;cursor:pointer;font-size:24px;line-height:1;transition:opacity .3s;display:flex;align-items:center;z-index:2}
.ssm-menubar-button:hover{opacity:.9}
.ssm-menubar-logo{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;text-decoration:none;transition:opacity .3s;pointer-events:auto;z-index:0}
.ssm-menubar-logo:hover{opacity:.85}
.ssm-menubar-logo img{height:auto;max-width:100%;object-fit:contain}
.ssm-menubar-secondary{display:flex;align-items:center;gap:8px;text-decoration:none;padding:10px 15px;transition:opacity .3s}
.ssm-menubar-secondary:hover{opacity:.8}
.ssm-secondary-icon{font-size:20px;line-height:1}
.ssm-secondary-text{font-size:14px;font-weight:500;line-height:1}

/* Menubar Cart */
.ssm-menubar-cart{position:relative;display:flex;align-items:center;padding:10px 15px;text-decoration:none;transition:opacity .3s}
.ssm-menubar-cart:hover{opacity:.8}
.ssm-menubar-cart-count{position:absolute;top:5px;right:8px;min-width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;padding:0 4px;line-height:1}

/* Button Text */
.ssm-button-text{display:inline-block;white-space:nowrap;line-height:1}

/* Search Results */
.ssm-search-results{padding:10px 0;margin:10px 0;border-top:2px solid rgba(0,0,0,.1)}
.ssm-search-results-header{padding:10px 20px;font-weight:700;font-size:12px;text-transform:uppercase;opacity:.7;letter-spacing:.5px}
.ssm-search-result-item{border-bottom:1px solid rgba(0,0,0,.08)}
.ssm-search-result-item:last-child{border-bottom:none}
.ssm-search-result-link{display:flex;flex-direction:column;padding:12px 20px;text-decoration:none;color:inherit;transition:background .2s}
.ssm-search-result-link:hover{background:rgba(0,0,0,.05)}
.ssm-result-title{font-size:14px;margin-bottom:4px}
.ssm-result-type{font-size:11px;opacity:.6;text-transform:uppercase;letter-spacing:.5px}
.ssm-result-price{font-size:12px;margin-top:4px;font-weight:600;color:#333}

/* Hide on Mobile */
@media (max-width:768px){
    .ssm-menu{max-width:90vw}
    .ssm-bottom-btn{width:44px;height:44px}
    .ssm-hide-mobile{display:none !important}
}
