.bottom-nav { grid-template-columns:repeat(4,minmax(0,1fr)); }
.new-arrivals-view { padding-top:26px; }
.arrivals-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; gap:12px; }
.arrivals-heading .eyebrow { margin:0 0 7px; color:#248b93; font-size:10px; letter-spacing:2px; }
.arrivals-heading h1 { margin:0; font-size:28px; letter-spacing:-1px; color:#234958; }
.arrivals-heading p:last-child { margin:8px 0 0; color:#7c919c; font-size:12px; }
.arrivals-heading-icon { display:grid; place-items:center; width:48px; height:48px; border:1px solid #ffffff; border-radius:17px; background:#ffffff9c; box-shadow:0 7px 20px #357a8710; color:#278e94; }
.arrivals-heading-icon svg { width:23px; height:23px; stroke-width:1.6; }
.arrivals-calendar { --date-width:112px; position:sticky; top:0; z-index:5; margin:0 -24px 25px; padding:10px 20px 9px; background:#eef9faf5; border-bottom:1px solid #4d929c14; backdrop-filter:blur(12px); }
.arrivals-date-list { position:relative; box-sizing:border-box; width:100%; display:flex; gap:10px; overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain; touch-action:manipulation; scrollbar-width:none; -ms-overflow-style:none; cursor:grab; user-select:none; -webkit-user-select:none; mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent); -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent); }
.arrivals-date-list::-webkit-scrollbar { display:none; width:0; height:0; }
.arrivals-date-list.is-dragging, .arrivals-date-list.is-dragging .arrivals-date { cursor:grabbing; }
.arrivals-date { position:relative; flex:0 0 var(--date-width); min-height:108px; padding:14px 3px 18px; background:transparent; border:0; border-radius:12px; color:#91a3ac; cursor:pointer; text-align:center; transform-origin:center; }
.arrivals-date-label { display:block; font-size:18px; line-height:1.25; margin-bottom:8px; }
.arrivals-date strong { font-size:38px; line-height:1.2; letter-spacing:-1.2px; font-weight:600; }
.arrivals-calendar::before { position:absolute; content:""; width:var(--date-width); top:10px; bottom:9px; left:50%; transform:translateX(-50%); border-radius:13px; background:linear-gradient(180deg,#d7eded50,#d7ededb0); border:1px solid #ffffff65; pointer-events:none; }
.arrivals-calendar::after { position:absolute; content:""; height:4px; width:26px; bottom:16px; left:50%; transform:translateX(-50%); border-radius:3px; background:#20959b; pointer-events:none; }
.arrivals-date.is-centered strong { font-weight:700; }
.arrivals-date:focus-visible { outline:2px solid #238c94; outline-offset:-3px; }
.arrivals-sound { cursor:pointer; }
.arrivals-sound.is-muted { color:#8ba0a9; }
.arrivals-sound.is-muted::after { content:""; position:absolute; width:23px; height:1.5px; transform:rotate(-45deg); background:currentColor; box-shadow:0 0 0 2px #f0fafb; }
.arrivals-group { scroll-margin-top:151px; margin-bottom:28px; }
.arrivals-group-heading { display:flex; align-items:baseline; gap:10px; margin-bottom:13px; }
.arrivals-group-heading h2 { margin:0; color:#2c4a59; font-size:18px; letter-spacing:-.4px; }
.arrivals-group-heading span { color:#8ba0a9; font-size:10px; }
.arrivals-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 12px; min-height:60px; }
.arrivals-grid .script-card { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:visible; align-self:start; }
.arrivals-grid .script-cover-frame { border-radius:14px; overflow:hidden; border:1px solid #ffffffaa; box-shadow:0 6px 18px #346b7a12; }
.arrivals-grid .script-card img { border-radius:13px; }
.arrivals-grid .script-card h3 { margin:10px 2px 7px; font-size:14px; line-height:1.45; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.arrivals-grid .card-meta { margin:0 2px; font-size:10px; }
.arrivals-grid .status-dot { display:none; }
.arrivals-grid .card-facts { margin:7px 2px 2px; font-size:10px; }
.new-product-badge { position:absolute; bottom:8px; left:8px; z-index:2; display:inline-flex; align-items:center; padding:4px 8px; border:1px solid #ffffff75; border-radius:7px; background:#188d89; box-shadow:0 2px 8px #13423b24; color:white; font-size:10px; font-weight:650; line-height:1.25; letter-spacing:.5px; pointer-events:none; }
.suggestion-item { display:flex; align-items:center; gap:11px; }
.suggestion-item .suggestion-cover { flex:0 0 44px; width:44px; height:44px; border-radius:9px; }
.suggestion-cover img { width:100%; height:100%; object-fit:cover; }
.suggestion-cover .new-product-badge { left:2px; bottom:2px; border-radius:4px; padding:2px 3px; font-size:8px; }
.suggestion-title { min-width:0; overflow-wrap:anywhere; }
.arrivals-more { display:block; margin:14px auto 0; padding:10px 16px; border:1px solid #bcdfe2; border-radius:12px; color:#278a91; background:#ffffff75; font-size:12px; cursor:pointer; }
.arrivals-end { text-align:center; padding:7px 0 14px; color:#8c9fa8; font-size:11px; overflow-anchor:none; }
.arrivals-empty { padding:42px 18px; text-align:center; border-radius:24px; }
.arrivals-empty svg { width:34px; height:34px; color:#60a6ad; }
.arrivals-empty h2 { font-size:18px; margin:18px 0 10px; color:#345b67; }
.arrivals-empty p { font-size:12px; color:#7c929c; line-height:1.8; }
.arrivals-empty button { margin:20px auto 0; }
@media (prefers-reduced-motion:reduce) { .arrivals-date-list { scroll-behavior:auto; } }
@media(max-width:350px) { .arrivals-calendar { margin-left:-18px; margin-right:-18px; padding-left:14px; padding-right:14px; }.arrivals-heading h1 { font-size:25px; }.arrivals-grid { gap:15px 10px; }.arrivals-calendar { --date-width:108px; } }

/* Keep shared button press styles from changing the wheel's touch contract or
   easing each frame: the entire enlarged date tile is a horizontal drag target. */
body #arrivalsDates .arrivals-date, #arrivalsDates .arrivals-date * {
  touch-action:manipulation; -webkit-user-select:none; user-select:none;
  -webkit-touch-callout:none;
}
body #arrivalsDates .arrivals-date { transition:none; }
body #arrivalsDates .arrivals-date:active { scale:1; }

/* Native touch panning and snapping are available before any event fires.
   Transform only the contents so visual rotation cannot move snap targets. */
#arrivalsDates { scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; }
#arrivalsDates.is-manual-wheel { scroll-snap-type:none; }
.arrivals-date { scroll-snap-align:center; scroll-snap-stop:normal; }
.arrivals-date-content { display:block; transform-origin:center; }
