/* responsive.css - Responsive Design para XPRESS Cotizador */
/* Mobile-First Approach */

/* ===== BREAKPOINTS ===== */
/*
  sm: 640px  (móviles grandes)
  md: 768px  (tablets)
  lg: 1024px (laptops)
  xl: 1280px (desktops)
  2xl: 1536px (desktops grandes)
*/

/* ===== UTILIDADES RESPONSIVE ===== */
.hidden-xs { display: none; }
.hidden-sm { display: none; }
.hidden-md { display: none; }
.hidden-lg { display: none; }
.hidden-xl { display: none; }

.visible-xs { display: block; }
.visible-sm { display: block; }
.visible-md { display: block; }
.visible-lg { display: block; }
.visible-xl { display: block; }

/* ===== MOBILE (0px - 639px) - DEFAULT ===== */
/* Todos los estilos base ya son mobile-first */

/* Ajustes específicos para móviles */
@media (max-width: 639px) {
    /* Contenedor principal */
    .cotizador-container {
        margin: 0;
        border-radius: 0;
        min-height: 100vh;
    }
    
    /* Header */
    .cotizador-header {
        padding: var(--space-md);
        flex-direction: column;
        gap: var(--space-md);
        text-align: center;
    }
    
    .header-actions {
        width: 100%;
        justify-content: space-between;
    }
    
    .step-indicator {
        justify-content: center;
        flex: 1;
    }
    
    /* Grid principal - Stack vertical */
    .cotizador-grid {
        grid-template-columns: 1fr;
        min-height: auto;
    }
    
    .form-panel {
        border-right: none;
        border-bottom: 1px solid var(--xp-border);
        max-height: none;
        padding: var(--space-md);
    }
    
    .results-panel {
        padding: var(--space-md);
    }
    
    /* Formularios */
    .dual-inputs {
        display: flex;
        flex-direction: column;
        gap: var(--space-lg);
    }
    
    .location-selector {
        grid-template-columns: 1fr;
        gap: var(--space-sm);
    }
    
    .product-type-selector {
        grid-template-columns: 1fr;
        gap: var(--space-sm);
    }
    
    .measurements-grid {
        grid-template-columns: 1fr;
        gap: var(--space-md);
    }
    
    .dimension-inputs {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--space-xs);
    }
    
    .tier-selector {
        grid-template-columns: 1fr;
        gap: var(--space-sm);
    }
    
    .services-grid {
        grid-template-columns: 1fr;
        gap: var(--space-sm);
    }
    
    /* Navegación */
    .step-navigation {
        flex-direction: column;
        gap: var(--space-sm);
    }
    
    .step-navigation button {
        width: 100%;
        justify-content: center;
    }
    
    /* Resultados */
    .price-breakdown {
        padding: var(--space-md);
    }
    
    .total-amount .amount {
        font-size: 36px;
    }
    
    .zone-info {
        padding: var(--space-md);
    }
    
    .action-buttons {
        grid-template-columns: 1fr;
    }
    
    /* Footer */
    .cotizador-footer {
        flex-direction: column;
        gap: var(--space-md);
        text-align: center;
        padding: var(--space-md);
    }
    
    /* Ajustes de tipografía */
    .step-header h2 {
        font-size: 18px;
    }
    
    .total-price h3 {
        font-size: 12px;
    }
    
    /* Modal */
    .modal-container {
        width: 95%;
        margin: var(--space-md);
    }
    
    .modal-header,
    .modal-body,
    .modal-footer {
        padding: var(--space-md);
    }
    
    /* Tablas */
    .table-responsive {
        margin: 0 -16px;
        padding: 0 16px;
    }
    
    /* Listas */
    .list-item {
        padding: var(--space-md);
    }
    
    /* Componentes especiales */
    .bento-grid {
        grid-template-columns: 1fr;
    }
    
    .bento-item.large,
    .bento-item.tall {
        grid-column: auto;
        grid-row: auto;
    }
    
    /* Search */
    .search-results {
        position: fixed;
        top: 56px;
        left: 16px;
        right: 16px;
        max-height: 50vh;
    }
    
    /* Timeline */
    .timeline {
        padding-left: var(--space-lg);
    }
}

/* ===== SMALL TABLETS (640px - 767px) ===== */
@media (min-width: 640px) and (max-width: 767px) {
    .cotizador-container {
        margin: var(--space-md);
        border-radius: var(--radius-lg);
    }
    
    .cotizador-grid {
        grid-template-columns: 1fr;
    }
    
    .form-panel {
        padding: var(--space-lg);
    }
    
    .results-panel {
        padding: var(--space-lg);
    }
    
    .location-selector {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .product-type-selector {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .tier-selector {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .tier-card:last-child {
        grid-column: span 2;
        max-width: 300px;
        margin: 0 auto;
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .action-buttons {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .total-amount .amount {
        font-size: 40px;
    }
    
    .hidden-xs { display: block; }
    .visible-xs { display: none; }
}

/* ===== MEDIUM TABLETS (768px - 1023px) ===== */
@media (min-width: 768px) and (max-width: 1023px) {
    .cotizador-container {
        max-width: 100%;
        margin: var(--space-lg);
    }
    
    .cotizador-grid {
        grid-template-columns: 1.2fr 1fr;
    }
    
    .form-panel {
        padding: var(--space-xl);
    }
    
    .results-panel {
        padding: var(--space-xl);
    }
    
    .product-type-selector {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .tier-selector {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .total-amount .amount {
        font-size: 42px;
    }
    
    .action-buttons {
        grid-template-columns: 1fr;
    }
    
    .hidden-sm { display: block; }
    .visible-sm { display: none; }
}

/* ===== LAPTOPS (1024px - 1279px) ===== */
@media (min-width: 1024px) and (max-width: 1279px) {
    .cotizador-container {
        max-width: 1200px;
    }
    
    .cotizador-grid {
        grid-template-columns: 1.5fr 1fr;
    }
    
    .form-panel {
        padding: var(--space-xl);
    }
    
    .results-panel {
        padding: var(--space-xl);
    }
    
    .product-type-selector {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .tier-selector {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .action-buttons {
        grid-template-columns: 1fr;
    }
    
    .hidden-md { display: block; }
    .visible-md { display: none; }
}

/* ===== DESKTOP (1280px - 1535px) ===== */
@media (min-width: 1280px) and (max-width: 1535px) {
    .cotizador-container {
        max-width: 1300px;
    }
    
    .cotizador-grid {
        grid-template-columns: 1.5fr 1fr;
    }
    
    .form-panel {
        padding: var(--space-xl);
    }
    
    .results-panel {
        padding: var(--space-xl);
    }
    
    .product-type-selector {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .tier-selector {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .action-buttons {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .hidden-lg { display: block; }
    .visible-lg { display: none; }
}

/* ===== LARGE DESKTOP (1536px+) ===== */
@media (min-width: 1536px) {
    .cotizador-container {
        max-width: 1400px;
    }
    
    .cotizador-grid {
        grid-template-columns: 1.5fr 1fr;
    }
    
    .form-panel {
        padding: var(--space-2xl);
    }
    
    .results-panel {
        padding: var(--space-2xl);
    }
    
    .total-amount .amount {
        font-size: 52px;
    }
    
    .hidden-xl { display: block; }
    .visible-xl { display: none; }
}

/* ===== RESPONSIVE ESPECÍFICO POR COMPONENTE ===== */

/* Responsive para location selector */
@media (max-width: 1023px) {
    .location-selector {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .location-selector .select-group:last-child {
        grid-column: span 2;
    }
}

/* Responsive para measurements grid */
@media (max-width: 767px) {
    .measurements-grid {
        grid-template-columns: 1fr;
    }
    
    .dimension-inputs {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Responsive para tier selector */
@media (max-width: 639px) {
    .tier-selector {
        grid-template-columns: 1fr;
    }
}

/* Responsive para services grid */
@media (max-width: 767px) {
    .services-grid {
        grid-template-columns: 1fr;
    }
}

/* Responsive para action buttons */
@media (max-width: 639px) {
    .action-buttons {
        grid-template-columns: 1fr;
    }
}

/* Responsive para price display */
@media (max-width: 767px) {
    .price-breakdown {
        padding: var(--space-md);
    }
    
    .price-row {
        font-size: 13px;
        padding: 6px 0;
    }
    
    .total-amount .amount {
        font-size: 32px;
    }
}

/* Responsive para zone info */
@media (max-width: 639px) {
    .zone-info {
        padding: var(--space-md);
    }
    
    .zone-details {
        grid-template-columns: 1fr;
    }
    
    .zone-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 2px;
    }
}

/* Responsive para step navigation */
@media (max-width: 639px) {
    .step-navigation {
        flex-direction: column;
        gap: var(--space-sm);
    }
    
    .step-navigation button {
        width: 100%;
    }
}

/* ===== ORIENTACIÓN LANDSCAPE ===== */
@media (max-height: 600px) and (orientation: landscape) {
    .cotizador-container {
        max-height: 100vh;
        overflow-y: auto;
    }
    
    .cotizador-grid {
        min-height: auto;
    }
    
    .form-panel {
        max-height: 50vh;
    }
    
    .step-section {
        padding-bottom: var(--space-lg);
    }
    
    .input-group {
        margin-bottom: var(--space-md);
    }
}

/* ===== HIGH-DPI DISPLAYS ===== */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .bg-grid {
        background-image: 
            linear-gradient(var(--xp-border) 0.5px, transparent 0.5px),
            linear-gradient(90deg, var(--xp-border) 0.5px, transparent 0.5px);
    }
    
    .map-route-line,
    .comparison-handle {
        border-width: 1px;
    }
}

/* ===== DARK MODE SUPPORT ===== */
@media (prefers-color-scheme: dark) {
    :root {
        --xp-bg-light: #1A1A1A;
        --xp-white: #2D2D2D;
        --xp-text: #FFFFFF;
        --xp-text-gray: #A1A1A6;
        --xp-border: rgba(255, 255, 255, 0.1);
        --xp-navy: #0A0A0A;
        --xp-navy-light: #1A1A1A;
        --xp-blue-soft: rgba(0, 102, 204, 0.1);
        --xp-orange-soft: rgba(255, 105, 0, 0.1);
    }
    
    body {
        background: linear-gradient(135deg, #0A0A0A 0%, #1A1A1A 100%);
    }
    
    .glass-overlay {
        background: rgba(26, 26, 26, 0.8);
    }
    
    .cotizador-container {
        background: var(--xp-white);
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
    }
    
    .info-card,
    .bento-item,
    .testimonial-card {
        background: var(--xp-white);
        border-color: var(--xp-border);
    }
    
    .stats-card {
        background: linear-gradient(135deg, #0A0A0A 0%, #1A1A1A 100%);
    }
    
    .alert-info {
        background: rgba(0, 102, 204, 0.1);
        border-color: rgba(0, 102, 204, 0.2);
    }
    
    .alert-success {
        background: rgba(5, 95, 70, 0.1);
        border-color: rgba(5, 95, 70, 0.2);
    }
    
    .alert-warning {
        background: rgba(146, 64, 14, 0.1);
        border-color: rgba(146, 64, 14, 0.2);
    }
    
    .alert-error {
        background: rgba(153, 27, 27, 0.1);
        border-color: rgba(153, 27, 27, 0.2);
    }
    
    .code-block {
        background: #0A0A0A;
        color: #E5E5E7;
    }
    
    .quote-block {
        background: rgba(255, 105, 0, 0.05);
    }
    
    .glass-card {
        background: rgba(45, 45, 45, 0.8);
        border: 1px solid rgba(255, 255, 255, 0.1);
    }
}

/* ===== PRINT STYLES ===== */
@media print {
    body {
        background: white !important;
        color: black !important;
        font-size: 12pt;
    }
    
    .cotizador-container {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
        max-width: 100% !important;
        margin: 0 !important;
    }
    
    .step-navigation,
    .action-buttons,
    .btn-icon,
    .btn-edit,
    .modal-close,
    .alert-close,
    .notification-close,
    .search-icon,
    .calendar-nav,
    .counter-button,
    .pagination-button,
    .filter-tag,
    .toggle-switch,
    .toggle-slider,
    .select-arrow,
    .tooltip-text,
    .xp-tooltip,
    .xp-notification,
    .xp-modal-overlay,
    .xp-loading-overlay,
    .validation-errors,
    .dimension-warning,
    .input-hint,
    .service-checkbox .checkbox-ui,
    .progress-handle,
    .map-marker,
    .timeline::before,
    .progress-steps::before,
    .map-route-line,
    .comparison-handle,
    .typing-animation::after,
    .pulse-effect::after,
    .badge-count,
    .tooltip-text,
    .custom-tooltip .tooltip-text,
    .rating-star,
    .accordion-toggle,
    .tab-button .chevron,
    .list-item .item-icon,
    .progress-step .step-circle,
    .stats-card .stat-change,
    .kpi-trend,
    .search-results,
    .calendar-popup,
    .modal-backdrop,
    .accordion-content:not(.active),
    .tab-pane:not(.active) {
        display: none !important;
    }
    
    .cotizador-header,
    .cotizador-footer {
        background: white !important;
        color: black !important;
        border-bottom: 2px solid black !important;
    }
    
    .form-panel,
    .results-panel {
        border: none !important;
        padding: 0 !important;
        page-break-inside: avoid;
    }
    
    .price-display,
    .zone-info,
    .summary-card {
        border: 1px solid #ddd !important;
        page-break-inside: avoid;
    }
    
    .total-price {
        background: white !important;
        color: black !important;
        border: 2px solid black !important;
    }
    
    a {
        color: black !important;
        text-decoration: underline;
    }
    
    a[href]::after {
        content: " (" attr(href) ")";
        font-size: 10pt;
        color: #666;
    }
    
    /* Evitar saltos de página dentro de elementos importantes */
    .step-section,
    .price-breakdown,
    .total-price {
        page-break-inside: avoid;
    }
    
    /* Mostrar URLs en enlaces */
    .btn-primary::after,
    .btn-secondary::after {
        content: "" !important;
    }
}

/* ===== TOUCH DEVICE OPTIMIZATIONS ===== */
@media (hover: none) and (pointer: coarse) {
    /* Aumentar áreas táctiles */
    .btn-primary,
    .btn-secondary,
    .btn-icon,
    .step-circle,
    .calendar-day,
    .select-option,
    .service-checkbox,
    .tab-button,
    .accordion-header,
    .list-item,
    .search-result-item,
    .filter-tag,
    .pagination-button,
    .counter-button,
    .toggle-switch,
    .modal-close,
    .alert-close,
    .notification-close {
        min-height: 44px;
        min-width: 44px;
    }
    
    .geo-select,
    .search-input,
    .date-input,
    input[type="number"],
    input[type="text"] {
        font-size: 16px; /* Previene zoom en iOS */
    }
    
    /* Mejorar feedback táctil */
    .btn-primary:active,
    .btn-secondary:active,
    .btn-icon:active {
        transform: scale(0.95);
    }
    
    /* Desactivar hover effects */
    .hover-lift:hover,
    .hover-glow:hover,
    .hover-3d:hover {
        transform: none;
        box-shadow: none;
    }
    
    /* Mostrar tooltips en tap */
    .custom-tooltip:active .tooltip-text {
        visibility: visible;
        opacity: 1;
    }
    
    /* Ajustar scroll en móviles */
    .form-panel {
        -webkit-overflow-scrolling: touch;
    }
}

/* ===== REDUCED MOTION ===== */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
    
    .slide-up,
    .fade-in,
    .typing-animation::after,
    .text-shine,
    .pulse-effect::after,
    .progress-fill,
    .slider-value.animating,
    .select-dropdown,
    .modal-container,
    .calendar-popup,
    .search-results,
    .xp-notification,
    .xp-modal,
    .accordion-content,
    .tab-pane {
        animation: none !important;
        transition: none !important;
    }
    
    .loader-spinner i,
    .loading-spinner {
        animation: none !important;
    }
}

/* ===== HIGH CONTRAST MODE ===== */
@media (prefers-contrast: high) {
    :root {
        --xp-border: #000000;
        --xp-text: #000000;
        --xp-text-gray: #000000;
        --xp-navy: #000000;
        --xp-navy-light: #000000;
    }
    
    .cotizador-container {
        border: 2px solid black;
    }
    
    .input-group label,
    .step-header h2,
    .results-header h2,
    .total-price h3,
    .zone-info h4,
    .summary-header h3,
    .modal-header h2,
    .alert-title,
    .accordion-header h3,
    .tab-button,
    .list-item .item-title,
    .progress-label,
    .step-label,
    .timeline-content,
    .kpi-value,
    .quote-author,
    .testimonial-author,
    .search-result-item .result-title {
        font-weight: 900;
        text-decoration: underline;
    }
    
    .btn-primary,
    .btn-secondary,
    .btn-icon,
    .status-badge,
    .tag,
    .toggle-slider,
    .select-option.selected,
    .tier-card.active,
    .product-card.active,
    .progress-step.active .step-circle,
    .progress-step.completed .step-circle,
    .filter-tag.active,
    .pagination-button.active,
    .timeline-item.active::before,
    .timeline-item.completed::before {
        border: 2px solid black;
    }
}

/* ===== VISTA DE LECTOR (SCREEN READERS) ===== */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.sr-only-focusable:focus,
.sr-only-focusable:active {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
}

/* ===== FLEX UTILIDADES RESPONSIVE ===== */
.flex-col { flex-direction: column; }
.flex-row { flex-direction: row; }

@media (max-width: 767px) {
    .flex-sm-col { flex-direction: column; }
    .flex-sm-row { flex-direction: row; }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .flex-md-col { flex-direction: column; }
    .flex-md-row { flex-direction: row; }
}

/* ===== GRID UTILIDADES RESPONSIVE ===== */
.grid-cols-1 { grid-template-columns: 1fr; }
.grid-cols-2 { grid-template-columns: repeat(2, 1fr); }
.grid-cols-3 { grid-template-columns: repeat(3, 1fr); }
.grid-cols-4 { grid-template-columns: repeat(4, 1fr); }

@media (max-width: 639px) {
    .grid-cols-xs-1 { grid-template-columns: 1fr; }
    .grid-cols-xs-2 { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 640px) and (max-width: 767px) {
    .grid-cols-sm-1 { grid-template-columns: 1fr; }
    .grid-cols-sm-2 { grid-template-columns: repeat(2, 1fr); }
    .grid-cols-sm-3 { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .grid-cols-md-1 { grid-template-columns: 1fr; }
    .grid-cols-md-2 { grid-template-columns: repeat(2, 1fr); }
    .grid-cols-md-3 { grid-template-columns: repeat(3, 1fr); }
    .grid-cols-md-4 { grid-template-columns: repeat(4, 1fr); }
}

/* ===== TEXTO RESPONSIVE ===== */
.text-xs { font-size: 12px; }
.text-sm { font-size: 14px; }
.text-base { font-size: 16px; }
.text-lg { font-size: 18px; }
.text-xl { font-size: 20px; }
.text-2xl { font-size: 24px; }
.text-3xl { font-size: 30px; }

@media (max-width: 767px) {
    .text-sm-xs { font-size: 12px; }
    .text-sm-sm { font-size: 14px; }
    .text-sm-base { font-size: 16px; }
    .text-sm-lg { font-size: 18px; }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .text-md-base { font-size: 16px; }
    .text-md-lg { font-size: 18px; }
    .text-md-xl { font-size: 20px; }
}

/* ===== PADDING Y MARGIN RESPONSIVE ===== */
.p-xs { padding: var(--space-xs); }
.p-sm { padding: var(--space-sm); }
.p-md { padding: var(--space-md); }
.p-lg { padding: var(--space-lg); }
.p-xl { padding: var(--space-xl); }

.m-xs { margin: var(--space-xs); }
.m-sm { margin: var(--space-sm); }
.m-md { margin: var(--space-md); }
.m-lg { margin: var(--space-lg); }
.m-xl { margin: var(--space-xl); }

@media (max-width: 767px) {
    .p-sm-xs { padding: var(--space-xs); }
    .p-sm-sm { padding: var(--space-sm); }
    .p-sm-md { padding: var(--space-md); }
    
    .m-sm-xs { margin: var(--space-xs); }
    .m-sm-sm { margin: var(--space-sm); }
    .m-sm-md { margin: var(--space-md); }
}

/* ===== VISIBILIDAD CONDICIONAL ===== */
@media (max-width: 639px) {
    .show-on-mobile { display: block; }
    .hide-on-mobile { display: none; }
}

@media (min-width: 640px) {
    .show-on-mobile { display: none; }
    .hide-on-mobile { display: block; }
}

@media (max-width: 1023px) {
    .show-on-tablet { display: block; }
    .hide-on-tablet { display: none; }
}

@media (min-width: 1024px) {
    .show-on-tablet { display: none; }
    .hide-on-tablet { display: block; }
}

/* ===== FIXES ESPECÍFICOS PARA NAVEGADORES ===== */

/* Safari iOS fix para inputs */
@supports (-webkit-touch-callout: none) {
    input,
    select,
    textarea {
        font-size: 16px; /* Previene zoom en iOS */
    }
}

/* Firefox scrollbar styling */
@-moz-document url-prefix() {
    .form-panel {
        scrollbar-width: thin;
        scrollbar-color: var(--xp-orange) var(--xp-border);
    }
}

/* Edge fix para grid */
@supports (-ms-ime-align: auto) {
    .cotizador-grid {
        display: -ms-grid;
        -ms-grid-columns: 1.5fr 1fr;
    }
    
    .form-panel {
        -ms-grid-column: 1;
    }
    
    .results-panel {
        -ms-grid-column: 2;
    }
}

/* ===== RTL SUPPORT (Right-to-Left) ===== */
[dir="rtl"] {
    /* Invertir direcciones */
    .step-navigation,
    .action-buttons,
    .modal-footer,
    .comparison-buttons {
        flex-direction: row-reverse;
    }
    
    .input-with-prefix .prefix {
        left: auto;
        right: 12px;
    }
    
    .input-with-icon i {
        left: auto;
        right: 16px;
    }
    
    .select-arrow {
        left: 12px;
        right: auto;
    }
    
    .timeline {
        padding-left: 0;
        padding-right: var(--space-xl);
    }
    
    .timeline::before {
        left: auto;
        right: 8px;
    }
    
    .timeline-item::before {
        left: auto;
        right: -24px;
    }
}

/* ===== PERFORMANCE OPTIMIZATIONS ===== */
@media (prefers-reduced-data: reduce) {
    .bg-grid,
    .glass-overlay,
    .map-placeholder::before,
    .map-placeholder::after,
    .map-route-line,
    .stats-card::before,
    .quote-block::before,
    .pulse-effect::after,
    .typing-animation::after {
        display: none;
    }
    
    .total-price,
    .stats-card {
        background: var(--xp-white);
        color: var(--xp-text);
    }
    
    .animation-disabled * {
        animation: none !important;
        transition: none !important;
    }
}