/* FrydAir — Cart styles */

/* Cart icon in header */
.cart-icon{display:inline-flex;align-items:center;gap:6px;color:var(--text);text-decoration:none;font-size:.9rem;font-weight:700;position:relative}
.cart-icon:hover{text-decoration:none;opacity:.8}
.cart-icon svg{display:block}
.cart-count{background:var(--btn);color:var(--btn-text);border-radius:50%;min-width:18px;height:18px;font-size:.7rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}

/* ATC controls on product pages */
.qty-row{display:flex;align-items:center;gap:14px;margin:18px 0 12px}
.qty-label{font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}
.qty-ctrl{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.qty-btn{width:36px;height:38px;background:#fff;border:0;border-right:1px solid var(--line);cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center}
.qty-btn:last-child{border-right:0;border-left:1px solid var(--line)}
.qty-btn:hover{background:var(--bg2)}
.qty-input{width:46px;height:38px;border:0;text-align:center;font-family:inherit;font-size:.95rem;-moz-appearance:textfield}
.qty-input::-webkit-inner-spin-button,.qty-input::-webkit-outer-spin-button{-webkit-appearance:none}

.btn-atc{width:100%;text-align:center;display:block;margin-bottom:12px}

.atc-msg{border-radius:var(--radius);padding:11px 14px;font-size:.9rem;margin:10px 0}
.atc-msg-success{background:#e7f6ec;border:1px solid #b6e0c2;color:#1c6b35}
.atc-msg-success a{color:#1c6b35;font-weight:700}
.atc-msg-error{background:#fdeaec;border:1px solid #f2c2c8;color:#a01427}

.opt-error{outline:2px solid var(--sale)!important;border-radius:var(--radius)}

/* Cart page layout */
.cart-layout{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start}

/* Cart table */
.cart-table-wrap{overflow-x:auto}
.cart-table{width:100%;border-collapse:collapse}
.cart-table th,.cart-table td{padding:14px 12px;border-bottom:1px solid var(--line);font-size:.92rem;text-align:left;vertical-align:middle}
.cart-table th{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:2px solid var(--line)}
.ci-price,.ci-total{white-space:nowrap}
.ci-qty{white-space:nowrap}
.ci-remove{width:40px;text-align:center}
.ci-variant{color:var(--muted);font-size:.85rem}
.remove-btn{background:none;border:0;cursor:pointer;font-size:1.4rem;color:var(--muted);line-height:1;padding:0 4px}
.remove-btn:hover{color:var(--sale)}

/* Summary sidebar */
.cart-summary{background:var(--bg2);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.cart-summary-title{font-size:1.2rem;margin:0 0 18px}
.summary-table{width:100%;border-collapse:collapse;margin-bottom:20px}
.summary-table td{padding:8px 0;font-size:.95rem;border-bottom:1px solid var(--line)}
.summary-table td:last-child{text-align:right}
.summary-table tr:last-child td{border-bottom:0}
.summary-total-row td{padding-top:14px;font-size:1.05rem}
.discount-val{color:#1c6b35;font-weight:700}

/* Voucher */
.voucher-label{display:block;font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}
.voucher-fields{display:flex;gap:8px}
.voucher-input{flex:1;border:1px solid var(--line);padding:9px 11px;border-radius:var(--radius);font-family:inherit;font-size:.9rem;text-transform:uppercase}
.voucher-input:focus{outline:none;border-color:var(--text)}
.voucher-msg{font-size:.85rem;margin:8px 0 0;min-height:1.2em}
.voucher-ok{color:#1c6b35}
.voucher-err{color:var(--sale)}

/* Success / cancel pages */
.success-box{text-align:center;max-width:480px;margin:0 auto}
.success-icon{width:72px;height:72px;border-radius:50%;background:#e7f6ec;color:#1c6b35;font-size:2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 28px;font-weight:700}
.cancel-icon{background:#fdeaec;color:var(--sale)}

/* Responsive */
@media(max-width:900px){
  .cart-layout{grid-template-columns:1fr}
  .cart-summary{order:-1}
}
@media(max-width:540px){
  .cart-table .ci-price{display:none}
  .cart-table th:nth-child(2){display:none}
}
