/* LootMove storefront theme -- consolidated from .mockup/lootmove-*.html
   (rustic wooden-crate aesthetic: kraft-paper tags, nail heads, jagged edges).
   Shared across every public/*.php page. Admin keeps its own plainer look
   per PROJECT-BRIEF.md §6 -- this file is customer-facing only. */

:root{
  --bg-dock:#181410;
  --bg-dock-2:#1f1a14;
  --wood:#a06a3c;
  --wood-light:#c08a52;
  --wood-dark:#5e3d22;
  --wood-shadow:#331f10;
  --kraft:#e3cf9f;
  --kraft-dark:#c9b183;
  --stamp:#b8391f;
  --stamp-dark:#8f2a15;
  --mustard:#dda43f;
  --cream:#f3ead8;
  --cream-dim:#cdbfa4;
  --ink:#211a12;
  --green-tag:#5c7350;
  --rust-hi:#e3a875;
  --rust-mid:#a85a2c;
  --rust-dark:#4a2712;
}

/* ---------- SHARED CRATE PRIMITIVES ---------- */
.nail{
  position:absolute; width:10px; height:9px; border-radius:48% 52% 45% 55%;
  background:radial-gradient(circle at 32% 28%, var(--rust-hi), var(--rust-mid) 55%, var(--rust-dark) 92%);
  box-shadow:0 1px 2px rgba(0,0,0,0.7), inset -1px -1px 1px rgba(0,0,0,0.4);
  z-index:3;
}
.splinter{ position:absolute; width:0; height:0; pointer-events:none; border-style:solid; opacity:0.9;}
.jagged{
  clip-path: polygon(0% 3%, 2% 0%, 14% 1%, 31% 0%, 48% 1.5%, 64% 0%, 82% 1%, 96% 0%, 100% 3%,
                      99% 22%, 100% 41%, 99% 58%, 100% 76%, 99% 97%, 96% 100%, 79% 99%, 61% 100%,
                      44% 99%, 27% 100%, 11% 99%, 3% 100%, 0% 97%, 1% 79%, 0% 60%, 1% 42%, 0% 24%);
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg-dock);
  color:var(--cream);
  font-family:'Inter', sans-serif;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:inherit; text-decoration:none;}
ul{list-style:none;}
img{max-width:100%; display:block;}

.display{font-family:'Oswald', sans-serif; font-weight:700; letter-spacing:0.5px; text-transform:uppercase;}
.mono{font-family:'JetBrains Mono', monospace;}

.wrap{max-width:1180px; margin:0 auto; padding:0 32px;}
main{ padding:32px; max-width:1180px; margin:0 auto; position:relative; z-index:1; }

/* ---------- HEADER (matches .mockup/lootmove-shared.js) ---------- */
header.lm-header{ background:rgba(24,20,16,0.95); border-bottom:3px solid var(--wood-dark); position:sticky; top:0; z-index:50; backdrop-filter:blur(6px);}
header.lm-header .nav{ display:flex; align-items:center; justify-content:space-between; padding:16px 32px; max-width:1180px; margin:0 auto; flex-wrap:wrap; gap:12px;}
header.lm-header .logo{ display:flex; align-items:center; gap:10px; font-size:24px; font-family:'Oswald',sans-serif; font-weight:700; letter-spacing:0.5px; text-transform:uppercase; color:var(--cream);}
header.lm-header .logo .stamp-box{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border:3px solid var(--stamp); color:var(--stamp); transform:rotate(-6deg); font-family:'Oswald'; font-weight:700; font-size:18px;}
header.lm-header .logo .rest{ color:var(--mustard);}
header.lm-header .navlinks{ display:flex; align-items:center; gap:22px; font-weight:600; font-size:14px; letter-spacing:0.3px; flex-wrap:wrap;}
header.lm-header .navlinks a{ color:var(--cream-dim); transition:color .15s;}
header.lm-header .navlinks a:hover{ color:var(--mustard);}
header.lm-header .cart-count{ background:var(--stamp); color:var(--cream); font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; padding:1px 6px; border-radius:2px; margin-left:4px;}

/* ---------- HERO ---------- */
.hero{ padding:44px 0 40px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:center; }
.hero .eyebrow{
  display:inline-block; color:var(--stamp); background:rgba(184,57,31,0.12); border:1.5px dashed var(--stamp);
  padding:5px 12px; font-family:'JetBrains Mono'; font-size:12px; font-weight:700; letter-spacing:1.5px;
  margin-bottom:20px; transform:rotate(-1.5deg);
}
.hero h1{ font-size:clamp(34px, 5vw, 56px); line-height:1.02; margin-bottom:16px; }
.hero h1 em{ font-style:normal; color:var(--mustard); }
.hero p{ font-size:16px; line-height:1.6; color:var(--cream-dim); max-width:460px; margin-bottom:26px; }
.hero-ctas{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; }

.crate-stage{ position:relative; height:440px; display:flex; align-items:center; justify-content:center; }
.crate{
  position:relative; width:320px; height:300px; transform:rotate(-1.4deg);
  background:linear-gradient(135deg, var(--wood-light), var(--wood) 55%, var(--wood-dark));
  border-radius:4px; box-shadow:0 40px 60px -20px rgba(0,0,0,0.6), inset 0 0 0 6px var(--wood-dark);
}
.crate::before, .crate::after{
  content:""; position:absolute; top:0; bottom:0; width:30px;
  background:linear-gradient(180deg, var(--wood-dark), var(--wood-shadow));
  box-shadow:inset 0 0 0 3px rgba(0,0,0,0.3);
}
.crate::before{ left:24px;} .crate::after{ right:24px;}
.crate .slat{ position:absolute; left:0; right:0; height:50px; background:linear-gradient(180deg, var(--wood-light), var(--wood)); border-top:3px solid var(--wood-dark); border-bottom:3px solid var(--wood-shadow);}
.crate .slat:nth-child(1){top:12px;} .crate .slat:nth-child(2){top:118px;} .crate .slat:nth-child(3){top:224px;}
.crate .diag{ position:absolute; left:40px; right:40px; top:18px; bottom:18px; background:linear-gradient(115deg, transparent 46%, rgba(0,0,0,0.18) 48%, rgba(0,0,0,0.18) 52%, transparent 54%);}
.stencil-mark{ position:absolute; top:46px; left:0; right:0; text-align:center; font-family:'Oswald'; font-weight:600; color:rgba(0,0,0,0.28); font-size:13px; letter-spacing:5px;}
.stencil-mark.two{ top:150px;}
.fragile-stamp{
  position:absolute; bottom:22px; right:48px; border:3px solid var(--stamp); color:var(--stamp);
  padding:4px 10px; font-family:'Oswald'; font-weight:700; font-size:11px; letter-spacing:2px; transform:rotate(-8deg);
  opacity:0.85; background:rgba(227,207,159,0.06);
}

.hero-tag{
  position:absolute; background:var(--kraft); color:var(--ink); width:140px; padding:13px 13px 11px;
  border-radius:2px 7px 3px 8px; box-shadow:0 14px 22px -8px rgba(0,0,0,0.55); z-index:5;
}
.hero-tag::before{
  content:""; position:absolute; top:6px; left:50%; transform:translateX(-50%);
  width:11px; height:10px; border-radius:47% 53% 44% 56%;
  background:radial-gradient(circle at 32% 28%, var(--rust-hi), var(--rust-mid) 55%, var(--rust-dark) 92%);
  box-shadow:0 0 0 2px var(--kraft-dark), 0 1px 2px rgba(0,0,0,0.5);
}
.hero-tag .thumb{ width:100%; aspect-ratio:16/10; border-radius:2px; margin-bottom:2px; background:linear-gradient(135deg, #cbb98a, #ab9663); object-fit:cover; display:block;}
.hero-tag .twine{ position:absolute; top:-36px; left:50%; width:2px; height:38px; background:var(--wood-dark); transform-origin:top center;}
.hero-tag .cat{ font-family:'JetBrains Mono'; font-size:9px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--stamp); display:block; margin-top:7px;}
.hero-tag .name{ font-weight:700; font-size:13px; margin-top:2px; line-height:1.25;}
.hero-tag .price{ font-family:'JetBrains Mono'; font-weight:700; font-size:16px; margin-top:5px; color:var(--stamp-dark);}
.hero-tag .price s{ color:#8a7a5c; font-weight:400; font-size:11px; margin-right:5px;}
.hero-tag-1{ top:-38px; left:-30px; transform:rotate(-11deg); } .hero-tag-1 .twine{ transform:rotate(6deg);}
.hero-tag-2{ top:-14px; right:-40px; transform:rotate(9deg); } .hero-tag-2 .twine{ transform:rotate(-8deg);}
.hero-tag-3{ bottom:-26px; left:-50px; transform:rotate(7deg); } .hero-tag-3 .twine{ display:none;}
.hero-tag-4{ bottom:-44px; right:-20px; transform:rotate(-6deg); } .hero-tag-4 .twine{ display:none;}

/* ---------- HOW IT WORKS STRIP ---------- */
.strip{ background:var(--bg-dock-2); border-top:3px solid var(--wood-dark); border-bottom:3px solid var(--wood-dark); padding:34px 0; margin:0 -32px 40px; }
.strip .wrap{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px; padding:0 32px;}
.strip .step{ display:flex; gap:12px; align-items:flex-start;}
.strip .step .mk{
  font-family:'Oswald'; font-weight:700; font-size:16px; color:var(--cream); background:linear-gradient(150deg, var(--wood), var(--wood-dark));
  border-radius:35% 65% 60% 40%/55% 45% 55% 45%; width:36px; height:36px; flex:none; position:relative;
  display:flex; align-items:center; justify-content:center; box-shadow:inset 0 0 0 2px var(--wood-shadow), 0 4px 8px rgba(0,0,0,0.4);
}
.strip .step:nth-child(1) .mk{ transform:rotate(-6deg);} .strip .step:nth-child(2) .mk{ transform:rotate(4deg);}
.strip .step:nth-child(3) .mk{ transform:rotate(-3deg);} .strip .step:nth-child(4) .mk{ transform:rotate(7deg);}
.strip .step h4{ font-size:14px; margin-bottom:4px;}
.strip .step p{ font-size:12.5px; color:var(--cream-dim); line-height:1.5;}

/* ---------- STAMP BANNER (genuine / NWT / AS-IS) ---------- */
.stamp-banner{ text-align:center; padding:16px 20px 26px; margin-top:-8px; }
.stamp-banner-mark{
  display:inline-block; font-family:'JetBrains Mono'; font-size:12px; font-weight:700; letter-spacing:1px;
  text-transform:uppercase; color:var(--stamp); border:1.5px dashed var(--stamp); padding:5px 12px; border-radius:2px;
  background:rgba(184,57,31,0.08); transform:rotate(-1deg); margin:4px 0;
}
.stamp-banner-divider{ color:var(--wood); margin:0 6px; font-size:16px; }
.stamp-banner-note{ margin-top:10px; font-size:12.5px; color:var(--cream-dim); }

/* ---------- MYSTERY BOX TEASER ---------- */
.mystery-teaser{ margin:56px 0 8px; text-align:center; }
.mystery-teaser h2{ font-size:26px; margin-bottom:6px; }
.mystery-teaser-sub{ color:var(--cream-dim); margin-bottom:26px; font-size:14px; }
.mystery-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; text-align:left; }
.mystery-card{
  position:relative; background:linear-gradient(165deg, var(--wood-dark), var(--wood-shadow)); border-radius:4px 10px 4px 10px;
  padding:26px 24px 22px; box-shadow:0 16px 30px -18px rgba(0,0,0,0.6);
}
.mystery-card h3{ font-family:'Oswald'; font-weight:700; text-transform:uppercase; font-size:18px; margin:10px 0 10px; letter-spacing:1.2px; }
.mystery-card p{ color:var(--cream-dim); font-size:13.5px; line-height:1.6; margin-bottom:18px; }
.mystery-card .btn-ghost[disabled]{ opacity:0.55; cursor:not-allowed; }
.soon-ribbon{
  display:inline-block; background:var(--mustard); color:var(--ink); font-family:'JetBrains Mono'; font-weight:700;
  font-size:10.5px; letter-spacing:1px; text-transform:uppercase; padding:4px 10px; border-radius:2px; transform:rotate(-2deg);
  box-shadow:0 3px 0 var(--stamp-dark);
}

/* ---------- BUTTONS ---------- */
.btn-primary{
  background:var(--mustard); color:var(--ink); font-weight:800; font-size:13.5px; letter-spacing:0.3px;
  padding:10px 18px; border-radius:2px; border:none; cursor:pointer; text-transform:uppercase;
  box-shadow:0 3px 0 var(--stamp-dark); font-family:inherit; display:inline-block;
}
.btn-primary:hover{ transform:translateY(1px); box-shadow:0 2px 0 var(--stamp-dark);}
.btn-ghost{
  border:2px solid var(--wood); color:var(--cream); background:none; padding:9px 18px; font-weight:700;
  font-size:13.5px; text-transform:uppercase; letter-spacing:0.3px; border-radius:2px; cursor:pointer; font-family:inherit; display:inline-block;
}

/* ---------- FORMS (inputs styled as strips of masking tape) ---------- */
.field{ margin-bottom:18px; }
.field label{ display:block; font-size:13px; font-weight:600; color:#5c4a30; margin-bottom:6px; }

.field input:not([type="checkbox"]):not([type="radio"]),
.field select,
.field textarea,
.tape-input{
  width:100%;
  background:
    repeating-linear-gradient(98deg, rgba(255,255,255,0.38) 0 2px, transparent 2px 7px),
    linear-gradient(178deg, #f5edd4, #e8d9ac);
  border:none; color:var(--ink);
  padding:10px 13px; font-size:14px; border-radius:2px; font-family:inherit;
  box-shadow:0 3px 7px -3px rgba(0,0,0,0.45), inset 0 -2px 0 rgba(94,61,34,0.22);
}
/* alternating tilt so it reads as hand-torn strips of tape, not a perfect grid */
.field:nth-of-type(odd) input:not([type="checkbox"]):not([type="radio"]),
.field:nth-of-type(odd) select,
.field:nth-of-type(odd) textarea{ transform:rotate(-0.4deg); }
.field:nth-of-type(even) input:not([type="checkbox"]):not([type="radio"]),
.field:nth-of-type(even) select,
.field:nth-of-type(even) textarea{ transform:rotate(0.4deg); }

.field input::placeholder, .field textarea::placeholder, .tape-input::placeholder{ color:#8a7a5c; }
.field input:focus, .field select:focus, .field textarea:focus, .tape-input:focus{
  outline:none; transform:rotate(0deg); box-shadow:0 0 0 2px var(--mustard), 0 3px 7px -3px rgba(0,0,0,0.45);
}
.field-error{ color:#e08a6a; font-size:13px; margin-top:4px; }

.panel{
  background:var(--kraft); color:var(--ink); border-radius:3px 9px 4px 8px; padding:24px;
  box-shadow:0 10px 24px -8px rgba(0,0,0,0.5); margin-bottom:28px;
}
.panel table.lm-table{ color:var(--ink); }
.panel table.lm-table th{ color:#6b5d3f; border-bottom:2px solid var(--kraft-dark); }
.panel table.lm-table td{ border-bottom:1px solid var(--kraft-dark); }

.auth-card{
  background:var(--kraft); color:var(--ink); border-radius:3px 9px 4px 8px; padding:32px; max-width:420px;
  margin:40px auto; box-shadow:0 10px 24px -8px rgba(0,0,0,0.5);
}
.auth-card h1{ font-family:'Oswald'; font-weight:700; text-transform:uppercase; font-size:26px; letter-spacing:1.2px; margin-bottom:18px; }
.auth-card .btn-primary{ width:100%; text-align:center; margin-top:6px; }
.auth-card a{ color:var(--stamp); font-weight:600; }
.notice-success{ background:rgba(92,115,80,0.15); border:1px solid var(--green-tag); color:#c3e0b5; padding:10px 14px; border-radius:3px; margin-bottom:16px; }
.notice-error{ background:rgba(184,57,31,0.12); border:1px solid var(--stamp); color:#f0b8a8; padding:10px 14px; border-radius:3px; margin-bottom:16px; }

/* ---------- CHIPS / FILTERS ---------- */
.chips{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:26px;}
.chip{
  padding:8px 16px; border-radius:3px 8px 4px 9px; font-size:13px; font-weight:600;
  border:1.5px solid var(--wood); color:var(--cream-dim); transition:all .15s;
}
.chip:nth-child(odd){ transform:rotate(-1.2deg);}
.chip:nth-child(even){ transform:rotate(1.4deg);}
.chip.active{ background:var(--mustard); color:var(--ink); border-color:var(--mustard); transform:rotate(0deg);}

/* ---------- PRODUCT GRID / CARD ---------- */
.product-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:26px; }
.card{
  background:var(--kraft); color:var(--ink); border-radius:3px 9px 4px 8px; padding:16px 16px 18px;
  position:relative; box-shadow:0 10px 18px -8px rgba(0,0,0,0.5); transition:transform .18s ease;
}
.card:nth-child(4n){ border-radius:8px 3px 9px 4px;}
.card:nth-child(3n+1){ transform:rotate(-1.4deg);}
.card:nth-child(3n+2){ transform:rotate(0.8deg);}
.card:nth-child(3n+3){ transform:rotate(-0.5deg);}
.card:hover{ transform:rotate(0deg) translateY(-4px); }
.card::before{
  content:""; position:absolute; top:-7px; left:50%; transform:translateX(-50%) rotate(8deg);
  width:11px; height:10px; border-radius:47% 53% 44% 56%;
  background:radial-gradient(circle at 32% 28%, var(--rust-hi), var(--rust-mid) 55%, var(--rust-dark) 92%);
  box-shadow:0 1px 2px rgba(0,0,0,0.6);
}
.card .cond{
  position:absolute; top:14px; left:14px; z-index:2;
  font-family:'JetBrains Mono'; font-size:9.5px; font-weight:700; padding:2px 6px; border-radius:2px; letter-spacing:0.5px;
}
.card .cond.new{ background:#3a4d31; color:#d9e8cf;}
.card .cond.used{ background:#6b4c22; color:#f0dcb8;}
.card .qty-flag{
  position:absolute; top:14px; right:14px; z-index:2;
  background:var(--green-tag); color:#f3f7ef; font-family:'JetBrains Mono'; font-size:10px; font-weight:700;
  padding:3px 7px; border-radius:2px;
}
.card .thumb{
  width:100%; aspect-ratio:1; border-radius:2px; margin-bottom:12px; object-fit:cover;
  background:linear-gradient(135deg, #cbb98a, #ab9663);
}
.card .thumb-placeholder{
  width:100%; aspect-ratio:1; border-radius:2px; margin-bottom:12px; object-fit:cover;
  background:linear-gradient(135deg, #cbb98a, #ab9663); display:flex; align-items:center; justify-content:center;
  color:rgba(33,26,18,0.4); font-family:'Oswald'; font-weight:700; font-size:12px; letter-spacing:1px;
}
.card h3{ font-size:15px; line-height:1.3; margin-bottom:6px; min-height:38px;}
.card .variant{ font-size:11.5px; color:#6b5d3f; margin-bottom:8px; }
.card .price-row{ display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
.card .price{ font-family:'JetBrains Mono'; font-weight:700; font-size:19px;}
.card .compare{ font-size:11px; color:#8a7a5c; text-decoration:line-through;}
.card .save{ font-size:11px; color:var(--stamp-dark); font-weight:700; }
.card .add-btn{
  width:100%; margin-top:12px; background:var(--ink); color:var(--cream); border:none; padding:9px;
  font-weight:700; font-size:12.5px; text-transform:uppercase; letter-spacing:0.5px; border-radius:2px; cursor:pointer; font-family:inherit;
}
.card .add-btn:hover{ background:var(--stamp);}

/* ---------- ITEM DETAIL ---------- */
.detail{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:start; }
.detail .gallery img{ width:100%; border-radius:3px; margin-bottom:10px; }
.detail .gallery .thumb-placeholder{ width:100%; aspect-ratio:1; border-radius:3px; object-fit:cover; background:linear-gradient(135deg, #cbb98a, #ab9663); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,0.5); }
.detail h1{ font-size:30px; margin-bottom:8px; }
.detail .price{ font-family:'JetBrains Mono'; font-weight:700; font-size:28px; color:var(--mustard); }
.detail .compare{ font-size:15px; color:var(--cream-dim); text-decoration:line-through; margin-left:8px; }
.meta-pill{ display:inline-block; font-size:11px; font-weight:700; padding:3px 9px; border:1px solid var(--wood); border-radius:3px; color:var(--cream-dim); margin:0 8px 8px 0; text-transform:uppercase; }

.cart-tags{ margin-top:4px; }
.cart-tags .meta-pill{ font-size:9.5px; padding:2px 7px; margin:0 6px 4px 0; }

.variant-picker{ display:flex; gap:16px; flex-wrap:wrap; margin:4px 0 18px; }
.variant-field{ margin-bottom:0; width:150px; }
.variant-field label{ color:var(--cream-dim); }

/* crate frame around the item-detail photo */
.crate-frame{
  position:relative; padding:18px; margin-bottom:14px; border-radius:7px; transform:rotate(-0.8deg);
  background:linear-gradient(135deg, var(--wood), var(--wood-dark) 60%, var(--wood-shadow));
  box-shadow:inset 0 0 0 4px var(--wood-shadow), 0 26px 44px -22px rgba(0,0,0,0.65);
}
.crate-frame::before{
  content:""; position:absolute; inset:11px; pointer-events:none; border-radius:4px;
  background:linear-gradient(115deg, transparent 47%, rgba(0,0,0,0.16) 48.5%, rgba(0,0,0,0.16) 51.5%, transparent 53%);
}
.crate-frame img{ border-radius:4px; margin-bottom:0; position:relative; }
.frame-stamp{
  position:absolute; bottom:10px; right:14px; z-index:3; border:2.5px solid var(--stamp); color:var(--stamp);
  padding:3px 10px; font-family:'Oswald'; font-weight:700; font-size:11px; letter-spacing:2px; transform:rotate(-7deg);
  background:rgba(227,207,159,0.06);
}
.plank-mark{
  position:absolute; top:12px; left:18px; z-index:3; font-family:'JetBrains Mono'; font-size:10px;
  letter-spacing:2px; color:rgba(255,255,255,0.55); font-weight:700;
}
.cond-flag{
  position:absolute; top:14px; right:14px; z-index:3; background:#3a4d31; color:#d9e8cf;
  font-family:'JetBrains Mono'; font-size:10.5px; font-weight:700; padding:4px 9px; border-radius:3px; letter-spacing:0.5px;
}

/* hanging price tag beside the buy box */
.price-tag{
  background:var(--kraft); color:var(--ink); border-radius:2px 8px 3px 7px; padding:16px 18px 14px;
  margin:26px 0 20px 6px; max-width:340px; transform:rotate(-1.6deg); position:relative;
  box-shadow:0 16px 26px -10px rgba(0,0,0,0.55);
}
.price-tag::before{
  content:""; position:absolute; top:7px; left:20px; width:11px; height:10px; border-radius:47% 53% 44% 56%;
  background:radial-gradient(circle at 32% 28%, var(--rust-hi), var(--rust-mid) 55%, var(--rust-dark) 92%);
  box-shadow:0 0 0 2px var(--kraft-dark), 0 1px 2px rgba(0,0,0,0.5);
}
.price-tag .twine{ position:absolute; top:-28px; left:24px; width:2px; height:30px; background:var(--wood-shadow); transform:rotate(9deg);}
.price-tag .price-now{ font-family:'JetBrains Mono'; font-size:26px; font-weight:700; color:var(--stamp-dark);}
.price-tag .price-was{ font-family:'JetBrains Mono'; font-size:14px; color:#8a7a5c; text-decoration:line-through; margin-left:8px;}
.price-tag .save-tag{ font-family:'JetBrains Mono'; font-size:11px; font-weight:700; background:rgba(184,57,31,0.15); color:var(--stamp); padding:3px 7px; border-radius:3px; margin-left:8px;}
.price-tag .ship-line{ color:#5c4a30; font-size:12.5px; margin-top:8px;}
.price-tag .ship-line b{ color:var(--ink);}

/* dark wood side panel for the buy box */
.info-panel{
  position:relative; background:linear-gradient(165deg, var(--wood-dark), var(--wood-shadow)); border-radius:8px;
  padding:22px 22px 18px; margin-top:4px; transform:rotate(0.6deg);
  box-shadow:inset 0 0 0 3px rgba(0,0,0,0.25), 0 20px 36px -24px rgba(0,0,0,0.6);
}
.info-panel > *{ position:relative; z-index:1; }
.info-panel .btn-primary{ width:100%; text-align:center; }
.info-panel .as-is-note{ margin-top:10px; font-size:11.5px; text-align:center; color:var(--cream-dim); letter-spacing:0.3px; }

/* ---------- CART / TABLE ---------- */
table.lm-table{ width:100%; border-collapse:collapse; margin-bottom:20px; }
table.lm-table th{ text-align:left; font-size:11px; text-transform:uppercase; letter-spacing:0.4px; color:var(--cream-dim); padding:10px; border-bottom:2px solid var(--wood-dark); }
table.lm-table td{ padding:12px 10px; border-bottom:1px solid var(--wood-dark); vertical-align:middle; }
table.lm-table img, table.lm-table .thumb-placeholder{ width:56px; height:56px; object-fit:cover; border-radius:3px; background:linear-gradient(135deg, #cbb98a, #ab9663); }
.summary-box{ background:var(--bg-dock-2); border:1px solid var(--wood-dark); border-radius:4px; padding:20px; max-width:360px; }
.summary-box .row{ display:flex; justify-content:space-between; font-size:14px; padding:6px 0; }
.summary-box .row.total{ font-weight:800; font-size:17px; border-top:1px solid var(--wood-dark); margin-top:8px; padding-top:12px; }
.summary-box .fine{ font-size:11.5px; color:var(--cream-dim); margin-top:4px; }

/* ---------- FAQ PAGE ---------- */
.faq-jump{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:36px; }
.faq-jump a{
  padding:8px 14px; border-radius:3px; border:1.5px solid var(--wood); color:var(--cream-dim);
  font-size:12.5px; font-weight:600; text-transform:uppercase; letter-spacing:0.5px;
}
.faq-jump a:hover{ border-color:var(--mustard); color:var(--mustard); }

.faq-section{ margin-bottom:48px; scroll-margin-top:90px; }
.faq-section h2{ font-size:22px; margin-bottom:18px; padding-bottom:10px; border-bottom:2px solid var(--wood-dark); letter-spacing:1px; }

.faq-item{
  background:var(--kraft); color:var(--ink); border-radius:3px 9px 4px 8px; padding:18px 20px;
  margin-bottom:14px; box-shadow:0 8px 16px -8px rgba(0,0,0,0.5);
}
.faq-item h3{ font-size:15px; margin-bottom:6px; }
.faq-item p{ font-size:13.5px; line-height:1.6; color:#4a3f2a; }
.faq-item a{ color:var(--stamp); font-weight:600; }

/* ---------- FOOTER (matches .mockup/lootmove-shared.js) ---------- */
footer.lm-footer{ position:relative; background:linear-gradient(180deg, var(--wood-dark), #221708 55%, #170f06); padding:56px 32px 26px; color:var(--cream-dim); margin-top:60px; }
footer.lm-footer .f-wrap{ max-width:1180px; margin:0 auto; display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; }
footer.lm-footer h5{ font-family:'Oswald',sans-serif; font-weight:700; font-size:12.5px; color:var(--mustard); letter-spacing:1.5px; text-transform:uppercase; margin-bottom:14px;}
footer.lm-footer ul li{ margin-bottom:9px;}
footer.lm-footer ul a{ color:var(--cream-dim); font-size:13.5px;}
footer.lm-footer ul a:hover{ color:var(--cream);}
footer.lm-footer p.tag{ font-size:13.5px; line-height:1.6; max-width:320px;}
footer.lm-footer .f-logo{ display:flex; align-items:center; gap:10px; font-family:'Oswald',sans-serif; font-weight:700; font-size:20px; letter-spacing:1.2px; text-transform:uppercase; color:var(--cream); margin-bottom:14px;}
footer.lm-footer .f-logo .stamp-box{ display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border:2.5px solid var(--stamp); color:var(--stamp); transform:rotate(-6deg); font-family:'Oswald'; font-weight:700; font-size:16px;}
footer.lm-footer .f-logo .rest{ color:var(--mustard);}
footer.lm-footer .foot-bottom{ max-width:1180px; margin:40px auto 0; padding-top:20px; border-top:1px solid rgba(255,255,255,0.08); display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; color:#8a7c63; font-size:12px;}
footer.lm-footer .secure-badges{ display:flex; gap:14px;}
footer.lm-footer .secure-badges span{ border:1px solid rgba(255,255,255,0.12); padding:4px 9px; border-radius:2px; font-family:'JetBrains Mono',monospace;}

@media (max-width: 900px){
  .product-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mystery-grid{ grid-template-columns:1fr; }
  .detail{ grid-template-columns:1fr; }
  footer.lm-footer .f-wrap{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  header.lm-header .navlinks{ display:none; }
}
