/*
 * ChampiDex Pokémon Explorer P1.1
 * Page-scoped presentation only. No Builder, global layout, or data behavior.
 */

.pokemon-explorer-page,
.pokemon-detail-page {
    padding-top: clamp(1.5rem, 4vw, 3rem);
    padding-bottom: clamp(2.5rem, 6vw, 5rem);
    color: var(--ink, #0b1734);
}

.pokemon-explorer-page .pokemon-page-hero {
    padding: clamp(1.35rem, 4vw, 2.5rem);
    margin-bottom: 1.5rem;
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 24px;
    background: linear-gradient(135deg, #fff 0%, #fff 58%, #f3f5ff 100%);
    box-shadow: 0 10px 32px rgba(17, 36, 79, .055);
}

.pokemon-explorer-page .pokemon-eyebrow,
.pokemon-detail-page .pokemon-eyebrow {
    margin: 0 0 .65rem;
    color: #6554bd;
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .12em;
    line-height: 1.4;
    text-transform: uppercase;
}

.pokemon-explorer-page .pokemon-page-hero h1,
.pokemon-detail-page .pokemon-detail-hero h1 {
    margin: 0;
    color: var(--ink, #0b1734);
    font-size: clamp(2.15rem, 5vw, 3.8rem);
    line-height: 1.04;
    letter-spacing: -.045em;
}

.pokemon-explorer-page .pokemon-hero-copy {
    max-width: 720px;
    margin: 1rem 0 0;
    color: #56627a;
    font-size: clamp(1rem, 1.8vw, 1.13rem);
    line-height: 1.65;
}

.pokemon-hero-actions,
.pokemon-detail-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
    margin-top: 1.35rem;
}

.pokemon-explorer-page .pokemon-hero-actions .button,
.pokemon-detail-actions .button,
.pokemon-empty-state .button {
    min-height: 44px;
    width: auto;
    border-radius: 12px;
}

.pokemon-explorer-page .pokemon-hero-actions .button.secondary,
.pokemon-detail-actions .button.secondary,
.pokemon-empty-state .button.secondary {
    border: 1px solid var(--line, #e6eaf2);
    background: #fff;
    color: #35435e;
}

.pokemon-overview,
.pokemon-explorer-section,
.pokemon-detail-section {
    margin-top: 1.75rem;
}

.pokemon-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.25rem;
    margin-bottom: 1rem;
}

.pokemon-section-heading .pokemon-eyebrow {
    margin-bottom: .35rem;
}

.pokemon-explorer-page .pokemon-section-heading h2,
.pokemon-detail-page .pokemon-section-heading h2 {
    margin: 0;
    color: var(--ink, #0b1734);
    font-size: clamp(1.45rem, 3vw, 2rem);
    line-height: 1.17;
    letter-spacing: -.035em;
}

.pokemon-section-heading > p {
    max-width: 460px;
    margin: 0;
    color: var(--muted, #68728a);
    font-size: .92rem;
    line-height: 1.6;
}

.pokemon-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
}

.pokemon-stat-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: .45rem;
    padding: 1.15rem 1.25rem;
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 16px;
    background: #fff;
}

.pokemon-stat-card span {
    color: var(--muted, #68728a);
    font-size: .82rem;
    font-weight: 650;
}

.pokemon-stat-card strong {
    color: var(--ink, #0b1734);
    font-size: clamp(1.65rem, 3vw, 2.15rem);
    line-height: 1.05;
    letter-spacing: -.035em;
    font-variant-numeric: tabular-nums;
}

.pokemon-type-summary {
    margin-top: .85rem;
    padding: .95rem 1.1rem;
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 14px;
    background: rgba(255, 255, 255, .8);
}

.pokemon-type-summary > summary {
    color: #33415f;
    cursor: pointer;
    font-weight: 750;
}

.pokemon-type-summary > p {
    margin: .75rem 0;
    color: var(--muted, #68728a);
    font-size: .9rem;
}

.pokemon-type-count-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
    gap: .45rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pokemon-type-count-grid li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    padding: .55rem .7rem;
    border-radius: 9px;
    background: #f6f7fc;
    font-size: .85rem;
}

.pokemon-type-count-grid strong {
    color: #4f46a5;
    font-variant-numeric: tabular-nums;
}

.pokemon-filter-form {
    display: grid;
    grid-template-columns: minmax(220px, 1.8fr) repeat(3, minmax(130px, 1fr));
    gap: .85rem;
    align-items: end;
    padding: 1.1rem;
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(17, 36, 79, .045);
}

.pokemon-filter-field {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: .4rem;
}

.pokemon-filter-field label {
    color: #33415f;
    font-size: .8rem;
    font-weight: 800;
}

.pokemon-filter-field input,
.pokemon-filter-field select {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: .65rem .75rem;
    border: 1px solid #d9dfeb;
    border-radius: 11px;
    background: #fff;
    color: var(--ink, #0b1734);
    font-size: .94rem;
}

.pokemon-filter-field input::placeholder {
    color: #8a93a6;
}

.pokemon-filter-field input:focus-visible,
.pokemon-filter-field select:focus-visible {
    border-color: #7464d4;
    outline: 3px solid rgba(116, 100, 212, .17);
    outline-offset: 1px;
}

.pokemon-filter-actions {
    display: flex;
    grid-column: 1 / -1;
    flex-wrap: wrap;
    align-items: center;
    gap: .7rem;
    padding-top: .15rem;
}

.pokemon-filter-actions .pokemon-submit {
    min-height: 44px;
    padding: .7rem 1.1rem;
    border: 0;
    border-radius: 11px;
    background: linear-gradient(110deg, var(--blue, #1677ff), var(--purple, #7a50dc));
    color: #fff;
    font-size: .92rem;
    font-weight: 800;
    cursor: pointer;
}

.pokemon-filter-actions .pokemon-submit:hover {
    filter: brightness(1.04);
}

.pokemon-filter-actions .pokemon-submit:focus-visible,
.pokemon-clear:focus-visible,
.pokemon-result-name:focus-visible,
.pokemon-result-link:focus-visible {
    outline: 3px solid rgba(22, 119, 255, .35);
    outline-offset: 3px;
}

.pokemon-filter-actions .pokemon-clear {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    padding: .55rem .8rem;
    border-radius: 10px;
    color: #4e48a3;
    font-size: .9rem;
    font-weight: 750;
    text-decoration: none;
}

.pokemon-filter-actions .pokemon-clear:hover {
    background: #f3f2ff;
}

.pokemon-result-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin: 1.5rem 0 .8rem;
}

.pokemon-result-heading p {
    margin: 0;
    color: #394660;
    font-size: .93rem;
}

.pokemon-result-heading > span {
    color: var(--muted, #68728a);
    font-size: .82rem;
    font-variant-numeric: tabular-nums;
    text-align: right;
}

.pokemon-results {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pokemon-result-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 1rem 1.1rem;
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(17, 36, 79, .035);
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.pokemon-result-card:hover {
    border-color: #cbc9f0;
    box-shadow: 0 9px 24px rgba(40, 46, 95, .075);
    transform: translateY(-1px);
}

.pokemon-result-title-row,
.pokemon-result-footer,
.pokemon-form-card-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .65rem;
}

.pokemon-result-name {
    color: var(--ink, #0b1734);
    font-size: 1.08rem;
    font-weight: 850;
    line-height: 1.3;
    overflow-wrap: anywhere;
    text-decoration: none;
}

.pokemon-result-name:hover {
    color: #5045ac;
}

.pokemon-generation-tag {
    flex: 0 0 auto;
    padding: .25rem .45rem;
    border-radius: 7px;
    background: #f0f3fa;
    color: #5a657e;
    font-size: .68rem;
    font-weight: 750;
}

.pokemon-result-types,
.pokemon-detail-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.pokemon-result-types {
    margin-top: .85rem;
}

.pokemon-result-types span {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: .28rem .55rem;
    border: 1px solid #e3e7f1;
    border-radius: 999px;
    background: #f7f8fc;
    color: #414d67;
    font-size: .75rem;
    font-weight: 750;
    line-height: 1.2;
}

.pokemon-result-footer {
    align-items: center;
    margin-top: 1rem;
    color: var(--muted, #68728a);
    font-size: .78rem;
}

.pokemon-category-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .3rem;
}

.pokemon-category-tags span,
.pokemon-detail-tags span,
.pokemon-default-tag {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: .25rem .55rem;
    border: 1px solid #ddd9fa;
    border-radius: 999px;
    background: #f5f3ff;
    color: #5b4cab;
    font-size: .72rem;
    font-weight: 800;
}

.pokemon-result-link {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    gap: .35rem;
    margin-top: .9rem;
    padding-top: .65rem;
    border-top: 1px solid #edf0f5;
    color: #5147ad;
    font-size: .85rem;
    font-weight: 800;
    text-decoration: none;
}

.pokemon-result-link span {
    transition: transform .15s ease;
}

.pokemon-result-link:hover span {
    transform: translateX(3px);
}

.pokemon-empty-state {
    padding: 2rem 1.2rem;
    border: 1px dashed #cbd2e1;
    border-radius: 16px;
    background: rgba(255, 255, 255, .75);
    text-align: center;
}

.pokemon-empty-state h3 {
    margin: 0;
    font-size: 1.25rem;
}

.pokemon-empty-state p {
    color: var(--muted, #68728a);
}

.pokemon-empty-state .button {
    display: inline-flex;
    margin-top: .25rem;
}

.pokemon-pagination {
    margin-top: 1.25rem;
    overflow-wrap: anywhere;
}

.pokemon-explorer-page nav[role="navigation"] {
    color: #46516a;
    font-size: .9rem;
}

.pokemon-explorer-page nav[role="navigation"] a,
.pokemon-explorer-page nav[role="navigation"] span[aria-current="page"] {
    border-radius: 8px;
}

.pokemon-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .6rem;
    margin-bottom: 1.5rem;
    color: var(--muted, #68728a);
    font-size: .86rem;
}

.pokemon-breadcrumbs a {
    color: #5147ad;
    font-weight: 750;
    text-decoration: none;
}

.pokemon-breadcrumbs a:hover {
    text-decoration: underline;
}

.pokemon-detail-hero {
    padding: clamp(1.35rem, 4vw, 2.5rem);
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 22px;
    background: linear-gradient(135deg, #fff 0%, #fff 65%, #f3f5ff 100%);
    box-shadow: 0 10px 30px rgba(17, 36, 79, .045);
}

.pokemon-detail-hero > p:not(.pokemon-eyebrow) {
    max-width: 700px;
    margin: .85rem 0 0;
    color: #56627a;
    line-height: 1.65;
}

.pokemon-detail-tags {
    margin-top: 1rem;
}

.pokemon-facts-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
    margin: 0;
}

.pokemon-facts-grid > div {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 14px;
    background: #fff;
}

.pokemon-facts-grid dt {
    color: var(--muted, #68728a);
    font-size: .78rem;
    font-weight: 700;
}

.pokemon-facts-grid dd {
    margin: .45rem 0 0;
    color: var(--ink, #0b1734);
    font-size: 1.05rem;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.pokemon-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.pokemon-form-card {
    min-width: 0;
    padding: 1.1rem;
    border: 1px solid var(--line, #e6eaf2);
    border-radius: 16px;
    background: #fff;
}

.pokemon-form-card-heading {
    align-items: center;
    flex-wrap: wrap;
}

.pokemon-detail-page .pokemon-form-card h3 {
    margin: 0;
    color: var(--ink, #0b1734);
    font-size: 1.15rem;
    overflow-wrap: anywhere;
}

.pokemon-form-id {
    margin: .55rem 0 0;
    color: var(--muted, #68728a);
    font-size: .78rem;
    overflow-wrap: anywhere;
}

.pokemon-form-weight {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: .75rem;
    margin: 1rem 0 0;
    padding-top: .75rem;
    border-top: 1px solid #edf0f5;
    font-size: .84rem;
}

.pokemon-form-weight span {
    color: var(--muted, #68728a);
}

.pokemon-form-weight strong {
    color: var(--ink, #0b1734);
    font-variant-numeric: tabular-nums;
}

.pokemon-detail-actions {
    justify-content: space-between;
    margin-top: 1.5rem;
}

@media (max-width: 820px) {
    .pokemon-filter-form {
        grid-template-columns: minmax(0, 1fr) repeat(2, minmax(0, 1fr));
    }

    .pokemon-filter-search {
        grid-column: 1 / -1;
    }

    .pokemon-results,
    .pokemon-form-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .pokemon-facts-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .pokemon-explorer-page,
    .pokemon-detail-page {
        padding-top: 1.1rem;
        padding-bottom: 2.5rem;
    }

    .pokemon-explorer-page .pokemon-page-hero,
    .pokemon-detail-hero {
        padding: 1.2rem;
        border-radius: 17px;
    }

    .pokemon-hero-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .pokemon-explorer-page .pokemon-hero-actions .button {
        width: 100%;
    }

    .pokemon-section-heading {
        display: block;
    }

    .pokemon-section-heading > p {
        margin-top: .55rem;
    }

    .pokemon-stats-grid {
        gap: .5rem;
    }

    .pokemon-stat-card {
        padding: .8rem .7rem;
        border-radius: 12px;
    }

    .pokemon-stat-card span {
        font-size: .72rem;
        line-height: 1.35;
    }

    .pokemon-stat-card strong {
        font-size: 1.45rem;
    }

    .pokemon-filter-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .75rem;
        padding: .8rem;
        border-radius: 15px;
    }

    .pokemon-filter-search,
    .pokemon-filter-actions {
        grid-column: 1 / -1;
    }

    .pokemon-filter-field input,
    .pokemon-filter-field select {
        min-height: 44px;
        padding: .6rem;
        font-size: .88rem;
    }

    .pokemon-filter-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .4rem;
    }

    .pokemon-filter-actions .pokemon-submit {
        padding-inline: .65rem;
        font-size: .86rem;
    }

    .pokemon-filter-actions .pokemon-clear {
        justify-content: center;
        padding-inline: .5rem;
        font-size: .82rem;
    }

    .pokemon-result-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: .3rem;
        margin-top: 1.15rem;
    }

    .pokemon-result-heading > span {
        text-align: left;
    }

    .pokemon-result-card {
        padding: .95rem;
        border-radius: 14px;
    }

    .pokemon-result-title-row {
        flex-wrap: wrap;
    }

    .pokemon-result-footer {
        flex-wrap: wrap;
    }

    .pokemon-facts-grid {
        gap: .55rem;
    }

    .pokemon-facts-grid > div {
        padding: .8rem;
    }

    .pokemon-detail-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .pokemon-detail-actions .button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pokemon-result-card,
    .pokemon-result-link span {
        transition: none;
    }

    .pokemon-result-card:hover {
        transform: none;
    }
}


/* P1.1 pagination: explicit responsive styles, independent of Tailwind utilities. */
.pokemon-pagination-nav {
    margin-top: 1.25rem;
    color: #46516a;
    font-size: .9rem;
}

.pokemon-pagination-mobile {
    display: none;
}

.pokemon-pagination-desktop {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}

.pokemon-pagination-nav .pokemon-page-control,
.pokemon-pagination-nav .pokemon-page-number {
    display: inline-flex;
    min-width: 40px;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    padding: .5rem .75rem;
    border: 1px solid #e0e5ef;
    border-radius: 10px;
    background: #fff;
    color: #35435e;
    font-size: .87rem;
    font-weight: 750;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
}

.pokemon-pagination-nav .pokemon-page-control {
    padding-inline: .9rem;
}

.pokemon-pagination-nav a:hover {
    border-color: #c9c5f0;
    background: #f5f3ff;
    color: #5147ad;
}

.pokemon-pagination-nav a:focus-visible {
    outline: 3px solid rgba(22, 119, 255, .35);
    outline-offset: 2px;
}

.pokemon-pagination-nav .pokemon-page-number.is-current {
    border-color: #5e50bc;
    background: #5e50bc;
    color: #fff;
}

.pokemon-pagination-nav .pokemon-page-control.is-disabled {
    border-color: #e8ebf2;
    background: #f6f7fa;
    color: #9aa2b2;
}

.pokemon-pagination-nav .pokemon-page-ellipsis {
    display: inline-flex;
    min-width: 24px;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    color: #788299;
}

@media (max-width: 600px) {
    .pokemon-pagination-mobile {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: .5rem;
    }

    .pokemon-pagination-desktop {
        display: none;
    }

    .pokemon-pagination-mobile .pokemon-page-control {
        min-width: 0;
        flex: 1 1 0;
        padding-inline: .65rem;
    }

    .pokemon-pagination-mobile .pokemon-page-status {
        flex: 0 0 auto;
        color: #56627a;
        font-size: .8rem;
        font-weight: 750;
        font-variant-numeric: tabular-nums;
        text-align: center;
        white-space: nowrap;
    }
}

/* POKEMON_RICH_CARDS_STYLES_START */
.pokemon-detail-hero-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(145px, 220px);
    align-items: center;
    gap: clamp(1rem, 3vw, 2rem);
}

.pokemon-detail-hero-copy {
    min-width: 0;
}

.pokemon-detail-hero-art {
    display: grid;
    place-items: center;
    min-width: 0;
    padding: .5rem;
    border: 1px solid #e0e5ff;
    border-radius: 20px;
    background:
        radial-gradient(circle at 50% 42%, rgba(174, 164, 255, .35), transparent 68%),
        linear-gradient(145deg, #f5f5ff, #edf8ff);
}

.pokemon-detail-hero-art img {
    display: block;
    width: 100%;
    max-width: 210px;
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
}

.pokemon-form-art {
    display: grid;
    place-items: center;
    min-height: 120px;
    margin: .8rem 0;
    padding: .5rem;
    overflow: hidden;
    border: 1px solid #e7eaff;
    border-radius: 15px;
    background:
        radial-gradient(circle at 50% 40%, rgba(121, 113, 255, .14), transparent 66%),
        linear-gradient(135deg, #fafaff, #f1f8ff);
}

.pokemon-form-sprite {
    display: block;
    width: 112px;
    max-width: 100%;
    height: 112px;
    object-fit: contain;
}

.pokemon-rich-section-heading {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: .4rem .8rem;
    margin-bottom: .65rem;
}

.pokemon-rich-section-heading h4 {
    margin: 0;
    color: var(--ink, #0b1734);
    font-size: .94rem;
    font-weight: 850;
}

.pokemon-rich-section-heading > span {
    color: var(--muted, #68728a);
    font-size: .75rem;
}

.pokemon-radar-panel,
.pokemon-ability-panel {
    min-width: 0;
    margin-top: 1.1rem;
    padding-top: .9rem;
    border-top: 1px solid #edf0f8;
}

.pokemon-radar-chart {
    display: block;
    width: 100%;
    max-width: 440px;
    height: auto;
    margin: .4rem auto .75rem;
    overflow: visible;
}

.pokemon-radar-ring {
    fill: none;
    stroke: #e2e6f2;
    stroke-width: 1;
}

.pokemon-radar-axis {
    stroke: #d7dced;
    stroke-width: 1;
}

.pokemon-radar-label {
    fill: #45405f;
    font-family: inherit;
    font-size: 11px;
    font-weight: 800;
}


.pokemon-radar-value-label {
    fill: #31266f;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}
.pokemon-radar-total {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: .45rem;
    margin: .2rem 0 .4rem;
    color: #626c85;
    font-size: .85rem;
}
.pokemon-radar-total strong {
    color: #31266f;
    font-size: 1rem;
    font-variant-numeric: tabular-nums;
}

.pokemon-radar-area {
    fill: rgba(105, 82, 226, .21);
    stroke: #6b55df;
    stroke-width: 2;
    stroke-linejoin: round;
}

.pokemon-radar-values {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .4rem;
}

.pokemon-radar-value {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .3rem;
    min-width: 0;
    padding: .45rem .5rem;
    border: 1px solid #e7eafa;
    border-radius: 9px;
    background: #f8f9ff;
    font-size: .75rem;
}

.pokemon-radar-value span {
    color: #626c85;
    overflow-wrap: anywhere;
}

.pokemon-radar-value strong {
    color: #31266f;
    font-variant-numeric: tabular-nums;
}

.pokemon-ability-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 145px), 1fr));
    gap: .55rem;
}

.pokemon-ability-card {
    min-width: 0;
    padding: .75rem;
    border: 1px solid #e1e6fb;
    border-radius: 12px;
    background: linear-gradient(145deg, #fbfaff, #f1f6ff);
}

.pokemon-ability-heading {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: .4rem;
    color: #252357;
    font-size: .86rem;
    overflow-wrap: anywhere;
}

.pokemon-ability-badge {
    padding: .2rem .4rem;
    border-radius: 999px;
    background: #fce8f2;
    color: #982858;
    font-size: .65rem;
    font-weight: 800;
}

.pokemon-ability-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    margin-top: .5rem;
}

.pokemon-ability-meta span {
    padding: .2rem .4rem;
    border-radius: 6px;
    background: #e9edfb;
    color: #4d5675;
    font-size: .68rem;
}

.pokemon-learnset-section {
    margin-top: 1.3rem;
}

.pokemon-learnset-note {
    margin: .5rem 0 .9rem;
    color: var(--muted, #68728a);
    font-size: .87rem;
    line-height: 1.6;
}

.pokemon-learnset-details {
    overflow: hidden;
    border: 1px solid #dfe5f5;
    border-radius: 15px;
    background: #fff;
}

.pokemon-learnset-details > summary {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    padding: .95rem 1rem;
    background: linear-gradient(110deg, #f1f0ff, #edf8ff);
    color: #252451;
    font-weight: 800;
    cursor: pointer;
    list-style-position: inside;
}

.pokemon-learnset-details > summary::marker {
    color: #7160d8;
}

.pokemon-learnset-details > summary strong {
    padding: .25rem .55rem;
    border-radius: 999px;
    background: #fff;
    color: #5144b0;
    font-size: .75rem;
}

.pokemon-move-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
    gap: .7rem;
    padding: .8rem;
}

.pokemon-move-card {
    min-width: 0;
    padding: .8rem;
    border: 1px solid #e5e9f4;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 3px 10px rgba(32, 45, 90, .035);
}

.pokemon-move-heading {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .4rem;
}

.pokemon-move-heading > strong {
    min-width: 0;
    color: #192446;
    font-size: .86rem;
    overflow-wrap: anywhere;
}

.pokemon-move-type {
    display: inline-flex;
    align-items: center;
    padding: .23rem .5rem;
    border-radius: 999px;
    background: var(--move-type-bg, #e9edf5);
    color: var(--move-type-fg, #3c4862);
    font-size: .68rem;
    font-weight: 850;
}

.pokemon-move-type--normal { --move-type-bg: #e8e8db; --move-type-fg: #5b5b41; }
.pokemon-move-type--fire { --move-type-bg: #ffe0d5; --move-type-fg: #9c3c20; }
.pokemon-move-type--water { --move-type-bg: #dcecff; --move-type-fg: #20569c; }
.pokemon-move-type--electric { --move-type-bg: #fff3b8; --move-type-fg: #735900; }
.pokemon-move-type--grass { --move-type-bg: #dcf5d9; --move-type-fg: #286c36; }
.pokemon-move-type--ice { --move-type-bg: #d8f6f5; --move-type-fg: #216a70; }
.pokemon-move-type--fighting { --move-type-bg: #f8dcdc; --move-type-fg: #8d2828; }
.pokemon-move-type--poison { --move-type-bg: #f1dafa; --move-type-fg: #74318c; }
.pokemon-move-type--ground { --move-type-bg: #f4e3c9; --move-type-fg: #79542c; }
.pokemon-move-type--flying { --move-type-bg: #e7e3ff; --move-type-fg: #514a9c; }
.pokemon-move-type--psychic { --move-type-bg: #ffdeeb; --move-type-fg: #9b3565; }
.pokemon-move-type--bug { --move-type-bg: #eff5c9; --move-type-fg: #5c6b20; }
.pokemon-move-type--rock { --move-type-bg: #ebe2c7; --move-type-fg: #6b5c32; }
.pokemon-move-type--ghost { --move-type-bg: #e1defa; --move-type-fg: #514784; }
.pokemon-move-type--dragon { --move-type-bg: #dfddff; --move-type-fg: #4139a0; }
.pokemon-move-type--dark { --move-type-bg: #e5e0df; --move-type-fg: #48403e; }
.pokemon-move-type--steel { --move-type-bg: #e3e9f4; --move-type-fg: #4f5b70; }
.pokemon-move-type--fairy { --move-type-bg: #ffe2f2; --move-type-fg: #993e74; }

.pokemon-move-category {
    margin: .5rem 0 .7rem;
    color: #68728b;
    font-size: .74rem;
}

.pokemon-move-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .45rem;
    margin: 0;
}

.pokemon-move-facts > div {
    min-width: 0;
    padding: .4rem;
    border-radius: 8px;
    background: #f5f7fc;
}

.pokemon-move-facts dt {
    color: #737d96;
    font-size: .66rem;
    font-weight: 750;
}

.pokemon-move-facts dd {
    margin: .2rem 0 0;
    color: #232e50;
    font-size: .82rem;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
}

@media (max-width: 600px) {
    .pokemon-detail-hero-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .pokemon-detail-hero-art {
        width: min(100%, 220px);
        justify-self: center;
    }

    .pokemon-radar-values {
        gap: .3rem;
    }

    .pokemon-radar-value {
        align-items: flex-start;
        flex-direction: column;
    }

    .pokemon-move-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Compact game-style form analysis: radar left, type effectiveness right. */
.pokemon-form-analysis-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
    align-items: start;
    gap: .8rem;
    margin-top: .7rem;
}

.pokemon-form-analysis-layout > * {
    min-width: 0;
}

.pokemon-form-analysis-layout .pokemon-radar-panel {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.pokemon-radar-panel .pokemon-rich-section-heading {
    display: none;
}

.pokemon-form-analysis-layout .pokemon-radar-chart {
    width: 100%;
    max-width: none;
    margin: 0 auto;
}

.pokemon-form-analysis-layout .pokemon-radar-total {
    flex-wrap: wrap;
    gap: .25rem .4rem;
    margin-top: .25rem;
    font-size: .75rem;
}

/* Species interpretation: explanatory text below the visual matchup layout. */
.pokemon-form-interpretation {
    min-width: 0;
    margin-top: .85rem;
    padding: .8rem;
    border: 1px solid #e2e7f2;
    border-radius: 12px;
    background: #f8faff;
}

.pokemon-form-interpretation-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: .7rem;
}

.pokemon-interpretation-block {
    min-width: 0;
    padding: .7rem;
    border: 1px solid #e5eaf4;
    border-radius: 10px;
    background: #fff;
}

.pokemon-interpretation-block h5 {
    margin: 0 0 .45rem;
    color: var(--ink, #0b1734);
    font-size: .84rem;
    font-weight: 850;
    line-height: 1.35;
}

.pokemon-interpretation-block p {
    margin: .4rem 0;
    color: var(--ink, #26324b);
    font-size: .8rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.pokemon-interpretation-list {
    margin: .4rem 0;
    padding-left: 1.1rem;
    color: var(--ink, #26324b);
    font-size: .8rem;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.pokemon-interpretation-list li + li {
    margin-top: .28rem;
}

.pokemon-interpretation-note {
    color: var(--muted, #68728a) !important;
    font-size: .72rem !important;
}

@media (max-width: 600px) {
    .pokemon-form-interpretation {
        padding: .55rem;
    }

    .pokemon-form-interpretation-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: .55rem;
    }

    .pokemon-interpretation-block {
        padding: .6rem;
    }
}
.pokemon-form-effectiveness {
    display: grid;
    gap: .55rem;
    min-width: 0;
    margin: 0;
}

.pokemon-effectiveness-group {
    min-width: 0;
    padding: .55rem;
    border: 1px solid;
    border-radius: 11px;
}

.pokemon-effectiveness-heading {
    margin: 0 0 .4rem;
    font-size: .78rem;
    font-weight: 850;
    line-height: 1.2;
}

.pokemon-effectiveness-chips {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: .3rem;
    min-width: 0;
    margin: 0;
}

.pokemon-effectiveness-chips span {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: .24rem .42rem;
    border: 1px solid transparent;
    border-radius: 7px;
    font-size: .72rem;
    font-weight: 800;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.pokemon-effectiveness-group--weakness {
    border-color: #f0c0bd;
    background: #fff1ef;
}

.pokemon-effectiveness-group--weakness .pokemon-effectiveness-heading {
    color: #a52e2e;
}

.pokemon-effectiveness-group--weakness .pokemon-effectiveness-chips span {
    border-color: #f1c7c3;
    background: #ffdfdc;
    color: #922c2c;
}

.pokemon-effectiveness-group--resistance {
    border-color: #b9dec3;
    background: #eff9f0;
}

.pokemon-effectiveness-group--resistance .pokemon-effectiveness-heading {
    color: #23733d;
}

.pokemon-effectiveness-group--resistance .pokemon-effectiveness-chips span {
    border-color: #c3e5cb;
    background: #d9f0de;
    color: #1d6835;
}

.pokemon-effectiveness-group--immunity {
    border-color: #c8c8f0;
    background: #f0f0ff;
}

.pokemon-effectiveness-group--immunity .pokemon-effectiveness-heading {
    color: #48439b;
}

.pokemon-effectiveness-group--immunity .pokemon-effectiveness-chips span {
    border-color: #d0d1f5;
    background: #dedfff;
    color: #393b8a;
}

@media (max-width: 600px) {
    .pokemon-form-analysis-layout {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
        gap: .75rem;
    }

    .pokemon-form-analysis-layout .pokemon-radar-chart {
        width: 100%;
        max-width: none;
    }

    .pokemon-form-analysis-layout .pokemon-radar-label {
        font-size: 15px;
    }

    .pokemon-form-analysis-layout .pokemon-radar-value-label {
        font-size: 17px;
    }

    .pokemon-effectiveness-group {
        padding: .32rem;
        border-radius: 8px;
    }

    .pokemon-effectiveness-heading {
        font-size: .68rem;
        margin-bottom: .3rem;
    }

    .pokemon-effectiveness-chips {
        gap: .18rem;
    }

    .pokemon-effectiveness-chips span {
        padding: .16rem .25rem;
        font-size: .60rem;
    }
}


/* Compact left-side group: radar, total stats, then abilities. */
.pokemon-form-analysis-left {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: .45rem;
    min-width: 0;
}

.pokemon-form-analysis-left .pokemon-ability-panel {
    min-width: 0;
    margin: 0;
    padding: .55rem;
    border: 1px solid #e1e6fb;
    border-radius: 11px;
    background: linear-gradient(145deg, #fbfaff, #f4f6ff);
}

.pokemon-form-analysis-left .pokemon-ability-panel .pokemon-rich-section-heading {
    margin: 0 0 .4rem;
    padding: 0;
    border: 0;
}

.pokemon-form-analysis-left .pokemon-ability-panel .pokemon-rich-section-heading h4 {
    margin: 0;
    font-size: .82rem;
}

.pokemon-form-analysis-left .pokemon-ability-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 100px), 1fr));
    gap: .35rem;
}

.pokemon-form-analysis-left .pokemon-ability-card {
    min-width: 0;
    padding: .45rem;
    border-radius: 9px;
    box-shadow: none;
    background: #fff;
}

.pokemon-form-analysis-left .pokemon-ability-heading {
    gap: .25rem;
    font-size: .76rem;
    line-height: 1.25;
}

.pokemon-form-analysis-left .pokemon-ability-badge {
    padding: .13rem .28rem;
    font-size: .58rem;
    line-height: 1.25;
}

.pokemon-form-analysis-left .pokemon-ability-meta {
    gap: .2rem;
    margin-top: .3rem;
}

.pokemon-form-analysis-left .pokemon-ability-meta span {
    padding: .13rem .28rem;
    border-radius: 5px;
    font-size: .60rem;
    line-height: 1.25;
}

@media (max-width: 600px) {
    .pokemon-form-analysis-left {
        gap: .35rem;
    }

    .pokemon-form-analysis-left .pokemon-ability-panel {
        padding: .4rem;
        border-radius: 9px;
    }

    .pokemon-form-analysis-left .pokemon-ability-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 88px), 1fr));
        gap: .28rem;
    }

    .pokemon-form-analysis-left .pokemon-ability-card {
        padding: .36rem;
    }

    .pokemon-form-analysis-left .pokemon-ability-heading {
        font-size: .72rem;
    }

    .pokemon-form-analysis-left .pokemon-ability-meta span {
        font-size: .56rem;
    }
}

/* POKEMON_RICH_CARDS_STYLES_END */

/* M2 P1 — Pokémon Reference Hub.
   Explorer-only presentation. Detail pages remain unchanged. */

.pokemon-explorer-page .pokemon-page-hero {
    border-color: rgba(79, 158, 242, .28);
    background: #0d172b;
    box-shadow: 0 16px 38px rgba(17, 36, 79, .12);
}

.pokemon-explorer-page .pokemon-page-hero .pokemon-eyebrow,
.pokemon-explorer-page .pokemon-model-index,
.pokemon-explorer-page .pokemon-provenance-label {
    color: #7fdcff;
}

.pokemon-explorer-page .pokemon-page-hero h1 {
    color: #f3f7ff;
}

.pokemon-explorer-page .pokemon-hero-copy {
    color: #b6c5dc;
}

.pokemon-explorer-page .pokemon-hub-facts {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1.25rem;
}

.pokemon-explorer-page .pokemon-hub-facts span {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    padding: .35rem .65rem;
    border: 1px solid rgba(111, 174, 235, .2);
    border-radius: 999px;
    background: rgba(25, 48, 79, .8);
    color: #d5e5f8;
    font-size: .75rem;
    font-weight: 700;
}

.pokemon-explorer-page .pokemon-stat-card,
.pokemon-explorer-page .pokemon-species-model article,
.pokemon-explorer-page .pokemon-provenance-card,
.pokemon-explorer-page .pokemon-builder-bridge {
    border: 1px solid rgba(83, 155, 235, .25);
    background: #0d172b;
    color: #f3f7ff;
    box-shadow: 0 8px 24px rgba(17, 36, 79, .08);
}

.pokemon-explorer-page .pokemon-stat-card span {
    color: #aabbd3;
}

.pokemon-explorer-page .pokemon-stat-card strong {
    color: #f3f7ff;
}

.pokemon-explorer-page .pokemon-type-summary {
    border-color: rgba(83, 155, 235, .25);
    background: #111f38;
}

.pokemon-explorer-page .pokemon-type-summary > summary {
    color: #e8f4ff;
}

.pokemon-explorer-page .pokemon-type-summary > p {
    color: #aabbd3;
}

.pokemon-explorer-page .pokemon-type-count-grid li {
    border: 1px solid rgba(111, 174, 235, .15);
    background: #192b47;
    color: #dce9fa;
}

.pokemon-explorer-page .pokemon-type-count-grid strong {
    color: #7fdcff;
}

.pokemon-explorer-page .pokemon-species-model {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
    margin-top: 1rem;
}

.pokemon-explorer-page .pokemon-species-model article {
    min-width: 0;
    padding: 1.15rem;
    border-radius: 16px;
}

.pokemon-explorer-page .pokemon-model-index,
.pokemon-explorer-page .pokemon-provenance-label {
    display: block;
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .1em;
}

.pokemon-explorer-page .pokemon-species-model h3,
.pokemon-explorer-page .pokemon-provenance-card h3 {
    margin: .65rem 0 .5rem;
    color: #f3f7ff;
    font-size: 1.08rem;
    line-height: 1.3;
}

.pokemon-explorer-page .pokemon-species-model p,
.pokemon-explorer-page .pokemon-provenance-card p {
    margin: 0;
    color: #b1c0d6;
    font-size: .88rem;
    line-height: 1.7;
}

.pokemon-explorer-page .pokemon-result-card {
    border-color: rgba(83, 155, 235, .25);
    background: #0d172b;
    box-shadow: 0 8px 22px rgba(17, 36, 79, .08);
}

.pokemon-explorer-page .pokemon-result-card:hover {
    border-color: rgba(79, 190, 255, .6);
    box-shadow: 0 12px 28px rgba(17, 36, 79, .14);
}

.pokemon-explorer-page .pokemon-result-name {
    color: #f3f7ff;
}

.pokemon-explorer-page .pokemon-result-name:hover,
.pokemon-explorer-page .pokemon-result-link {
    color: #7fdcff;
}

.pokemon-explorer-page .pokemon-generation-tag {
    background: #192b47;
    color: #c0d0e6;
}

.pokemon-explorer-page .pokemon-result-footer {
    color: #aabbd3;
}

.pokemon-explorer-page .pokemon-result-link {
    border-top-color: rgba(133, 174, 220, .18);
}

.pokemon-explorer-page .pokemon-provenance-section {
    margin-top: 2.5rem;
}

.pokemon-explorer-page .pokemon-provenance-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
}

.pokemon-explorer-page .pokemon-provenance-card {
    min-width: 0;
    padding: 1.2rem;
    border-radius: 17px;
}

.pokemon-explorer-page .pokemon-provenance-card a {
    color: #7fdcff;
    font-weight: 750;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    overflow-wrap: anywhere;
}

.pokemon-explorer-page .pokemon-provenance-card code {
    color: #d9eaff;
    overflow-wrap: anywhere;
}

.pokemon-explorer-page .pokemon-provenance-card dl {
    display: grid;
    gap: .55rem;
    margin: 1rem 0 0;
    padding-top: .85rem;
    border-top: 1px solid rgba(133, 174, 220, .18);
}

.pokemon-explorer-page .pokemon-provenance-card dl > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: .35rem .75rem;
}

.pokemon-explorer-page .pokemon-provenance-card dt {
    color: #aabbd3;
    font-size: .8rem;
}

.pokemon-explorer-page .pokemon-provenance-card dd {
    margin: 0;
    color: #f3f7ff;
    font-size: .8rem;
    font-weight: 750;
    text-align: right;
}

.pokemon-explorer-page .pokemon-provenance-card .pokemon-rights-note {
    margin-top: .8rem;
    padding-left: .75rem;
    border-left: 2px solid #27c5e8;
    color: #c1cee0;
    font-size: .8rem;
}

.pokemon-explorer-page .pokemon-provenance-links {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem 1rem;
    margin-top: .9rem;
    font-size: .8rem;
}

.pokemon-explorer-page .pokemon-builder-bridge {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-top: 1.5rem;
    padding: clamp(1.25rem, 4vw, 2rem);
    border-radius: 20px;
}

.pokemon-explorer-page .pokemon-builder-bridge > div {
    min-width: 0;
}

.pokemon-explorer-page .pokemon-builder-bridge h2 {
    margin: .45rem 0 .6rem;
    color: #f3f7ff;
    font-size: clamp(1.4rem, 3vw, 2rem);
    line-height: 1.2;
    letter-spacing: -.035em;
}

.pokemon-explorer-page .pokemon-builder-bridge p:not(.pokemon-eyebrow) {
    max-width: 650px;
    margin: 0;
    color: #b1c0d6;
    font-size: .92rem;
    line-height: 1.7;
}

.pokemon-explorer-page .pokemon-builder-bridge .button {
    flex: 0 0 auto;
    min-height: 44px;
    border-radius: 11px;
}

@media (max-width: 820px) {
    .pokemon-explorer-page .pokemon-provenance-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pokemon-explorer-page .pokemon-provenance-card:last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 600px) {
    .pokemon-explorer-page .pokemon-species-model,
    .pokemon-explorer-page .pokemon-provenance-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .pokemon-explorer-page .pokemon-provenance-card:last-child {
        grid-column: auto;
    }

    .pokemon-explorer-page .pokemon-species-model article,
    .pokemon-explorer-page .pokemon-provenance-card {
        padding: 1rem;
        border-radius: 14px;
    }

    .pokemon-explorer-page .pokemon-builder-bridge {
        align-items: stretch;
        flex-direction: column;
        gap: 1rem;
        border-radius: 16px;
    }

    .pokemon-explorer-page .pokemon-builder-bridge .button {
        width: 100%;
    }
}

/* M2 P1.1 — Restore light cards across the Pokémon Explorer. */

.pokemon-explorer-page .pokemon-stat-card,
.pokemon-explorer-page .pokemon-species-model article,
.pokemon-explorer-page .pokemon-provenance-card,
.pokemon-explorer-page .pokemon-builder-bridge,
.pokemon-explorer-page .pokemon-result-card,
.pokemon-explorer-page .pokemon-type-summary {
    border-color: #e6eaf2;
    background: #fff;
    color: #0b1734;
    box-shadow: 0 5px 18px rgba(17, 36, 79, .045);
}

.pokemon-explorer-page .pokemon-stat-card span {
    color: #68728a;
}

.pokemon-explorer-page .pokemon-stat-card strong {
    color: #0b1734;
}

.pokemon-explorer-page .pokemon-type-summary > summary {
    color: #33415f;
}

.pokemon-explorer-page .pokemon-type-summary > p {
    color: #68728a;
}

.pokemon-explorer-page .pokemon-type-count-grid li {
    border-color: #e3e7f1;
    background: #f6f7fc;
    color: #414d67;
}

.pokemon-explorer-page .pokemon-type-count-grid strong {
    color: #4f46a5;
}

.pokemon-explorer-page .pokemon-model-index,
.pokemon-explorer-page .pokemon-provenance-label {
    color: #087cff;
}

.pokemon-explorer-page .pokemon-species-model h3,
.pokemon-explorer-page .pokemon-provenance-card h3 {
    color: #0b1734;
}

.pokemon-explorer-page .pokemon-species-model p,
.pokemon-explorer-page .pokemon-provenance-card p {
    color: #56627a;
}

.pokemon-explorer-page .pokemon-provenance-card a {
    color: #0875d1;
}

.pokemon-explorer-page .pokemon-provenance-card code {
    color: #33415f;
    background: #f2f5fa;
    overflow-wrap: anywhere;
}

.pokemon-explorer-page .pokemon-provenance-card dl {
    border-top-color: #edf0f5;
}

.pokemon-explorer-page .pokemon-provenance-card dt {
    color: #68728a;
}

.pokemon-explorer-page .pokemon-provenance-card dd {
    color: #0b1734;
}

.pokemon-explorer-page .pokemon-provenance-card .pokemon-rights-note {
    border-left-color: #1689ff;
    color: #46536a;
}

.pokemon-explorer-page .pokemon-result-name {
    color: #0b1734;
}

.pokemon-explorer-page .pokemon-result-name:hover {
    color: #5045ac;
}

.pokemon-explorer-page .pokemon-generation-tag {
    background: #f0f3fa;
    color: #5a657e;
}

.pokemon-explorer-page .pokemon-result-footer {
    color: #68728a;
}

.pokemon-explorer-page .pokemon-result-link {
    border-top-color: #edf0f5;
    color: #5147ad;
}

.pokemon-explorer-page .pokemon-result-card:hover {
    border-color: #cbc9f0;
    box-shadow: 0 9px 24px rgba(40, 46, 95, .075);
}

.pokemon-explorer-page .pokemon-builder-bridge h2 {
    color: #0b1734;
}

.pokemon-explorer-page .pokemon-builder-bridge p:not(.pokemon-eyebrow) {
    color: #56627a;
}

/* M2 P1.2 — White Pokémon Hub hero. */
.pokemon-explorer-page .pokemon-page-hero {
    border-color: #e6eaf2;
    background: #fff;
    box-shadow: 0 10px 32px rgba(17, 36, 79, .055);
}

.pokemon-explorer-page .pokemon-page-hero .pokemon-eyebrow {
    color: #087cff;
}

.pokemon-explorer-page .pokemon-page-hero h1 {
    color: #0b1734;
}

.pokemon-explorer-page .pokemon-hero-copy {
    color: #56627a;
}

.pokemon-explorer-page .pokemon-hub-facts span {
    border-color: #dce8f8;
    background: #f0f6ff;
    color: #24456d;
}

/* Multi-form deduplication: preserve every equivalent form identity. */
.pokemon-form-variants {
    margin-top: 1.15rem;
    padding-top: 1rem;
    border-top: 1px solid #e6eaf2;
}

.pokemon-form-variants-heading h4 {
    margin: 0;
    color: #263653;
    font-size: .92rem;
}

.pokemon-form-variants-heading p {
    margin: .4rem 0 .75rem;
    color: #68728a;
    font-size: .8rem;
    line-height: 1.55;
}

.pokemon-form-variant-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
    gap: .6rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pokemon-form-variant {
    display: flex;
    align-items: center;
    gap: .7rem;
    min-width: 0;
    padding: .55rem .65rem;
    border: 1px solid #e6eaf2;
    border-radius: 12px;
    background: #f8faff;
}

.pokemon-form-variant-sprite {
    display: block;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    object-fit: contain;
}

.pokemon-form-variant-details {
    display: grid;
    gap: .2rem;
    min-width: 0;
}

.pokemon-form-variant-details strong {
    color: #172746;
    font-size: .84rem;
    overflow-wrap: anywhere;
}

.pokemon-form-variant-details span,
.pokemon-form-variant-no-sprite {
    color: #68728a;
    font-size: .72rem;
    overflow-wrap: anywhere;
}

.pokemon-form-variant-no-sprite {
    flex: 0 0 56px;
    width: 56px;
    text-align: center;
}

/* Recorded form measurements: height and weight. */
.pokemon-form-measurements {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin-top: 1rem;
}

.pokemon-form-measurements .pokemon-form-weight {
    min-width: 0;
    margin: 0;
}

@media (max-width: 600px) {
    .pokemon-form-measurements {
        grid-template-columns: minmax(0, 1fr);
        gap: .35rem;
    }
}
