/* Local, accessible side panels: no navigation away from the current page. */
@font-face{font-family:VMDrawer;src:url('../fonts/roboto-latin-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:VMDrawer;src:url('../fonts/roboto-latin-700.woff2') format('woff2');font-weight:700;font-display:swap}
.vm-drawer{--vm-purple:#6043dc;--vm-ink:#20232d;--vm-muted:#6b6776;--vm-line:#e9e5ef;position:fixed;inset:0 0 0 auto;width:min(550px,100%);max-width:100%;height:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-left:1px solid #e5deed;background:#fff;color:var(--vm-ink);box-shadow:-20px 0 70px #1e153324;overflow:hidden;font:400 15px/1.5 VMDrawer,Arial,sans-serif;box-sizing:border-box}
.vm-drawer[open]{display:flex;flex-direction:column;animation:vm-drawer-in .2s ease-out}
.vm-drawer::backdrop{background:rgba(25,20,40,.36)}
.vm-drawer *,.vm-drawer *:before,.vm-drawer *:after{box-sizing:border-box}
.vm-drawer h2,.vm-drawer h3,.vm-drawer p{margin:0}.vm-drawer a{color:inherit}.vm-drawer button{font:inherit;cursor:pointer}.vm-drawer :focus-visible{outline:3px solid #7455df;outline-offset:3px}
.vm-drawer-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:27px 28px 24px;border-bottom:1px solid var(--vm-line);flex:none;background:#fff}
.vm-drawer-head h2{font-size:25px;font-weight:700;letter-spacing:-.025em;line-height:1.2}
.vm-drawer-x{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:#f3f0f9;color:#554769;font:400 28px/1 Arial,sans-serif!important;flex:none}
.vm-drawer-x:hover{background:#eae3f8}
.vm-drawer-body{min-height:0;display:flex;flex:1;flex-direction:column;overflow:auto;overscroll-behavior:contain}
.vm-drawer-loading{padding:28px;color:#6b6776}
.vm-cart-form,.vm-extras-content{display:flex;flex-direction:column;min-height:0;flex:1;margin:0}
.vm-cart-scroll,.vm-extras-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px 28px}
.vm-drawer-intro{color:#6b6776;font-size:14px;margin-bottom:20px!important;line-height:1.6}
.vm-cart-caption{font-size:12px;color:#777080;margin:0 0 8px!important}
.vm-cart-item{display:flex;gap:17px;padding:23px 0;border-bottom:1px solid #ece8f1;min-width:0}
.vm-cart-thumb{display:grid;place-items:center;flex:0 0 66px;width:66px;height:66px;background:linear-gradient(145deg,#eee8ff,#f8f6ff);border:1px solid #e8e1f3;border-radius:11px;color:#7052cc;font-size:29px;font-weight:700;overflow:hidden}
.vm-cart-thumb img{width:100%;height:100%;object-fit:contain}
.vm-cart-item-copy{min-width:0;overflow-wrap:anywhere;flex:1}
.vm-cart-kicker{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#756983}
.vm-cart-item h3{font-size:17px;font-weight:700;margin:3px 0 6px;line-height:1.35}
.vm-cart-item p{font-size:12px;color:#6b6776;line-height:1.6}
.vm-cart-item strong{display:block;font-size:16px;margin-top:9px}.vm-cart-item small{font-size:11px;font-weight:400;color:#6b6776}
.vm-cart-item .vm-cart-support{padding:9px 11px;margin-top:12px;background:#f6f3fc;border-radius:6px;color:#554566}
.vm-cart-remove{display:block;font-size:11px!important;padding:5px 0;margin-top:7px;color:#716b7a;border:0;background:none;text-decoration:underline;text-underline-offset:3px;min-height:28px}
.vm-drawer-actions{flex:none;padding:20px 28px max(24px,env(safe-area-inset-bottom));border-top:1px solid #e8e3ef;background:#fff}
.vm-cart-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;font-size:14px;color:#20232d}.vm-cart-total strong{font-size:25px;font-weight:700;letter-spacing:-.025em;white-space:nowrap}
.vm-cart-tax{display:block;font-size:11px!important;line-height:1.5!important;color:#746d7c!important;margin:7px 0 12px!important}
.vm-drawer .vm-drawer-primary,.vm-drawer-primary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;width:100%;padding:13px 16px;border:1px solid #6043dc;border-radius:9px;background:#6043dc;color:#fff;text-decoration:none;font:700 14px/1.4 VMDrawer,Arial,sans-serif;margin-top:17px;cursor:pointer}
.vm-drawer-primary:hover{background:#4e31c4}.vm-drawer-primary span{font-size:21px;line-height:1}
.vm-drawer-secondary{display:flex;align-items:center;justify-content:center;width:100%;min-height:38px;margin:9px 0 0;padding:9px;border:0;background:none;color:#64596f!important;font-size:12px!important;text-decoration:none;cursor:pointer}
.vm-drawer-secondary:hover{text-decoration:underline;text-underline-offset:3px}
.vm-cart-empty{padding:35px 4px 25px;text-align:center;color:#6b6776}.vm-cart-empty h3{font-size:20px;color:#20232d;margin:14px 0 12px;line-height:1.3}.vm-cart-empty p{font-size:14px}
.vm-cart-symbol{display:grid;place-items:center;width:70px;height:70px;margin:0 auto;border-radius:20px;background:#f1ecfc;color:#7052cc;font-size:35px}
.vm-cart-notice{padding:11px 13px;border:1px solid #dfeadb;border-radius:9px;background:#f4faf1;color:#3f6035;font-size:12px;margin:0 0 15px!important}
.vm-cart-error{margin:16px;padding:14px;border:1px solid #e8bfcb;background:#fff6f8;color:#8c2e45;font-size:13px;border-radius:9px}.vm-cart-scroll .vm-cart-error{margin:16px 0}
.vm-extra-list{display:grid;gap:14px;margin-bottom:20px}.vm-extra-card{position:relative;display:grid;grid-template-columns:80px minmax(0,1fr);align-items:start;gap:16px;padding:18px;border:1px solid #e6e0ed;border-radius:13px;cursor:pointer;background:white;min-width:0}
.vm-extra-card:has(input:checked){border-color:#9075da;background:#faf8ff;box-shadow:inset 0 0 0 1px #9075da}
.vm-extra-card input{position:absolute;top:12px;right:12px;width:17px;height:17px;accent-color:#6043dc;margin:0}
.vm-extra-card:focus-within{outline:2px solid #9278dd;outline-offset:2px}
.vm-extra-image{display:grid;place-items:center;width:80px;height:80px;border-radius:9px;background:linear-gradient(135deg,#eee8ff,#f7f4fe);color:#7a5fbc;overflow:hidden}.vm-extra-image img{width:100%;height:100%;object-fit:contain}
.vm-extra-copy{display:flex;flex-direction:column;gap:7px;min-width:0;padding-right:15px;overflow-wrap:anywhere}
.vm-extra-copy>strong{font-size:16px;line-height:1.4;font-weight:700}.vm-extra-copy>span{font-size:12px;color:#6b6776}.vm-extra-copy>b{font-size:16px;font-weight:700;margin-top:3px}.vm-extra-copy small{display:block;font-size:10px;font-weight:400;color:#746d7c}
.vm-extra-copy .vm-extra-action{color:#6043dc;font-size:12px;font-weight:700;margin-top:6px}
.vm-extra-added{display:none}.vm-extra-card:has(input:checked) .vm-extra-add{display:none}.vm-extra-card:has(input:checked) .vm-extra-added{display:inline}
.vm-extras-status{font-size:12px;color:#6b6776;margin:0 0 9px!important}.vm-extras-status[data-error="true"]{color:#a22641;font-weight:700}
.vm-drawer [hidden]{display:none!important}
@keyframes vm-drawer-in{from{transform:translateX(35px);opacity:.6}to{transform:translateX(0);opacity:1}}
@media(max-width:540px){.vm-drawer{width:100%;border:0}.vm-drawer-head{padding:20px}.vm-drawer-head h2{font-size:23px}.vm-cart-scroll,.vm-extras-scroll{padding:20px}.vm-drawer-actions{padding:17px 20px max(20px,env(safe-area-inset-bottom))}.vm-extra-card{grid-template-columns:65px minmax(0,1fr);padding:15px;gap:13px}.vm-extra-image{width:65px;height:65px}.vm-extra-copy>strong{font-size:15px}.vm-cart-total strong{font-size:23px}}
@media(max-height:600px){.vm-drawer-head{padding:12px 20px}.vm-drawer-actions{padding:12px 20px}.vm-drawer-body{overflow:auto}.vm-cart-form,.vm-extras-content{min-height:auto}.vm-cart-scroll,.vm-extras-scroll{flex:none;overflow:visible}}
@media(prefers-reduced-motion:reduce){.vm-drawer[open]{animation:none}}
