/*
Theme Name: Code Corner
Theme URI: https://codecorner.in
Author: Code Corner Team
Author URI: https://codecorner.in
Description: Custom, high-performance, responsive digital marketplace theme built for selling website templates on codecorner.in with WooCommerce and Razorpay.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: themecraft
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@600;700;800;900&display=swap');

:root {
    --tc-primary: #845EC2;
    --tc-primary-hover: #6c47aa;
    --tc-primary-light: #F4F0FA;
    --tc-border: #E2D9F3;
    --tc-accent: #D65DB1;
    --tc-dark: #000000;
    --tc-dark-bg: #14121E;
    --tc-muted: #4B4655;
    --tc-bg: #FFFFFF;
    --tc-card-bg: #FFFFFF;
    --tc-radius-sm: 8px;
    --tc-radius-md: 14px;
    --tc-radius-lg: 20px;
    --tc-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.05);
    --tc-shadow-md: 0 10px 30px rgba(132, 94, 194, 0.1);
    --tc-shadow-lg: 0 20px 40px rgba(0, 0, 0, 0.08);
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    background-color: #FFFFFF;
    color: #000000;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

body.tc-drawer-active {
    overflow: hidden;
}

/* Links & Internal Links */
a,
a:visited {
    color: var(--tc-primary);
    text-decoration: none;
    transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

a:hover,
a:focus {
    color: var(--tc-primary-hover);
}

.entry-content a,
.tc-single-post-content a,
.woocommerce-Tabs-panel a,
.woocommerce-product-details__short-description a,
.comment-content a,
.tc-legal-content a {
    color: var(--tc-primary);
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color 0.2s ease;
}

.entry-content a:hover,
.tc-single-post-content a:hover,
.woocommerce-Tabs-panel a:hover,
.woocommerce-product-details__short-description a:hover,
.comment-content a:hover,
.tc-legal-content a:hover {
    color: var(--tc-primary-hover);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Outfit', sans-serif;
    color: #000000;
    line-height: 1.25;
}

p {
    color: #000000;
}

.tc-container {
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ==========================================================================
   TOP PROMO BAR
   ========================================================================== */
.tc-top-bar {
    background: #14121E;
    color: #C5BFD2;
    font-size: 0.82rem;
    padding: 8px 15px;
    border-bottom: 1px solid rgba(132, 94, 194, 0.3);
}

.tc-top-bar-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.tc-top-bar span strong {
    color: #ffffff;
}

.tc-top-bar-right {
    color: #D65DB1;
    font-weight: 600;
}

/* ==========================================================================
   HEADER & NAVBAR
   ========================================================================== */
.tc-master-header {
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--tc-border);
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: var(--tc-shadow-sm);
}

.tc-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 72px;
}

.tc-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.tc-brand-icon {
    width: 38px;
    height: 38px;
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.3);
}

.tc-brand-text {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.45rem;
    color: var(--tc-dark);
    letter-spacing: -0.02em;
}

.tc-brand-badge {
    background: var(--tc-primary-light);
    color: var(--tc-primary);
    font-size: 0.72rem;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 6px;
    border: 1px solid var(--tc-border);
}

.tc-nav-container {
    display: flex;
    align-items: center;
}

.tc-nav {
    display: flex;
    list-style: none;
    gap: 28px;
    align-items: center;
    margin: 0;
    padding: 0;
}

.tc-nav li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.tc-nav a {
    color: var(--tc-muted);
    font-size: 0.95rem;
    font-weight: 600;
    padding: 6px 0;
    position: relative;
    transition: color 0.2s ease, transform 0.2s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.tc-nav-item-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: currentColor;
    opacity: 0.85;
    transition: transform 0.2s ease, opacity 0.2s ease, color 0.2s ease;
    flex-shrink: 0;
}

.tc-nav-item-icon svg {
    display: block;
    width: 15px;
    height: 15px;
}

.tc-nav a:hover,
.tc-nav .current-menu-item > a,
.tc-nav a.active {
    color: var(--tc-primary);
}

.tc-nav a:hover .tc-nav-item-icon,
.tc-nav .current-menu-item > a .tc-nav-item-icon,
.tc-nav a.active .tc-nav-item-icon {
    opacity: 1;
    color: var(--tc-primary);
    transform: translateY(-1px);
}

.tc-nav a.active::after,
.tc-nav .current-menu-item > a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--tc-primary);
    border-radius: 2px;
}

.tc-header-actions {
    display: flex;
    align-items: center;
    gap: 14px;
}

.tc-cart-btn {
    position: relative;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: var(--tc-primary-light);
    color: var(--tc-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--tc-border);
    transition: all 0.2s ease;
}

.tc-cart-btn:hover {
    background: #E8E0F5;
    color: var(--tc-primary-hover);
}

.tc-cart-count {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #FF5E7E;
    color: #ffffff;
    font-size: 0.7rem;
    font-weight: 800;
    min-width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
}

.tc-cta-header {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff !important;
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 0.92rem;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.25);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s ease;
}

.tc-cta-header:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(132, 94, 194, 0.35);
}

/* Mobile Hamburger Toggle */
.tc-mobile-toggle {
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 40px;
    height: 40px;
    background: var(--tc-primary-light);
    border: 1px solid var(--tc-border);
    border-radius: 10px;
    padding: 11px 9px;
    cursor: pointer;
}

.tc-mobile-toggle span {
    display: block;
    width: 100%;
    height: 2px;
    background-color: var(--tc-dark);
    border-radius: 2px;
    transition: all 0.3s ease;
}

/* ==========================================================================
   MOBILE DRAWER NAVIGATION
   ========================================================================== */
.tc-drawer-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(20, 18, 30, 0.6);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.tc-drawer-backdrop.is-active {
    opacity: 1;
    visibility: visible;
}

.tc-mobile-drawer {
    position: fixed;
    top: 0;
    left: 0;
    width: 320px;
    max-width: 85vw;
    height: 100%;
    background: #ffffff;
    z-index: 9999;
    box-shadow: var(--tc-shadow-lg);
    transform: translateX(-100%);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}

.tc-mobile-drawer.is-open {
    transform: translateX(0);
}

.tc-drawer-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 20px;
    border-bottom: 1px solid var(--tc-border);
}

.tc-drawer-close {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: #F4F0FA;
    border: 1px solid var(--tc-border);
    color: var(--tc-dark);
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    line-height: 1;
}

.tc-drawer-search {
    padding: 16px 20px;
    border-bottom: 1px solid #F0EBF7;
}

.tc-search-input-wrap {
    display: flex;
    align-items: center;
    background: #F8F6FC;
    border: 1px solid var(--tc-border);
    border-radius: 10px;
    padding: 10px 14px;
    gap: 10px;
}

.tc-search-input-wrap svg {
    color: var(--tc-muted);
}

.tc-search-input-wrap input {
    border: none;
    background: transparent;
    outline: none;
    font-size: 16px !important;
    width: 100%;
    color: var(--tc-dark);
}

.tc-drawer-nav {
    padding: 15px 12px;
    flex: 1;
}

.tc-drawer-section-title {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 800;
    color: #9E97AA;
    padding: 0 12px 8px;
}

.tc-drawer-nav ul {
    list-style: none;
}

.tc-drawer-nav li a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    color: var(--tc-dark);
    font-size: 0.98rem;
    font-weight: 600;
    border-radius: 10px;
    transition: all 0.2s ease;
}

.tc-drawer-nav li a:hover,
.tc-drawer-nav li a.active {
    background: var(--tc-primary-light);
    color: var(--tc-primary);
}

.tc-drawer-icon {
    font-size: 1.1rem;
}

.tc-drawer-footer {
    padding: 20px;
    border-top: 1px solid var(--tc-border);
    background: #FAFAFD;
}

.tc-drawer-support-card {
    background: #ffffff;
    border: 1px solid var(--tc-border);
    padding: 14px;
    border-radius: 12px;
}

.tc-drawer-support-title {
    font-weight: 700;
    font-size: 0.88rem;
    color: var(--tc-primary);
    margin-bottom: 6px;
}

.tc-drawer-support-card p {
    font-size: 0.82rem;
    color: var(--tc-muted);
    line-height: 1.5;
    margin-bottom: 10px;
}

.tc-drawer-email-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--tc-primary);
}

/* ==========================================================================
   STICKY MOBILE BOTTOM APP BAR
   ========================================================================== */
.tc-mobile-bottom-bar {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 64px;
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-top: 1px solid var(--tc-border);
    z-index: 9990;
    box-shadow: 0 -4px 20px rgba(20, 18, 30, 0.08);
    justify-content: space-around;
    align-items: center;
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

.tc-bottom-bar-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--tc-muted);
    text-decoration: none;
    font-size: 0.72rem;
    font-weight: 600;
    gap: 3px;
    flex: 1;
    height: 100%;
    transition: color 0.2s ease;
}

.tc-bottom-bar-item svg {
    transition: transform 0.2s ease;
}

.tc-bottom-bar-item.active,
.tc-bottom-bar-item:hover {
    color: var(--tc-primary);
}

.tc-bottom-bar-item.active svg {
    transform: translateY(-2px);
}

.tc-bottom-bar-cart-wrap {
    position: relative;
    display: inline-flex;
}

.tc-bottom-cart-badge {
    position: absolute;
    top: -5px;
    right: -8px;
    background: #FF5E7E;
    color: #ffffff;
    font-size: 0.65rem;
    font-weight: 800;
    min-width: 16px;
    height: 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 3px;
}

/* ==========================================================================
   STICKY MOBILE BUY BAR (SINGLE PRODUCT)
   ========================================================================== */
.tc-mobile-sticky-buy {
    position: fixed;
    bottom: 64px;
    left: 0;
    width: 100%;
    background: #ffffff;
    border-top: 1px solid var(--tc-border);
    padding: 10px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 9989;
    box-shadow: 0 -4px 15px rgba(20, 18, 30, 0.06);
    transform: translateY(calc(100% + 90px));
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.tc-mobile-sticky-buy.is-visible {
    transform: translateY(0);
}

/* Strictly hide mobile sticky bar on desktop viewports */
@media (min-width: 769px) {
    .tc-mobile-sticky-buy {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
        opacity: 0 !important;
    }
}

.tc-sticky-buy-info {
    overflow: hidden;
    padding-right: 12px;
}

.tc-sticky-buy-title {
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--tc-dark);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tc-sticky-buy-price {
    font-family: 'Outfit', sans-serif;
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--tc-primary);
}

.tc-sticky-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.tc-sticky-buy-btn {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff !important;
    font-weight: 700;
    font-size: 0.9rem;
    padding: 10px 18px;
    border-radius: 10px;
    white-space: nowrap;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.3);
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.tc-sticky-buy-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(132, 94, 194, 0.4);
}

.tc-sticky-custom-btn {
    background: linear-gradient(135deg, #D65DB1 0%, #845EC2 100%) !important;
    box-shadow: 0 4px 12px rgba(214, 93, 177, 0.3) !important;
}

.tc-sticky-custom-btn:hover {
    box-shadow: 0 6px 16px rgba(214, 93, 177, 0.45) !important;
}

@media (max-width: 480px) {
    .tc-sticky-buy-btn {
        padding: 8px 12px;
        font-size: 0.78rem;
    }
}

/* ==========================================================================
   HERO SECTION
   ========================================================================== */
.tc-hero {
    background: radial-gradient(circle at 50% 0%, #FAF6FE 0%, #ffffff 75%);
    padding: 70px 20px 50px;
    text-align: center;
    border-bottom: 1px solid var(--tc-border);
    position: relative;
    overflow: hidden;
}

.tc-hero-inner {
    max-width: 860px;
    margin: 0 auto;
}

.tc-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #EAE2F7;
    color: var(--tc-primary);
    font-weight: 700;
    font-size: 0.85rem;
    padding: 6px 18px;
    border-radius: 50px;
    margin-bottom: 20px;
}

.tc-badge-pulse {
    width: 8px;
    height: 8px;
    background: #845EC2;
    border-radius: 50%;
    box-shadow: 0 0 0 0 rgba(132, 94, 194, 0.7);
    animation: tcPulse 2s infinite;
}

@keyframes tcPulse {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(132, 94, 194, 0.7); }
    70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(132, 94, 194, 0); }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(132, 94, 194, 0); }
}

.tc-hero-title {
    font-size: clamp(2.2rem, 5vw, 3.4rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    margin-bottom: 18px;
    color: var(--tc-dark);
}

.tc-gradient-text {
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.tc-hero-sub {
    font-size: clamp(1rem, 2vw, 1.2rem);
    color: var(--tc-muted);
    max-width: 680px;
    margin: 0 auto 35px;
    line-height: 1.6;
}

/* Hero Search Bar */
.tc-hero-search-wrap {
    max-width: 640px;
    margin: 0 auto 35px;
}

.tc-hero-search-form {
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 2px solid var(--tc-border);
    border-radius: 50px;
    padding: 6px 8px 6px 18px;
    box-shadow: var(--tc-shadow-md);
    transition: all 0.25s ease;
}

.tc-hero-search-form:focus-within {
    border-color: var(--tc-primary);
    box-shadow: 0 8px 30px rgba(132, 94, 194, 0.2);
}

.tc-hero-search-icon {
    color: var(--tc-muted);
    display: flex;
    align-items: center;
    margin-right: 10px;
}

.tc-hero-search-input {
    flex: 1;
    border: none;
    outline: none;
    font-size: 0.98rem;
    color: var(--tc-dark);
}

.tc-hero-search-btn {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff;
    border: none;
    padding: 12px 24px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tc-hero-search-btn:hover {
    background: #6c47aa;
}

/* Hero Trust Stats */
.tc-hero-stats {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
}

.tc-stat-pill {
    background: #ffffff;
    border: 1px solid var(--tc-border);
    padding: 8px 16px;
    border-radius: 50px;
    font-size: 0.88rem;
    color: var(--tc-dark);
    display: flex;
    align-items: center;
    gap: 6px;
    box-shadow: var(--tc-shadow-sm);
}

.tc-stat-icon {
    font-size: 1rem;
}

/* ==========================================================================
   CATEGORY FILTER PILLS SECTION
   ========================================================================== */
.tc-filter-section {
    background: #ffffff;
    padding: 35px 20px 25px;
    border-bottom: 1px solid var(--tc-border);
}

.tc-filter-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 15px;
}

.tc-section-title {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--tc-dark);
}

.tc-section-sub {
    font-size: 0.98rem;
    color: var(--tc-muted);
    margin-top: 4px;
}

.tc-view-all-link {
    font-weight: 700;
    font-size: 0.95rem;
}

.tc-filter-pills {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 8px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.tc-filter-pills::-webkit-scrollbar {
    display: none;
}

.tc-pill {
    padding: 9px 18px;
    background: #F4F0FA;
    color: var(--tc-muted);
    border: 1px solid var(--tc-border);
    border-radius: 50px;
    font-size: 0.88rem;
    font-weight: 600;
    white-space: nowrap;
    transition: all 0.2s ease;
}

.tc-pill:hover,
.tc-pill.active {
    background: var(--tc-primary);
    color: #ffffff;
    border-color: var(--tc-primary);
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.25);
}

/* ==========================================================================
   DEDICATED SHOP PAGE STYLING (Hero, Search, Pills, Toolbar, Grid & Guarantees)
   ========================================================================== */

/* Shop Hero */
.tc-shop-hero {
    background: radial-gradient(circle at 50% 0%, #FAF6FE 0%, #ffffff 75%);
    padding: 60px 20px 40px;
    text-align: center;
    border-bottom: 1px solid #E2E8F0;
    position: relative;
    overflow: hidden;
}

.tc-shop-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #F4F0FA;
    border: 1px solid #E2D9F3;
    color: var(--tc-dark);
    font-size: 0.82rem;
    font-weight: 600;
    padding: 6px 16px;
    border-radius: 9999px;
    margin-bottom: 18px;
}

.tc-shop-badge-dot {
    width: 7px;
    height: 7px;
    background: #10B981;
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 8px rgba(16, 185, 129, 0.6);
}

.tc-shop-badge-sep {
    color: #C5BFD2;
}

.tc-shop-hero-title {
    font-family: 'Outfit', sans-serif;
    font-size: 2.6rem;
    font-weight: 900;
    color: #000000;
    letter-spacing: -0.025em;
    line-height: 1.15;
    margin-bottom: 14px;
}

.tc-gradient-title-accent {
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline;
}

.tc-shop-hero-subtitle {
    font-size: 1.05rem;
    color: #4B4655;
    max-width: 720px;
    margin: 0 auto 28px;
    line-height: 1.6;
}

/* Shop Live Search Bar */
.tc-shop-search-bar {
    max-width: 620px;
    margin: 0 auto 24px;
}

.tc-shop-search-input-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.tc-shop-search-icon {
    position: absolute;
    left: 18px;
    color: #845EC2;
    pointer-events: none;
}

#tcShopLiveSearch {
    width: 100%;
    padding: 14px 44px 14px 48px;
    border: 1.5px solid #E2D9F3;
    border-radius: 9999px;
    font-family: 'Outfit', sans-serif;
    font-size: 0.95rem;
    font-weight: 500;
    color: #000000;
    background: #ffffff;
    box-shadow: 0 4px 16px rgba(132, 94, 194, 0.08);
    outline: none;
    transition: all 0.25s ease;
}

#tcShopLiveSearch:focus {
    border-color: #845EC2;
    box-shadow: 0 6px 22px rgba(132, 94, 194, 0.2);
}

#tcShopClearSearch {
    position: absolute;
    right: 16px;
    background: #F4F0FA;
    border: none;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #4B4655;
    font-size: 1.1rem;
    cursor: pointer;
    line-height: 1;
    transition: all 0.2s ease;
}

#tcShopClearSearch:hover {
    background: #845EC2;
    color: #ffffff;
}

/* Shop Category Filter Pills */
.tc-shop-filter-pills {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 10px;
}

.tc-shop-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 18px;
    border-radius: 9999px;
    border: 1px solid #E2D9F3;
    background: #ffffff;
    color: #4B4655;
    font-family: 'Outfit', sans-serif;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none !important;
    cursor: pointer;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03);
}

.tc-shop-pill:hover {
    border-color: #845EC2;
    color: #845EC2;
    text-decoration: none !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.12);
}

.tc-shop-pill.active {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    border-color: #7042B3;
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.35);
}

.tc-shop-pill-count {
    background: rgba(132, 94, 194, 0.15);
    color: #845EC2;
    padding: 1px 7px;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 800;
}

.tc-shop-pill.active .tc-shop-pill-count {
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
}

/* About Page Author Showcase */
.tc-author-social-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    background: #F4F0FA;
    border: 1px solid #E2D9F3;
    border-radius: 9999px;
    color: #4B4655;
    font-size: 0.82rem;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.tc-author-social-link:hover {
    background: #845EC2;
    color: #ffffff !important;
    border-color: #845EC2;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.2);
}

/* Hide duplicate default Shop heading */
.tc-shop-main h1.page-title,
.tc-shop-main .woocommerce-products-header {
    display: none !important;
}

/* Shop Toolbar: Result Count & Ordering */
.tc-shop-toolbar {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    margin: 0 0 24px 0 !important;
    width: 100% !important;
    clear: both !important;
    box-sizing: border-box !important;
}

.tc-shop-toolbar .woocommerce-result-count,
.woocommerce .woocommerce-result-count {
    float: left !important;
    margin: 0 0 20px 0 !important;
    padding: 8px 16px !important;
    background: #F4F0FA !important;
    color: #000000 !important;
    border-radius: 9999px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    border: 1px solid #E2D9F3 !important;
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.tc-shop-toolbar .woocommerce-result-count {
    float: none !important;
    margin: 0 !important;
}

.tc-shop-toolbar .woocommerce-ordering,
.woocommerce .woocommerce-ordering {
    float: right !important;
    margin: 0 0 20px 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}

.tc-shop-toolbar .woocommerce-ordering {
    float: none !important;
    margin: 0 !important;
}

.woocommerce .woocommerce-ordering select {
    background: #ffffff !important;
    border: 1.5px solid #E2E8F0 !important;
    border-radius: 12px !important;
    padding: 9px 36px 9px 14px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    color: #000000 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    outline: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23845EC2' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce .woocommerce-ordering select:hover,
.woocommerce .woocommerce-ordering select:focus {
    border-color: #845EC2 !important;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.15) !important;
}

/* Product Catalog Grid - 4 Columns Desktop, 2x2 Mobile */
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
    clear: both !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
    display: none !important;
}

.woocommerce ul.products li.product {
    background: #ffffff !important;
    border-radius: 16px !important;
    border: 1px solid #E2E8F0 !important;
    padding: 16px !important;
    margin: 0 !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    box-sizing: border-box !important;
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 16px 32px rgba(132, 94, 194, 0.14) !important;
    border-color: #845EC2 !important;
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    display: block !important;
    text-decoration: none !important;
}

.woocommerce ul.products li.product img {
    border-radius: 10px !important;
    margin-bottom: 14px !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    contain-intrinsic-size: none !important;
    max-height: none !important;
    object-fit: contain !important;
    transition: transform 0.3s ease !important;
    display: block !important;
}

.woocommerce ul.products li.product:hover img {
    transform: scale(1.02) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #000000 !important;
    margin-bottom: 8px !important;
    line-height: 1.35 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 2.7em !important;
    padding: 0 !important;
}

.woocommerce ul.products li.product .price {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.25rem !important;
    font-weight: 800 !important;
    color: var(--tc-primary) !important;
    margin-bottom: 14px !important;
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    line-height: 1.2 !important;
}

.woocommerce ul.products li.product .price del {
    font-size: 0.9rem !important;
    color: #94A3B8 !important;
    font-weight: normal !important;
}

.woocommerce ul.products li.product .price ins {
    text-decoration: none !important;
    color: var(--tc-primary) !important;
}

.woocommerce ul.products li.product .button {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%) !important;
    color: #ffffff !important;
    border-radius: 9px !important;
    padding: 10px 16px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.88rem !important;
    text-align: center !important;
    width: 100% !important;
    border: none !important;
    transition: all 0.2s ease !important;
    margin-top: auto !important;
    box-shadow: 0 2px 8px rgba(132, 94, 194, 0.2) !important;
    display: block !important;
}

.woocommerce ul.products li.product .button:hover {
    background: #6c47aa !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.35) !important;
}

/* Empty Search Results Box */
.tc-shop-no-results {
    text-align: center;
    padding: 60px 20px;
    background: #FAF6FE;
    border-radius: 18px;
    border: 1.5px dashed #E2D9F3;
    margin: 30px auto;
    max-width: 600px;
}

.tc-no-results-icon {
    margin-bottom: 14px;
    color: #845EC2;
}

.tc-shop-no-results h3 {
    font-family: 'Outfit', sans-serif;
    font-size: 1.35rem;
    font-weight: 800;
    color: #000000;
    margin-bottom: 8px;
}

.tc-shop-no-results p {
    color: #4B4655;
    font-size: 0.95rem;
    margin-bottom: 20px;
}

.tc-reset-filter-btn {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff;
    font-family: 'Outfit', sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    padding: 10px 22px;
    border-radius: 50px;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.25);
}

.tc-reset-filter-btn:hover {
    background: #6c47aa;
    transform: translateY(-2px);
}

/* Marketplace Guarantees Strip */
.tc-shop-guarantees-strip {
    background: #ffffff;
    border-top: 1px solid #E2E8F0;
    padding: 55px 20px;
    margin-top: 50px;
}

.tc-guarantees-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.tc-guarantee-card {
    background: #FAF6FE;
    border: 1px solid #E2D9F3;
    border-radius: 14px;
    padding: 22px 20px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.tc-guarantee-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(132, 94, 194, 0.1);
    background: #ffffff;
    border-color: #845EC2;
}

.tc-guarantee-icon-box {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: #ffffff;
    border: 1px solid #E2D9F3;
    color: #845EC2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tc-guarantee-card:hover .tc-guarantee-icon-box {
    background: #845EC2;
    color: #ffffff;
}

.tc-guarantee-text h4 {
    font-family: 'Outfit', sans-serif;
    font-size: 1.05rem;
    font-weight: 800;
    color: #000000;
    margin-bottom: 5px;
}

.tc-guarantee-text p {
    font-size: 0.85rem;
    color: #4B4655;
    line-height: 1.5;
    margin: 0;
}

/* Responsive Media Queries for Shop Page */
@media (max-width: 1100px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }
    .tc-guarantees-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}

@media (max-width: 860px) {
    .tc-shop-hero-title {
        font-size: 2.1rem;
    }
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }
    .woocommerce ul.products li.product img {
        height: auto !important;
        object-fit: contain !important;
    }
    .tc-shop-toolbar {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 6px !important;
        margin-bottom: 18px !important;
        width: 100% !important;
    }
    .tc-shop-toolbar .woocommerce-result-count,
    .woocommerce .woocommerce-result-count {
        float: left !important;
        display: inline-flex !important;
        margin: 0 !important;
        font-size: 0.76rem !important;
        padding: 6px 10px !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
    }
    .tc-shop-toolbar .woocommerce-ordering,
    .woocommerce .woocommerce-ordering {
        float: right !important;
        display: inline-flex !important;
        margin: 0 !important;
        flex-shrink: 0 !important;
    }
    .tc-shop-toolbar .woocommerce-ordering select,
    .woocommerce .woocommerce-ordering select {
        width: auto !important;
        font-size: 0.76rem !important;
        padding: 6px 24px 6px 9px !important;
        background-position: right 8px center !important;
        border-radius: 10px !important;
    }
}

@media (max-width: 540px) {
    .tc-shop-hero {
        padding: 45px 16px 30px;
    }
    .tc-shop-hero-title {
        font-size: 1.75rem;
    }
    .tc-shop-hero-subtitle {
        font-size: 0.92rem;
    }
    #tcShopLiveSearch {
        padding: 12px 38px 12px 42px;
        font-size: 0.88rem;
    }
    .tc-shop-pill {
        padding: 6px 14px;
        font-size: 0.82rem;
    }
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }
    .woocommerce ul.products li.product {
        padding: 10px !important;
        border-radius: 12px !important;
    }
    .woocommerce ul.products li.product img {
        height: auto !important;
        object-fit: contain !important;
        margin-bottom: 8px !important;
        border-radius: 8px !important;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size: 0.82rem !important;
        min-height: 2.5em !important;
        margin-bottom: 5px !important;
    }
    .woocommerce ul.products li.product .price {
        font-size: 0.95rem !important;
        margin-bottom: 8px !important;
    }
    .woocommerce ul.products li.product .button {
        padding: 7px 10px !important;
        font-size: 0.78rem !important;
        border-radius: 7px !important;
    }
    .woocommerce ul.products li.product span.onsale {
        top: 15px !important;
        left: 15px !important;
        padding: 3px 7px !important;
        font-size: 0.62rem !important;
    }
    .tc-guarantees-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
}

/* ==========================================================================
   WOOCOMMERCE SALE BADGE: Modern Gradient Pill Badge
   ========================================================================== */
.woocommerce span.onsale,
.woocommerce-page span.onsale,
span.onsale {
    min-height: unset !important;
    min-width: unset !important;
    width: auto !important;
    height: auto !important;
    position: absolute !important;
    top: 32px !important;
    left: 32px !important;
    right: auto !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 6px 12px !important;
    background: linear-gradient(135deg, #FF416C 0%, #FF4B2B 100%) !important;
    color: #ffffff !important;
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 0.74rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0.03em !important;
    text-transform: uppercase !important;
    border-radius: 9999px !important;
    box-shadow: 0 4px 14px rgba(255, 75, 43, 0.4) !important;
    border: 1px solid rgba(255, 255, 255, 0.4) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    z-index: 10 !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.woocommerce ul.products li.product:hover span.onsale {
    transform: scale(1.06) !important;
    box-shadow: 0 6px 18px rgba(255, 75, 43, 0.5) !important;
}

.woocommerce span.onsale .tc-sale-svg,
.woocommerce-page span.onsale .tc-sale-svg,
span.onsale svg {
    width: 12px !important;
    height: 12px !important;
    display: inline-block !important;
    vertical-align: middle !important;
    color: #ffffff !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.25)) !important;
    flex-shrink: 0 !important;
}

/* Single product gallery sale badge positioning */
.woocommerce div.product > span.onsale,
.woocommerce div.product span.onsale,
.woocommerce div.product div.images span.onsale,
.woocommerce-product-gallery span.onsale {
    position: absolute !important;
    top: 20px !important;
    left: 20px !important;
    right: auto !important;
    bottom: auto !important;
    width: auto !important;
    max-width: fit-content !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 7px 14px !important;
    font-size: 0.78rem !important;
    z-index: 20 !important;
    grid-column: auto !important;
}

/* Single Product Gallery Image & Thumbnails Spacing */
.woocommerce div.product div.images .flex-viewport,
.woocommerce-product-gallery .flex-viewport {
    margin-bottom: 16px !important;
    border-radius: 16px !important;
    border: 1px solid #E2E8F0 !important;
    overflow: hidden !important;
}

.woocommerce div.product div.images ol.flex-control-nav.flex-control-thumbs,
.woocommerce-product-gallery ol.flex-control-nav.flex-control-thumbs {
    margin: 16px 0 0 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    list-style: none !important;
    position: static !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce div.product div.images ol.flex-control-nav.flex-control-thumbs li,
.woocommerce-product-gallery ol.flex-control-nav.flex-control-thumbs li {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: 25% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    list-style: none !important;
}

.woocommerce div.product div.images ol.flex-control-nav.flex-control-thumbs li img,
.woocommerce-product-gallery ol.flex-control-nav.flex-control-thumbs li img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    contain-intrinsic-size: none !important;
    object-fit: cover !important;
    border-radius: 10px !important;
    border: 2px solid #E2E8F0 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    opacity: 0.75 !important;
    display: block !important;
}

.woocommerce div.product div.images ol.flex-control-nav.flex-control-thumbs li img.flex-active,
.woocommerce div.product div.images ol.flex-control-nav.flex-control-thumbs li img:hover,
.woocommerce-product-gallery ol.flex-control-nav.flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery ol.flex-control-nav.flex-control-thumbs li img:hover {
    border-color: #845EC2 !important;
    opacity: 1 !important;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.25) !important;
    transform: translateY(-2px) !important;
}

/* Homepage card media sale badge (top-right of media) */
.tc-card-media span.onsale,
.tc-card-media .tc-card-sale-badge {
    top: 14px !important;
    left: auto !important;
    right: 14px !important;
    padding: 6px 12px !important;
}

/* ==========================================================================
   BREADCRUMBS & SCHEMA NAVIGATION
   ========================================================================== */
.tc-breadcrumbs-wrap {
    margin: 0 0 28px 0;
    padding: 12px 18px;
    background: #ffffff;
    border: 1px solid var(--tc-border);
    border-radius: 14px;
    box-shadow: 0 2px 12px rgba(20, 18, 30, 0.03);
    overflow: hidden;
    box-sizing: border-box;
    width: 100%;
}

.tc-breadcrumbs-list {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: 'Outfit', sans-serif;
    font-size: 0.9rem;
    line-height: 1.4;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
}

.tc-crumb-item {
    display: inline-flex;
    align-items: center;
    color: var(--tc-muted);
    flex-shrink: 0;
}

.tc-crumb-item.tc-crumb-active {
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
}

.tc-crumb-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--tc-muted);
    text-decoration: none !important;
    font-weight: 500;
    transition: all 0.2s ease;
    border-radius: 8px;
    padding: 3px 6px;
    white-space: nowrap;
}

.tc-crumb-link:hover {
    color: var(--tc-primary);
    background: var(--tc-primary-light);
}

.tc-crumb-icon {
    display: inline-flex;
    align-items: center;
    color: var(--tc-primary);
    flex-shrink: 0;
}

.tc-crumb-separator {
    display: inline-flex;
    align-items: center;
    margin: 0 8px;
    color: #9D96AB;
    opacity: 0.65;
    flex-shrink: 0;
}

.tc-crumb-current {
    color: var(--tc-dark);
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    min-width: 0;
    width: 100%;
}

@media (max-width: 768px) {
    .tc-breadcrumbs-wrap {
        padding: 10px 14px;
        margin-bottom: 20px;
        border-radius: 12px;
    }
    .tc-breadcrumbs-list {
        font-size: 0.83rem;
    }
    .tc-crumb-separator {
        margin: 0 5px;
    }
    .tc-crumb-link {
        padding: 2px 4px;
        gap: 4px;
    }
}

/* Hide WooCommerce Product Meta (Category: PHP Template, Tags, SKU) */
.product_meta,
.woocommerce div.product .product_meta {
    display: none !important;
}

/* ==========================================================================
   SINGLE PRODUCT PAGE STYLING
   ========================================================================== */
.woocommerce div.product {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    margin-bottom: 40px !important;
}

.woocommerce div.product::after {
    content: "";
    display: table;
    clear: both;
}

.woocommerce div.product .product_title {
    font-size: clamp(1.8rem, 3.5vw, 2.5rem);
    font-weight: 800;
    margin-top: 0 !important;
    margin-bottom: 14px;
    line-height: 1.25;
}

.tc-price-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #F8F5FC;
    border: 1px solid var(--tc-border);
    padding: 16px 20px;
    border-radius: 12px;
    margin: 20px 0;
}

.tc-price-box .price-amount {
    font-family: 'Outfit', sans-serif;
    font-size: 2rem;
    font-weight: 900;
    color: var(--tc-primary);
}

.tc-price-box .price-old {
    font-size: 1.1rem;
    color: #9D96AB;
    text-decoration: line-through;
    margin-left: 10px;
}

.badge-instant {
    background: #DDF7E3;
    color: #127A38;
    font-weight: 800;
    font-size: 0.78rem;
    padding: 5px 12px;
    border-radius: 50px;
}

/* ==========================================================================
   Product Short Description (Refined Modern Design)
   ========================================================================== */
.woocommerce-product-details__short-description {
    margin: 18px 0 22px 0;
    padding: 0;
    color: #475569;
    font-size: 0.95rem;
    line-height: 1.68;
}

.woocommerce-product-details__short-description p {
    margin: 0 0 14px 0;
    color: #475569;
    font-size: 0.95rem;
    line-height: 1.68;
    letter-spacing: -0.01em;
}

.woocommerce-product-details__short-description p:last-child {
    margin-bottom: 0;
}

.woocommerce-product-details__short-description p strong,
.woocommerce-product-details__short-description strong {
    color: #0F172A;
    font-weight: 700;
}

.woocommerce-product-details__short-description h3,
.woocommerce-product-details__short-description h4 {
    font-family: 'Outfit', -apple-system, sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0 0 8px 0;
}

/* Feature Checklist / Micro-Badges */
.woocommerce-product-details__short-description ul,
.woocommerce-product-details__short-description ol {
    list-style: none !important;
    padding: 0 !important;
    margin: 14px 0 0 0 !important;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.woocommerce-product-details__short-description ul li,
.woocommerce-product-details__short-description ol li {
    position: relative;
    padding: 9px 14px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-left: 3.5px solid #845EC2;
    border-radius: 9px;
    font-size: 0.91rem !important;
    line-height: 1.5;
    color: #334155;
    display: flex;
    align-items: baseline;
    gap: 8px;
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), background-color 0.2s ease, border-color 0.2s ease;
    box-sizing: border-box;
}

.woocommerce-product-details__short-description ul li:hover,
.woocommerce-product-details__short-description ol li:hover {
    background: #F1F5F9;
    border-color: #CBD5E1;
    border-left-color: #633CA8;
    transform: translateX(3px);
}

.woocommerce-product-details__short-description ul li strong,
.woocommerce-product-details__short-description ol li strong {
    color: #0F172A;
    font-weight: 700;
}

.woocommerce-product-details__short-description code {
    background: #F1F5F9;
    color: #845EC2;
    padding: 2px 6px;
    border-radius: 5px;
    font-size: 0.88em;
    font-family: monospace;
}

.woocommerce-product-details__short-description blockquote {
    border-left: 3px solid #845EC2;
    margin: 12px 0;
    padding: 8px 16px;
    background: #F8FAFC;
    color: #475569;
    font-style: italic;
    border-radius: 0 8px 8px 0;
}

/* ==========================================================================
   Action Buttons (Hero Purchase CTA, Upgrade Offer, and Utility Row)
   ========================================================================== */

/* 1. Hero Primary Buy CTA */
.woocommerce div.product form.cart,
.summary form.cart {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
    margin-top: 14px !important;
    margin-bottom: 20px !important;
}

.woocommerce div.product form.cart::before,
.woocommerce div.product form.cart::after,
.summary form.cart::before,
.summary form.cart::after {
    display: none !important;
    content: none !important;
}

.woocommerce div.product form.cart div.quantity,
.summary form.cart div.quantity {
    display: none !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button,
.summary .single_add_to_cart_button,
.single_add_to_cart_button {
    position: relative !important;
    overflow: hidden !important;
    background: linear-gradient(135deg, #6366F1 0%, #7C3AED 50%, #6D28D9 100%) !important;
    color: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.08rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.01em !important;
    padding: 16px 28px !important;
    border-radius: 14px !important;
    border: none !important;
    box-shadow: 0 8px 24px -2px rgba(124, 58, 237, 0.42), 0 3px 8px -2px rgba(99, 102, 241, 0.3) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 6px !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    float: none !important;
    clear: both !important;
}

/* Eye-Catching Shimmer Sweep Effect */
.single_add_to_cart_button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.32), transparent);
    transform: skewX(-20deg);
    animation: tcButtonShimmer 4s infinite ease-in-out;
    pointer-events: none;
}

@keyframes tcButtonShimmer {
    0%, 70% { left: -100%; }
    100% { left: 200%; }
}

.single_add_to_cart_button:hover {
    background: linear-gradient(135deg, #4F46E5 0%, #6D28D9 50%, #5B21B6 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 30px -2px rgba(124, 58, 237, 0.55), 0 4px 12px -2px rgba(99, 102, 241, 0.4) !important;
}

.single_add_to_cart_button:active {
    transform: translateY(0) !important;
}

/* Micro-Trust Strip Directly Under Primary CTA */
.tc-cta-micro-guarantee {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    gap: 10px !important;
    margin-top: 4px !important;
    margin-bottom: 16px !important;
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    color: #64748B !important;
    letter-spacing: 0.2px !important;
    box-sizing: border-box !important;
}

.tc-cmg-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    color: #475569 !important;
    white-space: nowrap !important;
}

.tc-cmg-item svg {
    color: #10B981;
}

.tc-cmg-sep {
    color: #CBD5E1;
}

/* 2. Upgrade / Customization Service Box */
.tc-custom-service-callout {
    background: linear-gradient(180deg, #FBF9FF 0%, #F5F0FD 100%);
    border: 1.5px solid #E4DCF6;
    border-radius: 16px;
    padding: 16px 18px 14px;
    margin-bottom: 16px;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.tc-custom-service-callout:hover {
    border-color: #CBB9EE;
    box-shadow: 0 4px 18px rgba(132, 94, 194, 0.08);
}

.tc-callout-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 6px;
}

.tc-callout-pill {
    background: #EDE4FB;
    color: #6D28D9;
    font-size: 0.68rem;
    font-weight: 800;
    padding: 3px 9px;
    border-radius: 999px;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border: 1px solid #D8C6F4;
}

.tc-callout-title {
    font-family: 'Outfit', sans-serif;
    font-size: 0.88rem;
    font-weight: 800;
    color: #191428;
}

.tc-callout-desc {
    font-size: 0.82rem;
    color: #554D68;
    line-height: 1.45;
    margin: 0 0 12px 0;
}

.tc-customize-project-btn {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    background: linear-gradient(135deg, #D946EF 0%, #A855F7 50%, #7E22CE 100%) !important;
    color: #ffffff !important;
    padding: 12px 20px !important;
    border-radius: 12px !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 5px 18px rgba(217, 70, 239, 0.3) !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

.tc-customize-project-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 24px rgba(217, 70, 239, 0.45) !important;
    background: linear-gradient(135deg, #C026D3 0%, #9333EA 50%, #6B21A8 100%) !important;
}

.tc-customize-project-btn .tc-btn-main {
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.98rem !important;
    font-weight: 800 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    letter-spacing: -0.01em !important;
}

.tc-customize-project-btn .tc-btn-sub {
    font-size: 0.74rem !important;
    font-weight: 600 !important;
    opacity: 0.92 !important;
    margin-top: 2px !important;
    letter-spacing: 0.01em !important;
}

/* 3. Secondary Actions (Live Demo + WhatsApp side-by-side) */
.tc-secondary-cta-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin-bottom: 22px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.tc-secondary-cta-grid .tc-preview-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    text-align: center;
    background: #ffffff !important;
    color: #4F46E5 !important;
    border: 1.5px solid #6366F1 !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.92rem !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.08) !important;
}

.tc-secondary-cta-grid .tc-preview-btn:hover {
    background: #EEF2FF !important;
    border-color: #4338CA !important;
    color: #3730A3 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(99, 102, 241, 0.16) !important;
}

.tc-secondary-cta-grid .tc-preview-btn svg {
    color: #4F46E5 !important;
    stroke: currentColor;
    flex-shrink: 0;
}

.tc-secondary-cta-grid .tc-product-whatsapp-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    text-align: center;
    background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important;
    color: #ffffff !important;
    border: none !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.92rem !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.25) !important;
}

.tc-secondary-cta-grid .tc-product-whatsapp-btn:hover {
    background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(16, 185, 129, 0.38) !important;
}

.tc-secondary-cta-grid .tc-product-whatsapp-btn svg {
    flex-shrink: 0;
}

/* Mobile responsive adjustments */
@media (max-width: 480px) {
    .tc-secondary-cta-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }
    .tc-secondary-cta-grid .tc-preview-btn,
    .tc-secondary-cta-grid .tc-product-whatsapp-btn {
        padding: 11px 8px !important;
        font-size: 0.82rem !important;
        gap: 5px !important;
    }
    .tc-callout-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
}

/* Digital Perks & Trust Card (Buyer Protection & Guarantees) */
.tc-digital-perks {
    background: linear-gradient(180deg, #FFFFFF 0%, #FAFBFF 100%) !important;
    border: 1.5px solid #E6DDF8 !important;
    border-radius: 18px !important;
    padding: 24px 22px !important;
    box-shadow: 0 8px 26px -4px rgba(132, 94, 194, 0.08), 0 2px 8px rgba(15, 23, 42, 0.03) !important;
    transition: all 0.25s ease !important;
    box-sizing: border-box !important;
}

.tc-digital-perks:hover {
    border-color: #D3C5E8 !important;
    box-shadow: 0 12px 32px -4px rgba(132, 94, 194, 0.12), 0 4px 12px rgba(15, 23, 42, 0.04) !important;
}

/* ==========================================================================
   Single Product Desktop 2-Column Grid Layout (Aligns Title & Eliminates Whitespace)
   ========================================================================== */
@media (min-width: 992px) {
    .woocommerce div.product {
        display: grid !important;
        grid-template-columns: minmax(0, 48%) minmax(0, 48%) !important;
        justify-content: space-between !important;
        align-items: start !important;
        row-gap: 0 !important;
    }

    .woocommerce div.product::after,
    .woocommerce div.product::before {
        display: none !important;
    }

    /* Col 1, Row 1: Product Gallery / Image */
    .woocommerce div.product div.images,
    .woocommerce div.product .woocommerce-product-gallery {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }

    /* Col 1, Row 2: Buyer Protection & Guarantees (Directly below images) */
    .woocommerce div.product .tc-perks-desktop {
        grid-column: 1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        float: none !important;
        display: block !important;
        margin-top: 24px !important;
        margin-bottom: 30px !important;
    }

    /* Col 2, Row 1 (spanning down): Product Title, Price, Description, Buttons */
    .woocommerce div.product div.summary {
        grid-column: 2 !important;
        grid-row: 1 / span 3 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }

    .woocommerce div.product .tc-perks-mobile {
        display: none !important;
    }

    /* Full-width sections below the two columns */
    .woocommerce div.product .woocommerce-tabs,
    .woocommerce div.product .tc-seo-specs-section,
    .woocommerce div.product .tc-seo-spec-section,
    .woocommerce div.product .related.products,
    .woocommerce div.product section.related.products,
    .woocommerce div.product .upsells.products,
    .woocommerce div.product section.upsells.products {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        clear: both !important;
        box-sizing: border-box !important;
    }
}

/* Mobile & Tablet layout: Below buttons in single column */
@media (max-width: 991px) {
    .tc-digital-perks.tc-perks-desktop {
        display: none !important;
    }
    .tc-digital-perks.tc-perks-mobile {
        display: block !important;
        width: 100% !important;
        margin-top: 22px !important;
        margin-bottom: 24px !important;
    }
}

.tc-perks-header {
    margin-bottom: 18px;
}

.tc-perks-header-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.78rem;
    font-weight: 800;
    color: #6D28D9;
    background: #F3EDFC;
    padding: 5px 14px;
    border-radius: 50px;
    border: 1px solid #E4DCF6;
    letter-spacing: 0.2px;
}

.tc-perks-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.tc-perk-row {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.tc-perk-icon-wrap {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    flex-shrink: 0;
    margin-top: 2px;
}

.tc-perk-body {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.tc-perk-title {
    font-family: 'Outfit', sans-serif;
    font-size: 0.94rem;
    font-weight: 800;
    color: #0F172A;
}

.tc-perk-desc {
    font-size: 0.84rem;
    color: #64748B;
    line-height: 1.45;
}

.tc-payment-trust-bar {
    border-top: 1px solid #ECE7F6;
    padding-top: 18px;
    margin-top: 20px;
}

.tc-payment-trust-title {
    font-family: 'Outfit', sans-serif;
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #64748B;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.tc-payment-trust-title svg {
    color: #10B981;
}

.tc-payment-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tc-pay-chip {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    padding: 6px 12px;
    border-radius: 8px;
    font-size: 0.78rem;
    font-weight: 700;
    color: #334155;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
    transition: all 0.2s ease;
}

.tc-pay-chip:hover {
    background: #ffffff;
    border-color: #845EC2;
    color: #845EC2;
    box-shadow: 0 3px 10px rgba(132, 94, 194, 0.12);
}

/* Explicit Spacing Above Buy Button Form */
.summary form.cart {
    margin-top: 14px !important;
}

.summary .single_add_to_cart_button {
    margin-top: 4px !important;
}

/* ==========================================================================
   Modern Product Data Tabs (Description & Reviews)
   ========================================================================== */
.woocommerce div.product .woocommerce-tabs,
.woocommerce-tabs.wc-tabs-wrapper {
    margin: 45px 0 35px;
    clear: both;
}

/* Completely eradicate WooCommerce default tab borders, lines & pseudo elements */
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after,
.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after {
    display: none !important;
    content: none !important;
    border: none !important;
    box-shadow: none !important;
}

/* Modern Pill Segmented Switcher Track */
.woocommerce div.product .woocommerce-tabs ul.tabs,
.woocommerce-tabs ul.tabs.wc-tabs {
    background: #F1EDF9 !important;
    border: 1px solid #E6DDF2 !important;
    border-radius: 14px !important;
    padding: 6px !important;
    margin: 0 0 16px 0 !important;
    display: inline-flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    list-style: none !important;
    box-shadow: inset 0 1px 3px rgba(132, 94, 194, 0.05) !important;
    overflow: visible !important;
    width: auto !important;
    position: relative !important;
}

/* Individual Tab Items */
.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce-tabs ul.tabs.wc-tabs li {
    background: transparent !important;
    border: none !important;
    border-radius: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    list-style: none !important;
    display: inline-flex !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Tab Links */
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-tabs ul.tabs.wc-tabs li a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 22px !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #64748B !important;
    text-decoration: none !important;
    border-radius: 10px !important;
    border: none !important;
    background: transparent !important;
    transition: all 0.22s ease !important;
    font-family: 'Outfit', sans-serif !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover,
.woocommerce-tabs ul.tabs.wc-tabs li a:hover {
    color: var(--tc-primary) !important;
    background: rgba(255, 255, 255, 0.65) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs.wc-tabs li.active a {
    color: var(--tc-primary) !important;
    background: #ffffff !important;
    font-weight: 700 !important;
    box-shadow: 0 3px 12px rgba(132, 94, 194, 0.16) !important;
}

/* Tab Panels Card */
.woocommerce div.product .woocommerce-tabs .panel,
.woocommerce-tabs .woocommerce-Tabs-panel.panel {
    background: #ffffff !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 16px !important;
    padding: 24px 28px !important;
    box-shadow: 0 1px 3px rgba(74, 58, 110, 0.03) !important;
    margin: 0 0 35px 0 !important;
}

#tab-description p:last-child {
    margin-bottom: 0 !important;
}

/* ==========================================================================
   Description Tab Content Styling
   ========================================================================== */
#tab-description > h2:first-of-type {
    display: none !important;
}

#tab-description {
    color: #334155;
    font-size: 1.025rem;
    line-height: 1.85;
    font-family: 'Outfit', sans-serif;
}

#tab-description p {
    margin-bottom: 14px !important;
    color: #475569 !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
}

#tab-description p:last-child {
    margin-bottom: 0 !important;
}

#tab-description h2,
#tab-description h3,
#tab-description h4 {
    color: var(--tc-dark);
    font-weight: 700;
    margin-top: 28px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1.35rem;
}

#tab-description h3::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 18px;
    background: linear-gradient(180deg, #845EC2, #D65DB1);
    border-radius: 3px;
}

/* Convert bullet lists inside description into modern feature cards */
#tab-description ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 22px 0 26px !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 14px !important;
}

#tab-description ul li {
    position: relative !important;
    padding: 14px 18px 14px 46px !important;
    background: #FAF8FE !important;
    border: 1px solid #ECE4F7 !important;
    border-radius: 12px !important;
    font-size: 0.95rem !important;
    color: #334155 !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    display: block !important;
    transition: all 0.2s ease !important;
}

#tab-description ul li:hover {
    border-color: #D3C5E8 !important;
    background: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.08) !important;
}

#tab-description ul li::before {
    content: "" !important;
    position: absolute !important;
    left: 15px !important;
    top: 15px !important;
    transform: none !important;
    width: 20px !important;
    height: 20px !important;
    background-color: #E6F8EB !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23127A38' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-size: 11px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    border-radius: 50% !important;
    flex-shrink: 0 !important;
}

/* ==========================================================================
   Reviews Tab Content & Form Styling
   ========================================================================== */
#reviews.woocommerce-Reviews {
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    gap: 40px;
    align-items: start;
}

/* Left: Reviews List & Empty State */
#comments h2.woocommerce-Reviews-title {
    font-size: 1.35rem;
    color: var(--tc-dark);
    font-weight: 700;
    margin-bottom: 20px;
}

.woocommerce div.product .woocommerce-tabs #tab-reviews .woocommerce-noreviews,
.woocommerce-noreviews {
    background: #FAF8FD !important;
    border: 1.5px dashed #D3C5E8 !important;
    border-radius: 16px !important;
    padding: 40px 24px !important;
    text-align: center !important;
    color: #64748B !important;
    font-size: 1rem !important;
    margin: 0 !important;
    line-height: 1.6 !important;
}

.woocommerce-noreviews::before {
    content: "" !important;
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 auto 12px;
    background-color: #F59E0B;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23F59E0B'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23F59E0B'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E") no-repeat center / contain;
    filter: drop-shadow(0 2px 8px rgba(255, 184, 0, 0.35));
}

/* Existing Reviews list */
ol.commentlist {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

ol.commentlist li {
    background: #FAF8FD !important;
    border: 1px solid #ECE4F7 !important;
    border-radius: 14px !important;
    padding: 22px !important;
    transition: all 0.2s ease !important;
}

ol.commentlist li:hover {
    border-color: #D3C5E8 !important;
    background: #ffffff !important;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.08) !important;
}

ol.commentlist li img.avatar {
    border-radius: 50% !important;
    width: 44px !important;
    height: 44px !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
    float: left !important;
    margin-right: 14px !important;
}

ol.commentlist li .meta {
    font-size: 0.88rem !important;
    color: #64748B !important;
    margin-bottom: 8px !important;
}

ol.commentlist li .meta strong {
    color: var(--tc-dark) !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
}

ol.commentlist li .description {
    color: #475569 !important;
    font-size: 0.95rem !important;
    line-height: 1.65 !important;
    clear: both !important;
    margin-top: 12px !important;
}

/* Star Rating Display */
.star-rating {
    overflow: hidden !important;
    position: relative !important;
    height: 1.2em !important;
    line-height: 1.2em !important;
    font-size: 0.95rem !important;
    width: 5.4em !important;
    font-family: star !important;
    color: #FFAA00 !important;
}

/* Right: Review Form Card */
#review_form_wrapper {
    background: #FAF8FD !important;
    border: 1px solid #E8DEF5 !important;
    border-radius: 16px !important;
    padding: 30px 32px !important;
    box-shadow: 0 2px 14px rgba(132, 94, 194, 0.04) !important;
}

#reply-title {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: var(--tc-dark) !important;
    margin-bottom: 6px !important;
    display: block !important;
    line-height: 1.4 !important;
}

.comment-notes {
    font-size: 0.86rem !important;
    color: #64748B !important;
    margin-bottom: 20px !important;
}

.comment-form-rating {
    margin-bottom: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.comment-form-rating label {
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    color: #334155 !important;
}

.comment-form-rating select {
    width: 100% !important;
    max-width: 220px !important;
    padding: 10px 14px !important;
    border: 1.5px solid #D8CEE8 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.92rem !important;
    color: #334155 !important;
    outline: none !important;
    transition: all 0.2s ease !important;
}

.comment-form-rating select:focus {
    border-color: var(--tc-primary) !important;
    box-shadow: 0 0 0 3px rgba(132, 94, 194, 0.15) !important;
}

/* Interactive Star Rating from WooCommerce */
p.stars {
    display: inline-flex !important;
    gap: 4px !important;
    margin: 4px 0 0 !important;
}

p.stars a {
    color: #CBD5E1 !important;
    font-size: 1.3rem !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

p.stars a:hover,
p.stars a.active {
    color: #FFAA00 !important;
}

#commentform label {
    display: block !important;
    font-size: 0.88rem !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin-bottom: 6px !important;
}

#commentform input[type="text"],
#commentform input[type="email"],
#commentform textarea {
    width: 100% !important;
    padding: 12px 14px !important;
    border: 1.5px solid #E2D9F3 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.94rem !important;
    color: #1E293B !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
    outline: none !important;
    margin-bottom: 16px !important;
}

#commentform input[type="text"]:focus,
#commentform input[type="email"]:focus,
#commentform textarea:focus {
    border-color: var(--tc-primary) !important;
    box-shadow: 0 0 0 3.5px rgba(132, 94, 194, 0.15) !important;
    background: #ffffff !important;
}

#commentform textarea {
    resize: vertical !important;
    min-height: 110px !important;
}

.comment-form-cookies-consent {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    font-size: 0.85rem !important;
    color: #64748B !important;
    margin-bottom: 22px !important;
}

.comment-form-cookies-consent input {
    margin-top: 3px !important;
    accent-color: var(--tc-primary) !important;
}

.comment-form-cookies-consent label {
    margin-bottom: 0 !important;
    font-weight: 400 !important;
}

.form-submit {
    margin-top: 10px !important;
}

.form-submit input#submit {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff !important;
    border: none !important;
    padding: 14px 28px !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    width: 100% !important;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.25) !important;
}

.form-submit input#submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(132, 94, 194, 0.35) !important;
    background: linear-gradient(135deg, #7042B3 0%, #5c2f9d 100%) !important;
}

/* Mobile Responsiveness for Tabs */
@media (max-width: 900px) {
    #reviews.woocommerce-Reviews {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}

@media (max-width: 768px) {
    .woocommerce div.product .woocommerce-tabs,
    .woocommerce-tabs.wc-tabs-wrapper {
        margin: 35px 0 25px;
    }

    .woocommerce div.product .woocommerce-tabs .panel,
    .woocommerce-tabs .woocommerce-Tabs-panel.panel {
        padding: 24px 20px !important;
        border-radius: 16px !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs,
    .woocommerce-tabs ul.tabs.wc-tabs {
        width: 100% !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li,
    .woocommerce-tabs ul.tabs.wc-tabs li {
        flex: 1 1 auto !important;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li a,
    .woocommerce-tabs ul.tabs.wc-tabs li a {
        width: 100% !important;
        justify-content: center !important;
        padding: 10px 14px !important;
    }

    #review_form_wrapper {
        padding: 22px 18px !important;
    }

    #tab-description ul {
        grid-template-columns: 1fr !important;
    }
}

/* Technical Specs - Clean Section (No Card-in-Card) */
.tc-specs-card {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin-top: 35px !important;
    margin-bottom: 40px !important;
}

.tc-specs-card h3 {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.28rem !important;
    font-weight: 800 !important;
    color: var(--tc-dark) !important;
    margin-bottom: 18px !important;
    letter-spacing: -0.01em !important;
}

.tc-specs-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 16px !important;
}

.tc-spec-item {
    background: #ffffff !important;
    border: 1px solid #E2E8F0 !important;
    padding: 16px 20px !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

.tc-spec-item:hover {
    border-color: #845EC2 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(132, 94, 194, 0.08) !important;
}

.tc-spec-label {
    font-size: 0.76rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #64748B !important;
    font-weight: 700 !important;
    margin-bottom: 5px !important;
}

.tc-spec-val {
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    color: var(--tc-dark) !important;
}

/* Hide WooCommerce Upsells ("You may also like...") */
.woocommerce .up-sells.upsells,
.woocommerce section.up-sells,
.up-sells.upsells,
section.up-sells {
    display: none !important;
}

/* ==========================================================================
   RELATED PRODUCTS SECTION: 4-Cards Desktop / 2x2 Cards Small Screen
   ========================================================================== */
.woocommerce section.related.products,
section.related.products {
    margin-top: 50px !important;
    margin-bottom: 55px !important;
    padding-top: 35px !important;
    border-top: 1px solid #E2E8F0 !important;
    clear: both !important;
}

.woocommerce section.related.products > h2,
section.related.products > h2 {
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 1.45rem !important;
    font-weight: 800 !important;
    color: var(--tc-dark) !important;
    letter-spacing: -0.015em !important;
    margin-bottom: 24px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.woocommerce section.related.products > h2::before,
section.related.products > h2::before {
    content: "" !important;
    display: inline-block !important;
    width: 5px !important;
    height: 22px !important;
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%) !important;
    border-radius: 9999px !important;
}

/* Desktop: 4 Cards Single Horizontal Line */
.woocommerce section.related.products ul.products,
section.related.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
}

/* Related Product Cards */
.woocommerce section.related.products ul.products li.product,
section.related.products ul.products li.product {
    background: #ffffff !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 16px !important;
    padding: 14px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    height: 100% !important;
}

.woocommerce section.related.products ul.products li.product:hover,
section.related.products ul.products li.product:hover {
    transform: translateY(-4px) !important;
    border-color: #845EC2 !important;
    box-shadow: 0 14px 28px rgba(132, 94, 194, 0.12) !important;
}

.woocommerce section.related.products ul.products li.product .woocommerce-LoopProduct-link,
section.related.products ul.products li.product .woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    text-decoration: none !important;
    position: relative !important;
    margin: 0 !important;
}

.woocommerce section.related.products ul.products li.product img,
section.related.products ul.products li.product img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    contain-intrinsic-size: none !important;
    object-fit: contain !important;
    border-radius: 10px !important;
    margin: 0 0 12px 0 !important;
    transition: transform 0.3s ease !important;
    display: block !important;
    background: #F8FAFC !important;
    order: 1 !important;
}

.woocommerce section.related.products ul.products li.product:hover img,
section.related.products ul.products li.product:hover img {
    transform: scale(1.02) !important;
}

.woocommerce section.related.products ul.products li.product .woocommerce-loop-product__title,
section.related.products ul.products li.product .woocommerce-loop-product__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    color: #000000 !important;
    margin: 0 0 8px 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 2.6em !important;
    padding: 0 !important;
    order: 2 !important;
}

.woocommerce section.related.products ul.products li.product .price,
section.related.products ul.products li.product .price {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    color: var(--tc-primary) !important;
    margin: 0 0 14px 0 !important;
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    line-height: 1.2 !important;
    order: 3 !important;
}

.woocommerce section.related.products ul.products li.product .price del,
section.related.products ul.products li.product .price del {
    font-size: 0.85rem !important;
    color: #94A3B8 !important;
    font-weight: normal !important;
}

.woocommerce section.related.products ul.products li.product .price ins,
section.related.products ul.products li.product .price ins {
    text-decoration: none !important;
    color: var(--tc-primary) !important;
}

.woocommerce section.related.products ul.products li.product .button,
section.related.products ul.products li.product .button {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%) !important;
    color: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
    padding: 10px 14px !important;
    border-radius: 9px !important;
    border: none !important;
    text-align: center !important;
    width: 100% !important;
    margin-top: auto !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(132, 94, 194, 0.2) !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    text-decoration: none !important;
}

.woocommerce section.related.products ul.products li.product .button:hover,
section.related.products ul.products li.product .button:hover {
    background: #6c47aa !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.35) !important;
    color: #ffffff !important;
}

.woocommerce section.related.products ul.products li.product span.onsale,
section.related.products ul.products li.product span.onsale {
    position: absolute !important;
    top: 22px !important;
    left: 22px !important;
    padding: 4px 9px !important;
    font-size: 0.68rem !important;
    z-index: 5 !important;
    margin: 0 !important;
}

/* Small Screens / Tablet & Mobile: 2x2 Grid (2 cards per line) */
@media (max-width: 860px) {
    .woocommerce section.related.products ul.products,
    section.related.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
    }

    .woocommerce section.related.products ul.products li.product img,
    section.related.products ul.products li.product img {
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        contain-intrinsic-size: none !important;
        object-fit: contain !important;
    }
}

@media (max-width: 540px) {
    .woocommerce section.related.products ul.products,
    section.related.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .woocommerce section.related.products ul.products li.product,
    section.related.products ul.products li.product {
        padding: 10px !important;
        border-radius: 12px !important;
    }

    .woocommerce section.related.products ul.products li.product img,
    section.related.products ul.products li.product img {
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        contain-intrinsic-size: none !important;
        object-fit: contain !important;
        margin-bottom: 8px !important;
        border-radius: 8px !important;
    }

    .woocommerce section.related.products ul.products li.product .woocommerce-loop-product__title,
    section.related.products ul.products li.product .woocommerce-loop-product__title {
        font-size: 0.82rem !important;
        margin-bottom: 5px !important;
        min-height: 2.5em !important;
    }

    .woocommerce section.related.products ul.products li.product .price,
    section.related.products ul.products li.product .price {
        font-size: 0.95rem !important;
        margin-bottom: 8px !important;
    }

    .woocommerce section.related.products ul.products li.product .button,
    section.related.products ul.products li.product .button {
        padding: 7px 10px !important;
        font-size: 0.78rem !important;
        border-radius: 7px !important;
    }

    .woocommerce section.related.products ul.products li.product span.onsale,
    section.related.products ul.products li.product span.onsale {
        top: 15px !important;
        left: 15px !important;
        padding: 3px 7px !important;
        font-size: 0.62rem !important;
    }
}

/* ==========================================================================
   FEATURES, STEPS & FAQ SECTIONS
   ========================================================================== */
.tc-section-eyebrow {
    background: var(--tc-primary-light);
    color: var(--tc-primary);
    font-size: 0.8rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 5px 14px;
    border-radius: 50px;
    display: inline-block;
    margin-bottom: 12px;
    border: 1px solid var(--tc-border);
}

.tc-features-section {
    padding: 70px 20px;
    background: #ffffff;
    border-top: 1px solid var(--tc-border);
    border-bottom: 1px solid var(--tc-border);
}

.tc-features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 25px;
}

.tc-feature-card {
    background: #ffffff;
    border: 1px solid var(--tc-border);
    border-radius: 16px;
    padding: 30px;
    transition: all 0.3s ease;
}

.tc-feature-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--tc-shadow-md);
    background: #ffffff;
    border-color: #CDBFE3;
}

.tc-feature-icon {
    font-size: 2.2rem;
    margin-bottom: 16px;
}

.tc-feature-card h3 {
    font-size: 1.25rem;
    margin-bottom: 10px;
}

.tc-feature-card p {
    font-size: 0.92rem;
    color: var(--tc-muted);
    line-height: 1.6;
}

/* Steps Grid */
.tc-steps-section {
    padding: 75px 20px;
    background: #F7F4FB;
    border-bottom: 1px solid var(--tc-border);
}

.tc-steps-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 25px;
    text-align: left;
}

.tc-step-card {
    background: #ffffff;
    border: 1px solid var(--tc-border);
    border-radius: 16px;
    padding: 32px 26px;
    box-shadow: var(--tc-shadow-sm);
    position: relative;
}

.tc-step-number {
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%);
    color: #ffffff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.3rem;
    margin-bottom: 18px;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.3);
}

.tc-step-card h3 {
    font-size: 1.25rem;
    margin-bottom: 10px;
}

.tc-step-card p {
    font-size: 0.92rem;
    color: var(--tc-muted);
    line-height: 1.6;
}

/* FAQ Section */
.tc-faq-section {
    padding: 70px 20px;
    background: #ffffff;
    border-bottom: 1px solid var(--tc-border);
}

.tc-faq-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 24px;
    max-width: 1000px;
    margin: 0 auto;
}

.tc-faq-item {
    background: #ffffff;
    border: 1px solid var(--tc-border);
    border-radius: 14px;
    padding: 24px 26px;
}

.tc-faq-item h4 {
    font-size: 1.1rem;
    margin-bottom: 10px;
    color: var(--tc-dark);
}

.tc-faq-item p {
    font-size: 0.92rem;
    color: var(--tc-muted);
    line-height: 1.6;
}

/* ==========================================================================
   BUTTON UTILITIES
   ========================================================================== */
.tc-btn-primary {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff !important;
    padding: 12px 28px;
    border-radius: 10px;
    font-weight: 700;
    display: inline-block;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.3);
    transition: all 0.2s ease;
}

.tc-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(132, 94, 194, 0.4);
}

.tc-btn-outline {
    background: #ffffff;
    color: var(--tc-dark) !important;
    border: 2px solid var(--tc-border);
    padding: 11px 26px;
    border-radius: 10px;
    font-weight: 700;
    display: inline-block;
    transition: all 0.2s ease;
}

.tc-btn-outline:hover {
    border-color: var(--tc-primary);
    color: var(--tc-primary) !important;
}

/* ==========================================================================
   WOOCOMMERCE GLOBAL NOTICES & ALERTS
   ========================================================================== */
.woocommerce-notices-wrapper {
    margin-bottom: 25px;
    clear: both;
}

.woocommerce-notices-wrapper:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
}

.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
    border-radius: 14px !important;
    padding: 16px 22px 16px 50px !important;
    font-size: 0.96rem !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    position: relative !important;
    margin-bottom: 20px !important;
    list-style: none !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
    font-family: 'Outfit', sans-serif !important;
}

.woocommerce-message {
    background: #F0FDF4 !important;
    border: 1.5px solid #BBF7D0 !important;
    color: #166534 !important;
}

.woocommerce-message::before {
    content: "" !important;
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 22px !important;
    height: 22px !important;
    background-color: #22C55E !important;
    border-radius: 50% !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 13px 13px !important;
    display: inline-flex !important;
}

.woocommerce-error {
    background: #FEF2F2 !important;
    border: 1.5px solid #FECACA !important;
    color: #991B1B !important;
}

.woocommerce-error::before {
    content: "" !important;
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 22px !important;
    height: 22px !important;
    background-color: #EF4444 !important;
    border-radius: 50% !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 12px 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
}

.woocommerce-info {
    background: #F8F5FE !important;
    border: 1.5px solid #E4D9F5 !important;
    color: var(--tc-primary) !important;
}

.woocommerce-info::before {
    content: "ℹ" !important;
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 22px !important;
    height: 22px !important;
    background: var(--tc-primary) !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.8rem !important;
    font-weight: 800 !important;
}

/* ==========================================================================
   CART PAGE DESIGN (/cart/)
   ========================================================================== */

/* Cart Header Banner */
.tc-cart-header-banner {
    grid-column: 1 / -1;
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.06) 0%, rgba(214, 93, 177, 0.06) 100%);
    border: 1px solid #E6DCF5;
    border-radius: 18px;
    padding: 20px 26px;
    margin-bottom: 0 !important;
}

/* Empty Cart State Card */
.woocommerce-cart .wc-empty-cart-message {
    background: #ffffff;
    border: 1.5px dashed #D6CBEC;
    border-radius: 24px;
    padding: 60px 30px;
    text-align: center;
    max-width: 640px;
    margin: 40px auto 25px;
    box-shadow: 0 4px 25px rgba(132, 94, 194, 0.05);
}

.woocommerce-cart .wc-empty-cart-message .cart-empty {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    color: var(--tc-dark) !important;
    margin-bottom: 10px !important;
    line-height: 1.3 !important;
}

.woocommerce-cart .wc-empty-cart-message .cart-empty::before {
    content: "" !important;
    position: static !important;
    transform: none !important;
    width: 76px !important;
    height: 76px !important;
    background-color: #F3EDFC !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 20px !important;
    box-shadow: 0 4px 16px rgba(132, 94, 194, 0.12) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C5CE7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 36px 36px !important;
}

.woocommerce-cart .return-to-shop {
    text-align: center;
    margin-bottom: 50px;
}

.woocommerce-cart .return-to-shop a.button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%) !important;
    color: #ffffff !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    padding: 15px 36px !important;
    border-radius: 12px !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(132, 94, 194, 0.3) !important;
    transition: all 0.25s ease !important;
}

.woocommerce-cart .return-to-shop a.button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 26px rgba(132, 94, 194, 0.45) !important;
    background: linear-gradient(135deg, #7042B3 0%, #b84496 100%) !important;
}

/* Populated Cart 2-Column Grid Layout */
.woocommerce-cart .entry-content .woocommerce {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 35px;
    align-items: start;
}

.woocommerce-cart .entry-content .woocommerce .woocommerce-notices-wrapper {
    grid-column: 1 / -1;
}

/* Left: Cart Items Form Card */
form.woocommerce-cart-form {
    background: #ffffff;
    border: 1px solid #E8DEF5;
    border-radius: 20px;
    padding: 30px 32px;
    box-shadow: 0 4px 22px rgba(74, 58, 110, 0.04);
}

table.shop_table.cart {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: none !important;
    margin-bottom: 0 !important;
}

table.shop_table.cart thead th {
    background: #FAF8FE !important;
    border: none !important;
    padding: 14px 16px !important;
    font-size: 0.84rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #64748B !important;
    font-family: 'Outfit', sans-serif !important;
}

table.shop_table.cart thead th:first-child {
    border-top-left-radius: 12px !important;
    border-bottom-left-radius: 12px !important;
}

table.shop_table.cart thead th:last-child {
    border-top-right-radius: 12px !important;
    border-bottom-right-radius: 12px !important;
}

table.shop_table.cart tbody tr.cart_item td {
    padding: 20px 14px !important;
    border-top: 1px solid #F1EBF9 !important;
    border-bottom: none !important;
    vertical-align: middle !important;
}

/* Cart Product Thumbnail & Overlay Remove Column */
table.shop_table.cart th.product-thumbnail,
table.shop_table.cart td.product-thumbnail {
    width: 80px !important;
    max-width: 90px !important;
    text-align: center !important;
    padding: 16px 10px !important;
    vertical-align: middle !important;
    position: relative !important;
    overflow: visible !important;
}

.tc-thumbnail-container {
    position: relative !important;
    display: inline-block !important;
    width: 68px !important;
    height: 68px !important;
    margin: 0 auto !important;
    text-align: center !important;
    vertical-align: middle !important;
    overflow: visible !important;
}

.tc-thumbnail-container a.tc-thumb-link,
.tc-thumbnail-container a:not(.remove) {
    display: block !important;
    width: 68px !important;
    height: 68px !important;
    line-height: 0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
    border: 1px solid #ECE4F7 !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.tc-thumbnail-container a:not(.remove):hover {
    transform: scale(1.03) !important;
    box-shadow: 0 4px 12px rgba(108, 92, 231, 0.12) !important;
}

table.shop_table.cart td.product-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    border: none !important;
    display: block !important;
    margin: 0 !important;
}

/* Cart Product Title */
table.shop_table.cart td.product-name a {
    color: var(--tc-dark) !important;
    font-weight: 700 !important;
    font-size: 1.02rem !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    transition: color 0.2s ease !important;
}

table.shop_table.cart td.product-name a:hover {
    color: var(--tc-primary) !important;
}

/* Cart Prices */
table.shop_table.cart td.product-price,
table.shop_table.cart td.product-subtotal {
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    color: var(--tc-primary) !important;
    font-family: 'Outfit', sans-serif !important;
}

/* Remove Quantity column for 1-license digital marketplace */
table.shop_table.cart th.product-quantity,
table.shop_table.cart td.product-quantity {
    display: none !important;
}

/* Remove separate product-remove column if ever output */
.woocommerce table.cart th.product-remove,
.woocommerce table.cart td.product-remove,
.woocommerce-cart table.cart th.product-remove,
.woocommerce-cart table.cart td.product-remove,
table.shop_table.cart th.product-remove,
table.shop_table.cart td.product-remove {
    display: none !important;
}

/* Cross Button As Overlay Around Card */
.tc-thumbnail-container .tc-remove-below-thumb,
.tc-thumbnail-container .tc-remove-overlay-wrap {
    position: absolute !important;
    top: -6px !important;
    right: -6px !important;
    z-index: 10 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
}

.tc-thumbnail-container a.remove,
.tc-thumbnail-container a.tc-remove-overlay,
a.tc-remove-overlay,
.woocommerce table.cart td.product-thumbnail a.remove,
.woocommerce-cart table.cart td.product-thumbnail a.remove,
.woocommerce a.remove,
.woocommerce table.cart a.remove,
.woocommerce-cart a.remove,
table.shop_table.cart a.remove,
a.remove {
    position: absolute !important;
    top: -6px !important;
    right: -6px !important;
    z-index: 10 !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    border-radius: 50% !important;
    background: #EF4444 !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.22) !important;
    font-size: 13px !important;
    line-height: 16px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.tc-thumbnail-container a.remove:hover,
.tc-thumbnail-container a.tc-remove-overlay:hover,
a.tc-remove-overlay:hover,
.woocommerce table.cart td.product-thumbnail a.remove:hover,
.woocommerce-cart table.cart td.product-thumbnail a.remove:hover,
.woocommerce a.remove:hover,
.woocommerce table.cart a.remove:hover,
.woocommerce-cart a.remove:hover,
table.shop_table.cart a.remove:hover,
a.remove:hover {
    background: #DC2626 !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
    transform: scale(1.18) !important;
    box-shadow: 0 4px 10px rgba(220, 38, 38, 0.4) !important;
}

/* Cart Actions & Coupon */
table.shop_table.cart td.actions {
    padding: 24px 0 0 !important;
    border-top: 1.5px solid #F1EAF8 !important;
    border-bottom: none !important;
}

table.shop_table.cart td.actions .coupon {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

table.shop_table.cart input#coupon_code {
    padding: 12px 16px !important;
    border: 1.5px solid #E2D9F3 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.94rem !important;
    width: 190px !important;
    outline: none !important;
    transition: all 0.2s ease !important;
}

table.shop_table.cart input#coupon_code:focus {
    border-color: var(--tc-primary) !important;
    box-shadow: 0 0 0 3px rgba(132, 94, 194, 0.15) !important;
}

table.shop_table.cart button[name="apply_coupon"] {
    background: #F1EDF9 !important;
    color: var(--tc-primary) !important;
    border: 1.5px solid #D8CCE8 !important;
    border-radius: 12px !important;
    padding: 12px 20px !important;
    font-weight: 700 !important;
    font-size: 0.92rem !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

table.shop_table.cart button[name="apply_coupon"]:hover {
    background: var(--tc-primary) !important;
    border-color: var(--tc-primary) !important;
    color: #ffffff !important;
}

table.shop_table.cart button[name="update_cart"] {
    display: none !important;
}

/* Right: Cart Totals Card */
.cart_totals {
    background: #FAF8FE !important;
    border: 1px solid #E8DEF5 !important;
    border-radius: 20px !important;
    padding: 30px 28px !important;
    box-shadow: 0 4px 22px rgba(74, 58, 110, 0.04) !important;
    width: 100% !important;
    float: none !important;
}

.cart_totals h2 {
    font-size: 1.35rem !important;
    font-weight: 800 !important;
    color: var(--tc-dark) !important;
    margin: 0 0 18px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1.3 !important;
}

.cart_totals h2::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 18px;
    background: linear-gradient(180deg, #845EC2, #D65DB1);
    border-radius: 3px;
}

.cart_totals table.shop_table {
    width: 100% !important;
    border: none !important;
    border-collapse: collapse !important;
    margin-bottom: 20px !important;
}

.cart_totals table.shop_table tr.cart-subtotal th,
.cart_totals table.shop_table tr.cart-subtotal td {
    padding: 14px 0 !important;
    border-bottom: 1px solid #ECE4F7 !important;
    border-top: none !important;
    color: #64748B !important;
    font-size: 0.96rem !important;
}

.cart_totals table.shop_table tr.order-total th,
.cart_totals table.shop_table tr.order-total td {
    padding: 18px 0 !important;
    border-top: 2px solid #E2D9F3 !important;
    border-bottom: none !important;
    font-size: 1.05rem !important;
    color: var(--tc-dark) !important;
    font-weight: 800 !important;
}

.cart_totals table.shop_table tr.order-total td strong span.woocommerce-Price-amount {
    font-size: 1.55rem !important;
    color: var(--tc-primary) !important;
    font-weight: 800 !important;
}

/* Proceed to Checkout Button */
.wc-proceed-to-checkout a.checkout-button {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%) !important;
    color: #ffffff !important;
    font-size: 1.1rem !important;
    font-weight: 800 !important;
    padding: 16px 24px !important;
    border-radius: 14px !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(132, 94, 194, 0.35) !important;
    transition: all 0.25s ease !important;
    margin: 10px 0 0 0 !important;
}

.wc-proceed-to-checkout a.checkout-button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(132, 94, 194, 0.45) !important;
    background: linear-gradient(135deg, #7042B3 0%, #b84496 100%) !important;
}

/* ==========================================================================
   CHECKOUT PAGE DESIGN (/checkout/)
   ========================================================================== */

/* Header Trust Banner */
.tc-checkout-header-banner {
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.06) 0%, rgba(214, 93, 177, 0.06) 100%);
    border: 1px solid #E6DCF5;
    border-radius: 20px;
    padding: 26px 32px;
    margin-bottom: 32px;
}

.tc-checkout-banner-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #E6F8EB;
    color: #127A38;
    font-size: 0.82rem;
    font-weight: 700;
    padding: 5px 12px;
    border-radius: 20px;
    border: 1px solid #C4F0CF;
}

/* Compact Inline Toggle Chips for Returning Customer & Coupon */
.woocommerce-checkout .woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce-form-coupon-toggle {
    display: inline-flex !important;
    vertical-align: middle !important;
    margin: 0 12px 24px 0 !important;
    width: auto !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    background: #FAF8FE !important;
    border: 1px solid #E2D9F3 !important;
    border-radius: 50px !important;
    padding: 8px 18px 8px 38px !important;
    font-size: 0.86rem !important;
    font-weight: 500 !important;
    color: #64748B !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    box-shadow: 0 2px 8px rgba(132, 94, 194, 0.05) !important;
    transition: all 0.2s ease !important;
    line-height: 1.4 !important;
    position: relative !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info:hover,
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info:hover {
    border-color: #D3C5E8 !important;
    background: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.1) !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before {
    content: "" !important;
    position: absolute !important;
    left: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 18px !important;
    height: 18px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C5CE7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") no-repeat center / contain !important;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
    content: "" !important;
    position: absolute !important;
    left: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 18px !important;
    height: 18px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C5CE7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z'/%3E%3Cline x1='13' y1='5' x2='13' y2='19'/%3E%3C/svg%3E") no-repeat center / contain !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a,
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a {
    color: var(--tc-primary) !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    margin-left: 3px !important;
    transition: color 0.15s ease !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a:hover,
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a:hover {
    color: #D65DB1 !important;
}

/* Dropdown Forms for Login & Coupon on Checkout */
.woocommerce-checkout form.login,
.woocommerce-checkout form.checkout_coupon {
    background: #ffffff !important;
    border: 1.5px solid #E2D9F3 !important;
    border-radius: 18px !important;
    padding: 24px 28px !important;
    margin: 10px 0 24px 0 !important;
    box-shadow: 0 4px 20px rgba(74, 58, 110, 0.06) !important;
    max-width: 520px !important;
}

.woocommerce-checkout form.checkout_coupon p.form-row {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 !important;
}

.woocommerce-checkout form.checkout_coupon input#coupon_code {
    padding: 12px 16px !important;
    border: 1.5px solid #E2D9F3 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.94rem !important;
    width: 200px !important;
    outline: none !important;
}

.woocommerce-checkout form.checkout_coupon button[name="apply_coupon"] {
    background: var(--tc-primary) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 13px 22px !important;
    font-weight: 700 !important;
    font-size: 0.94rem !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.woocommerce-checkout form.checkout_coupon button[name="apply_coupon"]:hover {
    background: #7042B3 !important;
    transform: translateY(-1px) !important;
}

/* 2-Column Responsive Checkout Form */
form.woocommerce-checkout {
    display: grid !important;
    grid-template-columns: 1fr 440px !important;
    gap: 36px !important;
    align-items: start !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* Left Column: Customer Details Card */
.woocommerce-checkout .col2-set#customer_details {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.woocommerce-checkout .col2-set#customer_details .col-1 {
    width: 100% !important;
    float: none !important;
    background: #ffffff !important;
    border: 1px solid #E8DEF5 !important;
    border-radius: 20px !important;
    padding: 34px 38px !important;
    box-shadow: 0 4px 22px rgba(74, 58, 110, 0.04) !important;
}

.woocommerce-billing-fields h3 {
    font-size: 1.35rem !important;
    font-weight: 800 !important;
    color: var(--tc-dark) !important;
    margin: 0 0 24px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.woocommerce-billing-fields h3::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 20px;
    background: linear-gradient(180deg, #845EC2, #D65DB1);
    border-radius: 3px;
}

/* Checkout Form Row & Inputs */
.woocommerce-checkout .form-row {
    margin-bottom: 20px !important;
    padding: 0 !important;
}

.woocommerce-checkout .form-row label {
    display: block !important;
    font-size: 0.92rem !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin-bottom: 6px !important;
    font-family: 'Outfit', sans-serif !important;
}

.woocommerce-checkout .form-row label .required {
    color: #EF4444 !important;
    font-weight: 700 !important;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout select {
    background: #ffffff !important;
    border: 1.5px solid #E2D9F3 !important;
    color: #1E293B !important;
    border-radius: 12px !important;
    padding: 13px 16px !important;
    font-size: 0.98rem !important;
    width: 100% !important;
    font-family: 'Outfit', sans-serif !important;
    transition: all 0.2s ease !important;
    outline: none !important;
    box-sizing: border-box !important;
}

.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus {
    border-color: var(--tc-primary) !important;
    box-shadow: 0 0 0 3.5px rgba(132, 94, 194, 0.15) !important;
}

/* Create Account Checkbox */
.woocommerce-account-fields {
    background: #FAF8FE !important;
    border: 1px solid #ECE4F7 !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    margin-top: 14px !important;
}

.woocommerce-account-fields .form-row.create-account {
    margin: 0 !important;
}

.woocommerce-account-fields label.checkbox {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 !important;
    font-size: 0.94rem !important;
    font-weight: 600 !important;
    color: #334155 !important;
    cursor: pointer !important;
}

.woocommerce-account-fields input[type="checkbox"] {
    accent-color: var(--tc-primary) !important;
    width: 18px !important;
    height: 18px !important;
}

/* Right Column: Order Review & Payment Sticky Card */
#order_review_heading {
    display: none !important; /* Replaced by inner header for clean card grouping */
}

#order_review.woocommerce-checkout-review-order {
    background: #FAF8FE !important;
    border: 1px solid #E8DEF5 !important;
    border-radius: 20px !important;
    padding: 32px 32px !important;
    box-shadow: 0 4px 22px rgba(74, 58, 110, 0.04) !important;
    position: sticky !important;
    top: 90px !important;
    float: none !important;
    width: 100% !important;
}

#order_review.woocommerce-checkout-review-order::before {
    content: "Your Order Summary";
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin-bottom: 20px;
}

/* Checkout Review Order Table */
table.woocommerce-checkout-review-order-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: none !important;
    margin-bottom: 20px !important;
}

table.woocommerce-checkout-review-order-table thead th {
    background: #F1EDF9 !important;
    border: none !important;
    padding: 12px 14px !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #64748B !important;
}

table.woocommerce-checkout-review-order-table thead th:first-child {
    border-top-left-radius: 10px !important;
    border-bottom-left-radius: 10px !important;
}

table.woocommerce-checkout-review-order-table thead th:last-child {
    border-top-right-radius: 10px !important;
    border-bottom-right-radius: 10px !important;
    text-align: right !important;
}

table.woocommerce-checkout-review-order-table tbody td {
    padding: 16px 10px !important;
    border-top: 1px solid #ECE4F7 !important;
    border-bottom: none !important;
}

table.woocommerce-checkout-review-order-table td.product-name {
    color: var(--tc-dark) !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    line-height: 1.45 !important;
}

table.woocommerce-checkout-review-order-table td.product-name strong.product-quantity {
    display: none !important;
}

table.woocommerce-checkout-review-order-table td.product-total {
    text-align: right !important;
    font-weight: 700 !important;
    color: var(--tc-primary) !important;
    font-size: 1.02rem !important;
}

table.woocommerce-checkout-review-order-table tfoot th,
table.woocommerce-checkout-review-order-table tfoot td {
    padding: 14px 10px !important;
    border-top: 1px solid #ECE4F7 !important;
    border-bottom: none !important;
}

table.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal th,
table.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal td {
    color: #64748B !important;
    font-size: 0.94rem !important;
}

table.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal td {
    text-align: right !important;
    font-weight: 700 !important;
}

table.woocommerce-checkout-review-order-table tfoot tr.order-total th,
table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
    border-top: 2px solid #E2D9F3 !important;
    padding-top: 18px !important;
    font-size: 1.05rem !important;
    color: var(--tc-dark) !important;
    font-weight: 800 !important;
}

table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
    text-align: right !important;
}

table.woocommerce-checkout-review-order-table tfoot tr.order-total td strong span.woocommerce-Price-amount {
    font-size: 1.5rem !important;
    color: var(--tc-primary) !important;
    font-weight: 800 !important;
}

/* Payment Methods Card */
#payment.woocommerce-checkout-payment {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin-top: 15px !important;
}

#payment ul.payment_methods {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 16px 0 !important;
    border: none !important;
}

#payment ul.payment_methods li.wc_payment_method {
    background: #ffffff !important;
    border: 1.5px solid #E2D9F3 !important;
    border-radius: 14px !important;
    padding: 16px 18px !important;
    margin-bottom: 12px !important;
    transition: all 0.2s ease !important;
}

#payment ul.payment_methods li.wc_payment_method:hover {
    border-color: #D3C5E8 !important;
    box-shadow: 0 2px 10px rgba(132, 94, 194, 0.08) !important;
}

#payment ul.payment_methods li.wc_payment_method label {
    font-weight: 700 !important;
    color: var(--tc-dark) !important;
    font-size: 0.98rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
}

#payment ul.payment_methods li.wc_payment_method label img {
    margin-left: auto !important;
    max-height: 24px !important;
}

#payment ul.payment_methods li.wc_payment_method input[type="radio"] {
    accent-color: var(--tc-primary) !important;
    width: 18px !important;
    height: 18px !important;
    margin-right: 8px !important;
}

#payment div.payment_box {
    background: #FAF8FE !important;
    border: 1px solid #ECE4F7 !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
    margin-top: 12px !important;
    font-size: 0.88rem !important;
    color: #64748B !important;
    line-height: 1.55 !important;
}

#payment div.payment_box::before {
    display: none !important;
}

/* Terms & Privacy Policy */
.woocommerce-terms-and-conditions-wrapper {
    margin-bottom: 16px !important;
}

.woocommerce-privacy-policy-text p {
    font-size: 0.82rem !important;
    color: #94A3B8 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

.woocommerce-privacy-policy-text a {
    color: var(--tc-primary) !important;
    text-decoration: underline !important;
}

/* Digital Trust Box */
.tc-checkout-trust-box {
    background: #ffffff;
    border: 1px solid #ECE4F7;
    border-radius: 14px;
    padding: 14px 16px;
    margin: 16px 0 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.tc-trust-item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.86rem;
    color: #475569;
}

.tc-trust-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #F3EDFC;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.tc-trust-item strong {
    display: block;
    color: var(--tc-dark);
    font-size: 0.9rem;
}

.tc-trust-item span {
    display: block;
    color: #64748B;
    font-size: 0.8rem;
}

/* Place Order Submit Button */
#place_order {
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%) !important;
    color: #ffffff !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    padding: 17px 24px !important;
    border-radius: 14px !important;
    border: none !important;
    width: 100% !important;
    cursor: pointer !important;
    box-shadow: 0 6px 22px rgba(132, 94, 194, 0.35) !important;
    transition: all 0.25s ease !important;
    font-family: 'Outfit', sans-serif !important;
}

#place_order:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 28px rgba(132, 94, 194, 0.48) !important;
    background: linear-gradient(135deg, #7042B3 0%, #b84496 100%) !important;
}

/* ==========================================================================
   MOBILE & TABLET RESPONSIVENESS FOR CART & CHECKOUT
   ========================================================================== */
@media (max-width: 992px) {
    .woocommerce-cart .entry-content .woocommerce {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    form.woocommerce-checkout {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }

    #order_review.woocommerce-checkout-review-order {
        position: relative !important;
        top: 0 !important;
    }
}

@media (max-width: 768px) {
    form.woocommerce-cart-form,
    .cart_totals,
    .woocommerce-checkout .col2-set#customer_details .col-1,
    #order_review.woocommerce-checkout-review-order {
        padding: 22px 18px !important;
        border-radius: 16px !important;
    }

    /* Responsive Cart Table on Small Mobile */
    table.shop_table_responsive tr td {
        display: block !important;
        text-align: right !important;
        padding: 10px 0 !important;
    }

    table.shop_table_responsive tr td::before {
        content: attr(data-title) ": ";
        font-weight: 700;
        float: left;
        color: #64748B;
    }

    table.shop_table_responsive tr td.product-thumbnail {
        text-align: center !important;
    }

    table.shop_table_responsive tr td.product-thumbnail::before {
        display: none !important;
    }

    table.shop_table_responsive tr td.product-thumbnail img {
        margin: 0 auto !important;
    }

    table.shop_table_responsive tr td.product-remove {
        display: none !important;
    }

    table.shop_table.cart td.actions .coupon {
        width: 100% !important;
        flex-direction: column !important;
    }

    table.shop_table.cart input#coupon_code {
        width: 100% !important;
    }

    table.shop_table.cart button[name="apply_coupon"] {
        width: 100% !important;
    }
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.tc-master-footer {
    background: var(--tc-dark-bg);
    color: #ffffff;
    padding: 65px 20px 35px;
    border-top: 1px solid #282436;
}

.tc-footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 45px;
    margin-bottom: 50px;
}

.tc-footer-col h5 {
    color: #ffffff;
    font-size: 1.05rem;
    margin-bottom: 20px;
    font-weight: 700;
}

.tc-footer-col ul {
    list-style: none;
}

.tc-footer-col ul li {
    margin-bottom: 12px;
}

.tc-footer-col ul li a {
    color: #9D96AB;
    font-size: 0.92rem;
    transition: color 0.2s ease;
}

.tc-footer-col ul li a:hover {
    color: #ffffff;
}

.tc-footer-trust-badge {
    background: #1C1929;
    border: 1px solid #2F2A40;
    border-radius: 12px;
    padding: 14px 16px;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.tc-footer-trust-badge strong {
    display: block;
    font-size: 0.88rem;
    color: #ffffff;
}

.tc-footer-trust-badge span {
    font-size: 0.8rem;
    color: #8C869E;
}

.tc-footer-bottom {
    max-width: 1200px;
    margin: 0 auto;
    padding-top: 25px;
    border-top: 1px solid #282436;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.88rem;
    color: #726C84;
    flex-wrap: wrap;
    gap: 15px;
}

/* ==========================================================================
   MOBILE & RESPONSIVE BREAKPOINTS
   ========================================================================== */
@media (max-width: 991px) {
    .tc-nav,
    .tc-nav-container {
        display: none !important;
    }

    .tc-mobile-toggle {
        display: flex;
    }

    .tc-cta-header {
        display: none;
    }

    .tc-footer-inner {
        grid-template-columns: 1fr 1fr;
        gap: 35px;
    }

    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
}

@media (max-width: 767px) {
    body {
        padding-bottom: 70px; /* Space for sticky bottom app bar */
    }

    .tc-top-bar {
        display: none; /* Hide top bar on mobile to conserve viewport space */
    }

    .tc-mobile-bottom-bar {
        display: flex;
    }

    .tc-footer-inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .tc-footer-bottom {
        flex-direction: column;
        text-align: center;
        gap: 10px;
    }

    .woocommerce ul.products {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .tc-hero {
        padding: 45px 15px 35px;
    }

    .tc-hero-search-form {
        flex-direction: column;
        border-radius: 16px;
        padding: 12px;
        gap: 10px;
    }

    .tc-hero-search-icon {
        display: none;
    }

    .tc-hero-search-btn {
        width: 100%;
        border-radius: 10px;
    }

    .tc-faq-grid {
        grid-template-columns: 1fr;
    }

    .tc-features-grid {
        grid-template-columns: 1fr;
    }

    .woocommerce div.product {
        padding: 0 !important;
        border: none !important;
        background: transparent !important;
    }

    form.woocommerce-checkout {
        padding: 20px;
    }
}

/* ==========================================================================
   MY ACCOUNT PAGE STYLING (LOGGED IN & LOGGED OUT)
   ========================================================================== */
/* ==========================================================================
   AUTHENTICATION: LOGIN & REGISTER PAGE (/account/)
   ========================================================================== */
.tc-auth-wrapper {
    max-width: 1040px;
    margin: 15px auto 60px;
    padding: 0 16px;
    width: 100%;
}

.tc-auth-header {
    text-align: center;
    max-width: 780px;
    margin: 0 auto 35px;
}

.tc-auth-badge {
    background: #F0EBFA;
    color: var(--tc-primary);
    font-size: 0.82rem;
    font-weight: 700;
    padding: 6px 18px;
    border-radius: 50px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 14px;
    border: 1px solid var(--tc-border);
}

.tc-auth-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2rem, 3.8vw, 2.7rem);
    font-weight: 800;
    color: var(--tc-dark);
    margin-bottom: 12px;
    line-height: 1.2;
}

.tc-auth-subtitle {
    font-size: 1.05rem;
    color: var(--tc-muted);
    line-height: 1.6;
    margin: 0 auto 24px;
    max-width: 640px;
}

.tc-auth-guest-callout {
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.06) 0%, rgba(214, 93, 177, 0.04) 100%);
    border: 1.5px dashed #D3C5E8;
    border-radius: 14px;
    padding: 18px 22px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    text-align: left;
    max-width: 720px;
    margin: 0 auto;
}

.tc-callout-icon {
    font-size: 1.4rem;
    line-height: 1.2;
    flex-shrink: 0;
}

.tc-callout-text strong {
    display: block;
    font-family: 'Outfit', sans-serif;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--tc-dark);
    margin-bottom: 4px;
}

.tc-callout-text span {
    font-size: 0.88rem;
    color: var(--tc-muted);
    line-height: 1.5;
}

/* Mobile Segmented Tab Switcher (Visible on <= 850px) */
.tc-auth-mobile-tabs {
    display: none;
    background: #F3F0F9;
    padding: 6px;
    border-radius: 14px;
    margin-bottom: 25px;
    border: 1px solid var(--tc-border);
    gap: 6px;
}

.tc-auth-tab-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 14px;
    border: none;
    background: transparent;
    border-radius: 10px;
    font-family: 'Outfit', sans-serif;
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--tc-muted);
    cursor: pointer;
    transition: all 0.25s ease;
}

.tc-auth-tab-btn svg {
    stroke: currentColor;
    flex-shrink: 0;
}

.tc-auth-tab-btn.active {
    background: #ffffff;
    color: var(--tc-primary);
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.16);
    font-weight: 800;
}

/* Dual Authentication Grid */
.tc-auth-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
    margin-bottom: 35px !important;
    align-items: stretch !important;
    max-width: 100% !important;
}

.tc-auth-card {
    background: #ffffff !important;
    border: 1.5px solid var(--tc-border) !important;
    border-radius: 20px !important;
    padding: 40px 36px !important;
    box-shadow: 0 8px 30px rgba(20, 18, 30, 0.04) !important;
    display: flex !important;
    flex-direction: column !important;
    transition: all 0.25s ease !important;
    box-sizing: border-box !important;
    width: 100% !important;
    float: none !important;
}

.tc-auth-card:hover {
    border-color: #D3C5E8 !important;
    box-shadow: 0 12px 35px rgba(132, 94, 194, 0.09) !important;
}

.tc-card-header {
    margin-bottom: 26px;
    padding-bottom: 18px;
    border-bottom: 1px solid #F3F0F9;
}

.tc-card-badge {
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--tc-primary);
    background: rgba(132, 94, 194, 0.1);
    padding: 4px 12px;
    border-radius: 50px;
    margin-bottom: 10px;
}

.tc-card-header h2 {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.65rem !important;
    font-weight: 800 !important;
    color: var(--tc-dark) !important;
    margin: 0 0 6px !important;
    letter-spacing: -0.01em !important;
}

.tc-card-header p {
    font-size: 0.9rem !important;
    color: var(--tc-muted) !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

/* Form Styles */
.tc-auth-card form {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.tc-form-group {
    margin-bottom: 20px;
}

.tc-form-group label {
    display: block !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    color: var(--tc-dark) !important;
    margin-bottom: 7px !important;
}

.tc-form-group label .required {
    color: #E53E3E !important;
    margin-left: 2px !important;
}

.tc-label-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 7px;
}

.tc-label-row label {
    margin-bottom: 0 !important;
}

.tc-forgot-link {
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--tc-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.tc-forgot-link:hover {
    color: var(--tc-primary-hover);
    text-decoration: underline;
}

.tc-input-with-icon {
    position: relative;
    display: flex;
    align-items: center;
}

.tc-input-with-icon svg {
    position: absolute;
    left: 16px;
    color: #9A95A8;
    pointer-events: none;
    transition: color 0.2s ease;
    z-index: 2;
}

.tc-input-with-icon input.input-text {
    width: 100% !important;
    height: 50px !important;
    padding: 12px 16px 12px 46px !important;
    border: 1.5px solid var(--tc-border) !important;
    border-radius: 12px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.95rem !important;
    background: #FAFAFD !important;
    color: var(--tc-dark) !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

.tc-input-with-icon input.input-text:focus {
    background: #ffffff !important;
    border-color: var(--tc-primary) !important;
    box-shadow: 0 0 0 4px rgba(132, 94, 194, 0.12) !important;
    outline: none !important;
}

.tc-input-with-icon:focus-within svg {
    color: var(--tc-primary);
}

.tc-form-options {
    margin: 12px 0 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.tc-remember-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 0.88rem;
    color: var(--tc-muted);
    font-weight: 600;
}

.tc-remember-wrap input[type="checkbox"] {
    width: 17px;
    height: 17px;
    accent-color: var(--tc-primary);
    cursor: pointer;
    margin: 0;
}

.tc-auth-submit-btn {
    width: 100% !important;
    height: 52px !important;
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.02rem !important;
    font-weight: 800 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    box-shadow: 0 6px 18px rgba(132, 94, 194, 0.3) !important;
    text-decoration: none !important;
    margin-top: 10px !important;
}

.tc-auth-submit-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 24px rgba(132, 94, 194, 0.45) !important;
    background: linear-gradient(135deg, #7A53B9 0%, #6336A4 100%) !important;
}

.tc-reg-btn {
    background: linear-gradient(135deg, #D65DB1 0%, #845EC2 100%) !important;
    box-shadow: 0 6px 18px rgba(214, 93, 177, 0.3) !important;
}

.tc-reg-btn:hover {
    box-shadow: 0 8px 24px rgba(214, 93, 177, 0.45) !important;
    background: linear-gradient(135deg, #C74AA1 0%, #754EB3 100%) !important;
}

/* Benefits Checklist */
.tc-benefits-box {
    background: #F9F8FC;
    border: 1px solid var(--tc-border);
    border-radius: 12px;
    padding: 16px 18px;
    margin: 18px 0 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.tc-benefit-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.85rem;
    color: var(--tc-dark);
    font-weight: 600;
    line-height: 1.35;
}

.tc-check {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #DDF7E3;
    color: #127A38;
    font-size: 0.75rem;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tc-info-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #F8F5FC;
    border: 1px solid var(--tc-border);
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 0.84rem;
    color: var(--tc-muted);
    margin-bottom: 16px;
    line-height: 1.45;
}

/* Trust Guarantee Footer */
.tc-auth-trust-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    padding: 18px 24px;
    background: #ffffff;
    border: 1px solid var(--tc-border);
    border-radius: 16px;
    box-shadow: var(--tc-shadow-sm);
}

.tc-trust-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.86rem;
    font-weight: 700;
    color: var(--tc-muted);
}

.tc-trust-pill span {
    font-size: 1rem;
}

/* Mobile Responsive Rules for Auth Page */
@media (max-width: 850px) {
    .tc-auth-mobile-tabs {
        display: flex !important;
    }

    .tc-auth-grid {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }

    .tc-auth-grid .tc-auth-card {
        display: none !important;
    }

    .tc-auth-grid .tc-auth-card.active {
        display: flex !important;
    }

    .tc-auth-card {
        padding: 30px 22px !important;
        border-radius: 16px !important;
    }

    .tc-auth-title {
        font-size: 1.85rem !important;
    }

    .tc-card-header h2 {
        font-size: 1.45rem !important;
    }

    .tc-auth-submit-btn {
        height: 48px !important;
        font-size: 0.98rem !important;
    }
}

@media (max-width: 480px) {
    .tc-auth-wrapper {
        padding: 0 10px !important;
    }

    .tc-auth-guest-callout {
        padding: 14px 16px !important;
        gap: 10px !important;
    }

    .tc-callout-icon {
        font-size: 1.2rem !important;
    }

    .tc-auth-card {
        padding: 24px 16px !important;
    }

    .tc-auth-trust-footer {
        flex-direction: column !important;
        gap: 8px !important;
        align-items: flex-start !important;
        padding: 16px !important;
    }
}


/* Logged in: Dashboard with Top Navigation Bar */
.woocommerce-account .woocommerce {
    display: flex !important;
    flex-direction: column !important;
    max-width: 1100px !important;
    margin: 20px auto 60px !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after {
    display: none !important;
}

.woocommerce-MyAccount-navigation {
    width: 100% !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    position: static !important;
    margin-bottom: 25px !important;
    float: none !important;
}

.tc-account-top-nav {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 14px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.tc-account-top-nav li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.tc-account-top-nav li a {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 10px !important;
    background: #ffffff !important;
    border: 1.5px solid var(--tc-border) !important;
    border-radius: var(--tc-radius-md) !important;
    padding: 18px 12px !important;
    text-decoration: none !important;
    box-shadow: var(--tc-shadow-sm) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.tc-nav-icon-wrap {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--tc-primary-light);
    color: var(--tc-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.25s ease;
}

.tc-nav-label {
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    color: var(--tc-dark) !important;
    transition: color 0.25s ease !important;
    white-space: nowrap !important;
}

.tc-account-top-nav li a:hover {
    transform: translateY(-3px) !important;
    border-color: var(--tc-primary) !important;
    box-shadow: var(--tc-shadow-md) !important;
}

.tc-account-top-nav li a:hover .tc-nav-icon-wrap {
    background: var(--tc-primary);
    color: #ffffff;
    transform: scale(1.05);
}

.tc-account-top-nav li.is-active a {
    background: #ffffff !important;
    border-color: var(--tc-primary) !important;
    border-width: 2px !important;
    box-shadow: 0 6px 20px rgba(132, 94, 194, 0.2) !important;
}

.tc-account-top-nav li.is-active a .tc-nav-icon-wrap {
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.35) !important;
}

.tc-account-top-nav li.is-active a .tc-nav-label {
    color: var(--tc-primary) !important;
    font-weight: 800 !important;
}

.woocommerce-MyAccount-content {
    background: #ffffff !important;
    border: 1px solid var(--tc-border) !important;
    border-radius: var(--tc-radius-lg) !important;
    padding: 40px !important;
    box-shadow: var(--tc-shadow-sm) !important;
    width: 100% !important;
    float: none !important;
}


/* ==========================================================================
   Code Corner Redesigned Digital Creator Account Dashboard
   ========================================================================== */

.tc-account-dashboard-wrap {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

/* 1. Hero User Banner */
.tc-dash-hero-card {
    background: linear-gradient(135deg, #1E192B 0%, #2D2445 60%, #3D2C62 100%);
    border-radius: 18px;
    padding: 28px 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    color: #ffffff;
    box-shadow: 0 10px 30px rgba(30, 25, 43, 0.12);
    position: relative;
    overflow: hidden;
}

.tc-dash-hero-card::after {
    content: "";
    position: absolute;
    top: -50px;
    right: -50px;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(132, 94, 194, 0.35) 0%, rgba(214, 93, 177, 0) 70%);
    pointer-events: none;
}

.tc-dash-hero-left {
    display: flex;
    align-items: center;
    gap: 20px;
}

.tc-dash-avatar {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%);
    color: #ffffff;
    font-family: 'Outfit', sans-serif;
    font-size: 1.8rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 20px rgba(132, 94, 194, 0.45);
    border: 2px solid rgba(255, 255, 255, 0.2);
    flex-shrink: 0;
}

.tc-dash-hero-badge-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
    flex-wrap: wrap;
}

.tc-badge-verified {
    background: rgba(37, 211, 102, 0.18);
    color: #25D366;
    border: 1px solid rgba(37, 211, 102, 0.35);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.tc-badge-license {
    background: rgba(132, 94, 194, 0.25);
    color: #D6C8ED;
    border: 1px solid rgba(132, 94, 194, 0.4);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.tc-dash-welcome-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.55rem;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
    line-height: 1.25;
}

.tc-dash-user-meta {
    font-size: 0.88rem;
    color: rgba(255, 255, 255, 0.75);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.tc-dash-user-meta .tc-dot {
    opacity: 0.5;
}

.tc-dash-logout-btn {
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    padding: 10px 18px;
    font-size: 0.85rem;
    font-weight: 700;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tc-dash-logout-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.35);
    transform: translateY(-2px);
}

/* 2. Metrics Bar */
.tc-dash-metrics-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.tc-metric-card {
    background: #ffffff;
    border: 1.5px solid var(--tc-border);
    border-radius: 14px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 2px 8px rgba(74, 58, 110, 0.04);
    transition: all 0.2s ease;
}

.tc-metric-card:hover {
    border-color: var(--tc-primary);
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(132, 94, 194, 0.1);
}

.tc-metric-icon {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tc-metric-purple { background: #F3EDFC; color: #845EC2; }
.tc-metric-green  { background: #E8F8EE; color: #128C7E; }
.tc-metric-blue   { background: #EBF4FE; color: #0077B6; }
.tc-metric-orange { background: #FEF3E8; color: #E76F51; }

.tc-metric-num {
    font-family: 'Outfit', sans-serif;
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--tc-dark);
    line-height: 1.2;
}

.tc-metric-label {
    font-size: 0.8rem;
    color: var(--tc-muted);
    font-weight: 600;
    margin-top: 2px;
}

/* 3. Primary Feature Cards */
.tc-dash-features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.tc-feature-card {
    background: #ffffff;
    border: 1.5px solid var(--tc-border);
    border-radius: 16px;
    padding: 26px 28px;
    text-decoration: none !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 3px 12px rgba(74, 58, 110, 0.04);
    position: relative;
}

.tc-feature-card:hover {
    border-color: #845EC2;
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(132, 94, 194, 0.12);
}

.tc-card-highlight {
    background: linear-gradient(180deg, #FAF7FE 0%, #ffffff 100%);
    border-color: #D6C8ED;
}

.tc-card-support {
    background: linear-gradient(180deg, #F5FBF7 0%, #ffffff 100%);
    border-color: #C3EED3;
}

.tc-card-support:hover {
    border-color: #25D366;
    box-shadow: 0 12px 28px rgba(37, 211, 102, 0.14);
}

.tc-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

.tc-card-icon-bubble {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.25s ease;
}

.tc-feature-card:hover .tc-card-icon-bubble {
    transform: scale(1.08);
}

.tc-bubble-purple { background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%); color: #ffffff; box-shadow: 0 4px 14px rgba(132, 94, 194, 0.35); }
.tc-bubble-blue   { background: linear-gradient(135deg, #0077B6 0%, #0096C7 100%); color: #ffffff; box-shadow: 0 4px 14px rgba(0, 119, 182, 0.3); }
.tc-bubble-gray   { background: linear-gradient(135deg, #4A4063 0%, #2E2642 100%); color: #ffffff; box-shadow: 0 4px 14px rgba(74, 64, 99, 0.3); }
.tc-bubble-green  { background: linear-gradient(135deg, #25D366 0%, #128C7E 100%); color: #ffffff; box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3); }

.tc-card-tag {
    font-size: 0.75rem;
    font-weight: 700;
    color: #635A75;
    background: #F1EDF8;
    padding: 4px 10px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.tc-tag-green {
    color: #128C7E;
    background: #E6F8ED;
}

.tc-card-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin: 0 0 8px 0;
    line-height: 1.3;
}

.tc-card-desc {
    font-size: 0.9rem;
    color: #635A75;
    line-height: 1.55;
    margin: 0 0 20px 0;
    flex: 1;
}

.tc-card-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.92rem;
    font-weight: 800;
    color: #845EC2;
    transition: gap 0.2s ease;
}

.tc-feature-card:hover .tc-card-action {
    gap: 12px;
}

.tc-action-green {
    color: #128C7E;
}

/* 4. Quick Downloads Section */
.tc-dash-section {
    background: #FAF9FE;
    border: 1.5px solid #ECE3F7;
    border-radius: 18px;
    padding: 28px 30px;
}

.tc-dash-section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 20px;
    border-bottom: 1px solid #ECE4F7;
    padding-bottom: 16px;
    gap: 16px;
    flex-wrap: wrap;
}

.tc-dash-section-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin: 0 0 4px 0;
}

.tc-dash-section-subtitle {
    font-size: 0.88rem;
    color: #7B728D;
    margin: 0;
}

.tc-dash-section-link {
    font-size: 0.88rem;
    font-weight: 700;
    color: #845EC2;
    text-decoration: none !important;
    transition: transform 0.2s ease;
    white-space: nowrap;
}

.tc-dash-section-link:hover {
    text-decoration: underline !important;
}

.tc-quick-downloads-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.tc-quick-download-row {
    background: #ffffff;
    border: 1px solid #EAE0F5;
    border-radius: 12px;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    transition: all 0.2s ease;
}

.tc-quick-download-row:hover {
    border-color: #845EC2;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.08);
}

.tc-qd-info {
    display: flex;
    align-items: center;
    gap: 16px;
}

.tc-qd-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: #F3EDFC;
    color: #845EC2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tc-qd-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin: 0 0 4px 0;
    line-height: 1.3;
}

.tc-qd-meta {
    font-size: 0.82rem;
    color: #7B728D;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.tc-text-success {
    color: #127A38;
}

.tc-btn-download {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff !important;
    font-size: 0.85rem;
    font-weight: 800;
    text-decoration: none !important;
    padding: 10px 18px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.3);
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tc-btn-download:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(132, 94, 194, 0.45);
}

/* Empty State */
.tc-empty-downloads-card {
    text-align: center;
    padding: 36px 20px;
    background: #ffffff;
    border: 1px dashed #D6C8ED;
    border-radius: 14px;
}

.tc-empty-icon {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background: #FAF8FE;
    color: #845EC2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px auto;
}

.tc-empty-downloads-card h3 {
    font-family: 'Outfit', sans-serif;
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin-bottom: 6px;
}

.tc-empty-downloads-card p {
    font-size: 0.9rem;
    color: #635A75;
    max-width: 440px;
    margin: 0 auto 20px auto;
    line-height: 1.5;
}

.tc-btn-browse-shop {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff !important;
    font-size: 0.9rem;
    font-weight: 800;
    text-decoration: none !important;
    padding: 12px 24px;
    border-radius: 10px;
    display: inline-block;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.35);
    transition: all 0.2s ease;
}

.tc-btn-browse-shop:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(132, 94, 194, 0.45);
}

/* 5. Bottom Guarantee Strip */
.tc-dash-guarantee-bar {
    background: #FAF8FE;
    border: 1px solid #ECE4F7;
    border-radius: 14px;
    padding: 18px 24px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.tc-guarantee-col {
    display: flex;
    align-items: center;
    gap: 12px;
}

.tc-g-icon {
    font-size: 1.3rem;
}

.tc-guarantee-col strong {
    display: block;
    font-size: 0.88rem;
    font-weight: 800;
    color: var(--tc-dark);
}

.tc-guarantee-col span {
    font-size: 0.78rem;
    color: #7B728D;
    line-height: 1.35;
    display: block;
}

/* ==========================================================================
   Account Dashboard Responsive Breakpoints
   ========================================================================== */

@media (max-width: 992px) {
    .tc-dash-metrics-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .tc-dash-guarantee-bar {
        grid-template-columns: 1fr;
        gap: 14px;
    }
}

@media (max-width: 768px) {
    .tc-dash-hero-card {
        flex-direction: column;
        align-items: flex-start;
        padding: 22px 20px;
    }
    .tc-dash-hero-right {
        width: 100%;
    }
    .tc-dash-logout-btn {
        width: 100%;
        justify-content: center;
    }
    .tc-dash-features-grid {
        grid-template-columns: 1fr;
    }
    .tc-quick-download-row {
        flex-direction: column;
        align-items: flex-start;
    }
    .tc-qd-action,
    .tc-btn-download {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .tc-dash-metrics-grid {
        grid-template-columns: 1fr;
    }
}

/* Downloads & Orders Tables */
.woocommerce-MyAccount-content table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid var(--tc-border) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    margin-bottom: 25px !important;
}

.woocommerce-MyAccount-content table th {
    background: #F8F5FC !important;
    color: var(--tc-dark) !important;
    font-weight: 800 !important;
    font-size: 0.88rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 14px 18px !important;
    border-bottom: 1px solid var(--tc-border) !important;
}

.woocommerce-MyAccount-content table td {
    padding: 16px 18px !important;
    border-bottom: 1px solid #F0EBF7 !important;
    font-size: 0.95rem !important;
}

.woocommerce-MyAccount-content table tr:last-child td {
    border-bottom: none !important;
}

.woocommerce-MyAccount-downloads .button,
.woocommerce-orders-table .button {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 0.88rem !important;
    padding: 10px 18px !important;
    border-radius: 8px !important;
    border: none !important;
    display: inline-block !important;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.25) !important;
    transition: all 0.2s ease !important;
}

.woocommerce-MyAccount-downloads .button:hover,
.woocommerce-orders-table .button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 18px rgba(132, 94, 194, 0.35) !important;
}

@media (max-width: 900px) {
    #customer_login {
        grid-template-columns: 1fr !important;
        gap: 25px !important;
    }

    #customer_login .u-column1,
    #customer_login .u-column2 {
        padding: 30px 22px !important;
    }

    .tc-account-top-nav {
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 6px !important;
        padding: 0 !important;
        margin-bottom: 20px !important;
    }

    .tc-account-top-nav li {
        margin: 0 !important;
        width: 100% !important;
    }

    .tc-account-top-nav li a {
        padding: 10px 4px !important;
        gap: 5px !important;
        border-radius: 10px !important;
        border-width: 1.5px !important;
    }

    .tc-nav-icon-wrap {
        width: 30px !important;
        height: 30px !important;
        border-radius: 8px !important;
    }

    .tc-nav-icon-wrap svg {
        width: 15px !important;
        height: 15px !important;
        stroke-width: 2 !important;
    }

    .tc-nav-label {
        font-size: 0.68rem !important;
        font-weight: 700 !important;
        letter-spacing: -0.02em !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 100% !important;
    }

    @media (max-width: 420px) {
        .tc-account-top-nav {
            gap: 4px !important;
        }

        .tc-account-top-nav li a {
            padding: 8px 2px !important;
            gap: 4px !important;
            border-radius: 8px !important;
        }

        .tc-nav-icon-wrap {
            width: 26px !important;
            height: 26px !important;
            border-radius: 6px !important;
        }

        .tc-nav-icon-wrap svg {
            width: 13px !important;
            height: 13px !important;
        }

        .tc-nav-label {
            font-size: 0.62rem !important;
        }
    }

    .woocommerce-MyAccount-content {
        padding: 24px 18px !important;
        border-radius: 14px !important;
    }

    .tc-account-cards-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   LOST PASSWORD & PASSWORD RECOVERY (/account/lost-password/)
   ========================================================================== */
.tc-lost-password-wrapper {
    max-width: 540px;
    margin: 20px auto 60px;
    padding: 0 15px;
    width: 100%;
}

.tc-lost-password-card {
    background: #ffffff;
    border: 1.5px solid var(--tc-border);
    border-radius: 20px;
    padding: 40px 36px;
    box-shadow: 0 10px 35px rgba(20, 18, 30, 0.05);
    transition: all 0.25s ease;
}

.tc-lost-password-card:hover {
    border-color: #D3C5E8;
    box-shadow: 0 14px 40px rgba(132, 94, 194, 0.09);
}

.tc-back-to-auth {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.86rem;
    font-weight: 700;
    color: var(--tc-muted);
    text-decoration: none;
    margin-bottom: 24px;
    transition: all 0.2s ease;
    padding: 6px 12px;
    border-radius: 8px;
    background: #F8F6FC;
}

.tc-back-to-auth:hover {
    color: var(--tc-primary);
    background: #F0EBFA;
    transform: translateX(-3px);
}

.tc-lost-header {
    text-align: center;
    margin-bottom: 28px;
}

.tc-lost-icon-badge {
    width: 58px;
    height: 58px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.12) 0%, rgba(214, 93, 177, 0.1) 100%);
    color: var(--tc-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    border: 1px solid rgba(132, 94, 194, 0.2);
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.12);
}

.tc-lost-badge {
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--tc-primary);
    background: #F0EBFA;
    padding: 4px 14px;
    border-radius: 50px;
    margin-bottom: 10px;
    border: 1px solid var(--tc-border);
}

.tc-lost-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.7rem, 3.5vw, 2.1rem);
    font-weight: 800;
    color: var(--tc-dark);
    margin: 0 0 10px;
    letter-spacing: -0.01em;
}

.tc-lost-subtitle {
    font-size: 0.92rem;
    color: var(--tc-muted);
    line-height: 1.6;
    margin: 0;
}

/* Reset Form Inside Card */
.tc-lost-password-card .woocommerce-ResetPassword {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.tc-lost-notice {
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.05) 0%, rgba(214, 93, 177, 0.04) 100%);
    border: 1.5px dashed #D3C5E8;
    border-radius: 12px;
    padding: 14px 16px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 20px 0 24px;
    text-align: left;
}

.tc-lost-notice-icon {
    font-size: 1.25rem;
    line-height: 1.2;
    flex-shrink: 0;
}

.tc-lost-notice-text strong {
    display: block;
    font-family: 'Outfit', sans-serif;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--tc-dark);
    margin-bottom: 3px;
}

.tc-lost-notice-text span {
    font-size: 0.82rem;
    color: var(--tc-muted);
    line-height: 1.45;
}

.tc-lost-submit-btn {
    margin-top: 5px !important;
}

/* Footer Section of Lost Password Card */
.tc-lost-footer {
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid #F3F0F9;
    display: flex;
    flex-direction: column;
    gap: 16px;
    text-align: center;
}

.tc-lost-footer-links {
    font-size: 0.88rem;
    color: var(--tc-muted);
}

.tc-lost-footer-links a {
    color: var(--tc-primary);
    font-weight: 700;
    text-decoration: none;
    margin-left: 6px;
}

.tc-lost-footer-links a:hover {
    color: var(--tc-primary-hover);
    text-decoration: underline;
}

.tc-lost-trust-row {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
}

.tc-lost-trust-row .tc-trust-pill {
    font-size: 0.78rem;
}

@media (max-width: 480px) {
    .tc-lost-password-card {
        padding: 26px 18px;
        border-radius: 16px;
    }

    .tc-lost-title {
        font-size: 1.55rem;
    }

    .tc-lost-trust-row {
        gap: 8px;
    }
}

/* ==========================================================================
   EDIT ACCOUNT FORM (/account/edit-account/)
   ========================================================================== */
.woocommerce-EditAccountForm {
    max-width: 800px;
}

.woocommerce-EditAccountForm .form-row {
    margin-bottom: 20px !important;
}

.woocommerce-EditAccountForm .form-row-first,
.woocommerce-EditAccountForm .form-row-last {
    width: 48% !important;
    float: left !important;
}

.woocommerce-EditAccountForm .form-row-last {
    float: right !important;
}

.woocommerce-EditAccountForm label {
    display: block !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    color: var(--tc-dark) !important;
    margin-bottom: 6px !important;
}

.woocommerce-EditAccountForm input.input-text {
    width: 100% !important;
    height: 48px !important;
    padding: 12px 16px !important;
    border: 1.5px solid var(--tc-border) !important;
    border-radius: 10px !important;
    font-size: 0.98rem !important;
    background: #FAFAFD !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

.woocommerce-EditAccountForm input.input-text:focus {
    border-color: var(--tc-primary) !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(132, 94, 194, 0.15) !important;
    outline: none !important;
}

.woocommerce-EditAccountForm fieldset {
    background: #F9F8FC !important;
    border: 1px solid var(--tc-border) !important;
    border-radius: 14px !important;
    padding: 24px 26px !important;
    margin: 30px 0 25px !important;
}

.woocommerce-EditAccountForm fieldset legend {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    color: var(--tc-dark) !important;
    padding: 0 10px !important;
}

.woocommerce-EditAccountForm button[type="submit"] {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%) !important;
    color: #ffffff !important;
    padding: 14px 34px !important;
    border-radius: 10px !important;
    font-weight: 800 !important;
    font-size: 1rem !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.3) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.woocommerce-EditAccountForm button[type="submit"]:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(132, 94, 194, 0.4) !important;
}

/* ==========================================================================
   VIEW ORDER DETAILS (/account/view-order/*)
   ========================================================================== */
.woocommerce-view-order p:first-of-type {
    background: #F8F5FC !important;
    border: 1px solid var(--tc-border) !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    font-size: 1.05rem !important;
    color: var(--tc-dark) !important;
    margin-bottom: 25px !important;
}

.woocommerce-view-order mark.order-number {
    background: var(--tc-primary-light) !important;
    color: var(--tc-primary) !important;
    font-weight: 800 !important;
    padding: 2px 8px !important;
    border-radius: 6px !important;
}

.woocommerce-view-order mark.order-status {
    background: #DDF7E3 !important;
    color: #127A38 !important;
    font-weight: 800 !important;
    padding: 2px 8px !important;
    border-radius: 6px !important;
}

.woocommerce-order-details {
    margin-top: 30px !important;
}

.woocommerce-order-details__title {
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    margin-bottom: 16px !important;
}

.woocommerce-table--order-details {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid var(--tc-border) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    margin-bottom: 30px !important;
}

.woocommerce-table--order-details th {
    background: #F8F5FC !important;
    padding: 14px 18px !important;
    font-weight: 800 !important;
    font-size: 0.88rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    border-bottom: 1px solid var(--tc-border) !important;
}

.woocommerce-table--order-details td {
    padding: 16px 18px !important;
    border-bottom: 1px solid #F0EBF7 !important;
    font-size: 0.95rem !important;
}

.woocommerce-customer-details {
    background: #F9F8FC !important;
    border: 1px solid var(--tc-border) !important;
    border-radius: 14px !important;
    padding: 24px 28px !important;
    margin-top: 30px !important;
}

.woocommerce-customer-details h2 {
    font-size: 1.25rem !important;
    font-weight: 800 !important;
    margin-bottom: 14px !important;
}

/* ==========================================================================
   GLOBAL NOTICES & ALERTS IN ACCOUNT & WOOCOMMERCE
   ========================================================================== */
.woocommerce-notices-wrapper {
    max-width: 1040px !important;
    margin: 10px auto 25px !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* Match Lost Password card width */
.woocommerce:has(.tc-lost-password-wrapper) .woocommerce-notices-wrapper,
.woocommerce-notices-wrapper:has(+ .tc-lost-password-wrapper),
.tc-lost-password-wrapper ~ .woocommerce-notices-wrapper {
    max-width: 540px !important;
    padding: 0 15px !important;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    position: relative !important;
    padding: 16px 22px 16px 56px !important;
    margin: 0 0 25px 0 !important;
    border-radius: 14px !important;
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 0.94rem !important;
    font-weight: 600 !important;
    line-height: 1.55 !important;
    display: block !important;
    list-style: none !important;
    box-shadow: 0 4px 15px rgba(20, 18, 30, 0.04) !important;
    box-sizing: border-box !important;
    width: 100% !important;
    clear: both !important;
}

/* Perfect Icon Positioning (Clean, Non-Overlapping Circle Badges) */
.woocommerce-message::before,
.woocommerce-message[role="alert"]::before,
.woocommerce-info::before,
.woocommerce-info[role="alert"]::before,
.woocommerce-error::before,
.woocommerce-error[role="alert"]::before {
    position: absolute !important;
    left: 18px !important;
    top: 17px !important;
    transform: none !important;
    margin: 0 !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.76rem !important;
    font-weight: 900 !important;
    font-family: system-ui, -apple-system, sans-serif !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    text-align: center !important;
}

/* Success Banner (e.g. Password reset email sent) */
.woocommerce-message {
    background: #ECFDF5 !important;
    border: 1.5px solid #A7F3D0 !important;
    color: #065F46 !important;
}

.woocommerce-message::before,
.woocommerce-message[role="alert"]::before {
    content: "" !important;
    background-color: #10B981 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 13px 13px !important;
    box-shadow: 0 2px 6px rgba(16, 185, 129, 0.3) !important;
}

.woocommerce-message a {
    color: #047857 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

/* Error Banner (e.g. Incorrect password, missing fields) */
.woocommerce-error {
    background: #FEF2F2 !important;
    border: 1.5px solid #FECACA !important;
    color: #991B1B !important;
}

.woocommerce-error::before,
.woocommerce-error[role="alert"]::before {
    content: "!" !important;
    background: #EF4444 !important;
    color: #ffffff !important;
    font-size: 0.85rem !important;
    font-weight: 900 !important;
    box-shadow: 0 2px 6px rgba(239, 68, 68, 0.3) !important;
}

.woocommerce-error strong {
    font-weight: 800 !important;
    color: #7F1D1D !important;
}

.woocommerce-error a {
    color: #845EC2 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

.woocommerce-error a:hover {
    color: #7042B3 !important;
}

/* Info Banner */
.woocommerce-info {
    background: #F5F3FF !important;
    border: 1.5px solid #DDD6FE !important;
    color: #5B21B6 !important;
}

.woocommerce-info::before,
.woocommerce-info[role="alert"]::before {
    content: "i" !important;
    background: #8B5CF6 !important;
    color: #ffffff !important;
    font-style: italic !important;
    font-family: Georgia, serif !important;
    font-size: 0.82rem !important;
    box-shadow: 0 2px 6px rgba(139, 92, 246, 0.3) !important;
}

.woocommerce-info a {
    color: #7C3AED !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
}

/* List Resets inside notices */
ul.woocommerce-error,
ul.woocommerce-message,
ul.woocommerce-info {
    list-style: none !important;
    margin: 0 0 25px 0 !important;
}

ul.woocommerce-error li,
ul.woocommerce-message li,
ul.woocommerce-info li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: inherit !important;
    color: inherit !important;
    line-height: inherit !important;
}

ul.woocommerce-error li + li {
    margin-top: 6px !important;
}

/* Action button inside notice (e.g., View Cart, Continue) */
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
    background: var(--tc-primary) !important;
    color: #ffffff !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    padding: 7px 16px !important;
    border-radius: 8px !important;
    border: none !important;
    text-decoration: none !important;
    float: right !important;
    margin-top: -3px !important;
    box-shadow: 0 3px 8px rgba(132, 94, 194, 0.25) !important;
    transition: all 0.2s ease !important;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
    background: var(--tc-primary-hover) !important;
    transform: translateY(-1px) !important;
}

/* ==========================================================================
   HOMEPAGE V2: MODERN TECH MARKETPLACE & HIGH-CONVERSION LANDING PAGE
   ========================================================================== */

/* 1. High-Trust Hero Section */
.tc-hero-minimal {
    position: relative;
    background: radial-gradient(120% 90% at 50% -10%, #F5F0FF 0%, #FAF8FF 45%, #FFFFFF 100%);
    padding: 64px 20px 42px;
    text-align: center;
    border-bottom: 1px solid #EDE6F7;
    overflow: hidden;
}

/* Ambient Glow Lights */
.tc-hero-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
    z-index: 0;
}

.tc-glow-top {
    top: -120px;
    left: 50%;
    transform: translateX(-50%);
    width: 650px;
    height: 320px;
    background: radial-gradient(circle, rgba(108, 92, 231, 0.16) 0%, rgba(155, 81, 224, 0.08) 50%, transparent 75%);
}

.tc-glow-left {
    top: 20%;
    left: -100px;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(130, 94, 255, 0.08) 0%, transparent 70%);
}

.tc-glow-right {
    top: 15%;
    right: -100px;
    width: 420px;
    height: 420px;
    background: radial-gradient(circle, rgba(214, 93, 177, 0.07) 0%, transparent 70%);
}

/* Subtle Tech Dot Grid Pattern */
.tc-hero-bg-grid {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(108, 92, 231, 0.08) 1.2px, transparent 1.2px);
    background-size: 24px 24px;
    mask-image: radial-gradient(ellipse at 50% 40%, #000 30%, transparent 80%);
    -webkit-mask-image: radial-gradient(ellipse at 50% 40%, #000 30%, transparent 80%);
    pointer-events: none;
    z-index: 0;
}

.tc-hero-minimal-inner {
    position: relative;
    z-index: 1;
    max-width: 880px;
    margin: 0 auto;
}

/* Top Social Proof Pill */
.tc-hero-social-proof {
    display: inline-flex;
    align-items: center;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
    gap: 10px;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(108, 92, 231, 0.22);
    padding: 5px 16px 5px 6px;
    border-radius: 999px;
    margin-bottom: 22px;
    box-shadow: 0 4px 18px rgba(108, 92, 231, 0.08);
    backdrop-filter: blur(10px);
    transition: all 0.25s ease;
    max-width: 100%;
    box-sizing: border-box;
}

.tc-hero-social-proof:hover {
    border-color: rgba(108, 92, 231, 0.45);
    box-shadow: 0 6px 24px rgba(108, 92, 231, 0.14);
    transform: translateY(-1px);
}

.tc-avatar-stack {
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    flex-shrink: 0 !important;
    margin-right: 2px;
}

.tc-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid #ffffff;
    margin-left: -8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    flex-shrink: 0;
}

.tc-avatar:first-child {
    margin-left: 0;
}

.tc-av-1 { background: linear-gradient(135deg, #6C5CE7, #845EC2); }
.tc-av-2 { background: linear-gradient(135deg, #FF6F91, #FF9671); }
.tc-av-3 { background: linear-gradient(135deg, #00C9A7, #0081CF); }

.tc-proof-stars {
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    flex-shrink: 0 !important;
    gap: 1px !important;
}

.tc-proof-stars .tc-svg-stars {
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    flex-shrink: 0 !important;
    gap: 1px !important;
    white-space: nowrap !important;
}

.tc-proof-text {
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
    gap: 7px;
    font-size: 0.82rem;
    font-weight: 600;
    color: #372F4B;
    letter-spacing: -0.01em;
}

.tc-proof-text strong {
    font-weight: 800;
    color: var(--tc-dark);
}

.tc-proof-text-mobile {
    display: none !important;
}

.tc-live-pulse-dot {
    width: 7px;
    height: 7px;
    background: #10B981;
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.6);
    animation: tcPulseGreen 2s infinite;
    flex-shrink: 0;
}

@keyframes tcPulseGreen {
    0% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7); }
    70% { box-shadow: 0 0 0 6px rgba(16, 185, 129, 0); }
    100% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
}

.tc-hero-title-minimal {
    font-size: clamp(2.3rem, 4.6vw, 3.4rem);
    font-weight: 900;
    line-height: 1.15;
    color: #171228;
    letter-spacing: -0.03em;
    margin-bottom: 16px;
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
}

.tc-gradient-text-minimal {
    background: linear-gradient(135deg, #6C5CE7 0%, #845EC2 45%, #D65DB1 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

.tc-hero-sub-minimal {
    font-size: 1.08rem;
    line-height: 1.65;
    color: #4F4763;
    max-width: 660px;
    margin: 0 auto 30px;
    font-weight: 400;
}

/* Elevated Search Box */
.tc-hero-search-minimal {
    max-width: 620px;
    margin: 0 auto 26px;
}

.tc-search-form-minimal {
    position: relative;
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 2px solid #E6DDF5;
    border-radius: 999px;
    padding: 6px 7px 6px 20px;
    box-shadow: 0 10px 30px -6px rgba(108, 92, 231, 0.12), 0 2px 8px rgba(0, 0, 0, 0.03);
    transition: all 0.25s ease;
}

.tc-search-form-minimal:focus-within {
    border-color: #6C5CE7;
    box-shadow: 0 12px 36px -4px rgba(108, 92, 231, 0.22), 0 0 0 3px rgba(108, 92, 231, 0.15);
    transform: translateY(-2px);
}

.tc-search-icon-minimal {
    color: #6C5CE7;
    display: flex;
    align-items: center;
    margin-right: 12px;
    flex-shrink: 0;
}

.tc-search-input-minimal {
    flex: 1;
    border: none !important;
    outline: none !important;
    font-family: 'Outfit', sans-serif;
    font-size: 0.96rem;
    color: #171228;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.tc-search-input-minimal::placeholder {
    color: #8C82A2;
}

.tc-search-kbd-hint {
    display: inline-flex;
    gap: 3px;
    align-items: center;
    margin-right: 12px;
}

.tc-search-kbd-hint kbd {
    background: #F3EDFC;
    border: 1px solid #D8C7F3;
    color: #6C5CE7;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 5px;
    font-family: inherit;
    line-height: 1.2;
}

.tc-search-btn-minimal {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: linear-gradient(135deg, #6C5CE7 0%, #5842BD 100%);
    color: #ffffff !important;
    border: none;
    padding: 11px 24px;
    border-radius: 999px;
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 0.94rem;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(108, 92, 231, 0.32);
    transition: all 0.22s ease;
    white-space: nowrap;
}

.tc-search-btn-minimal:hover {
    background: linear-gradient(135deg, #5B4BC4 0%, #4834A8 100%);
    transform: scale(1.02);
    box-shadow: 0 6px 20px rgba(108, 92, 231, 0.42);
}

/* Trending Chips Minimal */
.tc-search-chips-minimal {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
    font-size: 0.84rem;
}

.tc-chips-label-minimal {
    font-weight: 700;
    color: #6C5CE7;
}

.tc-chip-minimal {
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid #E5DCF4;
    padding: 4px 13px;
    border-radius: 999px;
    color: #4A3E63;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.81rem;
    box-shadow: 0 1px 4px rgba(108, 92, 231, 0.04);
    transition: all 0.2s ease;
}

.tc-chip-minimal:hover {
    background: #6C5CE7;
    color: #ffffff;
    border-color: #6C5CE7;
    transform: translateY(-1.5px);
    box-shadow: 0 4px 12px rgba(108, 92, 231, 0.22);
}


.tc-pill-stars {
    color: #F59E0B;
    letter-spacing: 1px;
}

/* 2. Products Section Directly Below Hero */
.tc-products-section-main {
    padding: 56px 0 75px;
    background: #FAF8FE;
    border-bottom: 1px solid #EDE6F7;
    position: relative;
}

.tc-catalog-header-minimal {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 24px;
    flex-wrap: wrap;
    gap: 20px;
}

.tc-catalog-title-box {
    max-width: 680px;
}

.tc-catalog-badge-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(108, 92, 231, 0.08);
    border: 1px solid rgba(108, 92, 231, 0.2);
    color: var(--tc-primary);
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 4px 13px;
    border-radius: 999px;
    margin-bottom: 10px;
}

.tc-badge-dot-green {
    width: 6px;
    height: 6px;
    background: #10B981;
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.6);
    animation: tcPulseGreen 2s infinite;
}

.tc-catalog-main-title {
    font-size: clamp(1.85rem, 3.2vw, 2.4rem);
    font-weight: 900;
    line-height: 1.15;
    color: #171228;
    letter-spacing: -0.03em;
    margin: 0 0 8px 0;
    font-family: 'Outfit', sans-serif;
}

.tc-gradient-title-accent {
    background: linear-gradient(135deg, #6C5CE7 0%, #845EC2 50%, #D65DB1 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

.tc-catalog-subtitle {
    font-size: 0.98rem;
    line-height: 1.55;
    color: #554D69;
    margin: 0;
    font-weight: 400;
}

.tc-catalog-view-all-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #ffffff;
    border: 1.5px solid #E4DAF5;
    color: #6C5CE7;
    padding: 10px 20px;
    border-radius: 999px;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(108, 92, 231, 0.04);
    transition: all 0.22s ease;
    white-space: nowrap;
    flex-shrink: 0;
}

.tc-catalog-view-all-btn svg {
    transition: transform 0.2s ease;
}

.tc-catalog-view-all-btn:hover {
    background: #6C5CE7;
    color: #ffffff;
    border-color: #6C5CE7;
    box-shadow: 0 6px 18px rgba(108, 92, 231, 0.28);
    transform: translateY(-1.5px);
}

.tc-catalog-view-all-btn:hover svg {
    transform: translateX(3px);
}

/* Category Filter Pills Bar */
.tc-filter-pills-minimal {
    display: flex;
    align-items: center;
    gap: 10px;
    overflow-x: auto;
    padding: 6px 2px 28px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.tc-filter-pills-minimal::-webkit-scrollbar {
    display: none;
}

.tc-pill-minimal {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 18px;
    background: #ffffff;
    color: #372F4B;
    border: 1.5px solid #E7DEF5;
    border-radius: 999px;
    font-size: 0.86rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 2px 8px rgba(108, 92, 231, 0.03);
    white-space: nowrap;
    flex-shrink: 0;
}

.tc-pill-icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #F6F1FD;
    color: #6C5CE7;
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.tc-pill-minimal:hover {
    background: #ffffff;
    color: #6C5CE7;
    border-color: #CDBAF3;
    transform: translateY(-2px);
    box-shadow: 0 5px 16px rgba(108, 92, 231, 0.12);
}

.tc-pill-minimal:hover .tc-pill-icon-wrap {
    background: #ECE4F7;
    transform: scale(1.08);
}

.tc-pill-minimal.active {
    background: linear-gradient(135deg, #6C5CE7 0%, #5842BD 100%) !important;
    color: #ffffff !important;
    border-color: #6C5CE7 !important;
    box-shadow: 0 5px 18px rgba(108, 92, 231, 0.35) !important;
    transform: translateY(-1.5px);
}

.tc-pill-minimal.active .tc-pill-icon-wrap {
    background: rgba(255, 255, 255, 0.22) !important;
    color: #ffffff !important;
}

/* 2. Trust Guarantee Pillars Section */
.tc-trust-section {
    padding: 70px 0;
    background: #ffffff;
    border-bottom: 1px solid #EDE7F6;
    position: relative;
}

.tc-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.tc-trust-card {
    background: #ffffff;
    border: 1px solid #ECE4F7;
    border-radius: 20px;
    padding: 28px 24px;
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 10px rgba(108, 92, 231, 0.04), 0 1px 3px rgba(0, 0, 0, 0.02);
    position: relative;
    overflow: hidden;
}

.tc-trust-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #845EC2 0%, #D65DB1 100%);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.tc-trust-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 36px rgba(132, 94, 194, 0.12), 0 4px 12px rgba(0, 0, 0, 0.03);
    border-color: #D6C7ED;
}

.tc-trust-card:hover::before {
    opacity: 1;
}

.tc-trust-card-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    transition: transform 0.25s ease;
    flex-shrink: 0;
}

.tc-trust-card:hover .tc-trust-card-icon {
    transform: scale(1.06);
}

.tc-icon-purple {
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.12) 0%, rgba(108, 92, 231, 0.2) 100%);
    color: #845EC2;
    border: 1px solid rgba(132, 94, 194, 0.25);
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.15);
}

.tc-icon-emerald {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.12) 0%, rgba(5, 150, 105, 0.2) 100%);
    color: #059669;
    border: 1px solid rgba(16, 185, 129, 0.25);
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.15);
}

.tc-icon-blue {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.12) 0%, rgba(29, 78, 216, 0.2) 100%);
    color: #2563EB;
    border: 1px solid rgba(37, 99, 235, 0.25);
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.15);
}

.tc-icon-amber {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.12) 0%, rgba(217, 119, 6, 0.2) 100%);
    color: #D97706;
    border: 1px solid rgba(245, 158, 11, 0.25);
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.15);
}

.tc-trust-card-body h3 {
    font-size: 1.15rem;
    font-weight: 800;
    color: #0F172A;
    margin-bottom: 10px;
    font-family: 'Outfit', sans-serif;
    letter-spacing: -0.01em;
    line-height: 1.3;
}

.tc-trust-card-body p {
    font-size: 0.90rem;
    line-height: 1.62;
    color: #475569;
    margin: 0;
}

@media (max-width: 992px) {
    .tc-trust-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
    }
}

@media (max-width: 560px) {
    .tc-trust-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .tc-trust-card {
        padding: 22px 18px;
    }
}

/* 3. Category Filter Section V2 */
.tc-filter-section-v2 {
    background: #FAF8FE;
    padding: 40px 0 30px;
    border-bottom: 1px solid #EDE6F7;
}

.tc-filter-header-v2 {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 22px;
    flex-wrap: wrap;
    gap: 16px;
}

.tc-badge-eyebrow {
    font-size: 0.8rem;
    font-weight: 800;
    color: #6C5CE7;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: inline-block;
    margin-bottom: 4px;
}

.tc-section-title-v2 {
    font-size: 2rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin: 0;
    font-family: 'Outfit', sans-serif;
    letter-spacing: -0.02em;
}

.tc-section-sub-v2 {
    font-size: 0.96rem;
    color: #6B7280;
    margin: 4px 0 0;
}

.tc-link-view-all {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--tc-primary);
    text-decoration: none;
    transition: all 0.2s ease;
}

.tc-link-view-all:hover {
    color: #4D3DB3;
    transform: translateX(3px);
}

.tc-filter-pills-v2 {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding-bottom: 6px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.tc-filter-pills-v2::-webkit-scrollbar {
    display: none;
}

.tc-pill-v2 {
    padding: 10px 20px;
    background: #ffffff;
    color: #4A3E62;
    border: 1.5px solid #E7DEF5;
    border-radius: 50px;
    font-size: 0.88rem;
    font-weight: 700;
    white-space: nowrap;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
}

.tc-pill-v2:hover,
.tc-pill-v2.active {
    background: linear-gradient(135deg, #6C5CE7 0%, #5842BD 100%);
    color: #ffffff;
    border-color: #6C5CE7;
    box-shadow: 0 4px 14px rgba(108, 92, 231, 0.3);
    transform: translateY(-1px);
}

/* 4. Curated Catalog Grid */
.tc-catalog-section-v2 {
    margin: 50px auto 65px;
}

.tc-catalog-grid-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.tc-product-card {
    background: #ffffff;
    border: 1px solid #ECE3F7;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 4px 18px rgba(108, 92, 231, 0.04);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.tc-product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(108, 92, 231, 0.12);
    border-color: #C8B6E8;
}

.tc-card-media {
    position: relative;
    overflow: hidden;
    line-height: 0;
    background: #FAF8FD;
}

.tc-card-media-link {
    display: block;
}

.tc-card-thumb {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    transition: transform 0.4s ease;
    display: block !important;
}

.tc-product-card:hover .tc-card-thumb {
    transform: scale(1.05);
}

.tc-badge-category {
    position: absolute;
    top: 14px;
    left: 14px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(255, 255, 255, 0.96);
    color: #171228;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1;
    padding: 6px 12px;
    border-radius: 9999px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.85);
    letter-spacing: 0.01em;
    white-space: nowrap;
    z-index: 3;
    pointer-events: none;
    box-sizing: border-box;
}

.tc-badge-category .tc-badge-cat-icon {
    display: inline-flex;
    align-items: center;
    color: #6366F1;
}

.tc-badge-instant {
    position: absolute;
    top: 14px;
    right: 14px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: linear-gradient(135deg, #10B981 0%, #059669 100%);
    color: #ffffff;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1;
    padding: 6px 12px;
    border-radius: 9999px;
    box-shadow: 0 2px 10px rgba(16, 185, 129, 0.35);
    letter-spacing: 0.01em;
    white-space: nowrap;
    z-index: 3;
    pointer-events: none;
    box-sizing: border-box;
}

.tc-card-body {
    padding: 22px 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.tc-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.78rem;
    margin-bottom: 10px;
}

.tc-card-rating {
    display: flex;
    align-items: center;
    gap: 4px;
}

.tc-stars {
    color: #F59E0B;
}

.tc-rating-num {
    font-weight: 800;
    color: var(--tc-dark);
}

.tc-card-license {
    color: #64748B;
    font-weight: 600;
}

.tc-card-title {
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.4;
    margin: 0 0 12px;
    font-family: 'Outfit', sans-serif;
}

.tc-card-title a {
    color: var(--tc-dark);
    text-decoration: none;
    transition: color 0.2s ease;
}

.tc-card-title a:hover {
    color: var(--tc-primary);
}

.tc-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 18px;
}

.tc-tag {
    background: #F3EEFB;
    color: #6C5CE7;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 6px;
}

.tc-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 16px;
    border-top: 1px solid #F1E9FA;
    margin-top: auto;
}

.tc-card-pricing {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.tc-price-current {
    font-family: 'Outfit', sans-serif;
    font-size: 1.4rem;
    font-weight: 900;
    color: var(--tc-primary);
}

.tc-price-regular {
    font-size: 0.9rem;
    color: #94A3B8;
    text-decoration: line-through;
}

.tc-card-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.tc-btn-buy-now {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: linear-gradient(135deg, #6C5CE7 0%, #5842BD 100%);
    color: #ffffff !important;
    padding: 9px 18px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 0.88rem;
    text-decoration: none;
    box-shadow: 0 3px 10px rgba(108, 92, 231, 0.25);
    transition: all 0.2s ease;
}

.tc-btn-buy-now:hover {
    background: linear-gradient(135deg, #5B4BC4 0%, #4834A8 100%);
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(108, 92, 231, 0.35);
}

.tc-btn-view {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: #FAF8FE;
    border: 1px solid #E6DDF5;
    border-radius: 10px;
    color: #554A6E;
    text-decoration: none;
    transition: all 0.2s ease;
}

.tc-btn-view:hover {
    background: #6C5CE7;
    color: #ffffff;
    border-color: #6C5CE7;
}

.tc-catalog-bottom-cta {
    text-align: center;
    margin-top: 45px;
}

.tc-btn-view-all {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #ffffff;
    border: 2px solid #D8CBEF;
    color: var(--tc-primary) !important;
    padding: 14px 34px;
    border-radius: 12px;
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.02rem;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(108, 92, 231, 0.06);
    transition: all 0.2s ease;
}

.tc-btn-view-all:hover {
    background: var(--tc-primary);
    color: #ffffff !important;
    border-color: var(--tc-primary);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(108, 92, 231, 0.25);
}

/* 5. Special Launch Bundle Banner */
.tc-bundle-section {
    margin: 40px auto 65px;
}

.tc-bundle-card {
    position: relative;
    background: linear-gradient(135deg, #1E1B4B 0%, #2E1A47 60%, #3B1B54 100%);
    border-radius: 24px;
    padding: 50px 45px;
    color: #ffffff;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(30, 27, 75, 0.25);
    border: 1px solid rgba(168, 85, 247, 0.25);
}

.tc-bundle-glow {
    position: absolute;
    top: -100px;
    right: -100px;
    width: 350px;
    height: 350px;
    background: radial-gradient(circle, rgba(168, 85, 247, 0.35) 0%, transparent 70%);
    pointer-events: none;
}

.tc-bundle-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 40px;
    align-items: center;
    position: relative;
    z-index: 1;
}

.tc-bundle-badge {
    display: inline-block;
    background: rgba(168, 85, 247, 0.25);
    border: 1px solid rgba(168, 85, 247, 0.4);
    color: #E9D5FF;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 1px;
    padding: 5px 14px;
    border-radius: 30px;
    margin-bottom: 16px;
}

.tc-bundle-text h2 {
    font-size: clamp(1.8rem, 3.2vw, 2.4rem);
    font-weight: 800;
    color: #ffffff;
    line-height: 1.25;
    margin-bottom: 16px;
    font-family: 'Outfit', sans-serif;
}

.tc-bundle-text p {
    font-size: 1rem;
    line-height: 1.65;
    color: #D1D5DB;
    margin-bottom: 24px;
}

.tc-bundle-perks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 30px;
}

.tc-perk {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.9rem;
    color: #E2E8F0;
}

.tc-perk-check {
    color: #10B981;
    font-weight: 900;
}

.tc-btn-bundle-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #845EC2 0%, #6C5CE7 100%);
    color: #ffffff !important;
    padding: 16px 32px;
    border-radius: 14px;
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(132, 94, 194, 0.45);
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.tc-btn-bundle-cta:hover {
    background: linear-gradient(135deg, #744eb2 0%, #5b4bc7 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(132, 94, 194, 0.6);
}

.tc-bundle-badge-box {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 22px;
    padding: 32px 28px;
    text-align: center;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.tc-guarantee-seal {
    margin-bottom: 22px;
}

.tc-seal-icon {
    width: 62px;
    height: 62px;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.25) 0%, rgba(108, 92, 231, 0.35) 100%);
    border: 1px solid rgba(168, 85, 247, 0.4);
    color: #D8B4FE;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
    box-shadow: 0 6px 18px rgba(108, 92, 231, 0.25);
}

.tc-seal-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.35rem;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -0.01em;
}

.tc-seal-sub {
    font-size: 0.88rem;
    font-weight: 600;
    color: #C084FC;
}

.tc-payment-methods-strip {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: 20px;
}

.tc-pay-label {
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #A5B4FC;
    margin-bottom: 14px;
    font-weight: 700;
}

.tc-pay-tags {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.tc-pay-pill {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    padding: 7px 10px;
    border-radius: 10px;
    font-size: 0.76rem;
    font-weight: 700;
    color: #F8FAFC;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    transition: background 0.2s ease;
}

.tc-pay-pill:hover {
    background: rgba(255, 255, 255, 0.14);
}

@media (max-width: 900px) {
    .tc-bundle-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .tc-bundle-card {
        padding: 36px 24px;
    }
}

/* 6. 3-Step Workflow Section V2 */
.tc-steps-section-v2 {
    padding: 85px 0;
    background: #FAF8FE;
    border-top: 1px solid #EDE6F7;
    border-bottom: 1px solid #EDE6F7;
    position: relative;
}

.tc-section-header-center {
    text-align: center;
    max-width: 680px;
    margin: 0 auto 50px;
}

.tc-steps-grid-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

.tc-step-card-v2 {
    background: #ffffff;
    border: 1px solid #ECE3F7;
    border-radius: 22px;
    padding: 34px 28px;
    box-shadow: 0 4px 18px rgba(108, 92, 231, 0.04), 0 1px 3px rgba(0, 0, 0, 0.02);
    position: relative;
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.tc-step-card-v2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #845EC2 0%, #D65DB1 100%);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.tc-step-card-v2:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 38px rgba(132, 94, 194, 0.12), 0 4px 12px rgba(0, 0, 0, 0.03);
    border-color: #D6C7ED;
}

.tc-step-card-v2:hover::before {
    opacity: 1;
}

.tc-step-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
}

.tc-step-badge {
    display: inline-flex;
    align-items: center;
    background: linear-gradient(135deg, #F5F0FC 0%, #EDE5FA 100%);
    border: 1px solid #E2D4F7;
    color: #845EC2;
    font-family: 'Outfit', sans-serif;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.6px;
    padding: 5px 12px;
    border-radius: 30px;
    text-transform: uppercase;
}

.tc-step-icon-wrap {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.12) 0%, rgba(108, 92, 231, 0.2) 100%);
    color: #845EC2;
    border: 1px solid rgba(132, 94, 194, 0.25);
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.12);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.25s ease;
    flex-shrink: 0;
}

.tc-step-card-v2:hover .tc-step-icon-wrap {
    transform: scale(1.06);
}

.tc-step-card-v2 h3 {
    font-size: 1.25rem;
    font-weight: 800;
    color: #0F172A;
    margin-bottom: 12px;
    font-family: 'Outfit', sans-serif;
    letter-spacing: -0.015em;
    line-height: 1.3;
}

.tc-step-card-v2 p {
    font-size: 0.92rem;
    line-height: 1.65;
    color: #475569;
    margin: 0;
}

@media (max-width: 860px) {
    .tc-steps-grid-v2 {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

/* 7. Developer Testimonials */
.tc-testimonials-section {
    padding: 75px 0;
    background: #ffffff;
    border-bottom: 1px solid #EDE6F7;
}

.tc-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

.tc-testimonial-card {
    background: #FAF8FE;
    border: 1px solid #ECE4F7;
    border-radius: 18px;
    padding: 30px 26px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.25s ease;
}

.tc-testimonial-card:hover {
    background: #ffffff;
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(108, 92, 231, 0.08);
    border-color: #D2C4E8;
}

.tc-test-stars {
    color: #F59E0B;
    font-size: 1.1rem;
    letter-spacing: 2px;
    margin-bottom: 16px;
}

.tc-test-quote {
    font-size: 0.95rem;
    line-height: 1.65;
    color: #374151;
    font-style: italic;
    margin: 0 0 24px;
}

.tc-test-author {
    display: flex;
    align-items: center;
    gap: 12px;
}

.tc-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 0.9rem;
    font-family: 'Outfit', sans-serif;
}

.tc-avatar-1 { background: linear-gradient(135deg, #6C5CE7 0%, #8E44AD 100%); }
.tc-avatar-2 { background: linear-gradient(135deg, #10B981 0%, #059669 100%); }
.tc-avatar-3 { background: linear-gradient(135deg, #D65DB1 0%, #845EC2 100%); }

.tc-test-author strong {
    display: block;
    color: var(--tc-dark);
    font-size: 0.94rem;
}

.tc-test-author span {
    font-size: 0.8rem;
    color: #64748B;
}

/* 8. Interactive Accordion FAQ V2 */
.tc-faq-section-v2 {
    padding: 75px 0;
    background: #FAF8FE;
    border-bottom: 1px solid #EDE6F7;
}

.tc-faq-container {
    max-width: 860px;
}

.tc-accordion-v2 {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.tc-accordion-item {
    background: #ffffff;
    border: 1px solid #ECE4F7;
    border-radius: 14px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.tc-accordion-item.active {
    border-color: #C8B7E6;
    box-shadow: 0 6px 20px rgba(108, 92, 231, 0.06);
}

.tc-accordion-header {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 22px;
    background: transparent;
    border: none;
    text-align: left;
    font-family: 'Outfit', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--tc-dark);
    cursor: pointer;
    gap: 16px;
    transition: color 0.2s ease;
}

.tc-accordion-header:hover {
    color: var(--tc-primary);
}

.tc-acc-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #F2ECFB;
    position: relative;
    flex-shrink: 0;
    transition: transform 0.2s ease, background 0.2s ease;
}

.tc-acc-icon::before,
.tc-acc-icon::after {
    content: '';
    position: absolute;
    background: #6C5CE7;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: transform 0.2s ease;
}

.tc-acc-icon::before {
    width: 10px;
    height: 2px;
}

.tc-acc-icon::after {
    width: 2px;
    height: 10px;
}

.tc-accordion-item.active .tc-acc-icon {
    background: #6C5CE7;
}

.tc-accordion-item.active .tc-acc-icon::before {
    background: #ffffff;
}

.tc-accordion-item.active .tc-acc-icon::after {
    display: none;
}

.tc-accordion-content {
    display: none;
    padding: 0 22px 20px;
}

.tc-accordion-content p {
    font-size: 0.94rem;
    line-height: 1.65;
    color: #4B5563;
    margin: 0;
}

/* 9. Final High-Impact Launch Banner */
.tc-cta-banner-section {
    padding: 70px 0 80px;
    background: #ffffff;
}

.tc-cta-banner-card {
    background: linear-gradient(135deg, #180D2D 0%, #26114A 30%, #4A1D96 70%, #6C5CE7 100%);
    border-radius: 28px;
    padding: 76px 40px;
    text-align: center;
    color: #ffffff;
    box-shadow: 0 24px 70px -10px rgba(74, 29, 150, 0.45), 0 10px 30px rgba(0, 0, 0, 0.18);
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.16);
}

.tc-cta-glow-orb {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(80px);
}

.tc-cta-glow-1 {
    width: 420px;
    height: 420px;
    top: -160px;
    right: -100px;
    background: radial-gradient(circle, #845EC2 0%, rgba(132, 94, 194, 0) 70%);
    opacity: 0.65;
}

.tc-cta-glow-2 {
    width: 360px;
    height: 360px;
    bottom: -130px;
    left: -80px;
    background: radial-gradient(circle, #00C9A7 0%, rgba(0, 201, 167, 0) 70%);
    opacity: 0.3;
}

.tc-cta-banner-content {
    position: relative;
    z-index: 2;
    max-width: 720px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.tc-cta-pill-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 18px;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 100px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    color: #E9D5FF;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    margin-bottom: 22px;
}

.tc-cta-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00F5A0;
    box-shadow: 0 0 10px #00F5A0;
    animation: tcPulseGlow 2s infinite ease-in-out;
}

@keyframes tcPulseGlow {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.85); }
}

.tc-cta-banner-content h2 {
    font-size: clamp(2.1rem, 4vw, 3rem);
    font-weight: 800;
    color: #ffffff;
    line-height: 1.18;
    letter-spacing: -0.025em;
    margin: 0 0 18px;
    font-family: 'Outfit', sans-serif;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.22);
}

.tc-cta-banner-content p {
    font-size: 1.12rem;
    color: rgba(255, 255, 255, 0.88);
    margin-bottom: 34px;
    line-height: 1.65;
    max-width: 620px;
}

.tc-cta-banner-btns {
    display: flex;
    justify-content: center;
    width: 100%;
}

.tc-btn-banner-main {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #ffffff;
    color: #180D2D !important;
    padding: 18px 44px;
    border-radius: 50px;
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.08rem;
    letter-spacing: -0.01em;
    text-decoration: none;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(255, 255, 255, 0.4);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.tc-btn-banner-main:hover {
    background: #ffffff;
    color: #845EC2 !important;
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.35), 0 0 0 4px rgba(255, 255, 255, 0.25);
}

.tc-cta-trust-strip {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 32px;
    font-size: 0.88rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.82);
    letter-spacing: 0.01em;
}

.tc-cta-sep {
    color: rgba(255, 255, 255, 0.35);
    font-size: 0.8rem;
}

/* ==========================================================================
   HOMEPAGE V2 RESPONSIVE BREAKPOINTS
   ========================================================================== */
@media (max-width: 1024px) {
    .tc-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .tc-catalog-grid-v2 {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .tc-bundle-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 868px) {
    .tc-hero-minimal {
        padding: 48px 18px 36px;
    }

    .tc-hero-search-minimal {
        max-width: 100%;
    }

    .tc-steps-grid-v2 {
        grid-template-columns: 1fr;
    }

    .tc-testimonials-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .tc-hero-minimal {
        padding: 38px 14px 28px;
    }

    .tc-hero-title-minimal {
        font-size: 1.95rem;
    }

    .tc-hero-sub-minimal {
        font-size: 0.94rem;
        margin-bottom: 22px;
    }

    /* Mobile Search Bar - Clean Single-Line Pill */
    .tc-hero-search-minimal {
        width: 100%;
        max-width: 100%;
        margin: 0 auto 20px;
    }

    .tc-search-form-minimal {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        background: #ffffff !important;
        border: 2px solid #E4DAF5 !important;
        border-radius: 50px !important;
        padding: 4px 5px 4px 14px !important;
        box-shadow: 0 4px 18px rgba(108, 92, 231, 0.08) !important;
        width: 100% !important;
        box-sizing: border-box !important;
        gap: 6px !important;
    }

    .tc-search-icon-minimal {
        color: #8C82A2 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-right: 4px !important;
        flex-shrink: 0 !important;
    }

    .tc-search-icon-minimal svg {
        width: 18px !important;
        height: 18px !important;
    }

    .tc-search-input-minimal {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        font-size: 16px !important; /* CRITICAL: 16px strictly prevents iOS Safari zoom */
        padding: 8px 0 !important;
        text-align: left !important;
        color: var(--tc-dark) !important;
        background: transparent !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
    }

    .tc-search-input-minimal::placeholder {
        font-size: 0.88rem !important;
        color: #94A3B8 !important;
    }

    .tc-search-btn-minimal {
        flex-shrink: 0 !important;
        width: auto !important;
        padding: 8px 16px !important;
        font-size: 0.88rem !important;
        border-radius: 50px !important;
        gap: 4px !important;
    }

    /* Swipeable horizontal trending chips on mobile */
    .tc-search-chips-minimal {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        justify-content: flex-start !important;
        padding: 2px 2px 6px !important;
        gap: 6px !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        width: 100% !important;
    }

    .tc-search-chips-minimal::-webkit-scrollbar {
        display: none !important;
    }

    .tc-chips-label-minimal,
    .tc-chip-minimal {
        flex-shrink: 0 !important;
        white-space: nowrap !important;
    }

    .tc-hero-minimal {
        padding: 44px 16px 30px !important;
    }

    /* Mobile Social Proof Pill: Single-line, compact & no wrapping */
    .tc-hero-social-proof {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        align-items: center !important;
        padding: 4px 10px 4px 4px !important;
        gap: 6px !important;
        margin-bottom: 16px !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .tc-avatar-stack {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        flex-shrink: 0 !important;
    }

    .tc-avatar {
        width: 19px !important;
        height: 19px !important;
        margin-left: -5px !important;
        border-width: 1.5px !important;
    }

    .tc-avatar svg {
        width: 10px !important;
        height: 10px !important;
    }

    .tc-proof-stars {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        flex-shrink: 0 !important;
    }

    .tc-proof-stars .tc-svg-stars {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        flex-shrink: 0 !important;
        white-space: nowrap !important;
        gap: 1px !important;
    }

    .tc-proof-stars svg {
        width: 10px !important;
        height: 10px !important;
    }

    .tc-proof-text {
        display: inline-flex !important;
        align-items: center !important;
        white-space: nowrap !important;
        flex-wrap: nowrap !important;
        gap: 5px !important;
    }

    .tc-proof-text-full {
        display: none !important;
    }

    .tc-proof-text-mobile {
        display: inline !important;
        font-size: 0.74rem !important;
        white-space: nowrap !important;
        letter-spacing: -0.01em !important;
    }

    .tc-live-pulse-dot {
        width: 6px !important;
        height: 6px !important;
    }

    @media (max-width: 360px) {
        .tc-hero-social-proof {
            padding: 3px 8px 3px 3px !important;
            gap: 4px !important;
        }
        .tc-avatar:nth-child(3) {
            display: none !important;
        }
        .tc-proof-text-mobile {
            font-size: 0.69rem !important;
        }
    }

    .tc-trust-pill-minimal .tc-pill-stars svg {
        width: 11px !important;
        height: 11px !important;
    }

    .tc-products-section-main {
        padding: 38px 0 55px !important;
    }

    .tc-catalog-header-minimal {
        margin-bottom: 16px !important;
        gap: 12px !important;
    }

    .tc-catalog-main-title {
        font-size: 1.6rem !important;
        margin-bottom: 6px !important;
    }

    .tc-catalog-subtitle {
        font-size: 0.88rem !important;
        line-height: 1.5 !important;
    }

    .tc-catalog-view-all-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 9px 16px !important;
        font-size: 0.84rem !important;
    }

    .tc-filter-pills-minimal {
        padding: 4px 0 20px !important;
        gap: 8px !important;
    }

    .tc-pill-minimal {
        padding: 7px 14px !important;
        font-size: 0.80rem !important;
        gap: 7px !important;
    }

    .tc-pill-icon-wrap {
        width: 20px !important;
        height: 20px !important;
    }

    .tc-pill-icon-wrap svg {
        width: 13px !important;
        height: 13px !important;
    }

    .tc-trust-grid {
        grid-template-columns: 1fr;
    }

    .tc-catalog-grid-v2 {
        grid-template-columns: 1fr;
    }

    .tc-bundle-perks {
        grid-template-columns: 1fr;
    }

    .tc-bundle-card {
        padding: 32px 20px;
    }

    .tc-cta-banner-card {
        padding: 48px 20px;
        border-radius: 20px;
    }

    .tc-cta-trust-strip {
        flex-direction: column;
        gap: 8px;
    }

    .tc-cta-sep {
        display: none;
    }

    .tc-btn-banner-main {
        width: 100%;
    }
}

@media (max-width: 400px) {
    .tc-search-btn-minimal {
        padding: 8px 12px !important;
    }
    .tc-search-btn-minimal .tc-search-btn-text {
        display: none !important;
    }
}

/* ==========================================================================
   Code Corner Redesigned Order Details & Downloads View
   ========================================================================== */

.tc-view-order-wrap {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

/* 1. Top Nav Bar */
.tc-order-nav-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}

.tc-back-to-orders {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--tc-primary);
    text-decoration: none !important;
    background: #FAF8FE;
    border: 1px solid #ECE4F7;
    padding: 8px 16px;
    border-radius: 10px;
    transition: all 0.2s ease;
}

.tc-back-to-orders:hover {
    background: #F3EDFC;
    border-color: #D6C8ED;
    transform: translateX(-3px);
}

.tc-order-wa-support {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 0.88rem;
    font-weight: 700;
    color: #128C7E !important;
    background: #E8F8EE;
    border: 1px solid #C3EED3;
    padding: 8px 16px;
    border-radius: 10px;
    text-decoration: none !important;
    transition: all 0.2s ease;
}

.tc-order-wa-support:hover {
    background: #25D366;
    color: #ffffff !important;
    border-color: #25D366;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);
    transform: translateY(-2px);
}

/* 2. Order Summary Hero Banner */
.tc-order-summary-banner {
    background: linear-gradient(135deg, #1E192B 0%, #2D2445 60%, #3D2C62 100%);
    border-radius: 18px;
    padding: 26px 30px;
    color: #ffffff;
    box-shadow: 0 10px 30px rgba(30, 25, 43, 0.1);
    position: relative;
    overflow: hidden;
}

.tc-order-summary-banner::after {
    content: "";
    position: absolute;
    top: -40px;
    right: -40px;
    width: 160px;
    height: 160px;
    background: radial-gradient(circle, rgba(132, 94, 194, 0.3) 0%, rgba(214, 93, 177, 0) 70%);
    pointer-events: none;
}

.tc-osb-left {
    display: flex;
    align-items: center;
    gap: 18px;
}

.tc-osb-icon {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, #845EC2 0%, #D65DB1 100%);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 6px 18px rgba(132, 94, 194, 0.4);
}

.tc-osb-number-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 6px;
    flex-wrap: wrap;
}

.tc-osb-number {
    font-family: 'Outfit', sans-serif;
    font-size: 1.45rem;
    font-weight: 800;
    color: #ffffff;
    margin: 0;
}

.tc-order-status-badge {
    font-size: 0.78rem;
    font-weight: 800;
    padding: 4px 12px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: inline-block;
}

.tc-status-completed {
    background: rgba(37, 211, 102, 0.2);
    color: #25D366;
    border: 1px solid rgba(37, 211, 102, 0.4);
}

.tc-status-pending {
    background: rgba(255, 193, 7, 0.2);
    color: #FFC107;
    border: 1px solid rgba(255, 193, 7, 0.4);
}

.tc-status-failed {
    background: rgba(239, 68, 68, 0.2);
    color: #EF4444;
    border: 1px solid rgba(239, 68, 68, 0.4);
}

.tc-osb-meta {
    font-size: 0.88rem;
    color: rgba(255, 255, 255, 0.8);
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.tc-osb-meta strong {
    color: #ffffff;
}

.tc-osb-meta .tc-dot {
    opacity: 0.4;
}

/* 3. Downloads Section */
.tc-order-downloads-section {
    background: #FAF8FE;
    border: 1.5px solid #EAE0F5;
    border-radius: 18px;
    padding: 26px 28px;
}

.tc-od-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    border-bottom: 1px solid #ECE3F7;
    padding-bottom: 14px;
    gap: 16px;
    flex-wrap: wrap;
}

.tc-od-header-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.tc-od-header-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(132, 94, 194, 0.3);
    flex-shrink: 0;
}

.tc-od-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin: 0 0 3px 0;
}

.tc-od-subtitle {
    font-size: 0.85rem;
    color: #7B728D;
    margin: 0;
}

.tc-od-ready-pill {
    background: #E8F8EE;
    color: #128C7E;
    border: 1px solid #C3EED3;
    font-size: 0.75rem;
    font-weight: 800;
    padding: 4px 12px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.tc-od-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.tc-od-card {
    background: #ffffff;
    border: 1px solid #E6DDF2;
    border-radius: 14px;
    padding: 18px 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    box-shadow: 0 2px 8px rgba(74, 58, 110, 0.04);
    transition: all 0.25s ease;
}

.tc-od-card:hover {
    border-color: #845EC2;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(132, 94, 194, 0.1);
}

.tc-od-card-info {
    display: flex;
    align-items: center;
    gap: 16px;
}

.tc-od-card-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #F3EDFC;
    color: #845EC2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tc-od-product-name {
    font-family: 'Outfit', sans-serif;
    font-size: 1.1rem;
    font-weight: 800;
    margin: 0 0 4px 0;
    line-height: 1.3;
}

.tc-od-product-name a {
    color: var(--tc-dark) !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.tc-od-product-name a:hover {
    color: #845EC2 !important;
}

.tc-od-meta-row {
    font-size: 0.82rem;
    color: #7B728D;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.tc-od-meta-item strong {
    color: var(--tc-dark);
}

.tc-btn-order-download {
    background: linear-gradient(135deg, #845EC2 0%, #7042B3 100%);
    color: #ffffff !important;
    font-size: 0.88rem;
    font-weight: 800;
    text-decoration: none !important;
    padding: 11px 22px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.35);
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tc-btn-order-download:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(132, 94, 194, 0.45);
}

/* 4. Order Details Section & Items Table */
.woocommerce-order-details {
    margin-top: 10px;
}

.woocommerce-order-details__title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--tc-dark);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.woocommerce-order-details__title::before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 20px;
    background: #845EC2;
    border-radius: 2px;
}

.woocommerce-table--order-details {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid var(--tc-border) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    box-shadow: 0 3px 14px rgba(74, 58, 110, 0.04) !important;
    margin-bottom: 25px !important;
}

.woocommerce-table--order-details th.product-name {
    width: 75% !important;
}

.woocommerce-table--order-details th.product-total {
    width: 25% !important;
    text-align: right !important;
}

.woocommerce-table--order-details thead tr {
    background: #FAF8FE !important;
}

.woocommerce-table--order-details thead th {
    padding: 16px 22px !important;
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    color: #635A75 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-bottom: 1px solid #ECE4F7 !important;
}

.woocommerce-table--order-details tbody td {
    padding: 18px 22px !important;
    border-bottom: 1px solid #F3EDFC !important;
    font-size: 0.95rem !important;
}

.woocommerce-table--order-details tbody td.product-name a {
    color: var(--tc-dark) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.woocommerce-table--order-details tbody td.product-name a:hover {
    color: #845EC2 !important;
}

.woocommerce-table--order-details tbody td.product-total {
    text-align: right !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 800 !important;
    font-size: 1.05rem !important;
    color: var(--tc-dark) !important;
}

.woocommerce-table--order-details .product-quantity {
    display: inline-block;
    background: #F1EDF8;
    color: #7042B3;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 6px;
    margin-left: 6px;
}

/* Fix for broken variation / add-on item meta */
.woocommerce-table--order-details .wc-item-meta {
    margin: 10px 0 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.woocommerce-table--order-details .wc-item-meta li {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #F8F5FD !important;
    border: 1px solid #E4D9F3 !important;
    border-radius: 8px !important;
    padding: 6px 12px !important;
    margin: 0 !important;
    font-size: 0.84rem !important;
    color: #4C4360 !important;
    box-shadow: none !important;
}

.woocommerce-table--order-details .wc-item-meta .wc-item-meta-label {
    font-weight: 800 !important;
    color: #845EC2 !important;
    text-transform: capitalize !important;
}

.woocommerce-table--order-details .wc-item-meta li p {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    font-weight: 600 !important;
    color: #2D273D !important;
}

/* Order Totals in tfoot */
.woocommerce-table--order-details tfoot th {
    background: #FAF8FE !important;
    padding: 14px 22px !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    color: #635A75 !important;
    border-top: 1px solid #ECE4F7 !important;
    border-bottom: none !important;
    text-align: left !important;
}

.woocommerce-table--order-details tfoot td {
    background: #FAF8FE !important;
    padding: 14px 22px !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: var(--tc-dark) !important;
    border-top: 1px solid #ECE4F7 !important;
    border-bottom: none !important;
    text-align: right !important;
}

.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-table--order-details tfoot tr:last-child td {
    background: #F3EDFC !important;
    padding: 18px 22px !important;
    border-top: 2px solid #D6C8ED !important;
}

.woocommerce-table--order-details tfoot tr:last-child th {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    color: #7042B3 !important;
}

.woocommerce-table--order-details tfoot tr:last-child td {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.35rem !important;
    font-weight: 900 !important;
    color: #845EC2 !important;
}

/* Hide raw Order Again container & Billing Address entirely */
.woocommerce-order-details .order-again,
p.order-again,
.woocommerce-customer-details,
section.woocommerce-customer-details {
    display: none !important;
}

/* Responsive Rules */
@media (max-width: 768px) {
    .tc-order-nav-bar {
        flex-direction: column;
        align-items: stretch;
    }
    .tc-back-to-orders,
    .tc-order-wa-support {
        justify-content: center;
    }
    .tc-order-summary-banner {
        padding: 20px;
    }
    .tc-osb-left {
        flex-direction: column;
        align-items: flex-start;
    }
    .tc-od-card {
        flex-direction: column;
        align-items: flex-start;
    }
    .tc-btn-order-download {
        width: 100%;
        justify-content: center;
    }
    .woocommerce-table--order-details thead th,
    .woocommerce-table--order-details tbody td,
    .woocommerce-table--order-details tfoot th,
    .woocommerce-table--order-details tfoot td {
        padding: 14px 16px !important;
    }
}

/* ==========================================================================
   CODE CORNER FLAT & CLEAN ORDER RECEIVED (ENCAPSULATED, NEVER TOUCHES HEADER/FOOTER)
   ========================================================================== */

.tc-thankyou-clean {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 40px 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    font-family: 'Outfit', sans-serif !important;
}

/* 1. Top Header */
.tc-ty-header {
    margin-bottom: 22px;
    padding: 0 !important;
}

.tc-ty-header-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #ECFDF5;
    color: #059669;
    border: 1px solid #A7F3D0;
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 3px 10px;
    border-radius: 6px;
    margin-bottom: 12px;
}

.tc-ty-main-title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #0F172A !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
}

.tc-ty-main-desc {
    font-size: 0.95rem !important;
    color: #475569 !important;
    margin: 0 !important;
    line-height: 1.5 !important;
    word-break: break-word !important;
}

/* 2. Flat Summary Strip (Zero Card, Hairline Dividers, Zero Side Padding) */
.tc-ty-summary-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    background: transparent !important;
    border-left: none !important;
    border-right: none !important;
    border-top: 1px solid #E2E8F0 !important;
    border-bottom: 1px solid #E2E8F0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 18px 0 !important; /* Zero left/right padding */
    margin: 22px 0 !important;
    flex-wrap: wrap;
    box-sizing: border-box !important;
}

.tc-ty-sum-col {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0; /* Prevents flex children from overflowing */
}

.tc-ty-sum-label {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #64748B;
}

.tc-ty-sum-val {
    font-size: 0.95rem;
    color: #0F172A;
    font-weight: 600;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
}

.tc-ty-sum-price {
    font-size: 1.15rem;
    font-weight: 800;
    color: #0F172A;
}

.tc-ty-status-pill {
    color: #059669;
    font-weight: 700;
    font-size: 0.88rem;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

/* 3. Direct Download Row (Flat, Zero Card Look, Zero Side Padding) */
.tc-ty-download-wrapper {
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.tc-ty-download-row {
    background: transparent !important;
    border-left: none !important;
    border-right: none !important;
    border-top: none !important;
    border-bottom: 1px solid #E2E8F0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 16px 0 !important; /* Zero left/right padding */
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    box-sizing: border-box !important;
}

.tc-ty-dl-file-info {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.tc-ty-zip-badge {
    background: #0F172A;
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.5px;
    padding: 6px 10px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tc-ty-dl-title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #0F172A !important;
    margin: 0 0 2px 0 !important;
    word-break: break-word !important;
}

.tc-ty-dl-sub {
    font-size: 0.82rem !important;
    color: #64748B !important;
    margin: 0 !important;
    word-break: break-word !important;
}

.tc-btn-dl {
    background: #845EC2 !important;
    color: #ffffff !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    padding: 10px 22px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-shadow: 0 2px 8px rgba(132, 94, 194, 0.25) !important;
    transition: all 0.15s ease !important;
    white-space: nowrap !important;
    flex-shrink: 0;
}

.tc-btn-dl:hover {
    background: #7042B3 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(132, 94, 194, 0.35) !important;
}

/* 4. WhatsApp Inline Notice (Flat Line, No Green Box Card) */
.tc-ty-wa-strip {
    background: transparent !important;
    border-left: none !important;
    border-right: none !important;
    border-top: none !important;
    border-bottom: 1px solid #E2E8F0 !important;
    border-radius: 0 !important;
    padding: 14px 0 !important; /* Zero left/right padding */
    font-size: 0.86rem;
    color: #475569;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 30px;
    flex-wrap: wrap;
    box-sizing: border-box !important;
}

.tc-ty-wa-strip-text {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.tc-ty-wa-strip-text svg {
    color: #16A34A;
    flex-shrink: 0;
}

.tc-ty-wa-link {
    color: #16A34A !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: color 0.15s ease !important;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.tc-ty-wa-link:hover {
    text-decoration: underline !important;
    color: #15803D !important;
}

/* 5. Flat Order Details Section & Table (Zero Card, Zero Side Padding) */
.tc-ty-order-details-clean {
    margin-bottom: 28px;
    padding: 0 !important;
    width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
}

.tc-ty-order-details-clean .woocommerce-order-details__title {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    color: #0F172A !important;
    margin: 0 0 16px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.tc-ty-order-details-clean .woocommerce-order-details__title::before {
    display: none !important;
}

/* Flat Table overrides */
.tc-ty-order-details-clean .woocommerce-table--order-details {
    width: 100% !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
    margin-bottom: 20px !important;
    box-sizing: border-box !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details thead tr {
    background: transparent !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details thead th {
    padding: 10px 0 !important; /* Zero left/right padding */
    font-size: 0.74rem !important;
    font-weight: 700 !important;
    color: #64748B !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1.5px solid #CBD5E1 !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details thead th.product-name {
    text-align: left !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details thead th.product-total {
    text-align: right !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tbody td {
    padding: 16px 0 !important; /* Zero left/right padding */
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #F1F5F9 !important;
    font-size: 0.95rem !important;
    color: #1E293B !important;
    word-break: break-word !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tbody td.product-name a {
    color: #0F172A !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tbody td.product-name a:hover {
    color: #845EC2 !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tbody td.product-total {
    text-align: right !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    color: #0F172A !important;
    white-space: nowrap !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details .product-quantity {
    display: inline-block;
    background: #F1F5F9;
    color: #475569;
    font-size: 0.76rem;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 4px;
    margin-left: 6px;
}

/* Totals rows in tfoot */
.tc-ty-order-details-clean .woocommerce-table--order-details tfoot th {
    background: transparent !important;
    padding: 12px 0 !important; /* Zero left/right padding */
    font-size: 0.88rem !important;
    font-weight: 600 !important;
    color: #64748B !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #F1F5F9 !important;
    text-align: left !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tfoot td {
    background: transparent !important;
    padding: 12px 0 !important; /* Zero left/right padding */
    font-size: 0.92rem !important;
    font-weight: 600 !important;
    color: #0F172A !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #F1F5F9 !important;
    text-align: right !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tfoot tr:last-child th,
.tc-ty-order-details-clean .woocommerce-table--order-details tfoot tr:last-child td {
    background: transparent !important;
    padding: 16px 0 !important;
    border-top: 1.5px solid #CBD5E1 !important;
    border-bottom: none !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tfoot tr:last-child th {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 800 !important;
    color: #0F172A !important;
}

.tc-ty-order-details-clean .woocommerce-table--order-details tfoot tr:last-child td {
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.25rem !important;
    font-weight: 900 !important;
    color: #0F172A !important;
}

/* 6. Bottom Clean Actions */
.tc-ty-clean-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    padding: 20px 0 0 0 !important; /* Zero left/right padding */
    border-top: 1px solid #E2E8F0;
    box-sizing: border-box !important;
}

.tc-btn-outline {
    background: #ffffff !important;
    color: #334155 !important;
    border: 1px solid #CBD5E1 !important;
    font-size: 0.84rem !important;
    font-weight: 600 !important;
    padding: 8px 16px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: all 0.15s ease !important;
    cursor: pointer !important;
}

.tc-btn-outline:hover {
    border-color: #0F172A !important;
    color: #0F172A !important;
    background: #F8FAFC !important;
}

/* Failed state clean */
.tc-ty-failed-clean {
    background: transparent;
    border-top: 1px solid #FCA5A5;
    border-bottom: 1px solid #FCA5A5;
    padding: 24px 0;
}

/* Mobile responsive enhancements strictly inside .tc-thankyou-clean */
@media (max-width: 768px) {
    .tc-ty-main-title {
        font-size: 1.45rem !important;
        line-height: 1.25 !important;
    }
    .tc-ty-summary-strip {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 14px 16px !important;
        padding: 14px 0 !important;
    }
    /* Let email take full width on mobile so long emails never break the grid */
    .tc-ty-sum-col:nth-child(3) {
        grid-column: 1 / -1 !important;
    }
    .tc-ty-download-row {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 14px !important;
    }
    .tc-btn-dl {
        width: 100% !important;
        justify-content: center !important;
        text-align: center !important;
    }
    .tc-ty-wa-strip {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
    }
    .tc-ty-clean-actions {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
    }
    .tc-btn-outline {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* ==========================================================================
   SINGLE PRODUCT SEO ENHANCEMENTS: TECH STACK BADGES, FEATURED SNIPPET TABLE,
   COMMERCIAL LICENSING & E-E-A-T QUALITY SIGNALS
   ========================================================================== */

/* 1. High-Intent Tech Stack & SERP Rating Badges (Under H1) */
.single-product .tc-product-seo-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
    margin-top: 10px;
    margin-bottom: 18px;
}

.single-product .tc-seo-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.82rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 6px;
    line-height: 1.3;
    transition: all 0.2s ease;
}

.single-product .tc-badge-rating {
    background: #FFFBEB;
    color: #92400E;
    border: 1px solid #FDE68A;
    padding: 4px 10px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.single-product .tc-stars-gold {
    color: #F59E0B;
    font-size: 0.95rem;
    letter-spacing: 1px;
}

.single-product .tc-rating-num {
    font-weight: 800;
    color: #78350F;
    font-size: 0.86rem;
}

.single-product .tc-rating-cnt {
    color: #92400E;
    font-weight: 500;
    font-size: 0.78rem;
}

.single-product .tc-badge-dot-sep {
    color: #CBD5E1;
    font-size: 1rem;
    user-select: none;
}

.single-product .tc-badge-stack {
    background: #F1F5F9;
    color: #334155;
    border: 1px solid #E2E8F0;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.78rem;
    font-weight: 700;
}

.single-product .tc-dot-code {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #845EC2;
    display: inline-block;
}

.single-product .tc-badge-feature {
    background: #F0FDF4;
    color: #166534;
    border: 1px solid #BBF7D0;
    font-size: 0.8rem;
}

.single-product .tc-badge-commercial {
    background: #FAF5FF;
    color: #6B21A8;
    border: 1px solid #E9D5FF;
    font-size: 0.8rem;
}

/* 2. Technical Specifications Section & Featured Snippet Table */
.single-product .tc-seo-specs-section {
    margin-top: 50px;
    margin-bottom: 55px;
    clear: both;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.single-product .tc-specs-table-wrapper {
    background: #ffffff;
    border: 1px solid #E2E8F0;
    border-radius: 20px;
    padding: 34px 38px;
    box-shadow: 0 4px 24px rgba(15, 23, 42, 0.04);
    margin-bottom: 35px;
}

.single-product .tc-specs-header {
    margin-bottom: 24px;
}

.single-product .tc-specs-header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 12px;
}

.single-product .tc-specs-kicker {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #845EC2;
    background: linear-gradient(135deg, rgba(132, 94, 194, 0.1), rgba(214, 93, 177, 0.1));
    border: 1px solid rgba(132, 94, 194, 0.22);
    padding: 5px 14px;
    border-radius: 999px;
}

.single-product .tc-specs-meta-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 0.76rem;
    font-weight: 700;
    color: #047857;
    background: #ECFDF5;
    border: 1px solid #A7F3D0;
    padding: 4px 12px;
    border-radius: 999px;
}

.single-product .tc-meta-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #10B981;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.25);
    display: inline-block;
}

.single-product .tc-specs-heading {
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 1.55rem;
    font-weight: 800;
    color: #0F172A;
    letter-spacing: -0.02em;
    margin: 0 0 8px 0;
}

.single-product .tc-specs-subtext {
    font-size: 0.94rem;
    color: #64748B;
    margin: 0;
    line-height: 1.5;
}

.single-product .tc-specs-table-container {
    border: 1px solid #E2E8F0;
    border-radius: 16px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
}

.single-product .tc-seo-spec-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.92rem;
    text-align: left;
    margin: 0;
    background: #ffffff;
}

.single-product .tc-spec-row {
    border-bottom: 1px solid #F1F5F9;
    transition: background-color 0.15s ease;
}

.single-product .tc-spec-row:last-child {
    border-bottom: none;
}

.single-product .tc-spec-row:hover {
    background-color: #FAFAFD;
}

.single-product .tc-seo-spec-table th[scope="row"] {
    width: 270px;
    min-width: 240px;
    padding: 18px 22px;
    background-color: #F8FAFC;
    border-right: 1px solid #F1F5F9;
    vertical-align: top;
}

.single-product .tc-th-content {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.single-product .tc-th-icon-box {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.single-product .tc-icon-files { background: #EEF2FF; color: #4F46E5; }
.single-product .tc-icon-responsive { background: #ECFDF5; color: #059669; }
.single-product .tc-icon-browsers { background: #F0F9FF; color: #0284C7; }
.single-product .tc-icon-stack { background: #FAF5FF; color: #7C3AED; }
.single-product .tc-icon-server { background: #FFFBEB; color: #D97706; }
.single-product .tc-icon-license { background: #FDF2F8; color: #DB2777; }
.single-product .tc-icon-docs { background: #F0FDFA; color: #0D9488; }
.single-product .tc-icon-delivery { background: #FEF2F2; color: #DC2626; }

.single-product .tc-th-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.single-product .tc-th-title {
    font-size: 0.92rem;
    font-weight: 700;
    color: #0F172A;
    line-height: 1.35;
}

.single-product .tc-th-sub {
    font-size: 0.74rem;
    font-weight: 500;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.single-product .tc-seo-spec-table td {
    padding: 18px 24px;
    color: #334155;
    line-height: 1.5;
    vertical-align: middle;
}

.single-product .tc-td-val-wrap {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* Format chips */
.single-product .tc-chip-group {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 8px;
}

.single-product .tc-chip {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.76rem;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 6px;
    letter-spacing: 0.02em;
}

.single-product .tc-chip-html { background: #FFF7ED; color: #C2410C; border: 1px solid #FFEDD5; }
.single-product .tc-chip-css { background: #EFF6FF; color: #1D4ED8; border: 1px solid #DBEAFE; }
.single-product .tc-chip-js { background: #FEFCE8; color: #A16207; border: 1px solid #FEF08A; }
.single-product .tc-chip-php { background: #FAF5FF; color: #6B21A8; border: 1px solid #F3E8FF; }
.single-product .tc-chip-scss { background: #FDF2F8; color: #BE185D; border: 1px solid #FCE7F3; }
.single-product .tc-chip-db { background: #F1F5F9; color: #334155; border: 1px solid #CBD5E1; }

/* Browser group */
.single-product .tc-browser-group {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 8px;
}

.single-product .tc-browser-pill {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    color: #1E293B;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 4px 11px;
    border-radius: 6px;
}

/* Status pills */
.single-product .tc-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.84rem;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 8px;
    line-height: 1.4;
}

.single-product .tc-status-active { background: #DCFCE7; color: #15803D; border: 1px solid #BBF7D0; }
.single-product .tc-status-license { background: #FAF5FF; color: #6B21A8; border: 1px solid #E9D5FF; }
.single-product .tc-status-docs { background: #F0FDFA; color: #0F766E; border: 1px solid #CCFBF1; }
.single-product .tc-status-instant { background: #FFFBEB; color: #92400E; border: 1px solid #FDE68A; }

.single-product .tc-server-chip {
    display: inline-block;
    background: #F8FAFC;
    border: 1px solid #CBD5E1;
    color: #0F172A;
    font-family: ui-monospace, monospace;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 6px;
    margin-right: 6px;
    margin-bottom: 4px;
}

.single-product .tc-val-note {
    font-size: 0.82rem;
    color: #64748B;
    margin-top: 5px;
    line-height: 1.45;
}

.single-product .tc-val-headline {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 0.92rem;
    font-weight: 600;
    color: #1E293B;
}

.single-product .tc-highlight-text {
    color: #845EC2;
    font-weight: 800;
}

.single-product .tc-dot-inline {
    color: #CBD5E1;
    font-size: 0.9rem;
}

/* 3. E-E-A-T & Commercial Licensing Dual Cards */
.single-product .tc-eeat-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-top: 10px;
}

.single-product .tc-eeat-card {
    background: #ffffff;
    border: 1px solid #E2E8F0;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.single-product .tc-eeat-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.74rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 4px 10px;
    border-radius: 20px;
    margin-bottom: 12px;
}

.single-product .tc-badge-purple {
    background: rgba(132, 94, 194, 0.1);
    color: #845EC2;
}

.single-product .tc-badge-green {
    background: rgba(16, 185, 129, 0.12);
    color: #059669;
}

.single-product .tc-eeat-card-title {
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--tc-dark, #1E293B);
    margin: 0 0 8px 0;
    letter-spacing: -0.01em;
}

.single-product .tc-eeat-card-desc {
    font-size: 0.9rem;
    color: #64748B;
    margin: 0 0 20px 0;
    line-height: 1.5;
}

.single-product .tc-license-allow-block {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 18px;
    margin-bottom: 16px;
}

.single-product .tc-license-restrict-block {
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: 12px;
    padding: 16px 18px;
}

.single-product .tc-license-subheading {
    font-size: 0.86rem;
    font-weight: 800;
    margin: 0 0 10px 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

.single-product .tc-allow-title {
    color: #15803D;
}

.single-product .tc-restrict-title {
    color: #B91C1C;
}

.single-product .tc-icon-circle-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: #22C55E;
    color: #ffffff;
    font-size: 11px;
    font-weight: 900;
    border-radius: 50%;
}

.single-product .tc-icon-circle-cross {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: #EF4444;
    color: #ffffff;
    font-size: 11px;
    font-weight: 900;
    border-radius: 50%;
}

.single-product .tc-license-list {
    margin: 0;
    padding: 0 0 0 18px;
    font-size: 0.85rem;
    color: #334155;
    line-height: 1.6;
}

.single-product .tc-license-list li {
    margin-bottom: 6px;
}

.single-product .tc-license-list li:last-child {
    margin-bottom: 0;
}

.single-product .tc-restrict-list {
    color: #991B1B;
}

/* Trust Pillar Items (E-E-A-T Guarantee) */
.single-product .tc-trust-pillar-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 12px 0;
    border-bottom: 1px solid #F1F5F9;
}

.single-product .tc-trust-pillar-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.single-product .tc-pillar-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.single-product .tc-pillar-w3c {
    background: #EFF6FF;
    color: #2563EB;
}

.single-product .tc-pillar-clean {
    background: #F5F3FF;
    color: #7C3AED;
}

.single-product .tc-pillar-secure {
    background: #ECFDF5;
    color: #059669;
}

.single-product .tc-pillar-support {
    background: #FEF3C7;
    color: #D97706;
}

.single-product .tc-pillar-text strong {
    display: block;
    font-size: 0.92rem;
    color: #1E293B;
    margin-bottom: 3px;
}

.single-product .tc-pillar-text p {
    font-size: 0.84rem;
    color: #64748B;
    margin: 0;
    line-height: 1.45;
}

/* Screen reader only utility */
.single-product .tc-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* Responsive Breakpoints for Table & E-E-A-T Section */
@media (max-width: 900px) {
    .single-product .tc-eeat-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .single-product .tc-specs-table-wrapper {
        padding: 28px 24px;
    }
}

/* Mobile Adaptive Layout for Code & Compatibility Breakdown (Under 768px) */
@media (max-width: 768px) {
    .single-product .tc-specs-table-wrapper {
        padding: 22px 16px !important;
        border-radius: 16px !important;
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.03) !important;
    }

    .single-product .tc-specs-header {
        margin-bottom: 20px !important;
    }

    .single-product .tc-specs-header-top {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
        margin-bottom: 10px !important;
    }

    .single-product .tc-specs-heading {
        font-size: 1.3rem !important;
        line-height: 1.3 !important;
    }

    .single-product .tc-specs-subtext {
        font-size: 0.88rem !important;
    }

    /* Transform table into native mobile stacked cards */
    .single-product .tc-specs-table-container {
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
        border-radius: 0 !important;
    }

    .single-product .tc-seo-spec-table,
    .single-product .tc-seo-spec-table tbody {
        display: block !important;
        width: 100% !important;
    }

    .single-product .tc-spec-row {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        background: #ffffff !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 14px !important;
        padding: 16px 16px !important;
        margin-bottom: 12px !important;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02) !important;
    }

    .single-product .tc-spec-row:last-child {
        margin-bottom: 0 !important;
    }

    .single-product .tc-seo-spec-table th[scope="row"] {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        background: transparent !important;
        border: none !important;
        border-bottom: 1px dashed #E2E8F0 !important;
        padding: 0 0 12px 0 !important;
        margin-bottom: 12px !important;
    }

    .single-product .tc-th-content {
        align-items: center !important;
        gap: 12px !important;
    }

    .single-product .tc-th-icon-box {
        width: 34px !important;
        height: 34px !important;
    }

    .single-product .tc-th-title {
        font-size: 0.94rem !important;
    }

    .single-product .tc-th-sub {
        font-size: 0.72rem !important;
    }

    .single-product .tc-seo-spec-table td {
        display: block !important;
        width: 100% !important;
        padding: 0 !important;
        border: none !important;
    }

    .single-product .tc-chip-group,
    .single-product .tc-browser-group {
        gap: 6px !important;
    }

    .single-product .tc-chip {
        padding: 4px 8px !important;
        font-size: 0.72rem !important;
    }

    .single-product .tc-browser-pill {
        padding: 3px 9px !important;
        font-size: 0.76rem !important;
    }

    .single-product .tc-status-pill {
        font-size: 0.8rem !important;
        padding: 4px 10px !important;
    }

    .single-product .tc-val-note {
        font-size: 0.8rem !important;
        line-height: 1.4 !important;
    }

    .single-product .tc-product-seo-badges {
        gap: 6px !important;
    }

    .single-product .tc-eeat-card {
        padding: 22px 18px !important;
    }

    /* Mobile Product Short Description */
    .single-product .woocommerce-product-details__short-description {
        margin: 14px 0 18px 0 !important;
        font-size: 0.91rem !important;
        line-height: 1.62 !important;
    }

    .single-product .woocommerce-product-details__short-description p {
        font-size: 0.91rem !important;
        line-height: 1.62 !important;
        margin-bottom: 11px !important;
    }

    .single-product .woocommerce-product-details__short-description ul,
    .single-product .woocommerce-product-details__short-description ol {
        margin-top: 11px !important;
        gap: 7px !important;
    }

    .single-product .woocommerce-product-details__short-description ul li,
    .single-product .woocommerce-product-details__short-description ol li {
        padding: 8px 11px !important;
        font-size: 0.86rem !important;
        line-height: 1.45 !important;
        border-radius: 8px !important;
    }
}





