.kl-card-list { color: #263445; padding: 16px 0 32px; }
.kl-card-list-header { display: grid; grid-template-columns: minmax(0,1fr) 240px; gap: 30px; align-items: center; padding-bottom: 28px; border-bottom: 1px solid #dce2e7; }
.kl-card-list h1 { font-size: clamp(26px,3vw,38px); line-height: 1.2; text-transform: none; margin: 14px 0; }
.kl-card-list p { line-height: 1.65; max-width: 80ch; }
.kl-card-back, .kl-card-credit a { text-decoration: underline; }
.kl-card-set-logo { width: 100%; height: auto; max-height: 140px; object-fit: contain; }
.kl-card-jumps { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 16px; }
.kl-card-jumps a { display: inline-flex; align-items: center; padding: 5px 9px; max-width: 100%; border: 1px solid #cdd5dc; border-radius: 4px; color: #263445; font-size: 13px; line-height: 1.35; font-weight: 600; }
.kl-card-jumps a:hover { background: #f2f3f4; color: #263445; border-color: #8c8c8c; }
.kl-card-jumps a.kl-card-shop-link { background: #e60012; color: #fff; border-color: #e60012; }
.kl-card-jumps a.kl-card-shop-link:hover { background: #bd000f; color: #fff; border-color: #bd000f; }
.kl-card-rarity { display: block; font-size: 12px; color: #52606d; margin: 2px 0; }
.kl-card-search { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 24px 0 0; }
.kl-card-search label { margin: 0; font-weight: 600; }
.kl-card-search input { flex: 1 1 220px; max-width: 420px; min-height: 44px; padding: 10px 12px; border: 1px solid #9da8b3; border-radius: 4px; }
.kl-card-search output { color: #52606d; }
.kl-card-group { scroll-margin-top: 125px; margin-top: 35px; }
.kl-card-group h2 { font-size: 25px; text-transform: none; margin-bottom: 22px; }
.kl-card-group h2 span { font-size: 18px; font-weight: 400; color: #52606d; }
.kl-card-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 24px 16px; list-style: none; padding: 0; margin: 0; }
.kl-card-grid li { min-width: 0; }
.kl-card-zoom { display: block; color: #263445; text-align: center; border-radius: 5px; }
.kl-card-zoom img { display: block; width: 100%; height: auto; aspect-ratio: 245/337; object-fit: contain; border-radius: 5px; background: #f2f5f7; }
.kl-card-zoom:hover { color: #b3000e; }
.kl-card-number { display: block; font-weight: 600; font-variant-numeric: tabular-nums; padding-top: 8px; }
.kl-card-name { display: block; font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.kl-card-name-de { display: block; font-size: 12px; line-height: 1.4; color: #52606d; overflow-wrap: anywhere; }
.kl-card-credit { margin-top: 40px; font-size: 13px; color: #52606d; }
.kl-card-list [hidden] { display: none !important; }
.kl-card-list :is(a,button,input):focus-visible { outline: 3px solid #e60012; outline-offset: 4px; }
.kl-card-dialog { width: min(94vw,650px); max-height: 94dvh; padding: 16px; border: 0; border-radius: 8px; color: #263445; background: white; overflow: auto; }
.kl-card-dialog::backdrop { background: rgba(0,0,0,.78); }
.kl-card-dialog > img { display: block; width: auto; max-width: 100%; height: min(69dvh,825px); object-fit: contain; margin: 8px auto; }
.kl-card-dialog button { background: #fff; color: #263445; border: 1px solid #aab4bd; border-radius: 4px; padding: 10px 14px; min-height: 44px; cursor: pointer; }
.kl-card-close { display: block; margin-left: auto; }
.kl-card-caption { text-align: center; margin: 10px 0; }
.kl-card-dialog-nav { display: flex; justify-content: space-between; gap: 10px; }
@media(max-width:1199px) { .kl-card-grid { grid-template-columns: repeat(4,minmax(0,1fr)); } }
@media(max-width:767px) { .kl-card-list-header { grid-template-columns: 1fr; gap: 16px; } .kl-card-set-logo { grid-row: 1; max-width: 190px; max-height: 75px; } .kl-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px 12px; } }
@media(max-width:479px) { .kl-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }

.kl-card-variant-note { font-size:13px; color:#52606d; }
.kl-card-set-info,.kl-card-other-lists { margin-top:36px; }
.kl-card-set-info h2,.kl-card-other-lists h2 { font-size:24px; text-transform:none; }
.kl-card-other-lists ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px 20px; list-style:none; padding:0; }
.kl-card-other-lists a,.kl-card-set-info a { color:#b9000e; text-decoration:underline; }
.kl-card-grid li { scroll-margin-top:125px; }
@media(max-width:767px) { .kl-card-other-lists ul { grid-template-columns:1fr; } }
