/*
Theme Name: NexSas-Child
Template:   nexsas
Theme URI: https://nextsaas-wp-dark.pixels71.com/
Author: Pixels71
Author URI: https://themeforest.net/user/pixels71
Description: NexSas is a robust and versatile SaaS, Software & Startup WordPress Theme, tailored specifically for technology-driven businesses. It's the ideal solution for transforming your Creative or technology website. Designed with conversion optimization in mind, NexSas combines sleek, modern aesthetics with powerful features to effectively showcase your software or services.
Version: 1.1.0
Requires at least: 5.0
Tested up to: 6.9
Requires PHP: 7.0
License: GNU General Public License v2 or later 
License URI: http: //www.gnu.org/licenses/gpl-2.0.html
Text Domain: nexsas-child
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

Copyright 2025 NexSas. This theme is distributed under the terms of the GNU General Public License (GPL).
*/

html {
    scroll-behavior: auto !important;
}

.alignleft {
    float: left;
    margin-right: 1.5em;
}

.alignright {
    float: right;
    margin-left: 1.5em;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.bypostauthor {
    font-weight: bold;
}

.gallery-caption {
    font-style: italic;
    text-align: center;
}

.screen-reader-text {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* Footer background — full footer including copyright bar */
#nextsass-footer {
    background-image: url('/wp-content/uploads/2026/06/2c4a6498-ac38-459f-a4d4-e535cde203f8.png') !important;
    background-size: 100% 100% !important;
    background-position: left top !important;
    background-repeat: no-repeat !important;
}
html body .elementor-element.elementor-element-ft_main:not(.elementor-motion-effects-element-type-background),
html body .elementor-element.elementor-element-ft_main > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-image: none !important;
}
html body .elementor-element.elementor-element-ft_main {
    background-color: transparent !important;
}

/* Reset wp-block-table default thick borders */
html body .wp-block-table thead,
html body .wp-block-table tfoot {
    border: none !important;
}
html body .wp-block-table td,
html body .wp-block-table th {
    border: none !important;
    padding: 0 !important;
}

/* Modern table style in article content */
html body article.details-body table {
    width: 100%;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    overflow: hidden;
    margin: 2rem 0 !important;
    font-size: 0.9rem;
    background: #fff;
}
html body article.details-body table thead th,
html body article.details-body table th {
    background-color: #f8fafc !important;
    font-weight: 600 !important;
    padding: 14px 20px !important;
    text-align: left !important;
    border-bottom: 1px solid #e2e8f0 !important;
    border-right: 1px solid #e2e8f0 !important;
    color: #1e293b !important;
    font-size: 0.875rem !important;
    letter-spacing: 0.01em;
}
html body article.details-body table thead th:last-child,
html body article.details-body table th:last-child {
    border-right: none !important;
}
html body article.details-body table tbody td {
    padding: 13px 20px !important;
    border-bottom: 1px solid #e2e8f0 !important;
    border-right: 1px solid #e2e8f0 !important;
    vertical-align: top !important;
    color: #374151 !important;
    line-height: 1.6 !important;
}
html body article.details-body table tbody td:last-child {
    border-right: none !important;
}
html body article.details-body table tbody tr:last-child td {
    border-bottom: none !important;
}
html body article.details-body table tbody tr:hover td {
    background-color: #fafafa !important;
}
/* Rounded corners for first/last cells */
html body article.details-body table thead tr:first-child th:first-child {
    border-top-left-radius: 11px;
}
html body article.details-body table thead tr:first-child th:last-child {
    border-top-right-radius: 11px;
}
html body article.details-body table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 11px;
}
html body article.details-body table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 11px;
}

/* Spacing before headings inside article content */
html body article.details-body h1,
html body article.details-body h2,
html body article.details-body h3,
html body article.details-body h4,
html body article.details-body h5,
html body article.details-body h6 {
    margin-top: 2.5rem !important;
    margin-bottom: 0.75rem !important;
}
html body article.details-body h1:first-child,
html body article.details-body h2:first-child,
html body article.details-body h3:first-child,
html body article.details-body h4:first-child {
    margin-top: 0 !important;
}

/* In-article cross-links — purple + underlined */
html body article.details-body p a,
html body article.details-body li a,
html body article.details-body p > strong a,
html body article.details-body a[href] {
    color: #8b5cf6 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
    text-decoration-color: #8b5cf6 !important;
}
html body article.details-body p a:hover,
html body article.details-body li a:hover,
html body article.details-body a[href]:hover {
    color: #7c3aed !important;
    text-decoration-color: #7c3aed !important;
}

/* Single post title — center the title block within the wide container */
.nextsaas-single-post .main-container .space-y-3 > h2 {
    margin-left: auto;
    margin-right: auto;
}
/* ── Legislation Timeline ── */
.asign-timeline {
  position: relative;
  max-width: 860px;
  margin: 0 auto;
  padding: 20px 0 40px;
}
.asign-timeline::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0; bottom: 0; width: 2px;
  background: linear-gradient(to bottom, #8b5cf6 0%, #6366f1 60%, #c4b5fd 100%);
}
.asign-tl-item {
  display: flex;
  justify-content: flex-end;
  padding-right: calc(50% + 44px);
  margin-bottom: 48px;
  position: relative;
}
.asign-tl-item.right {
  justify-content: flex-start;
  padding-right: 0;
  padding-left: calc(50% + 44px);
}
.asign-tl-dot {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 24px;
  width: 18px; height: 18px;
  border-radius: 50%;
  background: #8b5cf6;
  border: 3px solid #ffffff;
  box-shadow: 0 0 0 2px #8b5cf6;
  z-index: 2;
}
.asign-tl-dot.red {
  background: #ef4444;
  box-shadow: 0 0 0 2px #ef4444;
}
.asign-tl-card {
  background: #ffffff;
  border: 1px solid #e8e4ff;
  border-radius: 16px;
  padding: 22px 26px;
  max-width: 370px;
  box-shadow: 0 2px 16px rgba(139,92,246,0.08);
}
.asign-tl-item:not(.right) .asign-tl-card { border-right: 3px solid #c4b5fd; }
.asign-tl-item.right .asign-tl-card      { border-left:  3px solid #8b5cf6; }
.asign-tl-item:not(.right) .asign-tl-card.red-accent { border-right-color: #ef4444; }
.asign-tl-item.right .asign-tl-card.red-accent       { border-left-color:  #ef4444; }
.asign-tl-card .tl-date {
  display: inline-block;
  background: #ede9fe;
  color: #7c3aed;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding: 4px 12px;
  border-radius: 100px;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.asign-tl-card .tl-date.red { background: #fee2e2; color: #dc2626; }
.asign-tl-card .tl-title {
  font-size: 1rem;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 8px;
  line-height: 1.4;
}
.asign-tl-card .tl-desc {
  font-size: 0.88rem;
  color: #475569;
  line-height: 1.65;
  margin: 0;
}
@media (max-width: 640px) {
  .asign-timeline::before { left: 16px; transform: none; }
  .asign-tl-item, .asign-tl-item.right {
    justify-content: flex-start;
    padding-left: 52px !important;
    padding-right: 0 !important;
  }
  .asign-tl-dot { left: 16px; transform: translateX(-50%); }
  .asign-tl-card { max-width: 100%; }
  .asign-tl-item:not(.right) .asign-tl-card { border-right: none; border-left: 3px solid #c4b5fd; }
}


/* Page 266 - Partnerský program: step cards gap */
.elementor-266 .elementor-element-aff_steps_grid > .elementor-container {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 40px !important;
}
.elementor-266 .elementor-element-aff_steps_grid .elementor-column {
  width: auto !important;
  max-width: 100% !important;
  flex: none !important;
}

/* Page 266 - hero top spacing so it doesn't touch the header */
.elementor-266 .elementor-element-aff_hero_sec {
  margin-top: 32px !important;
}


/* Global default text color — override Elementor kit primary (was #6EC1E4 blue) */
:root {
    --e-global-color-primary: #1a1a1c;
}
