/* 7VEN V6 — Neo + Glass tokens and helpers (SCOPED).
   Import and apply classes SELECTIVELY inside the existing project.
   Do not globally override every button, card, navigation element. */
:root {
  --v6-red: #E42320;
  --v6-ink: #171719;
  --v6-graphite: #2A2C30;
  --v6-stone: #EBE9E5;
  --v6-stone-highlight: #F7F6F3;
  --v6-stone-shadow: #D4D0CA;
  --v6-radius: 22px;
  --v6-radius-pill: 999px;
  --v6-neo-raised:
    10px 12px 24px rgba(69, 67, 65, 0.18),
    -8px -8px 22px rgba(255, 255, 255, 0.94),
    inset 1px 1px 1px rgba(255,255,255,.65),
    inset -1px -1px 0 rgba(90,87,85,.06);
  --v6-neo-inset:
    inset 5px 6px 12px rgba(68, 64, 60, 0.22),
    inset -5px -5px 12px rgba(255,255,255,.95),
    1px 1px 2px rgba(255,255,255,.5);
  --v6-neo-cta:
    0 12px 22px rgba(228,35,32,.24),
    0 5px 10px rgba(83,21,19,.15),
    inset 0 1px 2px rgba(255,255,255,.45),
    inset 0 -2px 2px rgba(95, 10, 10, .12);
}
.v6-neo {
  background: linear-gradient(135deg, var(--v6-stone-highlight), var(--v6-stone));
  border: 1px solid rgba(255,255,255,.82);
  border-radius: var(--v6-radius);
  box-shadow: var(--v6-neo-raised);
  color: var(--v6-ink);
}
.v6-neo--pressable { cursor: pointer; transform: translateY(0); transition: transform .2s ease, box-shadow .22s ease, filter .2s ease; }
.v6-neo--pressable:hover { transform: translateY(-2px); filter: brightness(1.01); }
.v6-neo--pressable:active, .v6-neo--pressable[aria-pressed="true"], .v6-neo--pressed {
  transform: translateY(1px); box-shadow: var(--v6-neo-inset);
  background: linear-gradient(135deg, #E6E3DF, #F2F0EC);
}
.v6-neo-pill { border-radius: var(--v6-radius-pill); }
.v6-cta {
  color: white;
  background: linear-gradient(155deg, #FA413A 0%, var(--v6-red) 56%, #BF1717 100%);
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: var(--v6-radius-pill);
  box-shadow: var(--v6-neo-cta);
  text-shadow: 0 1px 1px rgba(100,10,10,.18);
  cursor:pointer;
  transition: transform .2s ease,box-shadow .2s ease;
}
.v6-cta:hover { transform: translateY(-2px); box-shadow: 0 16px 27px rgba(228,35,32,.28),inset 0 1px 2px rgba(255,255,255,.4); }
.v6-cta:active { transform: translateY(1px); box-shadow: inset 0 4px 7px rgba(86,7,7,.3),0 4px 8px rgba(228,35,32,.2); }
/* A real glass panel needs content/color/texture *behind* it. */
.v6-glass {
  background: linear-gradient(140deg, rgba(255,255,255,.58) 0%,rgba(255,255,255,.28) 65%,rgba(247,244,241,.38) 100%);
  -webkit-backdrop-filter: blur(18px) saturate(145%);
  backdrop-filter: blur(18px) saturate(145%);
  border: 1px solid rgba(255,255,255,.72);
  border-radius: var(--v6-radius);
  box-shadow: 0 14px 32px rgba(28,28,31,.16), 0 2px 9px rgba(28,28,31,.09), inset 1px 1px 0 rgba(255,255,255,.92);
  color: var(--v6-ink);
}
.v6-glass--dark {
  color: white;
  background: linear-gradient(125deg, rgba(31,33,37,.53),rgba(43,44,50,.34));
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 16px 38px rgba(0,0,0,.32), inset 1px 1px 0 rgba(255,255,255,.12);
}
.v6-glass--dark :is(p, small) { color: rgba(255,255,255,.86); }
:where(.v6-neo--pressable,.v6-cta,.v6-glass [role="button"]):focus-visible {
  outline: 3px solid var(--v6-red); outline-offset: 4px;
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .v6-glass { background: rgba(246,244,240,.94); }
  .v6-glass--dark { background: rgba(26,27,31,.92); }
}
@media (prefers-reduced-motion:reduce) {
  .v6-neo--pressable, .v6-cta { transition:none; }
  .v6-neo--pressable:hover, .v6-cta:hover { transform:none; }
}

/* V6 material treatment; the approved V5 structure stays intact. */
:is(.btn.secondary,.neo-icon,.v5-size-grid>span,.v5-refill-graphic>span){background:linear-gradient(140deg,#faf9f6 0%,#ebe8e3 65%,#dedad4);border:1px solid #fff;border-bottom-color:#d3cec6;box-shadow:var(--v6-neo-raised)}
:is(.btn.secondary,.neo-icon):hover{box-shadow:12px 15px 25px #45434138,-7px -7px 19px #fffffff0,inset 1px 1px 1px #fff;filter:brightness(1.015)}
:is(.btn.secondary,.neo-icon):active{box-shadow:var(--v6-neo-inset);background:linear-gradient(145deg,#dfdbd4,#f4f1ed);transform:translateY(1px)}
:is(.btn.primary,.v5-r-shop .add-button){background:linear-gradient(155deg,#eb302b 0%,#E42320 52%,#bd1917 100%);border:1px solid #ffffff70;box-shadow:var(--v6-neo-cta);text-shadow:0 1px 1px #640a0a40}
:is(.btn.primary,.v5-r-shop .add-button):hover{background:linear-gradient(155deg,#e52d28,#E42320 50%,#b81715);box-shadow:0 15px 25px #e4232045,0 5px 10px #53151326,inset 0 2px 2px #ffffff70;transform:translateY(-2px)}
:is(.btn.primary,.v5-r-shop .add-button):active{transform:translateY(1px);background:linear-gradient(145deg,#bd1917,#E42320);box-shadow:inset 0 5px 9px #56070765,0 3px 7px #e4232030}
.quantity{padding:5px;gap:3px;background:linear-gradient(135deg,#dfdbd5,#f4f1ec);box-shadow:var(--v6-neo-inset);border:1px solid #ffffffb0}
.quantity button:not(:disabled){border-radius:50%;background:linear-gradient(135deg,#faf9f6,#e2ddd5);box-shadow:3px 4px 7px #443f3826,-2px -2px 5px #fff,inset 1px 1px 1px #fff}
.quantity button:not(:disabled):active{box-shadow:inset 3px 3px 5px #443f383d,inset -2px -2px 4px #fff}
.v5-r-shop .pack-body{background:linear-gradient(140deg,#faf9f6,#ebe8e3);box-shadow:var(--v6-neo-raised);border:1px solid #ffffffed}
.v5-r-shop .pack-option input:checked+.pack-body{background:linear-gradient(135deg,#e7e3dd,#f0ede8);border-color:#ccc3b8;box-shadow:var(--v6-neo-inset)}
.v5-r-shop .pack-option:hover .pack-body{border-color:#bcb2a6}
/* Glass is positioned over the hero photography, not over an empty paper surface. */
.v5-hero-art{isolation:auto;margin-right:-85px}
.v5-hero-image{object-position:56% 50%;filter:none;mix-blend-mode:normal;mask-image:linear-gradient(90deg,transparent,#000 14%,#000 84%,transparent)}
.v5-sizes{transform:translateX(-28px);padding-left:0}
.v5-size-quadrant{position:relative;overflow:hidden;background:linear-gradient(140deg,#ffffff80,#ffffff26 65%,#f7f4f15c);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);border:1px solid #ffffffd9;border-bottom-color:#ffffff5c;box-shadow:0 20px 35px #1c1c1f30,0 3px 9px #1c1c1f17,inset 1px 2px 1px #fffffff2,inset -1px -1px 1px #ffffff70}
.v5-size-quadrant:before{content:'';position:absolute;pointer-events:none;inset:0;background:linear-gradient(120deg,#ffffff40,transparent 35%,transparent 68%,#ffffff2b);border-radius:inherit}
.v5-size-grid>span{position:relative;box-shadow:6px 8px 12px #45434133,-4px -4px 10px #ffffffcf,inset 1px 2px 1px #fff;z-index:1}
.v5-size-facts{border-color:#59534b40}.v5-size-facts small{font-weight:600}
.v5-photo-button.btn.secondary{background:linear-gradient(140deg,#ffffffa6,#ffffff50)!important;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 8px 19px #1c1c1f30,inset 1px 1px 1px #fff;border-color:#ffffffd9}
.v5-travel-photo img{mix-blend-mode:normal;object-position:54% 50%}
.v5-travel-photo{margin-right:-5px}
.v5-use,.v5-refill-teaser{box-shadow:inset 1px 1px 1px #fff,0 8px 18px #4543410d;border-bottom-color:#d6d0c6;background:linear-gradient(135deg,#f9f7f4c0,#e7e2dd80)}
.cart-dialog{background:linear-gradient(125deg,#f4f2eff2,#f4f2efd9);backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%);border-left:1px solid #ffffffc4;box-shadow:-12px 0 45px #17171926,inset 1px 0 1px #fff}
.cart-heading{border-bottom:1px solid #ffffffab;padding-bottom:10px}
.v5-gallery-dialog{background:linear-gradient(135deg,#f4f2eff5,#f4f2efe6);border:1px solid #ffffffb8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.gallery-overlay,.gallery-arrows button,.zoom-trigger{background:#f4f2ef99;backdrop-filter:blur(12px) saturate(130%);-webkit-backdrop-filter:blur(12px) saturate(130%);border:1px solid #ffffffc9;box-shadow:0 5px 14px #17171926,inset 1px 1px 1px #fff}
@media(max-width:850px){.v5-hero-art{margin-right:-12px}.v5-sizes{transform:none}}
@media(max-width:700px){.v5-hero-art{margin-right:-5px}.v5-hero-image{object-position:56% 50%}.v5-size-quadrant{background:linear-gradient(140deg,#ffffff8c,#ffffff36);backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%)}.v5-travel-photo{margin-right:-23px}.v5-size-grid>span{box-shadow:4px 5px 9px #45434133,-3px -3px 8px #ffffffcf,inset 1px 1px 1px #fff}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.v5-size-quadrant,.v5-photo-button.btn.secondary,.gallery-overlay,.cart-dialog,.v5-gallery-dialog{background:#f1efecf5!important}}
@media(prefers-reduced-motion:reduce){.btn.primary:hover,.btn.primary:active,.neo-icon:active{transform:none}}
