/* Product detail: shared storefront palette, readable type and balanced cards. */
.tk-product-detail {
  --pd-navy:#0b2736; --pd-muted:#5e7280; --pd-orange:#ff6900; --pd-border:#dfe7ed;
  color:var(--pd-navy); background:#f5f7f9; padding:28px 0 52px;
  font:16px/1.7 Arial,Helvetica,sans-serif;
}
.tk-product-detail *, .tk-product-detail *::before, .tk-product-detail *::after { box-sizing:border-box; }
.tk-product-detail [hidden] { display:none!important; }
.tk-product-detail :is(button,input,select,textarea) { font-family:inherit; }
.tk-product-detail :is(a,button,input,select,textarea,[tabindex]):focus-visible { outline:3px solid #ffad73; outline-offset:3px; }
.tk-pd-container { width:min(1280px,calc(100% - 48px)); margin:0 auto; }
.tk-pd-breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:6px 10px; margin-bottom:24px; color:var(--pd-muted); font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.tk-pd-breadcrumbs a { color:inherit; }
.tk-pd-breadcrumbs a:hover { color:#c74f00; }
.tk-pd-breadcrumbs [aria-current] { color:var(--pd-navy); }
.tk-pd-main { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); align-items:start; gap:28px; }
.tk-pd-gallery, .tk-pd-purchase { min-width:0; border:1px solid var(--pd-border); border-radius:20px; background:#fff; box-shadow:0 8px 28px #0b273605; }
.tk-pd-gallery { padding:22px; }
.tk-pd-gallery-header { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:30px; margin-bottom:14px; font-size:14px; font-weight:600; color:var(--pd-muted); }
.tk-pd-gallery-count { flex:none; display:inline-flex; justify-content:center; min-width:52px; padding:5px 10px; border-radius:8px; background:#f0f4f7; color:var(--pd-navy); font-size:12px; line-height:1.5; font-variant-numeric:tabular-nums; }
.tk-pd-image-stage { position:relative; aspect-ratio:1; min-width:0; overflow:hidden; border:1px solid #edf1f4; border-radius:14px; background:#fff; }
.tk-pd-image-open { display:block; position:relative; width:100%; height:100%; margin:0; padding:0; border:0; border-radius:inherit; background:#fff; color:var(--pd-navy); cursor:zoom-in; }
/* The legacy mobile zoom rule sizes icon buttons; this trigger is the full photo. */
body.store-layout.tn-app-shell[data-page=product] .tk-product-detail .tk-pd-image-open { width:100%!important; height:100%!important; max-width:none; max-height:none; min-width:0; min-height:0; }
.tk-pd-main-image { display:block; width:100%; height:100%; max-height:580px; padding:24px; object-fit:contain; object-position:center; }
.tk-pd-zoom-trigger { position:absolute; right:14px; bottom:14px; display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--pd-border); border-radius:12px; background:#fff; box-shadow:0 4px 14px #0b27360b; }
.tk-pd-zoom-trigger .icon { width:21px; height:21px; }
.tk-pd-gallery-arrow { position:absolute; top:50%; display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid var(--pd-border); border-radius:50%; background:#ffffffed; color:var(--pd-navy); box-shadow:0 4px 16px #0b27360d; font-size:22px; line-height:1; transform:translateY(-50%); cursor:pointer; }
.tk-pd-gallery-arrow.is-previous { left:12px; }
.tk-pd-gallery-arrow.is-next { right:12px; }
.tk-pd-gallery-arrow:hover { border-color:#ffb47e; color:#c74f00; }
.tk-pd-thumbs, .tk-pd-zoom-thumbs { display:flex; justify-content:flex-start; gap:10px; min-width:0; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#becbd5 transparent; }
.tk-pd-thumbs { margin-top:18px; padding:2px 2px 8px; }
.tk-pd-thumbs button, .tk-pd-zoom-thumbs button { display:grid; place-items:center; flex:0 0 76px; width:76px; height:76px; margin:0; padding:6px; border:1px solid #d8e2e9; border-radius:12px; background:#fff; cursor:pointer; }
.tk-pd-thumbs button.selected, .tk-pd-zoom-thumbs button.selected { border:2px solid var(--pd-orange); padding:5px; box-shadow:0 0 0 2px #ff690012; }
.tk-pd-thumbs img, .tk-pd-zoom-thumbs img { display:block; width:100%; height:100%; object-fit:contain; }
.tk-pd-gallery-hint { display:flex; align-items:center; justify-content:center; gap:8px; margin:16px 0 0; padding-top:16px; border-top:1px solid #edf1f4; color:var(--pd-muted); font-size:14px; line-height:1.6; text-align:center; }
.tk-pd-gallery-hint .icon { width:18px; height:18px; flex:none; }
.tk-pd-purchase { padding:26px; }
.tk-pd-overline { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; margin-bottom:16px; }
.tk-pd-brand { display:inline-flex; align-items:center; max-width:100%; padding:6px 10px; border:1px solid #e6edf2; border-radius:8px; background:#f8fafb; color:#3c5666; font-size:12px; font-weight:700; line-height:1.5; letter-spacing:.08em; text-transform:uppercase; overflow-wrap:anywhere; }
.tk-pd-stock { display:inline-flex; align-items:center; gap:7px; min-height:32px; padding:6px 10px; border-radius:8px; font-size:12px; font-weight:700; line-height:1.5; }
.tk-pd-stock::before { content:''; width:6px; height:6px; flex:none; border-radius:50%; background:currentColor; }
.tk-pd-stock.is-available { background:#ecf8f0; color:#237047; }
.tk-pd-stock.is-unavailable { background:#f1f4f6; color:#556c7a; }
.tk-product-detail h1 { margin:0 0 14px; color:var(--pd-navy); font:700 clamp(26px,2.3vw,34px)/1.3 Arial,Helvetica,sans-serif; letter-spacing:-.025em; overflow-wrap:anywhere; }
.tk-pd-review-summary { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; margin-bottom:18px; color:var(--pd-muted); font-size:14px; line-height:1.6; }
.tk-pd-review-summary>a { display:inline-flex; align-items:center; gap:7px; color:inherit; }
.tk-pd-review-summary>a:hover { color:#c74f00; }
.tk-pd-rating { font-weight:700; color:#a75a00; }
.tk-pd-summary-divider { width:1px; height:14px; background:#d6e0e7; }
.tk-pd-description-short { margin:0 0 18px; color:#4c6676; font-size:16px; line-height:1.8; overflow-wrap:anywhere; }
.tk-pd-identifiers { display:flex; flex-wrap:wrap; gap:8px 18px; margin-bottom:22px; color:var(--pd-muted); font-size:14px; line-height:1.6; }
.tk-pd-identifiers>span { min-width:0; overflow-wrap:anywhere; }
.tk-pd-identifiers strong { margin-left:5px; color:#354f60; font-weight:600; }
.tk-pd-buy-card { padding:20px; border:1px solid #e1e8ed; border-radius:16px; background:#f7f9fb; }
.tk-pd-price-box { display:flex; flex-direction:column; align-items:flex-start; gap:8px; margin:0 0 20px; }
.tk-pd-price-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; color:var(--pd-muted); font-size:14px; font-weight:600; line-height:1.5; }
.tk-pd-unit-badge { display:inline-flex; padding:4px 9px; border:1px solid #dfe7ed; border-radius:7px; background:#fff; color:#4c6676; font-size:12px; font-weight:600; line-height:1.5; }
.tk-pd-price { display:block; max-width:100%; color:var(--pd-navy); font-size:clamp(28px,3vw,40px); font-weight:700; letter-spacing:-.035em; line-height:1.2; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.tk-pd-price-box>small { color:var(--pd-muted); font-size:14px; line-height:1.6; }
.tk-product-detail .tk-pd-purchase-form { margin:0; }
.tk-pd-field { min-width:0; margin-bottom:18px; }
.tk-pd-field>label, .tk-pd-quantity>label { display:block; margin-bottom:8px; color:var(--pd-navy); font-size:14px; font-weight:600; line-height:1.5; }
.tk-product-detail .tk-pd-field :is(input,select,textarea) { display:block; width:100%; min-width:0; max-width:100%; min-height:48px; height:auto; padding:12px; border:1px solid #cddbe5; border-radius:10px; background:#fff; color:var(--pd-navy); font:16px/1.5 Arial,Helvetica,sans-serif; }
.tk-product-detail .tk-pd-field textarea { min-height:130px; resize:vertical; }
.tk-pd-field :is(input,select,textarea):focus { border-color:var(--pd-orange); box-shadow:0 0 0 3px #ff690014; }
.tk-pd-buy-row { display:grid; grid-template-columns:126px minmax(0,1fr); align-items:end; gap:12px; }
.tk-pd-quantity { min-width:0; }
.tk-pd-quantity>div { display:grid; grid-template-columns:36px minmax(0,1fr) 36px; align-items:stretch; height:52px; border:1px solid #cddbe5; border-radius:11px; overflow:hidden; background:#fff; }
.tk-pd-quantity button { display:grid; place-items:center; min-width:0; margin:0; padding:0; border:0; background:#fff; color:var(--pd-navy); font-size:22px; line-height:1; cursor:pointer; }
.tk-pd-quantity button:hover:enabled { background:#f0f4f7; }
.tk-pd-quantity button:disabled { color:#b0bec8; cursor:not-allowed; }
.tk-product-detail .tk-pd-quantity input { width:100%; min-width:0; height:100%; margin:0; padding:0 2px; border:0; border-radius:0; outline:0; background:#fff; color:var(--pd-navy); text-align:center; font-size:16px; font-weight:600; appearance:textfield; -moz-appearance:textfield; }
.tk-pd-quantity input::-webkit-inner-spin-button, .tk-pd-quantity input::-webkit-outer-spin-button { appearance:none; margin:0; }
.tk-product-detail .tk-pd-add { display:flex; align-items:center; justify-content:center; gap:9px; width:100%; min-width:0; min-height:52px; margin:0; padding:12px; border:1px solid var(--pd-orange); border-radius:11px; background:var(--pd-orange); color:#fff; font-size:16px; font-weight:700; line-height:1.5; text-align:center; cursor:pointer; transition:background .15s; }
body.store-layout.tn-app-shell[data-page=product] .tk-product-detail .tk-pd-add { min-height:52px!important; }
.tk-pd-add .icon { width:22px; height:22px; flex:none; filter:brightness(0) invert(1); }
.tk-product-detail .tk-pd-add:hover:enabled { background:#de5900; border-color:#de5900; }
.tk-product-detail .tk-pd-add:disabled { border-color:#dce5eb; background:#e5ebf0; color:#526a79; opacity:1; cursor:not-allowed; }
.tk-pd-add:disabled .icon { filter:none; opacity:.65; }
.tk-product-detail .tk-pd-exact-price { margin:16px 0 0; padding-top:14px; border-top:1px solid #dde6ed; color:#365264; font-size:14px; font-weight:600; line-height:1.7; overflow-wrap:anywhere; }
.tk-pd-stock-note { margin:6px 0 0; color:var(--pd-muted); font-size:14px; line-height:1.7; }
.tk-pd-purchase>.tk-compare-control { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:46px; margin:16px 0 0; padding:10px 12px; border:1px solid #dbe5ec; border-radius:11px; background:#fff; color:#365264; font-size:14px; font-weight:600; line-height:1.5; }
.tk-pd-purchase>.tk-compare-control .icon { width:19px; height:19px; flex:none; }
.tk-pd-purchase .tn-shipping-info { display:grid; grid-template-columns:24px minmax(0,1fr); align-items:start; gap:10px; margin:18px 0 0; padding:16px; border:1px solid #e1e8ed; border-radius:12px; background:#f8fafb; }
.tk-pd-purchase .tn-shipping-info__icon { display:grid; place-items:center; width:24px; height:24px; color:#c74f00; font-size:21px; line-height:1; }
.tk-pd-purchase .tn-shipping-info strong { color:#354f60; font-size:14px; font-weight:600; line-height:1.6; }
.tk-pd-purchase .tn-shipping-info p { margin:3px 0 0; color:#536d7d; font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
.tk-pd-purchase .tn-shipping-info small { display:block; margin-top:7px; color:#475569; font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
.tk-pd-secondary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:18px 0; }
.tk-pd-secondary a { display:flex; align-items:center; justify-content:center; gap:8px; min-width:0; min-height:48px; padding:11px 10px; border:1px solid var(--pd-border); border-radius:11px; background:#fff; color:#365264; font-size:14px; font-weight:600; line-height:1.6; text-align:center; overflow-wrap:anywhere; }
.tk-pd-secondary a:only-child { grid-column:1/-1; }
.tk-pd-secondary a:hover { border-color:#ffb47e; color:#c74f00; }
.tk-pd-secondary .icon { width:20px; height:20px; flex:none; }
.tk-pd-favorite-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px 16px; padding-bottom:16px; border-bottom:1px solid var(--pd-border); }
.tk-pd-favorite-row form { margin:0; }
.tk-pd-favorite-row button, .tk-pd-favorite-row>a { display:inline-flex; align-items:center; gap:7px; min-height:40px; margin:0; padding:4px 0; border:0; background:none; color:#4a6677; font-size:14px; line-height:1.6; cursor:pointer; }
.tk-pd-favorite-row .icon { width:18px; height:18px; flex:none; }
.tk-pd-favorite-row :is(button,a):hover { color:#c74f00; }
.tk-pd-information-note { display:flex; align-items:flex-start; gap:10px; margin-top:16px; color:var(--pd-muted); }
.tk-pd-information-note>.icon { flex:none; width:20px; height:20px; margin-top:2px; }
.tk-pd-information-note p { margin:0; font-size:14px; line-height:1.8; }
.tk-product-detail .tk-pd-information { margin-top:32px; border:1px solid var(--pd-border); border-radius:18px; overflow:hidden; background:#fff; scroll-margin-top:155px; }
.tk-product-detail .tk-pd-tab-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:0; padding:10px; border-bottom:1px solid var(--pd-border); background:#f7f9fb; }
.tk-product-detail .tk-pd-tab-nav button { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:7px; min-width:0; min-height:54px; margin:0; padding:12px 10px; border:1px solid transparent; border-radius:11px; background:transparent; color:#5b7280; font-size:15px; font-weight:600; line-height:1.5; text-align:center; white-space:normal; cursor:pointer; }
.tk-product-detail .tk-pd-tab-nav button.active { border-color:#f3d2bb; background:#fff; color:#c74f00; box-shadow:0 2px 8px #0b273604; }
.tk-product-detail .tk-pd-tab-nav button.active::after { display:none; }
.tk-pd-tab-nav button>span { display:inline-grid; place-items:center; min-width:24px; height:24px; padding:0 6px; border-radius:8px; background:#eaf0f4; color:#526c7c; font-size:12px; font-variant-numeric:tabular-nums; }
.tk-product-detail .tk-pd-panel { min-width:0; padding:30px; }
.tk-product-detail .tk-pd-panel h2 { margin:0 0 20px; color:var(--pd-navy); font-family:inherit; font-size:22px; font-weight:700; line-height:1.4; letter-spacing:-.02em; }
.tk-pd-description-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:30px; }
.tk-pd-prose { min-width:0; color:#435e6e; font-size:16px; line-height:1.9; overflow-wrap:anywhere; }
.tk-pd-prose :is(p,ul,ol,table) { margin:0 0 18px; }
.tk-pd-prose :is(ul,ol) { padding-left:22px; list-style:revert; }
.tk-pd-prose :is(h3,h4) { margin:24px 0 12px; color:var(--pd-navy); font-size:18px; font-weight:700; line-height:1.5; }
.tk-pd-prose img { max-width:100%; height:auto; }
.tk-pd-prose table { display:block; max-width:100%; overflow-x:auto; }
.tk-pd-documents { margin-top:24px; padding-top:22px; border-top:1px solid var(--pd-border); }
.tk-pd-documents a { display:flex; align-items:center; gap:10px; min-width:0; min-height:50px; margin-top:10px; padding:12px; border:1px solid var(--pd-border); border-radius:11px; background:#fafcfd; color:#365264; font-size:14px; line-height:1.6; }
.tk-pd-documents a>span { min-width:0; overflow-wrap:anywhere; }
.tk-pd-documents a>span:last-child { margin-left:auto; }
.tk-pd-documents .icon { width:20px; height:20px; flex:none; }
.tk-pd-detail-sidebar { display:grid; align-content:start; gap:20px; min-width:0; }
.tk-pd-detail-sidebar>div { min-width:0; padding:20px; border:1px solid #e0e8ee; border-radius:14px; background:#f7f9fb; }
.tk-product-detail .tk-pd-detail-sidebar h2 { margin-bottom:14px; font-size:17px; line-height:1.5; }
.tk-pd-detail-sidebar a { display:inline-flex; align-items:center; gap:8px; margin-top:14px; color:#c74f00; font-size:14px; font-weight:600; line-height:1.6; }
.tk-product-detail table { width:100%; border-collapse:collapse; color:var(--pd-navy); text-align:left; font-size:14px; line-height:1.7; }
.tk-product-detail :is(th,td) { padding:13px 15px; border-bottom:1px solid #e2eaf0; vertical-align:top; overflow-wrap:anywhere; }
.tk-product-detail th { width:42%; color:var(--pd-muted); font-weight:500; }
.tk-product-detail td { color:#294757; font-weight:600; }
.tk-product-detail tr:last-child>:is(th,td) { border-bottom:0; }
.tk-pd-detail-sidebar :is(th,td) { padding:9px 0; font-size:14px; }
.tk-pd-detail-sidebar td { padding-left:14px; }
.tk-pd-detail-sidebar dl { margin:0; }
.tk-pd-detail-sidebar dl>div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:12px; padding:9px 0; border-bottom:1px solid #e2eaf0; font-size:14px; line-height:1.7; }
.tk-pd-detail-sidebar dl>div:last-child { border:0; }
.tk-pd-detail-sidebar dt { color:var(--pd-muted); }
.tk-pd-detail-sidebar dd { margin:0; color:#294757; font-weight:600; text-align:right; overflow-wrap:anywhere; }
.tk-pd-detail-sidebar p { margin:14px 0 0; color:var(--pd-muted); font-size:14px; line-height:1.8; }
.tk-pd-spec-table { width:100%; border:1px solid var(--pd-border); border-radius:12px; overflow:hidden; }
.tk-pd-spec-table tbody tr:nth-child(odd) { background:#f7f9fb; }
.tk-pd-feedback-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:30px; }
.tk-pd-feedback-list { display:grid; gap:16px; min-width:0; }
.tk-pd-feedback-list article { min-width:0; padding:18px; border:1px solid var(--pd-border); border-radius:12px; font-size:16px; line-height:1.8; overflow-wrap:anywhere; }
.tk-pd-feedback-list article>div { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.tk-pd-feedback-list strong { font-weight:600; }
.tk-pd-feedback-list article>div>span { color:#a75a00; font-size:14px; }
.tk-pd-feedback-list article>div>.tk-pd-verified { display:inline-flex; align-items:center; gap:5px; padding:4px 8px; border-radius:7px; background:#edf8f0; color:#237047!important; font-size:12px!important; line-height:1.5; }
.tk-pd-feedback-list .tk-pd-verified .icon { width:16px; height:16px; }
.tk-pd-feedback-list p { margin:10px 0 0; color:#526b79; }
.tk-pd-empty { margin:0; padding:22px; border:1px dashed #cfdee8; border-radius:12px; color:var(--pd-muted); background:#fcfdfe; font-size:16px; line-height:1.8; }
.tk-pd-feedback-form { min-width:0; padding:24px; border:1px solid #e0e8ee; border-radius:14px; background:#f7f9fb; }
.tk-pd-feedback-form h3 { margin:0 0 22px; color:var(--pd-navy); font-size:18px; font-weight:700; line-height:1.5; }
.tk-pd-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; }
.tk-pd-field--wide { grid-column:1/-1; }
.tk-product-detail .tk-pd-submit { display:flex; align-items:center; justify-content:center; min-width:0; min-height:48px; max-width:100%; padding:12px 18px; border:1px solid var(--pd-orange); border-radius:10px; background:var(--pd-orange); color:#fff; font-size:16px; font-weight:600; line-height:1.5; cursor:pointer; }
.tk-pd-feedback-form>small { display:block; margin-top:12px; color:var(--pd-muted); font-size:14px; line-height:1.7; }
.tk-product-detail .tk-pd-feedback-notice { margin:0 0 18px; padding:14px 16px; border:1px solid #cde7d7; border-radius:10px; background:#eef9f2; color:#276e44; font-size:14px; line-height:1.8; }
.tk-product-detail .tk-pd-feedback-notice.is-error { border-color:#f0d0cd; background:#fff4f2; color:#a43b31; }
.tk-pd-related { margin-top:36px; }
.tk-pd-related-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
.tk-pd-related-heading h2 { margin:0; color:var(--pd-navy); font-size:24px; font-weight:700; line-height:1.4; }
.tk-pd-related-heading a { color:#c74f00; font-size:14px; font-weight:600; line-height:1.6; }
.tk-product-detail .tk-pd-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
/* Native dialog and its fallback both use the same unclipped gallery layout. */
.tk-product-detail .tk-pd-zoom:not([open]) { display:none; }
.tk-product-detail .tk-pd-zoom[open] { position:fixed; inset:0; z-index:10000; display:grid; grid-template-rows:auto minmax(0,1fr) auto; width:min(1280px,calc(100vw - 48px)); height:min(920px,calc(100dvh - 48px)); min-width:0; max-width:none; max-height:none; margin:auto; padding:0; border:1px solid #e3eaf0; border-radius:20px; overflow:hidden; background:#fff; color:var(--pd-navy); box-shadow:0 28px 100px #00111d59; }
.tk-product-detail .tk-pd-zoom.is-fallback[open] { width:100%; height:100dvh; margin:0; border-radius:0; }
.tk-pd-zoom::backdrop { background:#061724d9; backdrop-filter:blur(5px); }
.tk-pd-zoom-header { display:flex; align-items:center; gap:16px; min-width:0; padding:18px 22px; border-bottom:1px solid #e5ecf1; background:#fff; }
.tk-pd-zoom-header>div { flex:1; min-width:0; }
.tk-pd-zoom-header>div>span { display:block; margin-bottom:3px; color:var(--pd-muted); font-size:12px; font-weight:600; line-height:1.5; }
.tk-product-detail .tk-pd-zoom-header h2 { margin:0; color:var(--pd-navy); font-size:18px; font-weight:600; line-height:1.5; overflow-wrap:anywhere; }
.tk-pd-zoom-counter { flex:none; padding:6px 10px; border-radius:8px; background:#f0f4f7; color:#405d6e; font-size:14px; font-weight:600; line-height:1.5; font-variant-numeric:tabular-nums; }
.tk-pd-zoom-close { display:grid; place-items:center; flex:none; width:44px; height:44px; margin:0; padding:0; border:1px solid #dbe5ec; border-radius:11px; background:#f5f8fa; color:var(--pd-navy); cursor:pointer; }
.tk-pd-zoom-close .icon { width:22px; height:22px; }
.tk-pd-zoom-stage { position:relative; display:flex; align-items:center; justify-content:center; min-width:0; min-height:0; padding:20px 76px; background:#fff; overflow:hidden; touch-action:pan-y pinch-zoom; }
.tk-pd-zoom-stage>img { display:block; width:100%; height:100%; min-width:0; min-height:0; max-width:100%; max-height:100%; object-fit:contain; object-position:center; }
.tk-pd-zoom-arrow { position:absolute; top:50%; display:grid; place-items:center; width:48px; height:48px; margin:0; padding:0; border:1px solid #dbe5ec; border-radius:50%; background:#f5f8fa; color:var(--pd-navy); font-size:24px; line-height:1; transform:translateY(-50%); cursor:pointer; }
.tk-pd-zoom-arrow.is-previous { left:18px; }
.tk-pd-zoom-arrow.is-next { right:18px; }
.tk-pd-zoom-arrow:hover { border-color:#ffb47e; color:#c74f00; }
.tk-pd-zoom-thumbs { padding:16px 22px 18px; border-top:1px solid #e5ecf1; background:#f7f9fb; }
@media(min-width:1024px) { .tk-pd-gallery { position:sticky; top:24px; } }
@media(max-width:1100px) {
  .tk-pd-main { gap:22px; }
  .tk-pd-gallery, .tk-pd-purchase { padding:20px; border-radius:18px; }
  .tk-pd-buy-card { padding:17px; }
  .tk-pd-buy-row { grid-template-columns:118px minmax(0,1fr); gap:10px; }
  .tk-pd-quantity>div { grid-template-columns:32px minmax(0,1fr) 32px; }
  .tk-product-detail .tk-pd-add { font-size:14px; }
  .tk-pd-description-grid { gap:24px; }
}
@media(max-width:900px) {
  .tk-pd-main { grid-template-columns:1fr; gap:22px; }
  .tk-pd-gallery { width:100%; max-width:none; margin:0; }
  .tk-pd-image-stage { max-height:580px; }
  .tk-pd-purchase { width:100%; }
  .tk-pd-buy-row { grid-template-columns:142px minmax(0,1fr); }
  .tk-pd-quantity>div { grid-template-columns:40px minmax(0,1fr) 40px; }
  .tk-product-detail .tk-pd-add { font-size:16px; }
  .tk-pd-description-grid, .tk-pd-feedback-grid { grid-template-columns:1fr; }
  .tk-pd-detail-sidebar { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  .tk-product-detail { padding:20px 0 36px; }
  .tk-pd-container { width:calc(100% - 28px); }
  .tk-pd-breadcrumbs { gap:5px 8px; margin-bottom:18px; font-size:14px; }
  .tk-pd-breadcrumbs [aria-current] { flex-basis:100%; }
  .tk-pd-gallery, .tk-pd-purchase { padding:16px; border-radius:16px; }
  .tk-pd-gallery-header { gap:10px; font-size:14px; }
  .tk-pd-image-stage { max-height:none; }
  .tk-pd-main-image { padding:20px; }
  .tk-pd-zoom-trigger { right:10px; bottom:10px; }
  .tk-pd-gallery-arrow.is-previous { left:7px; }
  .tk-pd-gallery-arrow.is-next { right:7px; }
  .tk-pd-thumbs { gap:8px; margin-top:14px; }
  .tk-pd-thumbs button { flex-basis:64px; width:64px; height:64px; }
  .tk-pd-gallery-hint { align-items:flex-start; padding-top:14px; font-size:14px; text-align:left; }
  .tk-pd-gallery-hint .icon { margin-top:3px; }
  .tk-product-detail h1 { margin-bottom:14px; font-size:26px; line-height:1.35; }
  .tk-pd-review-summary { gap:8px 10px; margin-bottom:16px; }
  .tk-pd-description-short { font-size:16px; }
  .tk-pd-identifiers { margin-bottom:18px; }
  .tk-pd-buy-card { padding:16px; border-radius:13px; }
  .tk-pd-price { font-size:32px; }
  .tk-pd-price-box { margin-bottom:18px; }
  .tk-pd-buy-row { grid-template-columns:118px minmax(0,1fr); gap:10px; }
  .tk-pd-quantity>div { grid-template-columns:32px minmax(0,1fr) 32px; }
  .tk-product-detail .tk-pd-add { gap:7px; padding:11px 9px; font-size:14px; }
  .tk-pd-add .icon { width:19px; height:19px; }
  .tk-pd-secondary { gap:10px; }
  .tk-pd-secondary a { flex-wrap:wrap; gap:6px; padding:10px 8px; }
  .tk-pd-favorite-row { align-items:flex-start; gap:6px 14px; }
  .tk-product-detail .tk-pd-information { margin-top:26px; border-radius:16px; scroll-margin-top:145px; }
  .tk-product-detail .tk-pd-tab-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:8px; }
  .tk-product-detail .tk-pd-tab-nav button { min-height:54px; padding:10px 6px; font-size:14px; }
  .tk-product-detail .tk-pd-panel { padding:22px 16px; }
  .tk-product-detail .tk-pd-panel h2 { margin-bottom:18px; font-size:20px; }
  .tk-pd-detail-sidebar { grid-template-columns:1fr; gap:16px; }
  .tk-pd-detail-sidebar>div { padding:18px 16px; }
  .tk-product-detail .tk-pd-detail-sidebar h2 { font-size:17px; }
  .tk-product-detail :is(th,td) { padding:12px; }
  .tk-pd-detail-sidebar :is(th,td) { padding:9px 0; }
  .tk-pd-detail-sidebar td { padding-left:12px; }
  .tk-pd-feedback-grid { gap:24px; }
  .tk-pd-feedback-form { padding:20px 16px; }
  .tk-pd-form-grid { grid-template-columns:1fr; }
  .tk-pd-related { margin-top:28px; }
  .tk-pd-related-heading { align-items:flex-start; gap:12px; }
  .tk-pd-related-heading h2 { font-size:21px; }
  .tk-pd-related-heading a { flex:none; margin-top:3px; font-size:14px; }
  .tk-product-detail .tk-pd-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .tk-product-detail .tk-pd-zoom[open] { width:100%; height:100dvh; margin:0; border:0; border-radius:0; }
  .tk-pd-zoom-header { gap:10px; padding:calc(12px + env(safe-area-inset-top,0px)) 12px 12px; }
  .tk-pd-zoom-header>div>span { font-size:12px; }
  .tk-product-detail .tk-pd-zoom-header h2 { font-size:14px; line-height:1.5; }
  .tk-pd-zoom-counter { padding:5px 7px; font-size:12px; }
  .tk-pd-zoom-stage { padding:12px; }
  .tk-pd-zoom-arrow { width:44px; height:44px; border-radius:11px; font-size:22px; }
  .tk-pd-zoom-arrow.is-previous { left:5px; }
  .tk-pd-zoom-arrow.is-next { right:5px; }
  .tk-pd-zoom-thumbs { gap:8px; padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px)); }
  .tk-pd-zoom-thumbs button { flex-basis:64px; width:64px; height:64px; }
}
@media(max-width:430px) {
  .tk-pd-buy-row { grid-template-columns:1fr; gap:12px; }
  .tk-pd-quantity>div { grid-template-columns:44px minmax(0,1fr) 44px; }
}
@media(max-width:360px) {
  .tk-pd-gallery, .tk-pd-purchase { padding:14px; }
  .tk-pd-buy-card { padding:14px; }
  .tk-pd-price { font-size:28px; }
  .tk-pd-buy-row { grid-template-columns:1fr; gap:12px; }
  .tk-pd-quantity>div { max-width:100%; grid-template-columns:48px minmax(0,1fr) 48px; }
  .tk-product-detail .tk-pd-add { font-size:16px; }
  .tk-pd-secondary { grid-template-columns:1fr; }
}
@media(max-height:500px) and (min-width:601px) {
  .tk-product-detail .tk-pd-zoom[open] { width:calc(100vw - 24px); height:calc(100dvh - 20px); border-radius:12px; }
  .tk-pd-zoom-header { padding:10px 14px; }
  .tk-product-detail .tk-pd-zoom-header h2 { font-size:14px; }
  .tk-pd-zoom-header>div>span { display:none; }
  .tk-pd-zoom-thumbs { padding:8px 14px; }
  .tk-pd-zoom-thumbs button { flex-basis:52px; width:52px; height:52px; }
}
@media(prefers-reduced-motion:reduce) { .tk-product-detail *, .tk-product-detail *::before, .tk-product-detail *::after { transition:none!important; scroll-behavior:auto!important; } }
