/* =========================================================================
   IDONCLOUD Cart — order form filho do standard_cart
   Só CSS: os .tpl vêm todos do standard_cart. Carregado automaticamente pelo
   common.tpl do standard_cart ({assetExists file="custom.css"}).
   Tokens (--idc-*) e fonte vêm de templates/idoncloud/css/idoncloud.css.
   ========================================================================= */

#order-standard_cart{font-family:var(--idc-font,Inter,system-ui,sans-serif);color:var(--idc-text,#0f172a)}

/* ---------- Títulos ---------- */
#order-standard_cart .header-lined{border:0;margin:0 0 18px;padding:0}
#order-standard_cart .header-lined h1,#order-standard_cart .font-size-36{font-size:clamp(28px,3.4vw,36px)!important;font-weight:800;letter-spacing:-.8px;line-height:1.1;margin:0 0 6px}
#order-standard_cart .header-lined p,#order-standard_cart .cart-body>p{color:var(--idc-muted);font-size:15px;line-height:1.55}

/* Separadores "texto sobre linha" → rótulo de secção como na homepage */
#order-standard_cart .sub-heading,#order-standard_cart .sub-heading-borderless{height:auto;border:0;text-align:left;margin:30px 0 14px}
#order-standard_cart .sub-heading span,#order-standard_cart .sub-heading-borderless span{position:static;top:auto;padding:0;background:none!important;font:700 12.5px/1.2 var(--idc-font);letter-spacing:1px;text-transform:uppercase;color:var(--idc-muted)!important}
#order-standard_cart .sub-heading span.primary-bg-color{background:none!important}

/* ---------- Botões ---------- */
#order-standard_cart .btn-success,#order-standard_cart .btn-primary,#order-standard_cart .btn-checkout,#order-standard_cart #btnCompleteOrder,#order-standard_cart #btnCompleteProductConfig{background:var(--idc-blue)!important;border:1.5px solid var(--idc-blue)!important;color:#fff!important;border-radius:6px;font-weight:600;box-shadow:none}
#order-standard_cart .btn-success:hover,#order-standard_cart .btn-primary:hover,#order-standard_cart .btn-checkout:hover,#order-standard_cart #btnCompleteOrder:hover,#order-standard_cart #btnCompleteProductConfig:hover{background:var(--idc-blue-h)!important;border-color:var(--idc-blue-h)!important}
#order-standard_cart .btn-lg,#order-standard_cart .btn-checkout{font-size:16px;padding:13px 28px}
#order-standard_cart .btn-order-now,#order-standard_cart .btn-checkout,#order-standard_cart #btnCompleteProductConfig,#order-standard_cart #btnCompleteOrder{display:inline-flex;align-items:center;justify-content:center;gap:8px}
#order-standard_cart .btn-link{color:var(--idc-blue)}

/* ---------- Loja: produtos em cartões (como os da homepage) ---------- */
#order-standard_cart .products .row-eq-height>[class*="col-"]{display:flex}
#order-standard_cart .products .product{display:flex;flex-direction:column;width:100%;padding:0;margin:0 0 20px;background:#fff;border:1px solid var(--idc-line);border-radius:8px;box-shadow:0 2px 10px rgba(15,23,42,.04);overflow:hidden;transition:border-color .2s,box-shadow .2s}
#order-standard_cart .products .product:hover{border-color:rgba(37,99,235,.45);box-shadow:0 12px 30px rgba(15,23,42,.08)}
#order-standard_cart .products .product header{margin:0;padding:22px 24px 4px;background:none;border-radius:0}
#order-standard_cart .products .product header span{font-size:20px;font-weight:700;letter-spacing:-.3px;color:var(--idc-text)}
#order-standard_cart .products .product header .qty{float:none;display:block;font-size:12.5px;font-style:normal;color:var(--idc-muted);margin-top:4px}
#order-standard_cart .products .product div.product-desc{float:none;width:auto;padding:6px 24px 0;font-size:14.5px;line-height:1.5;color:var(--idc-muted)}
#order-standard_cart .products .product div.product-desc ul{padding-left:0;list-style:none;margin:8px 0 0}
#order-standard_cart .products .product div.product-desc li{padding:3px 0}
#order-standard_cart .products .product footer{float:none;width:auto;margin:auto 0 0;padding:18px 24px 22px;text-align:left;font-size:13.5px;color:var(--idc-muted);border-top:1px solid var(--idc-line);background:var(--idc-soft)}
#order-standard_cart .products .product div.product-pricing{margin:0 0 14px;line-height:1.3}
#order-standard_cart .products .product div.product-pricing span.price{display:block;font-size:28px;font-weight:800;letter-spacing:-.5px;color:var(--idc-text)}
#order-standard_cart .products .product .btn-order-now{display:flex;justify-content:center;width:100%;padding:11px 16px;font-size:14.5px}

/* ---------- Configurar produto ---------- */
#order-standard_cart .product-info{background:#fff;border:1px solid var(--idc-line);border-radius:8px;padding:18px 22px;margin-bottom:8px}
#order-standard_cart .product-info .product-title{font-size:20px;font-weight:700;margin:0 0 4px;color:var(--idc-text)}
#order-standard_cart .product-configurable-options,#order-standard_cart .field-container{background:#fff;border:1px solid var(--idc-line);border-radius:8px;padding:18px 22px}
#order-standard_cart .field-container{margin-bottom:6px}
#order-standard_cart label{font-weight:600;font-size:14px;color:var(--idc-text)}
#order-standard_cart .form-control,#order-standard_cart .custom-select,#order-standard_cart select.form-control{min-height:44px;border:1.5px solid #dbe2ec;border-radius:6px;font-size:15px}
#order-standard_cart .form-control:focus,#order-standard_cart .custom-select:focus{border-color:var(--idc-blue);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
#order-standard_cart .alert-warning.info-text-sm,#order-standard_cart .info-text-sm{border-radius:6px}

/* ---------- Resumo do pedido (configurar e carrinho) ---------- */
#order-standard_cart .order-summary{background:var(--idc-navy);border:0;border-radius:8px;overflow:hidden;box-shadow:0 14px 34px rgba(10,22,48,.18)}
#order-standard_cart .order-summary h2{padding:16px 20px;text-align:left;font:700 16px/1.2 var(--idc-font);letter-spacing:.2px;color:#fff}
#order-standard_cart .order-summary .loader{color:var(--idc-on-dark)}
#order-standard_cart .summary-container{background:#fff;border-radius:0;padding:18px 20px;font-size:14px;min-height:0}
#order-standard_cart .order-summary .product-name{font-size:15px;font-weight:700}
#order-standard_cart .order-summary .product-group{font-style:normal;color:var(--idc-muted);font-size:13px}
#order-standard_cart .order-summary .summary-totals,#order-standard_cart .order-summary .subtotal,#order-standard_cart .order-summary .bordered-totals{border-color:var(--idc-line)}
#order-standard_cart .order-summary .total-due-today{margin-top:10px}
#order-standard_cart .order-summary .total-due-today .amt{font-size:30px;font-weight:800;letter-spacing:-.5px;color:var(--idc-text)}
#order-standard_cart .order-summary .total-due-today span:not(.amt){color:var(--idc-muted);font-size:13px}
#order-standard_cart .order-summary .recurring-charges{font-style:normal;color:var(--idc-muted)}
#order-standard_cart .order-summary .btn-checkout{display:flex;justify-content:center;width:100%;margin-top:6px}
#order-standard_cart .order-summary .btn-continue-shopping{display:inline-block;margin-top:10px;color:var(--idc-blue);font-weight:600}
#order-standard_cart .order-summary .text-center,#order-standard_cart .order-summary .text-right{padding-bottom:4px}

/* ---------- Carrinho ---------- */
#order-standard_cart .view-cart-items-header{background:var(--idc-navy);color:#fff;border-radius:8px 8px 0 0;padding:12px 20px;font-size:12.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}
#order-standard_cart .view-cart-items{border:1px solid var(--idc-line);border-top:0;border-radius:0 0 8px 8px;overflow:hidden;background:#fff;margin-bottom:26px}
#order-standard_cart .view-cart-items .item{padding:16px 20px;font-size:14px;border-bottom:1px solid var(--idc-line)}
#order-standard_cart .view-cart-items .item:nth-child(even){background:#fff}
#order-standard_cart .view-cart-items .item:last-child{border-bottom:0}
#order-standard_cart .view-cart-items .item-title{font-size:17px;font-weight:700;color:var(--idc-text)}
#order-standard_cart .view-cart-items .item-group{font-size:13px;color:var(--idc-muted)}
#order-standard_cart .view-cart-items .item-price span{font-size:18px;font-weight:700}
#order-standard_cart .view-cart-items .item-price .cycle{font-size:12.5px;font-weight:500;color:var(--idc-muted)}
#order-standard_cart .view-cart-items .btn-remove-from-cart{color:var(--idc-muted)}
#order-standard_cart .view-cart-items .btn-remove-from-cart:hover{color:#dc2626}
#order-standard_cart .empty-cart{margin:-18px 0 0}
#order-standard_cart .empty-cart .btn{background:none;border:0;color:var(--idc-muted);font-size:13px;padding:4px 0;border-radius:0}
#order-standard_cart .empty-cart .btn:hover{color:#dc2626}
#order-standard_cart .view-cart-tabs .nav-tabs{padding-left:0;border-bottom:1px solid var(--idc-line)}
#order-standard_cart .view-cart-tabs .nav-tabs a{font-weight:600;color:var(--idc-muted)}
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],#order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"]{color:var(--idc-blue);background:#fff;border-color:var(--idc-line) var(--idc-line) #fff}
#order-standard_cart .view-cart-tabs .tab-content{background:#fff;border:1px solid var(--idc-line);border-top:0;border-radius:0 0 8px 8px;padding:18px}

/* ---------- Checkout ---------- */
#order-standard_cart .account-select-container{border:0}
#order-standard_cart .account-select-container div.account{background:#fff;border:1px solid var(--idc-line)!important;border-radius:8px;margin-bottom:8px;padding:14px 16px}
#order-standard_cart .account-select-container div.account.active{border-color:var(--idc-blue)!important;box-shadow:0 0 0 3px rgba(37,99,235,.12)}
#order-standard_cart #totalDueToday.alert{background:#fff;border:1px solid var(--idc-line);border-left:4px solid var(--idc-blue);border-radius:8px;color:var(--idc-text);font-size:17px}
#order-standard_cart #totalDueToday.alert strong,#order-standard_cart #totalDueToday.alert span{color:var(--idc-text);font-weight:800}
#order-standard_cart #paymentGatewaysContainer .payment-methods,#order-standard_cart #paymentGatewaysContainer label.radio-inline{display:inline-flex;align-items:center;gap:8px;margin:0 8px 8px 0;padding:11px 16px;background:#fff;border:1px solid var(--idc-line);border-radius:8px;font-weight:600}
#order-standard_cart .prepend-icon .field-icon{color:var(--idc-muted)}
#order-standard_cart .checkout-security-msg{border-radius:8px;font-size:13px;margin-top:22px}
#order-standard_cart .field-help-text,#order-standard_cart .small{color:var(--idc-muted)}
#order-standard_cart .text-center>#btnCompleteOrder{min-width:240px}

/* ---------- Encomenda concluída ---------- */
#order-standard_cart .order-confirmation{position:relative;margin:26px 0;padding:74px 24px 26px;background:#fff;border:1px solid var(--idc-line);border-radius:8px;box-shadow:0 14px 34px rgba(15,23,42,.08);color:var(--idc-muted);font-size:15px;text-align:center}
#order-standard_cart .order-confirmation::before{content:"";position:absolute;top:18px;left:50%;width:44px;height:44px;margin-left:-22px;border-radius:50%;background:rgba(34,197,94,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322c55e' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center/24px no-repeat}
#order-standard_cart .order-confirmation span{display:block;margin-top:6px;font-size:30px;font-weight:800;letter-spacing:-.5px;color:var(--idc-text)}
#order-standard_cart .alert-warning{border-radius:8px}
#order-standard_cart .cart-body>.text-center .btn-default{background:var(--idc-blue);border-color:var(--idc-blue);color:#fff;padding:12px 24px}
#order-standard_cart .cart-body>.text-center .btn-default:hover{background:var(--idc-blue-h)}

/* ---------- Mobile ---------- */
@media (max-width:767px){
  #order-standard_cart .products .product footer{padding:16px 20px 20px}
  #order-standard_cart .order-summary{margin-top:20px}
  #order-standard_cart .view-cart-items .item{padding:14px 16px}
  #order-standard_cart .order-confirmation span{font-size:24px}
}

/* Cores: .btn-success e .btn-info do standard_cart com o azul da marca (ex. "Already Registered?" no checkout) */
#order-standard_cart .btn-info{background:var(--idc-blue)!important;border:1.5px solid var(--idc-blue)!important;color:#fff!important;border-radius:6px;font-weight:600;box-shadow:none}
#order-standard_cart .btn-info:hover,#order-standard_cart .btn-info:focus{background:var(--idc-blue-h)!important;border-color:var(--idc-blue-h)!important}
#order-standard_cart .bootstrap-switch .bootstrap-switch-handle-on.bootstrap-switch-success,#order-standard_cart .bootstrap-switch .bootstrap-switch-handle-off.bootstrap-switch-success{background:var(--idc-blue);color:#fff}
/* Loja: características do produto como "Memory: 128 GB RAM". O WHMCS escreve <span class="feature-value">128 GB RAM</span> Memory;
   com row-reverse o rótulo (texto solto) passa para a frente e o ": " vem do ::before do valor. Sem mexer no products.tpl. */
#order-standard_cart .products .product div.product-desc ul{margin:10px 0 0}
#order-standard_cart .products .product div.product-desc li{padding:7px 0;border-bottom:1px dashed var(--idc-line);font-size:14px;line-height:1.45}
#order-standard_cart .products .product div.product-desc li:has(>.feature-value){display:flex;flex-direction:row-reverse;justify-content:flex-end;align-items:baseline;font-weight:600;color:var(--idc-text);white-space:nowrap}
#order-standard_cart .products .product div.product-desc li:last-child{border-bottom:0}
#order-standard_cart .products .product div.product-desc li .feature-value{min-width:0;font-weight:400;color:var(--idc-muted);white-space:normal}
#order-standard_cart .products .product div.product-desc li .feature-value::before{content:":\00a0";font-weight:600;color:var(--idc-text)}

/* Mobile/tablet: os painéis do standard_cart (Categories, Actions, Choose Currency) em <select> ocupavam o primeiro ecrã.
   Passam para o fim do conteúdo; o painel "Choose Currency" vazio (só tinha "- Choose Another Category -") some,
   fica o seletor de moeda verdadeiro. Os <select> nunca passam a largura do ecrã (Configure sem scroll horizontal). */
@media (max-width:991.98px){
  #order-standard_cart .cart-body{display:flex;flex-direction:column}
  #order-standard_cart .cart-body>*{min-width:0}
  #order-standard_cart .cart-body>.sidebar-collapsed{order:99;margin-top:28px;padding-top:18px;border-top:1px solid var(--idc-line)}
  #order-standard_cart .sidebar-collapsed .panel:has(select option:only-child){display:none}
  #order-standard_cart .sidebar-collapsed .panel{margin-bottom:10px}
  #order-standard_cart .sidebar-collapsed .panel .panel-heading,#order-standard_cart .sidebar-collapsed .panel .card-header{padding:10px 14px}
  #order-standard_cart .sidebar-collapsed .panel .panel-body,#order-standard_cart .sidebar-collapsed .panel .card-body{padding:10px 14px}
  #order-standard_cart .sidebar-collapsed>.float-right{float:none!important;display:block}
  #order-standard_cart select,#order-standard_cart .select-inline{max-width:100%}
  #order-standard_cart .select-inline{width:100%}
}
