/* TRIDAAGRO product redesign (tridaagro_product_redesign 0.1.0). Every rule is scoped to .tda-* (theme elements only under html.tda-pp). */
.tda-lead, .tda-modal, .tda-bar { --tda-green: #008032; --tda-green-d: #00632a; --tda-green-50: #edf7f0; --tda-green-100: #cfe8d7; --tda-yellow-50: #fff8d6; --tda-yellow-line: #f0dd85; --tda-red: #d9352b; --tda-red-50: #fdeeec; --tda-ink: #16211b; --tda-ink-2: #2f3b35; --tda-muted: #66736c; --tda-line: #e3e9e5; --tda-tile: #f3f6f4; color: var(--tda-ink); font-size: 14px; line-height: 1.4; }
.tda-lead *, .tda-modal *, .tda-bar * { box-sizing: border-box; }
.tda-ic { width: 20px; height: 20px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.tda-ic-fill { fill: currentColor; stroke: none; }

/* the block sits in the theme's price row (.sc-product-actions-top) and takes the full width under the price */
.tda-pp .sc-product-actions-top { flex-wrap: wrap; row-gap: 0; }
.tda-pp .sc-product-actions-top:has(.tda-has-year) .sc-product-info-item:has(.sku-center) { display: none; }
.tda-lead { order: 5; flex: 0 0 100%; width: 100%; max-width: 100%; display: flex; flex-direction: column; gap: 12px; margin-top: 14px; }

.tda-pp .sc-product-actions-top .sc-product-one-click-btn { display: none !important; }
.tda-pp .sc-product-social-buttons { display: none !important; }

/* 4 key characteristics: label above value, equal tiles */
.tda-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
.tda-spec { display: flex; flex-direction: column; justify-content: center; gap: 2px; min-height: 58px; padding: 9px 12px; border-radius: 10px; background: var(--tda-tile); }
.tda-spec dt { margin: 0; color: var(--tda-muted); font-size: 12px; font-weight: 500; line-height: 1.25; }
.tda-spec dd { margin: 0; color: var(--tda-ink); font-size: 15px; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
.tda-specs-1, .tda-specs-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tda-specs-3 .tda-spec:last-child:nth-child(odd), .tda-specs-1 .tda-spec { grid-column: 1 / -1; }

/* notes under the price */
.tda-note { display: flex; align-items: flex-start; gap: 9px; padding: 10px 12px; border-radius: 10px; font-size: 13.5px; line-height: 1.4; }
.tda-note .tda-ic { width: 18px; height: 18px; margin-top: 1px; }
.tda-note b { display: block; margin-top: 3px; font-weight: 700; }
.tda-note-info { border: 1px solid var(--tda-yellow-line); background: var(--tda-yellow-50); color: #4d4410; }
.tda-note-green { background: var(--tda-green-50); color: var(--tda-green-d); font-weight: 600; }
.tda-note-red { background: var(--tda-red-50); color: #a3261e; font-weight: 600; }
.tda-dot { width: 9px; height: 9px; margin-top: 5px; border-radius: 50%; background: currentColor; flex: 0 0 auto; }
.tda-perks { display: flex; gap: 8px; }
.tda-perk { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 10px 6px; border-radius: 10px; background: var(--tda-green-50); color: var(--tda-ink); text-align: center; }
.tda-perk .tda-ic { color: var(--tda-green); margin-bottom: 2px; }
.tda-perk b { font-size: 12.5px; line-height: 1.2; }
.tda-perk small { color: var(--tda-muted); font-size: 11.5px; line-height: 1.2; }

/* buttons */
.tda-ctas { display: flex; flex-direction: column; gap: 8px; }
.tda-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 10px 16px; border: 1px solid transparent; border-radius: 10px; font: inherit; font-size: 15px; font-weight: 700; line-height: 1.2; text-align: center; text-decoration: none !important; cursor: pointer; transition: background .15s, border-color .15s, box-shadow .15s; }
.tda-btn:focus-visible { outline: 3px solid rgba(0,128,50,.35); outline-offset: 2px; }
.tda-btn-primary { width: 100%; background: var(--tda-green); color: #fff !important; box-shadow: 0 6px 16px rgba(0,128,50,.22); }
.tda-btn-primary:hover { background: var(--tda-green-d); }
.tda-btn-primary[disabled] { opacity: .7; cursor: wait; }
.tda-btn-second { width: 100%; border-color: var(--tda-green); background: #fff; color: var(--tda-green) !important; }
.tda-btn-second:hover { background: var(--tda-green-50); }
.tda-btn-demo { width: 100%; border: 1px dashed var(--tda-green); background: var(--tda-green-50); color: var(--tda-green-d) !important; font-size: 14px; }
.tda-btn-outline { border-color: var(--tda-line); background: #fff; color: var(--tda-ink) !important; font-size: 14px; font-weight: 600; min-height: 44px; }
.tda-btn-outline:hover { border-color: var(--tda-green-100); background: var(--tda-green-50); }
.tda-btn-outline img { flex: 0 0 auto; }
.tda-btn-plain { width: 100%; background: none; color: var(--tda-muted) !important; font-weight: 600; }
.tda-sla { display: flex; align-items: center; gap: 6px; margin: -2px 0 0; color: var(--tda-muted); font-size: 13px; }
.tda-sla .tda-ic { width: 16px; height: 16px; color: var(--tda-green); }

/* contacts */
.tda-contacts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.tda-contacts .tda-c-phone { grid-column: 1 / -1; color: var(--tda-green-d) !important; }
.tda-contacts .tda-c-phone small { color: var(--tda-muted); font-size: 13px; font-weight: 500; }
.tda-sticker-tel { color: inherit !important; text-decoration: underline !important; text-underline-offset: 2px; }

/* #АгроПідбір steps, video, other models */
.tda-h { color: var(--tda-ink); font-size: 15px; font-weight: 700; }
.tda-agro { padding: 12px 14px; border: 1px solid var(--tda-line); border-radius: 12px; }
.tda-steps { display: grid; gap: 8px; margin: 10px 0 0; padding: 0; list-style: none; }
.tda-steps li { display: flex; gap: 10px; align-items: flex-start; }
.tda-steps b { display: block; font-size: 13.5px; }
.tda-steps span:not(.tda-n) { display: block; color: var(--tda-muted); font-size: 12.5px; }
.tda-n { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--tda-green-50); color: var(--tda-green); font-size: 12px; font-weight: 800; flex: 0 0 auto; }
.tda-video { display: flex; align-items: center; gap: 12px; padding: 8px; border: 1px solid var(--tda-line); border-radius: 12px; background: #fff; color: var(--tda-ink) !important; text-decoration: none !important; }
.tda-video-ph { position: relative; display: block; width: 136px; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 8px; background: #0d1410; flex: 0 0 auto; }
.tda-video-ph img { display: block; width: 100%; height: 100%; object-fit: cover; opacity: .9; }
.tda-play { position: absolute; top: 50%; left: 50%; display: grid; place-items: center; width: 34px; height: 34px; margin: -17px 0 0 -17px; border-radius: 50%; background: #e62117; color: #fff; }
.tda-play .tda-ic { width: 16px; height: 16px; }
.tda-video-label b { display: block; font-size: 14px; }
.tda-video-label small { color: var(--tda-muted); font-size: 12.5px; }
.tda-others-sub { margin-top: 2px; color: var(--tda-muted); font-size: 12.5px; }
.tda-o-track { display: grid; grid-auto-flow: column; grid-auto-columns: 148px; gap: 8px; margin-top: 10px; padding-bottom: 6px; overflow-x: auto; scroll-snap-type: x mandatory; }
.tda-o-card { display: flex; flex-direction: column; gap: 4px; padding-bottom: 8px; border: 1px solid var(--tda-line); border-radius: 10px; background: #fff; color: var(--tda-ink) !important; text-decoration: none !important; overflow: hidden; scroll-snap-align: start; }
.tda-o-ph { display: block; aspect-ratio: 4 / 3; background: var(--tda-tile); }
.tda-o-ph img { display: block; width: 100%; height: 100%; object-fit: cover; }
.tda-o-t { display: -webkit-box; padding: 0 8px; font-size: 12.5px; font-weight: 600; line-height: 1.3; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.tda-o-p { padding: 0 8px; color: var(--tda-green-d); font-size: 13px; font-weight: 800; }

/* lead dialog: bottom sheet on phones, centred on larger screens */
.tda-modal { position: fixed; inset: 0; z-index: 12150; display: flex; align-items: flex-end; justify-content: center; background: rgba(12,18,15,.55); }
.tda-modal[hidden] { display: none; }
.tda-modal-open, .tda-modal-open body { overflow: hidden; }
.tda-dialog { width: 100%; max-height: 92vh; max-height: 92dvh; overflow-y: auto; padding: 16px 16px calc(16px + env(safe-area-inset-bottom)); border-radius: 16px 16px 0 0; background: #fff; box-shadow: 0 -10px 30px rgba(0,0,0,.2); }
.tda-dialog-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.tda-dialog-head h3 { margin: 0; color: var(--tda-ink); font-size: 18px; font-weight: 800; line-height: 1.25; }
.tda-x { display: grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 0; border-radius: 50%; background: var(--tda-tile); color: var(--tda-ink); font-size: 22px; line-height: 1; cursor: pointer; flex: 0 0 auto; }
.tda-mini { display: flex; align-items: center; gap: 10px; margin: 12px 0 4px; padding: 8px; border-radius: 10px; background: var(--tda-tile); }
.tda-mini img { width: 72px; height: 54px; border-radius: 6px; object-fit: cover; flex: 0 0 auto; }
.tda-mini b { display: block; font-size: 13.5px; line-height: 1.3; }
.tda-mini span { display: block; margin-top: 2px; color: var(--tda-green-d); font-size: 14px; font-weight: 800; }
.tda-form { display: flex; flex-direction: column; gap: 10px; margin-top: 8px; }
.tda-form[hidden], .tda-done[hidden], .tda-error[hidden], .tda-field[hidden], .tda-more-q[hidden], .tda-btn[hidden] { display: none; }
.tda-field { display: flex; flex-direction: column; gap: 5px; margin: 0; min-width: 0; border: 0; padding: 0; }
.tda-field > span, .tda-field legend { color: var(--tda-ink-2); font-size: 13px; font-weight: 700; }
.tda-field legend { float: left; grid-column: 1 / -1; width: 100%; margin: 0 0 1px; padding: 0; }
.tda-field i { color: var(--tda-red); font-style: normal; }
.tda-field em { color: var(--tda-muted); font-style: normal; font-weight: 500; }
.tda-field input[type=text], .tda-field input[type=tel], .tda-field textarea { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #cdd8d1; border-radius: 10px; background: #fff; color: var(--tda-ink); font: inherit; font-size: 16px; }
.tda-field textarea { min-height: 76px; resize: vertical; }
.tda-field input:focus, .tda-field textarea:focus { border-color: var(--tda-green); outline: 3px solid rgba(0,128,50,.15); }
.tda-field input[aria-invalid=true] { border-color: var(--tda-red); }
.tda-choice { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.tda-choice label { position: relative; margin: 0; }
.tda-choice input { position: absolute; opacity: 0; pointer-events: none; }
.tda-choice label > span { display: flex; align-items: center; justify-content: center; gap: 5px; min-height: 42px; padding: 6px; border: 1px solid #cdd8d1; border-radius: 10px; color: var(--tda-ink-2); font-size: 13px; font-weight: 600; cursor: pointer; }
.tda-choice .tda-ic { width: 17px; height: 17px; }
.tda-choice input:checked + span { border-color: var(--tda-green); background: var(--tda-green-50); color: var(--tda-green-d); box-shadow: inset 0 0 0 1px var(--tda-green); }
.tda-choice input:focus-visible + span { outline: 3px solid rgba(0,128,50,.3); }
.tda-more-q { align-self: flex-start; padding: 2px 0; border: 0; background: none; color: var(--tda-green); font: inherit; font-size: 13.5px; font-weight: 700; cursor: pointer; }
.tda-hp { position: absolute !important; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.tda-error { padding: 8px 10px; border-radius: 8px; background: var(--tda-red-50); color: #a3261e; font-size: 13px; font-weight: 600; }
.tda-next { padding: 10px 12px; border-radius: 10px; background: var(--tda-green-50); color: var(--tda-ink-2); font-size: 13px; line-height: 1.45; }
.tda-next b { color: var(--tda-green-d); }
.tda-next-sla { display: inline-flex; align-items: center; gap: 4px; font-weight: 700; }
.tda-next-sla .tda-ic { width: 15px; height: 15px; color: var(--tda-green); }
.tda-legal { margin: 0; color: var(--tda-muted); font-size: 12px; text-align: center; }
.tda-done { display: flex; flex-direction: column; align-items: stretch; gap: 10px; padding: 8px 0 4px; text-align: center; }
.tda-done h4 { margin: 0; font-size: 19px; font-weight: 800; }
.tda-done p { margin: 0; color: var(--tda-ink-2); }
.tda-ok { display: grid; place-items: center; width: 56px; height: 56px; margin: 0 auto; border-radius: 50%; background: var(--tda-green-50); color: var(--tda-green); }
.tda-ok .tda-ic { width: 30px; height: 30px; stroke-width: 2.6; }

/* phone bottom bar (product pages only): replaces the theme's shop menu there */
.tda-bar { display: none; }
@media (max-width: 767.98px) {
  .tda-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 12100; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 1.55fr); gap: 4px; align-items: stretch; padding: 6px 8px calc(6px + env(safe-area-inset-bottom)); border-top: 1px solid var(--tda-line); background: rgba(255,255,255,.98); box-shadow: 0 -6px 18px rgba(0,0,0,.08); }
  .tda-bar a, .tda-bar button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 50px; padding: 4px 2px; border: 0; border-radius: 10px; background: none; color: var(--tda-ink-2) !important; font: inherit; font-size: 11.5px; font-weight: 600; line-height: 1.1; text-decoration: none !important; }
  .tda-bar a .tda-ic { color: var(--tda-green); width: 22px; height: 22px; }
  .tda-bar .tda-bar-main { flex-direction: row; gap: 6px; background: var(--tda-green); color: #fff !important; font-size: 14.5px; font-weight: 800; box-shadow: 0 4px 12px rgba(0,128,50,.25); }
  .tda-pp .header { display: none !important; }
  .tda-pp .sc-product-actions-top > .sc-product-actions-top-right.center { order: 6; }
  .tda-pp body { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
  .tda-pp .sc-product-fixed-btns { display: none !important; }
}
@media (min-width: 768px) {
  .tda-modal { align-items: center; padding: 24px; }
  .tda-dialog { max-width: 460px; padding: 22px; border-radius: 16px; box-shadow: 0 20px 60px rgba(0,0,0,.25); }
  .tda-ctas { flex-direction: row; flex-wrap: wrap; }
  .tda-ctas .tda-btn-primary { flex: 1 1 100%; }
  .tda-ctas .tda-btn-second, .tda-ctas .tda-btn-demo { flex: 1 1 200px; width: auto; }
  .tda-contacts { grid-template-columns: auto 1fr 1fr; }
  .tda-contacts .tda-c-phone { grid-column: auto; }
}
@media (min-width: 576px) {
  .tda-specs-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .tda-specs-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
