.jtodd-drawer-shade:not([hidden]){position:fixed;inset:0;z-index:999997;background:rgba(0,0,0,.52)}
.jtodd-drawer{position:fixed;right:0;top:0;height:100dvh;width:min(440px,100vw);z-index:999998;background:white;box-shadow:-10px 0 40px rgba(0,0,0,.15);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .23s ease;visibility:hidden;color:#222;font:inherit}
.jtodd-drawer.is-open{transform:translateX(0);visibility:visible}
body.jtodd-drawer-open{overflow:hidden}
.jtodd-drawer-top{padding:18px 22px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;gap:16px}
.jtodd-drawer-top h2{font-size:21px;line-height:1.35;margin:0;font-weight:650}
#jtodd-drawer-close{border:0;background:transparent;color:#333;font-size:32px;line-height:1;padding:2px 6px;cursor:pointer}
.jtodd-drawer-body{padding:16px 20px;overflow-y:auto;flex:1;min-height:0}
.jtodd-drawer-line{display:grid;grid-template-columns:92px 1fr;gap:14px;border-bottom:1px solid #eee;padding:14px 0}
.jtodd-drawer-image img{max-width:100%;height:auto;max-height:110px;object-fit:contain}
.jtodd-drawer-name{font-size:14px;font-weight:600;text-decoration:none;color:#222;line-height:1.4;display:block}
.jtodd-drawer-price{font-size:14px;margin:9px 0;font-weight:600}
.jtodd-drawer-price .amount{color:#225c32}
.jtodd-drawer-variations{font-size:12px;color:#666}
.jtodd-drawer-variations dl{margin:7px 0}
.jtodd-drawer-controls{display:flex;align-items:center;gap:10px;margin-top:10px}
.jtodd-drawer-controls button{min-width:32px;min-height:32px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;color:#222;padding:3px 9px}
.jtodd-drawer-controls .jtodd-drawer-remove{margin-left:auto;font-size:12px;border:0;text-decoration:underline}
.jtodd-drawer-foot{background:#fff;border-top:1px solid #eee;padding:18px 22px 24px;box-shadow:0 -4px 20px rgba(0,0,0,.025)}
.jtodd-drawer-subtotal{display:flex;justify-content:space-between;font-size:18px;gap:10px}
.jtodd-drawer-shipping{font-size:12px;color:#666;margin:8px 0 14px}
.jtodd-drawer-checkout{display:block;background:#176c32;color:#fff!important;text-decoration:none!important;text-align:center;padding:14px 18px;font-size:15px;font-weight:700;border-radius:3px}
.jtodd-drawer-checkout[hidden]{display:none}
.jtodd-drawer-checkout:hover{background:#105325}
.jtodd-drawer-continue{display:block;width:100%;margin-top:10px;border:1px solid #ccc;background:#fff;color:#333;padding:10px;cursor:pointer}
.jtodd-drawer-error{background:#fff4f1;padding:12px;color:#9f2921;border-radius:4px}
.jtodd-drawer-empty{padding:24px 0;color:#666}
@media(max-width:550px){.jtodd-drawer{width:100vw}.jtodd-drawer-top{padding:15px 18px}.jtodd-drawer-body{padding:10px 16px}.jtodd-drawer-foot{padding:15px 18px 20px}}
@media(prefers-reduced-motion:reduce){.jtodd-drawer{transition:none}}
