/* Accueil (2026-10-03, design cozy) : le grenier est un panneau cadré ; le carton est posé sur un plancher,
   au fond du panneau. Les trois étapes (carton livré, révélation, récapitulatif) s'y jouent l'une après l'autre.
   Dessous : les Premiers pas et les quêtes du jour, dans leurs panneaux. */
.home { display: flex; flex-direction: column; gap: 24px; padding-top: 12px; }
.attic { --tab: var(--t-peach); }
.attic-room { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1fr); min-height: clamp(470px, calc(100dvh - 250px), 640px);
  padding: 24px 20px 28px; background: var(--surface-2); }
/* Plancher : lattes de bois, sous le carton. */
.attic-floor { position: absolute; z-index: -1; left: 0; right: 0; bottom: 0; height: 30%; pointer-events: none;
  background:
    repeating-linear-gradient(180deg, transparent 0 26px, color-mix(in srgb, var(--drop) 50%, transparent) 26px 28px),
    repeating-linear-gradient(90deg, transparent 0 160px, color-mix(in srgb, var(--drop) 30%, transparent) 160px 162px),
    color-mix(in srgb, var(--t-peach) 40%, var(--surface-2));
  border-top: 2px solid color-mix(in srgb, var(--drop) 85%, transparent); }

.attic-stage { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.carton-spot { position: relative; }
.attic .attic-carton .carton-scene { --W: 320px; --H: 202px; --D: 214px; }
.attic .open-actions { position: relative; z-index: 3; margin-top: 8px; gap: 8px; }
.attic #open-btn { font-size: 1.12rem; padding: 13px 30px; }
.attic .open-note { font-size: 1.1rem; color: var(--ink-soft); }
/* Étiquette de livraison épinglée à côté du carton (un vrai bout de papier : mêmes couleurs dans tous les thèmes). */
.delivery-tag { position: absolute; left: 90%; top: 30%; width: 190px; padding: 14px 16px 12px; text-align: left;
  font-family: var(--font-hand); font-size: 1.1rem; line-height: 1.2; color: #4A3628; background: #FFF8EA;
  border: 2px solid var(--frame); box-shadow: 2px 4px 0 var(--drop); transform: rotate(3deg); }
.delivery-tag::before { content: ''; position: absolute; left: 50%; top: -8px; width: 14px; height: 14px; transform: translateX(-50%); border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #F7A4B8, #C44F6E); box-shadow: 1px 2px 0 rgba(0, 0, 0, .25); }
.delivery-tag strong { display: block; font-family: var(--font-display); font-weight: 400; font-size: 1.05rem; letter-spacing: .02em; color: #45302A; }
.delivery-tag:empty { display: none; }
/* Colis spéciaux (js/carton.js) : titre de l'étiquette en couleur. */
.delivery-tag[data-condition="abime"] strong { color: #B23A48; }
.delivery-tag[data-condition="protege"] strong { color: #2E64B8; }
.delivery-tag[data-parcel="collector"] strong { color: #A9822A; }
.delivery-tag[data-parcel="bienvenue"] strong { color: #C2456A; }

/* Livraison : le carton tombe dans le grenier et rebondit, puis un petit nuage de poussière au sol. */
.carton-scene.delivering .carton { animation: carton-drop .7s cubic-bezier(.45, 0, .7, 1) both; }
.carton-scene.delivering::after { animation: shadow-grow .7s cubic-bezier(.45, 0, .7, 1) both; }
@keyframes carton-drop {
  0% { transform: translateY(-190%) rotateX(-24deg) rotateY(-38deg) rotateZ(-5deg); }
  70% { transform: translateY(21%) rotateX(-24deg) rotateY(-30deg) rotateZ(0); }
  84% { transform: translateY(12%) rotateX(-24deg) rotateY(-30deg); }
  100% { transform: translateY(18%) rotateX(-24deg) rotateY(-30deg); }
}
@keyframes shadow-grow { 0% { transform: scale(.3); opacity: 0; } 70% { transform: scale(1.05); opacity: 1; } 100% { transform: scale(1); } }
.puff.landing { top: 86%; }
@media (prefers-reduced-motion: reduce) {
  .carton-scene.delivering .carton, .carton-scene.delivering::after { animation: none; }
}


  justify-content: center; gap: 40px 22px; } /* (place pour « ⬆ plus rare ») */

/* Premiers pas et quêtes du jour, côte à côte sous le grenier. */
.home-side { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 24px; align-items: start; }
.home-side:not(:has(> :not([hidden]))) { display: none; }

/* ---- Écrans moyens et petits ------------------------------------------------------------------- */
@media (max-width: 1000px) {
  .delivery-tag { left: 84%; width: 160px; font-size: 1rem; }
}
@media (max-width: 760px) {
  .attic-room { min-height: 0; padding: 16px 12px 22px; }
  /* Étiquette de livraison sous le carton, assez large pour son titre (« Première livraison ! » sur une ligne). */
  .delivery-tag { position: static; transform: rotate(-2deg); width: auto; max-width: min(320px, 100%); margin: 4px auto 8px; }
  .open-actions { padding: 0 4px; }
  .attic .attic-carton .carton-scene { --W: 230px; --H: 145px; --D: 155px; }
}

/* ---- Disposition « fenêtres » (2026-10-03, active : classe home--window sur <main>) ---------------------------
   Plus resserrée, comme de vieilles fenêtres ouvertes côte à côte : le grenier dans une fenêtre plus petite à gauche,
   les Premiers pas et les quêtes du jour empilés à droite. Le texte « Commence ta collection » passe au-dessus du
   carton et l'étiquette de livraison dessous (la fenêtre est trop étroite pour les mettre sur les côtés). */
@media (min-width: 961px) {
  .home--window { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(320px, 1fr); align-items: start; gap: 24px; }
  .home--window .home-side { grid-template-columns: 1fr; gap: 20px; }
  .home--window .attic-room { flex: 1; min-height: 480px; padding: 18px 16px 22px; }
  .home--window .attic-floor { height: 34%; }
  .home--window .attic .attic-carton .carton-scene { --W: 260px; --H: 164px; --D: 174px; }
  .home--window .delivery-tag { position: static; width: auto; max-width: 300px; margin: 2px auto 6px; transform: rotate(-2deg); }
  .home--window .attic #open-btn { font-size: 1.05rem; padding: 12px 26px; }
  /* Les listes de quêtes, plus étroites : textes un peu plus petits. */
  .home--window .quests-head h2 { font-size: 1.15rem; }
  .home--window .quest-label { font-size: .95rem; }
}
/* ---- Ouverture du carton en plein écran (2026-10-03, d'après Cinéclub) ----------------------------------------
   Classe opening sur <main> (js/ouvrir.js) : le grenier prend toute la largeur, les quêtes se cachent. La boîte en
   grand à gauche, ses informations à droite ; en haut le retour et le compteur, en bas la navigation. */
.home.opening { display: flex; flex-direction: column; align-items: stretch; }
.home.opening .home-side { display: none; }
.home.opening .attic-room { min-height: 0; padding: 18px 22px 22px; }
.home.opening .attic-floor { display: none; }
.text-btn { border: 0; background: none; padding: 6px 2px; font: 700 .95rem var(--font-body); color: var(--ink-soft); cursor: pointer; text-decoration: underline;
  text-decoration-color: transparent; text-underline-offset: 3px; transition: color .15s, text-decoration-color .15s; }
.text-btn:hover { color: var(--ink); text-decoration-color: currentColor; }

.reveal { align-items: stretch; justify-content: flex-start; gap: 14px; text-align: left; }
.reveal-head { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; }
.reveal-head .text-btn { justify-self: start; }
.reveal-counter { margin: 0; font-weight: 700; color: var(--ink-soft); font-variant-numeric: tabular-nums; }
.reveal-counter b { color: var(--ink); }
/* Animée / Rapide : un petit interrupteur à deux positions. */
.reveal-mode { justify-self: end; display: flex; gap: 3px; padding: 3px; border-radius: 12px; background: var(--surface); box-shadow: inset 0 0 0 2px var(--line); }
.reveal-mode button { border: 0; border-radius: 9px; padding: 7px 12px; min-height: 36px; font: 700 .85rem var(--font-body); color: var(--ink-soft); background: none; cursor: pointer; }
.reveal-mode button[aria-pressed="true"] { color: var(--ink); background: var(--t-butter); box-shadow: inset 0 0 0 2px var(--frame); }

/* La scène : un plateau creusé dans la fenêtre, la boîte sur un halo doux à gauche. */
.reveal-stage { position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: center; gap: 32px;
  min-height: clamp(400px, calc(100dvh - 330px), 640px); padding: 26px 34px; border-radius: var(--radius-s);
  background: radial-gradient(ellipse 42% 60% at 28% 50%, color-mix(in srgb, var(--t-butter) 70%, transparent), transparent 70%), var(--surface);
  box-shadow: inset 0 2px 0 color-mix(in srgb, var(--drop) 60%, transparent), inset 0 0 0 2px var(--line); }
.reveal-slot { position: relative; z-index: 2; display: grid; place-items: center; min-height: 0; cursor: pointer; }
.reveal-slot .card { --w: min(280px, 38vw, calc((100dvh - 400px) * 5 / 7)); }
.reveal-slot .card.gbox--ps1 { --w: min(390px, 44vw, calc((100dvh - 400px) * 142 / 125)); }
.reveal-slot .card.gbox--psp { --w: min(200px, 30vw, calc((100dvh - 400px) * 104 / 180)); }
.reveal-slot .card:focus-visible { outline: none; }

/* Informations : la rareté en petites capitales (avec ses points), le nom en grand, des étiquettes, quelques lignes. */
.reveal-info { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; max-width: 46ch; }
.reveal-label { display: inline-flex; align-items: center; gap: 8px; font: 800 .78rem var(--font-body); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-soft); }
.reveal-info[data-rarity] .reveal-label { color: color-mix(in srgb, var(--r-edge, var(--ink-soft)) 85%, var(--ink)); }
.dark .reveal-info[data-rarity] .reveal-label { color: var(--r, var(--ink-soft)); }
.reveal-label .pips { gap: 3px; }
.reveal-label .pips i { width: 8px; height: 8px; box-shadow: inset 0 0 0 1.5px currentColor; }
.reveal-label .pips i.on { background: currentColor; }
.reveal-title { font-size: clamp(1.8rem, 3.4vw, 2.6rem); line-height: 1.05; overflow-wrap: anywhere; }
.reveal-title.mystery { color: var(--ink-soft); }
.reveal-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.reveal-tag { padding: 3px 10px; border-radius: 999px; font: 800 .8rem var(--font-body); color: var(--ink); background: var(--surface-2); box-shadow: inset 0 0 0 2px var(--line); }
.reveal-tag.is-new { background: var(--t-mint); box-shadow: inset 0 0 0 2px var(--frame); }
.reveal-line { margin: 0; font-size: .95rem; line-height: 1.45; }
/* Lignes d'infos de la boîte retournée, dans une carte (2026-10-08) : un filet pointillé entre deux lignes. */
.reveal-facts { align-self: stretch; padding: 4px 14px; }
.reveal-facts .reveal-line { padding: 8px 0; }
.reveal-facts .reveal-line + .reveal-line { border-top: 1px dashed var(--line); }
.reveal-line.rarer { font-weight: 800; color: var(--gold-ink); }
.reveal-sheet { margin-top: 4px; }

/* Bas : précédente, points, aide, suivante. */
.reveal-foot { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.reveal-prev { width: 44px; padding: 0; font-size: 1.3rem; }
.reveal-dots { display: inline-flex; gap: 6px; }
.reveal-dots i { width: 8px; height: 8px; border-radius: 50%; background: var(--line); }
.reveal-dots i.seen { background: color-mix(in srgb, var(--accent) 55%, var(--line)); }
.reveal-dots i.on { width: 22px; border-radius: 999px; background: var(--accent); }
.reveal-hint { flex: 1; margin: 0; text-align: center; font-size: .85rem; color: var(--ink-soft); }
.reveal-next { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }

/* ---- Bilan du carton -------------------------------------------------------------------------------------- */
.bilan { align-items: stretch; justify-content: flex-start; gap: 18px; text-align: left; }
.bilan-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px 20px; }
.bilan-head h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); }
.bilan-head p { margin: 4px 0 0; }
.bilan-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.bilan-stat { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-radius: var(--radius-s); background: var(--surface);
  box-shadow: inset 0 0 0 2px var(--line); }
.bilan-stat strong { display: inline-flex; align-items: center; gap: 8px; font: 400 1.7rem/1 var(--font-display); color: var(--ink); }
.bilan-stat span { font-weight: 700; color: var(--ink-soft); }
.bilan-stat.is-rarity strong { font: 800 1rem var(--font-body); }
.bilan-stat.is-rarity .pips { gap: 3px; }
.bilan-stat.is-rarity .pips i { width: 9px; height: 9px; box-shadow: inset 0 0 0 1.5px var(--ink); }
.bilan-stat.is-rarity .pips i.on { background: var(--ink); }
.bilan-text { margin: 0; max-width: 75ch; color: var(--ink-soft); }
.bilan .summary-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 30px 20px; align-items: end; }
.bilan-item { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.bilan-item .card-button { width: 100%; }
.bilan-item .card { animation: rise .5s var(--ease) backwards; animation-delay: calc(var(--i, 0) * 60ms); }
.bilan-item figcaption { display: flex; flex-direction: column; align-items: center; gap: 6px; min-height: 26px; }
.bilan-tag { font: 800 .82rem var(--font-body); color: var(--ink-soft); }
.bilan-tag.is-new { color: var(--ok-ink); }
.bilan-item .rarer-tag { position: static; transform: none; }
/* Tout le stock ouvert d'un coup : colis d'où vient la boîte (2026-10-07). */
.bilan-from { font: 700 .74rem/1.25 var(--font-body); color: var(--ink-soft); text-align: center; opacity: .85; }
.bilan-hint { margin: -6px 0 0; font-size: .88rem; }
.bilan-albums h3 { font-size: 1.2rem; margin-bottom: 8px; }
.bilan-album { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 4px 10px; margin: 0 0 6px; max-width: 520px; }
.bilan-album .progress { height: 10px; }
.bilan .summary-actions { display: flex; flex-wrap: wrap; gap: 12px; }

@media (max-width: 760px) {
  .home.opening .attic-room { padding: 12px; }
  .reveal-head { grid-template-columns: 1fr auto; }
  .reveal-head .reveal-counter { grid-column: 2; grid-row: 1; }
  .reveal-mode { grid-column: 1 / -1; justify-self: center; }
  .reveal-stage { grid-template-columns: 1fr; gap: 18px; padding: 18px 14px; min-height: 0; text-align: center;
    background: radial-gradient(ellipse 60% 35% at 50% 28%, color-mix(in srgb, var(--t-butter) 70%, transparent), transparent 70%), var(--surface); }
  /* (Assez petite pour que « Boîte suivante » reste visible sans faire défiler.) */
  .reveal-slot .card { --w: min(180px, 50vw, calc((100dvh - 470px) * 5 / 7)); }
  .reveal-slot .card.gbox--ps1 { --w: min(260px, 72vw, calc((100dvh - 470px) * 142 / 125)); }
  .reveal-slot .card.gbox--psp { --w: min(140px, 42vw, calc((100dvh - 470px) * 104 / 180)); }
  .reveal-info { gap: 6px; }
  .reveal-title { font-size: 1.6rem; }
  .reveal-info { align-items: center; margin: 0 auto; }
  .reveal-hint { order: 3; flex-basis: 100%; }
  .reveal-next { flex: 1; }
  .bilan-stats { grid-template-columns: 1fr; }
  .bilan .summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ---- Fenêtres de l'accueil (2026-10-03, js/home-widgets.js) ------------------------------------------------ */
.home-more { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.home-more:not(:has(> :not([hidden]))) { display: none; }
.home--window .home-more { grid-column: 1 / -1; }
.home.opening .home-more { display: none; }
.w-arrivals { grid-column: 1 / -1; --tab: var(--t-sky); }
.w-coll { --tab: var(--t-lilac); }
.w-daily { --tab: var(--t-butter); }
.w-market { --tab: var(--t-rose); }
.w-feed { --tab: var(--t-mint); }
.w-week { --tab: var(--t-peach); }
.w-trades { --tab: var(--t-rose); }
.panel-head .text-btn { font-size: .85rem; padding: 2px 0; }
.w-note { margin: 0; font-size: .9rem; color: var(--ink-soft); }
.w-empty { list-style: none; color: var(--ink-soft); font-size: .92rem; }
.w-rarity { display: inline-flex; align-items: center; gap: 6px; font: 800 .72rem var(--font-body); letter-spacing: .1em; text-transform: uppercase;
  color: color-mix(in srgb, var(--r-edge, var(--ink-soft)) 85%, var(--ink)); }
.dark .w-rarity { color: var(--r, var(--ink-soft)); }
.w-rarity .pips { gap: 2px; }
.w-rarity .pips i { width: 6px; height: 6px; box-shadow: inset 0 0 0 1.3px currentColor; }
.w-rarity .pips i.on { background: currentColor; }
.w-box .card { --w: 100%; }

/* Ma semaine : 7 pastilles, la dernière est aujourd'hui. */
.week-days { list-style: none; margin: 0 0 12px; padding: 0; display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; text-align: center; }
.week-days li { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.wd-name { font: 700 .72rem var(--font-body); color: var(--ink-soft); text-transform: capitalize; }
.wd-dot { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; font: 900 .8rem var(--font-body);
  background: var(--surface-2); box-shadow: inset 0 0 0 2px var(--line); color: #1E3B2C; }
.week-days li.on .wd-dot { background: #8FE0B0; box-shadow: inset 0 0 0 2px var(--frame); }
.week-days li.today .wd-name { color: var(--ink); font-weight: 900; }
.week-days li.today .wd-dot { outline: 2px dashed var(--accent); outline-offset: 2px; }

/* Listes à lignes (échanges, brocante). */
.w-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.w-row { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: var(--radius-s); background: var(--surface-2); box-shadow: inset 0 0 0 2px var(--line); }
.w-row-text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; font-size: .92rem; }
.w-row-text strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.w-sale .w-box--tiny { width: 44px; flex: none; }
.w-sale-meta { font-size: .82rem; color: var(--ink-soft); font-variant-numeric: tabular-nums; }
.w-price { display: inline-flex; align-items: center; gap: 3px; font-weight: 800; color: var(--ink); }
.w-token { width: 14px; height: 14px; fill: var(--butter); stroke: var(--ink-dark); stroke-width: 1.8; }

/* Derniers arrivages : une étagère de boîtes. */
.w-shelf { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 16px; align-items: end; }
.w-arrival { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.w-arrival .card-button { width: 100%; }
.w-arrival figcaption { font-size: .75rem; color: var(--ink-soft); white-space: nowrap; }

/* Ma collection en bref : la plus belle boîte, puis une barre par rareté. */
.w-coll-body { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 18px; align-items: start; }
.w-coll-best { display: flex; flex-direction: column; gap: 8px; }
.w-coll-best .card-button { width: 100%; }
.w-coll-cap { display: flex; flex-direction: column; gap: 2px; font-size: .85rem; }
.w-coll-cap small { color: var(--ink-soft); font-weight: 700; }
.w-rarities { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.w-rar-row { display: grid; grid-template-columns: 150px minmax(0, 1fr) 64px; align-items: center; gap: 10px; font-size: .85rem; font-weight: 700; }
.w-rar-name { display: inline-flex; align-items: center; gap: 6px; }
.w-rar-name .pips { gap: 2px; }
.w-rar-name .pips i { width: 6px; height: 6px; box-shadow: inset 0 0 0 1.3px var(--ink-soft); }
.w-rar-name .pips i.on { background: var(--ink); box-shadow: none; }
.w-rar-bar { height: 10px; border-radius: 999px; background: var(--surface-2); box-shadow: inset 0 0 0 2px var(--line); overflow: hidden; }
.w-rar-bar i { display: block; height: 100%; background: var(--r); box-shadow: inset -2px 0 0 var(--frame); }
.w-rar-n { text-align: right; color: var(--ink-soft); font-variant-numeric: tabular-nums; }

/* La boîte du jour. */
.w-daily-body { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 18px; align-items: center; }
.w-daily-info { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.w-daily-name { font: 400 1.35rem/1.1 var(--font-display); }
.w-daily-own { margin: 0; font-weight: 700; font-size: .9rem; }

/* Activité du grenier. */
.w-feed-list { list-style: none; margin: 0; padding: 0; display: grid; }
.w-feed-item { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 2px dashed var(--line); font-size: .92rem; }
.w-feed-item:last-child { border-bottom: 0; }
.w-feed-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--surface-2); box-shadow: inset 0 0 0 2px var(--line); }
.w-feed-icon svg { width: 16px; height: 16px; fill: none; stroke: var(--ink); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.k-find .w-feed-icon { background: var(--t-butter); }
.k-sale .w-feed-icon { background: var(--t-rose); }
.k-trade .w-feed-icon { background: var(--t-sky); }
.k-join .w-feed-icon { background: var(--t-mint); }
.k-album .w-feed-icon { background: var(--t-lilac); }
.w-feed-text { line-height: 1.4; }
.w-feed-text .w-rarity { margin-left: 2px; vertical-align: 1px; }
.w-who { font-weight: 800; color: var(--ink); text-decoration: none; }
.w-who:hover { text-decoration: underline; }
.w-feed-time { font-size: .75rem; color: var(--ink-soft); white-space: nowrap; }

@media (max-width: 960px) {
  .home-more { grid-template-columns: 1fr; }
  .w-shelf { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
  .w-shelf { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .w-arrival:nth-child(n+7) { display: none; }
  .w-coll-body, .w-daily-body { grid-template-columns: 90px minmax(0, 1fr); gap: 12px; }
  .w-rar-row { grid-template-columns: 1fr 48px; }
  .w-rar-bar { grid-column: 1 / -1; grid-row: 2; }
  .w-feed-item { grid-template-columns: 30px minmax(0, 1fr); }
  .w-feed-time { grid-column: 2; }
  .w-sale .btn { display: none; }
}