:root {
  --jt-error: var(--jt-down, #c62828);
  --jt-success: var(--jt-up, #057a3c);
}
.jt-form-label,
:root :is(.comment-form, .post-password-form, #edd_checkout_form_wrap, .edd_form, .wppb-user-forms, .caldera-grid) label {
  font-family: var(--jt-font-body);
  font-size: 15px; font-weight: 700; line-height: 1.35;
  color: var(--jt-text, #111111);
}
.jt-notice,
:root :is(.edd_errors, .edd-alert, .edd_success, .wppb-error, .wppb-warning, .wppb-success, .wppb-notice, .caldera-grid .alert, .wpforms-error-container, .comment-awaiting-moderation) {
  margin: 0 0 20px; padding: 12px 16px;
  border: 1px solid var(--jt-border, #dedede);
  border-radius: var(--jt-radius, 4px);
  background: var(--jt-surface, #f4f4f1); color: var(--jt-text, #111111) !important;
  font-size: 15px; font-weight: 600; line-height: 1.5; box-shadow: none;
}
:root :is(.edd_errors, .edd-alert-error, .wppb-error, .wppb-warning, .caldera-grid .alert-danger, .caldera-grid .alert-error, .wpforms-error-container) { border-color: var(--jt-error); }
:root :is(.edd_success, .edd-alert-success, .wppb-success, .caldera-grid .alert-success) { border-color: var(--jt-success); }
:root :is(.edd-alert-info, .edd-alert-warn, .wppb-notice, .caldera-grid .alert-info, .caldera-grid .alert-warning) { border-color: var(--jt-text-2, #3d3d3d); }
:root :is(.edd_errors, .edd-alert, .wppb-error, .wppb-warning, .wppb-success, .wppb-notice) a { color: var(--jt-link, #057a3c) !important; }
:root :is(.edd_errors, .edd-alert) p { margin: 0; padding: 0; }
:root .edd_error { padding: 0; }
:root :is(span.required, abbr.required, .edd-required-indicator, .wppb-required, .caldera-grid .field_required, .wpforms-required-label) { color: var(--jt-error) !important; font-weight: 800; text-decoration: none; }
:root :is(input, select, textarea):is(.error, .edd-input.error, [aria-invalid="true"], .wpforms-error) { border-color: var(--jt-error) !important; }
:root .wppb-field-error, :root .caldera-grid .has-error .help-block, :root .caldera-grid .parsley-errors-list { color: var(--jt-error); }
.comment-respond { margin-top: 32px; }
.jt-comments__title + .jt-comments__list + .comment-respond,
.jt-comments__list + .comment-respond { margin-top: 40px; }
.comment-reply-title {
  display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 16px;
  margin: 0 0 8px;
  font-family: var(--jt-font-head); font-size: var(--jt-fs-h3); font-weight: 800; line-height: var(--jt-lh-h3);
  color: var(--jt-text, #111111);
}
h2.comment-reply-title { font-size: var(--jt-fs-h2); line-height: var(--jt-lh-h2); }
.comment-reply-title small { font-size: 15px; font-weight: 800; }
.comment-reply-title small a { display: inline-flex; align-items: center; min-height: 44px; color: var(--jt-link, #057a3c); }
.comment-form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.comment-form > p { margin: 0; }
.comment-form :is(.comment-notes, .logged-in-as) { font-size: 15px; line-height: 1.5; color: var(--jt-text-2, #3d3d3d); }
.comment-form .logged-in-as a { color: var(--jt-link, #057a3c); }
.comment-form :is(.comment-form-comment, .comment-form-author, .comment-form-email, .comment-form-url) label { display: block; margin-bottom: 6px; }
.comment-form textarea { min-height: 160px; }
.comment-form .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; line-height: 1.45; }
.comment-form .comment-form-cookies-consent input { flex-shrink: 0; margin: 2px 0 0; }
.comment-form .comment-form-cookies-consent label { font-weight: 500; }
.comment-form .form-submit { margin-top: 4px; }
@media (min-width: 600px) {
  .comment-form { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 20px; }
  .comment-form > * { grid-column: 1 / -1; }
  .comment-form > .comment-form-author { grid-column: 1; }
  .comment-form > .comment-form-email { grid-column: 2; }
}
.post-password-form { margin: 0 0 1.5em; padding: 20px 22px; border: 1px solid var(--jt-border, #dedede); border-radius: var(--jt-radius, 4px); background: var(--jt-surface, #f4f4f1); }
.post-password-form p { margin: 0 0 12px; font-size: var(--jt-fs-ui); line-height: 1.5; }
.post-password-form p:last-child { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px; margin: 0; }
.post-password-form label { display: flex; flex-direction: column; gap: 6px; flex: 1 1 220px; }
.post-password-form input[type="password"] { background: var(--jt-bg, #ffffff); }
:root :is(.post-password-form input[type="submit"], .wppb-user-forms :is(input[type="submit"], button[type="submit"]), .caldera-grid :is(.btn, input[type="submit"]), #edd_login_form input[type="submit"], #edd_register_form input[type="submit"], #edd_profile_editor_form input[type="submit"]) {
  display: inline-flex; align-items: center; justify-content: center;
  width: auto; min-height: 44px; padding: 0 20px;
  border: 2px solid var(--jt-text, #111111); border-radius: var(--jt-radius, 4px);
  background: var(--jt-text, #111111); color: var(--jt-bg, #ffffff);
  font-family: var(--jt-font-body); font-size: var(--jt-fs-nav, 15px); font-weight: 800; line-height: 1.1;
  text-shadow: none; box-shadow: none; cursor: pointer; float: none;
  -webkit-appearance: none; appearance: none;
}
:root :is(.post-password-form input[type="submit"], .wppb-user-forms :is(input[type="submit"], button[type="submit"]), .caldera-grid :is(.btn, input[type="submit"]), #edd_login_form input[type="submit"], #edd_register_form input[type="submit"], #edd_profile_editor_form input[type="submit"]):hover {
  background: var(--jt-accent, #0cf57e); border-color: var(--jt-accent, #0cf57e); color: var(--jt-accent-ink, #000000);
}
.wpforms-container {
  --wpforms-field-border-radius: var(--jt-radius, 4px);
  --wpforms-field-border-color: var(--jt-field-border, #8a8a8a);
  --wpforms-field-background-color: var(--jt-bg, #ffffff);
  --wpforms-field-text-color: var(--jt-text, #111111);
  --wpforms-field-menu-color: var(--jt-bg, #ffffff);
  --wpforms-label-color: var(--jt-text, #111111);
  --wpforms-label-sublabel-color: var(--jt-text-2, #3d3d3d);
  --wpforms-label-error-color: var(--jt-error, #c62828);
  --wpforms-button-border-radius: var(--jt-radius, 4px);
  --wpforms-button-border-style: solid;
  --wpforms-button-border-size: 2px;
  --wpforms-button-background-color: var(--jt-accent, #0cf57e);
  --wpforms-button-border-color: var(--jt-accent, #0cf57e);
  --wpforms-button-text-color: var(--jt-accent-ink, #000000);
  --wpforms-page-break-color: var(--jt-accent, #0cf57e);
  --wpforms-field-size-input-height: 46px;
  --wpforms-field-size-font-size: 16px;
  --wpforms-field-size-padding-h: 12px;
  --wpforms-label-size-font-size: 15px;
  --wpforms-label-size-sublabel-font-size: 14px;
  --wpforms-button-size-height: 46px;
  --wpforms-button-size-font-size: 15px;
  --wpforms-button-size-padding-h: 20px;
  font-family: var(--jt-font-body);
}
:root .wpforms-container .wpforms-form :is(input, select, textarea, button):focus { box-shadow: none !important; outline: 3px solid var(--jt-focus, #057a3c); outline-offset: 1px; }
:root .wpforms-container .wpforms-form :is(button[type="submit"], .wpforms-submit) { font-weight: 800; box-shadow: none !important; }
:root .wpforms-container .wpforms-form :is(button[type="submit"], .wpforms-submit):hover { background: var(--jt-text, #111111) !important; border-color: var(--jt-text, #111111) !important; color: var(--jt-bg, #ffffff) !important; }
:root .wpforms-container .wpforms-field-label { font-weight: 700; }
:root .wpforms-container .wpforms-confirmation-container-full {
  padding: 14px 18px; border: 1px solid var(--jt-success);
  border-radius: var(--jt-radius, 4px); background: var(--jt-surface, #f4f4f1); color: var(--jt-text, #111111);
}
:root .wpforms-container .wpforms-confirmation-container-full p:last-child { margin: 0; }
:root div.wpforms-container-full .wpforms-form :is(input[type="text"], input[type="email"], input[type="url"], input[type="tel"], input[type="number"], input[type="password"], input[type="date"], select, textarea) {
  background-color: var(--jt-bg, #ffffff); color: var(--jt-text, #111111);
  border-color: var(--jt-field-border, #8a8a8a); border-radius: var(--jt-radius, 4px);
  min-height: 44px; font-size: 16px;
}
:root div.wpforms-container-full .wpforms-form :is(.wpforms-field-label, .wpforms-field-sublabel, .wpforms-field-description, label) { color: var(--jt-text, #111111); }
:root .caldera-grid .form-group { margin-bottom: 16px; }
:root .caldera-grid label { display: block; margin-bottom: 6px; }
:root .caldera-grid .form-control {
  display: block; width: 100%; height: auto; min-height: 44px; padding: 10px 12px;
  border: 1px solid var(--jt-field-border, #8a8a8a); border-radius: var(--jt-radius, 4px);
  background: var(--jt-bg, #ffffff); color: var(--jt-text, #111111);
  font-size: 16px; line-height: 1.4; box-shadow: none;
}
:root .caldera-grid .form-control:focus { border-color: var(--jt-text, #111111); box-shadow: none; }
:root .caldera-grid .help-block { font-size: 14px; color: var(--jt-text-2, #3d3d3d); }
:root .caldera-grid .has-error .form-control { border-color: var(--jt-error); }
:root .caldera-grid :is(.checkbox, .radio) label { display: flex; align-items: center; gap: 8px; min-height: 44px; font-weight: 500; }
:root .wppb-user-forms { max-width: 560px; font-family: var(--jt-font-body); color: var(--jt-text, #111111); }
:root .jt-page--wide .wppb-user-forms { margin-inline: 0; }
:root .wppb-user-forms > ul, :root .wppb-user-forms ul { margin: 0; padding: 0; list-style: none; }
:root .wppb-user-forms ul li, :root .wppb-user-forms .wppb-form-field { margin: 0 0 16px; padding: 0; list-style: none; }
:root .wppb-user-forms ul li::marker { content: none; }
:root :is(.wppb-user-forms, #wppb-login-wrap) .wppb-form-field label,
:root #wppb-login-wrap :is(.login-username, .login-password, .login-auth) label {
  display: block; float: none !important; width: auto !important; margin: 0 0 6px;
}
:root .wppb-user-forms .wppb-form-field :is(input[type="text"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="password"], input[type="tel"], select, textarea),
:root .wppb-user-forms .wppb-form-field .wppb-password-field-container,
:root #wppb-login-wrap :is(.login-username, .login-auth, .login-password) input:not([type="checkbox"]) {
  float: none !important; width: 100% !important; max-width: 100%;
}
:root .wppb-user-forms :is(input:not([type="button"]):not([type="reset"]):not([type="submit"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]), select, textarea) {
  min-height: 44px; padding: 10px 12px;
  border: 1px solid var(--jt-field-border, #8a8a8a); border-radius: var(--jt-radius, 4px);
  background: var(--jt-bg, #ffffff); color: var(--jt-text, #111111);
  font-size: 16px; line-height: 1.4;
}
:root .wppb-user-forms .wppb-form-field .wppb-password-field-container input { padding-right: 48px; }
:root .wppb-user-forms button.wppb-toggle-pw { width: 44px; height: 44px; right: 0; color: var(--jt-text, #111111); }
:root .wppb-user-forms button.wppb-toggle-pw img { filter: none; }
:root[data-theme="dark"] .wppb-user-forms button.wppb-toggle-pw img { filter: invert(1); }
:root .wppb-user-forms :is(.wppb-description-delimiter, .description) { display: block; clear: both; margin-top: 6px; font-size: 14px; line-height: 1.45; color: var(--jt-text-2, #3d3d3d); }
:root .wppb-user-forms :is(.wppb-checkboxes, .wppb-radios) { float: none !important; width: auto !important; }
:root .wppb-user-forms :is(.wppb-checkboxes, .wppb-radios) li { display: flex; align-items: center; gap: 8px; margin: 0; min-height: 44px; }
:root .wppb-user-forms :is(.wppb-checkboxes, .wppb-radios) label { display: inline; margin: 0; font-weight: 500; }
:root .wppb-user-forms :is(h3, h4) { margin: 24px 0 8px; font-family: var(--jt-font-head); font-size: var(--jt-fs-h3); font-weight: 800; }
:root .wppb-user-forms .wppb-form-field > span:not(.wppb-password-field-container) { display: block; float: none; width: auto; margin-left: 0; padding-left: 0; }
:root #wppb-login-wrap p { margin: 0 0 16px; overflow: visible; }
:root #wppb-login-wrap .login-remember { display: flex; align-items: center; gap: 10px; min-height: 44px; }
:root #wppb-login-wrap .login-remember label { margin: 0; padding: 0; font-weight: 500; }
:root :is(#wppb-login-wrap .login-register-lost-password, .wppb-user-forms .login-register-lost-password) { font-size: 15px; }
:root :is(.wppb-user-forms, #wppb-login-wrap) a { color: var(--jt-link, #057a3c); }
:root .wppb-user-forms .form-submit { margin: 8px 0 0; }
:root .wppb-user-forms .wppb-form-field.wppb-gdpr-checkbox label,
:root .wppb-user-forms .wppb-checkbox-terms-and-conditions label { display: flex; align-items: flex-start; gap: 10px; font-weight: 500; }
:root .wppb-user-forms .wppb-avatar img, :root .wppb-user-forms .wppb-upload img { border-radius: 50%; }
:root :is(#edd-purchase-button, .edd-submit.button, [type="submit"].edd-submit, a.edd-submit, .edd-add-to-cart, .edd_go_to_checkout) {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 46px; padding: 0 22px;
  border: 2px solid var(--jt-accent, #0cf57e); border-radius: var(--jt-radius, 4px);
  background: var(--jt-accent, #0cf57e); color: var(--jt-accent-ink, #000000);
  font-family: var(--jt-font-body); font-size: var(--jt-fs-nav, 15px); font-weight: 800; line-height: 1.15;
  text-decoration: none; text-shadow: none; box-shadow: none;
  white-space: normal;
}
:root :is(#edd-purchase-button, .edd-submit.button, [type="submit"].edd-submit, a.edd-submit, .edd-add-to-cart, .edd_go_to_checkout):is(:hover, :focus-visible) {
  background: var(--jt-text, #111111); border-color: var(--jt-text, #111111); color: var(--jt-bg, #ffffff);
}
:root .edd-submit.button:active { box-shadow: none; }
:root :is(.edd-js .edd-no-js, .edd-js-none .edd-has-js) { display: none !important; }
:root .edd_purchase_submit_wrapper { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
:root .edd_purchase_submit_wrapper .edd-cart-ajax-alert { flex-basis: 100%; }
:root .edd-cart-added-alert { position: static; display: inline-flex; align-items: center; gap: 6px; color: var(--jt-success); font-weight: 700; }
:root .edd-loading { border-color: color-mix(in srgb, currentColor 25%, transparent); border-left-color: currentColor; }
:root .edd_download_purchase_form { margin: 0; }
:root .edd_download_purchase_form .edd_price_options { margin: 0 0 14px; }
:root .edd_download_purchase_form .edd_price_options li { display: flex; align-items: center; gap: 8px; min-height: 40px; }
:root .edd_download_purchase_form .edd_price_options label { font-weight: 600; }
:root input.edd_submit_plain { min-height: 0; color: var(--jt-link, #057a3c) !important; text-decoration: underline; }
:root #edd_checkout_wrap { color: var(--jt-text, #111111); }
:root #edd_checkout_form_wrap fieldset { margin: 0 0 24px; padding: 20px 22px; border: 1px solid var(--jt-border, #dedede); border-radius: var(--jt-radius, 4px); }
:root #edd_checkout_form_wrap fieldset fieldset { margin: 0; padding: 0; border: 0; }
:root #edd_checkout_form_wrap legend {
  width: auto; max-width: 100%; padding: 0 6px; margin: 0 0 12px -6px;
  font-family: var(--jt-font-head); font-size: var(--jt-fs-h3); font-weight: 800; line-height: 1.25;
  white-space: normal; color: var(--jt-text, #111111);
}
:root #edd_checkout_form_wrap label { display: block; margin: 0 0 6px; line-height: 1.35; }
:root #edd_checkout_form_wrap .edd-description { margin: 0 0 8px; font-size: 14px; line-height: 1.45; color: var(--jt-text-2, #3d3d3d); }
:root #edd_checkout_form_wrap :is(input.edd-input, select.edd-select, textarea.edd-input, input[type="text"], input[type="email"], input[type="password"], input[type="tel"], select, textarea) {
  width: 100%; min-height: 44px; padding: 10px 12px;
  border: 1px solid var(--jt-field-border, #8a8a8a); border-radius: var(--jt-radius, 4px);
  background: var(--jt-bg, #ffffff); color: var(--jt-text, #111111);
  font-size: 16px; line-height: 1.4;
}
:root #edd_checkout_form_wrap select.edd-select.edd-select-small { display: inline-block; width: auto; }
:root #edd_checkout_form_wrap fieldset > div, :root #edd_checkout_form_wrap > p { margin: 0 0 18px; }
:root #edd_checkout_form_wrap :is(#edd-login-account-wrap, #edd-new-account-wrap, #edd_show_discount, .edd-cart-adjustment, #edd_final_total_wrap) {
  border-color: var(--jt-border, #dedede); background: var(--jt-surface, #f4f4f1); color: var(--jt-text, #111111);
}
:root #edd_checkout_form_wrap #edd_final_total_wrap { padding: 14px 18px; border-radius: var(--jt-radius, 4px); font-size: 18px; font-weight: 800; }
:root #edd_checkout_form_wrap .edd-cart-adjustment input.edd-submit { min-height: 44px; margin: 0; padding: 0 16px; }
:root #edd_checkout_form_wrap :is(#edd_discount_code, #edd_purchase_submit, #edd_register_account_fields) { padding: 0; border: 0; }
:root #edd_checkout_form_wrap #edd-purchase-button { width: 100%; min-height: 52px; font-size: 17px; }
:root #edd_checkout_form_wrap #edd_secure_site_wrapper { display: flex; align-items: center; gap: 6px; color: var(--jt-text, #111111); }
:root #edd_checkout_form_wrap .edd-required-fields-notice, :root .edd-required-fields-notice { color: var(--jt-text-2, #3d3d3d); font-size: 14px; }
:root #edd_checkout_form_wrap input[type="checkbox"] + label { display: inline; font-weight: 500; }
:root #edd_checkout_form_wrap #edd-payment-mode-wrap label { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin: 0 20px 0 0; font-weight: 600; }
:root .edd-login-link { border: 1px solid var(--jt-border, #dedede); background: var(--jt-surface, #f4f4f1); color: var(--jt-text, #111111); }
:root .edd-cart-loading { background: color-mix(in srgb, var(--jt-bg, #ffffff) 70%, transparent); }
:root :is(#edd_checkout_cart, #edd_user_history, #edd_purchase_receipt, #edd_purchase_receipt_products, .edd-table, .edd_sl_table) {
  width: 100%; margin: 0 0 24px;
  border: 1px solid var(--jt-border, #dedede); border-collapse: collapse;
  font-size: 15px; line-height: 1.5; color: var(--jt-text, #111111);
  background: transparent;
}
:root :is(#edd_checkout_cart, #edd_user_history, #edd_purchase_receipt, #edd_purchase_receipt_products, .edd-table, .edd_sl_table) :is(th, td) {
  padding: 12px 14px;
  border: 0; border-bottom: 1px solid var(--jt-border, #dedede);
  background: transparent; color: var(--jt-text, #111111);
  text-align: left; vertical-align: middle; line-height: 1.45;
}
:root :is(#edd_checkout_cart, #edd_user_history, #edd_purchase_receipt, #edd_purchase_receipt_products, .edd-table, .edd_sl_table) :is(thead th, .edd_cart_header_row th) {
  background: var(--jt-surface, #f4f4f1);
  font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em;
}
:root #edd_checkout_cart :is(td.edd_cart_actions, td:last-child, th.edd_cart_actions, th.edd_cart_total, th:last-child) { text-align: right; }
:root #edd_checkout_cart td img { border-radius: var(--jt-radius, 4px); }
:root #edd_checkout_cart .edd_cart_remove_item_btn { display: inline-flex; align-items: center; min-height: 44px; color: var(--jt-link, #057a3c); font-weight: 700; }
:root #edd_checkout_cart input.edd-item-quantity { width: 4em; min-height: 40px; padding: 6px; }
:root #edd_checkout_cart tfoot th { font-size: 16px; font-weight: 800; }
:root :is(#edd_user_history, #edd_purchase_receipt) :is(.edd_purchase_status, .edd_receipt_payment_status):is(.revoked, .failed, .pending, .cancelled) { color: var(--jt-error); font-weight: 700; }
:root :is(#edd_user_history, #edd_purchase_receipt, #edd_purchase_receipt_products) a { color: var(--jt-link, #057a3c); font-weight: 700; }
:root table#edd_purchase_receipt_products .edd_purchase_receipt_product_notes { font-style: normal; color: var(--jt-text-2, #3d3d3d); }
:root .edd_purchase_receipt_files { margin: 6px 0 0; padding: 0; list-style: none; }
@media (max-width: 767px) {
  :root :is(#edd_checkout_cart, #edd_user_history, #edd_purchase_receipt, #edd_purchase_receipt_products) { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  :root :is(#edd_checkout_cart, #edd_user_history, #edd_purchase_receipt, #edd_purchase_receipt_products) :is(th, td) { padding: 10px; white-space: normal; }
}
:root .edd-cart { margin: 0; padding: 0; list-style: none; }
:root .edd-cart-item { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 10px 0; border-bottom: 1px solid var(--jt-border, #dedede); }
:root .edd-cart-number-of-items { font-style: normal; color: var(--jt-text-2, #3d3d3d); }
:root .edd-cart-meta { font-style: normal; }
:root .edd-cart-meta:is(.edd_subtotal, .edd_total) { background: var(--jt-surface, #f4f4f1); }
:root :is(#edd_login_form, #edd_register_form, #edd_profile_editor_form) { max-width: 560px; }
:root :is(#edd_login_form, #edd_register_form, #edd_profile_editor_form) fieldset { margin: 0; padding: 0; border: 0; }
:root :is(#edd_login_form, #edd_register_form, #edd_profile_editor_form) legend { margin-bottom: 12px; font-family: var(--jt-font-head); font-size: var(--jt-fs-h3); font-weight: 800; }
:root :is(#edd_login_form, #edd_register_form, #edd_profile_editor_form) p { margin: 0 0 16px; }
:root :is(#edd_login_form, #edd_register_form, #edd_profile_editor_form) label { display: block; margin-bottom: 6px; }
:root #edd_profile_editor_form .edd-profile-emails { display: block; }
:root .edd_downloads_list { gap: 32px 24px; }
:root .edd_download_inner { display: flex; flex-direction: column; gap: 10px; }
:root .edd_download_title { margin: 0; font-family: var(--jt-font-head); font-size: var(--jt-fs-card-md); font-weight: 800; line-height: 1.2; }
:root .edd_download_title a { color: var(--jt-text, #111111); text-decoration: none; }
:root .edd_download_image img { border-radius: var(--jt-radius, 4px); }
:root :is(.wp-block-edd-checkout, .wp-block-edd-order-history, .wp-block-edd-receipt, .wp-block-edd-confirmation, .wp-block-edd-login, .wp-block-edd-register) { color: var(--jt-text, #111111); }
:root :is(.wp-block-edd-checkout, .wp-block-edd-login, .wp-block-edd-register, .wp-block-edd-order-history) :is(.edd-blocks-form, .edd-blocks-form__group, .edd-blocks__row) { border-color: var(--jt-border, #dedede); }
:root :is(.wp-block-edd-checkout, .wp-block-edd-login, .wp-block-edd-register) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]), select) {
  min-height: 44px; border: 1px solid var(--jt-field-border, #8a8a8a); border-radius: var(--jt-radius, 4px);
  background: var(--jt-bg, #ffffff); color: var(--jt-text, #111111); font-size: 16px;
}
:root .edd-blocks__row-header { background: var(--jt-surface, #f4f4f1); color: var(--jt-text, #111111); }
:root :is(.edd-blocks-form, .edd-blocks__cart, .edd-blocks__orders-grid .edd-blocks__order) { border-color: var(--jt-border, #dedede); }
.jt-download { padding-top: 24px; }
@media (min-width: 1024px) { .jt-download { padding-top: 40px; } }
.jt-download__top { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; max-width: var(--jt-measure, 720px); }
.jt-download__top.has-image { max-width: none; }
@media (min-width: 768px) {
  .jt-download__top.has-image { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 40px; }
}
.jt-download__media { margin: 0; }
.jt-download__media img { display: block; width: 100%; height: auto; border-radius: var(--jt-radius, 4px); background: var(--jt-surface, #f4f4f1); }
.jt-download__info { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; min-width: 0; }
.jt-download__title {
  margin: 0;
  font-family: var(--jt-font-head); font-size: var(--jt-fs-h1); font-weight: var(--jt-fw-h1); line-height: var(--jt-lh-h1);
  letter-spacing: -0.015em; color: var(--jt-text, #111111);
}
.jt-download__dek { margin: 0; font-size: var(--jt-fs-dek); line-height: var(--jt-lh-dek); color: var(--jt-text-2, #3d3d3d); }
.jt-download__price { margin: 0; font-family: var(--jt-font-head); font-size: var(--jt-fs-h2); font-weight: 800; line-height: 1.1; color: var(--jt-text, #111111); }
.jt-download__buy { width: 100%; padding-top: 4px; }
.jt-download__body { margin-top: 40px; }
.jt-downloads { padding-top: 24px; }
@media (min-width: 1024px) { .jt-downloads { padding-top: 40px; } }
.jt-downloads__head { margin-bottom: 28px; padding-bottom: 18px; border-bottom: 2px solid var(--jt-text, #111111); }
.jt-downloads__title {
  margin: 0;
  font-family: var(--jt-font-head); font-size: var(--jt-fs-h1); font-weight: var(--jt-fw-h1); line-height: var(--jt-lh-h1);
  letter-spacing: -0.015em;
}
.jt-downloads__intro { margin: 12px 0 0; font-size: var(--jt-fs-dek); line-height: var(--jt-lh-dek); color: var(--jt-text-2, #3d3d3d); }
.jt-downloads__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
@media (min-width: 600px) { .jt-downloads__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .jt-downloads__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; } }
.jt-download-card {
  position: relative;
  display: flex; flex-direction: column;
  min-width: 0; overflow: hidden;
  border: 1px solid var(--jt-border, #dedede); border-radius: var(--jt-radius, 4px);
  background: var(--jt-bg, #ffffff); color: var(--jt-text, #111111);
}
.jt-download-card__media { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--jt-surface-2, #e9e9e4); }
.jt-download-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.jt-download-card__body { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; flex: 1; padding: 18px 20px 20px; }
.jt-download-card__title { margin: 0; font-family: var(--jt-font-head); font-size: var(--jt-fs-card-md); font-weight: var(--jt-fw-card-md); line-height: var(--jt-lh-card-md); }
.jt-download-card__title a { color: inherit; text-decoration: none; }
.jt-download-card__title a:hover { text-decoration: underline; text-decoration-color: var(--jt-accent, #0cf57e); text-decoration-thickness: 2px; }
.jt-download-card__dek { margin: 0; font-size: var(--jt-fs-ui); line-height: var(--jt-lh-ui); color: var(--jt-text-2, #3d3d3d); }
.jt-download-card__price { margin: 0; font-size: 18px; font-weight: 800; }
.jt-download-card__buy { width: 100%; margin-top: auto; }
