/* Shared community pages: BilluBnB's paper, sunbeam and sage tokens. */
.community-hero .site-hero__inner{grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:3rem}
/* A ch-based width changes with the display-font swap and adds/removes a whole
   heading line on landscape tablets. Keep the measure independent of the font. */
.community-hero .site-hero__title{max-width:36rem}
.site-adopt .community-hero .btn[href="/request"]{max-width:100%;white-space:normal}
.site-adopt .community-hero .btn[href="/request"] span{min-width:0;text-align:left}
.community-arch{position:relative;display:grid;place-items:center;align-content:center;gap:1.2rem;background:var(--sage-tint);color:var(--sage-deep);min-height:340px;max-width:340px;margin:auto;border-radius:170px 170px var(--r-lg) var(--r-lg);border:1px solid var(--line);padding:2rem;transform:rotate(3deg)}
.site-donate .community-arch{background:var(--blush-soft);color:var(--ink)}
.community-arch>.i{width:110px;height:110px;stroke-width:1.15}
.community-arch__small{font-size:.85rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.community-arch__note{font-family:var(--font-display);font-size:1.5rem;text-align:center}
.community-arch__paw{display:grid;place-items:center;position:absolute;right:-10px;top:35%;width:64px;height:64px;border-radius:50%;background:var(--sun);color:var(--sun-ink);transform:rotate(-15deg);border:4px solid var(--paper)}
.community-arch__paw .i{width:30px;height:30px}
.community-heading{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.7rem}
.community-heading h2{margin:.5rem 0}.community-heading>.i{color:var(--sage-deep);width:44px;height:44px}
.pet-filters{padding:1.25rem;margin:1.8rem 0;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md)}
.pet-search{display:grid;gap:.4rem;font-weight:800}.pet-search input{min-width:0;width:100%;padding:.75rem 1rem;background:var(--paper-3);border:1px solid var(--line-strong);border-radius:var(--r-sm);font-size:16px}
.pet-filter-row{display:flex;gap:.65rem;flex-wrap:wrap;align-items:start;margin-top:1rem}
.pet-filter{position:relative;flex:1 1 130px;min-width:0}
.pet-filter summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:.1rem .6rem;padding:.65rem .8rem;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--paper-3);font-size:.82rem;line-height:1.3;font-weight:800}
.pet-filter summary::-webkit-details-marker{display:none}.pet-filter summary>span{grid-row:2;font-size:16px;font-weight:700;overflow-wrap:anywhere}.pet-filter summary>.i{grid-row:1/3;grid-column:2;align-self:center}
.pet-filter[open] summary{border-color:var(--sage-deep)}
.pet-filter fieldset{position:absolute;z-index:30;top:100%;left:0;min-width:100%;width:max-content;max-width:280px;max-height:270px;overflow:auto;padding:.5rem;margin:.3rem 0 0;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--paper-3);box-shadow:var(--shadow-2)}
.pet-filter label{display:flex;align-items:center;gap:.6rem;cursor:pointer;min-height:44px;padding:.55rem .7rem;font-size:16px;border-radius:8px;overflow-wrap:anywhere}.pet-filter label:has(:checked){background:var(--sun-soft);font-weight:800}.pet-filter label:hover{background:var(--paper-2)}.pet-filter input{accent-color:var(--sage-deep);width:18px;height:18px;flex:none}
.pet-filter-row>.btn{align-self:end;min-height:62px}
.pet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem}
.pet-card{min-width:0;border-radius:var(--r-lg);background:var(--paper);border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column}
.pet-card__photo{display:block;position:relative;aspect-ratio:4/3;margin:.75rem .75rem 0;border-radius:48% 48% var(--r-sm) var(--r-sm);overflow:hidden;background:var(--sage-tint);text-decoration:none}
.pet-card__photo img{width:100%;height:100%;object-fit:cover}.pet-card:nth-child(3n+2) .pet-card__photo{background:var(--blush-soft)}.pet-card:nth-child(3n+3) .pet-card__photo{background:var(--sun-soft)}
.pet-card__placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;color:var(--sage-deep);font-weight:750;font-size:.9rem}.pet-card__placeholder>.i{width:76px;height:76px;stroke-width:1.2}
.pet-status{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;padding:.4rem .75rem;border-radius:var(--r-pill);background:var(--sun);color:var(--sun-ink);font-size:.85rem;font-weight:850;line-height:1.4}
.pet-status--done{background:var(--sage-deep);color:var(--on-deep)}.pet-card__photo .pet-status{position:absolute;bottom:.8rem;left:.7rem;right:auto;max-width:calc(100% - 1.4rem)}
.pet-card__body{display:flex;flex-direction:column;gap:.7rem;padding:1.35rem;flex:1}.pet-card h3{font-size:1.8rem}.pet-card h3 a{text-decoration:none}.pet-card__line{color:var(--ink-2);margin:0}
.pet-location{display:flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:750;color:var(--ink-2);overflow-wrap:anywhere;margin:0}
.pet-tags{display:flex;gap:.45rem;flex-wrap:wrap;list-style:none;margin:0;padding:0}.pet-tags li{border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:.2rem .65rem;font-size:.82rem;font-weight:700;overflow-wrap:anywhere}
.pet-card__link{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-weight:850;margin-top:auto;padding-top:.7rem;min-height:44px;text-decoration:none;color:var(--sage-deep)}
.community-empty{display:flex;gap:1.5rem;align-items:start;padding:clamp(1.4rem,4vw,3rem);border:1px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--paper)}
.community-empty h3{font-size:var(--step-2);margin-bottom:.8rem}.community-empty p{color:var(--ink-2);margin-bottom:1.5rem}
.community-completed{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid var(--line)}
.community-soft-note{padding:1.25rem 1.5rem;border-radius:var(--r-md);background:var(--sage-tint);color:var(--sage-deep);max-width:none}
.community-how{background:var(--paper-2)}.community-how h2{margin:.6rem 0 2rem}
.community-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;list-style:none}.community-steps>li>span{font-family:var(--font-display);color:var(--amber);font-size:2rem}.community-steps h3{margin:.6rem 0}.community-steps p{color:var(--ink-2)}
.community-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:1.5rem;font-weight:800;color:var(--sage-deep)}
.pet-profile-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.pet-portrait{background:var(--sage-tint);border-radius:48% 48% var(--r-md) var(--r-md);aspect-ratio:7/8;overflow:hidden;max-height:560px}.pet-portrait>img{width:100%;height:100%;object-fit:cover}.pet-portrait .pet-card__placeholder>.i{width:120px;height:120px}
.pet-intro{min-width:0}.pet-intro h1{margin:.6rem 0 1rem;overflow-wrap:anywhere}.pet-intro .pet-location{margin:1rem 0 0}.pet-intro .lead{margin:0 0 1.5rem}.pet-intro>.btn{margin-top:1.5rem}
.pet-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;margin:1.5rem 0}.pet-facts dt,.pet-recipient dt{font-size:.9rem;color:var(--ink-3);font-weight:700}.pet-facts dd,.pet-recipient dd{font-weight:800;overflow-wrap:anywhere;margin:0}
.pet-happy{padding:1rem;border-radius:var(--r-sm);background:var(--sage-tint);color:var(--sage-deep);font-weight:750}.pet-happy .i{display:inline-block;vertical-align:middle;margin-right:.3rem}
.pet-detail-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);gap:clamp(2rem,4vw,4rem);margin-top:3rem;align-items:start}
.pet-story{display:grid;gap:2.5rem;min-width:0}.pet-story h2{font-size:var(--step-2);margin-bottom:1rem}.pet-story .prose{overflow-wrap:anywhere}
.pet-contact-stack{display:grid;gap:1.5rem;min-width:0}.pet-support,.pet-contact{padding:clamp(1.2rem,3vw,2rem);background:var(--paper-3);border:1px solid var(--line-strong);border-radius:var(--r-md)}
.pet-support{background:var(--sun-soft)}.pet-support h2,.pet-contact h2{font-size:var(--step-2);margin:.7rem 0 1rem}.pet-support .fine{color:var(--ink-2)}
.pet-recipient{margin:1.2rem 0}.pet-recipient dd{margin-bottom:.8rem}.pet-upi{font-family:var(--font-mono);font-size:.95rem;user-select:all}
.pet-pay-actions{display:flex;flex-wrap:wrap;gap:.6rem}.pet-pay-actions .btn{font-size:16px}.pet-support [data-copy-status]{min-height:1.6em;margin-top:.5rem}
.pet-qr{margin-top:1rem;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--paper-3);overflow:hidden}
.pet-qr>summary{list-style:none;padding:1rem;display:flex;justify-content:space-between;cursor:pointer;font-weight:850;font-size:16px}.pet-qr>summary::-webkit-details-marker{display:none}.pet-qr[open]>summary .i{transform:rotate(180deg)}
.pet-qr>div{padding:0 1rem 1rem}.pet-qr img{object-fit:contain;width:100%;height:auto;border-radius:0;margin-bottom:.7rem}.pet-qr a{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;font-weight:800}
@media(max-width:1024px){.pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-hero .site-hero__inner{gap:2rem}.community-arch{min-height:300px}.pet-detail-grid{grid-template-columns:1fr 1fr;gap:1.5rem}}
@media(max-width:767px){.community-hero .site-hero__inner{grid-template-columns:1fr;gap:1.5rem}.community-hero .site-hero__title{max-width:100%}.community-hero .site-hero__art{display:none}.pet-grid{grid-template-columns:1fr}.community-heading{align-items:start}.community-empty{flex-direction:column;gap:1rem}.community-steps{grid-template-columns:1fr;gap:1.5rem}.community-steps>li{padding-bottom:1.2rem;border-bottom:1px solid var(--line)}.pet-profile-grid,.pet-detail-grid{grid-template-columns:1fr;gap:1.5rem}.pet-portrait{max-height:460px;aspect-ratio:4/3;border-radius:45% 45% var(--r-md) var(--r-md)}.pet-intro h1{font-size:2.8rem}.pet-filter{flex-basis:calc(50% - .65rem)}.pet-filter-row>.btn{min-height:48px}.pet-filter:nth-child(even) fieldset{left:auto;right:0}.pet-detail-grid{margin-top:2rem}.community-completed{margin-top:2.5rem}}
@media(prefers-reduced-motion:no-preference){.pet-card{transition:box-shadow var(--dur-2),transform var(--dur-2)}.pet-card:focus-within{box-shadow:var(--shadow-1)}@media(hover:hover){.pet-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-1)}}}
.pet-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin:1.5rem 0}.pet-gallery img,.pet-gallery video{width:100%;height:260px;object-fit:contain;background:var(--paper-2);border-radius:var(--r-md)}
