@font-face { font-family:TikTokFont; font-style:normal; font-weight:400; font-display:swap; src:url('/catalog-media/arvore-natal/fonts/TikTokFont-Regular.woff2') format('woff2'); }
@font-face { font-family:TikTokFont; font-style:normal; font-weight:500; font-display:swap; src:url('/catalog-media/arvore-natal/fonts/TikTokFont-Semibold.woff2') format('woff2'); }
@font-face { font-family:TikTokFont; font-style:normal; font-weight:700; font-display:swap; src:url('/catalog-media/arvore-natal/fonts/TikTokFont-Bold.woff2') format('woff2'); }
:root { --tree-pink:#ff285b; --tree-ink:#101010; --tree-gray:#f7f7f7; --tree-teal:#11817e; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scrollbar-width:none; }
html::-webkit-scrollbar,body::-webkit-scrollbar { display:none; width:0; height:0; }
html:has(dialog[open]) { overflow:hidden; }
body { margin:0; background:#e5e5e7; color:var(--tree-ink); font-family:TikTokFont,system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
button,a,input { -webkit-tap-highlight-color:transparent; }
button { font:inherit; color:inherit; border:0; padding:0; background:none; cursor:pointer; }
a { color:inherit; }
button:focus-visible,a:focus-visible { outline:2px solid var(--tree-pink); outline-offset:3px; }
[hidden] { display:none!important; }
.icon { display:inline-block; flex:none; width:22px; height:22px; vertical-align:middle; }
.tree-page { width:100%; max-width:440px; margin:auto; background:#fff; min-height:100vh; box-shadow:0 0 40px #0001; }
.tree-gallery-wrap { position:relative; background:#f4f4f4; }
.tree-gallery { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; touch-action:pan-x pan-y; }
.tree-gallery::-webkit-scrollbar { display:none; }
.tree-slide { flex:0 0 100%; width:100%; scroll-snap-align:start; aspect-ratio:956/950; }
.tree-slide img { display:block; width:100%; height:100%; object-fit:cover; }
.tree-gallery-counter { position:absolute; bottom:15px; right:15px; border-radius:30px; background:#161616ba; color:#fff; padding:3px 6px; font-size:10px; line-height:14px; pointer-events:none; }
.tree-promotion { position:relative; display:flex; align-items:center; justify-content:space-between; overflow:hidden; min-height:59px; padding:8px 15px 6px; background:linear-gradient(100deg,#ff2459 0%,#ff2154 62%,#ff3a68 100%); }
.tree-promotion::before { content:'11.11'; position:absolute; left:43%; top:-15px; font-size:70px; font-weight:900; letter-spacing:-6px; color:#ff7395; opacity:.4; transform:rotate(-7deg); }
.tree-promotion-price,.tree-event { position:relative; z-index:1; }
.tree-price-main { display:flex; align-items:baseline; white-space:nowrap; gap:3px; line-height:1.1; }
.tree-off { font-size:14px; background:#000; color:#fff; padding:3px 4px; border-radius:5px; font-weight:600; align-self:center; }
.tree-from { font-size:12px; font-weight:500; }
.tree-price-main strong { font-size:23px; font-weight:750; letter-spacing:-.7px; }
.tree-price-decimal { font-size:17px; font-weight:650; margin-left:-2px; }
.tree-price-ticket { width:15px; height:15px; align-self:center; }
.tree-promotion del { display:block; margin-top:6px; font-size:12px; line-height:13px; }
.tree-event { display:flex; flex-direction:column; align-items:flex-end; gap:7px; margin-left:10px; white-space:nowrap; font-size:11px; line-height:1.2; }
.tree-event strong { font-size:11px; font-weight:700; }
.tree-product-info { padding:0 15px 13px; }
.tree-payment-line { display:flex; align-items:center; gap:6px; padding:7px 0; font-size:13px; }
.tree-payment-line .icon { width:19px; height:19px; color:#4cb6ac; }
.tree-payment-line strong { color:#bf1c4f; font-weight:500; }
.tree-payment-line small { margin-left:auto; color:#939393; font-size:8px; white-space:nowrap; }
.tree-coupon-chips { display:flex; align-items:center; position:relative; width:100%; gap:5px; white-space:nowrap; overflow:hidden; padding:1px 20px 1px 0; text-align:left; }
.tree-coupon-chips>span { flex:none; display:flex; align-items:center; gap:4px; border:1px solid #f2dce5; border-radius:5px; padding:2px 5px; font-size:12px; font-weight:500; color:#c71950; line-height:1; }
.tree-coupon-chips .icon { width:14px; height:14px; }
.tree-coupon-chips .tree-chip-arrow { position:absolute; right:0; width:20px; height:26px; padding-left:6px; color:#888; background:#fff; box-shadow:-8px 0 10px #fffc; }
.tree-title-row { display:flex; align-items:flex-start; gap:9px; margin-top:12px; }
.tree-title-row h1 { font-size:14px; font-weight:500; line-height:1.38; margin:0; flex:1; }
.tree-save { flex:0 0 25px; display:grid; place-items:center; min-height:30px; }
.tree-save[aria-pressed=true] { color:var(--tree-pink); }
.tree-save[aria-pressed=true] svg { fill:#ffe7ef; }
.tree-rating { display:flex; align-items:center; gap:5px; margin-top:6px; font-size:11.5px; color:#5c5c5c; }
.tree-rating strong { color:#111; font-weight:650; }
.tree-star { fill:#ffbc00; stroke:none; width:15px; height:15px; }
.tree-rating-count { color:#3a69a6; }
.tree-rating-divider { color:#ddd; margin:0 1px; }
.tree-divider { height:8px; background:var(--tree-gray); }
.tree-info-row { display:flex; width:calc(100% - 30px); margin:0 15px; align-items:center; min-height:68px; text-align:left; border-bottom:1px solid #f0f0f0; gap:9px; padding:15px 0; }
.tree-info-row>.icon:first-child { width:20px; height:20px; }
.tree-info-row>.icon:last-child { width:16px; height:16px; margin-left:auto; color:#888; }
.tree-shipping>span { flex:1; font-size:13px; line-height:1.5; }
.tree-shipping-top { display:block; color:var(--tree-teal); font-size:14px; }
.tree-shipping del { color:#666; font-size:13px; }
.tree-delivery { display:block; color:#111; }
.tree-size-preview { display:flex; gap:4px; }
.tree-size-tile { display:grid; place-items:center; flex:none; width:28px; height:28px; border-radius:4px; background:#f5f5f5; color:#104a2a; font-size:8.5px; font-weight:850; letter-spacing:-.7px; white-space:nowrap; }
.tree-variants-row { min-height:64px; padding:14px 0; gap:9px; }
.tree-variants-row>[data-tree-selected-label] { font-size:12px; color:#646464; flex:1; white-space:nowrap; }
.tree-protection { display:block; width:100%; overflow:hidden; text-align:left; padding:14px 15px 15px; }
.tree-protection-heading { display:flex; align-items:center; color:#825818; font-size:14px; gap:9px; }
.tree-protection-heading>.icon:last-child { margin-left:auto; width:16px; height:16px; color:#888; }
.tree-protection-grid { display:grid; grid-template-columns:1fr 1fr; gap:6px 18px; overflow:hidden; padding:12px 0 0 29px; font-size:12px; white-space:nowrap; color:#202020; mask-image:linear-gradient(to right,#000 90%,transparent); }
.tree-protection-grid>span { display:flex; gap:4px; align-items:center; }
.tree-protection-grid .icon { width:14px; height:14px; color:#825818; stroke-width:2.2; }
.tree-section-title { display:flex; align-items:center; justify-content:space-between; width:100%; padding:17px 15px 12px; }
.tree-section-title h2,.tree-creators h2,.tree-description>h2 { margin:0; font-weight:650; font-size:17px; line-height:1.3; }
.tree-section-title>.icon { width:17px; height:17px; color:#888; }
.tree-offer-track { display:flex; overflow:auto; scrollbar-width:none; gap:8px; padding:0 15px 18px; }
.tree-offer-track::-webkit-scrollbar,.tree-creator-track::-webkit-scrollbar { display:none; }
.tree-coupon-card { display:flex; flex:0 0 302px; min-width:0; height:61px; align-items:center; color:#137b7e; background:#effbfc; border:1px solid #d0e8e9; border-radius:8px; overflow:hidden; }
.tree-coupon-category { position:relative; display:flex; flex:none; width:63px; height:100%; align-items:center; justify-content:center; flex-direction:column; gap:2px; border-right:1px dashed #c9e5e6; font-size:11px; font-weight:600; }
.tree-coupon-category::before,.tree-coupon-category::after { content:''; width:6px; height:6px; border-radius:50%; border:1px solid #d0e8e9; background:#fff; position:absolute; right:-4px; }
.tree-coupon-category::before { top:-4px; }
.tree-coupon-category::after { bottom:-4px; }
.tree-coupon-category .icon { width:22px; height:22px; }
.tree-coupon-copy { padding:0 10px; min-width:0; display:flex; flex-direction:column; gap:4px; white-space:nowrap; }
.tree-coupon-copy strong { font-size:13px; font-weight:650; }
.tree-coupon-copy>span { font-size:10px; color:#111; }
.tree-coupon-card>button { flex:none; margin-left:auto; margin-right:7px; background:#04bbb9; color:#fff; font-size:12px; line-height:22px; border-radius:30px; padding:0 7px; font-weight:600; }
.tree-coupon-card>button:disabled { background:#b8dfdc; color:#187f7d; cursor:default; }
.tree-shipping-coupon { background:#fff1f6; border-color:#f2dce5; color:#c71950; flex-basis:240px; }
.tree-shipping-coupon .tree-coupon-category { border-color:#f2dce5; }
.tree-shipping-coupon .tree-coupon-category::before,.tree-shipping-coupon .tree-coupon-category::after { border-color:#f2dce5; }
.tree-bundle-offer { display:flex; align-items:center; justify-content:space-between; width:calc(100% - 30px); margin:0 15px; padding:17px 0; border-top:1px solid #f0f0f0; text-align:left; gap:10px; }
.tree-bundle-offer strong { font-size:13px; font-weight:650; }
.tree-bundle-offer .icon { color:#888; width:18px; height:18px; }
.tree-creators { padding:17px 0 16px; }
.tree-creators h2 { padding:0 15px; margin-bottom:16px; font-size:16px; }
.tree-creator-track { display:flex; gap:8px; padding:0 15px; overflow-x:auto; scrollbar-width:none; scroll-snap-type:x proximity; scroll-padding-inline:15px; }
.tree-creator-card { position:relative; width:110px; height:145px; flex:0 0 110px; scroll-snap-align:start; overflow:hidden; border-radius:8px; background:#eee; text-align:left; }
.tree-creator-poster { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; }
.tree-creator-card::after { content:''; position:absolute; left:0; right:0; bottom:0; height:45px; background:linear-gradient(transparent,#0006); pointer-events:none; }
.tree-creator-sprite { background-repeat:no-repeat; cursor:default; }
.tree-creator-sprite::after { display:none; }
.tree-creator-play { position:absolute; top:8px; left:8px; width:22px; height:22px; border-radius:50%; background:#6667; display:grid; place-items:center; color:#fff; }
.tree-creator-play .icon { width:11px; height:13px; fill:currentColor; stroke:none; }
.tree-creator-caption { position:absolute; bottom:10px; left:8px; right:7px; color:#fff; display:flex; align-items:center; gap:4px; z-index:1; font-size:11px; font-weight:500; }
.tree-creator-caption>span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tree-creator-avatar { width:17px; height:17px; border-radius:50%; }
.tree-creator-unavailable { position:absolute; left:5px; right:5px; top:5px; color:#fff; border-radius:4px; background:#000a; padding:3px 2px; text-align:center; font-size:7px; white-space:nowrap; }
.tree-reviews { padding:17px 15px 15px; }
.tree-reviews-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.tree-reviews-heading h2 { margin:0; font-size:14px; font-weight:650; line-height:20px; display:flex; gap:4px; align-items:center; white-space:nowrap; letter-spacing:-.25px; }
.tree-reviews-heading .tree-star { width:14px; height:14px; }
.tree-review-separator { color:#dedede; font-weight:400; }
.tree-reviews-heading>button { display:flex; align-items:center; color:#999; font-size:10px; white-space:nowrap; flex:none; gap:5px; }
.tree-reviews-heading>button>.icon { width:12px; height:12px; }
.tree-review-origin { margin:5px 0 15px; color:#999; font-size:9px; line-height:1.3; }
.tree-review { display:flex; align-items:flex-start; gap:12px; position:relative; margin-bottom:14px; }
.tree-review:last-child { margin-bottom:0; }
.tree-review-main { flex:1; min-width:0; }
.tree-review-meta { display:flex; align-items:center; gap:5px; margin-bottom:6px; color:#999; font-size:12px; white-space:nowrap; }
.tree-review-meta>img { width:22px; height:22px; border-radius:50%; object-fit:cover; margin-right:0; }
.tree-review-avatar-empty { width:22px; height:22px; flex:none; border-radius:50%; background:#f0f0f0; }
.tree-review-stars { display:flex; align-items:center; gap:1px; }
.tree-review-stars .tree-star { width:13px; height:13px; }
.tree-review-author { display:block; max-width:75px; overflow:hidden; text-overflow:ellipsis; color:#777; font-size:10px; }
.tree-review-dot { color:#bbb; margin:0 1px; }
.tree-review-text { position:relative; }
.tree-review-copy { font-size:13.3px; line-height:1.4; max-height:5.6em; overflow:hidden; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; }
.tree-review-copy.is-expanded { max-height:none; -webkit-line-clamp:unset; }
.tree-review-label { color:#999; }
.tree-review-expand { position:absolute; right:0; bottom:0; font-size:13.3px; font-weight:650; padding:0; margin:0; line-height:1.4; background:#fff; }
.tree-review-expand::before { content:'…'; position:absolute; right:100%; bottom:0; padding-left:2px; background:#fff; }
.tree-review-text.is-expanded .tree-review-expand { position:static; display:inline-block; margin-top:2px; }
.tree-review-text.is-expanded .tree-review-expand::before { display:none; }
.tree-review-photo { position:relative; flex:0 0 76px; width:76px; height:76px; overflow:hidden; border-radius:7px; margin-top:0; }
.tree-review-photo img { display:block; width:100%; height:100%; object-fit:cover; }
.tree-review-photo>span { position:absolute; right:4px; bottom:3px; color:#fff; font-size:11px; font-weight:650; text-shadow:0 1px 3px #000; }
.tree-review-full { margin-top:20px; padding-top:16px; border-top:1px solid #eee; }
.tree-review-full .tree-review-copy { max-height:none; -webkit-line-clamp:unset; }
html.tree-reviews-active { overflow:hidden; }
html.tree-reviews-active,html.tree-reviews-active body,html.tree-reviews-restoring,html.tree-reviews-restoring body { overflow-anchor:none; }
.tree-reviews-active .tree-tabs,.tree-reviews-active .tree-top { display:none!important; }
.tree-full-reviews { position:fixed; z-index:35; top:0; left:0; right:0; margin-inline:auto; width:100%; max-width:440px; height:100vh; height:100dvh; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:none; background:#fff; color:#111; }
.tree-full-reviews::-webkit-scrollbar { display:none; }
.tree-full-reviews-toolbar { position:sticky; top:0; z-index:2; background:#fff; border-bottom:1px solid #f3f3f3; }
.tree-full-reviews-header { display:flex; height:44px; align-items:center; justify-content:space-between; padding:0 13px; gap:8px; }
.tree-full-reviews-header h2 { display:flex; align-items:center; justify-content:center; gap:5px; font-size:15px; font-weight:700; margin:0; flex:1; }
.tree-full-reviews-header h2 .tree-star { width:15px; height:15px; }
.tree-full-reviews-back,.tree-full-reviews-cart { display:grid; place-items:center; flex:none; width:28px; height:32px; }
.tree-full-reviews-back .icon { width:21px; height:21px; stroke-width:2; }
.tree-full-reviews-cart .icon { width:23px; height:23px; }
.tree-full-reviews-origin { margin:0; padding:0 15px 8px; font-size:10px; line-height:1.35; text-align:center; color:#888; }
.tree-full-reviews-filters { display:flex; flex-wrap:wrap; gap:6px; padding:6px 13px 11px; }
.tree-full-review-filter { display:flex; align-items:center; gap:4px; padding:5px 8px; background:#f3f3f3; border:1px solid transparent; border-radius:24px; font-size:12px; line-height:16px; white-space:nowrap; }
.tree-full-review-filter[aria-pressed=true] { border-color:#222; background:#ededed; }
.tree-full-review-filter .icon { width:13px; height:13px; }
.tree-full-review-filter .tree-full-review-star { fill:#ffbc00; stroke:none; }
.tree-full-reviews-content { padding:0 15px 90px; }
.tree-full-reviews-sortbar { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:15px 0; font-size:11px; line-height:1.3; color:#999; }
.tree-full-reviews-sortbar>span:first-child { flex:1; }
.tree-full-reviews-sortbar>button { display:flex; align-items:center; gap:4px; flex:none; font-size:11px; color:#222; }
.tree-full-reviews-sortbar>button .icon { width:12px; height:12px; }
.tree-full-reviews-sortbar>[data-tree-review-source-order] { flex:none; font-size:11px; color:#555; }
.tree-full-review { padding:0 0 17px; margin:0 0 15px; border-bottom:1px solid #ececec; }
.tree-full-review:last-child { margin-bottom:0; }
.tree-full-review-author { display:flex; align-items:flex-start; gap:7px; margin-bottom:8px; }
.tree-full-review-avatar { width:24px; height:24px; flex:none; border-radius:50%; object-fit:cover; margin-top:2px; }
.tree-full-review-avatar-empty { background:#f0f0f0; }
.tree-full-review-author-info { min-width:0; }
.tree-full-review-name { display:block; font-size:14px; line-height:17px; font-weight:500; }
.tree-full-review-metadata { display:flex; align-items:center; gap:5px; color:#999; font-size:12px; line-height:16px; margin-top:2px; }
.tree-full-review-stars { display:flex; align-items:center; gap:1px; }
.tree-full-review-star { width:13px; height:13px; fill:#ffbc00; stroke:none; }
.tree-full-review-star.is-empty { fill:#dedede; }
.tree-full-review-dot { color:#aaa; }
.tree-full-review-copy { font-size:14px; line-height:1.3; white-space:pre-line; overflow-wrap:anywhere; }
.tree-full-review-photos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin-top:8px; }
.tree-full-review-photo { display:block; min-width:0; width:100%; aspect-ratio:1; overflow:hidden; border-radius:9px; background:#f4f4f4; }
.tree-full-review-photo>img { display:block; width:100%; height:100%; object-fit:cover; }
.tree-full-review-reply { position:relative; margin-top:8px; padding:14px; background:#f3f3f3; color:#888; font-size:13.5px; line-height:1.38; }
.tree-full-review-reply-text { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; max-height:2.76em; white-space:pre-line; overflow-wrap:anywhere; }
.tree-full-review-reply-text>strong { font-weight:500; }
.tree-full-review-reply.is-expanded .tree-full-review-reply-text,.tree-full-review-reply.is-captured-excerpt .tree-full-review-reply-text { display:block; -webkit-line-clamp:unset; max-height:none; }
.tree-full-review-reply-expand { position:absolute; right:14px; bottom:14px; background:#f3f3f3; color:#111; font-size:13.5px; font-weight:500; line-height:1.38; }
.tree-full-review-reply-expand::before { content:'…'; position:absolute; right:100%; padding-left:2px; background:#f3f3f3; }
.tree-full-review-reply.is-expanded .tree-full-review-reply-expand { position:static; margin-top:3px; }
.tree-full-review-reply.is-expanded .tree-full-review-reply-expand::before { display:none; }
.tree-full-review-foot { display:flex; align-items:center; justify-content:space-between; gap:10px; color:#999; font-size:12px; line-height:18px; margin-top:16px; }
.tree-full-review-likes { display:flex; align-items:center; gap:4px; }
.tree-full-review-likes .icon { width:19px; height:19px; }
.tree-full-reviews-empty { margin:25px 0; color:#888; text-align:center; font-size:13px; }
.tree-full-reviews-end { margin:16px 0 0; color:#999; text-align:center; font-size:10px; line-height:1.4; }
.tree-full-reviews-top { position:fixed; z-index:3; bottom:88px; right:max(13px,calc((100vw - 440px)/2 + 13px)); display:grid; place-items:center; width:37px; height:37px; border-radius:50%; background:#fff; box-shadow:0 1px 12px #0001; }
.tree-source-store { padding:17px 15px; }
.tree-source-store-main { display:flex; align-items:center; gap:12px; }
.tree-source-store-avatar { display:block; width:56px; height:56px; flex:none; border-radius:50%; object-fit:cover; background:#f7f5f0; }
.tree-source-store-details { flex:1; min-width:0; }
.tree-source-store h2 { margin:0; font-size:16px; font-weight:650; }
.tree-source-store p { margin:5px 0 0; color:#888; font-size:10px; }
.tree-source-store-main>button { flex:none; margin-left:auto; color:#fff; background:var(--tree-pink); border-radius:24px; padding:8px 16px; font-size:13px; }
.tree-source-store-metrics { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; margin-top:14px; }
.tree-source-store-metrics p { margin:0; font-size:12px; line-height:1.45; color:#888; }
.tree-source-store-metrics strong { color:#111; font-weight:700; white-space:nowrap; }
.tree-description { padding:18px 15px 10px; }
.tree-description>h2 { margin:0 0 16px; font-size:17px; }
.tree-description h3 { font-weight:500; font-size:16px; margin:0 0 12px; line-height:1.3; }
.tree-specs { margin:0; font-size:13px; line-height:1.5; }
.tree-specs>div { display:grid; grid-template-columns:105px 1fr; gap:10px; margin-bottom:3px; }
.tree-specs dt { color:#999; }
.tree-specs dd { margin:0; color:#555; }
.tree-specs-more { font-size:13px; color:#35649f; margin-top:9px; }
.tree-description .tree-video-heading { margin-top:36px; margin-bottom:12px; }
.tree-description-video { width:100%; aspect-ratio:1.65; display:grid; place-items:center; position:relative; overflow:hidden; border-radius:8px; background:#000; }
.tree-description-video img { position:absolute; width:100%; height:100%; object-fit:contain; }
.tree-description-video>.icon { width:48px; height:48px; color:#fff; fill:#fff; stroke:none; position:relative; filter:drop-shadow(0 1px 5px #0002); }
.tree-description .tree-description-heading { margin-top:24px; margin-bottom:17px; }
.tree-description-copy { font-size:13px; line-height:1.47; color:#222; }
.tree-description-copy h4 { margin:0 0 13px; font-size:14px; font-weight:700; text-align:center; }
.tree-description-copy p { margin:0 0 11px; }
.tree-description-copy strong { font-weight:650; }
.tree-description-copy ul { padding-left:11px; margin:0 0 11px; }
.tree-description-copy li { padding-left:0; }
.tree-description-chart { display:block; margin-top:5px; width:100%; }
.tree-description-chart img { display:block; width:100%; height:auto; }
.tree-tabs { position:fixed; top:0; left:50%; transform:translateX(-50%); display:flex; justify-content:space-around; align-items:stretch; width:100%; max-width:440px; height:44px; background:#fff; border-bottom:1px solid #eee; z-index:30; }
.tree-tabs button { position:relative; flex:1; padding:0 10px; font-size:13px; font-weight:600; color:#777; }
.tree-tabs [aria-current=true] { color:#111; }
.tree-tabs [aria-current=true]::after { content:''; position:absolute; height:2px; background:#111; bottom:0; left:12px; right:12px; }
.tree-buybar { display:flex; align-items:center; gap:8px; position:fixed; bottom:0; left:50%; transform:translateX(-50%); width:100%; max-width:440px; padding:9px 10px max(10px,env(safe-area-inset-bottom)); background:#fff; z-index:40; border-top:1px solid #f3f3f3; }
.tree-bottom-icon { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:3px; width:28px; flex:none; font-size:9px; }
.tree-bottom-icon .icon { width:20px; height:20px; }
.tree-cart-button { width:54px; height:42px; display:grid; place-items:center; border-radius:30px; background:#feeff2; color:#da164b; margin-left:5px; }
.tree-cart-button .icon { width:24px; height:24px; }
.tree-buy-button { display:flex; align-items:center; justify-content:center; flex:1; flex-direction:column; background:var(--tree-pink); border-radius:30px; color:#fff; height:42px; min-width:0; gap:1px; }
.tree-buy-button strong { font-size:16px; font-weight:650; line-height:18px; }
.tree-buy-button span { color:#ffe4ed; font-size:10px; line-height:12px; }
.tree-bottom-clearance { height:85px; }
.tree-top { position:fixed; z-index:25; bottom:88px; right:max(13px,calc((100vw - 440px)/2 + 13px)); width:40px; height:40px; border-radius:50%; background:#fff; box-shadow:0 1px 12px #0001; display:grid; place-items:center; }
.tree-toast { position:fixed; z-index:100; bottom:100px; left:50%; transform:translateX(-50%); padding:12px 16px; max-width:340px; width:max-content; border-radius:8px; color:#fff; background:#202020ed; font-size:13px; }
.tree-sheet { border:none; padding:18px 16px 24px; width:100%; max-width:440px; max-height:85dvh; overflow:auto; margin:auto auto 0; border-radius:18px 18px 0 0; background:#fff; color:#111; }
.tree-sheet::backdrop,.tree-lightbox::backdrop { background:#0008; }
.tree-sheet-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }
.tree-sheet-header h2 { margin:0; font-size:18px; font-weight:650; }
.tree-close { display:grid; place-items:center; width:32px; height:32px; }
.tree-variant-intro { display:flex; align-items:center; gap:14px; margin-bottom:18px; }
.tree-variant-intro img { width:80px; height:80px; border-radius:7px; object-fit:cover; }
.tree-variant-intro strong { color:var(--tree-pink); font-size:21px; }
.tree-variant-intro p { margin:5px 0; font-size:13px; color:#777; }
.tree-sheet-variants { padding:0; overflow:visible; border-radius:22px 22px 0 0; }
.tree-sheet-variants [data-tree-sheet-body] { max-height:85dvh; overflow:auto; padding:15px 15px 24px; border-radius:22px 22px 0 0; background:#fff; scrollbar-width:none; }
.tree-sheet-variants [data-tree-sheet-body]::-webkit-scrollbar { display:none; }
.tree-sheet-variants .tree-sheet-header { position:absolute; right:12px; bottom:calc(100% + 10px); display:block; margin:0; }
.tree-sheet-variants .tree-sheet-header h2 { display:none; }
.tree-sheet-variants .tree-close { width:26px; height:26px; background:#555b; border-radius:50%; color:#fff; }
.tree-sheet-variants .tree-close .icon { width:18px; height:18px; stroke-width:2.3; }
.tree-sheet-variants .tree-variant-intro { align-items:flex-start; gap:12px; min-height:65px; margin-bottom:12px; }
.tree-sheet-variants .tree-variant-intro>img { width:65px; height:65px; flex:0 0 65px; border-radius:11px; }
.tree-variant-pricing { flex:1; min-width:0; padding-top:2px; }
.tree-variant-price-row { display:flex; height:27px; align-items:baseline; gap:3px; white-space:nowrap; color:#de0844; }
.tree-variant-discount { align-self:center; padding:2px 4px; border-radius:5px; background:#fd2c54; color:#fff; font-size:13px; line-height:16px; font-weight:500; }
.tree-variant-currency { font-size:12px; font-weight:500; }
.tree-sheet-variants .tree-variant-price-row strong { font-size:24px; line-height:1; font-weight:700; color:#de0844; letter-spacing:-.6px; }
.tree-variant-decimal { margin-left:-2px; font-size:14px; font-weight:500; }
.tree-variant-price-ticket { width:14px; height:14px; align-self:center; }
.tree-variant-original { display:block; margin:2px 0 6px; color:#999; font-size:12px; line-height:14px; }
.tree-variant-perks { display:flex; align-items:center; gap:4px; white-space:nowrap; }
.tree-variant-perks>span { display:flex; align-items:center; gap:2px; padding:1px 3px; font-size:10.5px; font-weight:500; line-height:13px; border:1px solid; border-radius:4px; }
.tree-variant-perks .icon { width:11px; height:11px; }
.tree-variant-free-shipping { color:#137b7e; border-color:#d8e9e9!important; }
.tree-variant-coupon { color:#ce1050; border-color:#f5e1e7!important; }
.tree-variant-event { position:relative; display:flex; align-items:center; gap:4px; width:100%; height:29px; padding:0 7px; overflow:hidden; isolation:isolate; border-radius:9px; background:linear-gradient(100deg,#f91e56 0%,#ff315f 52%,#ff2962 100%); }
.tree-variant-event::before { content:'11.11'; position:absolute; z-index:-1; left:43%; top:-13px; color:#ff93b0; opacity:.42; font-size:46px; font-weight:700; letter-spacing:-3px; line-height:1; transform:rotate(-7deg); }
.tree-variant-event>.icon { width:14px; height:16px; color:#fff; stroke-width:2.4; }
.tree-variant-event>strong { font-size:13.5px; font-weight:500; line-height:1; white-space:nowrap; }
.tree-variant-event>span { margin-left:auto; font-size:11.5px; line-height:1; white-space:nowrap; }
.tree-variant-options-heading { margin:8px 0 12px; font-size:14px; line-height:18px; font-weight:500; }
.tree-variant-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.tree-variant-choice { border:1px solid #e7e7e7; background:#f8f8f8; display:flex; flex-direction:column; align-items:flex-start; gap:7px; padding:13px 11px; border-radius:6px; }
.tree-variant-choice strong { font-size:14px; }
.tree-variant-choice span { font-size:10px; color:#777; }
.tree-variant-choice[aria-pressed=true] { border-color:var(--tree-pink); color:var(--tree-pink); background:#fff0f5; }
.tree-quantity { display:flex; align-items:center; justify-content:space-between; margin-top:20px; font-size:14px; }
.tree-quantity>div { display:flex; align-items:center; border:1px solid #e8e8e8; border-radius:4px; overflow:hidden; }
.tree-quantity button { width:32px; height:30px; background:#f6f6f6; font-size:18px; }
.tree-quantity button:disabled { color:#ccc; cursor:default; }
.tree-quantity output { width:34px; text-align:center; font-size:13px; }
.tree-preview-total { display:flex; justify-content:space-between; gap:15px; align-items:center; font-size:13px; margin-top:20px; }
.tree-preview-total strong { font-size:16px; color:var(--tree-pink); white-space:nowrap; }
.tree-preview-total small { display:block; margin-top:5px; color:var(--tree-teal); font-size:10px; }
.tree-preview-disclosure { font-size:12px; line-height:1.5; color:#777; margin:18px 0; }
.tree-sheet-confirm { display:block; width:100%; border-radius:30px; padding:14px; margin-top:15px; background:var(--tree-pink); color:#fff; font-size:15px; font-weight:650; }
.tree-sheet p { line-height:1.55; font-size:14px; }
.tree-lightbox { width:100vw; height:100dvh; max-width:none; max-height:none; border:0; padding:60px 0; margin:0; color:#fff; background:#111; }
.tree-lightbox[open] { display:flex; align-items:center; justify-content:center; flex-direction:column; }
.tree-lightbox [data-tree-lightbox-body] { width:100%; max-width:800px; display:flex; justify-content:center; align-items:center; min-height:0; flex:1; }
.tree-lightbox img,.tree-lightbox video { max-width:100%; max-height:calc(100dvh - 145px); object-fit:contain; }
.tree-lightbox-close { position:absolute; right:18px; top:18px; z-index:1; width:36px; height:36px; display:grid; place-items:center; }
.tree-lightbox-controls { display:flex; align-items:center; gap:35px; padding:20px 0 0; font-size:14px; }
.tree-lightbox-controls button { font-size:35px; width:44px; height:44px; }
.tree-price-animate { animation:tree-price-pulse .55s ease; }
@keyframes tree-price-pulse { 50% { transform:scale(1.07); color:#fff; } }
@media(max-width:350px) { .tree-from { font-size:10px; } .tree-price-main strong { font-size:21px; } .tree-off { font-size:12px; } .tree-price-decimal { font-size:14px; } .tree-event,.tree-event strong { font-size:9px; } .tree-size-tile { width:23px; font-size:8px; } .tree-variants-row>[data-tree-selected-label] { font-size:10px; } .tree-protection-grid { font-size:11px; } .tree-reviews-heading h2 { font-size:11.5px; } .tree-reviews-heading>button { font-size:9px; gap:2px; } .tree-reviews-heading { gap:3px; } .tree-review-meta { gap:3px; } .tree-source-store-main { gap:8px; } .tree-source-store-main>button { padding:8px 12px; } .tree-source-store-details p { font-size:9px; } .tree-bundle-offer strong { font-size:11.5px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } }
