/*
Theme Name:   SNN-BRX - Advanced Bricks Builder Child Theme
Theme URI:    https://sinanisler.com/
Description:  SNN BRX Child Theme is a purpose-built WordPress theme for Bricks Builder, designed for agencies and teams who demand speed, security, and flexibility. It offers advanced features for site management, security, advanced features, custom elements, role-based access, media and design system control, search logs, 301 redirects, 301 and 404 logs, accessibility, and enhanced editor features. Enabling the efficient delivery of scalable, secure, and highly customized WordPress solutions.
Author:       sinanisler
Author URI:   https://sinanisler.com/
Text Domain:  snn
Template:     bricks
Version: 1.259
Text Domain:  bricks
*/
/**
 * Tutor LMS Override Styles
 *
 * This file uses variables from the Core Framework to override the default
 * styles of the Tutor LMS plugin, ensuring a consistent design across the site.
 *
 * Generated: August 10, 2025
 */

/*
 * 1. Root Variable Mapping
 * --------------------------
 * This is the most important step. We are telling Tutor LMS to use the
 * colors and values from your Core Framework.
 */
:root {
  /* --- Color Mapping --- */
  --tutor-color-primary: var(--primary);
  --tutor-color-primary-hover: var(--primary-d-1);
  --tutor-color-secondary: var(--primary-d-2);
  --tutor-body-color: var(--text-body);
  --tutor-color-success: var(--success);
  --tutor-color-warning: var(--warning);
  --tutor-color-danger: var(--error);

  /* --- Text & Muted Colors --- */
  --tutor-color-subdued: var(--secondary-l-1);
  --tutor-color-muted: var(--secondary-l-2);
  --tutor-color-hints: var(--secondary-l-3);

  /* --- Greys & Borders --- */
  --tutor-color-gray: var(--primary-l-4);
  --tutor-color-gray-10: var(--bg-body);
  --tutor-border-color: var(--border-primary);
}


/*
 * 2. Global Typography
 * --------------------------
 * Apply the Core Framework's font families to the entire plugin.
 */
body.tutor-frontend,
.tutor-wrap {
  font-family: var(--cf-font-family--barlow-semi-condensed), sans-serif;
  color: var(--tutor-body-color);
}

.tutor-wrap h1,
.tutor-wrap h2,
.tutor-wrap h3,
.tutor-wrap h4,
.tutor-wrap h5,
.tutor-wrap h6,
.tutor-segment-title,
.tutor-dashboard-content-inner .tutor-mycourse-wrap .tutor-mycourse-title h3,
.tutor-fs-4,
.tutor-fs-5,
.tutor-fs-6 {
  font-family: var(--cf-font-family--poppins), sans-serif;
  color: var(--text-dark);
  font-weight: 600;
}
.tutor-fs-6 {
  font-weight: 400;
}
/**
 * =================================================================
 * SCOPED CSS FOR CLEAN, CONSISTENT VERTICAL SPACING
 * =================================================================
 * Applies vertical rhythm rules only to elements within a
 * '.tutor-fs-6' container.
 *
 * Relies on --space-{size} CSS variables being defined globally.
 */

/**
 * 1. DEFAULT FLOW SPACING
 * -----------------------------------------------------------------
 * Apply a standard margin-bottom to all common block-level
 * elements inside the container.
 */
.tutor-fs-6 p,
.tutor-fs-6 ul,
.tutor-fs-6 ol,
.tutor-fs-6 dl,
.tutor-fs-6 blockquote,
.tutor-fs-6 pre,
.tutor-fs-6 figure,
.tutor-fs-6 table,
.tutor-fs-6 form {
  margin-bottom: var(--space-m);
}

/**
 * 2. HEADING SPACING
 * -----------------------------------------------------------------
 * Apply specific bottom margins to headings for clear visual hierarchy.
 */
.tutor-fs-6 h1,
.tutor-fs-6 .h1 {
  margin-bottom: var(--space-l);
}

.tutor-fs-6 h2,
.tutor-fs-6 .h2 {
  margin-bottom: var(--space-m);
}

.tutor-fs-6 h3,
.tutor-fs-6 .h3 {
  margin-bottom: var(--space-s);
}

.tutor-fs-6 h4,
.tutor-fs-6 .h4 {
  margin-bottom: var(--space-xs);
}

.tutor-fs-6 h5,
.tutor-fs-6 .h5,
.tutor-fs-6 h6,
.tutor-fs-6 .h6 {
  margin-bottom: var(--space-xs);
}

/**
 * 3. SPECIFIC ELEMENT SPACING
 * -----------------------------------------------------------------
 * Fine-tune spacing for list items and horizontal rules.
 */

/* Add a small space below each list item for readability. */
.tutor-fs-6 li {
  margin-bottom: var(--space-xs);
}

/* Ensure nested lists don't have a bottom margin. */
.tutor-fs-6 ul ul,
.tutor-fs-6 ol ol,
.tutor-fs-6 ul ol,
.tutor-fs-6 ol ul {
  margin-bottom: 0;
}

/* Give horizontal rules a large bottom margin to create a strong visual break. */
.tutor-fs-6 hr {
  margin-bottom: var(--space-xxl);
}

/**
 * 4. AVOID DOUBLE MARGINS
 * -----------------------------------------------------------------
 * This helper rule ensures that the last direct child element
 * inside the '.tutor-fs-6' container doesn't have a bottom margin,
 * preventing extra space at the end of the content block.
 */
.tutor-fs-6 > :last-child {
  margin-bottom: 0;
}

.tutor-toggle-more-collapsed:before {
    content: " ";
    z-index: 5;
    background: linear-gradient(
        var(--bg-body, hsla(0,0%,5%,0)) 1.31%,       /* transparent */
        color-mix(in srgb, var(--bg-body) 72%, transparent) 15.41%, /* semi overlay */
        var(--bg-body) 100%                          /* solid bg */
    );
    width: 100%;
    height: 62px;
    position: absolute;
    bottom: 0;
    left: 0;
}
/*
 * 3. Component Style Unification
 * --------------------------
 * Minor adjustments to make key components like buttons and forms
 * match the Core Framework's design system.
 */

/* Unify border-radius for buttons, inputs, and cards */
.tutor-btn,
.tutor-form-control,
.tutor-form-select,
.tutor-option-field-row input,
.tutor-form-group input,
.tutor-form-group textarea,
.tutor-card,
.tutor-course-topic,
.single-instructor-wrap,
.tutor-course-reviews-wrap {
  border-radius: var(--radius-m);
}

/* Style form inputs to match the framework */
.tutor-form-group input[type="text"],
.tutor-form-group input[type="number"],
.tutor-form-group input[type="password"],
.tutor-form-group textarea {
  transition: all 0.25s ease-in-out;
}

.tutor-form-group input[type="text"]:focus,
.tutor-form-group input[type="number"]:focus,
.tutor-form-group input[type="password"]:focus,
.tutor-form-group textarea:focus {
  border-color: var(--primary) !important; /* Tutor sometimes uses !important, so we match it */
  box-shadow: 0 1px 6px var(--shadow-primary);
  background-color: var(--bg-surface);
}

/* Match link styles */
.tutor-wrap a,
.tutor-course-lesson h5 a {
    /* color: var(--primary); */
    text-decoration: none;
    /*box-shadow: 0 1px 0 var(--primary-20);*/
    transition: all 0.15s ease-in-out;
}
.tutor-wrap a:hover,
.tutor-course-lesson h5 a:hover {
    color: var(--text-white)!important;
}
.tutor-wrap a:hover,
.tutor-course-lesson h5 a:hover {
    color: var(--primary-d-1);
    /*box-shadow: 0 2px 0 var(--primary-40);*/
}

/* Cards, sidebars, dashboard panes */
.tutor-card,
.tutor-course-card,
.tutor-course-loop,
.tutor-course-sidebar,
.tutor-sidebar-card,
.tutor-dashboard-content,
.tutor-dashboard-content-inner,
.tutor-lesson-content,
.tutor-lesson-sidebar,
.tutor-single-course-wrap,
.tutor-single-course-segment,
.tutor-single-course-sidebar-more>div,
.tutor-accordion-item-header,
.tutor-course-single-sidebar-title {
  background: var(--bg-surface) !important;
  color: var(--text-body) !important;
  border-color: var(--border-primary);
  box-shadow: var(--shadow-primary);
}
.tutor-accordion-item-header {
  color: var(--primary)!important;
}
.tutor-course-content-list-item-title a {
  color: var(--text-body);
}
.tutor-course-content-list-item-title a:hover {
  color: var(--primary)!important;
}
.tutor-dashboard-content {
  padding: var(--space-s)!important;
}
.tutor-card-body,
.tutor-course-content-list-item {
  background: var(--bg-surface-d-1) !important;
  color: var(--text-body) !important;
  border-color: var(--border-primary);
  box-shadow: var(--shadow-primary);
}
.tutor-course-single-sidebar-wrapper .tutor-accordion-item-body {
  padding-top: 0;
  padding-bottom: 0;
}
.tutor-course-content-list-item-icon,
.tutor-course-topic-title-info-icon {
  color: var(--text-body) !important;
}
.tutor-icon-copy {
  font-size: var(--text-m)!important;
}
.tutor-course-details-page .tutor-course-details-tab .tutor-is-sticky {
  background: none;
}

.tutor-course-single-sidebar-wrapper .tutor-course-topic-item a {
  background: var(--bg-surface-d-1) !important;
  color: var(--text-body);
  border-color: var(--border-primary);
  box-shadow: var(--shadow-primary);
}
.tutor-course-single-sidebar-wrapper .tutor-course-topic-item.is-active a {
  background: var(--primary) !important;
  color: var(--text-title) !important;
  border-color: var(--border-primary);
  box-shadow: var(--shadow-primary);
}
.tutor-course-single-sidebar-wrapper .tutor-course-topic-item.is-active a span{
  color: var(--text-title) !important;
}

/*
 * 4. Font Size & Heading Unification (Scaled Down Version)
 * ---------------------------------------------------------
 * Overrides Tutor LMS's font-size utility classes (.tutor-fs-*) to use
 * the responsive typography variables from the Core Framework, scaled down one level.
 */

/* Largest heading size - Mapped to H2 */
.tutor-fs-1 {
  font-size: var(--text-4xl);
}

/* H3 equivalent */
.tutor-fs-2 {
  font-size: var(--text-3xl);
}

/* H4 equivalent */
.tutor-fs-3 {
  font-size: var(--text-2xl);
}

/* H5 equivalent */
.tutor-fs-4 {
  font-size: var(--text-xl);
}

/* Large body text / H6 equivalent */
.tutor-fs-5 {
  font-size: var(--text-l);
}

/* Normal body text size */
.tutor-fs-6 {
  font-size: var(--text-m);
}

/* Small text size */
.tutor-fs-7 {
  font-size: var(--text-s);
}

/* Extra-small text sizes */
.tutor-fs-8,
.tutor-fs-9 {
  font-size: var(--text-xs);
}

/*
 * 5. Container Width Unification
 * -----------------------------------
 * Overrides Tutor LMS's default container widths to match the
 * Bricks theme setting for a consistent site-wide layout.
 */
.tutor-container,
.tutor-container-sm,
.tutor-container-md,
.tutor-container-lg,
.tutor-container-xl,
.tutor-container-xxl {
  /* Set this to your Bricks container width */
  max-width: 1100px !important;

  /* These properties ensure it stays centered and fluid */
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--space-s); /* Adjust gutter/padding if needed */
  padding-right: var(--space-s);
  padding-bottom: var(--space-s);
}
.wp-block-woocommerce-cart {
  max-width: 1100px !important;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.wc-block-components-totals-coupon {
  padding: var(--space-s)!important;
}
#brx-content.wordpress {
  padding: var(--space-m);
}
/**
 * WooCommerce Override Styles
 *
 * This file uses variables from the Core Framework to override the default
 * styles of WooCommerce, ensuring a consistent design with the main theme.
 */

/*
 * 1. Buttons & Global Elements
 * -----------------------------------
 * Unifies all WooCommerce buttons (Add to cart, checkout, etc.)
 * with the Core Framework's primary button style.
 */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.wc-block-cart__submit-container,
.wc-block-components-checkout-place-order-button {
  background-color: var(--primary);
  color: var(--dark);
  border: 1px solid var(--primary-d-1);
  border-radius: var(--radius-m);
  padding: var(--space-xs) var(--space-s);
  font-weight: 600;
  transition: all 0.25s ease-in-out;
  box-shadow: var(--shadow-m);
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover,
.wc-block-cart__submit-container:hover,
.wc-block-components-checkout-place-order-button:hover {
  background-color: var(--primary-d-1);
  color: var(--dark);
  transform: translateY(-1px);
}

/* Secondary button style (e.g., "Update cart") */
.woocommerce .button.secondary,
.woocommerce .actions .button {
    background-color: var(--secondary);
    border-color: var(--secondary-d-1);
}

.woocommerce .button.secondary:hover,
.woocommerce .actions .button:hover {
    background-color: var(--secondary-d-1);
}


/*
 * 2. Shop / Archive Pages
 * -----------------------------------
 * Styles for product loops and sale badges.
 */

/* Sale Badge */
.woocommerce span.onsale {
  background-color: var(--tertiary);
  color: var(--light);
  border-radius: var(--radius-full);
  min-height: auto;
  min-width: auto;
  padding: var(--space-3xs) var(--space-xs);
  line-height: 1.2;
}

/* Product Price */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--primary);
  font-weight: 600;
}

.woocommerce ul.products li.product .price del,
.woocommerce div.product p.price del {
    color: var(--text-body);
    opacity: 0.6;
}


/*
 * 3. Forms (Checkout & My Account)
 * -----------------------------------
 * Ensures all input fields match the Core Framework style.
 */
.woocommerce form .form-row input.input-text,
.woocommerce-page form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce select {
  padding: var(--space-xs) var(--space-s);
  background: var(--dark-5);
  color: var(--text-body);
  border-radius: var(--radius-m);
  border: 1px solid var(--border-primary);
  box-shadow: var(--shadow-xs);
  transition: all 0.25s ease-in-out;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce-page form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce select:focus {
  border-color: var(--primary);
  box-shadow: var(--shadow-l);
}

.woocommerce form .form-row label {
    color: var(--text-title);
    font-weight: 500;
}


/*
 * 4. Alerts, Banners & Notices
 * -----------------------------------
 * Styles for info, success, and error messages.
 */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-store-notice {
  padding: var(--space-s) var(--space-m);
  border-radius: var(--radius-m);
  border-top: 3px solid;
  box-shadow: var(--shadow-m);
}

/* Success Message (e.g., "Product added to cart") */
.woocommerce-message {
  border-color: var(--success);
  background-color: var(--success-10);
  color: var(--success);
}
.woocommerce-message::before {
  color: var(--success);
}

/* Info Message */
.woocommerce-info {
  border-color: var(--secondary);
  background-color: var(--secondary-10);
  color: var(--secondary);
}
.woocommerce-info::before {
  color: var(--secondary);
}

/* Error Message */
.woocommerce-error {
  border-color: var(--error);
  background-color: var(--error-10);
  color: var(--error);
}
.woocommerce-error::before {
  color: var(--error);
}


/*
 * 5. Cart & Checkout Pages
 * -----------------------------------
 * Specific styles for the cart and checkout process.
 */

/* Cart table and totals */
.woocommerce-cart-form,
.woocommerce .cart_totals {
    border-color: var(--border-primary);
    border-radius: var(--radius-l);
}
.woocommerce table.shop_table {
    border-radius: var(--radius-l);
    border-color: var(--border-primary);
}
.woocommerce table.shop_table th {
    background-color: var(--bg-body);
    color: var(--text-title);
    border-color: var(--border-primary);
}
.woocommerce table.shop_table td {
    border-color: var(--border-primary);
}

/* Checkout payment section */
#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
  background: var(--bg-body);
  border-radius: var(--radius-l);
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
  background-color: var(--primary-10);
  color: var(--text-body);
}

#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color: var(--primary-10);
}


/*
 * 6. Product Page Tabs
 * -----------------------------------
 * Styles for the description and reviews tabs.
 */
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: var(--text-body);
    background-color: transparent;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--primary);
    background-color: var(--bg-surface);
    border-bottom-color: var(--bg-surface);
    padding: var(--space-s);
}

.woocommerce div.product .woocommerce-tabs .panel {
    border-radius: 0 0 var(--radius-m) var(--radius-m);
    padding: var(--space-m);
    box-shadow: var(--shadow-m);
    border: 1px solid var(--border-primary);
    border-top: 0;
}

/*
 * 7. WooCommerce Block-Based Checkout Styles
 * -----------------------------------
 * Styles for the modern block-based checkout elements.
 */
.wp-block-woocommerce-checkout-order-summary-block {
  background-color: var(--bg-surface);
  border: 1px solid var(--border-primary);
  border-radius: var(--radius-l);
  padding: var(--space-m);
  box-shadow: var(--shadow-m);
}

.wc-block-components-checkout-order-summary__content {
  background: transparent;
}

.wc-block-components-checkout-order-summary__title {
  padding-bottom: var(--space-s);
  border-bottom: 1px solid var(--border-primary);
  margin-bottom: var(--space-s);
}

.wc-block-components-checkout-order-summary__title-text {
  color: var(--text-title);
  font-weight: 600;
}

.wc-block-components-totals-coupon.wc-block-components-panel {
  background-color: var(--bg-body);
  border: 1px solid var(--border-primary);
  border-radius: var(--radius-m);
  margin-top: var(--space-s);
  padding: var(--space-xs);
}

.wc-block-components-panel__button {
  color: var(--text-body);
  font-weight: 500;
  padding: var(--space-xs);
}

.wc-block-components-order-summary-item,
.wc-block-components-totals-item {
  border-color: var(--border-primary);
  padding-top: var(--space-s);
  padding-bottom: var(--space-s);
}

.wc-block-components-product-name {
  color: var(--text-title);
}

.wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  color: var(--text-title);
  font-weight: 600;
}

.wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item-tax-value {
  color: var(--primary);
  font-weight: 600;
}
.tutor-form-check-input.tutor-form-check-input[type=checkbox].tutor-form-check-circle {
  padding: 0;
}

.dark-block {
    background-color: var(--dark);
    color: var(--light);
    border-radius: 12px;
    padding: var(--space-l, 24px);
    margin-bottom: var(--space-xl, 32px);
}
        
/* Optional: Style the first line to be bold */
.dark-block h3:first-child {
    color: var(--light);
}

.tutor-container table {
  border-collapse: collapse;
  width: 100%;
}

.tutor-container th,
.tutor-container td {
  border: 1px solid var(--primary);
  padding: 8px;
  text-align: left;
  vertical-align: top;
}

.tutor-container table {
  border: none;
}

.tutor-container thead tr th {
  border-top: none;
}

.tutor-container tbody tr:last-child td {
  border-bottom: none;
}

.tutor-container th:first-child,
.tutor-container td:first-child {
  border-left: none;
}

.tutor-container th:last-child,
.tutor-container td:last-child {
  border-right: none;
}

.tutor-dashboard .tutor-dashboard-left-menu .tutor-dashboard-permalinks {
  margin: 0;
}
.tutor-dashboard-left-menu,
.tutor-col-12.tutor-col-md-8.tutor-col-lg-9 {
  padding: 0;
}
.tutor-course-single-sidebar-wrapper .tutor-course-topic-item-title {
  color: var(--text-white);
}
.tutor-course-single-sidebar-wrapper .tutor-course-topic-item-icon,
.tutor-course-topic-title {
  color: var(--primary);
}
.tutor-color-secondary,
.tutor-dashboard-content-inner .field-label,
.tutor-dashboard .tutor-dashboard-content .tutor-dashboard-setting-social .tutor-social-field>div:first-child {
  color: var(--text-white);
}

.tutor-dashboard .tutor-dashboard-content .tutor-dashboard-setting-social .tutor-social-field>div:first-child i {
  color: var(--primary);
}
