/* TTY upsell panel + cart/checkout box (EMC2 Online) */
.tty-up{position:fixed;inset:0;z-index:100001}
.tty-up[hidden]{display:none}
.tty-up__scrim{position:absolute;inset:0;background:rgba(20,28,22,.35);opacity:0;transition:opacity .2s ease}
.tty-up.is-open .tty-up__scrim{opacity:1}
.tty-up__panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,100%);display:flex;flex-direction:column;gap:14px;padding:28px 24px 24px;background:#fff;box-shadow:-12px 0 40px rgba(29,36,32,.16);transform:translateX(24px);opacity:0;transition:transform .22s ease,opacity .22s ease;overflow-y:auto}
.tty-up.is-open .tty-up__panel{transform:none;opacity:1}
.tty-up__x{all:unset;cursor:pointer;position:absolute;top:12px;right:12px;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;font-size:26px;line-height:1;color:#5b665f}
.tty-up__x:hover,.tty-up__x:focus-visible{background:#f3f6f3;color:#1d2420}
.tty-up__ok{margin:0;font-size:14px;font-weight:700;color:#2f6a17}
.tty-up__ok span{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:6px;border-radius:50%;background:#3d7a22;color:#fff;font-size:12px}
.tty-up h2{margin:0;padding-right:36px;font-size:20px;line-height:1.3;color:#1d2420}
.tty-up__offer{padding:16px;border-radius:16px;background:#eef5ea}
.tty-up__lead{margin:0 0 12px;font-size:14px;color:#1d2420}
.tty-up ul,.tty-up-box ul{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}
.tty-up__item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;margin:0;padding:10px;border-radius:12px;background:#fff;border:1px solid #e3e9e4}
.tty-up__item img{width:56px;height:56px;border-radius:10px;object-fit:cover;background:#f6f8f6}
.tty-up__info{min-width:0}
.tty-up__info strong{display:block;font-size:14px;line-height:1.3;color:#1d2420}
.tty-up__info span{display:block;font-size:12px;color:#5b665f}
.tty-up__price{margin:4px 0 0;font-size:14px}
.tty-up__price del{color:#7b857e;margin-right:4px}
.tty-up__price ins{text-decoration:none;font-weight:800;color:#2f6a17}
.tty-up__price em{margin-left:6px;font-style:normal;font-size:11px;color:#5b665f}
.tty-up__add{all:unset;box-sizing:border-box;cursor:pointer;height:38px;padding:0 16px;border-radius:999px;background:#3d7a22;color:#fff;font-size:14px;font-weight:700;white-space:nowrap}
.tty-up__add:hover,.tty-up__add:focus-visible{background:#2f6a17}
.tty-up__add:disabled{cursor:default;opacity:.85}
.tty-up__add.is-added{background:#eef5ea;color:#2f6a17}
.tty-up__foot{display:flex;gap:8px;margin-top:auto;padding-top:8px}
.tty-up__btn{all:unset;box-sizing:border-box;cursor:pointer;flex:1;display:inline-flex;justify-content:center;align-items:center;height:48px;border-radius:10px;background:#3d7a22;color:#fff!important;font-size:15px;font-weight:700;text-decoration:none!important}
.tty-up__btn:hover,.tty-up__btn:focus-visible{background:#2f6a17}
.tty-up__btn--ghost{background:#fff;color:#2f6a17!important;border:1px solid #cfe2c6}
.tty-up__btn--ghost:hover,.tty-up__btn--ghost:focus-visible{background:#eef5ea}
@media (max-width:600px){
	.tty-up__panel{top:auto;left:0;width:100%;max-height:88vh;border-radius:20px 20px 0 0;transform:translateY(24px);box-shadow:0 -12px 40px rgba(29,36,32,.18)}
}
@media (prefers-reduced-motion:reduce){.tty-up__panel,.tty-up__scrim{transition:none}}
.tty-up-box{margin:20px 0;padding:16px;border:1px solid #cfe2c6;border-radius:16px;background:#f6faf3}
.tty-up-box h3{margin:0 0 12px;font-size:16px;color:#1d2420}
.tty-up-box h3 span{display:block;margin-top:2px;font-size:13px;font-weight:600;color:#2f6a17}

/* the old Upsell Popup (Pro) prints its popup into the page; hide it wherever the new panel is used */
.thp-dark-overlay,.thp-popup-container,.thp-content-body{display:none!important}
html.thp-noscroll,body.thp-noscroll{overflow:auto!important}
