/* Shared public collection views. Product media retain their original proportions. */
.category-back{display:none}.category-tabs b{font-weight:500}.catalogue-tools>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;cursor:pointer;padding:12px 14px;border:1px solid var(--retro-edge);font-size:14px}.catalogue-tools>summary::after{content:'+';font-size:22px}.catalogue-tools[open]>summary::after{content:'−'}.catalogue-tools>summary>span:first-child{margin-right:auto}#filter-summary{font-size:12px;color:var(--accent)}.catalogue-tools>summary:focus-visible,.dex-legend>summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.dex-legend>summary{cursor:pointer;min-height:24px}.dex-legend p{margin-top:10px}.dex-facts{display:flex;flex-direction:column;gap:4px}.dex-facts b{font-weight:600}
.category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 12px}.category-tabs a,.view-toggle button{border:1px solid #59605b;padding:12px 16px;min-height:44px;font-size:13px;background:#252a27;color:var(--ink)}.category-tabs a[aria-current],.view-toggle button[aria-pressed=true]{border-color:var(--accent);background:#263f38;color:var(--accent)}.category-tabs span{margin-left:8px;font-size:11px;opacity:.8}.category-tabs a:focus-visible,.view-toggle button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.active-filters{font-size:13px;color:var(--muted);line-height:1.7;margin:20px 0}.catalogue-card .card-image>img{object-fit:contain}.catalogue-card h3{font-size:22px;font-weight:500;line-height:1.2;margin-top:8px;overflow-wrap:anywhere}.product-facts{display:grid;grid-template-columns:auto 1fr;gap:14px 22px;padding:24px 0;margin:24px 0;border-block:1px solid var(--line);font-size:14px;line-height:1.5}.product-facts dt{color:var(--muted)}.product-facts dd{margin:0}.project-copy .eyebrow{display:inline-block}.project-copy .preview-copy{margin-top:24px}.related-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.related-heading h2 span{font-size:16px;color:var(--muted);margin-left:8px}
.home-overview-grid{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:24px}.home-overview #sfere{grid-column:auto}.home-overview .sphere-browser{display:block;max-width:none}.home-overview #sfere .sphere-browser{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:14px}.home-overview .sphere-stage{aspect-ratio:4/3}.home-overview #sfere .sphere-stage{aspect-ratio:4/3}.home-overview .sphere-thumbnails{display:flex;align-items:start;gap:10px;overflow-x:auto;max-width:100%;padding:3px 3px 12px;margin-top:12px}.home-overview .sphere-thumbnails button{display:grid;grid-template-rows:78px auto;align-content:start;flex:0 0 110px;min-width:0;min-height:0;height:auto;padding:0;border:2px solid #59605b;background:#252a27}.home-overview .sphere-thumbnails button[aria-pressed=true]{border:2px solid var(--accent)}.home-overview .sphere-thumbnails button img{width:100%;height:100%;min-height:0;object-fit:contain}.home-overview .sphere-thumbnails button>span{display:block;min-width:0;padding:7px 5px;font-size:11px;line-height:1.35;text-align:center;white-space:normal;overflow-wrap:anywhere}.home-overview .sphere-thumbnails b{display:block;margin-top:2px;font-size:11px;font-weight:500;line-height:1.35}.home-overview #sfere .sphere-thumbnails{display:grid;grid-auto-rows:max-content;grid-template-columns:1fr;gap:10px;overflow-y:auto;max-height:440px;margin:0;align-content:start}.home-overview #sfere .sphere-thumbnails button{width:100%}.home-overview .sphere-controls button:disabled{opacity:.3;cursor:default}.home-overview .sphere-selected figcaption{min-height:110px}.home-overview .sphere-controls{width:auto;margin-left:auto;padding-top:0}.home-overview .collection-accessories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:36px}.home-overview .collection-accessories article{padding:20px;border:1px solid var(--line)}.home-overview .collection-accessories p{font-size:13px;color:var(--muted);line-height:1.6;margin-top:12px}.home-overview .collection-accessories h3{font-size:22px}
.dex-results-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0}.view-toggle{display:flex;gap:6px}.dex-grid .dex-tile{position:relative;gap:6px}.dex-grid .dex-tile .dex-number{font-size:12px;letter-spacing:.04em;color:var(--muted)}.dex-model-count{font-size:12px;color:var(--muted)}.dex-tile.has-models .dex-model-count{color:var(--accent)}.dex-grid.dex-list{display:flex;flex-direction:column;gap:6px}.dex-list .dex-tile{display:grid;grid-template-columns:48px 64px minmax(100px,1fr) 120px 100px;align-items:center;text-align:left;padding:8px 20px;gap:16px;min-height:82px}.dex-list .dex-tile img{width:64px;height:64px;grid-row:1;grid-column:2}.dex-list .dex-tile strong{font-size:18px}.species-generation{margin-bottom:16px;color:var(--accent)}.species-identity-slots{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px}.identity-slot.character-slot{text-align:left;flex-direction:row;gap:22px;min-height:210px;padding:24px}.character-slot .identity-media{width:120px;height:120px}.character-slot .identity-media img{max-width:120px;max-height:120px}.identity-slot h1{font-size:clamp(40px,5vw,72px);line-height:1.08;margin:8px 0 16px}.species-number{font-size:15px;letter-spacing:.08em;color:var(--muted)}.sphere-slot{min-height:210px}.sphere-slot .identity-media{width:140px;height:140px;background:#303733}.species-summary{font-size:13px;line-height:1.7;color:var(--muted);margin:20px 0 28px}.type-chips{display:flex;flex-wrap:wrap;gap:12px}.type-chip{display:inline-flex;align-items:center;gap:8px;border:0;padding:0;background:transparent;font-size:13px;color:var(--ink)}.type-chip svg{width:32px;height:32px;border-radius:50%;padding:6px;background:var(--type-color,#717770);color:#fff;box-shadow:inset 0 0 0 1px #ffffff30}.type-chip[data-type=grass]{--type-color:#4a823b}.type-chip[data-type=poison]{--type-color:#8d4b9b}.type-chip[data-type=fire]{--type-color:#b84d2e}.type-chip[data-type=water]{--type-color:#3676b1}.type-chip[data-type=flying]{--type-color:#7569a4}.type-chip[data-type=electric]{--type-color:#97731b}.type-chip[data-type=bug]{--type-color:#6c7d27}.type-chip[data-type=ground]{--type-color:#8c6b3d}.type-chip[data-type=fairy]{--type-color:#a75685}.type-chip[data-type=fighting]{--type-color:#9d3d38}.type-chip[data-type=psychic]{--type-color:#b6406d}.type-chip[data-type=rock]{--type-color:#8d7c43}.type-chip[data-type=steel]{--type-color:#626e7b}.type-chip[data-type=ice]{--type-color:#438c95}.type-chip[data-type=ghost]{--type-color:#64508a}.type-chip[data-type=dragon]{--type-color:#6752b2}.type-chip[data-type=dark]{--type-color:#5a514d}
@media(max-width:1000px){.home-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-overview #sfere{grid-column:1/-1}.home-overview #sfere .sphere-browser{grid-template-columns:minmax(0,1fr) 210px}.home-overview #sfere .sphere-thumbnails{grid-template-columns:repeat(2,minmax(0,1fr));max-height:360px}.home-overview .collection-accessories{grid-template-columns:repeat(2,minmax(0,1fr))}.species-identity-slots{grid-template-columns:1fr}.sphere-slot{min-height:180px}.identity-slot h1{font-size:56px}}
@media(max-width:700px){.category-tabs{gap:6px}.category-tabs a{padding:10px;font-size:12px}.category-tabs span{margin-left:5px}.catalogue-card h3{font-size:18px}.home-overview-grid{grid-template-columns:1fr;gap:32px}.home-overview #sfere .sphere-browser{display:block}.home-overview #sfere .sphere-thumbnails{display:flex;max-height:none;overflow-x:auto;margin-top:12px}.home-overview #sfere .sphere-thumbnails button{flex:0 0 108px;width:108px}.home-overview .sphere-thumbnails button{grid-template-rows:72px auto}.home-overview .sphere-stage,.home-overview #sfere .sphere-stage{aspect-ratio:16/9}.home-overview .sphere-selected figcaption{min-height:110px}.home-overview .collection-accessories{gap:12px}.home-overview .collection-accessories article{padding:16px 12px}.home-overview .collection-accessories h3{font-size:21px}.dex-results-head{align-items:start;flex-direction:column;gap:12px}.view-toggle button{min-width:90px}.dex-list .dex-tile{grid-template-columns:30px 54px minmax(0,1fr) 72px;gap:8px;padding:8px;min-height:80px}.dex-list .dex-tile img{width:54px;height:54px;grid-row:1/3}.dex-list .dex-tile .dex-number{grid-row:1/3}.dex-list .dex-tile strong{font-size:15px;grid-column:3;grid-row:1}.dex-list .dex-model-count{grid-column:4;grid-row:1/3;font-size:11px}.dex-list .dex-sphere{grid-column:3;grid-row:2;font-size:11px}.identity-slot.character-slot{gap:16px;padding:18px 12px;min-height:200px}.character-slot .identity-media{width:80px;height:100px}.character-slot .identity-media img{max-width:96px;max-height:96px}.identity-slot h1{font-size:clamp(31px,8.5vw,48px)}.identity-slot.sphere-slot{flex-direction:row;text-align:left;min-height:150px;padding:18px;gap:18px}.sphere-slot .identity-media{width:100px;height:100px}.identity-slot .eyebrow{font-size:11px}.identity-type,.identity-slot .text-link{font-size:12px}.species-identity-slots{gap:14px}.type-chip{font-size:12px;gap:5px}.type-chip svg{width:28px;height:28px;padding:5px}.type-chips{gap:10px}.species-products .related-heading h2{font-size:28px}.product-facts{font-size:13px;gap:12px}.related-heading .text-link{font-size:12px}}

/* v2.4: compact category entry and one readable mobile Pokédex list. */
.dex-list .dex-tile{grid-template-columns:48px 64px minmax(100px,1fr) 150px}
.dex-list .dex-facts{grid-column:4;text-align:right}
.home-overview .collection-accessories{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:701px){.catalogue-tools>summary{max-width:320px}.catalogue-tools{margin-top:24px}}
@media(max-width:700px){
  .catalogue-main{padding-top:18px}
  .catalogue-intro .eyebrow,.catalogue-intro>p:last-child{display:none}
  .catalogue-intro h1{font-size:34px;margin-bottom:12px}
  .category-back{display:flex;align-items:center;min-height:44px;width:fit-content;font-size:13px;color:var(--accent);margin-bottom:10px}
  .category-tabs{display:none}
  .catalogue-main[data-categories=true] .category-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 18px}
  .catalogue-main[data-categories=true] .category-tabs a{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:14px 12px;min-height:88px;min-width:0}
  .catalogue-main[data-categories=true] .category-tabs b{font-size:19px}
  .catalogue-main[data-categories=true] .category-tabs span{font-size:12px;margin:0;color:var(--muted)}
  .catalogue-main[data-categories=true] .category-tabs a:last-child{grid-column:1/-1;min-height:64px;flex-direction:row;justify-content:space-between;align-items:center}
  .catalogue-main[data-categories=true] .category-back,.catalogue-main[data-categories=true] .results-head,.catalogue-main[data-categories=true] #catalogue-grid{display:none}
  .catalogue-tools{margin:0 0 16px}
  .catalogue-tools .catalogue-filters{margin-top:16px}
  .catalogue-tools .filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .catalogue-tools .filter-row>label:first-child{grid-column:1/-1}
  .catalogue-tools .catalogue-filters input,.catalogue-tools .catalogue-filters select{font-size:16px}
  .catalogue-tools .reset-filters{grid-column:1/-1;text-align:left}
  .catalogue-main .active-filters{display:none}
  .catalogue-main .results-head{margin:12px 0}
  .catalogue-main .results-head>p{font-size:12px;line-height:1.4}
  .catalogue-main #catalogue-grid{margin-top:18px}
  .home-overview .collection-accessories{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pokedex-heading{margin-bottom:16px}
  .pokedex-heading h1{font-size:34px;line-height:1.1;margin:8px 0 12px}
  .pokedex-heading .eyebrow{display:none}
  .pokedex-heading p{font-size:14px}
  .dex-legend{padding:10px 12px;margin-bottom:16px;font-size:12px}
  .dex-controls{gap:12px;margin:16px 0}
  .dex-controls label{min-width:0;flex-basis:100%;gap:5px}
  .dex-controls input,.dex-controls select{font-size:16px;padding:10px;min-height:44px}
  .dex-results-head{margin:14px 0;gap:0;font-size:12px}
  .dex-results-head .view-toggle{display:none}
  .dex-grid.dex-list{margin-top:12px}
  .dex-list .dex-tile{grid-template-columns:24px 72px minmax(0,1fr) 76px;gap:6px;padding:8px;min-height:88px}
  .dex-list .dex-tile .dex-number{grid-column:1;grid-row:1;font-size:11px}
  .dex-list .dex-tile img{grid-column:2;grid-row:1;width:72px;height:72px}
  .dex-list .dex-tile>strong{grid-column:3;grid-row:1;font-size:18px;line-height:1.2;text-align:center;letter-spacing:-.02em}
  .dex-list .dex-facts{grid-column:4;grid-row:1;gap:5px;text-align:right;min-width:0}
  .dex-list .dex-facts .dex-model-count{font-size:11px;line-height:1.3}
  .dex-list .dex-facts .dex-model-count b{font-size:18px}
  .dex-list .dex-facts .dex-sphere{font-size:10px;line-height:1.3}
}
