:root{--imss-p:var(--e-global-color-primary,#075B78);--imss-ink:#123B50;--imss-soft:#46616E;--imss-line:#D9E7EA;--imss-light:#E3F5F7;--imss-ease:cubic-bezier(.22,.8,.24,1)}
.imss-add{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border-radius:999px;border:1.5px solid var(--imss-p);background:#fff;color:var(--imss-p);font-weight:700;font-size:.88rem;cursor:pointer;transition:background .18s,color .18s}
.imss-add svg,.imss-cart-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.imss-add:hover,.imss-add.is-added{background:var(--imss-p);color:#fff}
.imss-cart-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--imss-p);background:#fff;color:var(--imss-p);font-weight:700;font-size:.92rem;cursor:pointer}
.imss-count{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--imss-p);color:#fff;font-size:.78rem;display:grid;place-items:center;font-variant-numeric:tabular-nums}
.imss-cart-btn.bump{animation:imssbump .45s var(--imss-ease)}@keyframes imssbump{40%{transform:scale(1.08)}}
.imss-scrim{position:fixed;inset:0;z-index:9998;background:rgba(10,52,70,.45);opacity:0;pointer-events:none;transition:opacity .25s}
.imss-drawer{position:fixed;top:0;right:0;bottom:0;z-index:9999;width:min(420px,100%);background:#fff;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .32s var(--imss-ease);padding:calc(20px + env(safe-area-inset-top,0px)) 22px calc(20px + env(safe-area-inset-bottom,0px));color:var(--imss-ink)}
.imss-open .imss-scrim{opacity:1;pointer-events:auto}.imss-open .imss-drawer{transform:none}
.imss-drawer header{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--imss-line)}
.imss-drawer h3{margin:0;font-size:1.5rem}
.imss-x{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--imss-line);background:#fff;cursor:pointer;font-size:1.2rem;color:var(--imss-ink)}
.imss-items{flex:1;overflow:auto;display:flex;flex-direction:column;gap:14px;padding:16px 0}
.imss-item{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:start}
.imss-item img,.imss-ph{width:64px;height:64px;border-radius:6px;object-fit:cover;background:var(--imss-light)}
.imss-meta{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:.85rem}
.imss-meta a{font-weight:700;color:var(--imss-ink);text-decoration:none;font-size:.93rem;line-height:1.3}
.imss-meta input{min-height:36px;border:1.5px solid var(--imss-line);border-radius:6px;padding:0 8px;font:inherit;max-width:100%}
.imss-rm{align-self:start;border:0;background:none;color:var(--imss-soft);cursor:pointer;font-size:.8rem;text-decoration:underline;padding:0}
.imss-step{display:inline-flex;align-items:center;border:1.5px solid var(--imss-line);border-radius:999px;width:max-content}
.imss-step button{width:36px;height:36px;border:0;background:none;font-size:1.1rem;cursor:pointer;color:var(--imss-p)}
.imss-step output{min-width:26px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.imss-tot{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0;border-top:1px solid var(--imss-line);font-weight:700}
.imss-tot b{font-size:1.6rem;color:var(--imss-p);font-variant-numeric:tabular-nums}
.imss-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:0;background:var(--imss-p);color:#fff!important;font-weight:600;text-decoration:none;cursor:pointer;width:100%}
.imss-btn.imss-disabled{opacity:.45;pointer-events:none}
.imss-note{margin:10px 0 0;text-align:center;font-size:.8rem;color:var(--imss-soft)}
.imss-empty{color:var(--imss-soft);font-size:.92rem}
.imss-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:10000;transform:translate(-50%,20px);opacity:0;padding:12px 18px;border-radius:999px;background:var(--imss-ink);color:#fff;font-weight:600;font-size:.9rem;transition:all .3s var(--imss-ease);pointer-events:none;max-width:calc(100% - 32px)}
.imss-toast.show{opacity:1;transform:translate(-50%,0)}
.imss-book{display:flex;flex-direction:column;gap:14px;background:#fff;border-radius:10px;box-shadow:0 14px 34px rgba(18,59,80,.16);padding:22px;color:var(--imss-ink)}
.imss-price small{display:block;font-size:.75rem;color:var(--imss-soft)}.imss-price b{font-size:2rem;color:var(--imss-p);font-weight:400}
.imss-book label{display:flex;flex-direction:column;gap:6px;font-size:.84rem;font-weight:700}
.imss-book input{min-height:46px;border:1.5px solid var(--imss-line);border-radius:6px;padding:0 12px;font:inherit}
.imss-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:700}
.imss-total b{font-size:1.6rem;color:var(--imss-p);font-weight:400;font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:reduce){.imss-drawer,.imss-scrim,.imss-toast{transition:none}.imss-cart-btn.bump{animation:none}}
.imss-drawer .imss-need input[type=date]{border-color:#c2410c;box-shadow:0 0 0 3px rgba(194,65,12,.15)}
.imss-drawer .imss-need{color:#9a3412}
