/* Deal pages: Deals, Guns, Ammo. Builds on styles.css tokens. */

/* Hero extras */
.deal-hero .stamp{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.25rem;font-size:.88rem;color:rgba(255,255,255,.7)}
.deal-hero .stamp i{width:8px;height:8px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 4px rgba(159,194,180,.2)}
.subnav{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
.subnav a{color:rgba(255,255,255,.85);text-decoration:none;font-size:.95rem;font-weight:600;padding:.5rem 1rem;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line)}
.subnav a:hover{background:rgba(255,255,255,.12);color:#fff}
.subnav a[aria-current="page"]{background:#fff;color:var(--night);border-color:#fff}

.deal-sheet section{padding:3rem 0 1rem}
.deal-sheet section:first-child{padding-top:3.5rem}
.deal-sheet .head{margin-bottom:1.5rem}
.deal-sheet .head h2{font-size:clamp(1.7rem,4vw,2.3rem)}
.deal-sheet .head p{font-size:1rem;margin-top:.6rem}

/* Gun cards */
.gun-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,15.5rem),1fr))}
.gun{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow);overflow:hidden;min-width:0;transition:transform .2s ease,box-shadow .2s ease}
.gun:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(15,30,34,.45)}
.gun .photo{aspect-ratio:4/3;background:#fff;display:grid;place-items:center;border-bottom:1px solid var(--line);position:relative}
.gun .photo img{width:100%;height:100%;object-fit:contain;padding:.75rem}
.gun .photo .ph{width:34%;color:#C5D0CB}
.gun .photo .flag{position:absolute;left:.65rem;top:.65rem}
.gun .body{padding:1rem 1.1rem 1.15rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
.gun .title{font-weight:600;font-size:.98rem;line-height:1.35;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.gun .title:hover{text-decoration:underline}
.gun .facts{display:flex;flex-wrap:wrap;gap:.25rem .75rem;font-size:.82rem;color:var(--muted)}
.gun .buy{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;padding-top:.6rem;border-top:1px solid var(--line)}
.gun .landed{font-family:var(--display);font-weight:700;font-size:1.45rem;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.gun .split{font-size:.78rem;color:var(--muted);margin-top:.25rem;font-variant-numeric:tabular-nums}
.gun .go{flex:none;font-size:.85rem;font-weight:600;color:#fff;background:var(--blaze);padding:.55rem .9rem;border-radius:999px;text-decoration:none;white-space:nowrap}
.gun .go:hover{background:var(--blaze-2);color:#fff}

/* Two-store comparison rows inside a card */
.offers{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}
.offers li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:baseline;font-size:.92rem}
.offers a{color:var(--ink);text-decoration:none;min-width:0}
.offers a:hover{text-decoration:underline}
.offers .p{font-variant-numeric:tabular-nums;font-weight:600}
.offers li.win a,.offers li.win .p{color:var(--pine);font-weight:700}
.offers li.lose .p{color:var(--muted);font-weight:500;text-decoration:line-through;text-decoration-color:rgba(90,106,102,.5)}

/* Pills */
.save{display:inline-flex;align-items:center;font-size:.76rem;font-weight:650;padding:.22rem .6rem;border-radius:999px;background:#E3F1EA;color:#1C5A44;white-space:nowrap}
.save.hot{background:var(--blaze);color:#fff}
.save.alt{background:#FFF0E8;color:var(--blaze-2)}

/* Ammo panels */
.ammo-best{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:760px){.ammo-best{grid-template-columns:1fr 1fr}}
.cal-card{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow);padding:1.25rem;display:grid;gap:.25rem;align-content:start;min-width:0}
.cal-card h3{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.5rem}
.cal-card h3 a{font-family:var(--body);font-size:.85rem;font-weight:600;color:var(--pine);text-decoration:none;letter-spacing:0}
.round{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.15rem 1rem;padding:.75rem 0;border-top:1px solid var(--line);text-decoration:none;color:inherit}
.round:first-of-type{border-top:0}
.round .t{font-size:.92rem;line-height:1.4;overflow-wrap:anywhere}
.round:hover .t{text-decoration:underline}
.round .cpr{font-family:var(--display);font-weight:700;font-size:1.3rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--pine)}
.round .s{font-size:.8rem;color:var(--muted)}
.round .tot{font-size:.8rem;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}

.cmp-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr))}
.cmp-card{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow);padding:1.15rem 1.25rem;display:grid;gap:.6rem;align-content:start;min-width:0}
.cmp-card .name{font-weight:650;line-height:1.35;overflow-wrap:anywhere}
.cmp-card .meta{font-size:.82rem;color:var(--muted)}

/* Browse controls */
.controls{display:grid;gap:.75rem;background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow);padding:1rem;margin-bottom:1.25rem}
.controls .row1{display:flex;flex-wrap:wrap;gap:.6rem}
.controls input[type=search]{flex:1 1 16rem;min-width:0;font:inherit;font-size:1rem;padding:.75rem 1rem;border:1.5px solid var(--line);border-radius:999px;background:var(--mist);color:var(--ink)}
.controls input[type=search]:focus{border-color:var(--pine);background:#fff;outline:none}
.controls select{flex:1 1 9.5rem;min-width:0;font:inherit;font-size:.95rem;padding:.7rem 2.2rem .7rem 1rem;border:1.5px solid var(--line);border-radius:999px;background:var(--mist);color:var(--ink);appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235A6A66' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;background-size:1rem}
.chips{display:flex;flex-wrap:wrap;gap:.4rem}
.chip{font:inherit;font-size:.85rem;font-weight:500;padding:.4rem .85rem;border-radius:999px;border:1.5px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.chip:hover{border-color:var(--sage)}
.chip[aria-pressed="true"]{background:var(--night);border-color:var(--night);color:#fff}
.count{font-size:.9rem;color:var(--muted);margin:0 0 1rem}

.ammo-list{display:grid;background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow);overflow:hidden}
.ammo-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem 1.25rem;padding:1rem 1.25rem;border-top:1px solid var(--line);align-items:center}
.ammo-row:first-child{border-top:0}
.ammo-row .t{font-weight:550;color:var(--ink);text-decoration:none;line-height:1.4;overflow-wrap:anywhere}
.ammo-row .t:hover{text-decoration:underline}
.ammo-row .facts{display:flex;flex-wrap:wrap;gap:.25rem .9rem;font-size:.82rem;color:var(--muted);align-items:center;margin-top:.3rem}
.ammo-row .price{text-align:right}
.ammo-row .cpr{font-family:var(--display);font-weight:700;font-size:1.35rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1}
.ammo-row .cpr small{font-family:var(--body);font-size:.75rem;font-weight:500;color:var(--muted);letter-spacing:0}
.ammo-row .tot{font-size:.8rem;color:var(--muted);margin-top:.3rem;font-variant-numeric:tabular-nums}

.more{display:flex;justify-content:center;margin-top:1.5rem}
.more button{font:inherit;font-weight:600;padding:.8rem 1.6rem;border-radius:999px;border:0;background:var(--night);color:#fff;cursor:pointer}
.more button:hover{background:var(--pine)}
.empty,.loading{padding:2.5rem 1rem;text-align:center;color:var(--muted)}
.fine{font-size:.85rem;color:var(--muted);margin-top:2rem;max-width:44rem}
.browse-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.browse-links a{font-weight:600;color:var(--pine);text-decoration:none;padding:.7rem 1.2rem;border-radius:999px;background:var(--surface);box-shadow:var(--shadow)}
.browse-links a:hover{background:#E4EAE6}
@media(prefers-reduced-motion:reduce){.gun{transition:none}.gun:hover{transform:none}}
