/* Local cart and checkout use the original Eppix type, color and glass tokens. */
.ec-overlay{position:fixed;inset:0;z-index:1000;background:#0008;backdrop-filter:blur(4px)}
.ec-drawer{position:fixed;inset:0 0 0 auto;z-index:1001;width:100%;max-width:448px;display:flex;flex-direction:column;background:rgba(244,247,251,.96);backdrop-filter:blur(24px);color:var(--color-foreground,#050507);border-left:1px solid var(--color-border,#e2e5ea);box-shadow:-12px 0 60px #14203020}
.dark .ec-drawer{background:rgba(19,23,28,.97)}
.ec-drawer-head{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--color-border)}
.ec-drawer-head h2{font-size:14px;font-weight:500}.ec-count{margin-left:8px;font:11px var(--font-geist-mono,monospace);color:var(--color-foreground-muted)}
.ec-icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;cursor:pointer;color:var(--color-foreground-muted);font-size:23px}
.ec-icon-button:hover{background:var(--color-surface-hover)}
.ec-drawer-body{flex:1;min-height:0;overflow:auto;padding:24px}.ec-drawer-foot{padding:20px 24px;border-top:1px solid var(--color-border);max-height:50dvh;overflow:auto}
.ec-items{list-style:none;padding:0;margin:0}.ec-item{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--color-border)}.ec-item:first-child{padding-top:0}.ec-item:last-child{border-bottom:0}
.ec-item-photo{width:72px;height:72px;flex-shrink:0;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-surface)}.ec-item-photo img{width:100%;height:100%;object-fit:cover}
.ec-item-info{flex:1;min-width:0}.ec-item-title{display:block;font-size:13px;font-weight:500;line-height:1.5}.ec-item-title:hover{color:var(--color-brand-600)}
.ec-item-option{font-size:11px;color:var(--color-foreground-muted);margin-top:2px}.ec-item-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}.ec-price{font:12px var(--font-geist-mono,monospace);white-space:nowrap}
.ec-stepper{display:inline-flex;align-items:center;height:28px;border:1px solid var(--color-border);border-radius:6px;overflow:hidden;background:var(--color-surface)}.ec-stepper button{height:28px;width:27px;cursor:pointer}.ec-stepper button:disabled{opacity:.35;cursor:default}.ec-stepper input{width:32px;min-width:0;text-align:center;background:transparent;font:11px var(--font-geist-mono,monospace);border:0;appearance:textfield;-moz-appearance:textfield}.ec-stepper input::-webkit-inner-spin-button{appearance:none}.ec-remove{font-size:11px;text-decoration:underline;cursor:pointer;margin-top:8px;color:var(--color-foreground-muted)}
.ec-tiers{border:1px solid #6ba3d44d;background:#2968a309;padding:8px 12px;border-radius:8px;font-size:11px;color:var(--color-brand-600);margin-bottom:12px}.ec-tiers.is-discount{color:#168445;border-color:#86efac4d;background:#16a34a08}.dark .ec-tiers{color:var(--color-brand-300)}.ec-tiers small{display:block;font-size:10px;margin-top:2px}
.ec-row{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:12px;color:var(--color-foreground-muted);margin:7px 0}.ec-row span:last-child{font-family:var(--font-geist-mono,monospace);color:var(--color-foreground);text-align:right}.ec-row.ec-saving,.ec-row.ec-saving span:last-child,.ec-row .ec-free{color:#168445}.ec-total{padding-top:14px;margin-top:14px;border-top:1px solid var(--color-border);font-size:14px;font-weight:600}.ec-total span:last-child{font-size:18px}
.ec-primary,.ec-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:10px;padding:10px 20px;font-size:13px;font-weight:500;text-align:center;cursor:pointer;transition:background .15s}.ec-primary{color:#fff;background:var(--color-brand-500,#2968a3)}.ec-primary:hover{background:var(--color-brand-600,#1e5289)}.ec-secondary{border:1px solid var(--color-border);color:var(--color-foreground);background:rgba(255,255,255,.3)}.ec-secondary:hover{background:var(--color-surface-hover)}.ec-primary:disabled{opacity:.5;cursor:default}.ec-full{width:100%;margin-top:10px}
.ec-note{font-size:11px;line-height:1.6;color:var(--color-foreground-muted);margin-top:12px}.ec-empty{text-align:center;padding:64px 20px;color:var(--color-foreground-muted);font-size:13px}.ec-empty svg{display:block;margin:0 auto 20px;opacity:.45}.ec-empty h1{font-size:24px;font-weight:600;color:var(--color-foreground);margin-bottom:12px}.ec-empty .ec-primary,.ec-empty .ec-secondary{margin-top:24px}
.ec-cart-page,.ec-checkout{max-width:1280px;margin:0 auto;padding:36px 24px 80px;color:var(--color-foreground)}.ec-crumb{display:flex;gap:10px;font:11px var(--font-geist-mono,monospace);color:var(--color-foreground-muted);margin-bottom:16px}.ec-page-title{font-size:30px;line-height:1.2;font-weight:600;letter-spacing:-.025em;margin-bottom:36px}.ec-checkout-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px}.ec-form-column{display:flex;flex-direction:column;gap:32px}.ec-section-title{font:500 11px var(--font-geist-mono,monospace);letter-spacing:.2em;text-transform:uppercase;margin-bottom:20px;color:var(--color-foreground-secondary)}
.ec-glass{border:1px solid #ffffff60;background:rgba(255,255,255,.45);box-shadow:0 3px 24px #1b36570b;backdrop-filter:blur(12px);border-radius:12px;padding:24px}.dark .ec-glass{background:#ffffff05;border-color:var(--color-border)}
.ec-fields{display:grid;gap:16px}.ec-two{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-field label{display:block;font:500 11px var(--font-geist-mono,monospace);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;color:var(--color-foreground-secondary)}.ec-field input,.ec-field select,.ec-field textarea,.ec-code-input{width:100%;min-height:44px;border-radius:8px;background:rgba(255,255,255,.5);border:1px solid #ffffff60;padding:10px 14px;font-size:13px;color:var(--color-foreground);outline:none}.ec-field input:focus,.ec-field select:focus,.ec-field textarea:focus,.ec-code-input:focus{border-color:var(--color-brand-400);box-shadow:0 0 0 1px #2968a350}.dark .ec-field input,.dark .ec-field select,.dark .ec-field textarea,.dark .ec-code-input{background:var(--color-surface-elevated);border-color:var(--color-border)}.ec-field textarea{resize:vertical;min-height:100px}.ec-field+.ec-fields,.ec-fields+.ec-field,.ec-field+.ec-field{margin-top:16px}
.ec-check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.7;color:var(--color-foreground-secondary);cursor:pointer}.ec-check input{margin-top:4px;accent-color:var(--color-brand-500);width:16px;height:16px;flex-shrink:0}.ec-check a{text-decoration:underline}.ec-shipping-fields{margin-top:20px}.ec-shipping-fields[hidden]{display:none}
.ec-summary-wrap{position:sticky;top:80px;align-self:start}.ec-summary{padding:0;overflow:hidden}.ec-summary .ec-items{padding:20px}.ec-summary .ec-item{padding:16px 0}.ec-summary .ec-item:first-child{padding-top:0}.ec-summary .ec-item-photo{width:64px;height:64px}.ec-summary-totals{padding:20px;border-top:1px solid var(--color-border)}.ec-code{display:flex;gap:8px;margin-bottom:18px}.ec-code-input{min-width:0}.ec-code-status{font-size:11px;margin-top:8px;color:var(--color-foreground-muted)}
.ec-payment{margin-top:24px}.ec-payment-option{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--color-border);border-radius:8px;margin-top:8px;font-size:13px;cursor:pointer}.ec-payment-option:has(input:checked){border-color:var(--color-brand-400);background:#2968a309}.ec-payment-option input{accent-color:var(--color-brand-500)}.ec-pay-icons{display:flex;align-items:center;gap:4px;margin-left:auto}.ec-pay-icons img{width:33px;height:21px;object-fit:contain;background:#fff;border:1px solid var(--color-border);border-radius:3px}.ec-paypal{font-style:italic;font-weight:700;color:#003087}.ec-paypal span{color:#009cde}.ec-demo-notice{font-size:12px;line-height:1.65;border:1px solid #6ba3d44d;background:#2968a309;padding:12px 14px;border-radius:8px;margin:18px 0}.ec-form-error{color:#dc2626;font-size:12px;margin-top:12px}.ec-review{margin-top:20px;padding:18px;border:1px solid #86efac60;border-radius:10px;background:#16a34a08;font-size:13px;line-height:1.7}.ec-review h3{font-size:16px;font-weight:600;margin-bottom:8px}.ec-mobile-total{display:none}.ec-badge{position:absolute;top:-2px;right:-2px;display:flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 3px;border-radius:50%;background:var(--color-brand-500);color:#fff;font-size:9px;font-weight:700}
@media(max-width:1023px){.ec-checkout-grid{grid-template-columns:1fr;gap:32px}.ec-summary-wrap{position:static}.ec-mobile-total{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-12px 0 28px;padding:14px 16px;border:1px solid var(--color-border);border-radius:10px;background:rgba(255,255,255,.45);font-size:13px}.ec-mobile-total a{color:var(--color-brand-600);text-decoration:underline}.ec-mobile-total strong{font-family:var(--font-geist-mono,monospace)}.ec-summary-wrap{scroll-margin-top:80px}.ec-page-title{font-size:26px;margin-bottom:30px}}
@media(max-width:639px){.ec-drawer-head,.ec-drawer-body{padding:16px}.ec-drawer-foot{padding:16px}.ec-cart-page,.ec-checkout{padding:28px 16px 50px}.ec-glass{padding:18px}.ec-summary{padding:0}.ec-summary .ec-items,.ec-summary-totals{padding:16px}.ec-checkout-grid{gap:28px}.ec-page-title{font-size:25px}.ec-two{gap:12px}.ec-item{gap:12px}.ec-section-title{margin-bottom:16px}.ec-form-column{gap:28px}}

/* Details verified against the source cart and checkout components. */
.ec-drawer{background:#ffffffe0;backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);box-shadow:0 12px 40px #0000001f}.dark .ec-drawer{background:#161a1deb}
.ec-drawer-body{padding-top:16px;padding-bottom:16px}.ec-drawer .ec-item{align-items:flex-start}.ec-item-option{font:10px var(--font-geist-mono,monospace);letter-spacing:.025em;line-height:1.5}.ec-price{font-size:13px;font-weight:500;line-height:1.5;margin-top:4px;white-space:normal}.ec-item-bottom{justify-content:flex-start;gap:8px;margin-top:8px}.ec-remove-icon{margin-left:auto;padding:4px;color:var(--color-foreground-muted);cursor:pointer}.ec-remove-icon:hover{color:var(--color-error,#e8453c)}.ec-stock-note{font:10px var(--font-geist-mono,monospace);line-height:1.5;color:#d97706;margin-top:2px}.ec-item-bottom .ec-stock-note{font-size:9px;margin-top:0}.ec-item-photo{position:relative}.ec-item-count{position:absolute;top:0;right:0;width:20px;height:20px;border-radius:50%;background:var(--color-brand-500);color:#fff;display:flex;align-items:center;justify-content:center;font:500 10px var(--font-geist-mono,monospace)}
.ec-shipping-progress{border:1px solid #6ba3d44d;border-radius:8px;background:#ffffff73;padding:6px 12px;margin:5px 0;color:var(--color-brand-600);font-size:10px}.dark .ec-shipping-progress{background:#161a1d8c;border-color:#7ccae833;color:var(--color-brand-400)}
.ec-primary.ec-full,.ec-secondary.ec-full{min-height:48px;font-size:14px;padding:12px 32px}.ec-secondary{background:#ffffff80;border-color:#ffffff4d;backdrop-filter:blur(4px)}.ec-secondary:hover{background:#ffffffb3;border-color:#3d82be66}.dark .ec-primary{background:var(--color-foreground);color:var(--color-background)}.dark .ec-primary:hover{background:#ffffffe6}.dark .ec-secondary{background:transparent;border-color:var(--color-border-strong)}.dark .ec-secondary:hover{background:transparent;border-color:var(--color-brand-500)}
.ec-checkout{padding-top:40px}.ec-checkout .ec-page-title{margin-bottom:24px}.ec-checkout-grid{gap:64px}.ec-glass{background:#ffffffd1;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.dark .ec-glass{background:#161a1de0}.ec-field label{letter-spacing:.15em}.ec-field input,.ec-field select,.ec-field textarea{font-size:14px;padding-left:16px;padding-right:16px}.ec-three{grid-template-columns:repeat(3,minmax(0,1fr))}.ec-checkout .ec-check:has([data-ec-different-shipping]) span{font:500 11px var(--font-geist-mono,monospace);letter-spacing:.12em;text-transform:uppercase}.ec-check[hidden]{display:none}
.ec-summary .ec-items{padding:0}.ec-summary .ec-item,.ec-summary .ec-item:first-child{padding:20px}.ec-summary-totals{padding:20px}.ec-code-section{padding:20px;border-top:1px solid var(--color-border)}.ec-code{margin-bottom:0}.ec-code-input{height:36px;min-height:36px;padding:8px 12px;font-family:var(--font-geist-mono,monospace);text-transform:uppercase;letter-spacing:.05em}.ec-code-input::placeholder{text-transform:none;letter-spacing:normal}.ec-code .ec-secondary{min-height:36px;height:36px;padding:8px 12px;font-size:12px}.ec-code-status:empty{display:none}.ec-summary .ec-row{font-size:13px;margin:12px 0}.ec-summary .ec-total{margin-top:12px}.ec-summary .ec-shipping-progress{font-size:11px;padding-top:8px;padding-bottom:8px}
.ec-vial-progress{padding:12px;border:1px solid #ffffff33;background:#ffffff73;border-radius:12px;margin:12px 0}.dark .ec-vial-progress{background:#161a1d8c;border-color:var(--color-border)}.ec-vial-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:8px;font:10px var(--font-geist-mono,monospace);text-transform:uppercase;letter-spacing:.1em;color:var(--color-foreground-muted)}.ec-vial-progress strong{font-size:12px;text-transform:none;letter-spacing:normal;color:var(--color-foreground-secondary)}.ec-vial-track{height:8px;border-radius:8px;background:#ffffff80;overflow:hidden;margin:8px 0}.dark .ec-vial-track{background:var(--color-surface-elevated)}.ec-vial-track>span{display:block;height:100%;border-radius:8px;background:var(--color-brand-400);transition:width .5s}.ec-vial-amber strong,.ec-vial-amber p,.ec-vial-labels .is-reached{color:#d97706}.ec-vial-green strong,.ec-vial-green .is-reached:last-child{color:#059669}.ec-vial-amber .ec-vial-track>span{background:#f59e0b}.ec-vial-green .ec-vial-track>span{background:#10b981}.ec-vial-labels{display:flex;justify-content:space-between;gap:4px;font:9px var(--font-geist-mono,monospace);color:var(--color-foreground-muted)}.ec-vial-progress>p{font-size:11px;font-weight:500;margin-top:8px;color:var(--color-brand-600)}.ec-vial-labels .is-reached{font-weight:600}
.ec-marketing{padding:20px;border-top:1px solid var(--color-border)}.ec-marketing .ec-section-title{margin-bottom:12px}.ec-marketing .ec-check{line-height:1.4;margin-bottom:12px}.ec-marketing .ec-sms-consent{font-size:11px;color:var(--color-foreground-muted)}.ec-marketing .ec-note{margin-top:0}
@media(max-width:1023px){.ec-checkout-grid{gap:32px}.ec-checkout .ec-page-title{margin-bottom:30px}}
@media(max-width:639px){.ec-checkout{padding-top:32px}.ec-checkout .ec-page-title{font-size:24px}.ec-two,.ec-three{grid-template-columns:1fr;gap:16px}.ec-glass{padding:16px}.ec-summary{padding:0}.ec-summary .ec-items{padding:0}.ec-summary .ec-item,.ec-summary .ec-item:first-child,.ec-summary-totals,.ec-code-section,.ec-marketing{padding:16px}.ec-summary .ec-row{font-size:12px}.ec-section-title{margin-bottom:20px}.ec-form-column{gap:32px}.ec-vial-labels{font-size:9px}}
