/*
 * HSWare 6.0.4 — Template 2 Kadence Global Palette contract.
 *
 * This is the FINAL color layer for Template 2 and is intentionally enqueued
 * after the Template 2 homepage, directory, single-software and comment CSS.
 * Nothing here writes Kadence's --global-palette* variables. It only consumes
 * them, so changing a Kadence Selectable Palette updates every Template 2
 * screen at once.
 *
 * Kadence role map used by Template 2:
 *  1  Accent             -> primary buttons, primary links, active controls
 *  2  Accent Alt         -> hover/focus/active accent state
 *  3  Strongest Text     -> H1/H2/H3 and highest-contrast labels
 *  4  Strong Text        -> body/interface text
 *  5  Medium Text        -> descriptions/secondary text
 *  6  Subtle Text        -> metadata/placeholders/dividers
 *  7  Subtle Background  -> alternate sections and soft UI areas
 *  8  Lighter Background -> foreground on accent buttons + layered surfaces
 *  9  Base Background    -> page/card/base surface
 * 10  Accent Complement  -> supporting highlight only
 * 11  Success            -> positive/verified states
 * 12  Info               -> informational states
 * 13  Alert              -> critical/error states
 * 14  Warning            -> caution states
 * 15  Rating             -> ratings/highlight feedback
 */
body.softorbit-template2 {
  --t2-accent: var(--global-palette1, #059669);
  --t2-accent-alt: var(--global-palette2, #047857);
  --t2-text-strongest: var(--global-palette3, #0c0a09);
  --t2-text-strong: var(--global-palette4, #1c1917);
  --t2-text-medium: var(--global-palette5, #57534e);
  --t2-text-subtle: var(--global-palette6, #78716c);
  --t2-bg-subtle: var(--global-palette7, #f5f5f4);
  --t2-bg-lighter: var(--global-palette8, #fafaf9);
  --t2-bg-base: var(--global-palette9, #ffffff);
  --t2-accent-complement: var(--global-palette10, #f6b000);
  --t2-success: var(--global-palette11, #10b981);
  --t2-info: var(--global-palette12, #1a69ff);
  --t2-alert: var(--global-palette13, #c2410c);
  --t2-warning: var(--global-palette14, #fdba74);
  --t2-rating: var(--global-palette15, #f6b000);

  /* User-requested primary-button foreground: Kadence Palette 8. */
  --t2-on-accent: var(--t2-bg-lighter);

  /* Derived colors stay tied to the same live Kadence palette. */
  --t2-border: color-mix(in srgb, var(--t2-text-subtle) 18%, var(--t2-bg-base));
  --t2-border-strong: color-mix(in srgb, var(--t2-text-subtle) 31%, var(--t2-bg-base));
  --t2-accent-soft: color-mix(in srgb, var(--t2-accent) 8%, var(--t2-bg-base));
  --t2-accent-soft-2: color-mix(in srgb, var(--t2-accent) 15%, var(--t2-bg-base));
  --t2-accent-border: color-mix(in srgb, var(--t2-accent) 30%, var(--t2-bg-base));
  --t2-complement-soft: color-mix(in srgb, var(--t2-accent-complement) 14%, var(--t2-bg-base));
  --t2-success-soft: color-mix(in srgb, var(--t2-success) 14%, var(--t2-bg-base));
  --t2-info-soft: color-mix(in srgb, var(--t2-info) 10%, var(--t2-bg-base));
  --t2-alert-soft: color-mix(in srgb, var(--t2-alert) 9%, var(--t2-bg-base));
  --t2-warning-soft: color-mix(in srgb, var(--t2-warning) 14%, var(--t2-bg-base));
  --t2-rating-soft: color-mix(in srgb, var(--t2-rating) 18%, var(--t2-bg-base));

  /* Backward-compatible aliases used throughout the existing Template 2 CSS. */
  --s2-accent-primary: var(--t2-accent);
  --s2-accent-secondary: var(--t2-accent-alt);
  --s2-button-text: var(--t2-on-accent);
  --s2-base-1: var(--t2-bg-subtle);
  --s2-base-2: var(--t2-bg-lighter);
  --s2-base-3: var(--t2-bg-base);
  --s2-blue: var(--t2-accent);
  --s2-blue-hover: var(--t2-accent-alt);
  --s2-deep: var(--t2-text-strongest);
  --s2-ink: var(--t2-text-strong);
  --s2-slate: var(--t2-text-medium);
  --s2-steel: var(--t2-text-subtle);
  --s2-surface: var(--t2-bg-base);
  --s2-base-soft: var(--t2-bg-subtle);
  --s2-white: var(--t2-bg-base);
  --s2-yellow: var(--t2-accent-complement);
  --s2-green: var(--t2-success);
  --s2-info: var(--t2-info);
  --s2-coral: var(--t2-alert);
  --s2-warning: var(--t2-warning);
  --s2-rating: var(--t2-rating);
  --s2-blue-soft: var(--t2-accent-soft);
  --s2-blue-border: var(--t2-accent-border);
  --s2-yellow-soft: var(--t2-complement-soft);
  --s2-yellow-soft-2: color-mix(in srgb, var(--t2-accent-complement) 11%, var(--t2-bg-base));
  --s2-yellow-ink: color-mix(in srgb, var(--t2-accent-complement) 55%, var(--t2-text-strongest));
  --s2-coral-soft: var(--t2-alert-soft);
  --s2-green-soft: var(--t2-success-soft);
  --s2-charcoal: var(--t2-text-strong);
  --s2-placeholder: color-mix(in srgb, var(--t2-text-subtle) 72%, var(--t2-bg-base));
  --s2-line-soft: var(--t2-border);
  --s2-line: var(--t2-border);
  --s2-line-strong: var(--t2-border-strong);

  --sb-stone-50: var(--t2-bg-base);
  --sb-stone-100: var(--t2-bg-subtle);
  --sb-stone-200: var(--t2-border);
  --sb-stone-300: var(--t2-border-strong);
  --sb-stone-400: var(--t2-text-subtle);
  --sb-stone-500: var(--t2-text-subtle);
  --sb-stone-600: var(--t2-text-medium);
  --sb-stone-700: color-mix(in srgb, var(--t2-text-strong) 72%, var(--t2-text-medium));
  --sb-stone-800: var(--t2-text-strong);
  --sb-stone-900: var(--t2-text-strong);
  --sb-stone-950: var(--t2-text-strongest);
  --sb-green: var(--t2-accent);
  --sb-green-dark: var(--t2-accent-alt);
  --sb-green-soft: var(--t2-accent-soft);

  background: var(--t2-bg-base) !important;
  color: var(--t2-text-strong) !important;
}

body.softorbit-template2 .dsoft-t2 {
  --t2-ink: var(--t2-text-strong);
  --t2-deep: var(--t2-text-strongest);
  --t2-muted: var(--t2-text-medium);
  --t2-line: var(--t2-border);
  --t2-soft: var(--t2-bg-subtle);
  --t2-blue: var(--t2-accent);
  --t2-yellow: var(--t2-accent-complement);
  --t2-green: var(--t2-success);
  color: var(--t2-text-strong) !important;
  background: transparent !important;
}

/* --------------------------------------------------------------------------
 * Global Template 2 surfaces and typography.
 * Contrast colors stay text/interface colors; Base colors stay backgrounds.
 * -------------------------------------------------------------------------- */
body.softorbit-template2 .content-bg,
body.softorbit-template2 .site-main,
body.softorbit-template2 .sbt2-home,
body.softorbit-template2 .sb-archive-main,
body.softorbit-template2 .hsware-directory-page,
body.softorbit-template2 .hsware-directory-results,
body.softorbit-template2 .hsware-category-directory-results,
body.softorbit-template2.kadence-downly-software-single .kadence-downloadable-single-main {
  background: var(--t2-bg-base) !important;
  color: var(--t2-text-strong) !important;
}

body.softorbit-template2 h1,
body.softorbit-template2 h2,
body.softorbit-template2 h3,
body.softorbit-template2 h4,
body.softorbit-template2 .sbt2-hero h1,
body.softorbit-template2 .sbt2-home .sb-section h2,
body.softorbit-template2 .hsware-directory-heading h2,
body.softorbit-template2 .hsware-category-main-identity h2 a,
body.softorbit-template2 .hsware-category-tile h3 a,
body.softorbit-template2 .dsoft-t2 h1,
body.softorbit-template2 .dsoft-t2 h2,
body.softorbit-template2 .dsoft-t2 h3 {
  color: var(--t2-text-strongest) !important;
}

body.softorbit-template2 p {
  color: var(--t2-text-strong);
}
body.softorbit-template2 .sbt2-hero-desc,
body.softorbit-template2 .sbt2-home .sb-section-head p,
body.softorbit-template2 .sbt2-home .sb-slider-head p,
body.softorbit-template2 .dsoft-t2-subtitle,
body.softorbit-template2 .dsoft-t2-heading p,
body.softorbit-template2 .hsware-category-main-identity p,
body.softorbit-template2 .hsware-category-tile > p {
  color: var(--t2-text-medium);
}

/* Base-surface cards across homepage, archives, category pages and software. */
body.softorbit-template2 .sbt2-search,
body.softorbit-template2 .sbt2-popular a,
body.softorbit-template2 .sbt2-software-card,
body.softorbit-template2 .sbt2-card-logo,
body.softorbit-template2 .sbt2-card-footer,
body.softorbit-template2 .sbt2-home .sb-all-row,
body.softorbit-template2 .sbt2-home .sb-empty,
body.softorbit-template2 .sb-archive-hero,
body.softorbit-template2 .hsware-directory-sidebar,
body.softorbit-template2 .hsware-category-group,
body.softorbit-template2 .hsware-category-section,
body.softorbit-template2 .hsware-category-section-head,
body.softorbit-template2 .hsware-category-tile,
body.softorbit-template2 .dsoft-t2-logo,
body.softorbit-template2 .dsoft-t2-stats,
body.softorbit-template2 .dsoft-t2-stats > div,
body.softorbit-template2 .dsoft-t2-copy-card,
body.softorbit-template2 .dsoft-t2-versions,
body.softorbit-template2 .dsoft-t2-faqs,
body.softorbit-template2 .dsoft-t2-faqs details,
body.softorbit-template2 .dsoft-t2-comments .comment-respond,
body.softorbit-template2 .dsoft-t2-comments textarea,
body.softorbit-template2 .dsoft-t2-comments input[type="text"],
body.softorbit-template2 .dsoft-t2-comments input[type="email"],
body.softorbit-template2 .dsoft-t2-comments input[type="url"],
body.softorbit-template2 .dsoft-t2-comments .comment-list > li > .comment-body {
  background-color: var(--t2-bg-base) !important;
  border-color: var(--t2-border) !important;
}

body.softorbit-template2 .hsware-category-tile-grid,
body.softorbit-template2 .hsware-category-group-children,
body.softorbit-template2 .hsware-category-section-empty,
body.softorbit-template2 .hsware-sidebar-directory-link,
body.softorbit-template2 .sbt2-home .sb-filter-pills {
  background: var(--t2-bg-subtle) !important;
}

/* --------------------------------------------------------------------------
 * Primary action contract: Palette 1 bg, Palette 2 hover, Palette 8 foreground.
 * This covers every custom Template 2 primary button, not only the hero button.
 * -------------------------------------------------------------------------- */
body.softorbit-template2 .sbt2-search button,
body.softorbit-template2 .sb-search button,
body.softorbit-template2 .sbt2-download,
body.softorbit-template2 .sbt2-home .sb-all-row > a,
body.softorbit-template2 .sbt2-home .sb-filter-pills button.is-active,
body.softorbit-template2 .hsware-software-directory .hsware-directory-search button,
body.softorbit-template2 .hsware-directory-pagination > span.page-numbers.current,
body.softorbit-template2 .hsware-directory-pagination > a.page-numbers:hover,
body.softorbit-template2 .sb-pagination .page-numbers.current,
body.softorbit-template2 .sb-pagination .page-numbers:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-primary,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-versions button,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta button,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-comments .submit,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-comments input[type="submit"],
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-comments button[type="submit"] {
  border-color: var(--t2-accent) !important;
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
}

body.softorbit-template2 .sbt2-search button:hover,
body.softorbit-template2 .sbt2-search button:focus-visible,
body.softorbit-template2 .sb-search button:hover,
body.softorbit-template2 .sb-search button:focus-visible,
body.softorbit-template2 .sbt2-download:hover,
body.softorbit-template2 .sbt2-download:focus-visible,
body.softorbit-template2 .sbt2-home .sb-all-row > a:hover,
body.softorbit-template2 .sbt2-home .sb-all-row > a:focus-visible,
body.softorbit-template2 .sbt2-home .sb-filter-pills button.is-active:hover,
body.softorbit-template2 .hsware-software-directory .hsware-directory-search button:hover,
body.softorbit-template2 .hsware-software-directory .hsware-directory-search button:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-primary:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-primary:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-versions button:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-versions button:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta button:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta button:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-comments .submit:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-comments input[type="submit"]:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-comments button[type="submit"]:hover {
  border-color: var(--t2-accent-alt) !important;
  background: var(--t2-accent-alt) !important;
  color: var(--t2-on-accent) !important;
}

/* All glyphs/content inside primary actions inherit the Palette 8 foreground. */
body.softorbit-template2 .sbt2-search button svg,
body.softorbit-template2 .sbt2-search button svg *,
body.softorbit-template2 .sb-search button svg,
body.softorbit-template2 .sb-search button svg *,
body.softorbit-template2 .sbt2-download svg,
body.softorbit-template2 .sbt2-download svg *,
body.softorbit-template2 .hsware-software-directory .hsware-directory-search button svg,
body.softorbit-template2 .hsware-software-directory .hsware-directory-search button svg *,
body.softorbit-template2 .dsoft-t2-primary .dsoft-t2-button-icon,
body.softorbit-template2 .dsoft-t2-primary .dsoft-t2-button-icon svg,
body.softorbit-template2 .dsoft-t2-primary .dsoft-t2-button-icon svg *,
body.softorbit-template2 .dsoft-t2-old-download .dsoft-t2-button-icon,
body.softorbit-template2 .dsoft-t2-old-download .dsoft-t2-button-icon svg,
body.softorbit-template2 .dsoft-t2-old-download .dsoft-t2-button-icon svg * {
  color: var(--t2-on-accent) !important;
  stroke: currentColor !important;
}

/* Shared button metadata stays in the button and uses the same foreground role. */
body.softorbit-template2 .dsoft-t2-button-copy,
body.softorbit-template2 .dsoft-t2-button-copy > b,
body.softorbit-template2 .dsoft-t2-button-copy > span,
body.softorbit-template2 .dsoft-t2-button-meta {
  color: inherit !important;
}
body.softorbit-template2 .dsoft-t2-button-meta {
  border-left-color: color-mix(in srgb, var(--t2-on-accent) 32%, transparent) !important;
  color: color-mix(in srgb, var(--t2-on-accent) 82%, transparent) !important;
}

/* Outline/secondary action: Accent outline/text, Accent Alt on hover. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-secondary,
body.softorbit-template2 .hsware-category-main-actions > a {
  border-color: var(--t2-accent) !important;
  background: transparent !important;
  color: var(--t2-accent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-secondary:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-secondary:focus-visible,
body.softorbit-template2 .hsware-category-main-actions > a:hover,
body.softorbit-template2 .hsware-category-main-actions > a:focus-visible {
  border-color: var(--t2-accent-alt) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}

/* --------------------------------------------------------------------------
 * Homepage: every interactive/control color follows the same palette roles.
 * -------------------------------------------------------------------------- */
body.softorbit-template2 .sbt2-search:focus-within,
body.softorbit-template2 .sb-search:focus-within {
  border-color: var(--t2-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--t2-accent) 14%, transparent) !important;
}
body.softorbit-template2 .sbt2-search input,
body.softorbit-template2 .sb-search input { color: var(--t2-text-strong) !important; }
body.softorbit-template2 .sbt2-search input::placeholder,
body.softorbit-template2 .sb-search input::placeholder { color: var(--t2-text-subtle) !important; }

body.softorbit-template2 .sbt2-home .sb-section-meta,
body.softorbit-template2 .sbt2-home .sb-slider-view-all,
body.softorbit-template2 .sbt2-card-meta a,
body.softorbit-template2 .sbt2-software-card:hover h3 a {
  color: var(--t2-accent) !important;
}
body.softorbit-template2 .sbt2-home .sb-section-meta::before,
body.softorbit-template2 .sbt2-card-meta a,
body.softorbit-template2 .sbt2-home .sb-all-icon {
  background-color: var(--t2-accent-soft) !important;
}
body.softorbit-template2 .sbt2-home .sb-section-meta::before { background: var(--t2-accent) !important; }
body.softorbit-template2 .sbt2-home .sb-slider-view-all:hover { color: var(--t2-accent-alt) !important; }
body.softorbit-template2 .sbt2-home .sb-all-icon { color: var(--t2-accent) !important; }
body.softorbit-template2 .sbt2-home .sb-filter-pills button { color: var(--t2-text-medium) !important; }
body.softorbit-template2 .sbt2-home .sb-filter-pills button:hover {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}
body.softorbit-template2 .sbt2-verified,
body.softorbit-template2 .sbt2-home .sb-updates-note,
body.softorbit-template2 .sbt2-stats strong.is-green,
body.softorbit-template2 .sbt2-update-badge { color: var(--t2-success) !important; }

/* Category area is no longer a contrast/text color used as a background. */
body.softorbit-template2 .sbt2-categories {
  background: var(--t2-bg-subtle) !important;
  color: var(--t2-text-strong) !important;
  border: 1px solid var(--t2-border) !important;
  box-shadow: 0 16px 38px color-mix(in srgb, var(--t2-text-strongest) 7%, transparent) !important;
}
body.softorbit-template2 .sbt2-categories::before { background: var(--t2-accent) !important; }
body.softorbit-template2 .sbt2-categories::after { background: var(--t2-accent-complement) !important; }
body.softorbit-template2 .sbt2-category-eyebrow { color: var(--t2-accent) !important; }
body.softorbit-template2 .sbt2-category-eyebrow i { background: var(--t2-accent) !important; }
body.softorbit-template2 .sbt2-category-head h2 { color: var(--t2-text-strongest) !important; }
body.softorbit-template2 .sbt2-category-head p { color: var(--t2-text-medium) !important; }
body.softorbit-template2 .sbt2-categories .sb-category-card {
  border-color: var(--t2-border) !important;
  background: var(--t2-bg-base) !important;
  color: var(--t2-text-strong) !important;
}
body.softorbit-template2 .sbt2-categories .sb-category-card:hover {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-bg-base) !important;
}
body.softorbit-template2 .sbt2-categories .sb-cat-icon {
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent) !important;
}
body.softorbit-template2 .sbt2-categories .sb-category-card h3 { color: var(--t2-text-strongest) !important; }
body.softorbit-template2 .sbt2-categories .sb-category-card:hover h3 { color: var(--t2-accent-alt) !important; }
body.softorbit-template2 .sbt2-categories .sb-category-card p { color: var(--t2-text-medium) !important; }
body.softorbit-template2 .sbt2-categories .sb-cat-view {
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent) !important;
}
body.softorbit-template2 .sbt2-categories .sb-category-card:hover .sb-cat-view {
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
}

/* --------------------------------------------------------------------------
 * Directory/category/archive pages.
 * -------------------------------------------------------------------------- */
body.softorbit-template2 .hsware-directory-hero,
body.softorbit-template2 .sb-archive-hero { background: var(--t2-bg-base) !important; border-color: var(--t2-border) !important; }
body.softorbit-template2 .hsware-directory-search,
body.softorbit-template2 .hsware-directory-page-size { background: var(--t2-bg-base) !important; border-color: var(--t2-border-strong) !important; }
body.softorbit-template2 .hsware-directory-search:focus-within { border-color: var(--t2-accent) !important; }
body.softorbit-template2 .hsware-directory-heading > a,
body.softorbit-template2 .hsware-directory-heading-actions > a,
body.softorbit-template2 .hsware-category-tile-view:hover,
body.softorbit-template2 .hsware-category-group-view:hover,
body.softorbit-template2 .hsware-sidebar-directory-link:hover { color: var(--t2-accent-alt) !important; }

body.softorbit-template2 .hsware-category-filter.is-active,
body.softorbit-template2 .hsware-category-filter.is-active:not(.hsware-category-all),
body.softorbit-template2 .hsware-category-all.is-active,
body.softorbit-template2 .hsware-category-toggle:hover,
body.softorbit-template2 .hsware-category-toggle:focus-visible,
body.softorbit-template2 .hsware-category-toggle[aria-expanded="true"] {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}
body.softorbit-template2 .hsware-category-filter.is-active,
body.softorbit-template2 .hsware-category-all.is-active { box-shadow: inset 3px 0 0 var(--t2-accent) !important; }
body.softorbit-template2 .hsware-category-children { border-left-color: var(--t2-accent-border) !important; }
body.softorbit-template2 .hsware-category-group-count,
body.softorbit-template2 .hsware-category-main-actions > b,
body.softorbit-template2 .hsware-category-tile-stats > b {
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}
body.softorbit-template2 .hsware-sidebar-heading-icon {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent) !important;
}
body.softorbit-template2 .hsware-sidebar-heading > a {
  border-color: var(--t2-accent) !important;
  background: transparent !important;
  color: var(--t2-accent) !important;
}
body.softorbit-template2 .hsware-sidebar-heading > a:hover,
body.softorbit-template2 .hsware-sidebar-heading > a:focus-visible {
  border-color: var(--t2-accent-alt) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}
body.softorbit-template2 .hsware-directory-pagination > a.page-numbers,
body.softorbit-template2 .hsware-directory-pagination > span.page-numbers,
body.softorbit-template2 .sb-pagination .page-numbers {
  border-color: var(--t2-border) !important;
  background: var(--t2-bg-base) !important;
  color: var(--t2-text-medium) !important;
}
body.softorbit-template2 .hsware-directory-pagination > span.page-numbers.current,
body.softorbit-template2 .hsware-directory-pagination > a.page-numbers:hover,
body.softorbit-template2 .sb-pagination .page-numbers.current,
body.softorbit-template2 .sb-pagination .page-numbers:hover {
  border-color: var(--t2-accent) !important;
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
}

/* --------------------------------------------------------------------------
 * Software single page.
 * -------------------------------------------------------------------------- */
body.softorbit-template2.kadence-downly-software-single,
body.softorbit-template2.kadence-downly-software-single .content-bg,
body.softorbit-template2.kadence-downly-software-single .site-main,
body.softorbit-template2.kadence-downly-software-single .kadence-downloadable-single-main,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 {
  background: var(--t2-bg-base) !important;
}

/* Stable compact hero and old-version button layout. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-primary,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download {
  min-height: 44px !important;
  border-radius: 999px !important;
  padding: 0 20px !important;
  line-height: 1 !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download {
  display: inline-flex !important;
  min-width: 176px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 750;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download .dsoft-t2-button-copy {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download .dsoft-t2-button-meta {
  margin: 0;
  padding-left: 8px;
  border-left: 1px solid color-mix(in srgb, var(--t2-on-accent) 32%, transparent) !important;
  font-size: 10px;
  line-height: 1;
}

/* Requirements remain compact accent mini-strips, now fully palette-driven. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card {
  border-color: var(--t2-accent) !important;
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
  box-shadow: none !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card > small,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card b { color: var(--t2-on-accent) !important; }
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card span {
  color: color-mix(in srgb, var(--t2-on-accent) 78%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card > div {
  border-bottom-color: color-mix(in srgb, var(--t2-on-accent) 18%, transparent) !important;
}

/* Hero information card = Base background, Contrast text. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-stats,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-stats > div {
  background: var(--t2-bg-base) !important;
  border-color: var(--t2-border) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-stats small { color: var(--t2-text-subtle) !important; }
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-stats strong { color: var(--t2-text-strongest) !important; }

/* Feature tones use Accent Complement + Notice roles, never random colors. */
body.softorbit-template2 .dsoft-t2-features article.tone-0 { background: var(--t2-complement-soft) !important; }
body.softorbit-template2 .dsoft-t2-features article.tone-1 { background: var(--t2-info-soft) !important; }
body.softorbit-template2 .dsoft-t2-features article.tone-2 { background: var(--t2-alert-soft) !important; }
body.softorbit-template2 .dsoft-t2-features article.tone-3 { background: var(--t2-success-soft) !important; }
body.softorbit-template2 .dsoft-t2-features article > span { background: var(--t2-bg-base) !important; color: var(--t2-text-medium) !important; }

/* FAQ open state = Accent, foreground = Palette 8. */
body.softorbit-template2 .dsoft-t2-faqs summary span {
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent) !important;
}
body.softorbit-template2 .dsoft-t2-faqs details[open] summary span {
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
}

/* Lower CTA is a Base section so its download button can use the same primary action contract. */
body.softorbit-template2 .dsoft-t2-cta {
  background: var(--t2-bg-subtle) !important;
  color: var(--t2-text-strong) !important;
  border: 1px solid var(--t2-border) !important;
}
body.softorbit-template2 .dsoft-t2-cta > div > span {
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}
body.softorbit-template2 .dsoft-t2-cta h2 { color: var(--t2-text-strongest) !important; }
body.softorbit-template2 .dsoft-t2-cta p { color: var(--t2-text-medium) !important; }

/* Comment controls use Contrast for text and Accent for focus/submit. */
body.softorbit-template2 .dsoft-t2-comments form.comment-form label { color: var(--t2-text-strong) !important; }
body.softorbit-template2 .dsoft-t2-comments .comment-notes,
body.softorbit-template2 .dsoft-t2-comments .logged-in-as { color: var(--t2-text-subtle) !important; }
body.softorbit-template2 .dsoft-t2-comments textarea,
body.softorbit-template2 .dsoft-t2-comments input[type="text"],
body.softorbit-template2 .dsoft-t2-comments input[type="email"],
body.softorbit-template2 .dsoft-t2-comments input[type="url"] {
  border-color: var(--t2-border-strong) !important;
  background: var(--t2-bg-base) !important;
  color: var(--t2-text-strong) !important;
}
body.softorbit-template2 .dsoft-t2-comments textarea:focus,
body.softorbit-template2 .dsoft-t2-comments input:focus {
  border-color: var(--t2-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--t2-accent) 14%, transparent) !important;
}

/* Share-network cards are theme-managed rather than hard-coded brand colors. */
body.softorbit-template2 .dsoft-share-networks button span { color: var(--t2-accent) !important; }
body.softorbit-template2 .dsoft-share-networks button:hover span { color: var(--t2-accent-alt) !important; }

/* Notice/status roles. */
body.softorbit-template2 .dsoft-t2-trust span:first-child,
body.softorbit-template2 .sbt2-verified,
body.softorbit-template2 .sbt2-update-badge { color: var(--t2-success) !important; }
body.softorbit-template2 .sbt2-update-badge { background: var(--t2-bg-base) !important; border-color: var(--t2-border) !important; }

@media (max-width: 640px) {
  body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-old-download {
    min-width: 0;
    width: auto !important;
    max-width: 100%;
  }
}

/* The CTA previously had a higher-specificity legacy metadata color. Keep its
 * version/size text on the same Palette 8 foreground as every primary button. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta .dsoft-t2-button-meta {
  border-left-color: color-mix(in srgb, var(--t2-on-accent) 32%, transparent) !important;
  color: color-mix(in srgb, var(--t2-on-accent) 82%, transparent) !important;
}

/* Directory final-specificity guards for legacy !important rules. */
body.softorbit-template2 .hsware-software-directory .hsware-directory-pagination > a.page-numbers,
body.softorbit-template2 .hsware-software-directory .hsware-directory-pagination > span.page-numbers {
  border-color: var(--t2-border) !important;
  background: var(--t2-bg-base) !important;
  color: var(--t2-text-medium) !important;
}
body.softorbit-template2 .hsware-software-directory .hsware-directory-pagination > span.page-numbers.current,
body.softorbit-template2 .hsware-software-directory .hsware-directory-pagination > a.page-numbers:hover {
  border-color: var(--t2-accent) !important;
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
}
body.softorbit-template2 .hsware-software-directory .hsware-category-toggle:hover,
body.softorbit-template2 .hsware-software-directory .hsware-category-toggle:focus-visible,
body.softorbit-template2 .hsware-software-directory .hsware-category-toggle[aria-expanded="true"] {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}

/* Remaining shared Template 2 action/badge surfaces. */
body.softorbit-template2 .sbt2-home .sb-section-meta span {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}
body.softorbit-template2 main .wp-element-button,
body.softorbit-template2 main .wp-block-button__link {
  border-color: var(--t2-accent) !important;
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
}
body.softorbit-template2 main .wp-element-button:hover,
body.softorbit-template2 main .wp-element-button:focus-visible,
body.softorbit-template2 main .wp-block-button__link:hover,
body.softorbit-template2 main .wp-block-button__link:focus-visible {
  border-color: var(--t2-accent-alt) !important;
  background: var(--t2-accent-alt) !important;
  color: var(--t2-on-accent) !important;
}
body.softorbit-template2 .sb-carousel-controls > button:hover,
body.softorbit-template2 .sb-post-slider-controls button:hover:not(:disabled) {
  border-color: var(--t2-accent) !important;
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
}

/* Hero verification pill is a branded highlight, so it follows Accent just like
 * the active category/search controls: Palette 1 foreground, accent-derived soft
 * surface/border. Verified statuses inside software cards can still use Success. */
body.softorbit-template2 .sbt2-verified-pill {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent) !important;
}
body.softorbit-template2 .sbt2-verified-pill span { color: var(--t2-accent) !important; }
body.softorbit-template2 .sbt2-popular a:hover,
body.softorbit-template2 .sbt2-popular a:focus-visible {
  border-color: var(--t2-accent-border) !important;
  background: var(--t2-accent-soft) !important;
  color: var(--t2-accent-alt) !important;
}

/* ========================================================================== 
 * HSWare 5.1.6 — Template 2 single-page semantic finishing layer.
 *
 * Requirements: Contrast palette owns the dark surface; Base palette owns the
 * readable foreground.  The Template 2 single layout no longer supplies a
 * custom font family, so Kadence typography is inherited from the site.
 *
 * Comments: the submit control uses the same Accent -> Accent Alt -> Base
 * foreground contract as every other primary action.  #comments selectors are
 * deliberately included to outrank the legacy comment stylesheet.
 *
 * Bottom download CTA: Accent 1 + Accent 2 form the section gradient, while
 * its pill/button are Base surfaces with Contrast text.
 * ========================================================================== */

/* Let the selected Kadence typography flow through the complete Template 2
 * single-software experience instead of the legacy child-theme font stack. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 {
  font-family: inherit !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 button,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 input,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 textarea,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 select {
  font-family: inherit !important;
}

/* Requirements mini-strips: dark Contrast surface + light Base foreground. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card {
  border-color: color-mix(in srgb, var(--t2-text-strong) 82%, var(--t2-text-strongest)) !important;
  background: linear-gradient(
    145deg,
    var(--t2-text-strongest) 0%,
    var(--t2-text-strong) 100%
  ) !important;
  color: var(--t2-bg-base) !important;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--t2-text-strongest) 10%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card > small {
  color: var(--t2-bg-lighter) !important;
  font-family: inherit !important;
  opacity: .82 !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card > div {
  border-bottom-color: color-mix(in srgb, var(--t2-bg-base) 18%, transparent) !important;
  color: var(--t2-bg-base) !important;
  font-family: inherit !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card span {
  color: color-mix(in srgb, var(--t2-bg-lighter) 78%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-req-card b {
  color: var(--t2-bg-base) !important;
  font-family: inherit !important;
}

/* Comments: override the old neutral gradient with Kadence Accent colors. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments .submit,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments input[type="submit"],
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments button[type="submit"],
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area .submit,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area input[type="submit"],
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area button[type="submit"] {
  border-color: var(--t2-accent) !important;
  background: var(--t2-accent) !important;
  color: var(--t2-on-accent) !important;
  box-shadow: none !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments .submit:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments input[type="submit"]:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments button[type="submit"]:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments .submit:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments input[type="submit"]:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments button[type="submit"]:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area .submit:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area input[type="submit"]:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area button[type="submit"]:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area .submit:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area input[type="submit"]:focus-visible,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area button[type="submit"]:focus-visible {
  border-color: var(--t2-accent-alt) !important;
  background: var(--t2-accent-alt) !important;
  color: var(--t2-on-accent) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--t2-accent) 15%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments .dsoft-comment-submit-icon,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments #comments .dsoft-comment-submit-icon svg,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area .dsoft-comment-submit-icon,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2-comments .comments-area .dsoft-comment-submit-icon svg {
  color: inherit !important;
  stroke: currentColor !important;
}

/* Bottom CTA: branded Accent gradient, then Base surfaces + Contrast text. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-cta {
  position: relative;
  isolation: isolate;
  border-color: color-mix(in srgb, var(--t2-accent-alt) 36%, transparent) !important;
  background: linear-gradient(
    135deg,
    var(--t2-accent) 0%,
    color-mix(in srgb, var(--t2-accent) 55%, var(--t2-accent-alt)) 48%,
    var(--t2-accent-alt) 100%
  ) !important;
  color: var(--t2-bg-base) !important;
  box-shadow: 0 18px 42px color-mix(in srgb, var(--t2-accent-alt) 18%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-cta::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 250px;
  height: 250px;
  top: -155px;
  right: -65px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--t2-bg-base) 13%, transparent);
  filter: blur(2px);
  pointer-events: none;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-cta > div > span {
  border: 1px solid color-mix(in srgb, var(--t2-bg-base) 72%, transparent) !important;
  background: var(--t2-bg-lighter) !important;
  color: var(--t2-text-strong) !important;
  box-shadow: 0 3px 12px color-mix(in srgb, var(--t2-text-strongest) 8%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-cta h2 {
  color: var(--t2-bg-base) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-cta p {
  color: color-mix(in srgb, var(--t2-bg-lighter) 88%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta button {
  border: 1px solid var(--t2-bg-lighter) !important;
  background: var(--t2-bg-base) !important;
  color: var(--t2-text-strongest) !important;
  box-shadow: 0 7px 18px color-mix(in srgb, var(--t2-text-strongest) 12%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta button:hover,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta button:focus-visible {
  border-color: var(--t2-bg-subtle) !important;
  background: var(--t2-bg-lighter) !important;
  color: var(--t2-text-strongest) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--t2-bg-base) 25%, transparent),
              0 9px 22px color-mix(in srgb, var(--t2-text-strongest) 15%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta .dsoft-t2-button-copy,
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta [data-dsoft-button-label] {
  color: inherit !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-download-stack-cta .dsoft-t2-button-meta {
  border-left-color: color-mix(in srgb, var(--t2-text-strongest) 22%, transparent) !important;
  color: var(--t2-text-medium) !important;
}



/* --------------------------------------------------------------------------
 * HSWare V5.1.7 — Template 2 artwork breathing room
 *
 * Software logos must sit inside their framed surface instead of touching the
 * border. These rules intentionally live in the late-loaded palette contract
 * so homepage, directory/category, related cards and the single hero all use
 * one consistent component treatment while still following Kadence Base and
 * Contrast palette colors.
 * -------------------------------------------------------------------------- */
body.softorbit-template2 .sbt2-card-logo.has-image {
  box-sizing: border-box !important;
  padding: 7px !important;
  overflow: hidden !important;
  border: 1px solid var(--t2-border) !important;
  background: var(--t2-bg-base) !important;
  box-shadow: 0 1px 3px color-mix(in srgb, var(--t2-text-strongest) 5%, transparent) !important;
}
body.softorbit-template2 .sbt2-card-logo.has-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Compact directory cards use the same frame with slightly tighter spacing. */
body.softorbit-template2 .hsware-software-directory .sbt2-software-card.hsware-compact-software-card .sbt2-card-logo.has-image {
  padding: 6px !important;
}

/* Large software hero artwork: preserve the 250/200/150px outer frame and add
   proportional inner breathing room instead of shrinking the frame itself. */
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-logo,
body.kadence-downly-software-single.softorbit-template2 .dsoft-t2 .dsoft-t2-logo {
  box-sizing: border-box !important;
  padding: clamp(12px, 1.4vw, 20px) !important;
  overflow: hidden !important;
  border: 1px solid var(--t2-border) !important;
  background: var(--t2-bg-base) !important;
  box-shadow: 0 8px 24px -4px color-mix(in srgb, var(--t2-text-strongest) 6%, transparent) !important;
}
body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-logo img,
body.kadence-downly-software-single.softorbit-template2 .dsoft-t2 .dsoft-t2-logo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 12px !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 900px) and (min-width: 641px) {
  body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-logo,
  body.kadence-downly-software-single.softorbit-template2 .dsoft-t2 .dsoft-t2-logo {
    padding: 16px !important;
  }
}
@media (max-width: 640px) {
  body.softorbit-template2.kadence-downly-software-single .dsoft-t2 .dsoft-t2-logo,
  body.kadence-downly-software-single.softorbit-template2 .dsoft-t2 .dsoft-t2-logo {
    padding: 12px !important;
  }
}
