/**
 * Canndex Additional Components
 *
 * @package Canndex
 */

/* ========================================
   TEXT UTILITIES
   ======================================== */

.hc-text-gradient {
    background: var(--hc-accent-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ========================================
   SINGLE PRODUCT PAGE
   ======================================== */

.hc-single-product {
    padding: var(--hc-space-xl) 0 var(--hc-space-2xl);
}

/* Breadcrumb */
.hc-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--hc-space-sm);
    margin-bottom: var(--hc-space-xl);
    font-size: 0.9rem;
}

.hc-breadcrumb a {
    color: var(--hc-text-muted);
}

.hc-breadcrumb a:hover {
    color: var(--hc-accent-primary);
}

.hc-breadcrumb__sep {
    color: var(--hc-text-muted);
}

.hc-breadcrumb__current {
    color: var(--hc-text-secondary);
}

/* Product Grid */
.hc-single-product__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--hc-space-2xl);
    margin-bottom: var(--hc-space-2xl);
}

@media (max-width: 968px) {
    .hc-single-product__grid {
        grid-template-columns: 1fr;
    }
}

/* Image Column */
.hc-single-product__image-wrapper {
    position: relative;
    border-radius: var(--hc-radius-lg);
    overflow: hidden;
    background: var(--hc-bg-card);
    aspect-ratio: 1;
}

.hc-single-product__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hc-single-product__image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-bg-secondary);
    color: var(--hc-text-muted);
}

.hc-single-product__badge {
    position: absolute;
    top: var(--hc-space-lg);
    left: var(--hc-space-lg);
}

/* Details Column */
.hc-single-product__header {
    margin-bottom: var(--hc-space-lg);
}

.hc-single-product__category {
    display: inline-block;
    font-size: 0.85rem;
    color: var(--hc-accent-primary);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: var(--hc-space-sm);
}

.hc-single-product__title {
    font-size: 2rem;
    margin-bottom: var(--hc-space-sm);
}

.hc-single-product__manufacturer {
    color: var(--hc-text-muted);
    font-size: 0.95rem;
    margin-bottom: var(--hc-space-md);
}

.hc-single-product__manufacturer a {
    color: var(--hc-text-secondary);
}

/* Price Box */
.hc-single-product__price-box {
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-lg);
    margin-bottom: var(--hc-space-lg);
}

.hc-single-product__price-header {
    display: flex;
    align-items: baseline;
    gap: var(--hc-space-md);
    margin-bottom: var(--hc-space-md);
}

.hc-single-product__price-label {
    font-size: 0.9rem;
    color: var(--hc-text-muted);
}

.hc-single-product__price-value {
    font-family: var(--hc-font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--hc-accent-primary);
}

.hc-single-product__price-value small {
    font-size: 1rem;
    color: var(--hc-text-muted);
    font-weight: 400;
}

/* Specs Grid */
.hc-single-product__specs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--hc-space-md);
    margin-bottom: var(--hc-space-lg);
}

.hc-spec {
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-md);
    padding: var(--hc-space-md);
}

.hc-spec--full {
    grid-column: 1 / -1;
}

.hc-spec__label {
    display: block;
    font-size: 0.8rem;
    color: var(--hc-text-muted);
    margin-bottom: 4px;
}

.hc-spec__value {
    font-weight: 600;
    color: var(--hc-text-primary);
}

/* Effects */
.hc-single-product__effects h4 {
    font-size: 1rem;
    margin-bottom: var(--hc-space-md);
    color: var(--hc-text-secondary);
}

.hc-effects-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hc-space-sm);
}

.hc-effect-tag {
    padding: 6px 12px;
    background: rgba(0, 212, 170, 0.1);
    border: 1px solid rgba(0, 212, 170, 0.2);
    border-radius: var(--hc-radius-full);
    font-size: 0.85rem;
    color: var(--hc-accent-primary);
}

/* Description */
.hc-single-product__description {
    margin-bottom: var(--hc-space-2xl);
    padding-top: var(--hc-space-xl);
    border-top: 1px solid var(--hc-border-color);
}

.hc-single-product__description h2 {
    font-size: 1.5rem;
    margin-bottom: var(--hc-space-lg);
}

.hc-single-product__content {
    color: var(--hc-text-secondary);
    line-height: 1.8;
}

.hc-single-product__content p {
    margin-bottom: var(--hc-space-md);
}

/* Price Comparison */
.hc-single-product__comparison {
    padding-top: var(--hc-space-xl);
    border-top: 1px solid var(--hc-border-color);
}

.hc-single-product__comparison h2 {
    font-size: 1.5rem;
    margin-bottom: var(--hc-space-sm);
}

.hc-single-product__comparison-subtitle {
    color: var(--hc-text-muted);
    margin-bottom: var(--hc-space-xl);
}

/* ========================================
   PHARMACY LIST (Price Comparison)
   ======================================== */

.hc-pharmacy-list {
    display: flex;
    flex-direction: column;
    gap: var(--hc-space-md);
}

.hc-pharmacy-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--hc-space-lg);
    padding: var(--hc-space-lg);
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-lg);
    transition: all 0.2s ease;
}

.hc-pharmacy-item:hover {
    border-color: var(--hc-border-hover);
}

.hc-pharmacy-item--cheapest {
    border-color: var(--hc-accent-primary);
    background: linear-gradient(135deg, rgba(0, 212, 170, 0.05) 0%, transparent 100%);
}

.hc-pharmacy-item__info {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    flex: 1;
}

.hc-pharmacy-item__logo {
    width: 64px;
    height: 64px;
    border-radius: var(--hc-radius-md);
    object-fit: contain;
    background: white;
    padding: 8px;
    flex-shrink: 0;
}

.hc-pharmacy-item__logo--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-bg-secondary);
    color: var(--hc-text-muted);
}

.hc-pharmacy-item__details {
    flex: 1;
}

.hc-pharmacy-item__name {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 4px;
}

.hc-verified-badge {
    color: var(--hc-accent-primary);
}

.hc-pharmacy-item__meta {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    margin-bottom: 4px;
}

.hc-pharmacy-item__rating {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
    color: var(--hc-warning);
}

.hc-pharmacy-item__delivery {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
    color: var(--hc-text-muted);
}

.hc-pharmacy-item__delivery svg {
    opacity: 0.7;
}

.hc-pharmacy-item__stock {
    font-size: 0.85rem;
    font-weight: 500;
}

.hc-pharmacy-item__stock.in-stock {
    color: var(--hc-success);
}

.hc-pharmacy-item__stock.low-stock {
    color: var(--hc-warning);
}

.hc-pharmacy-item__stock.out-of-stock {
    color: var(--hc-error);
}

.hc-pharmacy-item__shipping {
    font-size: 0.8rem;
    color: var(--hc-text-muted);
}

.hc-pharmacy-item__action {
    display: flex;
    align-items: center;
    gap: var(--hc-space-lg);
}

.hc-pharmacy-item__price {
    text-align: right;
}

.hc-pharmacy-item__best-label {
    display: block;
    font-size: 0.75rem;
    color: var(--hc-accent-primary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
}

.hc-pharmacy-item__price-value {
    font-family: var(--hc-font-display);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--hc-accent-primary);
}

.hc-pharmacy-item__price-unit {
    font-size: 0.9rem;
    color: var(--hc-text-muted);
}

@media (max-width: 768px) {
    .hc-pharmacy-item {
        flex-direction: column;
        text-align: center;
    }

    .hc-pharmacy-item__info {
        flex-direction: column;
    }

    .hc-pharmacy-item__action {
        flex-direction: column;
        width: 100%;
    }

    .hc-pharmacy-item__price {
        text-align: center;
    }

    .hc-pharmacy-item .hc-btn {
        width: 100%;
    }
}

/* ========================================
   ARCHIVE PAGE
   ======================================== */

.hc-archive {
    padding: var(--hc-space-xl) 0 var(--hc-space-2xl);
}

.hc-archive__header {
    text-align: center;
    margin-bottom: var(--hc-space-xl);
}

.hc-archive__title {
    font-size: 2rem;
    margin-bottom: var(--hc-space-sm);
}

.hc-archive__description {
    color: var(--hc-text-secondary);
    max-width: 600px;
    margin: 0 auto;
}

/* ========================================
   FILTER BAR
   ======================================== */

.hc-filter-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--hc-space-md);
    margin-bottom: var(--hc-space-lg);
    padding: var(--hc-space-md) 0;
}

.hc-filter-bar__count {
    font-size: 0.9rem;
    color: var(--hc-text-muted);
}

.hc-filter-bar__right {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
}

.hc-sort-select {
    padding: var(--hc-space-sm) var(--hc-space-md);
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-sm);
    color: var(--hc-text-primary);
    font-size: 0.9rem;
    cursor: pointer;
}

.hc-sort-select:focus {
    outline: none;
    border-color: var(--hc-accent-primary);
}

/* Filter Button Count */
.hc-filter-btn__count {
    margin-left: var(--hc-space-xs);
    padding: 2px 6px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: var(--hc-radius-sm);
    font-size: 0.75rem;
}

.hc-filter-btn.active .hc-filter-btn__count {
    background: rgba(0, 0, 0, 0.2);
}

/* ========================================
   LOAD MORE
   ======================================== */

.hc-load-more-wrapper {
    display: flex;
    justify-content: center;
    margin-top: var(--hc-space-2xl);
}

/* ========================================
   NO RESULTS
   ======================================== */

.hc-no-results {
    grid-column: 1 / -1;
    text-align: center;
    padding: var(--hc-space-2xl);
    color: var(--hc-text-muted);
}

.hc-no-results svg {
    margin-bottom: var(--hc-space-lg);
    opacity: 0.5;
}

.hc-no-results h3 {
    font-size: 1.25rem;
    margin-bottom: var(--hc-space-sm);
    color: var(--hc-text-secondary);
}

/* ========================================
   LOADING STATE
   ======================================== */

.hc-products-grid.loading {
    opacity: 0.5;
    pointer-events: none;
}

.hc-products-grid.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px;
    border: 3px solid var(--hc-border-color);
    border-top-color: var(--hc-accent-primary);
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* ========================================
   PRODUCT CARD PLACEHOLDER IMAGE
   ======================================== */

.hc-product-card__image--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-bg-secondary);
    color: var(--hc-text-muted);
    width: 100%;
    height: 100%;
}

/* ========================================
   PRODUCT CARD LINK
   ======================================== */

.hc-product-card__link {
    display: block;
    color: inherit;
    text-decoration: none;
}

/* ========================================
   NAV DROPDOWN
   ======================================== */

.hc-nav__dropdown {
    position: relative;
}

.hc-nav__dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-md);
    box-shadow: var(--hc-shadow-lg);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.2s ease;
    z-index: 100;
}

.hc-nav__dropdown:hover .hc-nav__dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.hc-nav__dropdown-item {
    display: block;
    padding: var(--hc-space-sm) var(--hc-space-md);
    color: var(--hc-text-secondary);
    border-bottom: 1px solid var(--hc-border-color);
    transition: all 0.2s ease;
}

.hc-nav__dropdown-item:last-child {
    border-bottom: none;
}

.hc-nav__dropdown-item:hover {
    background: var(--hc-bg-card-hover);
    color: var(--hc-accent-primary);
}

/* ========================================
   FOOTER ADDITIONAL STYLES
   ======================================== */

.hc-footer__about {
    color: var(--hc-text-muted);
    font-size: 0.9rem;
    margin-top: var(--hc-space-md);
    line-height: 1.6;
}

.hc-footer__disclaimer {
    font-size: 0.8rem;
    color: var(--hc-text-muted);
}

/* ========================================
   MOBILE MENU ANIMATION
   ======================================== */

.hc-menu-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.hc-menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.hc-menu-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px);
}

/* ========================================
   SEARCH NO RESULTS
   ======================================== */

.hc-search__no-results {
    padding: var(--hc-space-lg);
    text-align: center;
    color: var(--hc-text-muted);
    font-size: 0.9rem;
}

.hc-search__show-all {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: var(--hc-space-sm) var(--hc-space-md);
    background: var(--hc-bg-subtle, #f3f4f6);
    color: var(--hc-primary);
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    border-top: 1px solid var(--hc-border-color);
    transition: background 0.2s ease, color 0.2s ease;
}

.hc-search__show-all:hover {
    background: var(--hc-primary);
    color: white;
}

.hc-search__show-all svg {
    flex-shrink: 0;
}

/* Search Categories */
.hc-search__category {
    border-bottom: 1px solid var(--hc-border-color);
}

.hc-search__category:last-child {
    border-bottom: none;
}

.hc-search__category-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--hc-bg-subtle, #f9fafb);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--hc-text-muted);
}

.hc-search__category-header svg {
    opacity: 0.7;
}

.hc-search__category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.625rem 1rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--hc-primary);
    text-decoration: none;
    transition: background 0.15s ease;
}

.hc-search__category-link:hover {
    background: rgba(16, 185, 129, 0.08);
}

.hc-search__category-link svg {
    opacity: 0.6;
    transition: transform 0.15s ease;
}

.hc-search__category-link:hover svg {
    transform: translateX(3px);
    opacity: 1;
}

/* Adjust search results container for categories */
.hc-search__results.active {
    max-height: 70vh;
    overflow-y: auto;
}

/* Scrollbar styling for search results */
.hc-search__results::-webkit-scrollbar {
    width: 6px;
}

.hc-search__results::-webkit-scrollbar-track {
    background: var(--hc-bg-subtle, #f3f4f6);
}

.hc-search__results::-webkit-scrollbar-thumb {
    background: var(--hc-border-color);
    border-radius: 3px;
}

.hc-search__results::-webkit-scrollbar-thumb:hover {
    background: var(--hc-text-muted);
}

/* Hero Search Results */
.hc-hero-search {
    position: relative;
}

.hc-hero-search__results {
    display: none;
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    right: 0;
    background: var(--hc-bg-card, white);
    border-radius: var(--hc-radius-lg, 12px);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    z-index: 100;
    max-height: 60vh;
    overflow-y: auto;
}

.hc-hero-search__results.active {
    display: block;
}

.hc-hero-search__results .hc-search__result-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    text-decoration: none;
    color: inherit;
    transition: background 0.15s ease;
}

.hc-hero-search__results .hc-search__result-item:hover {
    background: var(--hc-bg-subtle, #f9fafb);
}

.hc-hero-search__results .hc-search__result-image {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
}

.hc-hero-search__results .hc-search__result-info h4 {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--hc-text-primary);
}

.hc-hero-search__results .hc-search__result-info span {
    font-size: 0.8rem;
    color: var(--hc-text-muted);
}

/* ========================================
   WIDGET STYLES
   ======================================== */

.hc-widget {
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-lg);
    margin-bottom: var(--hc-space-lg);
}

.hc-widget__title {
    font-size: 1.1rem;
    margin-bottom: var(--hc-space-md);
    padding-bottom: var(--hc-space-sm);
    border-bottom: 1px solid var(--hc-border-color);
}

/* ========================================
   ENHANCED HERO SECTION
   ======================================== */

.hc-hero-enhanced {
    position: relative;
    padding: var(--hc-space-2xl) 0;
    min-height: 85vh;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.hc-hero-enhanced__bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    overflow: hidden;
}

.hc-hero-enhanced__shape {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.6;
    animation: float 20s ease-in-out infinite;
}

.hc-hero-enhanced__shape--1 {
    width: 600px;
    height: 600px;
    background: linear-gradient(135deg, rgba(0, 184, 148, 0.3) 0%, rgba(0, 152, 116, 0.1) 100%);
    top: -200px;
    right: -100px;
    animation-delay: 0s;
}

.hc-hero-enhanced__shape--2 {
    width: 400px;
    height: 400px;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.2) 0%, rgba(147, 51, 234, 0.1) 100%);
    bottom: -100px;
    left: -100px;
    animation-delay: -5s;
}

.hc-hero-enhanced__shape--3 {
    width: 300px;
    height: 300px;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.2) 0%, rgba(239, 68, 68, 0.1) 100%);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation-delay: -10s;
}

@keyframes float {
    0%, 100% { transform: translate(0, 0) scale(1); }
    25% { transform: translate(30px, -30px) scale(1.05); }
    50% { transform: translate(-20px, 20px) scale(0.95); }
    75% { transform: translate(20px, 10px) scale(1.02); }
}

.hc-hero-enhanced__content {
    position: relative;
    z-index: 1;
    max-width: 700px;
    margin-bottom: var(--hc-space-2xl);
}

.hc-hero-enhanced__badge {
    display: inline-block;
    padding: 8px 16px;
    background: var(--hc-accent-light);
    border: 1px solid var(--hc-border-hover);
    border-radius: var(--hc-radius-full);
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--hc-accent-primary);
    margin-bottom: var(--hc-space-lg);
}

.hc-hero-enhanced__title {
    font-size: clamp(2.5rem, 6vw, 4rem);
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: var(--hc-space-lg);
    color: var(--hc-text-primary);
}

.hc-hero-enhanced__subtitle {
    font-size: 1.2rem;
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin-bottom: var(--hc-space-xl);
}

/* Hero Search */
.hc-hero-search {
    max-width: 600px;
}

.hc-hero-search__wrapper {
    display: flex;
    align-items: center;
    background: var(--hc-bg-card);
    border: 2px solid var(--hc-border-color);
    border-radius: var(--hc-radius-xl);
    padding: 6px;
    box-shadow: var(--hc-shadow-lg);
    transition: all 0.3s ease;
}

.hc-hero-search__wrapper:focus-within {
    border-color: var(--hc-accent-primary);
    box-shadow: var(--hc-shadow-glow);
}

.hc-hero-search__icon {
    margin-left: var(--hc-space-md);
    color: var(--hc-text-muted);
}

.hc-hero-search__input {
    flex: 1;
    padding: var(--hc-space-md);
    border: none;
    background: transparent;
    font-size: 1rem;
    color: var(--hc-text-primary);
}

.hc-hero-search__input::placeholder {
    color: var(--hc-text-muted);
}

.hc-hero-search__input:focus {
    outline: none;
}

.hc-hero-search__btn {
    padding: var(--hc-space-md) var(--hc-space-xl);
    background: var(--hc-accent-gradient);
    border: none;
    border-radius: var(--hc-radius-lg);
    color: #ffffff;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.hc-hero-search__btn:hover {
    transform: translateY(-2px);
    box-shadow: var(--hc-shadow-glow);
}

.hc-hero-search__popular {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--hc-space-sm);
    margin-top: var(--hc-space-md);
    font-size: 0.9rem;
}

.hc-hero-search__popular span {
    color: var(--hc-text-muted);
}

.hc-hero-search__popular a {
    padding: 4px 12px;
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-full);
    color: var(--hc-text-secondary);
    transition: all 0.2s ease;
}

.hc-hero-search__popular a:hover {
    border-color: var(--hc-accent-primary);
    color: var(--hc-accent-primary);
}

/* Hero Stats */
.hc-hero-stats {
    display: flex;
    gap: var(--hc-space-lg);
    flex-wrap: wrap;
}

.hc-hero-stat-card {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    padding: var(--hc-space-lg);
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-lg);
    box-shadow: var(--hc-shadow-md);
}

.hc-hero-stat-card__icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-md);
    color: var(--hc-accent-primary);
}

.hc-hero-stat-card__value {
    font-family: var(--hc-font-display);
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--hc-text-primary);
}

.hc-hero-stat-card__label {
    font-size: 0.85rem;
    color: var(--hc-text-muted);
}

.hc-animate-float {
    animation: floatCard 6s ease-in-out infinite;
    animation-delay: var(--delay, 0s);
}

@keyframes floatCard {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

/* ========================================
   SECTION STYLES
   ======================================== */

.hc-section-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto var(--hc-space-2xl);
}

.hc-section-label {
    display: inline-block;
    padding: 6px 14px;
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-full);
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--hc-accent-primary);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: var(--hc-space-md);
}

.hc-section-title {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 700;
    margin-bottom: var(--hc-space-md);
    color: var(--hc-text-primary);
}

.hc-section-subtitle {
    font-size: 1.1rem;
    color: var(--hc-text-secondary);
}

.hc-section-cta {
    text-align: center;
    margin-top: var(--hc-space-2xl);
}

/* ========================================
   HOW IT WORKS - STEPS
   ======================================== */

.hc-how-it-works {
    background: var(--hc-bg-secondary);
}

.hc-steps {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: var(--hc-space-md);
    flex-wrap: wrap;
}

.hc-step {
    flex: 1;
    min-width: 250px;
    max-width: 320px;
    text-align: center;
    padding: var(--hc-space-xl);
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-xl);
    box-shadow: var(--hc-shadow-sm);
    position: relative;
    transition: all 0.3s ease;
}

.hc-step:hover {
    transform: translateY(-8px);
    box-shadow: var(--hc-shadow-lg);
}

.hc-step__number {
    position: absolute;
    top: -16px;
    left: 50%;
    transform: translateX(-50%);
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-accent-gradient);
    border-radius: 50%;
    color: #ffffff;
    font-weight: 700;
    font-size: 0.9rem;
}

.hc-step__icon {
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto var(--hc-space-lg);
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-lg);
    color: var(--hc-accent-primary);
}

.hc-step__title {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: var(--hc-space-sm);
    color: var(--hc-text-primary);
}

.hc-step__description {
    font-size: 0.95rem;
    color: var(--hc-text-secondary);
    line-height: 1.6;
}

.hc-step__connector {
    width: 60px;
    height: 2px;
    background: var(--hc-border-color);
    margin-top: 100px;
}

@media (max-width: 968px) {
    .hc-step__connector {
        display: none;
    }
}

/* ========================================
   CATEGORY SHOWCASE
   ======================================== */

.hc-categories-showcase {
    background: var(--hc-bg-primary);
}

.hc-category-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--hc-space-lg);
}

.hc-category-card {
    position: relative;
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-xl);
    overflow: hidden;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 1px solid var(--hc-border-color);
}

.hc-category-card__image {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: var(--hc-bg-primary);
}

.hc-category-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.hc-category-card:hover .hc-category-card__image img {
    transform: scale(1.1);
}

.hc-category-card__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
    color: #94a3b8;
    gap: var(--hc-space-sm);
}

.hc-category-card__placeholder svg {
    opacity: 0.5;
}

.hc-category-card__placeholder span {
    font-size: 0.75rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.hc-category-card__content {
    padding: var(--hc-space-lg);
}

.hc-category-card__title {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--hc-text-primary);
    margin-bottom: var(--hc-space-xs);
}

.hc-category-card__count {
    font-size: 0.875rem;
    color: var(--hc-text-muted);
}

.hc-category-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--hc-shadow-lg);
    border-color: var(--hc-accent-primary);
}

@media (max-width: 1024px) {
    .hc-category-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .hc-category-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   TRUST SECTION
   ======================================== */

.hc-trust-section {
    background: linear-gradient(135deg, var(--hc-bg-secondary) 0%, var(--hc-bg-primary) 100%);
}

.hc-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--hc-space-xl);
}

.hc-trust-item {
    text-align: center;
    padding: var(--hc-space-lg);
}

.hc-trust-item__icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto var(--hc-space-md);
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-lg);
    color: var(--hc-accent-primary);
}

.hc-trust-item__title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: var(--hc-space-sm);
    color: var(--hc-text-primary);
}

.hc-trust-item__text {
    font-size: 0.9rem;
    color: var(--hc-text-secondary);
}

@media (max-width: 968px) {
    .hc-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .hc-trust-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   FAQ SECTION
   ======================================== */

.hc-faq-section {
    background: var(--hc-bg-secondary);
}

.hc-faq-list {
    max-width: 800px;
    margin: 0 auto;
}

.hc-faq-item {
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-lg);
    margin-bottom: var(--hc-space-md);
    overflow: hidden;
    transition: all 0.3s ease;
}

.hc-faq-item:hover {
    border-color: var(--hc-border-hover);
}

.hc-faq-item__question {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--hc-space-lg);
    background: transparent;
    border: none;
    font-size: 1rem;
    font-weight: 600;
    color: var(--hc-text-primary);
    cursor: pointer;
    text-align: left;
}

.hc-faq-item__question svg {
    flex-shrink: 0;
    color: var(--hc-text-muted);
    transition: transform 0.3s ease;
}

.hc-faq-item.active .hc-faq-item__question svg {
    transform: rotate(180deg);
}

.hc-faq-item__answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.hc-faq-item.active .hc-faq-item__answer {
    max-height: 500px;
}

.hc-faq-item__answer p {
    padding: 0 var(--hc-space-lg) var(--hc-space-lg);
    color: var(--hc-text-secondary);
    line-height: 1.7;
}

/* ========================================
   CTA SECTION
   ======================================== */

.hc-cta-section {
    padding: var(--hc-space-xl) 0 var(--hc-space-2xl);
}

.hc-cta-card {
    position: relative;
    padding: var(--hc-space-2xl);
    border-radius: var(--hc-radius-xl);
    overflow: hidden;
    text-align: center;
}

.hc-cta-card__bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--hc-accent-gradient);
    z-index: 0;
}

.hc-cta-card__bg::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 60%);
    animation: rotate 30s linear infinite;
}

@keyframes rotate {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.hc-cta-card__content {
    position: relative;
    z-index: 1;
}

.hc-cta-card__title {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 800;
    color: #ffffff;
    margin-bottom: var(--hc-space-md);
}

.hc-cta-card__text {
    font-size: 1.1rem;
    color: rgba(255,255,255,0.9);
    margin-bottom: var(--hc-space-xl);
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

.hc-cta-card .hc-btn--primary {
    background: #ffffff;
    color: var(--hc-accent-primary);
}

.hc-cta-card .hc-btn--primary:hover {
    background: rgba(255,255,255,0.9);
}

/* ========================================
   ANIMATIONS ON SCROLL
   ======================================== */

.hc-animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    transition-delay: var(--delay, 0s);
}

.hc-animate-on-scroll.hc-animated {
    opacity: 1;
    transform: translateY(0);
}

/* ========================================
   BUTTON VARIANTS
   ======================================== */

.hc-btn--large {
    padding: var(--hc-space-lg) var(--hc-space-2xl);
    font-size: 1.1rem;
}

.hc-btn--large svg {
    margin-left: var(--hc-space-sm);
}

/* ========================================
   RESPONSIVE HERO
   ======================================== */

@media (max-width: 768px) {
    .hc-hero-enhanced {
        min-height: auto;
        padding: var(--hc-space-xl) 0;
    }

    .hc-hero-enhanced__title {
        font-size: 2rem;
    }

    .hc-hero-stats {
        flex-direction: column;
    }

    .hc-hero-stat-card {
        width: 100%;
    }

    .hc-hero-search__wrapper {
        flex-direction: column;
        gap: var(--hc-space-sm);
        padding: var(--hc-space-md);
    }

    .hc-hero-search__btn {
        width: 100%;
    }
}

/* ========================================
   PAGE HEADER
   ======================================== */

.hc-page-header {
    padding: var(--hc-space-2xl) 0 var(--hc-space-xl);
    background: linear-gradient(135deg, var(--hc-bg-secondary) 0%, var(--hc-bg-primary) 100%);
    text-align: center;
}

.hc-page-header__title {
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--hc-text-primary);
    margin-bottom: var(--hc-space-sm);
}

.hc-page-header__subtitle {
    font-size: 1.125rem;
    color: var(--hc-text-secondary);
    max-width: 600px;
    margin: 0 auto;
}

/* ========================================
   BLOG / MAGAZIN
   ======================================== */

.hc-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--hc-space-xl);
}

.hc-blog-card {
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-xl);
    overflow: hidden;
    border: 1px solid var(--hc-border-color);
    transition: all 0.3s ease;
}

.hc-blog-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--hc-shadow-lg);
    border-color: var(--hc-accent-primary);
}

.hc-blog-card__image {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--hc-bg-primary);
}

.hc-blog-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.hc-blog-card:hover .hc-blog-card__image img {
    transform: scale(1.1);
}

.hc-blog-card__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
    color: #94a3b8;
}

.hc-blog-card__content {
    padding: var(--hc-space-lg);
}

.hc-blog-card__meta {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    margin-bottom: var(--hc-space-sm);
    font-size: 0.8rem;
}

.hc-blog-card__category {
    background: var(--hc-accent-light);
    color: var(--hc-accent-primary);
    padding: 4px 10px;
    border-radius: var(--hc-radius-sm);
    font-weight: 600;
}

.hc-blog-card__date {
    color: var(--hc-text-muted);
}

.hc-blog-card__title {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: var(--hc-space-sm);
}

.hc-blog-card__title a {
    color: var(--hc-text-primary);
    text-decoration: none;
}

.hc-blog-card__title a:hover {
    color: var(--hc-accent-primary);
}

.hc-blog-card__excerpt {
    color: var(--hc-text-secondary);
    font-size: 0.95rem;
    line-height: 1.6;
    margin-bottom: var(--hc-space-md);
}

.hc-blog-card__link {
    display: inline-flex;
    align-items: center;
    gap: var(--hc-space-xs);
    color: var(--hc-accent-primary);
    font-weight: 600;
    text-decoration: none;
    transition: gap 0.3s ease;
}

.hc-blog-card__link:hover {
    gap: var(--hc-space-sm);
}

@media (max-width: 1024px) {
    .hc-blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .hc-blog-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   SINGLE ARTICLE PAGE
   ======================================== */

.hc-article {
    padding-bottom: var(--hc-space-2xl);
}

.hc-article__header {
    padding: var(--hc-space-2xl) 0;
    background: var(--hc-bg-secondary);
}

.hc-article__header .hc-container {
    max-width: 1000px;
    margin: 0 auto;
}

.hc-breadcrumb {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
    margin-bottom: var(--hc-space-lg);
    font-size: 0.9rem;
}

.hc-breadcrumb a {
    color: var(--hc-text-muted);
}

.hc-breadcrumb a:hover {
    color: var(--hc-accent-primary);
}

.hc-breadcrumb__separator {
    color: var(--hc-text-muted);
}

.hc-article__category {
    display: inline-block;
    padding: 6px 16px;
    background: var(--hc-accent-light);
    color: var(--hc-accent-primary);
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: var(--hc-radius-full);
    margin-bottom: var(--hc-space-md);
}

.hc-article__title {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: var(--hc-space-lg);
    color: var(--hc-text-primary);
}

.hc-article__meta {
    display: flex;
    align-items: center;
    gap: var(--hc-space-xl);
    color: var(--hc-text-muted);
    font-size: 0.9rem;
}

.hc-article__date,
.hc-article__reading-time {
    display: flex;
    align-items: center;
    gap: var(--hc-space-xs);
}

.hc-article__date svg,
.hc-article__reading-time svg {
    opacity: 0.7;
}

.hc-article__image {
    margin-bottom: var(--hc-space-2xl);
}

.hc-article__featured-image {
    width: 100%;
    max-width: 900px;
    height: auto;
    border-radius: var(--hc-radius-xl);
    margin: 0 auto;
    display: block;
}

.hc-container--narrow {
    max-width: 1000px;
    padding-left: var(--hc-space-xl);
    padding-right: var(--hc-space-xl);
}

.hc-article__content {
    font-size: 1.1rem;
    line-height: 1.8;
    color: var(--hc-text-secondary);
}

.hc-article__content h2 {
    font-size: 1.75rem;
    margin-top: var(--hc-space-2xl);
    margin-bottom: var(--hc-space-md);
    color: var(--hc-text-primary);
}

.hc-article__content h3 {
    font-size: 1.35rem;
    margin-top: var(--hc-space-xl);
    margin-bottom: var(--hc-space-md);
    color: var(--hc-text-primary);
}

.hc-article__content h4 {
    font-size: 1.15rem;
    margin-top: var(--hc-space-lg);
    margin-bottom: var(--hc-space-sm);
    color: var(--hc-text-primary);
}

.hc-article__content p {
    margin-bottom: var(--hc-space-lg);
}

.hc-article__content ul,
.hc-article__content ol {
    margin-bottom: var(--hc-space-lg);
    padding-left: var(--hc-space-xl);
}

.hc-article__content li {
    margin-bottom: var(--hc-space-sm);
}

.hc-article__content a {
    color: var(--hc-accent-primary);
    text-decoration: underline;
}

.hc-article__content a:hover {
    color: var(--hc-accent-secondary);
}

.hc-article__content blockquote {
    border-left: 4px solid var(--hc-accent-primary);
    padding-left: var(--hc-space-lg);
    margin: var(--hc-space-xl) 0;
    font-style: italic;
    color: var(--hc-text-muted);
}

.hc-article__content table {
    width: 100%;
    border-collapse: collapse;
    margin: var(--hc-space-lg) 0;
}

.hc-article__content th,
.hc-article__content td {
    padding: var(--hc-space-md);
    border: 1px solid var(--hc-border-color);
    text-align: left;
}

.hc-article__content th {
    background: var(--hc-bg-card-hover);
    font-weight: 600;
}

.hc-article__tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--hc-space-sm);
    margin-top: var(--hc-space-2xl);
    padding-top: var(--hc-space-xl);
    border-top: 1px solid var(--hc-border-color);
}

.hc-article__tags-label {
    font-weight: 600;
    color: var(--hc-text-primary);
}

.hc-article__tag {
    padding: 4px 12px;
    background: var(--hc-bg-card-hover);
    color: var(--hc-text-secondary);
    font-size: 0.85rem;
    border-radius: var(--hc-radius-full);
    transition: all 0.2s ease;
}

.hc-article__tag:hover {
    background: var(--hc-accent-light);
    color: var(--hc-accent-primary);
}

.hc-article__share {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    margin-top: var(--hc-space-xl);
    padding-top: var(--hc-space-xl);
    border-top: 1px solid var(--hc-border-color);
}

.hc-article__share-label {
    font-weight: 600;
    color: var(--hc-text-primary);
}

.hc-article__share-buttons {
    display: flex;
    gap: var(--hc-space-sm);
}

.hc-article__share-btn {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-bg-card-hover);
    color: var(--hc-text-secondary);
    border-radius: var(--hc-radius-full);
    transition: all 0.2s ease;
}

.hc-article__share-btn:hover {
    background: var(--hc-accent-primary);
    color: #ffffff;
}

.hc-related-posts {
    background: var(--hc-bg-secondary);
    margin-top: var(--hc-space-2xl);
}

.hc-related-posts .hc-section-title {
    text-align: center;
    margin-bottom: var(--hc-space-xl);
}

.hc-article__back {
    margin-top: var(--hc-space-2xl);
    text-align: center;
}

.hc-article__back .hc-btn {
    display: inline-flex;
}

@media (max-width: 768px) {
    .hc-article__meta {
        flex-direction: column;
        gap: var(--hc-space-sm);
    }

    .hc-article__share {
        flex-direction: column;
        align-items: flex-start;
    }

    .hc-breadcrumb {
        flex-wrap: wrap;
    }
}

/* ========================================
   MANUFACTURER PAGE
   ======================================== */

.hc-manufacturer-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--hc-space-lg);
}

.hc-manufacturer-card {
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-xl);
    padding: var(--hc-space-xl);
    border: 1px solid var(--hc-border-color);
    transition: all 0.3s ease;
    text-decoration: none;
    display: block;
}

.hc-manufacturer-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--hc-shadow-lg);
    border-color: var(--hc-accent-primary);
}

.hc-manufacturer-card__image {
    margin-bottom: var(--hc-space-lg);
}

.hc-manufacturer-card__placeholder {
    width: 64px;
    height: 64px;
    border-radius: var(--hc-radius-lg);
    background: var(--hc-accent-gradient);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    font-weight: 700;
}

.hc-manufacturer-card__name {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--hc-text-primary);
    margin-bottom: var(--hc-space-xs);
}

.hc-manufacturer-card__country {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
    color: var(--hc-text-muted);
    margin-bottom: var(--hc-space-md);
}

.hc-manufacturer-card__description {
    font-size: 0.9rem;
    color: var(--hc-text-secondary);
    line-height: 1.6;
    margin-bottom: var(--hc-space-md);
}

.hc-manufacturer-card__products {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
    color: var(--hc-accent-primary);
    font-weight: 600;
}

@media (max-width: 1024px) {
    .hc-manufacturer-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .hc-manufacturer-grid {
        grid-template-columns: 1fr;
    }
}

/* Info Box */
.hc-info-box {
    display: flex;
    align-items: flex-start;
    gap: var(--hc-space-lg);
    padding: var(--hc-space-xl);
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-xl);
    border: 1px solid var(--hc-accent-primary);
}

.hc-info-box__icon {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-accent-primary);
    border-radius: var(--hc-radius-md);
    color: white;
}

.hc-info-box__content h3 {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--hc-text-primary);
    margin-bottom: var(--hc-space-sm);
}

.hc-info-box__content p {
    color: var(--hc-text-secondary);
    line-height: 1.6;
}

/* ========================================
   EMPTY STATE
   ======================================== */

.hc-empty-state {
    text-align: center;
    padding: var(--hc-space-3xl) var(--hc-space-xl);
}

.hc-empty-state__icon {
    color: var(--hc-text-muted);
    margin-bottom: var(--hc-space-lg);
}

.hc-empty-state__title {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--hc-text-primary);
    margin-bottom: var(--hc-space-sm);
}

.hc-empty-state__text {
    color: var(--hc-text-secondary);
    max-width: 400px;
    margin: 0 auto;
}

/* ========================================
   PAGINATION
   ======================================== */

.hc-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--hc-space-xs);
    margin-top: var(--hc-space-2xl);
}

.hc-pagination .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 var(--hc-space-sm);
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-md);
    color: var(--hc-text-secondary);
    text-decoration: none;
    font-weight: 500;
    transition: all 0.2s ease;
}

.hc-pagination .page-numbers:hover {
    border-color: var(--hc-accent-primary);
    color: var(--hc-accent-primary);
}

.hc-pagination .page-numbers.current {
    background: var(--hc-accent-primary);
    border-color: var(--hc-accent-primary);
    color: white;
}

/* ========================================
   EXTENDED PAGE HEADER
   ======================================== */

.hc-page-header--extended {
    padding: var(--hc-space-3xl) 0 var(--hc-space-2xl);
}

.hc-page-header__stats {
    display: flex;
    justify-content: center;
    gap: var(--hc-space-2xl);
    margin-top: var(--hc-space-xl);
}

.hc-page-header__stat {
    text-align: center;
}

.hc-page-header__stat-value {
    display: block;
    font-family: var(--hc-font-display);
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--hc-accent-primary);
    line-height: 1;
    margin-bottom: var(--hc-space-xs);
}

.hc-page-header__stat-label {
    font-size: 0.9rem;
    color: var(--hc-text-muted);
}

@media (max-width: 640px) {
    .hc-page-header__stats {
        flex-direction: column;
        gap: var(--hc-space-lg);
    }
}

/* ========================================
   FILTER TABS
   ======================================== */

.hc-filter-tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--hc-space-sm);
    justify-content: center;
}

.hc-filter-tab {
    display: inline-flex;
    align-items: center;
    gap: var(--hc-space-xs);
    padding: 10px 18px;
    background: var(--hc-bg-card);
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-full);
    color: var(--hc-text-secondary);
    font-size: 0.9rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.hc-filter-tab:hover {
    border-color: var(--hc-accent-primary);
    color: var(--hc-accent-primary);
}

.hc-filter-tab.active {
    background: var(--hc-accent-primary);
    border-color: var(--hc-accent-primary);
    color: #ffffff;
}

.hc-filter-tab__count {
    padding: 2px 8px;
    background: rgba(0, 0, 0, 0.1);
    border-radius: var(--hc-radius-full);
    font-size: 0.75rem;
    font-weight: 600;
}

.hc-filter-tab.active .hc-filter-tab__count {
    background: rgba(255, 255, 255, 0.2);
}

.hc-filter-tab__flag {
    font-size: 1rem;
}

/* ========================================
   PROFESSIONAL MANUFACTURER CARDS
   ======================================== */

.hc-manufacturer-grid-pro {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--hc-space-xl);
}

.hc-manufacturer-card-pro {
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-xl);
    border: 1px solid var(--hc-border-color);
    padding: var(--hc-space-xl);
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
}

.hc-manufacturer-card-pro:hover {
    transform: translateY(-8px);
    box-shadow: var(--hc-shadow-lg);
    border-color: var(--hc-accent-primary);
}

.hc-manufacturer-card-pro__header {
    display: flex;
    align-items: flex-start;
    gap: var(--hc-space-md);
    margin-bottom: var(--hc-space-lg);
}

.hc-manufacturer-card-pro__logo {
    flex-shrink: 0;
    width: 56px;
    height: 56px;
    border-radius: var(--hc-radius-lg);
    overflow: hidden;
    background: var(--hc-accent-gradient);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 1.25rem;
    font-weight: 700;
}

.hc-manufacturer-card-pro__logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hc-manufacturer-card-pro__title {
    flex: 1;
    min-width: 0;
}

.hc-manufacturer-card-pro__title h3 {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--hc-text-primary);
    margin: 0 0 4px 0;
}

.hc-manufacturer-card-pro__location {
    font-size: 0.85rem;
    color: var(--hc-text-muted);
}

.hc-manufacturer-card-pro__description {
    color: var(--hc-text-secondary);
    font-size: 0.9rem;
    line-height: 1.6;
    margin-bottom: var(--hc-space-lg);
    flex-grow: 1;
}

.hc-manufacturer-card-pro__meta {
    display: flex;
    gap: var(--hc-space-xl);
    margin-bottom: var(--hc-space-md);
    padding-bottom: var(--hc-space-md);
    border-bottom: 1px solid var(--hc-border-color);
}

.hc-manufacturer-card-pro__meta-item {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.hc-manufacturer-card-pro__meta-label {
    font-size: 0.7rem;
    color: var(--hc-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.hc-manufacturer-card-pro__meta-value {
    font-weight: 600;
    color: var(--hc-text-primary);
    font-size: 0.95rem;
}

/* Certifications */
.hc-manufacturer-card-pro__certifications {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hc-space-xs);
    margin-bottom: var(--hc-space-sm);
}

.hc-certification-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-sm);
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--hc-accent-primary);
}

.hc-certification-badge svg {
    width: 12px;
    height: 12px;
}

/* Specialties */
.hc-manufacturer-card-pro__specialties {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hc-space-xs);
    margin-bottom: var(--hc-space-lg);
}

.hc-specialty-tag {
    padding: 4px 10px;
    background: var(--hc-bg-secondary);
    border-radius: var(--hc-radius-sm);
    font-size: 0.8rem;
    color: var(--hc-text-secondary);
}

/* Link Button */
.hc-manufacturer-card-pro__link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--hc-space-sm);
    padding: 12px 20px;
    background: var(--hc-accent-gradient);
    border-radius: var(--hc-radius-md);
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
    margin-top: auto;
}

.hc-manufacturer-card-pro__link:hover {
    transform: translateY(-2px);
    box-shadow: var(--hc-shadow-glow);
}

.hc-manufacturer-card-pro__link svg {
    flex-shrink: 0;
}

@media (max-width: 1024px) {
    .hc-manufacturer-grid-pro {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .hc-manufacturer-grid-pro {
        grid-template-columns: 1fr;
    }

    .hc-manufacturer-card-pro__header {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .hc-manufacturer-card-pro__title {
        text-align: center;
    }
}

/* Manufacturer Filter Section */
.hc-manufacturer-filter {
    padding: var(--hc-space-lg) 0;
    background: var(--hc-bg-secondary);
}

.hc-manufacturers-section {
    padding-bottom: var(--hc-space-2xl);
}

.hc-manufacturer-info-section {
    background: var(--hc-bg-secondary);
}

/* ========================================
   FEATURED ARTICLE CARD
   ======================================== */

.hc-featured-article {
    padding-top: 0;
}

.hc-featured-card {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-xl);
    overflow: hidden;
    border: 1px solid var(--hc-border-color);
    box-shadow: var(--hc-shadow-md);
}

.hc-featured-card__image {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: var(--hc-bg-primary);
}

.hc-featured-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.hc-featured-card:hover .hc-featured-card__image img {
    transform: scale(1.05);
}

.hc-featured-card__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
    color: #94a3b8;
}

.hc-featured-card__badge {
    position: absolute;
    top: var(--hc-space-lg);
    left: var(--hc-space-lg);
    padding: 6px 14px;
    background: var(--hc-accent-primary);
    border-radius: var(--hc-radius-sm);
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.hc-featured-card__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: var(--hc-space-2xl);
}

.hc-featured-card__meta {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    margin-bottom: var(--hc-space-md);
}

.hc-featured-card__category {
    padding: 4px 12px;
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-sm);
    color: var(--hc-accent-primary);
    font-size: 0.8rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.hc-featured-card__category:hover {
    background: var(--hc-accent-primary);
    color: #ffffff;
}

.hc-featured-card__date {
    font-size: 0.85rem;
    color: var(--hc-text-muted);
}

.hc-featured-card__title {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: var(--hc-space-md);
}

.hc-featured-card__title a {
    color: var(--hc-text-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.hc-featured-card__title a:hover {
    color: var(--hc-accent-primary);
}

.hc-featured-card__excerpt {
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin-bottom: var(--hc-space-xl);
}

@media (max-width: 968px) {
    .hc-featured-card {
        grid-template-columns: 1fr;
    }

    .hc-featured-card__image {
        aspect-ratio: 16 / 9;
    }

    .hc-featured-card__content {
        padding: var(--hc-space-xl);
    }

    .hc-featured-card__title {
        font-size: 1.5rem;
    }
}

/* ========================================
   CATEGORY FILTER SECTION
   ======================================== */

.hc-category-filter {
    padding: var(--hc-space-lg) 0;
    background: var(--hc-bg-secondary);
    border-bottom: 1px solid var(--hc-border-color);
}

/* ========================================
   TOPICS & INFO SECTIONS
   ======================================== */

.hc-topics-section {
    background: var(--hc-bg-secondary);
}

.hc-topics-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--hc-space-lg);
}

.hc-topic-card {
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-xl);
    padding: var(--hc-space-xl);
    border: 1px solid var(--hc-border-color);
    text-align: center;
    transition: all 0.3s ease;
}

.hc-topic-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hc-shadow-md);
    border-color: var(--hc-accent-primary);
}

.hc-topic-card__icon {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto var(--hc-space-md);
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-lg);
    color: var(--hc-accent-primary);
}

.hc-topic-card h4 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--hc-text-primary);
    margin-bottom: var(--hc-space-sm);
}

.hc-topic-card p {
    font-size: 0.9rem;
    color: var(--hc-text-secondary);
    line-height: 1.6;
}

@media (max-width: 1024px) {
    .hc-topics-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .hc-topics-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   INFO CARDS GRID
   ======================================== */

.hc-info-section {
    background: var(--hc-bg-secondary);
}

.hc-info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--hc-space-xl);
}

.hc-info-card {
    background: var(--hc-bg-card);
    border-radius: var(--hc-radius-xl);
    padding: var(--hc-space-xl);
    border: 1px solid var(--hc-border-color);
    transition: all 0.3s ease;
}

.hc-info-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hc-shadow-md);
}

.hc-info-card__icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--hc-space-md);
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-md);
    color: var(--hc-accent-primary);
}

.hc-info-card__title,
.hc-info-card h4 {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--hc-text-primary);
    margin: 0 0 var(--hc-space-sm) 0;
}

.hc-info-card__text,
.hc-info-card p {
    font-size: 0.9rem;
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin: 0;
}

@media (max-width: 968px) {
    .hc-info-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   MAGAZIN GRID SECTION
   ======================================== */

.hc-magazin-grid-section {
    padding-top: var(--hc-space-xl);
}

/* ========================================
   PHARMACY CARDS
   ======================================== */

.hc-pharmacy-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: var(--hc-space-lg);
}

.hc-pharmacy-featured-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: var(--hc-space-xl);
}

.hc-pharmacy-card {
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-lg);
    box-shadow: var(--hc-shadow-sm);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    position: relative;
}

.hc-pharmacy-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hc-shadow-md);
}

.hc-pharmacy-card--featured {
    border: 2px solid var(--hc-accent-primary);
}

.hc-pharmacy-card__badge {
    position: absolute;
    top: var(--hc-space-md);
    right: var(--hc-space-md);
    background: var(--hc-accent-gradient);
    color: var(--hc-white);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: var(--hc-radius-full);
}

.hc-pharmacy-card__header {
    display: flex;
    gap: var(--hc-space-md);
    margin-bottom: var(--hc-space-md);
}

.hc-pharmacy-card__logo {
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    border-radius: var(--hc-radius-md);
    overflow: hidden;
    background: var(--hc-bg-light);
}

.hc-pharmacy-card__logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hc-pharmacy-card__logo-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-bg-light);
    color: var(--hc-text-muted);
}

.hc-pharmacy-card__info {
    flex: 1;
    min-width: 0;
}

.hc-pharmacy-card__name {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0 0 4px 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

.hc-pharmacy-card__name a {
    color: var(--hc-text-primary);
}

.hc-pharmacy-card__name a:hover {
    color: var(--hc-accent-primary);
}

.hc-pharmacy-card__location {
    font-size: 0.9rem;
    color: var(--hc-text-muted);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 4px;
}

.hc-pharmacy-card__description {
    font-size: 0.9rem;
    color: var(--hc-text-secondary);
    line-height: 1.6;
    margin: 0 0 var(--hc-space-md) 0;
}

.hc-pharmacy-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hc-space-sm);
    margin-bottom: var(--hc-space-md);
}

.hc-pharmacy-card__meta-item {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.8rem;
    color: var(--hc-text-secondary);
    background: var(--hc-bg-light);
    padding: 4px 10px;
    border-radius: var(--hc-radius-full);
}

.hc-pharmacy-card__meta-item--express {
    background: #fef3c7;
    color: #92400e;
}

.hc-pharmacy-card__meta-item--free {
    background: var(--hc-accent-light);
    color: var(--hc-accent-primary);
}

.hc-pharmacy-card__link {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--hc-accent-primary);
    font-weight: 600;
    font-size: 0.9rem;
}

.hc-pharmacy-card__link:hover {
    gap: 10px;
}

.hc-free-shipping {
    color: var(--hc-accent-primary);
    font-weight: 600;
}

.hc-verified-badge {
    color: var(--hc-accent-primary);
    display: inline-flex;
}

.hc-verified-badge--sm svg {
    width: 12px;
    height: 12px;
}

/* ========================================
   PARTNER CTA
   ======================================== */

.hc-partner-cta {
    background: var(--hc-bg-light);
}

.hc-cta-box {
    background: var(--hc-white);
    border-radius: var(--hc-radius-xl);
    padding: var(--hc-space-2xl);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--hc-space-2xl);
    align-items: center;
    box-shadow: var(--hc-shadow-lg);
}

.hc-cta-box__label {
    display: inline-block;
    background: var(--hc-accent-light);
    color: var(--hc-accent-primary);
    font-size: 0.85rem;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: var(--hc-radius-full);
    margin-bottom: var(--hc-space-md);
}

.hc-cta-box__title {
    font-size: 2rem;
    font-weight: 800;
    margin: 0 0 var(--hc-space-md) 0;
}

.hc-cta-box__text {
    font-size: 1.1rem;
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin: 0 0 var(--hc-space-lg) 0;
}

.hc-cta-box__features {
    display: flex;
    flex-direction: column;
    gap: var(--hc-space-md);
}

.hc-cta-box__feature {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    font-size: 1rem;
    color: var(--hc-text-primary);
    font-weight: 500;
}

.hc-cta-box__feature svg {
    color: var(--hc-accent-primary);
    flex-shrink: 0;
}

@media (max-width: 768px) {
    .hc-cta-box {
        grid-template-columns: 1fr;
        padding: var(--hc-space-xl);
    }
    .hc-cta-box__title {
        font-size: 1.5rem;
    }
}

/* ========================================
   PARTNER WERDEN PAGE
   ======================================== */

.hc-page-header--partner {
    background: var(--hc-accent-gradient);
    color: var(--hc-white);
    padding: var(--hc-space-3xl) 0;
    text-align: center;
}

.hc-page-header--partner .hc-page-header__label {
    display: inline-block;
    background: rgba(255,255,255,0.2);
    padding: 6px 16px;
    border-radius: var(--hc-radius-full);
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: var(--hc-space-md);
}

.hc-page-header--partner .hc-page-header__title {
    color: var(--hc-white);
}

.hc-page-header--partner .hc-page-header__subtitle {
    color: rgba(255,255,255,0.9);
    max-width: 600px;
    margin: 0 auto;
}

.hc-benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: var(--hc-space-lg);
}

.hc-benefit-card {
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-xl);
    text-align: center;
    box-shadow: var(--hc-shadow-sm);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hc-benefit-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--hc-shadow-md);
}

.hc-benefit-card__icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto var(--hc-space-md);
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-lg);
    color: var(--hc-accent-primary);
}

.hc-benefit-card h3 {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 0 0 var(--hc-space-sm) 0;
}

.hc-benefit-card p {
    font-size: 0.95rem;
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin: 0;
}

/* Partner Page Steps - alternative horizontal layout */
.hc-partner-steps .hc-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: var(--hc-space-xl);
}

.hc-partner-steps .hc-step {
    display: flex;
    gap: var(--hc-space-md);
    align-items: flex-start;
}

.hc-partner-steps .hc-step__number {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-accent-gradient);
    color: var(--hc-white);
    font-size: 1.25rem;
    font-weight: 800;
    border-radius: var(--hc-radius-full);
    flex-shrink: 0;
}

.hc-step__content h3 {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0 0 6px 0;
}

.hc-step__content p {
    font-size: 0.95rem;
    color: var(--hc-text-secondary);
    line-height: 1.6;
    margin: 0;
}

/* Partner Form */
.hc-partner-form-section {
    background: var(--hc-bg-light);
}

.hc-partner-form-wrapper {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: var(--hc-space-2xl);
    align-items: start;
}

.hc-partner-form-info h2 {
    font-size: 2rem;
    font-weight: 800;
    margin: 0 0 var(--hc-space-md) 0;
}

.hc-partner-form-info > p {
    font-size: 1.1rem;
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin: 0 0 var(--hc-space-xl) 0;
}

.hc-partner-form-contact {
    background: var(--hc-white);
    padding: var(--hc-space-lg);
    border-radius: var(--hc-radius-lg);
}

.hc-partner-form-contact h4 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 var(--hc-space-sm) 0;
}

.hc-partner-form-contact p {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
    margin: 0;
    color: var(--hc-text-secondary);
}

.hc-partner-form {
    background: var(--hc-white);
    border-radius: var(--hc-radius-xl);
    padding: var(--hc-space-xl);
    box-shadow: var(--hc-shadow-lg);
}

.hc-form-group {
    margin-bottom: var(--hc-space-lg);
}

.hc-form-group label {
    display: block;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--hc-text-primary);
    margin-bottom: 6px;
}

.hc-form-group input,
.hc-form-group textarea,
.hc-form-group select {
    width: 100%;
    padding: 12px 16px;
    font-size: 1rem;
    border: 2px solid var(--hc-border-color);
    border-radius: var(--hc-radius-md);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    font-family: inherit;
}

.hc-form-group input:focus,
.hc-form-group textarea:focus,
.hc-form-group select:focus {
    border-color: var(--hc-accent-primary);
    box-shadow: 0 0 0 3px var(--hc-accent-light);
    outline: none;
}

.hc-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--hc-space-md);
}

.hc-form-note {
    font-size: 0.85rem;
    color: var(--hc-text-muted);
    text-align: center;
    margin: var(--hc-space-md) 0 0 0;
}

.hc-form-success {
    text-align: center;
    padding: var(--hc-space-xl);
}

.hc-form-success__icon {
    color: var(--hc-accent-primary);
    margin-bottom: var(--hc-space-md);
}

.hc-form-success h3 {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 var(--hc-space-sm) 0;
}

.hc-form-success p {
    font-size: 1rem;
    color: var(--hc-text-secondary);
    margin: 0;
}

.hc-form-error {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
    background: #fee2e2;
    color: #991b1b;
    padding: var(--hc-space-md);
    border-radius: var(--hc-radius-md);
    margin-bottom: var(--hc-space-lg);
    font-size: 0.95rem;
}

@media (max-width: 768px) {
    .hc-partner-form-wrapper {
        grid-template-columns: 1fr;
    }
    .hc-form-row {
        grid-template-columns: 1fr;
    }
}

/* FAQ */
.hc-faq-list {
    max-width: 800px;
    margin: 0 auto;
}

.hc-faq-item {
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    margin-bottom: var(--hc-space-md);
    box-shadow: var(--hc-shadow-sm);
    overflow: hidden;
}

.hc-faq-item__question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--hc-space-lg);
    margin: 0;
    cursor: pointer;
    font-size: 1.05rem;
    font-weight: 600;
}

.hc-faq-item__question svg {
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.hc-faq-item.active .hc-faq-item__question svg {
    transform: rotate(180deg);
}

.hc-faq-item__answer {
    display: none;
    padding: 0 var(--hc-space-lg) var(--hc-space-lg);
}

.hc-faq-item.active .hc-faq-item__answer {
    display: block;
}

.hc-faq-item__answer p {
    font-size: 0.95rem;
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin: 0;
}

/* ========================================
   DASHBOARD
   ======================================== */

.hc-dashboard {
    padding: var(--hc-space-xl) 0 var(--hc-space-3xl);
    min-height: 60vh;
}

.hc-dashboard__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--hc-space-xl);
    flex-wrap: wrap;
    gap: var(--hc-space-md);
}

.hc-dashboard__welcome h1 {
    font-size: 1.75rem;
    font-weight: 800;
    margin: 0;
}

.hc-dashboard__welcome p {
    font-size: 1rem;
    color: var(--hc-text-muted);
    margin: 4px 0 0 0;
}

.hc-dashboard__actions {
    display: flex;
    gap: var(--hc-space-sm);
}

.hc-dashboard__notice {
    display: flex;
    gap: var(--hc-space-md);
    padding: var(--hc-space-lg);
    border-radius: var(--hc-radius-lg);
    margin-bottom: var(--hc-space-xl);
}

.hc-dashboard__notice--warning {
    background: #fef3c7;
    border: 1px solid #fbbf24;
}

.hc-dashboard__notice--warning svg {
    color: #b45309;
    flex-shrink: 0;
}

.hc-dashboard__notice--error {
    background: #fee2e2;
    border: 1px solid #fca5a5;
}

.hc-dashboard__notice--error svg {
    color: #dc2626;
    flex-shrink: 0;
}

.hc-dashboard__notice strong {
    display: block;
    font-size: 1rem;
    margin-bottom: 4px;
}

.hc-dashboard__notice p {
    font-size: 0.9rem;
    color: var(--hc-text-secondary);
    margin: 0;
}

.hc-dashboard__stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--hc-space-lg);
    margin-bottom: var(--hc-space-xl);
}

.hc-dashboard__stat-card {
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-lg);
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    box-shadow: var(--hc-shadow-sm);
}

.hc-dashboard__stat-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-accent-light);
    border-radius: var(--hc-radius-md);
    color: var(--hc-accent-primary);
}

.hc-dashboard__stat-icon--green {
    background: #d1fae5;
    color: #047857;
}

.hc-dashboard__stat-value {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--hc-text-primary);
}

.hc-dashboard__stat-label {
    font-size: 0.9rem;
    color: var(--hc-text-muted);
}

.hc-dashboard__section {
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-xl);
    box-shadow: var(--hc-shadow-sm);
    margin-bottom: var(--hc-space-xl);
}

.hc-dashboard__section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--hc-space-lg);
}

.hc-dashboard__section-header h2 {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0;
}

.hc-dashboard__table-wrapper {
    overflow-x: auto;
}

.hc-dashboard__table {
    width: 100%;
    border-collapse: collapse;
}

.hc-dashboard__table th,
.hc-dashboard__table td {
    padding: var(--hc-space-md);
    text-align: left;
    border-bottom: 1px solid var(--hc-border-color);
}

.hc-dashboard__table th {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--hc-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.hc-dashboard__table td {
    font-size: 0.95rem;
}

.hc-dashboard__edit-row {
    background: var(--hc-bg-light);
}

.hc-dashboard__edit-form {
    padding: var(--hc-space-md);
}

.hc-dashboard__edit-fields {
    display: flex;
    gap: var(--hc-space-md);
    align-items: flex-end;
    flex-wrap: wrap;
}

.hc-dashboard__edit-fields .hc-form-group {
    margin-bottom: 0;
}

.hc-dashboard__edit-fields input,
.hc-dashboard__edit-fields select {
    padding: 8px 12px;
    font-size: 0.9rem;
}

.hc-dashboard__empty {
    text-align: center;
    padding: var(--hc-space-xl);
    color: var(--hc-text-muted);
}

.hc-dashboard__help {
    background: var(--hc-bg-light);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-xl);
    text-align: center;
}

.hc-dashboard__help h3 {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 0 0 var(--hc-space-sm) 0;
}

.hc-dashboard__help p {
    font-size: 0.95rem;
    color: var(--hc-text-secondary);
    margin: 0 0 var(--hc-space-sm) 0;
}

.hc-status {
    display: inline-block;
    padding: 4px 10px;
    border-radius: var(--hc-radius-full);
    font-size: 0.8rem;
    font-weight: 600;
}

.hc-status--success {
    background: #d1fae5;
    color: #065f46;
}

.hc-status--warning {
    background: #fef3c7;
    color: #92400e;
}

.hc-status--error {
    background: #fee2e2;
    color: #991b1b;
}

.hc-dashboard-no-access {
    padding: var(--hc-space-3xl) 0;
}

/* ========================================
   PRICE COMPARISON WIDGET
   ======================================== */

.hc-price-comparison {
    background: var(--hc-white);
    border-radius: var(--hc-radius-xl);
    padding: var(--hc-space-xl);
    box-shadow: var(--hc-shadow-md);
    margin: var(--hc-space-xl) 0;
}

.hc-price-comparison__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--hc-space-lg);
    padding-bottom: var(--hc-space-md);
    border-bottom: 2px solid var(--hc-border-color);
}

.hc-price-comparison__title {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--hc-text-primary);
}

.hc-price-comparison__title svg {
    color: var(--hc-accent-primary);
}

.hc-price-comparison__lowest {
    text-align: right;
}

.hc-price-comparison__lowest-label {
    font-size: 0.85rem;
    color: var(--hc-text-muted);
    display: block;
}

.hc-price-comparison__lowest-price {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--hc-accent-primary);
}

.hc-price-comparison__list {
    display: flex;
    flex-direction: column;
    gap: var(--hc-space-md);
}

.hc-price-comparison__item {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: var(--hc-space-lg);
    align-items: center;
    padding: var(--hc-space-md);
    border-radius: var(--hc-radius-lg);
    background: var(--hc-bg-light);
    position: relative;
    transition: background 0.2s ease;
}

.hc-price-comparison__item:hover {
    background: var(--hc-bg-medium);
}

.hc-price-comparison__item--best {
    background: var(--hc-accent-light);
    border: 2px solid var(--hc-accent-primary);
}

.hc-price-comparison__item--best:hover {
    background: var(--hc-accent-light);
}

.hc-price-comparison__best-badge {
    position: absolute;
    top: -10px;
    left: var(--hc-space-md);
    background: var(--hc-accent-gradient);
    color: var(--hc-white);
    font-size: 0.7rem;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: var(--hc-radius-full);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.hc-price-comparison__pharmacy {
    display: flex;
    gap: var(--hc-space-md);
    align-items: center;
    min-width: 0;
}

.hc-price-comparison__pharmacy-logo {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: var(--hc-radius-md);
    overflow: hidden;
    background: var(--hc-white);
}

.hc-price-comparison__pharmacy-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hc-price-comparison__pharmacy-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-white);
    color: var(--hc-text-muted);
}

.hc-price-comparison__pharmacy-info {
    min-width: 0;
}

.hc-price-comparison__pharmacy-name {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 4px 0;
    display: flex;
    align-items: center;
    gap: 4px;
}

.hc-price-comparison__pharmacy-name a {
    color: var(--hc-text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hc-price-comparison__pharmacy-name a:hover {
    color: var(--hc-accent-primary);
}

.hc-price-comparison__pharmacy-meta {
    display: flex;
    gap: var(--hc-space-md);
    font-size: 0.8rem;
}

.hc-price-comparison__delivery {
    display: flex;
    align-items: center;
    gap: 4px;
    color: var(--hc-text-muted);
}

.hc-price-comparison__stock {
    font-weight: 500;
}

.hc-stock--available {
    color: #047857;
}

.hc-stock--low {
    color: #d97706;
}

.hc-stock--unavailable {
    color: #dc2626;
}

.hc-price-comparison__price-col {
    text-align: right;
}

.hc-price-comparison__price {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--hc-text-primary);
}

.hc-price-comparison__price-per-gram {
    font-size: 0.8rem;
    color: var(--hc-text-muted);
}

.hc-price-comparison__action {
    flex-shrink: 0;
}

.hc-price-comparison__show-more {
    width: 100%;
    padding: var(--hc-space-md);
    margin-top: var(--hc-space-md);
    background: transparent;
    border: 2px dashed var(--hc-border-color);
    border-radius: var(--hc-radius-lg);
    color: var(--hc-text-secondary);
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.hc-price-comparison__show-more:hover {
    border-color: var(--hc-accent-primary);
    color: var(--hc-accent-primary);
}

/* Hide items beyond 3 by default */
.hc-price-comparison__item[data-index="3"],
.hc-price-comparison__item[data-index="4"],
.hc-price-comparison__item[data-index="5"],
.hc-price-comparison__item[data-index="6"],
.hc-price-comparison__item[data-index="7"],
.hc-price-comparison__item[data-index="8"],
.hc-price-comparison__item[data-index="9"] {
    display: none;
}

.hc-price-comparison--expanded .hc-price-comparison__item {
    display: grid !important;
}

@media (max-width: 768px) {
    .hc-price-comparison__item {
        grid-template-columns: 1fr;
        gap: var(--hc-space-md);
    }
    .hc-price-comparison__price-col {
        text-align: left;
    }
    .hc-price-comparison__action {
        width: 100%;
    }
    .hc-price-comparison__action .hc-btn {
        width: 100%;
        justify-content: center;
    }
}

/* Price Summary (for product cards) */
.hc-price-summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--hc-space-md);
    background: var(--hc-bg-light);
    border-radius: var(--hc-radius-md);
    margin-top: var(--hc-space-md);
}

.hc-price-summary__label {
    font-size: 0.8rem;
    color: var(--hc-text-muted);
}

.hc-price-summary__value {
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--hc-accent-primary);
}

.hc-price-summary__pharmacies {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
    color: var(--hc-text-secondary);
}

/* ========================================
   BUTTON VARIANTS
   ======================================== */

.hc-btn--outline {
    background: transparent;
    border: 2px solid var(--hc-accent-primary);
    color: var(--hc-accent-primary);
}

.hc-btn--outline:hover {
    background: var(--hc-accent-primary);
    color: var(--hc-white);
}

.hc-btn--ghost {
    background: transparent;
    color: var(--hc-text-secondary);
}

.hc-btn--ghost:hover {
    background: var(--hc-bg-light);
    color: var(--hc-text-primary);
}

.hc-btn--sm {
    padding: 8px 16px;
    font-size: 0.85rem;
}

.hc-btn--lg {
    padding: 16px 32px;
    font-size: 1.1rem;
}

.hc-btn--full {
    width: 100%;
    justify-content: center;
}

.hc-btn--disabled {
    background: var(--hc-bg-medium);
    color: var(--hc-text-muted);
    cursor: not-allowed;
    pointer-events: none;
}

/* ========================================
   SINGLE PHARMACY PAGE
   ======================================== */

.hc-pharmacy-header {
    background: linear-gradient(135deg, var(--hc-bg-light) 0%, var(--hc-white) 100%);
    padding: var(--hc-space-xl) 0 var(--hc-space-2xl);
}

.hc-pharmacy-profile {
    display: flex;
    gap: var(--hc-space-xl);
    align-items: flex-start;
}

.hc-pharmacy-profile__logo {
    width: 140px;
    height: 140px;
    flex-shrink: 0;
    border-radius: var(--hc-radius-xl);
    overflow: hidden;
    background: var(--hc-white);
    box-shadow: var(--hc-shadow-md);
}

.hc-pharmacy-profile__logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hc-pharmacy-profile__logo-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--hc-bg-light);
    color: var(--hc-text-muted);
}

.hc-pharmacy-profile__info {
    flex: 1;
}

.hc-pharmacy-profile__badges {
    display: flex;
    gap: var(--hc-space-sm);
    margin-bottom: var(--hc-space-sm);
}

.hc-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 12px;
    border-radius: var(--hc-radius-full);
    font-size: 0.8rem;
    font-weight: 600;
}

.hc-badge--premium {
    background: var(--hc-accent-gradient);
    color: var(--hc-white);
}

.hc-badge--verified {
    background: #d1fae5;
    color: #065f46;
}

.hc-pharmacy-profile__name {
    font-size: 2rem;
    font-weight: 800;
    margin: 0 0 var(--hc-space-sm) 0;
    color: var(--hc-text-primary);
}

.hc-pharmacy-profile__location {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
    font-size: 1rem;
    color: var(--hc-text-secondary);
    margin: 0 0 var(--hc-space-md) 0;
}

.hc-pharmacy-profile__description {
    font-size: 1.1rem;
    color: var(--hc-text-secondary);
    line-height: 1.7;
    margin: 0 0 var(--hc-space-lg) 0;
    max-width: 600px;
}

.hc-pharmacy-profile__meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hc-space-lg);
    margin-bottom: var(--hc-space-lg);
}

.hc-pharmacy-profile__meta-item {
    display: flex;
    align-items: flex-start;
    gap: var(--hc-space-sm);
}

.hc-pharmacy-profile__meta-item svg {
    color: var(--hc-accent-primary);
    margin-top: 2px;
    flex-shrink: 0;
}

.hc-pharmacy-profile__meta-item--express svg {
    color: #b45309;
}

.hc-pharmacy-profile__meta-label {
    display: block;
    font-size: 0.8rem;
    color: var(--hc-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.hc-pharmacy-profile__meta-value {
    display: block;
    font-size: 1rem;
    font-weight: 600;
    color: var(--hc-text-primary);
}

.hc-pharmacy-profile__meta-note {
    display: block;
    font-size: 0.8rem;
    color: var(--hc-accent-primary);
}

.hc-text-success {
    color: #047857 !important;
}

@media (max-width: 768px) {
    .hc-pharmacy-profile {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .hc-pharmacy-profile__location {
        justify-content: center;
    }
    .hc-pharmacy-profile__meta {
        justify-content: center;
    }
    .hc-pharmacy-profile__description {
        max-width: 100%;
    }
}

/* Pharmacy Content Grid */
.hc-pharmacy-content-grid {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: var(--hc-space-xl);
    align-items: start;
}

.hc-pharmacy-main {
    min-width: 0;
}

.hc-pharmacy-sidebar {
    display: flex;
    flex-direction: column;
    gap: var(--hc-space-lg);
}

@media (max-width: 968px) {
    .hc-pharmacy-content-grid {
        grid-template-columns: 1fr;
    }
    .hc-pharmacy-sidebar {
        order: -1;
    }
}

/* Section Header with Count */
.hc-section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--hc-space-lg);
}

.hc-section-count {
    font-size: 0.9rem;
    color: var(--hc-text-muted);
    background: var(--hc-bg-light);
    padding: 6px 14px;
    border-radius: var(--hc-radius-full);
}

/* Pharmacy Product List */
.hc-pharmacy-product-list {
    display: flex;
    flex-direction: column;
    gap: var(--hc-space-md);
}

.hc-pharmacy-product-item {
    display: grid;
    grid-template-columns: 80px 1fr auto auto;
    gap: var(--hc-space-lg);
    align-items: center;
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-md);
    box-shadow: var(--hc-shadow-sm);
    transition: box-shadow 0.2s ease;
}

.hc-pharmacy-product-item:hover {
    box-shadow: var(--hc-shadow-md);
}

.hc-pharmacy-product-item__image {
    width: 80px;
    height: 80px;
    border-radius: var(--hc-radius-md);
    overflow: hidden;
    background: var(--hc-bg-light);
}

.hc-pharmacy-product-item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hc-pharmacy-product-item__placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--hc-text-muted);
}

.hc-pharmacy-product-item__info {
    min-width: 0;
}

.hc-pharmacy-product-item__name {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0 0 4px 0;
}

.hc-pharmacy-product-item__name a {
    color: var(--hc-text-primary);
}

.hc-pharmacy-product-item__name a:hover {
    color: var(--hc-accent-primary);
}

.hc-pharmacy-product-item__meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hc-space-sm);
    margin-bottom: 6px;
}

.hc-pharmacy-product-item__meta span {
    font-size: 0.8rem;
    color: var(--hc-text-muted);
    background: var(--hc-bg-light);
    padding: 2px 8px;
    border-radius: var(--hc-radius-sm);
}

.hc-pharmacy-product-item__genetics {
    font-weight: 500;
}

.hc-pharmacy-product-item__stock {
    font-size: 0.85rem;
    font-weight: 500;
}

.hc-pharmacy-product-item__price-col {
    text-align: right;
}

.hc-pharmacy-product-item__price {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--hc-text-primary);
}

.hc-pharmacy-product-item__price-per-gram {
    font-size: 0.8rem;
    color: var(--hc-text-muted);
}

.hc-pharmacy-product-item__actions {
    display: flex;
    gap: var(--hc-space-sm);
}

@media (max-width: 768px) {
    .hc-pharmacy-product-item {
        grid-template-columns: 60px 1fr;
        gap: var(--hc-space-md);
    }
    .hc-pharmacy-product-item__image {
        width: 60px;
        height: 60px;
    }
    .hc-pharmacy-product-item__price-col {
        grid-column: 2;
        text-align: left;
    }
    .hc-pharmacy-product-item__actions {
        grid-column: 1 / -1;
        justify-content: stretch;
    }
    .hc-pharmacy-product-item__actions .hc-btn {
        flex: 1;
        justify-content: center;
    }
}

/* Pharmacy Sidebar Cards */
.hc-pharmacy-contact-card,
.hc-pharmacy-hours-card,
.hc-pharmacy-shipping-card {
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-lg);
    box-shadow: var(--hc-shadow-sm);
}

.hc-pharmacy-contact-card h3,
.hc-pharmacy-hours-card h3,
.hc-pharmacy-shipping-card h3 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 var(--hc-space-md) 0;
    padding-bottom: var(--hc-space-sm);
    border-bottom: 1px solid var(--hc-border-color);
}

.hc-pharmacy-contact-item {
    display: flex;
    gap: var(--hc-space-sm);
    padding: var(--hc-space-sm) 0;
}

.hc-pharmacy-contact-item svg {
    color: var(--hc-accent-primary);
    flex-shrink: 0;
    margin-top: 2px;
}

.hc-pharmacy-contact-item div {
    display: flex;
    flex-direction: column;
}

.hc-pharmacy-contact-item a {
    color: var(--hc-text-primary);
}

.hc-pharmacy-contact-item a:hover {
    color: var(--hc-accent-primary);
}

.hc-pharmacy-hours {
    font-size: 0.95rem;
    color: var(--hc-text-secondary);
    line-height: 1.8;
}

.hc-pharmacy-shipping-info {
    display: flex;
    flex-direction: column;
    gap: var(--hc-space-sm);
}

.hc-pharmacy-shipping-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--hc-space-xs) 0;
}

.hc-pharmacy-shipping-row span {
    font-size: 0.9rem;
    color: var(--hc-text-secondary);
}

.hc-pharmacy-shipping-row strong {
    font-size: 0.95rem;
    color: var(--hc-text-primary);
}

.hc-pharmacy-shipping-row--express {
    background: #fef3c7;
    margin: var(--hc-space-sm) calc(-1 * var(--hc-space-md));
    padding: var(--hc-space-sm) var(--hc-space-md);
    border-radius: var(--hc-radius-md);
}

.hc-pharmacy-shipping-row--express strong {
    color: #92400e;
}

/* Empty State Compact */
.hc-empty-state--compact {
    padding: var(--hc-space-xl);
    background: var(--hc-bg-light);
    border-radius: var(--hc-radius-lg);
}

.hc-empty-state--compact .hc-empty-state__icon {
    margin-bottom: var(--hc-space-md);
}

.hc-empty-state--compact h3 {
    font-size: 1.1rem;
    margin: 0 0 var(--hc-space-xs) 0;
}

.hc-empty-state--compact p {
    font-size: 0.95rem;
    margin: 0;
}

/* ========================================
   Team System Styles
   ======================================== */

/* Team Member Display */
.hc-team-member {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
}

.hc-team-member img {
    border-radius: 50%;
    width: 32px;
    height: 32px;
}

.hc-team-member span {
    font-weight: 500;
}

/* Role Badges */
.hc-role-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: var(--hc-radius-full);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.hc-role-badge--owner {
    background: linear-gradient(135deg, #ffd700, #ffb800);
    color: #7c5800;
}

.hc-role-badge--admin {
    background: #dbeafe;
    color: #1e40af;
}

.hc-role-badge--editor {
    background: #d1fae5;
    color: #065f46;
}

.hc-role-badge--viewer {
    background: #f3f4f6;
    color: #6b7280;
}

/* Badge Small Variant */
.hc-badge--small {
    padding: 2px 8px;
    font-size: 0.7rem;
    margin-left: var(--hc-space-xs);
}

/* Team Actions */
.hc-team-actions {
    display: flex;
    align-items: center;
    gap: var(--hc-space-sm);
}

.hc-select--small {
    padding: 4px 8px;
    font-size: 0.85rem;
    border: 1px solid var(--hc-border-color);
    border-radius: var(--hc-radius-sm);
    background: var(--hc-white);
    cursor: pointer;
}

.hc-select--small:focus {
    outline: none;
    border-color: var(--hc-accent-primary);
}

/* Role Info Display */
.hc-role-info {
    display: flex;
    flex-direction: column;
    gap: var(--hc-space-sm);
}

.hc-role-info__item {
    display: flex;
    align-items: center;
    gap: var(--hc-space-md);
    padding: var(--hc-space-sm);
    background: var(--hc-bg-light);
    border-radius: var(--hc-radius-md);
}

.hc-role-info__desc {
    color: var(--hc-text-secondary);
    font-size: 0.9rem;
}

/* Dashboard Card Header with Badge */
.hc-dashboard__card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--hc-space-md);
}

.hc-dashboard__card-header h3 {
    margin: 0;
}

/* Dashboard Card Info Variant */
.hc-dashboard__card--info {
    background: var(--hc-bg-light);
    border: 1px dashed var(--hc-border-color);
}

.hc-dashboard__card--info h4 {
    margin: 0 0 var(--hc-space-md) 0;
    font-size: 1rem;
    color: var(--hc-text-secondary);
}

/* Form Row Layout */
.hc-form__row {
    display: flex;
    gap: var(--hc-space-md);
    align-items: flex-end;
    flex-wrap: wrap;
}

.hc-form__row .hc-form-group {
    flex: 1;
    min-width: 200px;
}

.hc-form__row .hc-form-group--submit {
    flex: 0 0 auto;
}

/* Alert Styles */
.hc-alert {
    padding: var(--hc-space-md);
    border-radius: var(--hc-radius-md);
    margin-bottom: var(--hc-space-md);
}

.hc-alert p {
    margin: 0;
}

.hc-alert--warning {
    background: #fef3c7;
    border: 1px solid #f59e0b;
    color: #92400e;
}

.hc-alert--error {
    background: #fee2e2;
    border: 1px solid #ef4444;
    color: #991b1b;
}

.hc-alert--success {
    background: #d1fae5;
    border: 1px solid #10b981;
    color: #065f46;
}

/* Text Utilities */
.hc-text-muted {
    color: var(--hc-text-muted) !important;
}

/* Danger Button Variant */
.hc-btn--danger {
    color: #dc2626 !important;
}

.hc-btn--danger:hover {
    background: #fee2e2 !important;
}

/* Table Responsive */
.hc-table-responsive {
    overflow-x: auto;
    margin: 0 calc(-1 * var(--hc-space-md));
    padding: 0 var(--hc-space-md);
}

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

.hc-table th,
.hc-table td {
    padding: var(--hc-space-sm) var(--hc-space-md);
    text-align: left;
    border-bottom: 1px solid var(--hc-border-color);
}

.hc-table th {
    font-weight: 600;
    color: var(--hc-text-secondary);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: var(--hc-bg-light);
}

.hc-table td {
    font-size: 0.95rem;
}

.hc-table tbody tr:hover {
    background: var(--hc-bg-light);
}

/* Dashboard Card Generic */
.hc-dashboard__card {
    background: var(--hc-white);
    border-radius: var(--hc-radius-lg);
    padding: var(--hc-space-lg);
    box-shadow: var(--hc-shadow-sm);
    margin-bottom: var(--hc-space-md);
}

.hc-dashboard__card h3 {
    margin: 0 0 var(--hc-space-md) 0;
    font-size: 1.25rem;
    font-weight: 700;
}

/* Mobile Responsive for Team Tab */
@media (max-width: 768px) {
    .hc-form__row {
        flex-direction: column;
    }

    .hc-form__row .hc-form-group {
        width: 100%;
        min-width: auto;
    }

    .hc-team-actions {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--hc-space-xs);
    }

    .hc-role-info__item {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--hc-space-xs);
    }

    .hc-table th,
    .hc-table td {
        padding: var(--hc-space-xs) var(--hc-space-sm);
        font-size: 0.85rem;
    }
}

/* ==========================================================================
   Breadcrumbs
   ========================================================================== */

.hc-breadcrumbs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: var(--hc-space-sm) 0;
    font-size: 0.875rem;
    color: var(--hc-text-secondary);
}

.hc-breadcrumb-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.hc-breadcrumb-item a {
    color: var(--hc-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.hc-breadcrumb-item a:hover {
    color: var(--hc-primary-dark);
    text-decoration: underline;
}

.hc-breadcrumb-separator {
    color: var(--hc-text-muted, #9CA3AF);
    font-size: 0.75rem;
}

.hc-breadcrumb-current {
    color: var(--hc-text-primary);
    font-weight: 500;
}

/* Breadcrumbs in Page Header */
.hc-page-header .hc-breadcrumbs {
    margin-bottom: var(--hc-space-sm);
}

/* Mobile Responsive for Breadcrumbs */
@media (max-width: 768px) {
    .hc-breadcrumbs {
        font-size: 0.8rem;
        gap: 0.375rem;
    }

    .hc-breadcrumb-separator {
        font-size: 0.65rem;
    }
}
