@layer components{.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.35rem 1.4rem;box-shadow:var(--shadow-xs)}.card > h3{margin:0 0 .7rem}.grid{display:grid;grid-template-columns:minmax(0, 1fr);gap:1rem;@media (width >= 640px){&{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (width >= 980px){&.cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media (width >= 980px){&.cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}}}.grid.city-grid{grid-template-columns:repeat(2, minmax(0, 1fr));@media (width >= 980px){&{grid-template-columns:repeat(4, minmax(0, 1fr))}}}.grid > div:has(> article.pcard),
  .grid > div:has(> article.acard){display:contents}.pcard{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.15rem 1.15rem 1.25rem;box-shadow:var(--shadow-xs);transition:box-shadow .18s, transform .18s, border-color .18s;&:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--accent-line)}}.pcard-badge{position:absolute;top:.7rem;right:.7rem;font-size:.72rem;font-weight:600;line-height:1;padding:.3rem .5rem;border-radius:999px;background:var(--bg-muted);color:var(--muted);border:1px solid var(--border)}.pcard-pick{position:absolute;top:.7rem;left:.7rem;font-size:.72rem;font-weight:600;line-height:1;padding:.3rem .5rem;border-radius:999px;background:var(--accent-soft);color:var(--accent-hover);border:1px solid var(--accent-line)}.pcard-logo{display:flex;align-items:center;justify-content:center;height:3.4rem;img{max-height:3.2rem;max-width:11rem;object-fit:contain}}.pcard-ph{display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;background:var(--bg-muted);color:var(--faint);font-size:1.25rem;font-weight:700}.pcard-name{margin-top:.65rem;text-align:center;font-size:1.02rem;font-weight:600;color:var(--ink);letter-spacing:-.01em;a{color:inherit;text-decoration:none;&:hover{color:var(--accent-hover)}}}.pcard-facts{margin:.75rem 0 0;padding:.6rem .7rem;border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--border);display:grid;gap:.3rem;font-size:.84rem;line-height:1.5;> div{display:flex;gap:.5rem}dt{flex:0 0 4.2rem;color:var(--faint)}dd{margin:0;min-width:0;color:var(--fg)}}.pcard-note{margin-top:.7rem;font-size:.85rem;line-height:1.65;color:var(--muted);b{color:var(--fg);font-weight:600}}.pcard-btns{margin-top:auto;padding-top:.95rem;display:flex;flex-wrap:nowrap;gap:.45rem;container-type:inline-size;> *{flex:1 1 0;min-width:0}> *:only-child{flex:0 1 auto;margin-inline:auto;min-width:9rem}}@container (max-width: 19rem){.pcard-btns:has(> :nth-child(3)) .pc-btn{padding:0 .6rem}}@container (max-width: 16.2rem){.pcard-btns:has(> :nth-child(3)) .pc-btn{padding:0 .45rem;font-size:.84rem}.pcard-btns:has(> :nth-child(3)) .pc-btn .i{display:none}}@container (max-width: 14.6rem){.pcard-btns:has(> :nth-child(3)) .pc-btn{padding:0 .35rem;font-size:.8rem}}@container (max-width: 13.5rem){.pcard-btns:has(> :nth-child(3)) .pc-btn{padding:0 .25rem;font-size:.78rem}}@container (max-width: 12.5rem){.pcard-btns:has(> :nth-child(3)) .pc-btn{padding:0 .2rem;font-size:.72rem}}.pcard-date{margin:.75rem 0 0;padding-top:.625rem;border-top:1px solid var(--border);text-align:center;font-size:.75rem;color:var(--faint)}.pc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.32rem;min-height:2.35rem;padding:0 .85rem;border-radius:var(--radius-sm);border:1px solid transparent;font-size:.88rem;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;transition:background .15s, border-color .15s, color .15s;&:hover{text-decoration:none}}.pc-btn-main{background:var(--accent);color:#fff;&:hover{background:var(--accent-hover);color:#fff}}.pc-btn-line{background:var(--card);color:var(--accent-hover);border-color:var(--accent);&:hover{background:var(--accent-soft);color:var(--accent-ink)}}.pc-btn-soft{background:var(--accent-soft);color:var(--accent-ink);border-color:var(--accent-line);&:hover{background:var(--accent-soft-2);color:var(--accent-ink)}}.pc-btn-shot{background:var(--bg-muted);color:var(--fg);&:hover{background:var(--border);color:var(--ink)}}}