/* TR Play Studio 1.0: yhteinen viimeistely ja tapahtumien liike. */
:root{--tr-play-green:#2b4d42;--tr-play-paper:#f7f6f4;--tr-play-orange:#e07f40;--tr26-green-hover:#2b4d42}
.tr-solar{display:inline-flex;width:1.25em;height:1.25em;flex:none;vertical-align:middle;align-items:center;justify-content:center;pointer-events:none}
.tr-solar svg{width:100%;height:100%;display:block}
.tr-iconized>.tr-solar{margin-inline-end:.5em}
.tr-iconized>.tr-solar:only-child{margin:0}
i.tr-solar{font-size:inherit!important;font-style:normal;line-height:1!important}
i.tr-solar::before,i.tr-solar::after{content:none!important}
.tr-iconized.filter-button::before,button.tr-iconized[name=apply_coupon]::after{content:none!important}
body.woocommerce .shop-page-title .category-filtering .filter-button>.tr-solar{display:inline-flex!important}
#wrapper :is(.single_add_to_cart_button,.checkout-button,#place_order){background:var(--tr-play-green);color:#fff}
#wrapper .product-small .add-to-cart-button .button{white-space:normal;line-height:1.35;min-height:46px;display:flex;align-items:center;justify-content:center}
#wrapper .product-small .box-image img{transition:transform 450ms cubic-bezier(.2,.7,.2,1)}
@media(hover:hover) and (pointer:fine){#wrapper .product-small .box:hover .box-image img{transform:scale(1.035)}#wrapper .product-small .box:hover{border-color:#466a6660;box-shadow:0 12px 30px #19372c12}}
#wrapper :is(.button,button):not(:disabled,.disabled):active{scale:.97}
#wrapper :is(input.input-text,select,textarea):focus{box-shadow:0 0 0 4px #466a6618}
#wrapper .coupon,#wrapper .woocommerce-coupon-visible{border-radius:24px;background:#f7f6f4;border:1px solid #466a6626}
#wrapper .coupon input,#wrapper .woocommerce-coupon-visible input{background-color:#fff}
#wrapper .woocommerce-ordering select{font-size:14px;max-width:100%}
#cart-popup .remove,#cart-popup .remove_from_cart_button{min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center}
.tr-play-state{display:none!important}
#tr-play-live{position:fixed;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#tr-play-stage{position:fixed;inset:0;z-index:2147483000;pointer-events:none;overflow:hidden}
.tr-play-toast{position:absolute;inset:auto 16px calc(24px + env(safe-area-inset-bottom));margin-inline:auto;width:max-content;max-width:calc(100% - 32px);display:flex;align-items:center;gap:12px;padding:15px 20px;background:#2b4d42;color:white;border:1px solid #ffffff30;border-radius:22px;box-shadow:0 12px 44px #162b2930;font:600 14px/1.5 Montserrat,Arial,sans-serif;animation:tr-arrive 260ms ease-out both}
.tr-play-toast .tr-solar{width:28px;height:28px;color:#f3c49f}
.tr-play-toast.tr-farewell{background:#f7f6f4;color:#2b4d42;border-color:#466a6630}
.tr-play-toast.tr-farewell .tr-solar{color:#466a66;animation:tr-sigh 900ms ease both}
.tr-coupon-scene{position:absolute;top:22%;left:50%;translate:-50% 0;width:min(440px,calc(100% - 32px));padding:30px 26px;background:#f7f6f4;color:#203b32;border:1px solid #466a6633;border-radius:30px;box-shadow:0 20px 70px #122c2930;text-align:center;font-family:Montserrat,Arial,sans-serif;animation:tr-arrive 240ms ease-out both}
.tr-coupon-scene small{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.tr-coupon-scene .tr-before{font-size:30px;font-weight:700;opacity:.6;display:block;margin-top:12px;text-decoration:line-through;text-decoration-color:#e07f40}
.tr-coupon-scene .tr-roll{font-size:clamp(36px,8vw,60px);font-weight:800;line-height:1.3;letter-spacing:-.045em;font-variant-numeric:tabular-nums;display:block}
.tr-coupon-scene .tr-saving{display:block;font-size:14px;font-weight:600;margin-top:8px}
.tr-coupon-scene>.tr-solar{position:absolute;right:20px;top:48px;width:48px;height:48px;color:#e07f40;transform-origin:70% 85%;animation:tr-hammer 680ms ease-in-out 2}
.tr-fly{position:fixed;width:58px;height:58px;border:3px solid #fff;border-radius:18px;object-fit:cover;box-shadow:0 8px 25px #183a2b35;pointer-events:none}
.tr-particle{position:absolute;width:7px;height:12px;background:#e07f40;border-radius:2px;pointer-events:none}
.tr-revealed{animation:tr-reveal 420ms ease-out both}
.tr-confirmed{animation:tr-pop 500ms cubic-bezier(.2,.8,.2,1) both}
.tr-coupon-error{animation:tr-shake 280ms ease both}
@keyframes tr-arrive{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
@keyframes tr-reveal{from{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes tr-pop{35%{transform:scale(1.13)}70%{transform:scale(.98)}100%{transform:none}}
@keyframes tr-shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@keyframes tr-sigh{40%{transform:translateY(4px) rotate(-12deg)}100%{transform:none}}
@keyframes tr-hammer{0%,100%{transform:rotate(15deg)}45%{transform:rotate(-55deg) translate(-5px,-8px)}62%{transform:rotate(8deg) translate(-12px,8px)}}
@media(max-width:549px){#wrapper .product-small .box-text.box-text-products{padding:14px 11px}#wrapper .product-small .add-to-cart-button .button{font-size:12px;padding-inline:8px}.tr-coupon-scene{top:18%;padding:25px 18px}.tr-coupon-scene>.tr-solar{width:36px;height:36px;right:12px}#wrapper input:not([type=checkbox],[type=radio],[type=submit],[type=button]),#wrapper select,#wrapper textarea{font-size:16px}body.woocommerce .shop-page-title .page-title-inner>*{min-width:0}}
@media(prefers-reduced-motion:reduce){.tr-revealed,.tr-confirmed,.tr-coupon-error,.tr-play-toast,.tr-play-toast .tr-solar,.tr-coupon-scene,.tr-coupon-scene>.tr-solar{animation:none!important}#wrapper .product-small .box-image img{transition:none!important;transform:none!important}#wrapper :is(.button,button):active{scale:1}#wrapper *{scroll-behavior:auto!important}}

.checkout-breadcrumbs>a.tr-iconized::before{content:none!important}
.category-item>a>.tr-category-icon{display:flex;width:64px;height:64px;margin:12px auto 14px;color:#466a66;transition:transform 220ms ease}
@media(hover:hover){.category-item>a:hover>.tr-category-icon{transform:translateY(-4px) rotate(-4deg);color:#2b4d42}}
@media(max-width:549px){.category-item>a>.tr-category-icon{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.category-item>a>.tr-category-icon{transition:none;transform:none!important}}

.checkout-breadcrumbs>a.tr-iconized::before{content:none!important}

.checkout-breadcrumbs>a.tr-iconized::before{content:none!important}

.checkout-breadcrumbs>a.tr-iconized::before{content:none!important}

.checkout-breadcrumbs>a.tr-iconized::before{content:none!important}

.checkout-breadcrumbs>a.tr-iconized::before{content:none!important}
