.cart-order-type {
    margin-bottom:14px;
    padding:12px;
    border:1px solid var(--separator);
    border-radius:var(--radius-lg);
    background:var(--bg);
}
.cart-order-type-label {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    margin-bottom:9px;
    color:var(--text-secondary);
    font-size:11px;
    font-weight:800;
}
.cart-order-type-options { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.cart-order-type-button {
    min-width:0;
    min-height:58px;
    padding:8px 5px;
    border:1px solid var(--separator);
    border-radius:12px;
    background:var(--surface);
    color:var(--text-secondary);
    display:grid;
    place-items:center;
    align-content:center;
    gap:5px;
    font-size:10px;
    font-weight:850;
    line-height:1.2;
    overflow-wrap:break-word;
    hyphens:auto;
    cursor:pointer;
}
.cart-order-type-button .heroicon-mask { font-size:19px; }
.cart-order-type-button.active {
    border-color:var(--primary);
    background:var(--primary-soft);
    color:var(--primary);
    box-shadow:0 0 0 2px rgba(255,77,0,.08);
}
.checkout-order-summary {
    margin:14px 0 18px;
    border:1px solid var(--separator);
    border-radius:var(--radius-lg);
    background:var(--bg);
    overflow:hidden;
    min-width:0;
}
.checkout-progress {
    display:flex;
    align-items:center;
    gap:8px;
    margin:14px 0 10px;
    color:var(--text-secondary);
    font-size:10px;
    font-weight:850;
}
.checkout-progress-bar { flex:1; height:4px; overflow:hidden; border-radius:99px; background:var(--separator); }
.checkout-progress-bar span { display:block; width:100%; height:100%; background:var(--primary); border-radius:inherit; }
.checkout-summary-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:11px 13px;
    border-bottom:1px solid var(--separator);
}
.checkout-summary-head b { font-size:12px; }
.checkout-summary-edit {
    border:0;
    background:transparent;
    color:var(--primary);
    display:inline-flex;
    align-items:center;
    gap:5px;
    font-size:11px;
    font-weight:850;
    cursor:pointer;
    flex-shrink:0;
}
.checkout-summary-list { padding:3px 13px; }
.checkout-summary-item { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:8px 0; border-bottom:1px dashed var(--separator); font-size:11px; }
.checkout-summary-item:last-child { border-bottom:0; }
.checkout-summary-item span { min-width:0; line-height:1.45; overflow-wrap:break-word; }
.checkout-summary-item strong { flex-shrink:0; white-space:nowrap; }
.checkout-summary-item span b { color:var(--primary); margin-right:3px; }
.checkout-summary-empty { padding:14px; color:var(--text-secondary); font-size:11px; text-align:center; }
.checkout-summary-total { display:flex; align-items:center; justify-content:space-between; padding:10px 13px; background:var(--surface); border-top:1px solid var(--separator); font-size:11px; font-weight:800; }
.checkout-summary-total strong { color:var(--primary); font-size:14px; flex-shrink:0; white-space:nowrap; }
.form-group.has-error .form-input { border-color:#DC3545; box-shadow:0 0 0 3px rgba(220,53,69,.08); }
.checkout-field-error { display:none; margin-top:6px; color:#C92A3B; font-size:11px; font-weight:700; line-height:1.4; overflow-wrap:break-word; }
.form-group.has-error .checkout-field-error { display:block; }
.checkout-server-error {
    display:none;
    margin:4px 0 12px;
    padding:10px 12px;
    border:1px solid #FFD0D8;
    border-radius:11px;
    background:#FFEDF0;
    color:#A9283B;
    font-size:11px;
    font-weight:750;
    line-height:1.45;
    overflow-wrap:break-word;
}
.checkout-server-error.show { display:block; }
#btnSubmitOrder { min-height:48px; display:flex; align-items:center; justify-content:center; gap:7px; cursor:pointer; }
#btnSubmitOrder:disabled { opacity:.68; cursor:not-allowed; }
.receipt-next-step {
    margin-top:16px;
    padding:14px;
    border:1px solid #FFD8C4;
    border-radius:var(--radius-lg);
    background:linear-gradient(135deg,var(--primary-soft),#fff);
    overflow-wrap:break-word;
}
.receipt-next-step-status { display:flex; align-items:flex-start; gap:10px; }
.receipt-next-step-icon { width:36px; height:36px; flex:0 0 36px; display:grid; place-items:center; border-radius:11px; background:var(--primary); color:#fff; font-size:18px; }
.receipt-next-step h4 { margin:1px 0 4px; font-size:13px; font-weight:900; }
.receipt-next-step p { margin:0; color:var(--text-secondary); font-size:11px; line-height:1.45; }
.receipt-next-step-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:12px; }
.receipt-next-step-actions button,.receipt-next-step-actions a { min-height:40px; border-radius:11px; display:flex; align-items:center; justify-content:center; gap:6px; font-size:11px; font-weight:850; text-decoration:none; cursor:pointer; }
.receipt-next-step-actions button { border:0; background:var(--primary); color:#fff; }
.receipt-next-step-actions a { border:1px solid var(--separator); background:#fff; color:var(--text); }
@media(max-width:360px) {
    .cart-order-type-button { font-size:9px; }
    .receipt-next-step-actions { grid-template-columns:1fr; }
}
