.passport-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px}.passport-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;margin-bottom:10px;display:flex}.passport-card-head b{font-family:var(--font-heading);font-size:15px;font-weight:600;line-height:1.4}.passport-card-head span{min-width:0;color:var(--muted-foreground);font-size:13px;line-height:18px}.passport-tiles{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.passport-tiles[data-variant=strip]{grid-template-columns:repeat(4,minmax(0,1fr))}.passport-tile{aspect-ratio:1;border:1.5px dashed var(--border);min-height:64px;color:var(--muted-foreground);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px;font-size:11px;line-height:1.25;display:flex;overflow:hidden}.passport-tile b{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;max-width:100%;font-weight:500;display:-webkit-box;overflow:hidden}.passport-tile[data-stamped=true]{border-style:solid;border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 7%,var(--card))}.passport-tile[data-stamped=true] b{font-size:12px;font-weight:600}.passport-tile small{font-variant-numeric:tabular-nums;font-size:11px}.passport-tile svg{flex-shrink:0}.passport-tile:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (hover:hover){.passport-tile:hover{border-color:var(--primary);color:var(--primary)}}@media (prefers-reduced-motion:no-preference){.passport-tile[data-new=true]{animation:.24s cubic-bezier(.23,1,.32,1) both passport-stamp-in}}@media (prefers-reduced-motion:reduce){.passport-tile[data-new=true]{animation:.24s ease-out both passport-stamp-fade}}@keyframes passport-stamp-in{0%{opacity:0;transform:scale(.94)}}@keyframes passport-stamp-fade{0%{opacity:0}}
