.jd-discover{padding:2.8rem 0 1.8rem;background:radial-gradient(ellipse at 0 0,#fbe6d955,transparent 60%),radial-gradient(ellipse at 100% 35%,#d4eee955,transparent 60%)}
.jd-discover .jd-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.3rem}.jd-heading h2{font-size:clamp(1.65rem,3vw,2.2rem);letter-spacing:-.055em;margin:.25rem 0}.jd-heading p{margin:.3rem 0;color:var(--muted)}
.jd-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3.6rem)/4);gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:0 0 1rem}.jd-card{position:relative;min-width:0;scroll-snap-align:start}.jd-photo{position:relative;display:block;width:100%;padding:0;border:0;background:var(--line);border-radius:22px;overflow:hidden;aspect-ratio:1.45;cursor:pointer}.jd-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.jd-photo:hover img{transform:scale(1.045)}.jd-photo.jd-logo img{object-fit:contain;padding:1.5rem;box-sizing:border-box;background:var(--card,#fff)}
.jd-tag{position:absolute;left:12px;top:12px;border-radius:30px;background:#fffffff0;color:#183a35;padding:.4rem .65rem;font-size:.76rem;font-weight:750;box-shadow:0 2px 12px #0001}.jd-image-label{position:absolute;bottom:10px;left:12px;background:#152b37b8;color:white;padding:.2rem .45rem;border-radius:5px;font-size:.65rem}.jd-save{position:absolute;right:12px;top:12px;background:#17233270;color:white;border:1px solid #ffffff77;border-radius:50%;width:36px;height:36px;font-size:1.25rem;cursor:pointer}.jd-save[aria-pressed=true]{background:#fff;color:#b54252}.jd-card-title{display:flex;gap:.5rem;justify-content:space-between;align-items:start;margin-top:.85rem}.jd-name{border:0;background:none;color:var(--ink);font:inherit;font-weight:750;text-align:left;padding:0;cursor:pointer;line-height:1.35}.jd-score{white-space:nowrap;font-size:.9rem;font-weight:700;color:var(--ink)}.jd-score i{font-style:normal;color:#e6a211}.jd-meta{color:var(--muted);font-size:.85rem;line-height:1.6;margin:.35rem 0}.jd-kind{display:inline-block;border:1px solid var(--line);border-radius:6px;padding:.15rem .4rem;font-size:.7rem;color:var(--muted)}.jd-discovery-row+.jd-discovery-row{margin-top:2rem}.jd-controls{display:flex;gap:.5rem;align-items:center}.jd-arrow{border:1px solid var(--line);background:var(--card,#fff);color:var(--ink);border-radius:50%;width:38px;height:38px;cursor:pointer}.jd-category-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin-top:1.3rem}.jd-category{position:relative;aspect-ratio:.9;overflow:hidden;border:0;border-radius:20px;padding:0;cursor:pointer;background:#23433c;color:white;text-align:left}.jd-category img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.jd-category:hover img{transform:scale(1.05)}.jd-category:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,#12241fe6)}.jd-category span{position:absolute;bottom:1rem;left:1rem;right:.7rem;z-index:1;font-weight:750;line-height:1.2}.jd-category small{display:block;font-size:.7rem;font-weight:400;margin-top:.3rem}.jd-note{font-size:.78rem;color:var(--muted);margin:.7rem 0}.jd-empty{border:1px dashed var(--line);padding:1rem;border-radius:14px;color:var(--muted)}
@media(max-width:1000px){.jd-rail{grid-auto-columns:calc((100% - 2.4rem)/3)}.jd-category-row{grid-template-columns:repeat(3,minmax(0,1fr))}.jd-category{aspect-ratio:1.4}}
@media(max-width:600px){.jd-discover{padding-top:1.8rem}.jd-rail{grid-auto-columns:82%;gap:1rem}.jd-heading{align-items:start!important}.jd-controls{flex-wrap:wrap;justify-content:end}.jd-arrow{display:none}.jd-category-row{gap:.65rem;grid-template-columns:repeat(2,minmax(0,1fr))}.jd-category{aspect-ratio:1.25}.jd-heading p{font-size:.85rem}.jd-heading .linkbtn{white-space:nowrap}.jd-photo{border-radius:18px}}
@media(prefers-reduced-motion:reduce){.jd-photo img,.jd-category img{transition:none}}

/* Uncluttered imagery: source caption stays outside the photograph. */
.jd-card>.jd-image-label{position:static;display:block;background:none;color:var(--muted,#64748b);padding:0;margin:7px 1px 0;text-align:right;font-size:10px;line-height:1.3;border-radius:0}
.jd-card-title{margin-top:6px}.jd-save{background:#ffffffeb;color:#273b42;border:1px solid #ffffffcc;box-shadow:0 2px 10px #1a29321a}.jd-save:hover{background:white;transform:scale(1.04)}
