/* Responsive Side Menu v1.1 */

/* ---------- Style presets (CSS variables) ---------- */
.rsm-style-minimal{--rsm-bg:#fff;--rsm-color:#111;--rsm-hover:#ff5a1f;--rsm-overlay:rgba(0,0,0,.5);--rsm-font:18px;--rsm-width:320px}
.rsm-style-dark{--rsm-bg:#0f0f10;--rsm-color:#f4f4f4;--rsm-hover:#ff5a1f;--rsm-overlay:rgba(0,0,0,.65);--rsm-font:18px;--rsm-width:330px}
.rsm-style-glass{--rsm-bg:rgba(30,30,50,.55);--rsm-color:#fff;--rsm-hover:#ffd27a;--rsm-overlay:rgba(10,10,25,.35);--rsm-font:18px;--rsm-width:340px}
.rsm-style-bold{--rsm-bg:#f4f1ea;--rsm-color:#161616;--rsm-hover:#ff5a1f;--rsm-overlay:rgba(20,18,15,.55);--rsm-font:24px;--rsm-width:400px}
.rsm-style-full{--rsm-bg:#0b0b0c;--rsm-color:#fff;--rsm-hover:#ff5a1f;--rsm-overlay:transparent;--rsm-font:34px;--rsm-width:320px}

/* ---------- Toggle button ---------- */
.rsm-toggle{--e:cubic-bezier(.22,1,.36,1);display:inline-flex;align-items:center;justify-content:center;gap:10px;appearance:none;-webkit-appearance:none;margin:0;background:var(--rsm-bg);color:var(--rsm-color);border:1px solid rgba(127,127,127,.3);padding:11px 16px;border-radius:999px;cursor:pointer;font:inherit;font-size:15px;line-height:1;box-shadow:0 4px 16px rgba(0,0,0,.1);transition:transform .35s var(--e),background .25s,color .25s,border-color .25s,box-shadow .3s}
.rsm-toggle:hover,.rsm-toggle:focus-visible{color:var(--rsm-hover);border-color:var(--rsm-hover);background:var(--rsm-bg);transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.16)}
.rsm-toggle:active{transform:scale(.94)}
.rsm-toggle--fixed-left,.rsm-toggle--fixed-right{position:fixed;top:20px;z-index:99990}
.rsm-toggle--fixed-left{left:20px}.rsm-toggle--fixed-right{right:20px}
.admin-bar .rsm-toggle--fixed-left,.admin-bar .rsm-toggle--fixed-right{top:52px}
.rsm-style-glass.rsm-toggle{background:rgba(30,30,50,.45);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-color:rgba(255,255,255,.25)}
.rsm-style-glass.rsm-toggle:hover{background:rgba(30,30,50,.6)}

.rsm-burger{position:relative;display:inline-block;width:20px;height:14px;flex:none}
.rsm-burger i{position:absolute;left:0;width:100%;height:2px;background:currentColor;border-radius:2px;transition:transform .45s var(--e,ease),opacity .2s,width .3s var(--e,ease),top .3s var(--e,ease)}
.rsm-burger i:nth-child(1){top:0}.rsm-burger i:nth-child(2){top:6px}.rsm-burger i:nth-child(3){top:12px}
.rsm-toggle[aria-expanded="true"] .rsm-burger i:nth-child(1){top:6px;transform:rotate(45deg)}
.rsm-toggle[aria-expanded="true"] .rsm-burger i:nth-child(2){opacity:0;transform:translateX(-8px)}
.rsm-toggle[aria-expanded="true"] .rsm-burger i:nth-child(3){top:6px;transform:rotate(-45deg)}

/* circle */
.rsm-tstyle-circle{width:54px;height:54px;padding:0;border:0;background:var(--rsm-hover);color:#fff}
.rsm-tstyle-circle:hover,.rsm-tstyle-circle:focus-visible{background:var(--rsm-hover);color:#fff;transform:scale(1.1) rotate(4deg)}
.rsm-tstyle-circle .rsm-toggle-label{display:none}
.rsm-tstyle-circle .rsm-burger{width:22px}
/* square */
.rsm-tstyle-square{border-radius:0;border:0;background:var(--rsm-color);color:var(--rsm-bg);padding:15px 19px}
.rsm-tstyle-square:hover,.rsm-tstyle-square:focus-visible{background:var(--rsm-hover);color:#fff;transform:translateY(-3px)}
/* lines only */
.rsm-tstyle-lines{background:transparent;border:0;box-shadow:none;padding:10px;border-radius:8px}
.rsm-tstyle-lines:hover,.rsm-tstyle-lines:focus-visible{background:transparent;box-shadow:none;transform:none}
.rsm-tstyle-lines .rsm-burger{width:28px;height:16px}
.rsm-tstyle-lines .rsm-burger i:nth-child(2){width:62%;top:7px}
.rsm-tstyle-lines .rsm-burger i:nth-child(3){top:14px}
.rsm-tstyle-lines:hover .rsm-burger i:nth-child(2){width:100%}
.rsm-tstyle-lines[aria-expanded="true"] .rsm-burger i:nth-child(1){top:7px}
.rsm-tstyle-lines[aria-expanded="true"] .rsm-burger i:nth-child(3){top:7px}

/* ---------- Overlay ---------- */
.rsm-overlay{position:fixed;inset:0;background:var(--rsm-overlay);opacity:0;visibility:hidden;pointer-events:none;z-index:99998;transition:opacity var(--rsm-speed,.45s) ease,visibility 0s linear var(--rsm-speed,.45s)}
.rsm-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}

/* ---------- Panel ---------- */
.rsm-panel{--e:cubic-bezier(.22,1,.36,1);position:fixed;top:0;bottom:0;z-index:99999;display:flex;flex-direction:column;box-sizing:border-box;width:min(var(--rsm-width,320px),88vw);background:var(--rsm-bg);color:var(--rsm-color);font-size:var(--rsm-font,18px);line-height:1.35;visibility:hidden;overflow:hidden;box-shadow:0 0 50px rgba(0,0,0,.2);transition:transform var(--rsm-speed,.45s) var(--e),visibility 0s linear var(--rsm-speed,.45s)}
.rsm-panel *{box-sizing:border-box}
.admin-bar .rsm-panel{top:32px}
@media (max-width:782px){.admin-bar .rsm-panel{top:46px}}
.rsm-side-left{left:0;transform:translateX(-102%)}
.rsm-side-right{right:0;transform:translateX(102%)}

/* glass: floating rounded panel */
.rsm-panel.rsm-style-glass{top:14px;bottom:14px;border-radius:24px;-webkit-backdrop-filter:blur(26px) saturate(160%);backdrop-filter:blur(26px) saturate(160%);border:1px solid rgba(255,255,255,.2);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.admin-bar .rsm-panel.rsm-style-glass{top:46px}
.rsm-panel.rsm-style-glass.rsm-side-left{left:14px;transform:translateX(-120%)}
.rsm-panel.rsm-style-glass.rsm-side-right{right:14px;transform:translateX(120%)}

/* fullscreen: reveal from the top */
.rsm-panel.rsm-style-full{left:0;right:0;width:100vw;transform:none;box-shadow:none;clip-path:inset(0 0 100% 0);transition:clip-path calc(var(--rsm-speed,.45s)*1.7) cubic-bezier(.77,0,.18,1),visibility 0s linear calc(var(--rsm-speed,.45s)*1.7)}
.rsm-panel.rsm-style-full.is-open{clip-path:inset(0 0 0 0)}

/* open state (must come after the variants above) */
.rsm-panel.is-open,.rsm-panel.is-open.rsm-style-glass{transform:none;visibility:visible;transition-delay:0s}

/* ---------- Header / search ---------- */
.rsm-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;min-height:68px}
.rsm-title{font-weight:700;font-size:1.05em}
.rsm-close{appearance:none;-webkit-appearance:none;margin:0;margin-inline-start:auto;width:42px;height:42px;position:relative;background:transparent;border:0;color:inherit;cursor:pointer;border-radius:50%;padding:0;transition:transform .5s var(--e),background .25s,color .25s}
.rsm-close span::before,.rsm-close span::after{content:"";position:absolute;left:12px;top:20px;width:18px;height:2px;background:currentColor;border-radius:2px}
.rsm-close span::before{transform:rotate(45deg)}.rsm-close span::after{transform:rotate(-45deg)}
.rsm-close:hover,.rsm-close:focus-visible{color:var(--rsm-hover);background:rgba(127,127,127,.14);transform:rotate(90deg)}
.rsm-search{padding:0 24px 14px}
.rsm-search input{width:100%;padding:12px 16px;border:1px solid rgba(127,127,127,.35);border-radius:10px;background:transparent;color:inherit;font:inherit;font-size:.85em;transition:border-color .25s,box-shadow .25s}
.rsm-search input:focus{outline:0;border-color:var(--rsm-hover);box-shadow:0 0 0 3px rgba(255,90,31,.15)}

/* ---------- Menu ---------- */
.rsm-nav{flex:1;overflow-y:auto;overscroll-behavior:contain;padding-bottom:30px}
.rsm-nav ul{list-style:none;margin:0;padding:0}
.rsm-nav li{margin:0;padding:0;list-style:none}
.rsm-row{display:flex;align-items:stretch;justify-content:space-between}
.rsm-level-1>.rsm-row{border-bottom:1px solid rgba(127,127,127,.16)}
.rsm-link{flex:1;display:block;padding:15px 24px;color:inherit;text-decoration:none;transition:color .25s,translate .45s var(--e),padding .3s}
.rsm-link:hover,.rsm-link:focus-visible,.rsm-current>.rsm-row>.rsm-link,.rsm-active-trail>.rsm-row>.rsm-link{color:var(--rsm-hover)}
.rsm-link:hover,.rsm-link:focus-visible{translate:7px 0}
[dir="rtl"] .rsm-link:hover,[dir="rtl"] .rsm-link:focus-visible{translate:-7px 0}
.rsm-level-2 .rsm-link{padding-inline-start:40px;font-size:.92em}
.rsm-level-3 .rsm-link{padding-inline-start:56px;font-size:.86em}
.rsm-arrow{appearance:none;-webkit-appearance:none;margin:0;flex:0 0 56px;position:relative;background:transparent;border:0;border-inline-start:1px solid rgba(127,127,127,.14);color:inherit;cursor:pointer;padding:0;transition:color .25s,background .25s}
.rsm-arrow span{position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-6px 0 0 -4px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .4s var(--e),margin .4s var(--e)}
.rsm-arrow:hover,.rsm-arrow:focus-visible{color:var(--rsm-hover);background:rgba(127,127,127,.08)}
.is-expanded>.rsm-row>.rsm-arrow span{transform:rotate(-135deg);margin-top:-2px}
.rsm-sub{max-height:0;overflow:hidden;transition:max-height .45s var(--e);background:rgba(127,127,127,.06)}
.rsm-empty{padding:20px 24px;font-size:.8em;opacity:.7}

/* ---------- Preset details ---------- */
.rsm-style-bold .rsm-head{border-bottom:2px solid currentColor}
.rsm-style-bold .rsm-menu{counter-reset:rsm}
.rsm-style-bold .rsm-level-1>.rsm-row>.rsm-link{padding:20px 28px;font-weight:600;letter-spacing:-.01em;line-height:1.1}
.rsm-style-bold .rsm-level-1>.rsm-row>.rsm-link::before{counter-increment:rsm;content:counter(rsm,decimal-leading-zero);font-size:.42em;font-weight:500;letter-spacing:.12em;opacity:.55;margin-inline-end:16px;vertical-align:middle}
.rsm-style-bold .rsm-level-2 .rsm-link,.rsm-style-bold .rsm-level-3 .rsm-link{font-size:.7em;padding-inline-start:64px}
.rsm-style-bold .rsm-sub{background:rgba(0,0,0,.04)}
.rsm-style-full .rsm-head{padding:24px 32px}
.rsm-style-full .rsm-nav{display:flex;flex-direction:column;justify-content:center;text-align:center;padding:0 24px 60px}
.rsm-style-full .rsm-level-1>.rsm-row{border:0;justify-content:center}
.rsm-style-full .rsm-link{flex:0 1 auto;padding:10px 24px;font-weight:600;letter-spacing:-.01em}
.rsm-style-full .rsm-link:hover{translate:0 0;letter-spacing:.02em}
.rsm-style-full .rsm-arrow{flex:0 0 40px;border:0}
.rsm-style-full .rsm-level-2 .rsm-link,.rsm-style-full .rsm-level-3 .rsm-link{padding-inline-start:24px;font-size:.55em;font-weight:500}
.rsm-style-full .rsm-sub{background:transparent}
.rsm-style-glass .rsm-sub{background:rgba(255,255,255,.07)}
.rsm-style-dark .rsm-sub{background:rgba(255,255,255,.045)}

/* ---------- Item entrance animations ---------- */
.rsm-anim-stagger .rsm-head,.rsm-anim-stagger .rsm-search,.rsm-anim-stagger .rsm-level-1,
.rsm-anim-slide .rsm-head,.rsm-anim-slide .rsm-search,.rsm-anim-slide .rsm-level-1,
.rsm-anim-fade .rsm-head,.rsm-anim-fade .rsm-search,.rsm-anim-fade .rsm-level-1{opacity:0;transition:opacity .25s ease,transform .25s ease}
.rsm-anim-stagger .rsm-head,.rsm-anim-stagger .rsm-search,.rsm-anim-stagger .rsm-level-1{transform:translateY(22px)}
.rsm-anim-slide .rsm-head,.rsm-anim-slide .rsm-search,.rsm-anim-slide .rsm-level-1{transform:translateX(-48px)}
.rsm-anim-slide.rsm-side-right .rsm-head,.rsm-anim-slide.rsm-side-right .rsm-search,.rsm-anim-slide.rsm-side-right .rsm-level-1{transform:translateX(48px)}
.rsm-panel.is-open .rsm-head,.rsm-panel.is-open .rsm-search,.rsm-panel.is-open .rsm-level-1{opacity:1;transform:none}
.rsm-anim-stagger.is-open .rsm-level-1,.rsm-anim-slide.is-open .rsm-level-1,.rsm-anim-fade.is-open .rsm-level-1{transition:opacity .55s ease,transform .8s var(--e);transition-delay:calc(var(--rsm-speed,.45s)*.55 + var(--i,0)*65ms)}
.rsm-anim-stagger.is-open .rsm-head,.rsm-anim-slide.is-open .rsm-head,.rsm-anim-fade.is-open .rsm-head,
.rsm-anim-stagger.is-open .rsm-search,.rsm-anim-slide.is-open .rsm-search,.rsm-anim-fade.is-open .rsm-search{transition:opacity .5s ease,transform .7s var(--e);transition-delay:calc(var(--rsm-speed,.45s)*.4)}

html.rsm-lock{overflow:hidden}
@media (prefers-reduced-motion:reduce){
	.rsm-panel,.rsm-overlay,.rsm-sub,.rsm-link,.rsm-toggle,.rsm-burger i,.rsm-level-1,.rsm-head,.rsm-search{transition-duration:.01s!important;transition-delay:0s!important}
}
