.sps-squad-page{--sps-green:#174d43;color:#20332f;max-width:900px;margin:24px auto 60px;padding:clamp(18px,4vw,42px);background:#fff;border:1px solid #e7eae5;border-radius:22px;box-sizing:border-box;font-family:inherit}.sps-squad-page [hidden]{display:none!important}.sps-squad-top{display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid #e8ebe7;padding-bottom:18px;margin-bottom:30px;font-size:13px;font-weight:700;letter-spacing:.04em}.sps-squad-top a{color:var(--sps-green);text-decoration:none}.sps-squad-page h1{font-size:clamp(28px,5vw,45px);letter-spacing:-.035em;line-height:1.1;margin:4px 0 12px}.sps-squad-page h2{font-size:21px;margin:0 0 18px}.sps-kicker{font-size:12px;font-weight:800;letter-spacing:.13em;color:var(--sps-green)}.sps-member-email,.sps-squad-help,.sps-squad-guest>p{color:#63736d}.sps-squad-cards,.sps-squad-guest-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:18px;margin:28px 0}.sps-squad-pet{border:1px solid #e7ece8;border-radius:14px;overflow:hidden;background:#fbfcfa}.sps-squad-pet img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.sps-squad-pet-info{padding:14px}.sps-squad-pet-info a{font-weight:850;font-size:18px;color:#20332f;text-decoration:none}.sps-squad-pet-info p{font-size:13px;color:#64716b;margin:5px 0 10px}.sps-squad-pet button,.sps-squad-logout{background:none;border:0;color:#345e55;text-decoration:underline;cursor:pointer;padding:5px 0}.sps-squad-settings,.sps-squad-login{background:#f5f7f3;border-radius:16px;padding:24px;margin-top:28px}.sps-squad-settings label{display:block;margin:14px 0;line-height:1.5}.sps-squad-login form{margin-top:16px}.sps-squad-login label{display:block;font-weight:650}.sps-squad-login input[type=email],.sps-squad-login input[type=text]{display:block;width:100%;max-width:430px;box-sizing:border-box;padding:13px;margin:8px 0 12px;border:1px solid #b8c8c0;border-radius:9px;font-size:16px}.sps-squad-login form button{background:var(--sps-green);color:white;padding:13px 18px;border:0;border-radius:9px;cursor:pointer;font-weight:750}.sps-squad-provider-links a{display:block;margin:8px 0;border:1px solid #d5ded8;border-radius:9px;padding:11px;text-align:center;text-decoration:none;color:#20332f}.sps-squad-pref-status,.sps-squad-login-feedback,.sps-squad-status{font-size:14px;color:#4c655d}.sps-squad-logout{margin-top:12px}@media(max-width:480px){.sps-squad-page{margin:8px auto 36px;border-radius:14px}.sps-squad-top{font-size:11px}.sps-squad-cards,.sps-squad-guest-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sps-squad-pet-info{padding:10px}.sps-squad-pet-info a{font-size:15px}}

/* v1.9.8: centered collection, uncropped square photo, authentic wheel share CTA */
.sps-squad-page{max-width:1260px;background:#fffdfb}
.sps-squad-member>h1,.sps-squad-member>.sps-member-email,.sps-squad-member>.sps-squad-help{text-align:center}
.sps-squad-member>h1{font-size:clamp(32px,5vw,58px);font-weight:750;letter-spacing:-.045em}
.sps-squad-cards,.sps-squad-guest-cards{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}
.sps-squad-pet{display:flex;flex-direction:column;background:#fff;border-radius:16px}
.sps-squad-photo-link{display:grid;place-items:center;position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;background:#f3f3f3}
.sps-squad-photo-link img{width:100%;height:100%;aspect-ratio:1/1;object-fit:contain;display:block}
.sps-squad-adopted{position:absolute;inset:auto auto 42% 50%;transform:translateX(-50%) rotate(-14deg);border:4px solid #c53845;border-radius:6px;background:#fff9;color:#bf2936;padding:7px 11px;font-size:clamp(18px,2.4vw,29px);letter-spacing:.07em;font-weight:950;white-space:nowrap;box-shadow:0 2px 8px #0002;pointer-events:none}
.sps-squad-pet-info{display:flex;flex-direction:column;flex:1;gap:7px}.sps-squad-pet-info p{flex:1;line-height:1.4}
.sps-squad-profile-link{display:block!important;background:#edf3ec;border-radius:999px;text-align:center;padding:10px 6px;font-size:13px!important;font-weight:750!important;margin-top:auto}
.sps-squad-pet-info button{align-self:start;font-size:12px;text-transform:uppercase;font-weight:650;letter-spacing:.04em}
.sps-squad-share{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,300px);gap:22px;align-items:center;margin:32px 0 20px;background:#f9faf7;border:1px solid #e4ebe4;border-radius:20px;padding:clamp(20px,3vw,36px)}
.sps-squad-share h2{font-size:clamp(26px,3.5vw,42px);letter-spacing:-.035em;margin:0 0 16px}
.sps-squad-share p{color:#52655e;font-size:16px;line-height:1.5;margin:7px 0}
.sps-squad-share-wheel{width:100%;max-height:290px;object-fit:contain;border-radius:50%;mix-blend-mode:multiply}
.sps-squad-share-btn{border:0;background:#174d43;color:#fff;border-radius:999px;padding:13px 22px;margin-top:16px;font-weight:750;cursor:pointer}
.sps-squad-share-feedback{display:block;margin-top:8px;font-size:13px;color:#345e55}
.sps-squad-settings{display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px}
.sps-squad-settings h2{width:100%;margin-bottom:0}.sps-squad-settings label{margin:0}
@media(max-width:680px){.sps-squad-share{grid-template-columns:1fr}.sps-squad-share-wheel{max-width:230px;justify-self:center}.sps-squad-cards,.sps-squad-guest-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sps-squad-adopted{font-size:15px;border-width:3px}}

/* v1.9.9: verified availability labels */
.sps-pet-availability{font-size:.82rem;font-weight:700;margin:.25rem 0 .4rem;color:#246a49}
.sps-pet-availability.is-unavailable{color:#6a6771}
.sps-squad-adopted{font-size:.76rem;letter-spacing:.06em;max-width:95%;text-align:center}

/* v2.0.0: compact, matching pet cards and availability tabs */
.sps-squad-tabs{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:24px 0 8px}
.sps-squad-tab{border:1px solid #dce6df;border-radius:999px;background:#f6f8f5;color:#34574d;padding:11px 19px;font:inherit;font-size:14px;font-weight:750;cursor:pointer;line-height:1.3}
.sps-squad-tab.is-active{background:#174d43;color:white;border-color:#174d43}
.sps-squad-tab:focus-visible,.sps-squad-remove-heart:focus-visible{outline:3px solid #689d88;outline-offset:3px}
.sps-squad-tab span{margin-left:6px;opacity:.85;font-weight:700}
.sps-squad-cards{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:14px;margin:18px 0 26px}
.sps-squad-pet{position:relative;min-width:0;background:#fff;box-shadow:0 3px 16px #173f2b09;border-radius:14px}
.sps-squad-photo-link{aspect-ratio:1/1;background:#f6f5f5}
.sps-squad-photo-link img{object-fit:contain;width:100%;height:100%}
.sps-squad-pet-info{padding:11px 12px 12px;gap:0;min-width:0}
.sps-squad-pet-info a.sps-squad-pet-name{font-size:17px;line-height:1.2;letter-spacing:.01em;font-weight:850}
.sps-squad-pet-info p.sps-squad-breed{font-size:12px;line-height:1.3;min-height:2.6em;max-height:2.6em;overflow:hidden;margin:5px 0 6px;color:#64716b;flex:unset}
.sps-squad-pet-info p.sps-pet-availability{font-size:11px;line-height:1.2;min-height:1.2em;flex:unset;margin:0 0 10px;font-weight:750}
.sps-squad-profile-link{padding:9px 4px;font-size:12px!important;margin-top:auto;line-height:1.2}
.sps-squad-remove-heart{position:absolute;top:9px;right:9px;z-index:3;display:grid;place-items:center;width:39px;height:39px;background:#fffde8e8!important;border-radius:50%;border:1px solid #fff8!important;padding:8px!important;text-decoration:none!important;color:#ce4568!important;box-shadow:0 2px 10px #0002;cursor:pointer}
.sps-squad-remove-heart svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.8;fill:currentColor;stroke-linejoin:round}
.sps-squad-remove-heart:hover{color:#842a46!important;background:white!important}
.sps-squad-adopted{font-size:10px;line-height:1.2;border-width:2px;padding:6px 8px;max-width:90%;white-space:normal;inset:auto auto 39% 50%;transform:translateX(-50%) rotate(-12deg);border-radius:5px}
.sps-squad-empty{grid-column:1/-1;background:#f5f8f5;border:1px dashed #cad7ce;border-radius:12px;padding:28px;text-align:center;color:#587066}
@media(max-width:600px){.sps-squad-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sps-squad-pet-info{padding:9px}.sps-squad-pet-info a.sps-squad-pet-name{font-size:15px}.sps-squad-tab{font-size:12px;padding:10px 12px}.sps-squad-remove-heart{width:35px;height:35px;top:6px;right:6px}.sps-squad-remove-heart svg{width:21px;height:21px}.sps-squad-adopted{font-size:9px}}

/* Squad Visit Card — preview only until approved */
.sps-visit-print{border:0;border-radius:999px;background:#174d43;color:white;padding:14px 22px;font:inherit;font-weight:800;cursor:pointer;white-space:nowrap}
.sps-visit-card{margin:22px 0;padding:clamp(16px,3vw,30px);border:2px solid #174d43;border-radius:20px;background:#fff}
.sps-visit-card-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}
.sps-visit-card-heading h2{margin:3px 0 8px;font-size:clamp(26px,4vw,38px)}
.sps-visit-card-heading p{line-height:1.5;color:#51675e}
.sps-visit-close{border:0;background:#eef4ef;border-radius:50%;font-size:27px;line-height:1;width:40px;height:40px;cursor:pointer}
.sps-visit-campus{margin-top:24px;break-inside:avoid-page}
.sps-visit-campus h3{font-size:19px;border-bottom:2px solid #dce8dd;padding-bottom:8px;color:#174d43}
.sps-visit-pet{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #e4ebe5;break-inside:avoid}
.sps-visit-pet img{width:96px;height:96px;object-fit:contain;background:#f4f6f3;border-radius:12px;flex-shrink:0}
.sps-visit-pet h4{font-size:19px;margin:0 0 5px}.sps-visit-pet p{font-size:14px;margin:3px 0}.sps-visit-pet a{font-size:13px;color:#174d43}
.sps-visit-disclaimer{margin:20px 0 12px;color:#65736b;font-size:12px;line-height:1.5}
.sps-visit-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.sps-visit-copy{border:1px solid #174d43;border-radius:999px;background:white;color:#174d43;padding:12px 18px;font:inherit;font-weight:750;cursor:pointer}
.sps-visit-feedback{font-size:13px;color:#174d43}
@media(max-width:650px){.sps-visit-pet img{width:76px;height:76px}}
@media print{
 body *{visibility:hidden!important}
 .sps-visit-card,.sps-visit-card *{visibility:visible!important}
 .sps-visit-card{display:block!important;position:absolute;left:0;top:0;width:100%;box-sizing:border-box;border:0;padding:12px;margin:0}
 .sps-visit-close,.sps-visit-actions{display:none!important}
 .sps-visit-campus,.sps-visit-pet{break-inside:avoid}
}

.sps-squad-page .sps-squad-tabs{margin-top:18px}

/* Guest Squad account invitation: blurred extension, never hides browser favorites. */
.sps-squad-guest .sps-squad-guest-cards{margin-bottom:0}
.sps-squad-guest .sps-squad-guest-cards .sps-squad-pet:nth-child(n+4){filter:blur(5px);opacity:.35;pointer-events:none;user-select:none}
.sps-squad-guest .sps-squad-guest-cards:has(.sps-squad-pet:nth-child(4))+.sps-squad-unlock{margin-top:-76px}
.sps-squad-unlock{position:relative;z-index:2;margin:12px auto 26px;max-width:650px;padding:24px clamp(16px,4vw,36px);text-align:center;border:1px solid #dfece6;border-radius:22px;background:linear-gradient(180deg,rgba(255,253,251,.91),#fffdfb 68%);box-shadow:0 12px 32px #174d4315;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.sps-squad-unlock:before{content:'🐾';display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fcecf1;margin:-45px auto 10px;font-size:23px;box-shadow:0 5px 15px #174d4310}
.sps-squad-unlock h2{font-size:clamp(23px,4vw,32px);font-weight:850;letter-spacing:-.035em;margin:8px 0!important;color:#20332f}
.sps-squad-unlock p{max-width:450px;margin:8px auto 20px;color:#61716a;line-height:1.55}
.sps-squad-unlock a{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:12px 26px;border-radius:999px;background:#174d43;color:#fff!important;font-weight:800;text-decoration:none;box-shadow:0 5px 14px #174d4322}
.sps-squad-unlock a:hover{background:#0c382f}
.sps-squad-unlock small{display:block;margin-top:12px;color:#64716b}
.sps-squad-login{scroll-margin-top:24px}
@media(max-width:600px){.sps-squad-guest .sps-squad-guest-cards .sps-squad-pet:nth-child(n+3){filter:blur(5px);opacity:.35;pointer-events:none}.sps-squad-guest .sps-squad-guest-cards:has(.sps-squad-pet:nth-child(3))+.sps-squad-unlock{margin-top:-52px}.sps-squad-unlock{padding:24px 18px}.sps-squad-unlock a{width:100%;box-sizing:border-box}}

/* v2.0.66: invitation appears for guests after their first saved pet. */
.sps-squad-guest-cards.has-saves{position:relative;padding-bottom:70px}
.sps-squad-guest-cards.has-saves:after{content:"";position:absolute;pointer-events:none;left:0;right:0;bottom:0;height:130px;background:linear-gradient(180deg,transparent,#fffdfb 85%);z-index:1}
.sps-squad-guest-cards.has-saves+.sps-squad-unlock{margin-top:-85px}
.sps-squad-guest-cards.has-saves .sps-squad-pet:nth-child(n+2){filter:blur(5px);opacity:.40;pointer-events:auto;user-select:auto}
.sps-squad-guest-cards.has-saves+.sps-squad-unlock{box-shadow:0 14px 38px #174d4321}
@media(max-width:600px){.sps-squad-guest-cards.has-saves+.sps-squad-unlock{margin-top:-72px}.sps-squad-guest-cards.has-saves .sps-squad-pet:nth-child(n+2){filter:blur(5px);opacity:.40}}

/* v2.0.67: visibly blurred decorative Squad cards even after a single save */
.sps-squad-guest-cards.has-saves .sps-squad-preview-placeholder{min-width:0;overflow:hidden;border-radius:16px;border:1px solid #e7ece8;background:#fff;box-shadow:0 3px 16px #173f2b09;filter:blur(7px);opacity:.44;pointer-events:none;user-select:none}
.sps-squad-preview-photo{display:grid;place-items:center;aspect-ratio:1/1;background:linear-gradient(125deg,#d9e9db,#f5dce7,#e8ecdc);font-size:50px;color:#174d43}
.sps-squad-preview-lines{height:70px;background:linear-gradient(#d9e5de 0 0) 14px 16px / 60% 13px no-repeat,linear-gradient(#e7eee9 0 0) 14px 43px / 80% 9px no-repeat}
.sps-squad-guest-cards.has-saves+.sps-squad-unlock{margin-top:-120px}


/* v2.0.77: Header Sign Out pill replaces the plain Shelter Pet Spin label. */
.sps-squad-page .sps-squad-top .sps-squad-logout{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:35px;margin:0;padding:8px 13px;border:1px solid #d7e5db;border-radius:999px;background:#fff;color:#34584b;text-decoration:none;font-size:11px;font-weight:750;line-height:1.15;letter-spacing:0;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s}
.sps-squad-page .sps-squad-top .sps-squad-logout:hover{background:#edf5ef;border-color:#b9cfbe}
.sps-squad-page .sps-squad-top .sps-squad-logout:focus-visible{outline:3px solid #e4b65c;outline-offset:3px}
.sps-squad-page .sps-squad-top .sps-squad-logout:disabled{opacity:.55;cursor:wait}
@media(max-width:480px){.sps-squad-page .sps-squad-top .sps-squad-logout{min-height:33px;padding:7px 11px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.sps-squad-page .sps-squad-top .sps-squad-logout{transition:none}}


.sps-squad-page .sps-needs-shot-link{display:inline-block;margin:8px 0 22px;padding:13px 17px;border-radius:10px;background:#e9f0e3;color:#174d43;text-decoration:none;font-weight:750;font-size:14px}.sps-squad-page .sps-needs-shot-link:hover{background:#dce8d5}
