@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root {
  --red:#e11d48; --red-d:#be123c;
  --ink:#0f172a; --ink2:#475569; --ink3:#94a3b8;
  --bg:#f8fafc; --card:#fff; --line:#e2e8f0; --line2:#f1f5f9;
  --f:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}

html,body { font-family:var(--f)!important; background:var(--bg)!important; -webkit-font-smoothing:antialiased; }

/* Layout */
.uk-section,.tm-main,.uk-container { max-width:640px!important; margin:0 auto!important; padding:16px 14px 80px!important; background:transparent!important; }
.uk-article { background:transparent!important; }

/* App page header */
.soe-page-header { display:flex; align-items:center; gap:14px; padding:8px 0 18px; }
.soe-page-header .soe-back { width:38px; height:38px; border-radius:50%; background:var(--card); border:1px solid var(--line); display:flex; align-items:center; justify-content:center; color:var(--ink2); text-decoration:none; font-size:18px; flex-shrink:0; transition:all .15s; }
.soe-page-header .soe-back:hover { background:var(--line2); color:var(--ink); }
.soe-page-header h1 { font-size:24px; font-weight:900; letter-spacing:-.05em; color:var(--ink); margin:0; }

/* Cart form wrapper */
.woocommerce-cart-form { background:var(--card); border:1px solid var(--line); border-radius:18px; overflow:hidden; margin-bottom:16px!important; }
.woocommerce-cart-form table { width:100%!important; border-collapse:collapse!important; }
.woocommerce-cart-form thead { display:none!important; }

/* ── Cart item: full flex row ── */
.woocommerce-cart-form .cart_item { display:flex!important; align-items:flex-start!important; gap:12px!important; padding:14px!important; border-bottom:1px solid var(--line2)!important; }
.woocommerce-cart-form .cart_item:last-child { border-bottom:none!important; }
.woocommerce-cart-form .cart_item td { padding:0!important; border:none!important; vertical-align:top!important; }

/* Thumbnail */
.woocommerce-cart-form .product-thumbnail { width:68px!important; flex-shrink:0!important; }
.woocommerce-cart-form .product-thumbnail img { width:64px!important; height:64px!important; border-radius:12px!important; object-fit:cover!important; display:block!important; }
.woocommerce-cart-form .product-thumbnail a { pointer-events:none!important; cursor:default!important; }

/* Name + modifiers - takes remaining space */
.woocommerce-cart-form .product-name { flex:1!important; min-width:0!important; padding:0!important; }
.woocommerce-cart-form .product-name>a { font-size:15px!important; font-weight:700!important; color:var(--ink)!important; text-decoration:none!important; display:block!important; margin-bottom:4px!important; pointer-events:none!important; cursor:default!important; }

/* Modifier/variation display */
.woocommerce-cart-form .variation,.woocommerce-cart-form .wc-item-meta { font-size:12px!important; color:var(--ink3)!important; margin:3px 0 0!important; list-style:none!important; padding:0!important; }
.woocommerce-cart-form .wc-item-meta { margin-top:4px!important; }
.woocommerce-cart-form .wc-item-meta li { margin-bottom:2px!important; line-height:1.4!important; }
.woocommerce-cart-form .wc-item-meta strong,.woocommerce-cart-form .variation dt { color:var(--ink2)!important; font-weight:600!important; }
.woocommerce-cart-form .variation dd { margin:0!important; display:inline!important; }

/* Right column: qty + price stacked vertically */
.woocommerce-cart-form .product-quantity,.woocommerce-cart-form .product-subtotal { flex-shrink:0!important; padding:0!important; }
.woocommerce-cart-form .product-quantity { width:auto!important; }
.woocommerce-cart-form input[type="number"] { width:52px!important; text-align:center!important; padding:7px 6px!important; border:1px solid var(--line)!important; border-radius:8px!important; font:600 14px var(--f)!important; background:var(--bg)!important; color:var(--ink)!important; -moz-appearance:textfield!important; display:block!important; }
.woocommerce-cart-form input[type="number"]::-webkit-outer-spin-button,.woocommerce-cart-form input[type="number"]::-webkit-inner-spin-button { -webkit-appearance:none!important; }

/* Price always visible */
.woocommerce-cart-form .product-subtotal { font-size:15px!important; font-weight:800!important; color:var(--ink)!important; white-space:nowrap!important; text-align:right!important; min-width:64px!important; padding-top:4px!important; }

/* Remove button */
.woocommerce-cart-form .product-remove { flex-shrink:0!important; width:30px!important; padding:0!important; }
.woocommerce-cart-form .product-remove a { display:flex!important; align-items:center!important; justify-content:center!important; width:30px!important; height:30px!important; border-radius:50%!important; background:var(--line2)!important; color:var(--ink3)!important; font-size:16px!important; text-decoration:none!important; font-weight:700!important; transition:all .15s!important; }
.woocommerce-cart-form .product-remove a:hover { background:#fee2e2!important; color:var(--red)!important; }

/* Actions bar */
.woocommerce-cart-form .actions { padding:12px 14px!important; background:var(--line2)!important; display:flex!important; align-items:center!important; justify-content:flex-start!important; gap:8px!important; flex-wrap:wrap!important; }
.woocommerce-cart-form .actions .coupon { display:none!important; }
.woocommerce-cart-form .actions [name="update_cart"] { display:none!important; }
.soe-continue-link { display:inline-flex!important; align-items:center!important; gap:6px!important; color:var(--red)!important; text-decoration:none!important; font-size:14px!important; font-weight:700!important; padding:9px 14px!important; border-radius:10px!important; border:1.5px solid rgba(225,29,72,.2)!important; background:var(--card)!important; white-space:nowrap!important; transition:all .15s!important; }
.soe-continue-link:hover { background:#fff1f2!important; }

/* Totals */
.cart_totals { background:var(--card)!important; border:1px solid var(--line)!important; border-radius:18px!important; padding:18px!important; margin-bottom:16px!important; }
.cart_totals h2 { font-size:15px!important; font-weight:700!important; color:var(--ink)!important; margin-bottom:14px!important; padding-bottom:12px!important; border-bottom:1px solid var(--line2)!important; }
.cart_totals table { width:100%!important; border-collapse:collapse!important; }
.cart_totals table td,.cart_totals table th { padding:9px 0!important; border-bottom:1px solid var(--line2)!important; font-size:14px!important; color:var(--ink2)!important; }
.cart_totals .order-total td,.cart_totals .order-total th { font-size:20px!important; font-weight:900!important; color:var(--ink)!important; border-bottom:none!important; padding-top:14px!important; }
.wc-proceed-to-checkout { padding:0!important; }
.wc-proceed-to-checkout .button,.checkout-button { display:block!important; width:100%!important; padding:16px 20px!important; margin-top:14px!important; background:var(--red)!important; color:#fff!important; border:none!important; border-radius:14px!important; font-family:var(--f)!important; font-size:16px!important; font-weight:800!important; letter-spacing:-.03em!important; text-align:center!important; text-decoration:none!important; cursor:pointer!important; box-shadow:0 4px 16px rgba(225,29,72,.25)!important; }

/* Checkout */
.woocommerce-billing-fields,.woocommerce-additional-fields { background:var(--card); border:1px solid var(--line); border-radius:18px; padding:18px; margin-bottom:14px; }
.woocommerce-billing-fields h3,.woocommerce-additional-fields h3 { font-size:15px!important; font-weight:700!important; color:var(--ink)!important; margin-bottom:16px!important; }
.woocommerce-input-wrapper { width:100%; }
.woocommerce-input-wrapper input,.woocommerce-input-wrapper select,.woocommerce-input-wrapper textarea { width:100%!important; padding:12px 14px!important; border:1px solid var(--line)!important; border-radius:10px!important; font-family:var(--f)!important; font-size:14px!important; color:var(--ink)!important; background:var(--bg)!important; }
.woocommerce-input-wrapper input:focus,.woocommerce-input-wrapper select:focus { border-color:var(--red)!important; box-shadow:0 0 0 3px rgba(225,29,72,.1)!important; outline:none!important; }
.form-row label { font-size:12.5px!important; font-weight:600!important; color:var(--ink2)!important; display:block!important; margin-bottom:5px!important; }
#payment { background:var(--card)!important; border:1px solid var(--line)!important; border-radius:18px!important; padding:18px!important; margin-bottom:14px!important; }
#payment ul.payment_methods { border-bottom:1px solid var(--line2)!important; padding:0 0 14px!important; margin:0 0 14px!important; list-style:none!important; }
#payment ul.payment_methods li label { color:var(--ink)!important; font-size:14px!important; font-weight:600!important; }
#place_order { display:block!important; width:100%!important; padding:16px!important; background:var(--red)!important; color:#fff!important; border:none!important; border-radius:14px!important; font-family:var(--f)!important; font-size:16px!important; font-weight:800!important; cursor:pointer!important; box-shadow:0 4px 16px rgba(225,29,72,.25)!important; }
.woocommerce-cart .return-to-shop { display:none!important; }
.tm-footer,.tm-footer-bar { display:none!important; }

/* Mobile */
@media (max-width:480px) {
  .uk-section,.tm-main,.uk-container { padding:12px 10px 80px!important; }
  .woocommerce-cart-form .cart_item { padding:12px!important; gap:10px!important; }
  .woocommerce-cart-form .product-thumbnail img { width:56px!important; height:56px!important; }
  .woocommerce-cart-form .product-name>a { font-size:14px!important; }
}

/* Compact modifier display - all on one line */
.woocommerce-cart-form .variation,
.woocommerce-cart-form .wc-item-meta {
  display: block !important;
  margin-top: 3px !important;
}
.woocommerce-cart-form .variation dl,
.woocommerce-cart-form .wc-item-meta {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 11.5px !important;
  color: var(--ink3) !important;
  line-height: 1.4 !important;
}
.woocommerce-cart-form .variation dt,
.woocommerce-cart-form .variation dd {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 11.5px !important;
}
.woocommerce-cart-form .variation dt::after { content: ' '; }
.woocommerce-cart-form .variation dd::after { content: ' · '; }
.woocommerce-cart-form .variation dd:last-child::after { content: ''; }
.woocommerce-cart-form .variation dd p { display: inline !important; margin: 0 !important; }
.woocommerce-cart-form .wc-item-meta li { display: inline !important; margin: 0 !important; }
.woocommerce-cart-form .wc-item-meta li::after { content: ' · '; }
.woocommerce-cart-form .wc-item-meta li:last-child::after { content: ''; }
.woocommerce-cart-form .wc-item-meta strong { font-weight: 600 !important; }
