/**
 * QuickerBill Store Variable Styles
 * Using naming convention: quickerbill-store-variable-
 * 
 */

:root {
  /** Status Colors - Success/Green (Promotions) */
  --quickerbill-store-variable-success: #22c55e;
  --quickerbill-store-variable-success-hover: #16a34a;
  --quickerbill-store-variable-success-bg: #f0fdf4;
  --quickerbill-store-variable-success-bg-light: #dcfce7;
  --quickerbill-store-variable-success-text: #15803d;
  --quickerbill-store-variable-success-text-dark: #065f46;
  --quickerbill-store-variable-success-border: #bbf7d0;
  --quickerbill-store-variable-success-accent: #86efac;

  /** Status Colors - Error/Red */
  --quickerbill-store-variable-error: #ef4444;
  --quickerbill-store-variable-error-hover: #dc2626;
  --quickerbill-store-variable-error-dark: #b91c1c;
  --quickerbill-store-variable-error-bg: #fef2f2;
  --quickerbill-store-variable-error-bg-light: #fee2e2;
  --quickerbill-store-variable-error-text: #991b1b;
  --quickerbill-store-variable-error-border: #fecaca;

  /** Status Colors - Warning/Orange */
  --quickerbill-store-variable-warning: #f59e0b;
  --quickerbill-store-variable-warning-hover: #ea580c;
  --quickerbill-store-variable-warning-dark: #d97706;
  --quickerbill-store-variable-warning-darker: #c2410c;
  --quickerbill-store-variable-warning-bg: #fef3c7;
  --quickerbill-store-variable-warning-bg-light: #ffedd5;
  --quickerbill-store-variable-warning-bg-orange: #fed7aa;
  --quickerbill-store-variable-warning-text: #92400e;
  --quickerbill-store-variable-warning-text-dark: #78350f;
  --quickerbill-store-variable-warning-text-darker: #7c2d12;
  --quickerbill-store-variable-warning-text-darkest: #9a3412;
  --quickerbill-store-variable-warning-border: #fcd34d;
  --quickerbill-store-variable-warning-accent: #fbbf24;

  /** Status Colors - Info/Blue */
  --quickerbill-store-variable-info: #3b82f6;
  --quickerbill-store-variable-info-hover: #2563eb;
  --quickerbill-store-variable-info-dark: #1e40af;
  --quickerbill-store-variable-info-darker: #1e3a8a;
  --quickerbill-store-variable-info-cyan: #0369a1;
  --quickerbill-store-variable-info-cyan-dark: #075985;
  --quickerbill-store-variable-info-bg: #eff6ff;
  --quickerbill-store-variable-info-bg-light: #dbeafe;
  --quickerbill-store-variable-info-bg-cyan: #e0f2fe;
  --quickerbill-store-variable-info-bg-cyan-light: #f0f9ff;
  --quickerbill-store-variable-info-border: #bfdbfe;
  --quickerbill-store-variable-info-accent: #60a5fa;

  /** Neutral Colors */
  --quickerbill-store-variable-white: #ffffff;
  --quickerbill-store-variable-black: #000000;
  
  --quickerbill-store-variable-gray-50: #f8fafc;
  --quickerbill-store-variable-gray-100: #f1f5f9;
  --quickerbill-store-variable-gray-200: #e2e8f0;
  --quickerbill-store-variable-gray-300: #cbd5e1;
  --quickerbill-store-variable-gray-400: #94a3b8;
  --quickerbill-store-variable-gray-500: #64748b;
  --quickerbill-store-variable-gray-600: #475569;
  --quickerbill-store-variable-gray-700: #334155;
  --quickerbill-store-variable-gray-800: #1e293b;

  /** Shadows */
  --quickerbill-store-variable-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
  --quickerbill-store-variable-shadow-sm-alt: 0 2px 4px rgba(0, 0, 0, 0.05);
  --quickerbill-store-variable-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.15);
  --quickerbill-store-variable-shadow-md-alt: 0 2px 8px rgba(0, 0, 0, 0.15);
  --quickerbill-store-variable-shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.12);
  --quickerbill-store-variable-shadow-lg-alt: 0 8px 20px rgba(0, 0, 0, 0.15);
  --quickerbill-store-variable-shadow-xl: 0 20px 60px rgba(0, 0, 0, 0.3);
  --quickerbill-store-variable-shadow-success: 0 2px 6px rgba(34, 197, 94, 0.3);
  --quickerbill-store-variable-shadow-success-lg: 0 4px 12px rgba(34, 197, 94, 0.15);
  --quickerbill-store-variable-shadow-info: 0 4px 12px rgba(59, 130, 246, 0.4);

  /** Border Radius */
  --quickerbill-store-variable-radius-xs: 3px;
  --quickerbill-store-variable-radius-sm: 4px;
  --quickerbill-store-variable-radius-md: 6px;
  --quickerbill-store-variable-radius-lg: 8px;
  --quickerbill-store-variable-radius-xl: 12px;
  --quickerbill-store-variable-radius-2xl: 16px;
  --quickerbill-store-variable-radius-3xl: 20px;
  --quickerbill-store-variable-radius-full: 50%;

  /** Spacing */
  --quickerbill-store-variable-space-1: 4px;
  --quickerbill-store-variable-space-1-5: 6px;
  --quickerbill-store-variable-space-2: 8px;
  --quickerbill-store-variable-space-2-5: 10px;
  --quickerbill-store-variable-space-3: 12px;
  --quickerbill-store-variable-space-3-5: 14px;
  --quickerbill-store-variable-space-4: 16px;
  --quickerbill-store-variable-space-5: 20px;
  --quickerbill-store-variable-space-6: 24px;
  --quickerbill-store-variable-space-8: 32px;
  --quickerbill-store-variable-space-10: 40px;
  --quickerbill-store-variable-space-15: 60px;

  /** Z-Index */
  --quickerbill-store-variable-z-overlay: 998;
  --quickerbill-store-variable-z-sidebar: 999;
  --quickerbill-store-variable-z-header: 1000;
  --quickerbill-store-variable-z-dropdown: 1001;
  --quickerbill-store-variable-z-impersonation: 1100;

  /** Transitions */
  --quickerbill-store-variable-transition-fast: 0.2s;
  --quickerbill-store-variable-transition-normal: 0.3s;
  --quickerbill-store-variable-transition-slow: 0.6s;
  --quickerbill-store-variable-transition-slower: 0.8s;
  --quickerbill-store-variable-transition-pulse: 2s;
}
/**
 * QuickerBill Store Reset Styles
 * Using naming convention: quickerbill-store-reset-
 */

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

/** Prevent Body Scroll (Mobile Menu Open) */
body.quickerbill-store-reset-menu-open {
    overflow: hidden;
}
/**
 * QuickerBill Store Typography Styles
 * Using naming convention: quickerbill-store-typography-
 */

/** Base Body Typography */
.quickerbill-store-typography-body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: var(--quickerbill-store-variable-secondary);
}
/**
 * QuickerBill Store Layout Styles
 * Using naming convention: quickerbill-store-layout-
 */

/** Layout Wrapper */
.quickerbill-store-layout-wrapper {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/** Layout Main */
.quickerbill-store-layout-main {
    flex: 1;
}
/**
 * QuickerBill Store Header Styles
 * Using naming convention: quickerbill-store-header-
 */

/** Admin Impersonation Bar */
.quickerbill-store-header-imp-bar {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    box-shadow: var(--quickerbill-store-variable-shadow-md-alt);
    position: sticky;
    top: 0;
    z-index: var(--quickerbill-store-variable-z-impersonation);
}

.quickerbill-store-header-imp-bar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 24px;
    max-width: 1400px;
    margin: 0 auto;
}

.quickerbill-store-header-imp-info {
    display: flex;
    align-items: center;
    gap: 12px;
}

.quickerbill-store-header-imp-info .dashicons {
    font-size: 20px;
    width: 20px;
    height: 20px;
    color: var(--quickerbill-store-variable-white);
}

.quickerbill-store-header-imp-text {
    font-size: 14px;
    font-weight: 500;
}

.quickerbill-store-header-imp-text strong {
    font-weight: 700;
}

.quickerbill-store-header-imp-switch-back {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.2);
    color: var(--quickerbill-store-variable-white);
    border: 1px solid rgba(255, 255, 255, 0.3);
    padding: 8px 16px;
    border-radius: var(--quickerbill-store-variable-radius-md);
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-header-imp-switch-back:hover {
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.5);
}

.quickerbill-store-header-imp-switch-back:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

.quickerbill-store-header-imp-switch-back .dashicons {
    font-size: 18px;
    width: 18px;
    height: 18px;
}

.quickerbill-store-header-imp .quickerbill-store-header {
    top: 0;
}

/** Store Header */
.quickerbill-store-header {
    background: var(--quickerbill-store-variable-white);
    border-bottom: 1px solid var(--quickerbill-store-variable-gray-200);
    box-shadow: var(--quickerbill-store-variable-shadow-sm-alt);
    position: sticky;
    top: 0;
    z-index: var(--quickerbill-store-variable-z-header);
}

.quickerbill-store-header-inner {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px;
}

/** Logo */
.quickerbill-store-header-logo {
    flex-shrink: 0;
}

.quickerbill-store-header-logo h1 {
    font-size: 24px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-secondary);
    margin: 0;
}

.quickerbill-store-header-logo img {
    display: block;
    max-height: 40px;
    height: 40px;
    width: auto;
    max-width: 250px;
    object-fit: contain;
    vertical-align: middle;
}

.quickerbill-store-header-logo a {
    text-decoration: none;
    color: inherit;
}

/** Desktop Navigation */
.quickerbill-store-header-nav-desktop {
    margin-left: auto;
    display: flex;
    align-items: center;
}

.quickerbill-store-header-nav-menu-desktop {
    display: flex;
    align-items: center;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.quickerbill-store-header-nav-item-desktop {
    position: relative;
}

.quickerbill-store-header-nav-link-desktop {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    color: var(--quickerbill-store-variable-secondary);
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    border-radius: var(--quickerbill-store-variable-radius-lg);
    transition: all var(--quickerbill-store-variable-transition-fast);
    cursor: pointer;
    white-space: nowrap;
}

.quickerbill-store-header-nav-link-desktop:hover {
    background: var(--quickerbill-store-variable-gray-50);
    color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-header-nav-arrow {
    font-size: 16px;
    width: 16px;
    height: 16px;
    transition: transform var(--quickerbill-store-variable-transition-fast);
    margin-left: 4px;
}

.quickerbill-store-header-nav-item-desktop.quickerbill-store-header-dropdown-open .quickerbill-store-header-nav-arrow {
    transform: rotate(180deg);
}

/** Desktop Dropdown Menu */
.quickerbill-store-header-dropdown-desktop {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    box-shadow: var(--quickerbill-store-variable-shadow-md);
    min-width: 220px;
    max-height: 400px;
    overflow-y: auto;
    display: none;
    z-index: var(--quickerbill-store-variable-z-dropdown);
    padding: 8px 0;
}

.quickerbill-store-header-nav-item-desktop.quickerbill-store-header-dropdown-open .quickerbill-store-header-dropdown-desktop {
    display: block;
    animation: quickerbill-store-animation-slide-down var(--quickerbill-store-variable-transition-fast) ease;
}

.quickerbill-store-header-dropdown-link-desktop {
    display: block;
    padding: 10px 16px;
    color: var(--quickerbill-store-variable-secondary);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-header-dropdown-link-desktop:hover {
    background: var(--quickerbill-store-variable-gray-50);
    color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-header-dropdown-link-desktop.active {
    background: var(--quickerbill-store-variable-info-bg-cyan-light);
    color: var(--quickerbill-store-variable-primary);
    font-weight: 600;
}

/** Header Right Section */
.quickerbill-store-header-right {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-shrink: 0;
    margin-left: 24px;
}

/** Cart Button */
.quickerbill-store-header-cart-button {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background: var(--quickerbill-store-variable-gray-100);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    text-decoration: none;
    color: var(--quickerbill-store-variable-secondary);
    font-weight: 500;
    position: relative;
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-header-cart-button:hover {
    background: var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-header-cart-button .dashicons {
    width: 20px;
    height: 20px;
    font-size: 20px;
}

.quickerbill-store-header-cart-badge {
    position: absolute;
    top: -5px;
    right: -5px;
    background: var(--quickerbill-store-variable-error);
    color: var(--quickerbill-store-variable-white);
    font-size: 11px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 10px;
    min-width: 18px;
    text-align: center;
}

/** User Menu */
.quickerbill-store-header-user-menu {
    position: relative;
}

.quickerbill-store-header-user-menu-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    cursor: pointer;
    transition: all var(--quickerbill-store-variable-transition-fast);
    font-size: 14px;
}

.quickerbill-store-header-user-menu-toggle:hover {
    background: var(--quickerbill-store-variable-gray-200);
    border-color: var(--quickerbill-store-variable-gray-300);
}

.quickerbill-store-header-user-avatar {
    width: 32px;
    height: 32px;
    border-radius: var(--quickerbill-store-variable-radius-full);
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
}

.quickerbill-store-header-user-name {
    font-weight: 500;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-header-dropdown-icon {
    font-size: 16px;
    width: 16px;
    height: 16px;
    color: var(--quickerbill-store-variable-gray-500);
    transition: transform var(--quickerbill-store-variable-transition-fast);
    margin-left: 4px;
}

.quickerbill-store-header-user-menu.quickerbill-store-header-dropdown-open .quickerbill-store-header-dropdown-icon {
    transform: rotate(180deg);
}

/** User Dropdown */
.quickerbill-store-header-user-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    box-shadow: var(--quickerbill-store-variable-shadow-md);
    min-width: 200px;
    display: none;
    z-index: var(--quickerbill-store-variable-z-dropdown);
}

.quickerbill-store-header-user-dropdown.quickerbill-store-header-show {
    display: block;
    animation: quickerbill-store-animation-slide-down var(--quickerbill-store-variable-transition-fast) ease;
}

.quickerbill-store-header-dropdown-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    color: var(--quickerbill-store-variable-secondary);
    text-decoration: none;
    transition: background var(--quickerbill-store-variable-transition-fast);
    font-size: 14px;
    cursor: pointer;
}

.quickerbill-store-header-dropdown-item:first-child {
    border-radius: var(--quickerbill-store-variable-radius-lg) var(--quickerbill-store-variable-radius-lg) 0 0;
}

.quickerbill-store-header-dropdown-item:last-child {
    border-radius: 0 0 var(--quickerbill-store-variable-radius-lg) var(--quickerbill-store-variable-radius-lg);
}

.quickerbill-store-header-dropdown-item:hover {
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-header-dropdown-item .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
    color: var(--quickerbill-store-variable-gray-500);
}

/** Dropdown Divider */
.quickerbill-store-header-dropdown-divider {
    height: 1px;
    background: var(--quickerbill-store-variable-gray-200);
    margin: 4px 0;
}

/** Switch Back Link */
.quickerbill-store-header-switch-back-link {
    background: var(--quickerbill-store-variable-info-bg-cyan-light);
    color: var(--quickerbill-store-variable-info-cyan);
    font-weight: 600;
}

.quickerbill-store-header-switch-back-link:hover {
    background: var(--quickerbill-store-variable-info-bg-cyan);
    color: var(--quickerbill-store-variable-info-cyan-dark);
}

.quickerbill-store-header-switch-back-link .dashicons {
    color: var(--quickerbill-store-variable-info-cyan);
}

/** Disabled State */
.quickerbill-store-header-dropdown-item.quickerbill-store-header-disabled {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
}

/** Login Button */
.quickerbill-store-header-btn-primary {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    border: none;
    border-radius: var(--quickerbill-store-variable-radius-lg);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-header-btn-primary:hover {
    background: var(--quickerbill-store-variable-primary-hover);
    color: var(--quickerbill-store-variable-white);
}

/** Mobile Menu Toggle */
.quickerbill-store-header-mobile-menu-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: var(--quickerbill-store-variable-gray-100);
    border: none;
    color: var(--quickerbill-store-variable-secondary);
    cursor: pointer;
    margin-right: 12px;
    border-radius: var(--quickerbill-store-variable-radius-lg);
    transition: all var(--quickerbill-store-variable-transition-fast) ease;
    padding: 0;
    flex-shrink: 0;
}

.quickerbill-store-header-mobile-menu-toggle:hover {
    background: var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-header-mobile-menu-toggle:active {
    background: var(--quickerbill-store-variable-gray-300);
}

.quickerbill-store-header-mobile-menu-toggle .dashicons {
    font-size: 24px;
    width: 24px;
    height: 24px;
    color: var(--quickerbill-store-variable-secondary);
}

/** Mobile Sidebar Overlay */
.quickerbill-store-header-sidebar-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: var(--quickerbill-store-variable-z-overlay);
    opacity: 0;
    transition: opacity var(--quickerbill-store-variable-transition-normal) ease;
}

.quickerbill-store-header-sidebar-overlay.quickerbill-store-header-show {
    display: block;
    opacity: 1;
}

/** Mobile Sidebar */
.quickerbill-store-header-sidebar-mobile {
    position: fixed;
    top: 70px;
    left: -280px;
    bottom: 0;
    width: 280px;
    background: var(--quickerbill-store-variable-white);
    z-index: var(--quickerbill-store-variable-z-sidebar);
    transition: left var(--quickerbill-store-variable-transition-normal) ease;
    overflow-y: auto;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.1);
    padding: 24px 0;
    display: none;
}

.quickerbill-store-header-sidebar-mobile.quickerbill-store-header-show {
    left: 0;
}

/** Mobile Sidebar Navigation */
.quickerbill-store-header-nav-menu-mobile {
    list-style: none;
    margin: 0;
    padding: 0;
}

.quickerbill-store-header-nav-item-mobile {
    margin-bottom: 4px;
    position: relative;
}

.quickerbill-store-header-nav-link-mobile {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 24px;
    color: var(--quickerbill-store-variable-gray-500);
    text-decoration: none;
    transition: all var(--quickerbill-store-variable-transition-fast);
    font-weight: 500;
    cursor: pointer;
}

.quickerbill-store-header-nav-link-mobile:hover {
    background: var(--quickerbill-store-variable-gray-50);
    color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-header-nav-item-mobile.quickerbill-store-header-has-dropdown > .quickerbill-store-header-nav-link-mobile {
    cursor: pointer;
}

.quickerbill-store-header-dropdown-toggle {
    transition: transform var(--quickerbill-store-variable-transition-normal) ease;
    font-size: 16px;
    width: 16px;
    height: 16px;
}

.quickerbill-store-header-nav-item-mobile.quickerbill-store-header-dropdown-open > .quickerbill-store-header-nav-link-mobile .quickerbill-store-header-dropdown-toggle {
    transform: rotate(180deg);
}

.quickerbill-store-header-dropdown-menu-mobile {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height var(--quickerbill-store-variable-transition-normal) ease;
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-header-nav-item-mobile.quickerbill-store-header-dropdown-open .quickerbill-store-header-dropdown-menu-mobile {
    max-height: 500px;
}

.quickerbill-store-header-dropdown-item-mobile {
    margin: 0;
}

.quickerbill-store-header-dropdown-link-mobile {
    display: block;
    padding: 10px 24px 10px 48px;
    color: var(--quickerbill-store-variable-gray-500);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: color var(--quickerbill-store-variable-transition-fast) ease;
}

.quickerbill-store-header-dropdown-link-mobile:hover {
    color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-header-dropdown-link-mobile.active {
    color: var(--quickerbill-store-variable-primary);
    font-weight: 600;
}
/**
 * QuickerBill Store Footer Styles
 * Using naming convention: quickerbill-store-footer-
 */

/** Footer Structure */
.quickerbill-store-footer {
    background: var(--quickerbill-store-variable-white);
    border-top: 1px solid var(--quickerbill-store-variable-gray-200);
    padding: 2rem 0;
    margin-top: auto;
}

.quickerbill-store-footer-inner {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 24px;
    text-align: center;
}

.quickerbill-store-footer-inner p {
    margin: 0;
    font-size: 14px;
    color: var(--quickerbill-store-variable-gray-500);
}
/**
 * QuickerBill Store Utility Styles
 * Using naming convention: quickerbill-store-utility-
 */

/** Spinner - Small (16px - for buttons/inline) */
.quickerbill-store-utility-spinner-small {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: var(--quickerbill-store-variable-white);
    border-radius: var(--quickerbill-store-variable-radius-full);
    animation: quickerbill-store-animation-spin var(--quickerbill-store-variable-transition-slow) linear infinite;
}

/** Spinner - Medium (24px - default) */
.quickerbill-store-utility-spinner {
    display: inline-block;
    width: 24px;
    height: 24px;
    border: 3px solid var(--quickerbill-store-variable-gray-200);
    border-top-color: var(--quickerbill-store-variable-primary);
    border-radius: var(--quickerbill-store-variable-radius-full);
    animation: quickerbill-store-animation-spin var(--quickerbill-store-variable-transition-slower) linear infinite;
}

/** Spinner - Large (40px - for page loading) */
.quickerbill-store-utility-spinner-large {
    display: inline-block;
    width: 40px;
    height: 40px;
    border: 4px solid var(--quickerbill-store-variable-gray-200);
    border-top-color: var(--quickerbill-store-variable-primary);
    border-radius: var(--quickerbill-store-variable-radius-full);
    animation: quickerbill-store-animation-spin var(--quickerbill-store-variable-transition-slower) linear infinite;
}

/** Show/Hide Utility */
.quickerbill-store-utility-show {
    display: block;
}

.quickerbill-store-utility-hide {
    display: none;
}
/**
 * QuickerBill Store Animation Styles
 * Using naming convention: quickerbill-store-animation-
 */

/** Spin Animation (for spinners/loading) */
@keyframes quickerbill-store-animation-spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

/** Slide Down Animation (for dropdowns/modals) */
@keyframes quickerbill-store-animation-slide-down {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/** Pulse Animation (for promotion badges/timers) */
@keyframes quickerbill-store-animation-pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

/** Promotion Pulse Animation (for SALE badges) */
@keyframes quickerbill-store-animation-promotion-pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.8;
    }
}
/**
 * QuickerBill Store Button Styles
 * Using naming convention: quickerbill-store-button-
 */

/** Base Button */
.quickerbill-store-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    border: none;
    border-radius: var(--quickerbill-store-variable-radius-lg);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-button .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

/** Primary Button */
.quickerbill-store-button-primary {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
}

.quickerbill-store-button-primary:hover {
    background: var(--quickerbill-store-variable-primary-hover);
    color: var(--quickerbill-store-variable-white);
}

/** Secondary Button */
.quickerbill-store-button-secondary {
    background: var(--quickerbill-store-variable-gray-100);
    color: var(--quickerbill-store-variable-secondary);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-button-secondary:hover {
    background: var(--quickerbill-store-variable-gray-200);
    border-color: var(--quickerbill-store-variable-gray-300);
}

/** Success Button */
.quickerbill-store-button-success {
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    cursor: default;
}

.quickerbill-store-button-success:hover {
    background: var(--quickerbill-store-variable-success-hover);
}

.quickerbill-store-button-success:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/** Danger Button */
.quickerbill-store-button-danger {
    background: var(--quickerbill-store-variable-error-bg-light);
    color: var(--quickerbill-store-variable-error-hover);
}

.quickerbill-store-button-danger:hover {
    background: var(--quickerbill-store-variable-error-border);
}

/** Button Sizes */
.quickerbill-store-button-small {
    padding: 6px 12px;
    font-size: 13px;
}

.quickerbill-store-button-large {
    padding: 14px 28px;
    font-size: 16px;
}

/** Block Button */
.quickerbill-store-button-block {
    width: 100%;
    display: flex;
}

/** Disabled State */
.quickerbill-store-button.disabled,
.quickerbill-store-button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/** Link Button */
.quickerbill-store-button-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    color: var(--quickerbill-store-variable-secondary);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all var(--quickerbill-store-variable-transition-fast);
    width: 100%;
}

.quickerbill-store-button-link:hover {
    background: var(--quickerbill-store-variable-gray-100);
    border-color: var(--quickerbill-store-variable-gray-300);
}

.quickerbill-store-button-link .dashicons {
    width: 16px;
    height: 16px;
    font-size: 16px;
}

/** Action Button */
.quickerbill-store-button-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    background: var(--quickerbill-store-variable-gray-50);
    color: var(--quickerbill-store-variable-gray-500);
    cursor: pointer;
    transition: all var(--quickerbill-store-variable-transition-fast);
    padding: 0;
}

.quickerbill-store-button-action .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
}

.quickerbill-store-button-action:hover {
    background: var(--quickerbill-store-variable-gray-100);
    border-color: var(--quickerbill-store-variable-gray-300);
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-button-action:active {
    transform: scale(0.95);
}

.quickerbill-store-button-action-edit:hover {
    background: var(--quickerbill-store-variable-info-bg-light);
    border-color: var(--quickerbill-store-variable-info);
    color: var(--quickerbill-store-variable-info);
}

.quickerbill-store-button-action-danger:hover {
    background: var(--quickerbill-store-variable-error-bg-light);
    border-color: var(--quickerbill-store-variable-error);
    color: var(--quickerbill-store-variable-error);
}

.quickerbill-store-button-action:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.quickerbill-store-button-action-loading {
    pointer-events: none;
}

.quickerbill-store-button-action-loading .dashicons {
    animation: quickerbill-store-animation-spin var(--quickerbill-store-variable-transition-slow) linear infinite;
}

/** Trash Button */
.quickerbill-store-button-trash {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    cursor: pointer;
    transition: all var(--quickerbill-store-variable-transition-fast);
    padding: 0;
}

.quickerbill-store-button-trash:hover {
    background: var(--quickerbill-store-variable-error-bg);
    border-color: var(--quickerbill-store-variable-error);
}

.quickerbill-store-button-trash .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
    color: var(--quickerbill-store-variable-gray-500);
    transition: color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-button-trash:hover .dashicons {
    color: var(--quickerbill-store-variable-error);
}

/** Load More Button */
.quickerbill-store-button-load-more {
    min-width: 140px;
    padding: 10px 20px;
    font-size: 14px;
}

.quickerbill-store-button-load-more .dashicons {
    width: 16px;
    height: 16px;
    font-size: 16px;
}
/**
 * QuickerBill Store Form Styles
 * Using naming convention: quickerbill-store-form-
 */

/** Form Group */
.quickerbill-store-form-group {
    margin-bottom: 20px;
}

.quickerbill-store-form-group label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 8px;
}

/** Required Indicator */
.quickerbill-store-form-required {
    color: var(--quickerbill-store-variable-error);
    margin-left: 2px;
}

/** Form Hint */
.quickerbill-store-form-hint {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    margin-top: 6px;
    margin-bottom: 0;
}

.quickerbill-store-form-field-hint {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    margin-top: 6px;
    margin-bottom: 0;
}

/** Text Input */
.quickerbill-store-form-input {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    font-size: 14px;
    color: var(--quickerbill-store-variable-secondary);
    transition: border-color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-form-input:focus {
    outline: none;
    border-color: var(--quickerbill-store-variable-primary);
    box-shadow: 0 0 0 3px var(--quickerbill-store-variable-primary-light);
}

/** Select Dropdown */
.quickerbill-store-form-select {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    font-size: 14px;
    color: var(--quickerbill-store-variable-secondary);
    transition: border-color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-form-select:focus {
    outline: none;
    border-color: var(--quickerbill-store-variable-primary);
    box-shadow: 0 0 0 3px var(--quickerbill-store-variable-primary-light);
}

/** Textarea */
.quickerbill-store-form-textarea {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    font-size: 14px;
    font-family: inherit;
    color: var(--quickerbill-store-variable-secondary);
    resize: vertical;
    transition: border-color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-form-textarea:focus {
    outline: none;
    border-color: var(--quickerbill-store-variable-primary);
    box-shadow: 0 0 0 3px var(--quickerbill-store-variable-primary-light);
}

/** Input Group (with button) */
.quickerbill-store-form-input-group {
    display: flex;
    gap: 12px;
}

.quickerbill-store-form-input-group .quickerbill-store-form-input {
    flex: 1;
}

.quickerbill-store-form-input-group .quickerbill-store-button {
    white-space: nowrap;
}

/** Form Rows - 2 Columns */
.quickerbill-store-form-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}

.quickerbill-store-form-group-half {
    margin-bottom: 0;
}

/** Form Rows - 3 Columns */
.quickerbill-store-form-row-three {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}

.quickerbill-store-form-group-third {
    margin-bottom: 0;
}

/** Password Input with Toggle */
.quickerbill-store-form-password-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.quickerbill-store-form-password-with-toggle {
    padding-right: 45px;
}

.quickerbill-store-form-password-toggle {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 40px;
    background: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--quickerbill-store-variable-gray-500);
    transition: color var(--quickerbill-store-variable-transition-fast);
    padding: 0;
    z-index: 1;
}

.quickerbill-store-form-password-toggle:hover {
    color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-form-password-toggle:focus {
    outline: 2px solid var(--quickerbill-store-variable-primary);
    outline-offset: -2px;
    border-radius: var(--quickerbill-store-variable-radius-sm);
}

.quickerbill-store-form-password-toggle .dashicons {
    width: 20px;
    height: 20px;
    font-size: 20px;
}

.quickerbill-store-form-password-toggle .dashicons-visibility {
    opacity: 0.7;
}

.quickerbill-store-form-password-toggle:hover .dashicons-visibility {
    opacity: 1;
}

.quickerbill-store-form-password-toggle .dashicons-hidden {
    opacity: 0.9;
}

.quickerbill-store-form-password-toggle:hover .dashicons-hidden {
    opacity: 1;
}

/** Password Requirements */
.quickerbill-store-form-password-requirements {
    margin-top: 12px;
    padding: 16px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
}

.quickerbill-store-form-password-requirements-title {
    margin: 0 0 12px 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-form-password-requirements-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.quickerbill-store-form-password-requirement {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    line-height: 1.5;
    transition: all var(--quickerbill-store-variable-transition-fast) ease;
}

.quickerbill-store-form-password-requirement.invalid {
    color: var(--quickerbill-store-variable-error-hover);
}

.quickerbill-store-form-password-requirement.invalid .quickerbill-store-form-requirement-icon::before {
    content: '\2717';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: var(--quickerbill-store-variable-radius-full);
    background: var(--quickerbill-store-variable-error-bg-light);
    color: var(--quickerbill-store-variable-error-hover);
    font-weight: 700;
    font-size: 11px;
}

.quickerbill-store-form-password-requirement.valid {
    color: var(--quickerbill-store-variable-success-text);
}

.quickerbill-store-form-password-requirement.valid .quickerbill-store-form-requirement-icon::before {
    content: '\2713';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: var(--quickerbill-store-variable-radius-full);
    background: var(--quickerbill-store-variable-success-bg-light);
    color: var(--quickerbill-store-variable-success-text);
    font-weight: 700;
    font-size: 12px;
}

.quickerbill-store-form-requirement-icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.quickerbill-store-form-requirement-text {
    flex: 1;
}

/** Password Match Message */
.quickerbill-store-form-password-match-message {
    margin-top: 8px;
    padding: 10px 12px;
    border-radius: var(--quickerbill-store-variable-radius-md);
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 8px;
    animation: quickerbill-store-animation-slide-down var(--quickerbill-store-variable-transition-fast) ease;
}

.quickerbill-store-form-password-match-message.match {
    background: var(--quickerbill-store-variable-success-bg-light);
    border: 1px solid var(--quickerbill-store-variable-success-border);
    color: var(--quickerbill-store-variable-success-text);
}

.quickerbill-store-form-match-icon::before {
    content: '\2713';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: var(--quickerbill-store-variable-radius-full);
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    font-weight: 700;
    font-size: 12px;
}

.quickerbill-store-form-match-text {
    font-weight: 500;
}

.quickerbill-store-form-password-match-message.no-match {
    background: var(--quickerbill-store-variable-error-bg-light);
    border: 1px solid var(--quickerbill-store-variable-error-border);
    color: var(--quickerbill-store-variable-error-hover);
}

.quickerbill-store-form-no-match-icon::before {
    content: '\2717';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: var(--quickerbill-store-variable-radius-full);
    background: var(--quickerbill-store-variable-error);
    color: var(--quickerbill-store-variable-white);
    font-weight: 700;
    font-size: 11px;
}

.quickerbill-store-form-no-match-text {
    font-weight: 500;
}

/** Phone Input Wrapper */
.quickerbill-store-form-phone-wrapper {
    display: flex;
    gap: 8px;
}

.quickerbill-store-form-country-code-display {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 14px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    white-space: nowrap;
    font-size: 14px;
    line-height: normal;
}

.quickerbill-store-form-flag-icon {
    font-size: 18px;
    line-height: 1;
}

.quickerbill-store-form-code-value {
    color: var(--quickerbill-store-variable-secondary);
    font-size: 14px;
}

.quickerbill-store-form-phone-field {
    flex: 1;
}

/** Checkbox Label */
.quickerbill-store-form-checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    font-size: 14px;
    color: var(--quickerbill-store-variable-secondary);
    font-weight: 600;
}

.quickerbill-store-form-checkbox-label input[type="checkbox"] {
    margin-top: 2px;
    width: 18px;
    height: 18px;
    cursor: pointer;
}

.quickerbill-store-form-checkbox-label a {
    color: var(--quickerbill-store-variable-primary);
    text-decoration: underline;
    font-weight: 600;
}

.quickerbill-store-form-checkbox-label a:hover {
    color: var(--quickerbill-store-variable-primary-hover);
}

/** Email Check Message */
.quickerbill-store-form-email-check-message {
    margin-top: 10px;
    padding: 10px 14px;
    border-radius: var(--quickerbill-store-variable-radius-md);
    font-size: 13px;
    line-height: 1.5;
    display: flex;
    align-items: center;
    gap: 8px;
    animation: quickerbill-store-animation-slide-down var(--quickerbill-store-variable-transition-fast) ease;
}

.quickerbill-store-form-email-check-message.error {
    background: var(--quickerbill-store-variable-error-bg);
    border: 1px solid var(--quickerbill-store-variable-error-border);
    color: var(--quickerbill-store-variable-error-hover);
}

.quickerbill-store-form-email-check-message.success {
    background: var(--quickerbill-store-variable-success-bg);
    border: 1px solid var(--quickerbill-store-variable-success-border);
    color: var(--quickerbill-store-variable-success-text);
}

.quickerbill-store-form-email-check-message.checking {
    background: var(--quickerbill-store-variable-info-bg);
    border: 1px solid var(--quickerbill-store-variable-info-border);
    color: var(--quickerbill-store-variable-info-dark);
}

.quickerbill-store-form-email-check-message .dashicons {
    width: 16px;
    height: 16px;
    font-size: 16px;
    flex-shrink: 0;
}

.quickerbill-store-form-email-check-message.error .dashicons {
    color: var(--quickerbill-store-variable-error-hover);
}

.quickerbill-store-form-email-check-message.success .dashicons {
    color: var(--quickerbill-store-variable-success-text);
}

/** Verification Input */
.quickerbill-store-form-verification-input {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    font-size: 14px;
    color: var(--quickerbill-store-variable-secondary);
    transition: border-color var(--quickerbill-store-variable-transition-fast);
    text-align: left;
    letter-spacing: normal;
    font-weight: normal;
}

.quickerbill-store-form-verification-input:focus {
    outline: none;
    border-color: var(--quickerbill-store-variable-primary);
    box-shadow: 0 0 0 3px var(--quickerbill-store-variable-primary-light);
}

/** Code Timer */
#code-timer,
#login-2fa-timer,
#login-email-verify-timer {
    font-weight: 600;
    color: var(--quickerbill-store-variable-primary);
    font-size: 13px;
}

#code-timer.expiring,
#login-2fa-timer.expiring,
#login-email-verify-timer.expiring {
    color: var(--quickerbill-store-variable-warning);
    animation: quickerbill-store-animation-pulse 1s infinite;
}

#code-timer.expired,
#login-2fa-timer.expired,
#login-email-verify-timer.expired {
    color: var(--quickerbill-store-variable-error-hover);
}

/** Verified Email Display */
.quickerbill-store-form-verified-email-display {
    background: var(--quickerbill-store-variable-success-bg);
    border: 2px solid var(--quickerbill-store-variable-success);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 14px 16px;
    margin-bottom: 20px;
    font-weight: 500;
    color: var(--quickerbill-store-variable-success-text);
}

.quickerbill-store-form-verified-email-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 8px;
    min-width: 0;
}

.quickerbill-store-form-verified-icon {
    width: 24px;
    height: 24px;
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    border-radius: var(--quickerbill-store-variable-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
}

.quickerbill-store-form-verified-email-display .quickerbill-store-form-verified-email-row > span:last-child {
    flex: 1;
    color: var(--quickerbill-store-variable-success-text);
    font-weight: 600;
    font-size: 14px;
    word-break: break-word;
    overflow-wrap: break-word;
    min-width: 0;
}

.quickerbill-store-form-change-email-link {
    background: none;
    border: none;
    color: var(--quickerbill-store-variable-success);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
    padding: 0;
    transition: color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-form-change-email-link:hover {
    color: var(--quickerbill-store-variable-success-hover);
}

.quickerbill-store-form-change-email-link:focus {
    outline: 2px solid var(--quickerbill-store-variable-success);
    outline-offset: 2px;
    border-radius: var(--quickerbill-store-variable-radius-sm);
}

/** Verified Email Banner */
.quickerbill-store-form-verified-email-banner {
    background: var(--quickerbill-store-variable-info-bg);
    border: 1px solid var(--quickerbill-store-variable-info-accent);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 16px;
    margin-bottom: 20px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.quickerbill-store-form-info-icon {
    font-size: 24px;
    flex-shrink: 0;
    line-height: 1;
}

.quickerbill-store-form-verified-email-banner strong {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-info-dark);
    margin-bottom: 4px;
}

.quickerbill-store-form-verified-email-banner span {
    font-size: 14px;
    color: var(--quickerbill-store-variable-info-dark);
}
/**
 * QuickerBill Store Card Styles
 * Using naming convention: quickerbill-store-card-
 */

/** Base Card */
.quickerbill-store-card {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 24px;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

/** Product Card */
.quickerbill-store-card-product {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    overflow: hidden;
    transition: all var(--quickerbill-store-variable-transition-normal);
    display: flex;
    flex-direction: column;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
    position: relative;
}

.quickerbill-store-card-product:hover {
    box-shadow: var(--quickerbill-store-variable-shadow-lg);
    transform: translateY(-4px);
    border-color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-card-product-header {
    display: none;
}

.quickerbill-store-card-product-body {
    padding: 32px 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.quickerbill-store-card-product-body-centered {
    text-align: center;
    align-items: center;
    gap: 20px;
}

.quickerbill-store-card-product-name {
    font-size: 22px;
    font-weight: 600;
    margin: 0;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.3;
}

.quickerbill-store-card-product-footer {
    display: none;
}

/** Product Card Promotion */
.quickerbill-store-card-product.has-promotion {
    border-color: var(--quickerbill-store-variable-success-accent);
}

.quickerbill-store-card-product.has-promotion::before {
    content: "SALE";
    position: absolute;
    top: 16px;
    right: 16px;
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    font-size: 11px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: var(--quickerbill-store-variable-radius-md);
    letter-spacing: 0.5px;
    z-index: 1;
    box-shadow: var(--quickerbill-store-variable-shadow-success);
}

.quickerbill-store-card-product.has-promotion:hover {
    border-color: var(--quickerbill-store-variable-success);
    box-shadow: 0 8px 24px rgba(34, 197, 94, 0.15);
}

/** Summary Card */
.quickerbill-store-card-summary {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 24px;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-card-summary h3 {
    margin: 0 0 20px 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    padding-bottom: 16px;
    border-bottom: 2px solid var(--quickerbill-store-variable-gray-200);
}

/** Radio Card */
.quickerbill-store-card-radio {
    position: relative;
    cursor: pointer;
}

.quickerbill-store-card-radio input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.quickerbill-store-card-radio-content {
    border: 2px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 20px 16px;
    text-align: center;
    transition: all var(--quickerbill-store-variable-transition-fast);
    background: var(--quickerbill-store-variable-white);
}

.quickerbill-store-card-radio-content strong {
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 6px;
}

.quickerbill-store-card-radio-content p {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    margin: 0;
}

.quickerbill-store-card-radio:hover .quickerbill-store-card-radio-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-card-radio input[type="radio"]:checked + .quickerbill-store-card-radio-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-primary-light);
}

/** Domain Option Card */
.quickerbill-store-card-domain-option {
    position: relative;
    cursor: pointer;
}

.quickerbill-store-card-domain-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.quickerbill-store-card-domain-option-content {
    border: 2px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 24px 16px;
    text-align: center;
    transition: all var(--quickerbill-store-variable-transition-fast);
    background: var(--quickerbill-store-variable-white);
    height: 100%;
}

.quickerbill-store-card-domain-option-content .dashicons {
    font-size: 32px;
    width: 32px;
    height: 32px;
    color: var(--quickerbill-store-variable-gray-400);
    margin-bottom: 12px;
}

.quickerbill-store-card-domain-option-content strong {
    display: block;
    font-size: 15px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 8px;
}

.quickerbill-store-card-domain-option-content p {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    margin: 0;
}

.quickerbill-store-card-domain-option:hover .quickerbill-store-card-domain-option-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-card-domain-option input[type="radio"]:checked + .quickerbill-store-card-domain-option-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-primary-light);
}

.quickerbill-store-card-domain-option input[type="radio"]:checked + .quickerbill-store-card-domain-option-content .dashicons {
    color: var(--quickerbill-store-variable-primary);
}

/** Billing Cycle Card */
.quickerbill-store-card-billing-cycle {
    position: relative;
    cursor: pointer;
}

.quickerbill-store-card-billing-cycle input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.quickerbill-store-card-cycle-content {
    border: 2px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 20px 16px;
    text-align: center;
    transition: all var(--quickerbill-store-variable-transition-fast);
    background: var(--quickerbill-store-variable-white);
}

.quickerbill-store-card-cycle-label {
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 12px;
}

.quickerbill-store-card-cycle-price {
    font-size: 24px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 4px;
}

.quickerbill-store-card-cycle-setup {
    font-size: 12px;
    color: var(--quickerbill-store-variable-gray-500);
}

.quickerbill-store-card-billing-cycle:hover .quickerbill-store-card-cycle-content {
    border-color: var(--quickerbill-store-variable-primary);
    transform: translateY(-2px);
    box-shadow: var(--quickerbill-store-variable-shadow-md);
}

.quickerbill-store-card-billing-cycle input[type="radio"]:checked + .quickerbill-store-card-cycle-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-primary-light);
    box-shadow: var(--quickerbill-store-variable-shadow-md);
}

/** Billing Cycle Card Promotion */
.quickerbill-store-card-billing-cycle.has-promotion {
    position: relative;
}

.quickerbill-store-card-billing-cycle.has-promotion::before {
    content: "SALE";
    position: absolute;
    top: 8px;
    right: 8px;
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    font-size: 10px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: var(--quickerbill-store-variable-radius-sm);
    letter-spacing: 0.5px;
    z-index: 1;
    box-shadow: var(--quickerbill-store-variable-shadow-success);
}

.quickerbill-store-card-billing-cycle.has-promotion input[type="radio"]:checked + .quickerbill-store-card-cycle-content {
    border-color: var(--quickerbill-store-variable-success);
    background: var(--quickerbill-store-variable-success-bg);
}

.quickerbill-store-card-billing-cycle.has-promotion:hover .quickerbill-store-card-cycle-content {
    border-color: var(--quickerbill-store-variable-success);
}

/** Config Option Card */
.quickerbill-store-card-option {
    position: relative;
    cursor: pointer;
}

.quickerbill-store-card-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.quickerbill-store-card-option-content {
    border: 2px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 16px 12px;
    text-align: center;
    transition: all var(--quickerbill-store-variable-transition-fast);
    background: var(--quickerbill-store-variable-white);
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.quickerbill-store-card-option-label {
    font-size: 13px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.3;
    margin-bottom: 4px;
}

.quickerbill-store-card-option-price {
    font-size: 18px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-card-option-setup {
    font-size: 11px;
    color: var(--quickerbill-store-variable-gray-500);
    font-weight: 400;
}

.quickerbill-store-card-option:hover .quickerbill-store-card-option-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-card-option input[type="radio"]:checked + .quickerbill-store-card-option-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-primary-light);
}

/** Config Option Card Promotion */
.quickerbill-store-card-option.has-promotion::before {
    content: "SALE";
    position: absolute;
    top: 6px;
    right: 6px;
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    font-size: 9px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: var(--quickerbill-store-variable-radius-xs);
    letter-spacing: 0.5px;
    z-index: 1;
    box-shadow: 0 1px 3px rgba(34, 197, 94, 0.3);
}

.quickerbill-store-card-option.has-promotion input[type="radio"]:checked + .quickerbill-store-card-option-content {
    border-color: var(--quickerbill-store-variable-success);
    background: var(--quickerbill-store-variable-success-bg);
}

.quickerbill-store-card-option.has-promotion:hover .quickerbill-store-card-option-content {
    border-color: var(--quickerbill-store-variable-success);
}

/** Payment Method Card */
.quickerbill-store-card-payment-method {
    position: relative;
    cursor: pointer;
}

.quickerbill-store-card-payment-method input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.quickerbill-store-card-payment-method-content {
    border: 2px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 20px;
    text-align: center;
    transition: all var(--quickerbill-store-variable-transition-fast);
    background: var(--quickerbill-store-variable-white);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.quickerbill-store-card-payment-method-logo {
    max-width: 80px;
    max-height: 40px;
    height: 20px;
    width: auto;
    object-fit: contain;
    display: block;
}

.quickerbill-store-card-payment-method-content strong {
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.4;
}

.quickerbill-store-card-payment-method:hover .quickerbill-store-card-payment-method-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-card-payment-method input[type="radio"]:checked + .quickerbill-store-card-payment-method-content {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-primary-light);
}

/** Alternative Domain Card */
.quickerbill-store-card-alternative-domain {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 16px 20px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 2px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    transition: all var(--quickerbill-store-variable-transition-fast);
    position: relative;
    flex-wrap: wrap;
}

.quickerbill-store-card-alternative-domain:hover {
    background: var(--quickerbill-store-variable-white);
    border-color: var(--quickerbill-store-variable-primary);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.quickerbill-store-card-alternative-domain.addons-open {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-white);
    box-shadow: var(--quickerbill-store-variable-shadow-md);
}

.quickerbill-store-card-alternative-domain.has-promotion::before {
    content: "SALE";
    position: absolute;
    top: 8px;
    left: 8px;
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    font-size: 10px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: var(--quickerbill-store-variable-radius-sm);
    letter-spacing: 0.5px;
    z-index: 1;
    box-shadow: var(--quickerbill-store-variable-shadow-success);
}

/** Empty Cart Card */
.quickerbill-store-card-empty-cart {
    background: var(--quickerbill-store-variable-white);
    border: 2px dashed var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-2xl);
    padding: 60px 40px;
    text-align: center;
    max-width: 500px;
    width: 100%;
}

.quickerbill-store-card-empty-cart-icon {
    width: 80px;
    height: 80px;
    font-size: 80px;
    color: var(--quickerbill-store-variable-gray-300);
    margin: 0 auto 24px;
    display: block;
}

.quickerbill-store-card-empty-cart h2 {
    font-size: 28px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-secondary);
    margin: 0 0 16px 0;
}

.quickerbill-store-card-empty-cart p {
    font-size: 16px;
    color: var(--quickerbill-store-variable-gray-500);
    margin: 0 0 32px 0;
    line-height: 1.6;
}

/** Order Confirmation Card */
.quickerbill-store-card-order-confirmation {
    background: var(--quickerbill-store-variable-white);
    border-radius: var(--quickerbill-store-variable-radius-2xl);
    padding: 60px 40px;
    max-width: 500px;
    width: 100%;
    text-align: center;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.quickerbill-store-card-order-confirmation-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 32px;
    background: var(--quickerbill-store-variable-success-bg-light);
    border-radius: var(--quickerbill-store-variable-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
}

.quickerbill-store-card-order-confirmation-icon .dashicons {
    font-size: 48px;
    width: 48px;
    height: 48px;
    color: var(--quickerbill-store-variable-success-hover);
}

.quickerbill-store-card-order-confirmation h1 {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 20px 0;
    color: var(--quickerbill-store-variable-gray-800);
    line-height: 1.3;
}

.quickerbill-store-card-order-confirmation p {
    font-size: 16px;
    color: var(--quickerbill-store-variable-gray-500);
    margin: 0 0 32px 0;
    line-height: 1.6;
}

/** Section Card */
.quickerbill-store-card-section {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 32px;
    margin-bottom: 24px;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-card-section h2 {
    margin: 0 0 24px 0;
    font-size: 20px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    padding-bottom: 16px;
    border-bottom: 2px solid var(--quickerbill-store-variable-gray-200);
}

/** Payment Card */
.quickerbill-store-card-payment {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 24px;
    margin-bottom: 16px;
}

.quickerbill-store-card-payment-title {
    margin: 0 0 20px 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}
/**
 * QuickerBill Store Alert Styles
 * Using naming convention: quickerbill-store-alert-
 */

/** Base Alert */
.quickerbill-store-alert {
    padding: 12px 16px;
    border-radius: var(--quickerbill-store-variable-radius-md);
    font-size: 14px;
    margin-top: 12px;
}

/** Success Alert */
.quickerbill-store-alert-success {
    background: var(--quickerbill-store-variable-success-bg);
    border-left: 3px solid var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-success-text);
}

/** Error Alert */
.quickerbill-store-alert-error {
    background: var(--quickerbill-store-variable-error-bg);
    border-left: 3px solid var(--quickerbill-store-variable-error);
    color: var(--quickerbill-store-variable-error-hover);
}

/** Warning Alert */
.quickerbill-store-alert-warning {
    background: #fffbeb;
    border-left: 3px solid var(--quickerbill-store-variable-warning);
    color: var(--quickerbill-store-variable-warning-text-dark);
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.quickerbill-store-alert-warning .dashicons {
    color: var(--quickerbill-store-variable-warning);
    font-size: 20px;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

.quickerbill-store-alert-warning p {
    margin: 0;
    font-size: 14px;
}

/** Checking/Loading Alert */
.quickerbill-store-alert-checking {
    padding: 12px 16px;
    background: var(--quickerbill-store-variable-gray-100);
    border-left: 3px solid var(--quickerbill-store-variable-gray-500);
    border-radius: var(--quickerbill-store-variable-radius-sm);
    color: var(--quickerbill-store-variable-gray-600);
    font-size: 14px;
}

/** Domain Success Alert (with icon) */
.quickerbill-store-alert-domain-success {
    padding: 12px 16px;
    background: var(--quickerbill-store-variable-success-bg);
    border-left: 3px solid var(--quickerbill-store-variable-success);
    border-radius: var(--quickerbill-store-variable-radius-sm);
    color: var(--quickerbill-store-variable-success-text);
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.quickerbill-store-alert-domain-success .dashicons {
    color: var(--quickerbill-store-variable-success);
    font-size: 20px;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

/** Domain Error Alert (with icon) */
.quickerbill-store-alert-domain-error {
    padding: 12px 16px;
    background: var(--quickerbill-store-variable-error-bg);
    border-left: 3px solid var(--quickerbill-store-variable-error);
    border-radius: var(--quickerbill-store-variable-radius-sm);
    color: var(--quickerbill-store-variable-error-hover);
    font-size: 14px;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex-wrap: wrap;
}

.quickerbill-store-alert-domain-error .dashicons {
    color: var(--quickerbill-store-variable-error);
    font-size: 20px;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}
/**
 * Store 404 Styles
 * Using naming convention: quickerbill-store-404-
 */

/**
 * 404 Error Page - Base Styles
 */
.quickerbill-store-404 {
    max-width: 600px;
    margin: 60px auto;
    text-align: center;
    padding: 40px 20px;
}

.quickerbill-store-404-icon {
    font-size: 80px;
    color: var(--quickerbill-store-variable-error);
    margin-bottom: 20px;
}

.quickerbill-store-404-icon .dashicons {
    width: 80px;
    height: 80px;
    font-size: 80px;
}

.quickerbill-store-404 h1 {
    font-size: 32px;
    margin-bottom: 15px;
    color: var(--quickerbill-store-variable-gray-800);
}

.quickerbill-store-404 p {
    font-size: 16px;
    color: var(--quickerbill-store-variable-gray-500);
    margin-bottom: 30px;
}

/**
 * 404 Button Container
 */
.quickerbill-store-404-links {
    margin: 30px 0;
    display: flex;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
}

/**
 * Quick Links Section
 */
.quickerbill-store-404-quick-links {
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-404-quick-links h3 {
    font-size: 18px;
    margin-bottom: 15px;
    color: var(--quickerbill-store-variable-gray-800);
}

.quickerbill-store-404-quick-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.quickerbill-store-404-quick-links li {
    margin: 8px 0;
}

.quickerbill-store-404-quick-links a {
    color: var(--quickerbill-store-variable-primary);
    text-decoration: none;
    transition: color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-404-quick-links a:hover {
    color: var(--quickerbill-store-variable-primary-hover);
    text-decoration: underline;
}
/**
 * Store Catalog Styles
 * Using naming convention: quickerbill-store-catalog-
 */

/**
 * Store Page Container
 */
.quickerbill-store-catalog-page {
    background: var(--quickerbill-store-variable-gray-50);
    min-height: 100vh;
}

/**
 * Store Hero Section
 */
.quickerbill-store-catalog-hero {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    padding: 60px 24px;
    text-align: center;
}

.quickerbill-store-catalog-hero-content {
    max-width: 800px;
    margin: 0 auto;
}

.quickerbill-store-catalog-hero-title {
    font-size: 48px;
    font-weight: 700;
    margin: 0 0 16px 0;
    line-height: 1.2;
}

.quickerbill-store-catalog-hero-subtitle {
    font-size: 20px;
    opacity: 0.9;
    line-height: 1.5;
}

/**
 * Billing Cycle Switcher Section
 */
.quickerbill-store-catalog-billing-cycle-switcher-section {
    background: var(--quickerbill-store-variable-white);
    border-bottom: 1px solid var(--quickerbill-store-variable-gray-200);
    padding: 32px 24px;
}

.quickerbill-store-catalog-billing-cycle-switcher-container {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}

.quickerbill-store-catalog-billing-cycle-switcher-loading {
    text-align: center;
    padding: 20px;
}

.quickerbill-store-catalog-billing-cycle-switcher-loading p {
    margin-top: 16px;
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 14px;
}

.quickerbill-store-catalog-billing-cycle-switcher {
    display: inline-flex;
    gap: 8px;
    background: var(--quickerbill-store-variable-gray-50);
    padding: 6px;
    border-radius: var(--quickerbill-store-variable-radius-xl);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-catalog-cycle-btn {
    padding: 12px 24px;
    border: none;
    background: transparent;
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--quickerbill-store-variable-radius-lg);
    cursor: pointer;
    transition: all var(--quickerbill-store-variable-transition-fast);
    white-space: nowrap;
}

.quickerbill-store-catalog-cycle-btn:hover {
    background: var(--quickerbill-store-variable-gray-200);
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-catalog-cycle-btn.active {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    box-shadow: var(--quickerbill-store-variable-shadow-sm-alt);
}

/**
 * Store Container
 */
.quickerbill-store-catalog-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 24px;
}

/**
 * Store Layout
 */
.quickerbill-store-catalog-layout {
    display: grid;
    grid-template-columns: 250px 1fr;
    gap: 40px;
}

/**
 * Sidebar
 */
.quickerbill-store-catalog-sidebar {
    position: sticky;
    top: 90px;
    height: fit-content;
}

.quickerbill-store-catalog-sidebar-section {
    background: var(--quickerbill-store-variable-white);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 20px;
    margin-bottom: 20px;
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-catalog-sidebar-section h3 {
    margin: 0 0 16px 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Category List
 */
.quickerbill-store-catalog-category-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.quickerbill-store-catalog-category-list li {
    margin-bottom: 4px;
}

.quickerbill-store-catalog-category-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    color: var(--quickerbill-store-variable-gray-500);
    text-decoration: none;
    border-radius: var(--quickerbill-store-variable-radius-md);
    transition: all var(--quickerbill-store-variable-transition-fast);
    font-size: 14px;
    font-weight: 500;
}

.quickerbill-store-catalog-category-link:hover {
    background: var(--quickerbill-store-variable-gray-50);
    color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-catalog-category-link.active {
    background: var(--quickerbill-store-variable-primary-light);
    color: var(--quickerbill-store-variable-primary);
    font-weight: 600;
}

.quickerbill-store-catalog-category-link .dashicons {
    width: 18px;
    height: 18px;
    font-size: 18px;
    color: currentColor;
}

/**
 * Domain Actions Section
 */
.quickerbill-store-catalog-domain-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/**
 * Currency Selector
 */
.quickerbill-store-catalog-currency-form {
    width: 100%;
}

.quickerbill-store-catalog-currency-select {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    font-size: 14px;
    background: var(--quickerbill-store-variable-white);
    cursor: pointer;
    transition: border-color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-catalog-currency-select:focus {
    outline: none;
    border-color: var(--quickerbill-store-variable-primary);
}

/**
 * Products Content Area
 */
.quickerbill-store-catalog-products-content {
    min-width: 0;
}

/**
 * Empty State
 */
.quickerbill-store-catalog-empty-state {
    text-align: center;
    padding: 60px 20px;
    background: var(--quickerbill-store-variable-white);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-catalog-empty-state .dashicons {
    font-size: 64px;
    width: 64px;
    height: 64px;
    color: var(--quickerbill-store-variable-gray-300);
    margin-bottom: 16px;
}

.quickerbill-store-catalog-empty-state h3 {
    margin: 0 0 8px 0;
    color: var(--quickerbill-store-variable-secondary);
    font-size: 20px;
    font-weight: 600;
}

.quickerbill-store-catalog-empty-state p {
    color: var(--quickerbill-store-variable-gray-500);
    margin-bottom: 20px;
    font-size: 14px;
}

/**
 * Products Loading State
 */
.quickerbill-store-catalog-products-loading {
    text-align: center;
    padding: 80px 20px;
}

.quickerbill-store-catalog-products-loading p {
    margin-top: 20px;
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 14px;
}

.quickerbill-store-catalog-product-price-loading {
    padding: 20px;
}

/**
 * Products Grid
 */
.quickerbill-store-catalog-products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 24px;
}

/**
 * Product CTA
 */
.quickerbill-store-catalog-product-cta {
    width: 100%;
    padding-top: 8px;
    padding-bottom: 8px;
}

.quickerbill-store-catalog-product-cta .quickerbill-store-button {
    padding: 14px 24px;
    font-size: 15px;
}

/**
 * Product Pricing Box
 */
.quickerbill-store-catalog-product-pricing {
    width: 100%;
}

.quickerbill-store-catalog-price-box {
    text-align: center;
}

.quickerbill-store-catalog-price-box-centered {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.quickerbill-store-catalog-price-label {
    display: block;
    font-size: 12px;
    color: var(--quickerbill-store-variable-gray-500);
    margin-bottom: 4px;
    text-transform: uppercase;
}

.quickerbill-store-catalog-price-main {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 0;
}

.quickerbill-store-catalog-price-amount {
    font-size: 36px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1;
}

.quickerbill-store-catalog-price-period {
    font-size: 16px;
    color: var(--quickerbill-store-variable-gray-500);
    margin-left: 0;
    font-weight: 700;
}

.quickerbill-store-catalog-billing-cycle {
    font-size: 14px;
    color: var(--quickerbill-store-variable-gray-500);
    font-weight: 500;
}

.quickerbill-store-catalog-price-contact {
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 16px;
    font-weight: 500;
}

/**
 * Promotion Pricing Styles
 */
.quickerbill-store-catalog-price-with-promo {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.quickerbill-store-catalog-price-stacked {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.quickerbill-store-catalog-price-original {
    font-size: 20px;
    color: var(--quickerbill-store-variable-gray-400);
    text-decoration: line-through;
    font-weight: 400;
    line-height: 1.2;
}

.quickerbill-store-catalog-price-promo {
    color: var(--quickerbill-store-variable-success);
}

.quickerbill-store-catalog-price-promo .quickerbill-store-catalog-price-period {
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

/**
 * Product Features List
 */
.quickerbill-store-catalog-product-description {
    width: 100%;
    text-align: left;
    padding-top: 8px;
    border-top: 1px solid var(--quickerbill-store-variable-gray-100);
}

.quickerbill-store-catalog-product-features {
    list-style: none;
    padding: 0;
    margin: 0;
}

.quickerbill-store-catalog-product-features li {
    padding: 8px 0 8px 32px;
    position: relative;
    font-size: 15px;
    color: var(--quickerbill-store-variable-gray-800);
    line-height: 1.5;
    font-weight: 400;
}

.quickerbill-store-catalog-product-features li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 8px;
    width: 20px;
    height: 20px;
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    font-weight: bold;
    font-size: 12px;
    border-radius: var(--quickerbill-store-variable-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
}
/**
 * Checkout Page Styles
 * Using naming convention: quickerbill-store-checkout-
 */

/**
 * Hero Header
 */
.quickerbill-store-checkout-header-hero {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    padding: 60px 24px;
}

.quickerbill-store-checkout-header-content {
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}

.quickerbill-store-checkout-title {
    font-size: 42px;
    font-weight: 700;
    margin: 0 0 24px 0;
    line-height: 1.2;
}

.quickerbill-store-checkout-description-full {
    font-size: 16px;
    line-height: 1.6;
    max-width: 800px;
    margin: 0 auto;
}

/**
 * Store Container
 */
.quickerbill-store-checkout-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 24px;
}

/**
 * Checkout Layout (2-Column Grid)
 */
.quickerbill-store-checkout-layout {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 40px;
    margin-top: 40px;
}

.quickerbill-store-checkout-main {
    min-width: 0;
}

/**
 * Section Cards
 */
.quickerbill-store-checkout-section {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 32px;
    margin-bottom: 24px;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-checkout-section h2 {
    margin: 0 0 24px 0;
    font-size: 20px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    padding-bottom: 16px;
    border-bottom: 2px solid var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-checkout-section h3 {
    margin: 0 0 16px 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Account Type Toggle (Checkout-Specific)
 */
.quickerbill-store-checkout-account-type-toggle {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

/**
 * Email Verification - Step Flow (Checkout-Specific)
 */
.quickerbill-store-checkout-email-verification-step {
    display: none;
}

.quickerbill-store-checkout-email-verification-step-active {
    display: block;
}

/**
 * Login Verification Steps (Checkout-Specific)
 */
.quickerbill-store-checkout-login-step {
    display: none;
}

.quickerbill-store-checkout-login-step-active {
    display: block;
}

/**
 * Back to Login Button (Checkout-Specific Styling)
 */
.quickerbill-store-checkout-back-to-login-btn {
    background: none;
    border: none;
    color: var(--quickerbill-store-variable-primary);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    padding: 0;
    transition: color var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-checkout-back-to-login-btn:hover {
    color: var(--quickerbill-store-variable-primary-hover);
    text-decoration: none;
}

.quickerbill-store-checkout-back-to-login-btn:focus {
    outline: 2px solid var(--quickerbill-store-variable-primary);
    outline-offset: 2px;
    border-radius: var(--quickerbill-store-variable-radius-sm);
}

/**
 * Optional Label (Checkout-Specific)
 */
.quickerbill-store-checkout-optional-label {
    color: var(--quickerbill-store-variable-gray-400);
    font-weight: 400;
    font-size: 12px;
}

/**
 * Logged In Notice (Checkout-Specific)
 */
.quickerbill-store-checkout-logged-in-notice {
    background: var(--quickerbill-store-variable-success-bg);
    border: 1px solid var(--quickerbill-store-variable-success-border);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 16px;
    margin-bottom: 24px;
}

.quickerbill-store-checkout-logged-in-notice p {
    margin: 0;
    color: var(--quickerbill-store-variable-success-text);
    font-size: 14px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    line-height: 1.6;
}

.quickerbill-store-checkout-logged-in-notice .dashicons {
    color: var(--quickerbill-store-variable-success);
    font-size: 20px;
    width: 20px;
    height: 20px;
}

/**
 * Payment Methods Grid (Checkout-Specific 3-Column)
 */
.quickerbill-store-checkout-payment-methods {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

/**
 * TOS Text & Link (Checkout-Specific)
 */
.quickerbill-store-checkout-tos-text {
    font-size: 14px;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.6;
    font-weight: 600;
}

.quickerbill-store-checkout-tos-link {
    color: var(--quickerbill-store-variable-primary);
    text-decoration: underline;
    transition: color var(--quickerbill-store-variable-transition-fast);
    font-weight: 600;
}

.quickerbill-store-checkout-tos-link:hover {
    color: var(--quickerbill-store-variable-primary-hover);
}

/**
 * TOS Notes Display (Checkout-Specific Scrollable Box)
 */
.quickerbill-store-checkout-tos-notes {
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    padding: 20px;
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.8;
    color: var(--quickerbill-store-variable-gray-600);
    max-height: 300px;
    overflow-y: auto;
}

.quickerbill-store-checkout-tos-notes p {
    margin: 0 0 16px 0;
}

.quickerbill-store-checkout-tos-notes p:last-child {
    margin-bottom: 0;
}

.quickerbill-store-checkout-tos-notes h1,
.quickerbill-store-checkout-tos-notes h2,
.quickerbill-store-checkout-tos-notes h3,
.quickerbill-store-checkout-tos-notes h4 {
    margin: 24px 0 12px 0;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-checkout-tos-notes h1:first-child,
.quickerbill-store-checkout-tos-notes h2:first-child,
.quickerbill-store-checkout-tos-notes h3:first-child,
.quickerbill-store-checkout-tos-notes h4:first-child {
    margin-top: 0;
}

.quickerbill-store-checkout-tos-notes ul,
.quickerbill-store-checkout-tos-notes ol {
    margin: 12px 0;
    padding-left: 24px;
}

.quickerbill-store-checkout-tos-notes li {
    margin-bottom: 8px;
}

.quickerbill-store-checkout-tos-notes strong {
    color: var(--quickerbill-store-variable-secondary);
    font-weight: 600;
}

.quickerbill-store-checkout-tos-notes a {
    color: var(--quickerbill-store-variable-primary);
    text-decoration: underline;
}

.quickerbill-store-checkout-tos-notes a:hover {
    color: var(--quickerbill-store-variable-primary-hover);
}

/**
 * Order Summary Sidebar
 */
.quickerbill-store-checkout-summary-sidebar {
    position: sticky;
    top: 90px;
    height: fit-content;
}

.quickerbill-store-checkout-summary-card {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 24px;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-checkout-summary-card h3 {
    margin: 0 0 20px 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    padding-bottom: 16px;
    border-bottom: 2px solid var(--quickerbill-store-variable-gray-200);
}

/**
 * Summary Items Container
 */
.quickerbill-store-checkout-summary-items {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 16px;
}

.quickerbill-store-checkout-summary-item-group {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-checkout-summary-item-group:first-child {
    padding-top: 0;
}

.quickerbill-store-checkout-summary-item-group:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

/**
 * Main Item Row
 */
.quickerbill-store-checkout-summary-main-item {
    margin-bottom: 8px;
}

.quickerbill-store-checkout-summary-item-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.5;
}

.quickerbill-store-checkout-summary-item-name {
    flex: 1;
    word-break: break-word;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-checkout-summary-item-price {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Domain Header Within Product
 */
.quickerbill-store-checkout-summary-domain-header {
    margin-top: 16px;
    padding-top: 0;
}

.quickerbill-store-checkout-summary-domain-header .quickerbill-store-checkout-summary-item-title {
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Sub Items
 */
.quickerbill-store-checkout-summary-sub-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 6px 0;
    font-size: 14px;
    line-height: 1.6;
}

.quickerbill-store-checkout-summary-sub-item-label {
    flex: 1;
    color: var(--quickerbill-store-variable-secondary);
    font-weight: 500;
}

.quickerbill-store-checkout-summary-sub-item-value {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-checkout-billing-cycle-label {
    font-weight: 500;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-checkout-summary-addon,
.quickerbill-store-checkout-summary-setup {
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Promotion Pricing (Strikethrough + Green)
 */
.quickerbill-store-checkout-original-price {
    text-decoration: line-through;
    color: var(--quickerbill-store-variable-gray-400);
    font-size: 13px;
    margin-right: 4px;
    display: inline-block;
    font-weight: 400;
}

.quickerbill-store-checkout-final-price {
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

/**
 * Promotion Section
 */
.quickerbill-store-checkout-promo-code-section {
    margin-bottom: 20px;
}

.quickerbill-store-checkout-promo-input-group {
    display: flex;
    gap: 8px;
}

.quickerbill-store-checkout-promo-input-group .quickerbill-store-form-input {
    flex: 1;
}

.quickerbill-store-checkout-summary-promotion {
    border-top: 1px solid var(--quickerbill-store-variable-gray-200);
    padding-top: 12px;
    margin-top: 8px;
    margin-bottom: 16px;
}

.quickerbill-store-checkout-promotion-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    font-size: 14px;
}

.quickerbill-store-checkout-promotion-row span:first-child {
    color: var(--quickerbill-store-variable-success);
    font-weight: 600;
}

.quickerbill-store-checkout-promotion-amount {
    font-weight: 700;
    color: var(--quickerbill-store-variable-success);
}

/**
 * Subtotal Section
 */
.quickerbill-store-checkout-summary-subtotal {
    border-top: 2px solid var(--quickerbill-store-variable-gray-200);
    padding-top: 12px;
    margin-top: 12px;
    margin-bottom: 16px;
}

.quickerbill-store-checkout-summary-subtotal .quickerbill-store-checkout-summary-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    font-size: 15px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Tax Section
 */
.quickerbill-store-checkout-summary-tax {
    padding-top: 0;
    margin-bottom: 16px;
}

.quickerbill-store-checkout-summary-tax .quickerbill-store-checkout-summary-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    font-size: 15px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Renewal Total Section
 */
.quickerbill-store-checkout-summary-renewal {
    border-top: 1px solid var(--quickerbill-store-variable-gray-100);
    padding-top: 12px;
    margin-top: 12px;
    margin-bottom: 16px;
}

.quickerbill-store-checkout-summary-renewal .quickerbill-store-checkout-summary-row {
    display: flex;
    justify-content: space-between;
    font-size: 15px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Today's Total Section
 */
.quickerbill-store-checkout-summary-total {
    border-top: 2px solid var(--quickerbill-store-variable-gray-200);
    padding-top: 16px;
    margin-top: 12px;
    margin-bottom: 16px;
}

.quickerbill-store-checkout-summary-total .quickerbill-store-checkout-summary-row {
    display: flex;
    justify-content: space-between;
    font-size: 18px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-checkout-summary-total .quickerbill-store-checkout-summary-row span:last-child {
    color: var(--quickerbill-store-variable-secondary);
    font-size: 20px;
}

/**
 * Cart Item Actions
 */
.quickerbill-store-checkout-summary-actions {
    display: flex;
    gap: 8px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px dashed var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-checkout-edit-item:hover {
    background: var(--quickerbill-store-variable-info-bg-light);
    border-color: var(--quickerbill-store-variable-info);
    color: var(--quickerbill-store-variable-info);
}

/**
 * Empty Cart State Container
 */
.quickerbill-store-checkout-empty-cart-container {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    padding: 60px 20px;
}

.quickerbill-store-checkout-empty-cart-icon {
    width: 80px;
    height: 80px;
    font-size: 80px;
    color: var(--quickerbill-store-variable-gray-300);
    margin: 0 auto 24px;
    display: block;
}

/**
 * Promotion Transitions
 */
.quickerbill-store-checkout-summary-item-price,
.quickerbill-store-checkout-summary-sub-item-value {
    transition: all var(--quickerbill-store-variable-transition-normal) ease-in-out;
}

.quickerbill-store-checkout-summary-promotion {
    animation: quickerbill-store-animation-slide-down var(--quickerbill-store-variable-transition-normal) ease;
}
/**
 * Domain Registration Page Styles
 * Using naming convention: quickerbill-store-domain-registration-
 */

/**
 * Page Container
 */
.quickerbill-store-domain-registration-page {
    background: var(--quickerbill-store-variable-gray-50);
    min-height: 100vh;
}

/**
 * Hero Section
 */
.quickerbill-store-domain-registration-hero {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    padding: 60px 24px;
    text-align: center;
}

.quickerbill-store-domain-registration-hero-content {
    max-width: 800px;
    margin: 0 auto;
}

.quickerbill-store-domain-registration-hero-title {
    font-size: 48px;
    font-weight: 700;
    margin: 0 0 16px 0;
    line-height: 1.2;
}

.quickerbill-store-domain-registration-hero-subtitle {
    font-size: 20px;
    opacity: 0.9;
    margin: 0;
}

/**
 * Container & Layout
 */
.quickerbill-store-domain-registration-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 24px;
}

.quickerbill-store-domain-registration-layout {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 40px;
}

.quickerbill-store-domain-registration-config-main {
    min-width: 0;
}

/**
 * Domain Results (Page-Specific Alert Structure)
 */
.quickerbill-store-domain-registration-result {
    margin-top: 16px;
}

/**
 * Registration Period Section
 */
.quickerbill-store-domain-registration-period-section {
    margin-top: 24px;
}

/**
 * Domain Addons Section (Page-Specific Styling)
 */
.quickerbill-store-domain-registration-addons-section {
    margin-top: 24px;
    padding: 20px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
}

.quickerbill-store-domain-registration-addons-section h4 {
    margin: 0 0 16px 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-registration-addons-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.quickerbill-store-domain-registration-addon-item {
    display: flex;
    align-items: flex-start;
    padding: 16px;
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-domain-registration-addon-item:hover {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-domain-registration-addon-item label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
    margin: 0;
    width: 100%;
}

.quickerbill-store-domain-registration-addon-item input[type="checkbox"] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 2px;
}

.quickerbill-store-domain-registration-addon-content {
    flex: 1;
    min-width: 0;
}

.quickerbill-store-domain-registration-addon-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 6px;
}

.quickerbill-store-domain-registration-addon-description {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    line-height: 1.5;
    margin: 0;
}

.quickerbill-store-domain-registration-addon-price-display {
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
    flex-shrink: 0;
}

.quickerbill-store-domain-registration-addon-price-display .quickerbill-store-domain-registration-original-price {
    font-size: 12px;
    color: var(--quickerbill-store-variable-gray-400);
    text-decoration: line-through;
    margin-right: 4px;
    font-weight: 400;
}

.quickerbill-store-domain-registration-addon-price-display .quickerbill-store-domain-registration-final-price {
    font-size: 13px;
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

/**
 * Action Buttons
 */
.quickerbill-store-domain-registration-action-buttons {
    margin-top: 24px;
    display: flex;
    justify-content: flex-end;
}

/**
 * Alternative Domains Section
 */
.quickerbill-store-domain-registration-alternatives-section {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 32px;
    margin-bottom: 24px;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-domain-registration-alternatives-section h2 {
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 8px 0;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-registration-section-subtitle {
    font-size: 16px;
    color: var(--quickerbill-store-variable-gray-500);
    margin: 0 0 24px 0;
}

.quickerbill-store-domain-registration-alternatives-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
    min-height: 100px;
}

/**
 * Alternatives Loading State
 */
.quickerbill-store-domain-registration-alternatives-loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    gap: 16px;
}

.quickerbill-store-domain-registration-alternatives-loading p {
    margin: 0;
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 15px;
    font-weight: 500;
}

/**
 * Alternatives No Results / Error
 */
.quickerbill-store-domain-registration-alternatives-no-results,
.quickerbill-store-domain-registration-alternatives-error {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

.quickerbill-store-domain-registration-alternatives-no-results p,
.quickerbill-store-domain-registration-alternatives-error p {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
}

.quickerbill-store-domain-registration-alternatives-no-results {
    color: var(--quickerbill-store-variable-gray-500);
}

.quickerbill-store-domain-registration-alternatives-no-results p {
    color: var(--quickerbill-store-variable-gray-500);
}

.quickerbill-store-domain-registration-alternatives-error {
    color: var(--quickerbill-store-variable-error-hover);
    background: var(--quickerbill-store-variable-error-bg);
    border: 1px solid var(--quickerbill-store-variable-error-border);
    border-radius: var(--quickerbill-store-variable-radius-lg);
}

.quickerbill-store-domain-registration-alternatives-error p {
    color: var(--quickerbill-store-variable-error-hover);
    font-weight: 500;
}

/**
 * Alternative Domain Cards
 */
.quickerbill-store-domain-registration-alternative-domain-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 16px 20px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 2px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
    transition: all var(--quickerbill-store-variable-transition-fast);
    position: relative;
    flex-wrap: wrap;
}

.quickerbill-store-domain-registration-alternative-domain-card:hover {
    background: var(--quickerbill-store-variable-white);
    border-color: var(--quickerbill-store-variable-primary);
    box-shadow: var(--quickerbill-store-variable-shadow-md-alt);
}

.quickerbill-store-domain-registration-alternative-domain-card.quickerbill-store-domain-registration-addons-open {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-white);
    box-shadow: var(--quickerbill-store-variable-shadow-md);
}

.quickerbill-store-domain-registration-alternative-domain-card.quickerbill-store-domain-registration-has-promotion::before {
    content: "SALE";
    position: absolute;
    top: 8px;
    left: 8px;
    background: var(--quickerbill-store-variable-success);
    color: var(--quickerbill-store-variable-white);
    font-size: 10px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: var(--quickerbill-store-variable-radius-sm);
    letter-spacing: 0.5px;
    z-index: 1;
    box-shadow: var(--quickerbill-store-variable-shadow-success);
}

.quickerbill-store-domain-registration-alt-domain-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.quickerbill-store-domain-registration-alt-domain-name {
    font-size: 16px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-registration-alt-domain-price {
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-gray-500);
}

.quickerbill-store-domain-registration-alt-domain-price .quickerbill-store-domain-registration-original-price {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-400);
    text-decoration: line-through;
    margin-right: 4px;
    font-weight: 400;
}

.quickerbill-store-domain-registration-alt-domain-price .quickerbill-store-domain-registration-final-price {
    font-size: 14px;
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

/**
 * Alternative Addons Dropdown (Inline)
 */
.quickerbill-store-domain-registration-alternative-addons-dropdown {
    display: none;
    width: 100%;
    padding: 20px;
    background: var(--quickerbill-store-variable-gray-50);
    border-top: 1px solid var(--quickerbill-store-variable-gray-200);
    margin-top: 16px;
}

.quickerbill-store-domain-registration-alternative-addons-header {
    margin-bottom: 16px;
}

.quickerbill-store-domain-registration-alternative-addons-header h4 {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-registration-alternative-period-section {
    margin-bottom: 16px;
}

.quickerbill-store-domain-registration-alternative-period-section label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 8px;
}

.quickerbill-store-domain-registration-alternative-addons-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 16px;
}

.quickerbill-store-domain-registration-alternative-addon-item {
    display: flex;
    align-items: flex-start;
    padding: 12px;
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-domain-registration-alternative-addon-item:hover {
    border-color: var(--quickerbill-store-variable-primary);
}

.quickerbill-store-domain-registration-alternative-addon-item label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    margin: 0;
    width: 100%;
}

.quickerbill-store-domain-registration-alternative-addon-item input[type="checkbox"] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 1px;
}

.quickerbill-store-domain-registration-alternative-action-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding-top: 12px;
    border-top: 1px solid var(--quickerbill-store-variable-gray-200);
}

/**
 * Load More Wrapper
 */
.quickerbill-store-domain-registration-load-more-wrapper {
    display: flex;
    justify-content: center;
    margin-top: 16px;
}

/**
 * Summary Sidebar
 */
.quickerbill-store-domain-registration-summary-sidebar {
    position: sticky;
    top: 90px;
    height: fit-content;
}

/**
 * Summary Items (Page-Specific)
 */
.quickerbill-store-domain-registration-summary-items {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 16px;
}

.quickerbill-store-domain-registration-empty-message {
    text-align: center;
    padding: 40px 20px;
    color: var(--quickerbill-store-variable-gray-400);
}

.quickerbill-store-domain-registration-empty-message p {
    margin: 0;
    font-size: 15px;
}

.quickerbill-store-domain-registration-summary-item-group {
    padding: 16px 0;
    border-bottom: 1px solid var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-domain-registration-summary-item-group:first-child {
    padding-top: 0;
}

.quickerbill-store-domain-registration-summary-item-group:last-child {
    border-bottom: none;
}

.quickerbill-store-domain-registration-summary-main-item {
    margin-bottom: 8px;
}

.quickerbill-store-domain-registration-summary-item-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.5;
}

.quickerbill-store-domain-registration-summary-item-name {
    flex: 1;
    word-break: break-word;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-registration-summary-item-price {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Trash Button Wrapper
 */
.quickerbill-store-domain-registration-trash-wrapper {
    margin-top: 12px;
    margin-bottom: 8px;
}

/**
 * Summary Sub Items
 */
.quickerbill-store-domain-registration-summary-sub-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 6px 0;
    font-size: 14px;
    line-height: 1.6;
}

.quickerbill-store-domain-registration-summary-sub-item-label {
    flex: 1;
    color: var(--quickerbill-store-variable-secondary);
    font-weight: 500;
}

.quickerbill-store-domain-registration-summary-sub-item-value {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-registration-billing-cycle-label {
    font-weight: 500;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-registration-summary-addon {
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Promotion Pricing (Page-Specific)
 */
.quickerbill-store-domain-registration-original-price {
    text-decoration: line-through;
    color: var(--quickerbill-store-variable-gray-400);
    font-size: 13px;
    margin-right: 4px;
    display: inline-block;
    font-weight: 400;
}

.quickerbill-store-domain-registration-final-price {
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

/**
 * Cart Message
 */
.quickerbill-store-domain-registration-cart-message {
    margin-top: 12px;
}
/**
 * Domain Transfer Page Styles
 * Using naming convention: quickerbill-store-domain-transfer-
 */

/**
 * Page Container
 */
.quickerbill-store-domain-transfer-page {
    background: var(--quickerbill-store-variable-gray-50);
    min-height: 100vh;
}

/**
 * Hero Section
 */
.quickerbill-store-domain-transfer-hero {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    padding: 60px 24px;
    text-align: center;
}

.quickerbill-store-domain-transfer-hero-content {
    max-width: 800px;
    margin: 0 auto;
}

.quickerbill-store-domain-transfer-title {
    font-size: 48px;
    font-weight: 700;
    margin: 0 0 16px 0;
    line-height: 1.2;
}

.quickerbill-store-domain-transfer-subtitle {
    font-size: 20px;
    opacity: 0.9;
    margin: 0;
}

/**
 * Container & Layout
 */
.quickerbill-store-domain-transfer-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 24px;
}

.quickerbill-store-domain-transfer-layout {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 40px;
}

.quickerbill-store-domain-transfer-config-main {
    min-width: 0;
}

/**
 * Domain Results
 */
.quickerbill-store-domain-transfer-result {
    margin-top: 16px;
}

/**
 * Transfer Restrictions
 */
.quickerbill-store-domain-transfer-restrictions-wrapper {
    flex: 1;
    min-width: 0;
}

.quickerbill-store-domain-transfer-restriction-item {
    margin-bottom: 16px;
}

.quickerbill-store-domain-transfer-restriction-item:last-child {
    margin-bottom: 0;
}

.quickerbill-store-domain-transfer-restriction-message {
    font-weight: 600;
    color: var(--quickerbill-store-variable-error-hover);
    margin-bottom: 8px;
    line-height: 1.5;
}

.quickerbill-store-domain-transfer-restriction-solution {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    line-height: 1.6;
}

/**
 * EPP Code Section
 */
.quickerbill-store-domain-transfer-epp-section {
    margin-top: 24px;
}

/**
 * Domain Addons
 */
.quickerbill-store-domain-transfer-addons-section {
    margin-top: 24px;
    padding: 20px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
}

.quickerbill-store-domain-transfer-addons-section h4 {
    margin: 0 0 16px 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-transfer-addons-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.quickerbill-store-domain-transfer-addon-item {
    display: flex;
    align-items: flex-start;
    padding: 16px;
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-domain-transfer-addon-item:hover {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-domain-transfer-addon-item label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
    margin: 0;
    width: 100%;
}

.quickerbill-store-domain-transfer-addon-checkbox {
    width: 18px;
    height: 18px;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 2px;
}

.quickerbill-store-domain-transfer-addon-content {
    flex: 1;
    min-width: 0;
}

.quickerbill-store-domain-transfer-addon-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 6px;
}

.quickerbill-store-domain-transfer-addon-description {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    line-height: 1.5;
    margin: 0;
}

.quickerbill-store-domain-transfer-addon-price-display {
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
    flex-shrink: 0;
}

.quickerbill-store-domain-transfer-addon-price-display .quickerbill-store-domain-transfer-original-price {
    font-size: 12px;
    color: var(--quickerbill-store-variable-gray-400);
    text-decoration: line-through;
    margin-right: 4px;
    font-weight: 400;
}

.quickerbill-store-domain-transfer-addon-price-display .quickerbill-store-domain-transfer-final-price {
    font-size: 13px;
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

/**
 * Action Buttons
 */
.quickerbill-store-domain-transfer-action-buttons {
    margin-top: 24px;
    display: flex;
    justify-content: flex-end;
}

/**
 * Summary Sidebar
 */
.quickerbill-store-domain-transfer-summary-sidebar {
    position: sticky;
    top: 90px;
    height: fit-content;
}

/**
 * Summary Items
 */
.quickerbill-store-domain-transfer-summary-items {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 16px;
}

.quickerbill-store-domain-transfer-empty-message {
    text-align: center;
    padding: 40px 20px;
    color: var(--quickerbill-store-variable-gray-400);
}

.quickerbill-store-domain-transfer-empty-message p {
    margin: 0;
    font-size: 15px;
}

.quickerbill-store-domain-transfer-summary-item-group {
    padding: 16px 0;
    border-bottom: 1px solid var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-domain-transfer-summary-item-group:first-child {
    padding-top: 0;
}

.quickerbill-store-domain-transfer-summary-item-group:last-child {
    border-bottom: none;
}

.quickerbill-store-domain-transfer-summary-main-item {
    margin-bottom: 8px;
}

.quickerbill-store-domain-transfer-summary-item-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.5;
}

.quickerbill-store-domain-transfer-summary-item-name {
    flex: 1;
    word-break: break-word;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-transfer-summary-item-price {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Trash Button Wrapper
 */
.quickerbill-store-domain-transfer-trash-wrapper {
    margin-top: 12px;
    margin-bottom: 8px;
}

/**
 * Summary Sub Items
 */
.quickerbill-store-domain-transfer-summary-sub-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 6px 0;
    font-size: 14px;
    line-height: 1.6;
}

.quickerbill-store-domain-transfer-summary-sub-item-label {
    flex: 1;
    color: var(--quickerbill-store-variable-secondary);
    font-weight: 500;
}

.quickerbill-store-domain-transfer-summary-sub-item-value {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-transfer-billing-cycle-label {
    font-weight: 500;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-domain-transfer-summary-addon {
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Promotion Pricing
 */
.quickerbill-store-domain-transfer-original-price {
    text-decoration: line-through;
    color: var(--quickerbill-store-variable-gray-400);
    font-size: 13px;
    margin-right: 4px;
    display: inline-block;
    font-weight: 400;
}

.quickerbill-store-domain-transfer-final-price {
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

/**
 * Cart Message
 */
.quickerbill-store-domain-transfer-cart-message {
    margin-top: 12px;
}
/**
 * Order Confirmation - Unique Styles Only
 * Using naming convention: quickerbill-store-order-confirmation-
 */

/**
 * Page Container
 */
.quickerbill-store-order-confirmation-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    background: var(--quickerbill-store-variable-gray-50);
}

/**
 * Spinner Wrapper (Unique to finalizing state)
 */
.quickerbill-store-order-confirmation-spinner {
    margin: 0 auto 32px;
    display: flex;
    justify-content: center;
}
/**
 * Product Configuration Styles
 * Using naming convention: quickerbill-store-product-configuration-
 */

/**
 * Product Configuration Page Container
 */
.quickerbill-store-product-configuration-page {
    background: var(--quickerbill-store-variable-gray-50);
    min-height: 100vh;
}

/**
 * Product Header Hero (Page-Specific)
 */
.quickerbill-store-product-configuration-header-hero {
    background: var(--quickerbill-store-variable-primary);
    color: var(--quickerbill-store-variable-white);
    padding: 60px 24px;
}

.quickerbill-store-product-configuration-header-content {
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}

.quickerbill-store-product-configuration-category-badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    color: var(--quickerbill-store-variable-white);
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 16px;
}

.quickerbill-store-product-configuration-title {
    font-size: 42px;
    font-weight: 700;
    margin: 0 0 24px 0;
    line-height: 1.2;
}

.quickerbill-store-product-configuration-edit-mode-badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    color: var(--quickerbill-store-variable-white);
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 600;
    margin-left: 12px;
}

/**
 * Store Container
 */
.quickerbill-store-product-configuration-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 24px;
}

/**
 * Product Layout
 */
.quickerbill-store-product-configuration-layout {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 40px;
    margin-top: 40px;
}

.quickerbill-store-product-configuration-main {
    min-width: 0;
}

/**
 * Domain Options Grid (Page-Specific)
 */
.quickerbill-store-product-configuration-domain-options-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

/**
 * Domain Input Section (Page-Specific)
 */
.quickerbill-store-product-configuration-domain-input-section {
    margin-top: 24px;
}

.quickerbill-store-product-configuration-domain-action-section {
    display: none;
}

/**
 * Free Domain Notice Box (Page-Specific)
 */
.quickerbill-store-product-configuration-free-domain-notice {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 16px;
    padding: 16px;
    background: var(--quickerbill-store-variable-success-bg);
    border: 1px solid var(--quickerbill-store-variable-success-accent);
    border-left: 4px solid var(--quickerbill-store-variable-success);
    border-radius: var(--quickerbill-store-variable-radius-lg);
}

.quickerbill-store-product-configuration-free-domain-notice .dashicons {
    color: var(--quickerbill-store-variable-success);
    font-size: 24px;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    margin-top: 2px;
}

.quickerbill-store-product-configuration-notice-content {
    flex: 1;
    min-width: 0;
}

.quickerbill-store-product-configuration-notice-content strong {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: var(--quickerbill-store-variable-success-text);
    margin-bottom: 6px;
}

.quickerbill-store-product-configuration-notice-content p {
    font-size: 13px;
    color: var(--quickerbill-store-variable-success-text-dark);
    margin: 0;
    line-height: 1.5;
}

/**
 * Domain Results (Page-Specific Alert Structure)
 */
.quickerbill-store-product-configuration-domain-result {
    margin-top: 16px;
}

/**
 * Domain Search Results Styling (Page-Specific Alerts)
 */
.quickerbill-store-product-configuration-checking {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: var(--quickerbill-store-variable-gray-100);
    border-left: 3px solid var(--quickerbill-store-variable-gray-500);
    border-radius: var(--quickerbill-store-variable-radius-md);
    color: var(--quickerbill-store-variable-gray-600);
    font-size: 14px;
    margin-top: 12px;
}

.quickerbill-store-product-configuration-domain-success {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 16px;
    background: var(--quickerbill-store-variable-success-bg);
    border-left: 3px solid var(--quickerbill-store-variable-success);
    border-radius: var(--quickerbill-store-variable-radius-md);
    color: var(--quickerbill-store-variable-success-text);
    font-size: 14px;
    margin-top: 12px;
    line-height: 1.6;
}

.quickerbill-store-product-configuration-domain-success .dashicons {
    color: var(--quickerbill-store-variable-success);
    font-size: 20px;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}

.quickerbill-store-product-configuration-domain-error {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 16px;
    background: var(--quickerbill-store-variable-error-bg);
    border-left: 3px solid var(--quickerbill-store-variable-error);
    border-radius: var(--quickerbill-store-variable-radius-md);
    color: var(--quickerbill-store-variable-error-hover);
    font-size: 14px;
    margin-top: 12px;
    line-height: 1.6;
}

.quickerbill-store-product-configuration-domain-error .dashicons {
    color: var(--quickerbill-store-variable-error);
    font-size: 20px;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-top: 2px;
}

/**
 * Domain Price with Promotion (Page-Specific)
 */
.quickerbill-store-product-configuration-domain-price-with-promo {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

/**
 * Transfer Restrictions Display (Page-Specific)
 */
.quickerbill-store-product-configuration-transfer-restrictions-wrapper {
    flex: 1;
    min-width: 0;
}

.quickerbill-store-product-configuration-restriction-item {
    margin-bottom: 16px;
}

.quickerbill-store-product-configuration-restriction-item:last-child {
    margin-bottom: 0;
}

.quickerbill-store-product-configuration-restriction-message {
    font-weight: 600;
    color: var(--quickerbill-store-variable-error-hover);
    margin-bottom: 8px;
    line-height: 1.5;
    font-size: 14px;
}

.quickerbill-store-product-configuration-restriction-solution {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    line-height: 1.6;
}

/**
 * Domain Addons Section (Page-Specific Styling)
 */
.quickerbill-store-product-configuration-domain-addons-section {
    margin-top: 24px;
    padding: 20px;
    background: var(--quickerbill-store-variable-gray-50);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-lg);
}

.quickerbill-store-product-configuration-domain-addons-section h4 {
    margin: 0 0 16px 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-product-configuration-domain-addons-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.quickerbill-store-product-configuration-domain-addon-item {
    display: flex;
    align-items: flex-start;
    padding: 16px;
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-md);
    transition: all var(--quickerbill-store-variable-transition-fast);
}

.quickerbill-store-product-configuration-domain-addon-item:hover {
    border-color: var(--quickerbill-store-variable-primary);
    background: var(--quickerbill-store-variable-gray-50);
}

.quickerbill-store-product-configuration-domain-addon-item label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
    margin: 0;
    width: 100%;
}

.quickerbill-store-product-configuration-domain-addon-item input[type="checkbox"] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 2px;
}

.quickerbill-store-product-configuration-addon-content {
    flex: 1;
    min-width: 0;
}

.quickerbill-store-product-configuration-addon-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 14px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    margin-bottom: 6px;
}

.quickerbill-store-product-configuration-addon-description {
    font-size: 13px;
    color: var(--quickerbill-store-variable-gray-500);
    line-height: 1.5;
    margin: 0;
}

.quickerbill-store-product-configuration-addon-price-display {
    color: var(--quickerbill-store-variable-gray-500);
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
    flex-shrink: 0;
}

/**
 * Billing Cycle Cards Grid (Page-Specific Layout)
 */
.quickerbill-store-product-configuration-billing-cycle-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 20px;
    margin-bottom: 24px;
}

/**
 * Promotion Pricing - Vertical Stacking (Page-Specific)
 */
.quickerbill-store-product-configuration-cycle-price-stacked {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.quickerbill-store-product-configuration-cycle-price-stacked .quickerbill-store-product-configuration-original-price {
    font-size: 14px;
}

.quickerbill-store-product-configuration-cycle-price-stacked .quickerbill-store-product-configuration-final-price {
    font-size: 20px;
}

/**
 * Product Options Container (Page-Specific)
 */
.quickerbill-store-product-configuration-product-options-section {
    /* Loaded dynamically */
}

.quickerbill-store-product-configuration-product-options-container {
    /* Container for dynamic options */
}

/**
 * Product Options Radio Grid (Page-Specific Layout)
 */
.quickerbill-store-product-configuration-radio-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
}

/**
 * Product Option Card Content Spacing Override
 */
.quickerbill-store-product-configuration-radio-options .quickerbill-store-card-option-content {
    gap: 12px;
}

/**
 * Product Option Label Spacing Fix
 */
.quickerbill-store-product-configuration-radio-options .quickerbill-store-card-option-label {
    margin-bottom: 8px;
}

/**
 * Product Option Promotion Pricing - Vertical Stacking
 */
.quickerbill-store-product-configuration-option-price-stacked {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.quickerbill-store-product-configuration-option-price-stacked .quickerbill-store-product-configuration-original-price {
    font-size: 13px;
}

.quickerbill-store-product-configuration-option-price-stacked .quickerbill-store-product-configuration-final-price {
    font-size: 18px;
}

/**
 * Custom Fields Grid (Page-Specific 2-Column Layout)
 */
.quickerbill-store-product-configuration-custom-fields-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.quickerbill-store-product-configuration-custom-fields-container .quickerbill-store-form-group {
    margin-bottom: 0;
}

.quickerbill-store-product-configuration-custom-fields-container .quickerbill-store-form-group:only-child {
    grid-column: 1 / -1;
}

/**
 * Order Summary Sidebar (Page-Specific)
 */
.quickerbill-store-product-configuration-order-summary-sidebar {
    position: sticky;
    top: 90px;
    height: fit-content;
}

.quickerbill-store-product-configuration-order-summary-card {
    background: var(--quickerbill-store-variable-white);
    border: 1px solid var(--quickerbill-store-variable-gray-200);
    border-radius: var(--quickerbill-store-variable-radius-xl);
    padding: 24px;
    box-shadow: var(--quickerbill-store-variable-shadow-sm);
}

.quickerbill-store-product-configuration-order-summary-card h3 {
    margin: 0 0 20px 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    padding-bottom: 16px;
    border-bottom: 2px solid var(--quickerbill-store-variable-gray-200);
}

/**
 * Summary Items Container (Page-Specific)
 */
.quickerbill-store-product-configuration-summary-items {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 16px;
}

.quickerbill-store-product-configuration-summary-item-group {
    padding: 16px 0;
    border-bottom: 1px solid var(--quickerbill-store-variable-gray-200);
}

.quickerbill-store-product-configuration-summary-item-group:first-child {
    padding-top: 0;
}

.quickerbill-store-product-configuration-summary-item-group:last-child {
    border-bottom: none;
}

.quickerbill-store-product-configuration-summary-main-item {
    margin-bottom: 8px;
}

.quickerbill-store-product-configuration-summary-item-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    font-size: 16px;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
    line-height: 1.5;
}

.quickerbill-store-product-configuration-summary-item-name {
    flex: 1;
    word-break: break-word;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-product-configuration-summary-item-price {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-product-configuration-summary-sub-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 6px 0;
    font-size: 14px;
    line-height: 1.6;
}

.quickerbill-store-product-configuration-summary-sub-item-label {
    flex: 1;
    color: var(--quickerbill-store-variable-secondary);
    font-weight: 500;
}

.quickerbill-store-product-configuration-summary-sub-item-value {
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    font-weight: 600;
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Summary Labels with Proper Spacing (Fix for "Billing Cycle:Monthly" issue)
 */
.quickerbill-store-product-configuration-billing-cycle-label {
    font-weight: 500;
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-product-configuration-billing-cycle-label::after {
    content: '';
}

.quickerbill-store-product-configuration-summary-addon {
    color: var(--quickerbill-store-variable-secondary);
}

.quickerbill-store-product-configuration-summary-setup {
    color: var(--quickerbill-store-variable-secondary);
}

/**
 * Promotion Pricing (Page-Specific inline styles)
 */
.quickerbill-store-product-configuration-original-price {
    text-decoration: line-through;
    color: var(--quickerbill-store-variable-gray-400);
    font-size: 13px;
    margin-right: 4px;
    display: inline-block;
    font-weight: 400;
}

.quickerbill-store-product-configuration-final-price {
    color: var(--quickerbill-store-variable-success);
    font-weight: 700;
}

.quickerbill-store-product-configuration-final-price .quickerbill-store-product-configuration-cycle-price-suffix {
    color: inherit;
}

.quickerbill-store-product-configuration-original-price .quickerbill-store-product-configuration-cycle-price-suffix {
    display: none;
}

/**
 * Monthly Pricing Suffix (Page-Specific)
 */
.quickerbill-store-product-configuration-cycle-price-suffix {
    font-size: 14px;
    color: var(--quickerbill-store-variable-gray-500);
    font-weight: 500;
    margin-left: 0;
}

/**
 * Cart Message
 */
.quickerbill-store-product-configuration-cart-message {
    margin-top: 12px;
}

/**
 * EPP Code Section
 */
.quickerbill-store-product-configuration-epp-code-section {
    /* Uses core form classes */
}

/**
 * Promotion Styling - Has Promotion Class
 */
.quickerbill-store-product-configuration-has-promotion {
    /* Applied to cards with active promotions */
}

/**
 * Disabled Button State
 */
.quickerbill-store-product-configuration-disabled {
    /* Applied to disabled buttons */
}
/**
 * QuickerBill Store Responsive Styles
 * Using naming convention: quickerbill-store-responsive-
 * All responsive behavior consolidated in one place
 */

/**
 * Tablet (1024px and below)
 */
@media (max-width: 1024px) {
    /** Header */
    .quickerbill-store-header-imp-bar-inner {
        padding: 12px 20px;
    }
    
    .quickerbill-store-header-inner {
        padding: 0 20px;
    }
    
    /** Header - Logo (keep close to hamburger) */
    .quickerbill-store-header-logo {
        flex: 1;
    }
    
    /** Header - Activate Mobile Menu on Tablet */
    .quickerbill-store-header-mobile-menu-toggle {
        display: flex;
    }
    
    .quickerbill-store-header-sidebar-mobile {
        display: block;
    }
    
    .quickerbill-store-header-nav-desktop {
        display: none;
    }
    
    /** Catalog */
    .quickerbill-store-catalog-layout {
        display: flex;
        flex-direction: column;
        gap: 40px;
    }
    
    .quickerbill-store-catalog-sidebar {
        position: static;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 20px;
        order: 2;
    }
    
    .quickerbill-store-catalog-products-content {
        order: 1;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher {
        flex-wrap: wrap;
    }
    
    .quickerbill-store-catalog-cycle-btn {
        padding: 10px 20px;
        font-size: 13px;
    }
    
    .quickerbill-store-catalog-products-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    }
    
    /** Checkout */
    .quickerbill-store-checkout-layout {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-checkout-summary-sidebar {
        position: static;
    }
    
    .quickerbill-store-checkout-payment-methods {
        grid-template-columns: repeat(2, 1fr);
    }
    
    /** Domain Registration */
    .quickerbill-store-domain-registration-layout {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-domain-registration-summary-sidebar {
        position: static;
    }
    
    /** Domain Transfer */
    .quickerbill-store-domain-transfer-layout {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-domain-transfer-summary-sidebar {
        position: static;
    }
    
    /** Product Configuration */
    .quickerbill-store-product-configuration-layout {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-product-configuration-order-summary-sidebar {
        position: static;
    }
    
    .quickerbill-store-product-configuration-billing-cycle-cards {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
    
    .quickerbill-store-product-configuration-custom-fields-container {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .quickerbill-store-product-configuration-radio-options {
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    }
}

/**
 * Mobile (768px and below)
 */
@media (max-width: 768px) {
    /** Header - Impersonation Bar */
    .quickerbill-store-header-imp-bar-inner {
        flex-direction: column;
        gap: 12px;
        padding: 12px 16px;
    }
    
    .quickerbill-store-header-imp-info {
        width: 100%;
        justify-content: center;
        text-align: center;
    }
    
    .quickerbill-store-header-imp-switch-back {
        width: 100%;
        justify-content: center;
    }
    
    .quickerbill-store-header-imp-text {
        font-size: 13px;
    }
    
    /** Header - Layout (Size Reductions Only) */
    .quickerbill-store-header-inner {
        height: 60px;
        padding: 0 16px;
    }
    
    .quickerbill-store-header-logo {
        flex: 1;
    }
    
    .quickerbill-store-header-logo img {
        max-height: 35px;
    }
    
    .quickerbill-store-header-sidebar-mobile {
        top: 60px;
    }
    
    .quickerbill-store-header-right {
        gap: 10px;
    }
    
    .quickerbill-store-header-cart-text,
    .quickerbill-store-header-user-name {
        display: none;
    }
    
    .quickerbill-store-header-user-menu-toggle {
        padding: 8px;
    }
    
    .quickerbill-store-header-dropdown-icon {
        display: none;
    }
    
    /** Catalog */
    .quickerbill-store-catalog-hero-title {
        font-size: 32px;
    }
    
    .quickerbill-store-catalog-hero-subtitle {
        font-size: 16px;
    }
    
    .quickerbill-store-catalog-hero {
        padding: 40px 20px;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher-section {
        padding: 24px 16px;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher-container {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        justify-content: flex-start;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher-container::-webkit-scrollbar {
        height: 6px;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher-container::-webkit-scrollbar-track {
        background: var(--quickerbill-store-variable-gray-50);
        border-radius: 3px;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher-container::-webkit-scrollbar-thumb {
        background: var(--quickerbill-store-variable-gray-300);
        border-radius: 3px;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher-container::-webkit-scrollbar-thumb:hover {
        background: var(--quickerbill-store-variable-gray-400);
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher {
        flex-wrap: nowrap;
        gap: 6px;
        padding: 6px;
    }
    
    .quickerbill-store-catalog-cycle-btn {
        flex-shrink: 0;
        padding: 10px 20px;
        font-size: 13px;
        white-space: nowrap;
    }
    
    .quickerbill-store-catalog-products-grid {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-catalog-container {
        padding: 24px 16px;
    }
    
    .quickerbill-store-catalog-sidebar {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-catalog-product-body {
        padding: 28px 20px;
    }
    
    .quickerbill-store-catalog-price-amount {
        font-size: 32px;
    }
    
    .quickerbill-store-catalog-price-original {
        font-size: 18px;
    }
    
    .quickerbill-store-catalog-price-period {
        font-size: 15px;
        font-weight: 700;
    }
    
    .quickerbill-store-catalog-product-name {
        font-size: 20px;
    }
    
    .quickerbill-store-catalog-product-features li {
        font-size: 14px;
        padding: 7px 0 7px 28px;
    }
    
    .quickerbill-store-catalog-product-features li::before {
        width: 18px;
        height: 18px;
        font-size: 11px;
        top: 7px;
    }
    
    .quickerbill-store-catalog-product-card.has-promotion::before {
        top: 12px;
        right: 12px;
        font-size: 10px;
        padding: 3px 8px;
    }
    
    /** Checkout */
    .quickerbill-store-checkout-header-hero {
        padding: 40px 20px;
    }
    
    .quickerbill-store-checkout-title {
        font-size: 32px;
    }
    
    .quickerbill-store-checkout-container {
        padding: 24px 16px;
    }
    
    .quickerbill-store-checkout-section {
        padding: 24px 20px;
    }
    
    .quickerbill-store-checkout-account-type-toggle {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-checkout-form-row {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-checkout-form-row-three {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-checkout-payment-methods {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-checkout-promo-input-group {
        flex-direction: column;
    }
    
    .quickerbill-store-checkout-promo-input-group .quickerbill-store-checkout-btn {
        width: 100%;
    }
    
    .quickerbill-store-checkout-empty-cart-card {
        padding: 40px 24px;
    }
    
    .quickerbill-store-checkout-empty-cart-icon {
        width: 60px;
        height: 60px;
        font-size: 60px;
    }
    
    .quickerbill-store-checkout-empty-cart-card h2 {
        font-size: 24px;
    }
    
    .quickerbill-store-checkout-empty-cart-card p {
        font-size: 14px;
    }
    
    .quickerbill-store-checkout-logged-in-notice p {
        display: block;
        line-height: 1.8;
    }
    
    .quickerbill-store-checkout-logged-in-notice .dashicons {
        display: inline-block;
        vertical-align: middle;
        margin-right: 4px;
    }
    
    /** Domain Registration */
    .quickerbill-store-domain-registration-hero {
        padding: 40px 20px;
    }
    
    .quickerbill-store-domain-registration-hero-title {
        font-size: 32px;
    }
    
    .quickerbill-store-domain-registration-hero-subtitle {
        font-size: 16px;
    }
    
    .quickerbill-store-domain-registration-container {
        padding: 24px 16px;
    }
    
    .quickerbill-store-domain-registration-config-section {
        padding: 24px 20px;
    }
    
    .quickerbill-store-domain-registration-input-group {
        flex-direction: column;
    }
    
    .quickerbill-store-domain-registration-input-group .quickerbill-store-domain-registration-btn {
        width: 100%;
    }
    
    .quickerbill-store-domain-registration-alternative-domain-card {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }
    
    .quickerbill-store-domain-registration-alternative-domain-card .quickerbill-store-domain-registration-btn {
        width: 100%;
    }
    
    .quickerbill-store-domain-registration-addons-section {
        padding: 16px;
    }
    
    .quickerbill-store-domain-registration-addon-item {
        padding: 12px;
    }
    
    .quickerbill-store-domain-registration-addon-title {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    
    .quickerbill-store-domain-registration-alternatives-section {
        padding: 24px 20px;
    }
    
    .quickerbill-store-domain-registration-alternative-addons-dropdown {
        padding: 16px;
    }
    
    .quickerbill-store-domain-registration-alternative-action-buttons {
        flex-direction: column-reverse;
    }
    
    .quickerbill-store-domain-registration-alternative-action-buttons .quickerbill-store-domain-registration-btn {
        width: 100%;
    }
    
    .quickerbill-store-domain-registration-alternative-addon-item {
        padding: 10px;
    }
    
    .quickerbill-store-domain-registration-alternative-addon-item .quickerbill-store-domain-registration-addon-title {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    
    /** Domain Transfer */
    .quickerbill-store-domain-transfer-hero {
        padding: 40px 20px;
    }
    
    .quickerbill-store-domain-transfer-title {
        font-size: 32px;
    }
    
    .quickerbill-store-domain-transfer-subtitle {
        font-size: 16px;
    }
    
    .quickerbill-store-domain-transfer-container {
        padding: 24px 16px;
    }
    
    .quickerbill-store-domain-transfer-section {
        padding: 24px 20px;
    }
    
    .quickerbill-store-domain-transfer-input-group {
        flex-direction: column;
    }
    
    .quickerbill-store-domain-transfer-input-group .quickerbill-store-domain-transfer-btn {
        width: 100%;
    }
    
    .quickerbill-store-domain-transfer-addons-section {
        padding: 16px;
    }
    
    .quickerbill-store-domain-transfer-addon-item {
        padding: 12px;
    }
    
    .quickerbill-store-domain-transfer-addon-title {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    
    /** Product Configuration */
    .quickerbill-store-product-configuration-header-hero {
        padding: 40px 20px;
    }
    
    .quickerbill-store-product-configuration-title {
        font-size: 32px;
    }
    
    .quickerbill-store-product-configuration-container {
        padding: 24px 16px;
    }
    
    .quickerbill-store-product-configuration-section {
        padding: 24px 20px;
    }
    
    .quickerbill-store-product-configuration-domain-options-grid {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-product-configuration-domain-input-group {
        flex-direction: column;
    }
    
    .quickerbill-store-product-configuration-domain-input-group .quickerbill-store-product-configuration-btn {
        width: 100%;
    }
    
    .quickerbill-store-product-configuration-billing-cycle-cards {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-product-configuration-radio-options {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
    
    .quickerbill-store-product-configuration-domain-addons-section {
        padding: 16px;
    }
    
    .quickerbill-store-product-configuration-domain-addon-item {
        padding: 12px;
    }
    
    .quickerbill-store-product-configuration-domain-addon-item label {
        font-size: 13px;
    }
    
    .quickerbill-store-product-configuration-addon-title {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    
    .quickerbill-store-product-configuration-addon-description {
        font-size: 12px;
    }
    
    .quickerbill-store-product-configuration-custom-fields-container {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-product-configuration-restriction-message {
        font-size: 13px;
    }
    
    .quickerbill-store-product-configuration-restriction-solution {
        font-size: 12px;
    }
    
    .quickerbill-store-product-configuration-free-domain-notice {
        padding: 14px;
    }
    
    .quickerbill-store-product-configuration-free-domain-notice .dashicons {
        font-size: 20px;
        width: 20px;
        height: 20px;
    }
    
    .quickerbill-store-product-configuration-notice-content strong {
        font-size: 14px;
    }
    
    .quickerbill-store-product-configuration-notice-content p {
        font-size: 12px;
    }
    
    .quickerbill-store-product-configuration-domain-price-with-promo {
        gap: 4px;
    }
    
    .quickerbill-store-product-configuration-cycle-price .quickerbill-store-product-configuration-original-price {
        font-size: 14px;
    }
    
    .quickerbill-store-product-configuration-cycle-price .quickerbill-store-product-configuration-final-price {
        font-size: 20px;
    }
    
    .quickerbill-store-product-configuration-cycle-price-suffix {
        font-size: 12px;
    }
    
    .quickerbill-store-product-configuration-option-price .quickerbill-store-product-configuration-cycle-price-suffix {
        font-size: 11px;
    }
    
    /** Order Confirmation */
    .quickerbill-store-order-confirmation-page {
        padding: 20px 16px;
    }
    
    .quickerbill-store-order-confirmation-card {
        padding: 40px 24px;
    }
    
    .quickerbill-store-order-confirmation-success-icon {
        width: 64px;
        height: 64px;
        margin-bottom: 24px;
    }
    
    .quickerbill-store-order-confirmation-success-icon .dashicons {
        font-size: 40px;
        width: 40px;
        height: 40px;
    }
    
    .quickerbill-store-order-confirmation-card h1 {
        font-size: 24px;
    }
    
    .quickerbill-store-order-confirmation-card p {
        font-size: 15px;
        margin-bottom: 24px;
    }
    
    .quickerbill-store-order-confirmation-btn {
        width: 100%;
        padding: 12px 24px;
    }
    
    /** 404 */
    .quickerbill-store-404 {
        margin: 40px auto;
        padding: 20px 15px;
    }
    
    .quickerbill-store-404-icon {
        font-size: 60px;
    }
    
    .quickerbill-store-404-icon .dashicons {
        width: 60px;
        height: 60px;
        font-size: 60px;
    }
    
    .quickerbill-store-404 h1 {
        font-size: 24px;
    }
    
    .quickerbill-store-404-links {
        flex-direction: column;
        gap: 12px;
    }
    
    .quickerbill-store-404-links .quickerbill-store-404-btn {
        width: 100%;
        justify-content: center;
    }
}

/**
 * Small Mobile (480px and below)
 */
@media (max-width: 480px) {
    /** Header */
    .quickerbill-store-header-logo img {
        max-height: 32px;
    }
    
    .quickerbill-store-header-logo h1 {
        font-size: 20px;
    }
    
    .quickerbill-store-header-cart-button {
        padding: 8px 12px;
    }
    
    .quickerbill-store-header-right {
        gap: 8px;
    }
    
    .quickerbill-store-header-btn-primary {
        padding: 8px 16px;
        font-size: 13px;
    }
    
    /** Catalog */
    .quickerbill-store-catalog-hero-title {
        font-size: 28px;
    }
    
    .quickerbill-store-catalog-hero-subtitle {
        font-size: 14px;
    }
    
    .quickerbill-store-catalog-hero {
        padding: 32px 16px;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher-section {
        padding: 20px 12px;
    }
    
    .quickerbill-store-catalog-billing-cycle-switcher {
        padding: 5px;
        gap: 4px;
    }
    
    .quickerbill-store-catalog-cycle-btn {
        padding: 10px 18px;
        font-size: 13px;
    }
    
    .quickerbill-store-catalog-container {
        padding: 16px 12px;
    }
    
    .quickerbill-store-catalog-product-body {
        padding: 24px 20px;
    }
    
    .quickerbill-store-catalog-price-amount {
        font-size: 28px;
    }
    
    .quickerbill-store-catalog-price-original {
        font-size: 16px;
    }
    
    .quickerbill-store-catalog-price-period {
        font-size: 14px;
        font-weight: 700;
    }
    
    .quickerbill-store-catalog-product-name {
        font-size: 18px;
    }
    
    .quickerbill-store-catalog-product-features li {
        font-size: 13px;
    }
    
    .quickerbill-store-catalog-product-cta .quickerbill-store-catalog-btn {
        padding: 12px 20px;
        font-size: 14px;
    }
    
    .quickerbill-store-catalog-billing-cycle {
        font-size: 13px;
    }
    
    .quickerbill-store-catalog-sidebar-section {
        padding: 16px;
    }
    
    .quickerbill-store-catalog-sidebar-section h3 {
        font-size: 15px;
    }
    
    .quickerbill-store-catalog-category-link {
        font-size: 13px;
        padding: 8px 10px;
    }
    
    .quickerbill-store-catalog-product-card.has-promotion::before {
        top: 10px;
        right: 10px;
        font-size: 9px;
        padding: 3px 7px;
    }
    
    .quickerbill-store-catalog-spinner-large {
        width: 40px;
        height: 40px;
        border-width: 3px;
    }
    
    .quickerbill-store-catalog-spinner-small {
        width: 20px;
        height: 20px;
        border-width: 2px;
    }
    
    /** Checkout */
    .quickerbill-store-checkout-title {
        font-size: 28px;
    }
    
    .quickerbill-store-checkout-container {
        padding: 16px 12px;
    }
    
    .quickerbill-store-checkout-section {
        padding: 20px 16px;
    }
    
    .quickerbill-store-checkout-summary-card {
        padding: 20px 16px;
    }
    
    .quickerbill-store-checkout-summary-item-title {
        font-size: 15px;
    }
    
    .quickerbill-store-checkout-summary-sub-item {
        font-size: 13px;
    }
    
    .quickerbill-store-checkout-summary-total .quickerbill-store-checkout-summary-row {
        font-size: 16px;
    }
    
    .quickerbill-store-checkout-summary-total .quickerbill-store-checkout-summary-row span:last-child {
        font-size: 18px;
    }
    
    .quickerbill-store-checkout-original-price {
        font-size: 12px;
    }
    
    .quickerbill-store-checkout-final-price {
        font-size: 14px;
    }
    
    .quickerbill-store-checkout-empty-cart-card {
        padding: 32px 20px;
    }
    
    .quickerbill-store-checkout-empty-cart-icon {
        width: 50px;
        height: 50px;
        font-size: 50px;
        margin-bottom: 20px;
    }
    
    .quickerbill-store-checkout-empty-cart-card h2 {
        font-size: 22px;
    }
    
    .quickerbill-store-checkout-empty-cart-card p {
        font-size: 13px;
        margin-bottom: 24px;
    }
    
    .quickerbill-store-checkout-empty-cart-card .quickerbill-store-checkout-btn {
        min-width: 100%;
        font-size: 14px;
        padding: 12px 20px;
    }
    
    .quickerbill-store-checkout-summary-actions {
        justify-content: flex-start;
    }
    
    .quickerbill-store-checkout-action-btn {
        width: 40px;
        height: 40px;
    }
    
    .quickerbill-store-checkout-action-btn .dashicons {
        width: 20px;
        height: 20px;
        font-size: 20px;
    }
    
    .quickerbill-store-checkout-password-requirements {
        padding: 12px;
    }
    
    .quickerbill-store-checkout-password-requirements-title {
        font-size: 13px;
    }
    
    .quickerbill-store-checkout-password-requirement {
        font-size: 12px;
    }
    
    .quickerbill-store-checkout-password-toggle {
        width: 38px;
    }
    
    .quickerbill-store-checkout-password-with-toggle {
        padding-right: 42px;
    }
    
    /** Domain Registration */
    .quickerbill-store-domain-registration-hero-title {
        font-size: 28px;
    }
    
    .quickerbill-store-domain-registration-hero-subtitle {
        font-size: 14px;
    }
    
    .quickerbill-store-domain-registration-container {
        padding: 16px 12px;
    }
    
    .quickerbill-store-domain-registration-config-section {
        padding: 20px 16px;
    }
    
    .quickerbill-store-domain-registration-summary-card {
        padding: 20px 16px;
    }
    
    .quickerbill-store-domain-registration-alt-domain-name {
        font-size: 15px;
    }
    
    .quickerbill-store-domain-registration-alt-domain-price {
        font-size: 13px;
    }
    
    .quickerbill-store-domain-registration-summary-item-title {
        font-size: 15px;
    }
    
    .quickerbill-store-domain-registration-summary-sub-item {
        font-size: 13px;
    }
    
    .quickerbill-store-domain-registration-load-more-btn {
        min-width: 120px;
    }
    
    .quickerbill-store-domain-registration-alternatives-section {
        padding: 20px 16px;
    }
    
    .quickerbill-store-domain-registration-alternatives-loading {
        padding: 40px 20px;
    }
    
    .quickerbill-store-domain-registration-alternative-addons-dropdown {
        padding: 12px;
    }
    
    .quickerbill-store-domain-registration-alternative-addons-header h4 {
        font-size: 14px;
    }
    
    /** Domain Transfer */
    .quickerbill-store-domain-transfer-title {
        font-size: 28px;
    }
    
    .quickerbill-store-domain-transfer-subtitle {
        font-size: 14px;
    }
    
    .quickerbill-store-domain-transfer-container {
        padding: 16px 12px;
    }
    
    .quickerbill-store-domain-transfer-section {
        padding: 20px 16px;
    }
    
    .quickerbill-store-domain-transfer-summary-card {
        padding: 20px 16px;
    }
    
    .quickerbill-store-domain-transfer-summary-item-title {
        font-size: 15px;
    }
    
    .quickerbill-store-domain-transfer-summary-sub-item {
        font-size: 13px;
    }
    
    /** Product Configuration */
    .quickerbill-store-product-configuration-title {
        font-size: 28px;
    }
    
    .quickerbill-store-product-configuration-container {
        padding: 16px 12px;
    }
    
    .quickerbill-store-product-configuration-section {
        padding: 20px 16px;
    }
    
    .quickerbill-store-product-configuration-order-summary-card {
        padding: 20px 16px;
    }
    
    .quickerbill-store-product-configuration-cycle-price {
        font-size: 20px;
    }
    
    .quickerbill-store-product-configuration-summary-item-title {
        font-size: 15px;
    }
    
    .quickerbill-store-product-configuration-summary-sub-item {
        font-size: 13px;
    }
    
    .quickerbill-store-product-configuration-custom-fields-container {
        gap: 16px;
    }
    
    .quickerbill-store-product-configuration-radio-options {
        grid-template-columns: 1fr;
    }
    
    .quickerbill-store-product-configuration-option-price {
        font-size: 16px;
    }
    
    .quickerbill-store-product-configuration-free-domain-notice {
        gap: 10px;
        padding: 12px;
    }
    
    .quickerbill-store-product-configuration-domain-addon-item label {
        gap: 10px;
    }
    
    .quickerbill-store-product-configuration-addon-title {
        font-size: 13px;
    }
    
    .quickerbill-store-product-configuration-addon-price-display {
        font-size: 12px;
    }
    
    .quickerbill-store-product-configuration-has-promotion::before {
        font-size: 9px;
        padding: 2px 6px;
        top: 6px;
        right: 6px;
    }
    
    .quickerbill-store-product-configuration-radio-option-card.quickerbill-store-product-configuration-has-promotion::before {
        font-size: 8px;
        padding: 2px 5px;
        top: 4px;
        right: 4px;
    }
    
    .quickerbill-store-product-configuration-cycle-price .quickerbill-store-product-configuration-final-price {
        font-size: 18px;
    }
    
    .quickerbill-store-product-configuration-option-price .quickerbill-store-product-configuration-final-price {
        font-size: 16px;
    }
    
    .quickerbill-store-product-configuration-cycle-price-suffix {
        font-size: 11px;
    }
    
    .quickerbill-store-product-configuration-option-price .quickerbill-store-product-configuration-cycle-price-suffix {
        font-size: 10px;
    }
    
    /** Order Confirmation */
    .quickerbill-store-order-confirmation-card h1 {
        font-size: 22px;
    }
    
    .quickerbill-store-order-confirmation-card p {
        font-size: 14px;
    }
    
    .quickerbill-store-order-confirmation-spinner {
        margin-bottom: 24px;
    }
}
/**
 * QuickerBill Store Print Styles
 * Using naming convention: quickerbill-store-print-
 */

@media print {
    /** Hide Interactive Elements */
    .quickerbill-store-catalog-billing-cycle-switcher-section,
    .quickerbill-store-catalog-sidebar,
    .quickerbill-store-catalog-product-cta,
    .quickerbill-store-checkout-summary-actions,
    .quickerbill-store-checkout-promo-code-section,
    .quickerbill-store-checkout-password-requirements,
    .quickerbill-store-checkout-password-toggle {
        display: none;
    }
    
    /** Hide Promotion Badges */
    .quickerbill-store-catalog-product-card.has-promotion::before,
    .quickerbill-store-product-configuration-has-promotion::before {
        display: none;
    }
    
    /** Layout Adjustments */
    .quickerbill-store-catalog-layout {
        display: block;
    }
    
    .quickerbill-store-catalog-products-grid {
        display: block;
    }
    
    /** Product Cards */
    .quickerbill-store-catalog-product-card {
        page-break-inside: avoid;
        margin-bottom: 20px;
        box-shadow: none;
        border: 1px solid #ddd;
    }
    
    /** Checkout Summary */
    .quickerbill-store-checkout-summary-promotion {
        break-inside: avoid;
    }
}
