.sss-app{--sss-accent:#174d43;background:#fbfaf7;color:#18251f;max-width:720px;margin:28px auto;border:1px solid #e8e8e2;border-radius:28px;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 16px 55px rgba(20,32,26,.06)}.sss-app *{box-sizing:border-box}.sss-head{display:flex;align-items:center;justify-content:space-between;padding:25px 32px;border-bottom:1px solid #efeee8;gap:12px}.sss-logo{font-size:14px;letter-spacing:-.4px;font-weight:800;text-transform:lowercase}.sss-logomark{color:var(--sss-accent);font-size:21px;margin-right:5px}.sss-slash{opacity:.35;padding:0 4px}.sss-chip{border:1px solid #e3e7de;padding:6px 10px;border-radius:30px;font-size:11px;color:#59655c;white-space:nowrap}.sss-stage{text-align:center;padding:44px 24px 36px}.sss-eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:10px!important;font-weight:800;color:var(--sss-accent);margin:0 0 14px!important}.sss-stage h2{font-size:clamp(29px,5vw,45px)!important;line-height:1.1!important;letter-spacing:-1.8px!important;font-weight:800!important;margin:0 0 15px!important;color:#18251f!important}.sss-subtitle{font-size:15px;line-height:1.6;max-width:420px;margin:0 auto 30px;color:#68716a}.sss-wheel-wrap{width:min(380px,82vw);height:min(380px,82vw);margin:0 auto 26px;position:relative}.sss-pointer{position:absolute;z-index:4;top:-9px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:15px solid transparent;border-right:15px solid transparent;border-top:25px solid var(--sss-accent);filter:drop-shadow(0 2px 2px #8884)}.sss-wheel{position:absolute;inset:0;border-radius:50%;border:9px solid #fff;box-shadow:0 8px 34px #19352624,0 0 0 1px #e5e6df;overflow:hidden;will-change:transform}.sss-wedge{position:absolute;width:50%;height:50%;top:0;left:50%;transform-origin:0% 100%;clip-path:polygon(0 100%,0 0,100% 0);overflow:hidden;background:#e5eae2}.sss-wedge img{position:absolute;width:190%;height:190%;object-fit:cover;top:-4%;left:-45%;transform:rotate(-45deg);filter:saturate(.85)}.sss-wheel-center{position:absolute;z-index:3;top:50%;left:50%;transform:translate(-50%,-50%);border:8px solid #fff;background:var(--sss-accent);width:31%;height:31%;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff;font-weight:800;font-size:clamp(17px,5vw,26px);box-shadow:0 4px 22px #0002}.sss-wheel-center span{font-size:16px;line-height:1}.sss-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:12px;border:0!important;border-radius:999px!important;background:var(--sss-accent)!important;color:white!important;font:700 15px/1.2 inherit!important;font-size:15px!important;text-decoration:none!important;padding:17px 29px!important;cursor:pointer;min-height:53px;transition:transform .18s,opacity .18s}.sss-btn:hover{transform:translateY(-2px);opacity:.92}.sss-btn:disabled{opacity:.6;cursor:wait}.sss-btn span{font-size:20px}.sss-fineprint{font-size:12px;color:#88918a;margin:18px 0 0!important}.sss-foot{display:flex;justify-content:space-between;border-top:1px solid #efeee8;padding:19px 30px;gap:10px;color:#7a847d;font-size:11px}.sss-foot strong{color:#304f40}.sss-result-photo{width:min(405px,100%);height:355px;margin:24px auto 19px;border-radius:20px;overflow:hidden;background:#e6eae2}.sss-result-photo img{width:100%;height:100%;object-fit:cover}.sss-result-detail{max-width:400px;margin:auto;text-align:left}.sss-result-detail h3{font-size:26px;margin:0 0 3px!important;line-height:1.2}.sss-dog-meta{font-size:13px;color:#6c766d}.sss-bio{font-size:14px;line-height:1.65;margin:13px 0!important}.sss-shelter{font-size:12px;color:#69736b;margin:10px 0!important}.sss-actions{display:flex;max-width:405px;margin:24px auto 0;flex-direction:column;gap:10px}.sss-actions .sss-btn{width:100%}.sss-share{background:#e7eee9!important;color:var(--sss-accent)!important}.sss-link{background:transparent!important;border:0;color:var(--sss-accent);padding:12px;cursor:pointer;font-size:14px}.sss-stage[hidden]{display:none!important}.sss-empty{padding:35px 5px;color:#68716a}.sss-spark{color:#a8bba9}.sss-wheel.is-spinning{pointer-events:none}@media(max-width:500px){.sss-app{margin:0 auto;border-radius:0;border-left:0;border-right:0}.sss-head{padding:20px}.sss-stage{padding:34px 18px}.sss-wheel-wrap{width:min(330px,85vw);height:min(330px,85vw)}.sss-foot{padding:17px 18px;font-size:10px}.sss-result-photo{height:315px}}

/* v0.7: stationary, operable center button; minimal sound controls */
.sss-wheel-center{appearance:none;-webkit-appearance:none;cursor:pointer;border:8px solid #fff;font-family:inherit;line-height:1.2;transition:box-shadow .2s,background .2s;touch-action:manipulation}
.sss-wheel-center:hover{background:#246354;box-shadow:0 5px 26px #0003}
.sss-wheel-center:focus-visible,.sss-sound-toggle:focus-visible{outline:3px solid #1b71bd;outline-offset:4px}
.sss-wheel-center:disabled{cursor:wait;opacity:.94}
.sss-wheel-center span{display:block;margin-top:2px}
.sss-sound-toggle{border:1px solid #dde4dc;background:transparent;color:#516259;border-radius:999px;padding:9px 15px;font:600 12px/1.2 inherit;cursor:pointer;min-height:36px}
.sss-sound-status{font-size:12px;color:#637267;margin:8px 0 0!important;min-height:1em}
@media(prefers-reduced-motion:reduce){.sss-wheel-center,.sss-sound-toggle{transition:none}}

/* v0.8: preserve full shelter photos in the reveal and wheel tiles */
.sss-result-photo{height:auto;min-height:260px;max-height:520px;display:flex;justify-content:center;align-items:center;background:#f2f3ee;padding:10px}
.sss-result-photo img{display:block;width:100%;height:auto;max-height:500px;object-fit:contain;object-position:center;border-radius:10px}
.sss-bio{white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:500px){.sss-result-photo{height:auto;min-height:200px;max-height:480px}.sss-result-photo img{max-height:460px}}

/* v0.9 profile metadata and optional video CTA */
.sss-result-detail .sss-dog-meta:empty,.sss-result-detail .sss-bio:empty{display:none}
.sss-result-detail .sss-dog-meta{font-weight:600;font-size:14px;line-height:1.5;margin-top:7px}
.sss-result-detail .sss-bio{white-space:pre-line;overflow-wrap:anywhere}
.sss-video-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;border:1px solid #d5e1d9;border-radius:999px;padding:12px 17px;margin-top:12px;color:var(--sss-accent)!important;font-size:14px;font-weight:700}
.sss-video-link[hidden]{display:none!important}
.sss-result-photo img{object-fit:contain!important}
/* v1.0 additions */
.sps-open-favorites,.sps-favorite{cursor:pointer}.sps-open-favorites{border:1px solid #d4dfda;border-radius:999px;background:#fff;padding:9px 14px;color:#174d43;font-weight:700}.sps-fav-count{opacity:.75}.sps-favorites-panel{margin:25px auto;max-width:600px;padding:20px;background:#fff;border:1px solid #e3e9e6;border-radius:18px}.sps-favorites-panel[hidden]{display:none}.sps-favorites-list{display:grid;gap:10px}.sps-favorite-item{display:flex;align-items:center;gap:12px;padding:10px;border-bottom:1px solid #edf1ef}.sps-favorite-item img{width:70px;height:65px;object-fit:contain}.sps-favorite-item a{color:#174d43}.sps-pet-body{margin:0;background:#fafbf9;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#1e2d28}.sps-profile{max-width:680px;margin:35px auto;padding:24px;background:white;border:1px solid #e3e9e6;border-radius:20px}.sps-profile-hero{position:relative;background:#f5f6f4;border-radius:15px;overflow:hidden}.sps-profile-hero img{display:block;width:100%;max-height:520px;object-fit:contain}.sps-unavailable{padding:15px;background:#213e35;color:white;text-align:center;letter-spacing:.08em;font-weight:800}.sps-back{color:#174d43;display:block;margin-bottom:18px}.sps-kicker{letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:#61756c}.sps-profile h1{font-size:38px;margin:5px 0}.sps-primary,.sps-secondary{display:block;margin:14px 0;text-align:center;padding:15px;border-radius:10px;text-decoration:none;font-weight:700}.sps-primary{background:#174d43;color:#fff}.sps-secondary{border:1px solid #174d43;color:#174d43}.sps-note{font-size:12px;color:#66766c}

/* v1.1 mobile-first squad and interaction improvements */
.sss-app{max-width:820px}
.sss-wheel-wrap{width:min(494px,92vw);height:min(494px,92vw)}
@media(max-width:500px){.sss-wheel-wrap{width:min(429px,94vw);height:min(429px,94vw)}.sss-stage{padding-left:10px;padding-right:10px}.sss-head{flex-wrap:wrap;gap:10px}}
.sps-open-favorites{background:#f1f6f2;font-size:13px;box-shadow:0 2px 9px #173f3215;white-space:nowrap}
.sps-fav-count{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;background:#174d43;color:#fff;border-radius:20px;padding:0 5px;margin-left:4px;opacity:1;font-size:12px}
.sps-favorite{background:#f3f8f4!important;border:2px solid #174d43!important;color:#174d43!important;box-shadow:0 3px 14px #1c4a3420}
.sss-result-photo{position:relative;touch-action:manipulation;user-select:none;-webkit-user-select:none}
.sps-photo-hint{position:absolute;right:14px;bottom:14px;z-index:2;background:#ffffffec;color:#174d43;border-radius:999px;font-size:12px;font-weight:700;padding:9px 13px;box-shadow:0 2px 12px #0002;pointer-events:none}
.sps-heart-burst{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:5}
.sps-floating-heart{position:absolute;font-size:31px;color:#e45770;text-shadow:0 2px 6px #fff;animation:sps-rise 900ms ease-out both}
@keyframes sps-rise{0%{opacity:0;transform:translate(0,25px) scale(.5)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translate(var(--x),-140px) scale(1.45)}}
@media(prefers-reduced-motion:reduce){.sps-floating-heart{animation:none;opacity:1}}
.sss-foot{align-items:center;line-height:1.55}.sss-foot span:last-child{max-width:520px;text-align:right}
@media(max-width:500px){.sss-foot{flex-direction:column;text-align:center}.sss-foot span:last-child{text-align:center}.sps-photo-hint{font-size:11px}}

/* v1.2: clear actions, prominent hearts, removable favorites, share dialog */
.sss-result-photo{position:relative}
.sps-photo-heart{position:absolute;top:14px;right:14px;z-index:7;background:#fff;border:1px solid #eee;border-radius:50%;height:56px;width:56px;font-size:37px;line-height:1;color:#ca3155;cursor:pointer;box-shadow:0 3px 15px #0002;display:grid;place-items:center}
.sps-photo-heart.is-saved{background:#fff0f3;color:#d22451}
.sps-photo-heart:focus-visible,.sps-remove-fav:focus-visible{outline:3px solid #1672bc;outline-offset:3px}
.sss-actions{gap:12px}.sps-secondary-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sps-secondary-actions button{border:1px solid #d0ddd5;border-radius:999px;color:#174d43;background:white;min-height:49px;padding:9px 5px;font:700 13px/1.25 inherit;cursor:pointer}
.sps-secondary-actions .sps-favorite{border:1px solid #d0ddd5!important;background:white!important;font-size:13px;box-shadow:none}
.sps-facebook-callout{font-size:13px;color:#65766d;margin:16px auto!important}.sps-share-facebook-open{border:0;background:transparent;color:#174d43;text-decoration:underline;cursor:pointer;font-weight:700}
.sps-remove-fav{margin-left:auto;border:0;background:#f2f5f3;color:#174d43;border-radius:999px;padding:10px 13px;cursor:pointer;font-weight:700}
.sps-share-dialog[hidden]{display:none!important}.sps-share-dialog{position:fixed;inset:0;z-index:999999;background:#0d251c88;display:grid;place-items:center;padding:15px}
.sps-share-dialog-inner{background:white;color:#1c2f26;border-radius:23px;padding:29px;width:min(420px,100%);position:relative;box-shadow:0 10px 50px #0003;text-align:left}
.sps-share-dialog-inner h3{font-size:24px;margin:0 35px 8px 0}.sps-share-dialog-inner p{font-size:14px;line-height:1.5}.sps-share-close{position:absolute;right:19px;top:15px;border:0;background:transparent;font-size:30px;cursor:pointer}
.sps-share-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.sps-share-options a,.sps-share-options button{display:flex;align-items:center;justify-content:center;border:1px solid #cddbd2;border-radius:13px;background:#f8faf8;padding:13px 8px;color:#174d43;font-size:14px;text-decoration:none;font-weight:700;cursor:pointer}
.sps-shelter-info{margin:26px 0;padding:22px;background:#f5f8f6;border-radius:18px}.sps-shelter-info h2{font-size:23px;margin:7px 0 18px}.sps-shelter-info h3{font-size:16px}.sps-campus{padding:14px 0;border-top:1px solid #e2e9e4;display:flex;flex-direction:column;gap:5px}.sps-campus span{color:#506057}.sps-campus a{color:#174d43;font-weight:700}.sps-shelter-info .sps-note{line-height:1.55}
@media(max-width:500px){.sps-secondary-actions{grid-template-columns:1fr 1fr 1fr}.sps-secondary-actions button{font-size:11px;padding:8px 2px}.sps-photo-heart{height:51px;width:51px;font-size:34px}}

/* v1.3: aligned result layout, clean photo heart, shelter process on reveal */
.sss-app .sss-stage-result{padding-left:clamp(18px,5%,44px);padding-right:clamp(18px,5%,44px);text-align:center}
.sss-app .sss-stage-result .sss-result-photo,.sss-app .sss-stage-result .sss-result-detail,.sss-app .sss-stage-result .sss-actions,.sss-app .sss-stage-result .sps-result-shelter-info{width:100%;max-width:530px;margin-left:auto;margin-right:auto}
.sss-app .sss-stage-result .sss-result-detail{text-align:left}
.sss-app .sss-stage-result .sss-actions{display:flex;align-items:stretch}
.sss-app .sss-stage-result .sps-secondary-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.sss-app .sss-stage-result .sps-secondary-actions button{font:700 13px/1.3 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-width:0;white-space:normal}
.sss-app .sss-result-photo{overflow:hidden;isolation:isolate}
.sss-app .sps-photo-heart,.sss-app .sps-photo-heart.is-saved{appearance:none!important;display:grid!important;place-items:center!important;position:absolute!important;top:14px!important;right:14px!important;width:45px!important;height:45px!important;min-width:45px!important;min-height:45px!important;margin:0!important;padding:0!important;border:0!important;border-radius:12px!important;background:rgba(255,255,255,.9)!important;color:#dd315a!important;font:normal 31px/1 Arial,sans-serif!important;box-shadow:0 2px 10px rgba(0,0,0,.11)!important;cursor:pointer!important;z-index:8!important}
.sss-app .sps-photo-heart.is-saved{background:rgba(255,238,241,.96)!important;color:#dd2152!important}
.sss-app .sps-photo-heart:hover{transform:scale(1.05)}
.sps-result-shelter-info{text-align:left;background:#f4f7f4;border:1px solid #e4ebe5;border-radius:18px;padding:24px;margin-top:32px!important}
.sps-result-shelter-info h3{font-size:18px;line-height:1.35;margin:0 0 15px!important;color:#194d41}
.sps-result-shelter-info p{font-size:14px;line-height:1.65;margin:8px 0!important}
.sps-result-campuses{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:19px}
.sps-result-campus{display:flex;flex-direction:column;gap:7px;border:1px solid #dce5dd;border-radius:12px;background:#fff;padding:14px;font-size:13px}
.sps-result-campus.is-current-campus{border-color:#245849;background:#ecf4ee}
.sps-result-campus span{color:#66766c}.sps-result-campus a{color:#174d43;font-weight:700;text-decoration:none}
.sps-result-shelter-info .sps-result-shelter-note{font-size:12px;color:#64776a;margin-top:17px!important}
@media(max-width:580px){.sps-result-campuses{grid-template-columns:1fr}.sss-app .sss-stage-result .sps-secondary-actions button{font-size:12px}}

.sps-profile-shelter-heading{font-size:.65em;font-weight:600;display:block;line-height:1.35;color:#587167}
