/* AHL Sights — cartridge comparison tool styles. Tokens from theme.css. */
.cart-main{max-width:1000px;padding-top:22px;padding-bottom:60px}
.crumb{font-size:.8rem;color:var(--ink3);margin:0 0 8px}.crumb a{color:var(--amber2)}
.cart-main h1{font-size:2rem;margin:0 0 8px}
.cart-seg{max-width:320px;margin:0}
.cart-hint{color:var(--ink3);font-size:.9rem;margin:8px 0 14px}

/* top bar: view toggle + order toggle */
.cart-topbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin:14px 0}
.cart-sortbar{display:flex;align-items:center;gap:8px}
.cart-sortbar .sb-label{font-size:.8rem;color:var(--ink3);text-transform:uppercase;letter-spacing:.4px;font-weight:700}
.cart-sort{max-width:220px}

/* category filter chips */
.cart-filters{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0 10px}
.cfil{font-size:.82rem;font-weight:700;padding:6px 13px;border-radius:20px;border:1px solid var(--line2);background:var(--panel);color:var(--ink2);cursor:pointer}
.cfil:hover{color:var(--amber2)}
.cfil.on{background:var(--amber);color:#160d02;border-color:var(--amber)}

/* gallery grid */
.cart-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:840px){.cart-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.cart-grid{grid-template-columns:repeat(2,1fr)}}
.cart-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:14px;padding:12px;cursor:pointer;transition:.12s;position:relative;box-shadow:var(--shadow)}
.cart-card:hover{border-color:var(--line2)}
.cart-card.sel{border-color:var(--amber);box-shadow:0 0 0 2px color-mix(in srgb,var(--amber) 22%,transparent)}
.cart-card .pic{height:120px;display:flex;align-items:flex-end;justify-content:center;background:#eef1f5;border-radius:10px;padding:8px}
.cart-card .pic img{max-height:100%;width:auto;object-fit:contain}
.cart-card .nm{font-weight:800;margin-top:9px;color:var(--ink)}
.cart-card .ct{font-size:.72rem;color:var(--amber2);text-transform:uppercase;letter-spacing:.4px;font-weight:700}
.cart-card .kv{font-size:.78rem;color:var(--ink2);margin-top:5px;line-height:1.5}
.cart-card .tick{position:absolute;top:9px;right:9px;width:22px;height:22px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;font-size:.7rem;color:var(--ink3);background:var(--bg2)}
.cart-card.sel .tick{background:var(--amber);color:#160d02;border-color:var(--amber);font-weight:800}
.cart-card.locked{cursor:pointer}
.cart-card.locked .pic img{filter:grayscale(.7) brightness(.9);opacity:.7}
.cart-card.locked .nm,.cart-card.locked .kv{opacity:.75}
.lockbadge{position:absolute;top:9px;right:9px;font-size:.62rem;font-weight:800;letter-spacing:.3px;background:#160d02;color:var(--amber);border:1px solid var(--amber);border-radius:20px;padding:2px 7px}
.pick.locked{opacity:.6}
.cart-unlock{background:linear-gradient(180deg,color-mix(in srgb,var(--amber) 14%,var(--panel)),var(--panel2));border:1px solid var(--amber);border-radius:14px;padding:14px 16px;margin:0 0 14px;font-size:.92rem;color:var(--ink);display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.cart-unlock .btn-primary{margin-left:auto}

/* compare */
.cart-pickrow{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}
.pick{font-size:.82rem;font-weight:700;padding:6px 11px;border-radius:20px;border:1px solid var(--line2);background:var(--panel);color:var(--ink2);cursor:pointer}
.pick.on{background:var(--amber);color:#160d02;border-color:var(--amber)}
.compare-stage{display:flex;gap:18px;align-items:flex-end;overflow-x:auto;padding:16px 14px 10px;background:#eef1f5;border:1px solid var(--line);border-radius:14px;min-height:200px}
.cmp-ruler{flex:none;position:relative;width:44px;align-self:stretch;border-right:1px dashed #9aa4b0}
.cmp-ruler .tick{position:absolute;right:2px;font:600 10px/1 -apple-system,Arial,sans-serif;color:#5a6673;transform:translateY(-50%)}
.cmp-ruler .tick::after{content:"";position:absolute;right:-2px;top:50%;width:6px;height:1px;background:#9aa4b0}
.cmp-item{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;cursor:pointer}
.cmp-item img{width:auto;display:block;transition:filter .12s}
.cmp-item:hover img{filter:brightness(1.06) drop-shadow(0 2px 6px rgba(0,0,0,.25))}
.cmp-item:hover .lab{color:var(--amber2)}
.cmp-item .lab{margin-top:8px;font-weight:800;font-size:.82rem;color:#1a2129;text-align:center}
.cmp-item .lab small{display:block;color:#5a6673;font-weight:600;font-size:.72rem}
.cmp-empty{color:#5a6673;margin:auto;font-size:.9rem;padding:30px}

/* table */
.cart-main .tw{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.cart-main table{border-collapse:collapse;width:100%;font-size:.85rem;min-width:460px}
.cart-main th,.cart-main td{padding:9px 11px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.cart-main thead th{background:var(--panel2);color:var(--amber2);font-size:.72rem;text-transform:uppercase;letter-spacing:.4px;position:sticky;left:0}
.cart-main tbody th{color:var(--ink2);font-weight:700;background:var(--panel);position:sticky;left:0}
.cart-main thead th.cthx{cursor:pointer;color:var(--amber2)}
.cart-main thead th.cthx:hover{text-decoration:underline}
.cthx-i{opacity:.6;font-size:.85em}

/* bottom: run-in-ballistics actions */
.cart-actions{margin-top:18px;background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.cart-actions .ca-label{font-size:.9rem;color:var(--ink2);font-weight:700;margin-bottom:10px}
.cart-actions .ca-btns{display:flex;flex-wrap:wrap;gap:8px}
.cart-actions .ca-btn{display:inline-flex;align-items:baseline;gap:7px;font-size:.86rem;font-weight:800;padding:9px 13px;border-radius:10px;background:var(--amber);color:#160d02;text-decoration:none;border:1px solid var(--amber)}
.cart-actions .ca-btn:hover{filter:brightness(1.05)}
.cart-actions .ca-btn small{font-weight:600;font-size:.74rem;opacity:.8}
.cart-actions .ca-note{margin-top:9px;font-size:.78rem;color:var(--ink3)}

/* modal */
.cart-modal{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:90;display:flex;align-items:center;justify-content:center;padding:16px}
.cart-modal[hidden]{display:none}
.cart-sheet{background:var(--panel);border:1px solid var(--line);border-radius:18px;max-width:640px;width:100%;max-height:88vh;overflow:auto;position:relative;box-shadow:var(--shadow)}
.cart-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:10px;background:var(--bg2);border:1px solid var(--line2);color:var(--ink);cursor:pointer;font-size:1rem;z-index:2}
.cart-detail{padding:20px}
.cart-detail .top{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}
@media(max-width:520px){.cart-detail .top{grid-template-columns:1fr;text-align:center}}
.cart-detail .top .pic{background:#eef1f5;border-radius:12px;padding:10px;display:flex;align-items:center;justify-content:center}
.cart-detail .top .pic img{max-width:100%;max-height:300px;width:auto}
.cart-detail h2{margin:0 0 2px;font-size:1.5rem}
.cart-detail .full{color:var(--ink2);font-size:.9rem;margin:0 0 6px}
.cart-detail .ct{font-size:.72rem;color:var(--amber2);text-transform:uppercase;letter-spacing:.5px;font-weight:800}
.cart-detail .stat-row{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.cart-detail .stat{flex:1 1 30%;min-width:92px;background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:9px 11px}
.cart-detail .stat .k{font-size:.66rem;text-transform:uppercase;letter-spacing:.5px;color:var(--ink3);font-weight:700}
.cart-detail .stat .v{font-size:1.05rem;font-weight:800;color:var(--amber2)}
.cart-detail p.desc{color:var(--ink);line-height:1.55}
.cart-detail .specs{width:100%;border-collapse:collapse;margin-top:10px;font-size:.86rem}
.cart-detail .specs td{padding:7px 8px;border-bottom:1px solid var(--line)}
.cart-detail .specs td:first-child{color:var(--ink2);width:45%}
.cart-detail .specs td:last-child{color:var(--ink);font-weight:600;text-align:right}
