/* ==========================================================================
   SoftSystemCloud Premium WHMCS Custom Cart Styling
   Premium Modern Light Aesthetic (Clean Cards, Amber/Orange Accents & Buttons)
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

:root {
    --ssc-primary: #f97316; /* Amber/Orange */
    --ssc-primary-hover: #ea580c;
    --ssc-accent: #4a67ad; /* Brand Blue */
    --ssc-text-dark: #0f172a; /* Dark Navy for headers */
    --ssc-text-body: #334155; /* Slate for text */
    --ssc-bg-light: #f8fafc;
    --ssc-border-light: #e2e8f0;
    --ssc-btn-gradient: linear-gradient(135deg, #f97316 0%, #ea580c 100%);
    --ssc-radius: 12px;
}

/* Global Page Base */
body {
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
    background-color: var(--ssc-bg-light) !important;
    color: var(--ssc-text-body) !important;
}

/* Base Headings - High-Tech Space Grotesk Font */
h1, h2, h3, h4, h5, h6, 
.section-header, 
.page-header h1,
.header-lined h1,
.header-lined h2,
.header-lined h3,
.header-lined .font-size-36,
#order-standard_cart .header-lined h1,
#order-standard_cart .header-lined h2,
#order-standard_cart .header-lined .font-size-36 {
    font-family: 'Space Grotesk', system-ui, -apple-system, sans-serif !important;
    color: var(--ssc-text-dark) !important;
    font-weight: 700 !important;
    letter-spacing: -0.5px !important;
}

/* Header & Top Nav Bar */
#header, header {
    background: #4a67ad !important;
    border-bottom: 1px solid var(--ssc-border-light) !important;
    color: #ffffff !important;
    padding: 15px 0 !important;
}

#header a, #header .top-nav a {
    color: #ffffff !important;
    font-weight: 600 !important;
}

#main-menu, .navbar-main {
    background: #1e293b !important;
    border: none !important;
    border-bottom: 3px solid var(--ssc-primary) !important;
}

/* Cart Container Specific Overrides */
#order-standard_cart,
#order-standard_cart div,
#order-standard_cart span,
#order-standard_cart p,
#order-standard_cart a,
#order-standard_cart label,
#order-standard_cart input,
#order-standard_cart select,
#order-standard_cart button,
#order-standard_cart td,
#order-standard_cart th,
#order-standard_cart strong,
#order-standard_cart small {
    font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif !important;
}

#order-standard_cart h1,
#order-standard_cart h2,
#order-standard_cart h3,
#order-standard_cart h4,
#order-standard_cart h5,
#order-standard_cart h6 {
    font-family: 'Space Grotesk', system-ui, -apple-system, sans-serif !important;
    color: var(--ssc-text-dark) !important;
}

/* Cards & Panels - Clean White Design */
.panel, .card, .panel-sidebar, .card-sidebar, .home-shortcuts, .home-product-card,
#order-standard_cart .product,
#order-standard_cart .package,
#order-standard_cart .product-container,
#order-standard_cart .cart-sidebar,
#order-standard_cart .cart-body {
    border: 1px solid var(--ssc-border-light) !important;
    border-radius: var(--ssc-radius) !important;
    background: #ffffff !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.03) !important;
    color: var(--ssc-text-body) !important;
}

#order-standard_cart .panel-heading, 
#order-standard_cart .card-header,
#order-standard_cart .product-header,
#order-standard_cart .bg-primary {
    background: #f8fafc !important;
    border-bottom: 1px solid var(--ssc-border-light) !important;
    font-weight: 700 !important;
    color: var(--ssc-text-dark) !important;
}

#order-standard_cart .product-pricing,
#order-standard_cart .price-container {
    background: #f8fafc !important;
    border: 1px solid var(--ssc-border-light) !important;
    border-radius: 12px !important;
    padding: 20px !important;
}

/* Pricing Titles & Details */
#order-standard_cart .product-price,
#order-standard_cart .price-val {
    color: var(--ssc-primary) !important;
    font-weight: 800 !important;
    font-family: 'Space Grotesk', system-ui, sans-serif !important;
}

/* Buttons - Premium Pure Orange Gradient */
#order-standard_cart .btn-primary, 
#order-standard_cart button[type="submit"].btn-primary, 
#order-standard_cart .btn-checkout,
#order-standard_cart #btnCompleteOrder,
#order-standard_cart .btn-domain-search {
    background: var(--ssc-btn-gradient) !important;
    border: none !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    border-radius: var(--ssc-radius) !important;
    padding: 12px 28px !important;
    box-shadow: 0 4px 14px rgba(249, 115, 22, 0.3) !important;
    transition: all 0.25s ease !important;
    text-shadow: none !important;
}

#order-standard_cart .btn-primary:hover, 
#order-standard_cart button[type="submit"].btn-primary:hover, 
#order-standard_cart .btn-checkout:hover,
#order-standard_cart #btnCompleteOrder:hover,
#order-standard_cart .btn-domain-search:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(249, 115, 22, 0.4) !important;
    background: linear-gradient(135deg, #ea580c 0%, #c2410c 100%) !important;
}

#order-standard_cart .btn-default, 
#order-standard_cart .btn-secondary {
    background: #ffffff !important;
    border: 1px solid var(--ssc-border-light) !important;
    color: var(--ssc-text-body) !important;
    border-radius: var(--ssc-radius) !important;
}

/* Left Sidebar Items Active Styling */
#order-standard_cart .list-group-item {
    background-color: #ffffff !important;
    border: 1px solid var(--ssc-border-light) !important;
    color: var(--ssc-text-body) !important;
}

#order-standard_cart .list-group-item.active, 
#order-standard_cart .list-group-item.active:hover, 
#order-standard_cart .list-group-item.active:focus {
    background-color: rgba(249, 115, 22, 0.05) !important;
    border-color: var(--ssc-primary) !important;
    color: var(--ssc-primary) !important;
    font-weight: 700 !important;
    border-left: 4px solid var(--ssc-primary) !important;
}

/* Form Controls, Inputs & Select Dropdown Height */
#order-standard_cart .form-control,
#order-standard_cart input,
#order-standard_cart select,
#order-standard_cart textarea {
    background-color: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: var(--ssc-text-dark) !important;
    border-radius: 8px !important;
}

#order-standard_cart .form-control:focus {
    border-color: var(--ssc-primary) !important;
    box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.2) !important;
}

/* Base Select Dropdowns sizing inside standard_cart */
#order-standard_cart select.form-control,
#order-standard_cart .form-control select,
#order-standard_cart select.field,
#order-standard_cart select,
#order-standard_cart .product-configurable-options select {
    height: 48px !important;
    min-height: 48px !important;
    line-height: 1.5 !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    box-sizing: border-box !important;
    color: var(--ssc-text-dark) !important;
    background-color: #ffffff !important;
}

/* Specific TLD Select Dropdown size increase with maximum specificity */
#order-standard_cart #registertld,
#order-standard_cart #transfertld,
#order-standard_cart #subdomaintld {
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    color: var(--ssc-text-dark) !important;
    background-color: #ffffff !important;
    border: 1.5px solid #cbd5e1 !important;
}

/* Active option row in domain selection */
#order-standard_cart .option.active,
#order-standard_cart .domain-selection-options .option.active {
    background: rgba(249, 115, 22, 0.05) !important;
    border-color: var(--ssc-primary) !important;
}

/* Bulletproof Icons Restoration (CDN FontAwesome 6 Support) */
.fa, .fas, .far, .fab, .glyphicon, i,
#order-standard_cart .fa,
#order-standard_cart .fas,
#order-standard_cart .far,
#order-standard_cart .fab,
#order-standard_cart .glyphicon,
#order-standard_cart i,
.panel-title i, .field-icon i, .cart-sidebar i {
    font-family: 'Font Awesome 6 Free', 'Font Awesome 6 Brands', 'FontAwesome', 'Glyphicons Halflings', sans-serif !important;
    font-weight: 900 !important;
    display: inline-block !important;
    color: var(--ssc-primary) !important;
}

/* Footer Styling */
#footer, footer {
    background: #0f172a !important;
    border-top: 1px solid var(--ssc-border-light) !important;
    padding: 40px 0 !important;
    color: #94a3b8 !important;
}

/* Exact Website Product Card Styling */
#order-standard_cart .product-card,
.product-card {
    background-color: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05) !important;
    display: flex !important;
    flex-direction: column !important;
    transition: all 0.25s ease !important;
    margin-bottom: 25px !important;
}

#order-standard_cart .product-card:hover,
.product-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px -5px rgba(234, 88, 12, 0.15) !important;
    border-color: rgba(234, 88, 12, 0.3) !important;
}

#order-standard_cart .product-name,
.product-name {
    font-size: 1.25rem !important;
    color: #0f172a !important;
    font-weight: 700 !important;
    font-family: 'Space Grotesk', system-ui, sans-serif !important;
}

#order-standard_cart .product-desc,
.product-desc {
    font-size: 0.85rem !important;
    color: #475569 !important;
    line-height: 1.5 !important;
}

#order-standard_cart .price-lbl,
.price-lbl {
    font-size: 0.72rem !important;
    color: #64748b !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

#order-standard_cart .price-val,
.price-val {
    font-size: 1.8rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    line-height: 1.1 !important;
    font-family: 'Space Grotesk', system-ui, sans-serif !important;
}

#order-standard_cart .price-tax,
.price-tax {
    font-size: 0.78rem !important;
    color: #ea580c !important;
    font-weight: 700 !important;
}

#order-standard_cart .orange-btn,
.orange-btn,
.buy-product-btn {
    background: #ea580c !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    box-shadow: 0 4px 12px rgba(234, 88, 12, 0.3) !important;
    transition: all 0.2s ease !important;
}

#order-standard_cart .orange-btn:hover,
.orange-btn:hover,
.buy-product-btn:hover {
    background: #c2410c !important;
    box-shadow: 0 6px 16px rgba(234, 88, 12, 0.4) !important;
}

/* Fix Tooltips (Bootstrap Tooltip Popup) - White text on Dark Slate */
.tooltip,
.tooltip-inner,
#order-standard_cart .tooltip,
#order-standard_cart .tooltip-inner {
    background-color: #0f172a !important;
    color: #ffffff !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25) !important;
}

.tooltip.top .tooltip-arrow,
#order-standard_cart .tooltip.top .tooltip-arrow {
    border-top-color: #0f172a !important;
}

.tooltip.bottom .tooltip-arrow,
#order-standard_cart .tooltip.bottom .tooltip-arrow {
    border-bottom-color: #0f172a !important;
}

.tooltip.left .tooltip-arrow,
#order-standard_cart .tooltip.left .tooltip-arrow {
    border-left-color: #0f172a !important;
}

.tooltip.right .tooltip-arrow,
#order-standard_cart .tooltip.right .tooltip-arrow {
    border-right-color: #0f172a !important;
}

/* Fix Domain Selection Options & Radio Button Labels */
#order-standard_cart .domain-selection-options,
#order-standard_cart .domain-selection-options .option,
#order-standard_cart .domain-input-group,
#order-standard_cart .field {
    background-color: #ffffff !important;
}

#order-standard_cart .domain-selection-options .option label,
#order-standard_cart .domain-selection-options label,
#order-standard_cart .option label,
#order-standard_cart label,
#order-standard_cart .domain-selection-options .option span {
    color: #0f172a !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
}

/* Fix Bootstrap Alerts (Info, Danger, Success, Warning) */
.alert-info, #order-standard_cart .alert-info {
    background-color: #e0f2fe !important;
    border-color: #bae6fd !important;
    color: #0369a1 !important;
}

.alert-danger, #order-standard_cart .alert-danger {
    background-color: #fef2f2 !important;
    border-color: #fecaca !important;
    color: #b91c1c !important;
}

.alert-warning, #order-standard_cart .alert-warning {
    background-color: #fffbebf !important;
    border-color: #fde68a !important;
    color: #b45309 !important;
}

.alert-success, #order-standard_cart .alert-success {
    background-color: #f0fdf4 !important;
    border-color: #bbf7d0 !important;
    color: #15803d !important;
}

/* Fix Input Placeholder Text */
#order-standard_cart input::placeholder,
#order-standard_cart textarea::placeholder,
input::placeholder {
    color: #94a3b8 !important;
    opacity: 1 !important;
}

/* Table Headers ("Producto/Opciones", "Precio/Ciclo") */
#order-standard_cart table th,
#order-standard_cart .view-cart-items-header,
#order-standard_cart table.view-cart-items th,
#order-standard_cart .table-header,
#order-standard_cart div[class*="header-bg"],
#order-standard_cart div[class*="items-header"] {
    background-color: #4a67ad !important;
    color: #ffffff !important;
}

#order-standard_cart table th *,
#order-standard_cart .view-cart-items-header *,
#order-standard_cart table.view-cart-items th *,
#order-standard_cart .table-header *,
#order-standard_cart div[class*="header-bg"] *,
#order-standard_cart div[class*="items-header"] * {
    color: #ffffff !important;
}

/* Sidebar Order Summary Header ("Sumario de Pedido") */
#order-standard_cart .order-summary,
#order-standard_cart .order-summary .header,
#order-standard_cart .order-summary h2,
#order-standard_cart .order-summary h3,
#order-standard_cart .sidebar-header {
    background-color: #1e293b !important;
    color: #ffffff !important;
}

#order-standard_cart .order-summary *,
#order-standard_cart .sidebar-header * {
    color: #ffffff !important;
}

/* Spotlight TLD Cards & Buttons ("Añadir", "No disponible") */
#order-standard_cart .spotlight-tld-container,
#order-standard_cart .spotlight-tld {
    background-color: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
}

#order-standard_cart .spotlight-tld .btn-add-to-cart,
#order-standard_cart .spotlight-tld .btn-primary,
#order-standard_cart .btn-add-to-cart {
    background-color: #ea580c !important;
    border-color: #ea580c !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

#order-standard_cart .spotlight-tld .btn-add-to-cart *,
#order-standard_cart .btn-add-to-cart * {
    color: #ffffff !important;
}

#order-standard_cart .spotlight-tld .btn.unavailable,
#order-standard_cart .spotlight-tld .btn.invalid,
#order-standard_cart .spotlight-tld .btn[disabled] {
    background-color: #94a3b8 !important;
    border-color: #94a3b8 !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    opacity: 0.9 !important;
}

#order-standard_cart .spotlight-tld .btn.unavailable *,
#order-standard_cart .spotlight-tld .btn.invalid *,
#order-standard_cart .spotlight-tld .btn[disabled] * {
    color: #ffffff !important;
}

/* "Vaciar Carro" Button */
#order-standard_cart #btnEmptyCart,
#order-standard_cart .btn-empty-cart,
#order-standard_cart .btn-danger {
    background-color: #ef4444 !important;
    border-color: #ef4444 !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

#order-standard_cart #btnEmptyCart *,
#order-standard_cart .btn-empty-cart *,
#order-standard_cart .btn-danger * {
    color: #ffffff !important;
}

/* Checkout "Comprar" Button */
#order-standard_cart #checkout,
#order-standard_cart .btn-checkout,
#order-standard_cart #btnCompleteOrder {
    background: linear-gradient(135deg, #f97316 0%, #ea580c 100%) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
}

#order-standard_cart #checkout *,
#order-standard_cart .btn-checkout *,
#order-standard_cart #btnCompleteOrder * {
    color: #ffffff !important;
}

/* Order Summary Box in configureproduct.tpl (#producttotal / #orderSummary) */
#order-standard_cart #orderSummary,
#order-standard_cart #producttotal,
#order-standard_cart .summary-container {
    background-color: #ffffff !important;
    color: #0f172a !important;
}

#order-standard_cart #producttotal *,
#order-standard_cart .summary-container *,
#order-standard_cart #orderSummary .summary-container * {
    color: #334155 !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
}

#order-standard_cart #producttotal .product-name,
#order-standard_cart .summary-container .product-name {
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin-bottom: 4px !important;
}

#order-standard_cart #producttotal .product-group,
#order-standard_cart .summary-container .product-group {
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    color: #ea580c !important;
    margin-bottom: 12px !important;
}

#order-standard_cart #producttotal .pull-left,
#order-standard_cart #producttotal .float-left,
#order-standard_cart .summary-container .pull-left,
#order-standard_cart .summary-container .float-left {
    color: #0f172a !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
}

#order-standard_cart #producttotal .pull-right,
#order-standard_cart #producttotal .float-right,
#order-standard_cart .summary-container .pull-right,
#order-standard_cart .summary-container .float-right {
    color: #0f172a !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
}

#order-standard_cart #producttotal .total-due-today,
#order-standard_cart .summary-container .total-due-today {
    background-color: #f8fafc !important;
    border: 1.5px solid #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 15px !important;
    margin-top: 15px !important;
}

#order-standard_cart #producttotal .total-due-today .amt,
#order-standard_cart .summary-container .total-due-today .amt {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    display: block !important;
}

#order-standard_cart #producttotal .total-due-today span,
#order-standard_cart .summary-container .total-due-today span {
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    color: #ea580c !important;
    text-transform: uppercase !important;
}

/* Step Progress Indicator Bar */
.checkout-steps-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 14px 20px !important;
    margin-bottom: 25px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03) !important;
}

.checkout-steps-bar .step-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #64748b !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
}

.checkout-steps-bar .step-number {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: #f1f5f9 !important;
    color: #64748b !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 800 !important;
    font-size: 0.9rem !important;
    border: 2px solid #cbd5e1 !important;
    flex-shrink: 0 !important;
}

.checkout-steps-bar .step-item.active {
    color: #0f172a !important;
    font-weight: 800 !important;
}

.checkout-steps-bar .step-item.active .step-number {
    background: #ea580c !important;
    color: #ffffff !important;
    border-color: #ea580c !important;
    box-shadow: 0 2px 8px rgba(234, 88, 12, 0.35) !important;
}

.checkout-steps-bar .step-item.completed {
    color: #16a34a !important;
    font-weight: 700 !important;
}

.checkout-steps-bar .step-item.completed .step-number {
    background: #dcfce7 !important;
    color: #16a34a !important;
    border-color: #22c55e !important;
}

.checkout-steps-bar .step-divider {
    flex-grow: 1 !important;
    height: 2px !important;
    background: #e2e8f0 !important;
    margin: 0 15px !important;
}

@media (max-width: 768px) {
    .checkout-steps-bar .step-label {
        display: none !important;
    }
}

/* Order Summary Box Layout, Right-Alignment & Large Font Size */
#order-standard_cart #orderSummary,
#order-standard_cart #producttotal,
#order-standard_cart .summary-container {
    background-color: #ffffff !important;
    color: #0f172a !important;
    font-size: 1.15rem !important;
}

#order-standard_cart #producttotal div.clearfix,
#order-standard_cart .summary-container div.clearfix,
#order-standard_cart .summary-container .clearfix,
#order-standard_cart .summary-totals .clearfix {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 12px !important;
    width: 100% !important;
    clear: both !important;
    font-size: 1.1rem !important;
}

#order-standard_cart #producttotal .pull-left,
#order-standard_cart #producttotal .float-left,
#order-standard_cart .summary-container .pull-left,
#order-standard_cart .summary-container .float-left,
#order-standard_cart .summary-totals .pull-left,
#order-standard_cart .summary-totals .float-left {
    color: #0f172a !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    text-align: left !important;
    float: none !important;
}

#order-standard_cart #producttotal .pull-right,
#order-standard_cart #producttotal .float-right,
#order-standard_cart .summary-container .pull-right,
#order-standard_cart .summary-container .float-right,
#order-standard_cart .summary-totals .pull-right,
#order-standard_cart .summary-totals .float-right {
    color: #0f172a !important;
    font-weight: 800 !important;
    font-size: 1.15rem !important;
    text-align: right !important;
    float: none !important;
    margin-left: auto !important;
}

#order-standard_cart #producttotal .product-name,
#order-standard_cart .summary-container .product-name {
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    display: block !important;
    margin-bottom: 6px !important;
    text-align: left !important;
}

#order-standard_cart #producttotal .product-group,
#order-standard_cart .summary-container .product-group {
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #ea580c !important;
    display: block !important;
    margin-bottom: 18px !important;
    text-align: left !important;
}

#order-standard_cart #producttotal .summary-totals,
#order-standard_cart .summary-container .summary-totals {
    border-top: 2px solid #e2e8f0 !important;
    border-bottom: 2px solid #e2e8f0 !important;
    padding: 15px 0 !important;
    margin: 15px 0 !important;
}

#order-standard_cart #producttotal .total-due-today,
#order-standard_cart .summary-container .total-due-today {
    background-color: #f8fafc !important;
    border: 2px solid #ea580c !important;
    border-radius: 10px !important;
    padding: 18px !important;
    margin-top: 20px !important;
    text-align: center !important;
}

#order-standard_cart #producttotal .total-due-today .amt,
#order-standard_cart .summary-container .total-due-today .amt {
    font-size: 2.4rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    display: block !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

#order-standard_cart #producttotal .total-due-today span,
#order-standard_cart .summary-container .total-due-today span {
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    color: #ea580c !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Step 3 (viewcart.tpl) Order Summary Detailed Styling */
#order-standard_cart .order-summary .summary-container {
    background-color: #ffffff !important;
    padding: 10px 0 !important;
}

#order-standard_cart .order-summary .subtotal,
#order-standard_cart .order-summary .bordered-totals .clearfix,
#order-standard_cart .order-summary .recurring-totals {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 1.5px solid #f1f5f9 !important;
    width: 100% !important;
    clear: both !important;
}

#order-standard_cart .order-summary .pull-left,
#order-standard_cart .order-summary .float-left {
    color: #0f172a !important;
    font-weight: 700 !important;
    font-size: 1.15rem !important;
    text-align: left !important;
    float: none !important;
}

#order-standard_cart .order-summary .pull-right,
#order-standard_cart .order-summary .float-right,
#order-standard_cart .order-summary #subtotal,
#order-standard_cart .order-summary #discount,
#order-standard_cart .order-summary #taxTotal1,
#order-standard_cart .order-summary #taxTotal2,
#order-standard_cart .order-summary #recurring {
    color: #0f172a !important;
    font-weight: 800 !important;
    font-size: 1.2rem !important;
    text-align: right !important;
    float: none !important;
    margin-left: auto !important;
}

#order-standard_cart .order-summary #recurring span {
    color: #0f172a !important;
    font-weight: 800 !important;
    font-size: 1.15rem !important;
    text-align: right !important;
}

#order-standard_cart .order-summary .total-due-today {
    background-color: #f8fafc !important;
    border: 2px solid #ea580c !important;
    border-radius: 12px !important;
    padding: 18px !important;
    margin-top: 20px !important;
    text-align: center !important;
}

#order-standard_cart .order-summary .total-due-today #totalDueToday,
#order-standard_cart .order-summary .total-due-today .amt {
    font-size: 2.4rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    display: block !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

#order-standard_cart .order-summary .total-due-today .text-uppercase,
#order-standard_cart .order-summary .total-due-today span {
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    color: #ea580c !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Checkout Form Page (checkout.tpl) - Large Font Sizes & High Contrast */
#order-standard_cart .sub-heading {
    position: static !important;
    height: auto !important;
    border-bottom: 2px solid #e2e8f0 !important;
    text-align: left !important;
    margin: 35px 0 20px 0 !important;
    padding-bottom: 10px !important;
    clear: both !important;
    display: block !important;
    width: 100% !important;
}

#order-standard_cart .sub-heading span,
#order-standard_cart .sub-heading span.primary-bg-color {
    position: static !important;
    top: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: 1.35rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    display: inline-block !important;
    border: none !important;
    box-shadow: none !important;
}

#order-standard_cart h2,
#order-standard_cart h3 {
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin-top: 20px !important;
    margin-bottom: 15px !important;
}

/* Help descriptions */
#order-standard_cart p,
#order-standard_cart .field-help-text,
#order-standard_cart .help-block,
#order-standard_cart small {
    font-size: 1.05rem !important;
    color: #334155 !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
}

/* Fix Prepend Icons & Input Padding in checkout.tpl */
#order-standard_cart .prepend-icon {
    position: relative !important;
    margin-bottom: 20px !important;
}

#order-standard_cart .prepend-icon .field-icon,
#order-standard_cart .prepend-icon label.field-icon {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10 !important;
    color: #ea580c !important;
    font-size: 1.1rem !important;
    pointer-events: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    width: auto !important;
    background: transparent !important;
    border: none !important;
}

#order-standard_cart .prepend-icon input.form-control,
#order-standard_cart .prepend-icon select.form-control,
#order-standard_cart .prepend-icon input.field,
#order-standard_cart input.form-control,
#order-standard_cart select.form-control {
    padding-left: 38px !important;
    padding-right: 16px !important;
    height: 50px !important;
    font-size: 1.05rem !important;
    color: #0f172a !important;
    border: 1.5px solid #cbd5e1 !important;
    border-radius: 8px !important;
    background-color: #ffffff !important;
}

#order-standard_cart input::placeholder,
#order-standard_cart input::-webkit-input-placeholder {
    color: #94a3b8 !important;
    font-weight: 500 !important;
    opacity: 0.9 !important;
}

/* Telephone Field & Flag Alignment Fix */
#order-standard_cart .prepend-icon label[for="inputPhone"].field-icon,
#order-standard_cart label[for="inputPhone"].field-icon {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 25 !important;
    color: #ea580c !important;
    font-size: 1.1rem !important;
    pointer-events: none !important;
    margin: 0 !important;
}

#order-standard_cart .intl-tel-input,
#order-standard_cart .telephone-input {
    width: 100% !important;
    display: block !important;
    position: relative !important;
}

#order-standard_cart .intl-tel-input .flag-container {
    position: absolute !important;
    left: 32px !important;
    top: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    z-index: 20 !important;
}

#order-standard_cart .intl-tel-input .selected-flag {
    height: 100% !important;
    padding: 0 8px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    background-color: #f1f5f9 !important;
    border-radius: 6px 0 0 6px !important;
    border-right: 1px solid #cbd5e1 !important;
}

#order-standard_cart .intl-tel-input .selected-dial-code {
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    position: static !important;
    display: inline-block !important;
    white-space: nowrap !important;
}

#order-standard_cart #inputPhone,
#order-standard_cart input[type="tel"],
#order-standard_cart .prepend-icon input[type="tel"],
#order-standard_cart .intl-tel-input input,
#order-standard_cart .telephone-input input {
    padding-left: 130px !important;
    height: 50px !important;
    font-size: 1.05rem !important;
    color: #0f172a !important;
}

/* Password Strength Indicator */
#order-standard_cart #passwordStrengthText,
#order-standard_cart .password-strength-text {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #ea580c !important;
    margin-top: 6px !important;
}

/* Detalles de Pago - Importe a la fecha */
#order-standard_cart .total-due-today-container,
#order-standard_cart .payment-details,
#order-standard_cart div.alert-success,
#order-standard_cart .total-due-today-box {
    background-color: #f0fdf4 !important;
    border: 2px solid #22c55e !important;
    border-radius: 12px !important;
    padding: 20px !important;
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-align: center !important;
}

#order-standard_cart .total-due-today-container *,
#order-standard_cart div.alert-success * {
    font-size: 1.6rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

#order-standard_cart .total-due-today-container .amt,
#order-standard_cart div.alert-success .amt,
#order-standard_cart div.alert-success strong {
    font-size: 2.2rem !important;
    font-weight: 800 !important;
    color: #ea580c !important;
}
