@charset "UTF-8";.subscription-banner{background:linear-gradient(135deg,#f4a6a0,#e46a4e);border-radius:12px;padding:1.5rem;margin:1rem 0;box-shadow:0 4px 12px #ffd7004d;animation:slideIn .3s ease-out}.subscription-banner .banner-content{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.subscription-banner .banner-content .banner-icon{font-size:2rem;flex-shrink:0}.subscription-banner .banner-content .banner-text{flex:1;min-width:200px}.subscription-banner .banner-content .banner-text h3{margin:0 0 .5rem;font-size:1.1rem;color:#212121;font-weight:600}.subscription-banner .banner-content .banner-text p{margin:0;font-size:.9rem;color:#333}.subscription-banner .banner-content .btn{flex-shrink:0;white-space:nowrap}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.subscription-banner{padding:1rem}.subscription-banner .banner-content{flex-direction:column;text-align:center}.subscription-banner .banner-content .banner-text{min-width:auto}.subscription-banner .banner-content .btn{width:100%}}.matching-card-enhanced{max-width:600px;margin:0 auto;background-color:#fff;border-radius:16px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;position:relative;transition:transform .1s ease,opacity .1s ease;touch-action:pan-y pinch-zoom;transform:translateZ(0);will-change:transform;user-select:none;-webkit-user-select:none}.matching-card-enhanced.processing{opacity:.9;pointer-events:none}.matching-card-enhanced .card-image-carousel{position:relative;width:100%;height:clamp(280px,45vh,520px);overflow:hidden;background:#fafaf9}@media(min-width:1024px){.matching-card-enhanced .card-image-carousel{height:clamp(320px,40vh,520px)}}.matching-card-enhanced .card-image-carousel .carousel-container{position:relative;width:100%;height:100%;cursor:pointer}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-image{width:100%;height:100%;object-fit:cover;transition:opacity .3s ease}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-image .lazy-image,.matching-card-enhanced .card-image-carousel .carousel-container .carousel-image img{width:100%;height:100%;object-fit:cover;object-position:center}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;border-radius:50%;width:44px;height:44px;font-size:1.5rem;color:#4a4a48;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-nav:hover:not(:disabled){background:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-nav:active:not(:disabled){transform:translateY(-50%) scale(.95)}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-nav:disabled{opacity:.5;cursor:not-allowed}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-nav.carousel-nav-prev{left:1rem}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-nav.carousel-nav-next{right:1rem}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-indicators{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:.25rem;z-index:10}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-indicators .indicator{width:8px;height:8px;border-radius:50%;border:none;background:#ffffff80;cursor:pointer;transition:all .2s ease;padding:0}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-indicators .indicator.active{background:#fff;width:24px;border-radius:4px}.matching-card-enhanced .card-image-carousel .carousel-container .carousel-indicators .indicator:hover{background:#fffc}.matching-card-enhanced .card-image-carousel .carousel-container .image-counter{position:absolute;top:1rem;right:1rem;background:#0009;color:#fff;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.matching-card-enhanced .card-image-carousel .carousel-container .compatibility-badge{position:absolute;top:1rem;left:1rem;background:linear-gradient(135deg,#e46a4e,#f4a6a0);color:#fff;padding:.5rem 1rem;border-radius:12px;font-weight:700;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;align-items:center;gap:2px;z-index:10;border:2px solid white}.matching-card-enhanced .card-image-carousel .carousel-container .compatibility-badge .compatibility-score{font-size:1.125rem;font-family:"Baloo 2",sans-serif;line-height:1}.matching-card-enhanced .card-image-carousel .carousel-container .compatibility-badge .compatibility-label{font-size:.75rem;opacity:.95;font-weight:600}.matching-card-enhanced .card-image-carousel .carousel-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#fafaf9;flex-direction:column;gap:.25rem}.matching-card-enhanced .card-image-carousel .carousel-placeholder .placeholder-icon{font-size:5rem;opacity:.3}.matching-card-enhanced .card-image-carousel .carousel-placeholder .placeholder-text{font-size:.75rem;color:#7a7a78;text-transform:uppercase;letter-spacing:.08em}.matching-card-enhanced .card-info{padding:clamp(1rem,2.2vw,2rem);margin-bottom:clamp(2rem,6vh,3.5rem);display:flex;flex-direction:column;gap:clamp(.5rem,2vw,1rem)}.matching-card-enhanced .card-info .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:clamp(.5rem,2vw,1rem);gap:clamp(.5rem,2vw,1rem)}.matching-card-enhanced .card-info .card-header .pet-name{font-size:clamp(1.25rem,2.6vw,1.5rem);color:#4a4a48;margin:0;flex:1;overflow-wrap:anywhere;word-break:break-word;line-height:1.2}.matching-card-enhanced .card-info .card-header .pet-distance{font-size:clamp(.8rem,1.6vw,.875rem);color:#7a7a78;white-space:nowrap}.matching-card-enhanced .card-info .nearby-teaser{margin-bottom:.5rem;padding:.25rem .5rem;background:#e46a4e1f;border:1px dashed rgba(228,106,78,.4);border-radius:12px;display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:#4a4a48}.matching-card-enhanced .card-info .nearby-teaser .teaser-badge{background:#e46a4e26;color:#e46a4e;padding:0 .25rem;border-radius:9999px;font-size:.75rem;font-weight:700}.matching-card-enhanced .card-info .nearby-teaser .teaser-copy{color:#7a7a78}.matching-card-enhanced .card-info .pet-details{margin-bottom:clamp(.5rem,2vw,1rem)}.matching-card-enhanced .card-info .pet-details .detail-row{display:flex;flex-wrap:wrap;gap:clamp(.5rem,2vw,1rem);margin-bottom:clamp(.2rem,1vw,.25rem)}.matching-card-enhanced .card-info .pet-details .detail-row .detail-item{font-size:.875rem;color:#7a7a78;min-width:0;overflow-wrap:anywhere}.matching-card-enhanced .card-info .pet-details .detail-row .detail-item .detail-label{font-weight:600;color:#4a4a48;margin-right:.25rem}.matching-card-enhanced .card-info .pet-tags{display:flex;flex-wrap:wrap;gap:clamp(.3rem,1.2vw,.25rem);margin-bottom:clamp(.5rem,2vw,1rem)}.matching-card-enhanced .card-info .pet-tags .tag{background-color:#f4a6a026;color:#4a4a48;padding:clamp(.25rem,1vw,.25rem) clamp(.5rem,1.6vw,.5rem);border-radius:12px;font-size:.75rem;font-weight:600;border:1px solid rgba(244,166,160,.3)}.matching-card-enhanced .card-info .pet-description{color:#7a7a78;line-height:1.6;margin-bottom:clamp(.5rem,2vw,1rem);font-size:clamp(.95rem,1.8vw,1rem);overflow-wrap:anywhere;word-break:break-word}.matching-card-enhanced .card-info .premium-hint{display:flex;align-items:center;gap:clamp(.3rem,1vw,.25rem);padding:clamp(.5rem,1.6vw,.5rem);background:linear-gradient(135deg,#e46a4e0d,#f4a6a00d);border:1px solid rgba(228,106,78,.2);border-radius:12px;margin-bottom:clamp(.5rem,2vw,1rem);font-size:clamp(.85rem,1.6vw,.875rem)}.matching-card-enhanced .card-info .premium-hint .hint-icon{font-size:1rem}.matching-card-enhanced .card-info .premium-hint .hint-text{color:#7a7a78;flex:1}.matching-card-enhanced .card-info .card-actions-secondary{margin-top:clamp(.5rem,2vw,1rem);position:relative;z-index:2}@media(display-mode:standalone){.matching-card-enhanced .card-info .card-actions-secondary{margin-bottom:calc(64px + env(safe-area-inset-bottom,0))}}.matching-card-enhanced .card-actions-primary{display:flex;gap:clamp(.5rem,2vw,1rem);padding:clamp(1rem,2.4vw,2rem);border-top:1px solid #ECEBE8;background:#e46a4e05;flex-wrap:wrap}.matching-card-enhanced .card-actions-primary .btn{flex:1;font-weight:600;font-size:clamp(.95rem,2vw,1.125rem);padding:clamp(.5rem,2.2vw,1rem) clamp(1rem,3vw,2rem);border-radius:16px;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent;touch-action:manipulation;transform:translateZ(0);will-change:transform;min-height:clamp(48px,6vh,56px)}.matching-card-enhanced .card-actions-primary .btn.btn-pass{background-color:#fafaf9;color:#4a4a48;border:2px solid #ECEBE8}@media(min-width:1024px)and (hover:hover){.matching-card-enhanced .card-actions-primary .btn.btn-pass:hover:not(:disabled){background-color:#ef44441a;border-color:#ef4444;color:#ef4444;transform:translate3d(0,-2px,0);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}}.matching-card-enhanced .card-actions-primary .btn.btn-pass:active:not(:disabled){transform:scale3d(.95,.95,1);background-color:#ef444426}.matching-card-enhanced .card-actions-primary .btn.btn-pass.processing{background-color:#ef444426;border-color:#ef4444;color:#ef4444;cursor:wait}.matching-card-enhanced .card-actions-primary .btn.btn-like{background:linear-gradient(135deg,#e46a4e,#f4a6a0);color:#fff;border:none;font-weight:700}@media(min-width:1024px)and (hover:hover){.matching-card-enhanced .card-actions-primary .btn.btn-like:hover:not(:disabled){transform:translate3d(0,-2px,0);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;filter:brightness(1.05)}}.matching-card-enhanced .card-actions-primary .btn.btn-like:active:not(:disabled){transform:scale3d(.95,.95,1);filter:brightness(.95)}.matching-card-enhanced .card-actions-primary .btn.btn-like.processing{opacity:.8;cursor:wait;filter:brightness(.9)}.matching-card-enhanced .card-actions-primary .btn .spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;margin-right:.25rem}@media(max-width:768px){.matching-card-enhanced .card-image-carousel{height:clamp(260px,50vh,480px)}.matching-card-enhanced .card-info{padding:1.5rem}.matching-card-enhanced .card-info .card-header .pet-name{font-size:1.25rem}.matching-card-enhanced .card-actions-primary{padding:1.5rem;position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #ECEBE8;border-radius:0;margin:0;z-index:10;flex-wrap:wrap}.matching-card-enhanced .card-actions-primary .btn{flex:1 1 45%;font-size:1rem;padding:1rem}.matching-card-enhanced .card-actions-primary .btn-rewind{flex:1 1 100%;order:-1}.matching-card-enhanced .matching-action-context{margin:0 1.5rem .5rem;padding:.25rem .5rem}.matching-card-enhanced .card-actions-secondary{margin-bottom:calc(64px + env(safe-area-inset-bottom,0))}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton-shimmer{width:100%;height:100%;background:linear-gradient(90deg,#f0f0f033,#f0f0f066,#f0f0f033);background-size:1000px 100%;animation:shimmer 1.5s infinite;border-radius:inherit}.skeleton-card{width:100%;max-width:400px;margin:0 auto;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px #0000001a}@media(min-width:768px)and (max-width:1024px){.skeleton-card{max-width:500px}}@media(max-width:768px){.skeleton-card{max-width:100%;border-radius:12px}}@media(max-width:480px){.skeleton-card{border-radius:8px}}.skeleton-card-image{width:100%;aspect-ratio:4/3;background:#f0f0f0;position:relative;overflow:hidden}.skeleton-card-content{padding:1rem;display:flex;flex-direction:column;gap:.75rem}.skeleton-line{height:12px;background:#f0f0f0;border-radius:6px;position:relative;overflow:hidden}.skeleton-line.skeleton-title{height:20px;width:60%}.skeleton-line.skeleton-subtitle{height:16px;width:40%}.skeleton-line.skeleton-text{width:100%}.skeleton-line.skeleton-text.short{width:70%}.skeleton-avatar{border-radius:50%;background:#f0f0f0;position:relative;overflow:hidden;flex-shrink:0}.skeleton-avatar-small{width:48px;height:48px;border-radius:50%;background:#f0f0f0;position:relative;overflow:hidden;flex-shrink:0}.skeleton-list{display:flex;flex-direction:column;gap:1rem}.skeleton-list-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000d}.skeleton-list-content{flex:1;display:flex;flex-direction:column;gap:.5rem}@media(max-width:768px){.skeleton-card-content{padding:.75rem}.skeleton-list-item{padding:.5rem;gap:.75rem}.skeleton-avatar-small{width:40px;height:40px}}@media(prefers-color-scheme:dark){.skeleton-card,.skeleton-list-item{background:#1a1a1a}.skeleton-card-image,.skeleton-avatar,.skeleton-avatar-small,.skeleton-line{background:#2a2a2a}.skeleton-shimmer{background:linear-gradient(90deg,#3c3c3c33,#3c3c3c66,#3c3c3c33)}}.matching-page{padding-top:calc(env(safe-area-inset-top,0) + 1rem);padding-bottom:calc(env(safe-area-inset-bottom,0) + 1rem);padding-left:calc(env(safe-area-inset-left,0) + 1rem);padding-right:calc(env(safe-area-inset-right,0) + 1rem);min-height:calc(100vh - env(safe-area-inset-top,0) - env(safe-area-inset-bottom,0));min-height:calc(100dvh - env(safe-area-inset-top,0) - env(safe-area-inset-bottom,0))}.matching-page .page-header{text-align:center;margin-bottom:2rem}.matching-page .page-header h1{font-size:1.875rem;color:#4a4a48;margin-bottom:.25rem}.matching-page .page-header .page-subtitle{font-size:.875rem;color:#7a7a78;max-width:540px;line-height:1.5;margin:0 auto}.matching-page .matching-status-summary{margin:0 auto 1.5rem;max-width:760px;background:#fafaf9;border:1px solid #ECEBE8;border-radius:12px;padding:1rem;box-shadow:0 1px 2px #0000000d;display:flex;flex-direction:column;gap:.5rem}@media(min-width:768px){.matching-page .matching-status-summary{flex-direction:row;justify-content:space-between;align-items:flex-start}}.matching-page .matching-status-summary .status-item{flex:1;min-width:150px}.matching-page .matching-status-summary .status-item .status-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#7a7a78;margin-bottom:.125rem}.matching-page .matching-status-summary .status-item strong{display:block;font-size:1.125rem;color:#4a4a48}.matching-page .matching-status-summary .status-item .status-hint{display:block;margin-top:.125rem;font-size:.75rem;color:#7a7a78}.matching-page .matching-status-summary .status-item .status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;margin-top:.25rem}.matching-page .matching-status-summary .status-item .status-badge--premium{background:#f4a6a01a;color:#f4a6a0}.matching-page .matching-status-summary .status-item .status-badge--free{background:#7a7a7814;color:#7a7a78}.matching-page .matching-mobile-quick-actions{display:none;max-width:760px;margin:0 auto 1.5rem;gap:.5rem;flex-wrap:wrap;align-items:center;justify-content:center}.matching-page .matching-mobile-quick-actions .btn{min-height:40px}.matching-page .matching-info-banner{max-width:600px;margin:0 auto 1.5rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#3b82f61a,#e46a4e1a);border:1px solid rgba(59,130,246,.3);border-radius:12px;display:flex;align-items:center;gap:.5rem;box-shadow:0 1px 2px #0000000d;animation:slideDown .3s ease-out}.matching-page .matching-info-banner .info-icon{font-size:1.25rem;flex-shrink:0}.matching-page .matching-info-banner p{margin:0;flex:1;color:#4a4a48;font-size:.875rem;line-height:1.5}.matching-page .matching-info-banner p strong{color:#e46a4e;font-weight:600}.matching-page .matching-info-banner .banner-close{flex-shrink:0;background:none;border:none;font-size:1.25rem;color:#7a7a78;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s ease}.matching-page .matching-info-banner .banner-close:hover{color:#4a4a48}.matching-page .matching-info-banner .banner-close:focus{outline:2px solid #E46A4E;outline-offset:2px;border-radius:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.matching-page .matching-filters-card{max-width:600px;margin:0 auto 2rem;padding:1.5rem;border-radius:16px;background:linear-gradient(135deg,#e46a4e14,#f4a6a014);border:1px solid rgba(236,235,232,.7)}@media(min-width:768px)and (max-width:1024px){.matching-page .matching-filters-card{max-width:800px;padding:2rem}}.matching-page .matching-filters-card{box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;display:flex;flex-direction:column;gap:1rem}.matching-page .matching-filters-card .matching-filters-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.875rem}.matching-page .matching-filters-card .matching-filters-header .active-pet-display{display:flex;align-items:center;gap:.5rem;flex:1}.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-avatar-small{position:relative;width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid #E46A4E}.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-avatar-small img{width:100%;height:100%;object-fit:cover}.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-avatar-small .active-badge-small{position:absolute;bottom:-2px;right:-2px;background-color:#e46a4e;color:#fff;border-radius:50%;width:14px;height:14px;display:flex;align-items:center;justify-content:center;font-size:8px;border:2px solid white;box-shadow:0 2px 4px #0003}.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-info-small{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-info-small .label{color:#7a7a78}.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-info-small .value{font-weight:600;color:#4a4a48}.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-info-small .pet-gender,.matching-page .matching-filters-card .matching-filters-header .active-pet-display .active-pet-info-small .pet-age{color:#7a7a78;font-size:.75rem}.matching-page .matching-filters-card .matching-filters-header .active-indicator{font-size:1rem;color:#e46a4e;font-weight:600}.matching-page .matching-filters-card .matching-filters-body p{margin:0 0 1rem;color:#7a7a78;font-size:.875rem}.matching-page .matching-filters-card .matching-filters-body .matching-filters-hint{margin:0 0 1rem;color:#7a7a78;font-size:.875rem;line-height:1.6}.matching-page .matching-filters-card .matching-filters-body .matching-filters-hint:before{content:"💡 ";margin-right:.25rem}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}@media(min-width:768px){.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls{flex-direction:row;align-items:flex-start;justify-content:space-between}}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control{flex:1;background-color:#fff;border:1px solid #ECEBE8;border-radius:12px;padding:1rem;box-shadow:0 1px 2px #0000000d;display:flex;flex-direction:column;gap:.25rem}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control .radius-control-header{display:flex;justify-content:space-between;align-items:baseline;font-weight:600;color:#4a4a48;font-size:.875rem}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:6px;border-radius:999px;background:#ecebe8;cursor:pointer;margin:0}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#e46a4e;border:2px solid white;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#e46a4e;border:2px solid white}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control .radius-zone-indicators{display:flex;justify-content:space-between;font-size:.75rem;color:#7a7a78}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control .matching-radius-badges{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:.25rem}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control .matching-radius-badges .radius-badge{padding:.25rem .5rem;border-radius:9999px;border:1px solid rgba(236,235,232,.6);font-size:.75rem;color:#7a7a78}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control .matching-radius-badges .radius-badge--premium{border-color:#f4a6a099;color:#f4a6a0}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control .radius-free-warning{display:flex;justify-content:space-between;align-items:center;padding:.25rem .5rem;border:1px dashed rgba(228,106,78,.5);border-radius:12px;background:#e46a4e14;font-size:.75rem;color:#4a4a48}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .radius-control .radius-link{background:none;border:none;color:#e46a4e;font-weight:600;cursor:pointer;text-decoration:underline;padding:0}.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .btn.btn-ghost{align-self:flex-start}@media(min-width:1280px){.matching-page .matching-filters-card .matching-filters-body .matching-filters-controls .btn.btn-ghost{align-self:center}}.matching-page .matching-filters-card .matching-filters-body .matching-progressive-hints{border-top:1px solid rgba(236,235,232,.5);padding-top:1rem;display:flex;flex-direction:column;gap:.5rem}.matching-page .matching-filters-card .matching-filters-body .matching-progressive-hints .progressive-title{margin:0;font-size:.875rem;font-weight:600;color:#4a4a48}.matching-page .matching-filters-card .matching-filters-body .matching-progressive-hints .progressive-chips{display:flex;flex-wrap:wrap;gap:.125rem}.matching-page .matching-filters-card .matching-filters-body .matching-progressive-hints .progressive-chip{border:1px solid rgba(228,106,78,.4);background:#e46a4e14;padding:.25rem .5rem;border-radius:12px;color:#4a4a48;font-size:.75rem;display:flex;flex-direction:column;gap:.125rem;min-width:140px;text-align:left;cursor:pointer}.matching-page .matching-filters-card .matching-filters-body .matching-progressive-hints .progressive-chip .chip-icon{font-size:1rem}.matching-page .matching-filters-card .matching-filters-body .matching-progressive-hints .progressive-chip .chip-label{font-weight:600;text-transform:uppercase;letter-spacing:.08em}.matching-page .matching-filters-card .matching-filters-body .matching-progressive-hints .progressive-chip .chip-copy{font-size:.75rem;color:#7a7a78}.matching-page .matching-filters-card .matching-filters-body .city-filter-section{margin:1rem 0;padding:1rem;background-color:#fafaf980;border-radius:12px;border:1px solid #ECEBE8}.matching-page .matching-filters-card .matching-filters-body .city-filter-section .city-filter-label{display:block;font-size:.875rem;font-weight:500;color:#4a4a48;margin-bottom:.25rem}.matching-page .matching-filters-card .matching-filters-body .city-filter-section .city-filter-input-group{display:flex;gap:.25rem;align-items:center}.matching-page .matching-filters-card .matching-filters-body .city-filter-section .city-filter-input-group .city-filter-input{flex:1;padding:.5rem 1rem;border:1px solid #ECEBE8;border-radius:12px;font-size:.875rem;background-color:#fff;color:#4a4a48}.matching-page .matching-filters-card .matching-filters-body .city-filter-section .city-filter-input-group .city-filter-input:focus{outline:none;border-color:#e46a4e;box-shadow:0 0 0 2px #e46a4e1a}.matching-page .matching-filters-card .matching-filters-body .city-filter-section .city-filter-input-group .city-filter-clear{padding:.5rem;min-width:auto;font-size:1.125rem;line-height:1}.matching-page .matching-filters-card .matching-filters-body .city-filter-section .city-filter-hint{margin:.25rem 0 0;font-size:.75rem;color:#7a7a78}.matching-page .matching-filters-card .matching-filters-body .matching-filters-actions{display:flex;flex-wrap:wrap;gap:.5rem}.matching-page .matching-filters-card .matching-filters-body .matching-filters-actions .btn{font-size:.75rem}.matching-page .matching-nearby-teaser{margin-top:1.5rem;max-width:600px;margin-left:auto;margin-right:auto}.matching-page .matching-nearby-teaser .nearby-preview-card{background:#fff;border:1px solid rgba(228,106,78,.3);border-radius:16px;padding:1rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 2px #0000000d}.matching-page .matching-nearby-teaser .nearby-preview-icon{font-size:1.5rem;display:flex;align-items:center;justify-content:center}.matching-page .matching-nearby-teaser .nearby-preview-content{flex:1}.matching-page .matching-nearby-teaser .nearby-preview-content .nearby-preview-title{margin:0;font-size:.875rem;font-weight:600;color:#4a4a48}.matching-page .matching-nearby-teaser .nearby-preview-content .nearby-preview-copy{margin:.125rem 0 0;font-size:.75rem;color:#7a7a78}.matching-page h1{font-size:1.875rem;color:#4a4a48;margin-bottom:2rem;text-align:center}.matching-page .matching-card{max-width:600px;margin:0 auto;background-color:#fff;border-radius:16px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden;position:relative;transition:transform .1s ease,opacity .1s ease}@media(max-width:1024px){.matching-page .matching-card{transition:opacity .05s ease!important}}.matching-page .matching-card{touch-action:pan-y pinch-zoom;transform:translateZ(0);will-change:transform;user-select:none;-webkit-user-select:none}.matching-page .matching-card.processing-like,.matching-page .matching-card.processing-pass{transform:scale3d(.98,.98,1);opacity:.9}.matching-page .matching-card .processing-overlay{position:absolute;inset:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:16px}@media(min-width:1024px){.matching-page .matching-card .processing-overlay{animation:fadeIn .1s ease-in}}@media(max-width:1024px){.matching-page .matching-card .processing-overlay{animation:none!important}}.matching-page .matching-card .processing-overlay .processing-indicator{display:flex;flex-direction:column;align-items:center;gap:.5rem}.matching-page .matching-card .processing-overlay .processing-indicator .processing-icon{font-size:3rem}@media(min-width:1024px){.matching-page .matching-card .processing-overlay .processing-indicator .processing-icon{animation:pulse 1.5s ease-in-out infinite}}@media(max-width:1024px){.matching-page .matching-card .processing-overlay .processing-indicator .processing-icon{animation:none!important}}.matching-page .matching-card .processing-overlay .processing-indicator .processing-text{font-size:1rem;font-weight:600;color:#4a4a48}.matching-page .matching-card .loading-more-indicator{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#e46a4e1a;border:1px solid rgba(228,106,78,.2);border-radius:12px;font-size:.875rem;color:#7a7a78;z-index:10;animation:slideUp .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.matching-page .matching-card .loading-more-indicator .spinner-small{width:16px;height:16px;border:2px solid rgba(228,106,78,.2);border-top-color:#e46a4e;border-radius:50%;animation:spin .6s linear infinite}.matching-page .matching-card .pet-image-container{position:relative;width:100%;height:400px;overflow:hidden}.matching-page .matching-card .pet-image-container img,.matching-page .matching-card .pet-image-container .pet-placeholder{width:100%;height:100%;object-fit:cover;background-color:#fafaf9;display:flex;align-items:center;justify-content:center;font-size:5rem;transition:opacity .3s ease,transform .3s ease}.matching-page .matching-card .pet-image-container img.processing,.matching-page .matching-card .pet-image-container .pet-placeholder.processing{opacity:.7;transform:scale(.98)}.matching-page .matching-card .pet-image-container .compatibility-badge{position:absolute;top:1rem;right:1rem;background:linear-gradient(135deg,#e46a4e,#f4a6a0);color:#4a4a48;padding:.5rem 1rem;border-radius:12px;font-weight:700;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;align-items:center;gap:2px;z-index:10;border:2px solid white}.matching-page .matching-card .pet-image-container .compatibility-badge .compatibility-score{font-size:1.125rem;font-family:"Baloo 2",sans-serif;line-height:1}.matching-page .matching-card .pet-image-container .compatibility-badge .compatibility-label{font-size:.75rem;opacity:.95;font-weight:600}.matching-page .matching-card .pet-info{padding:2rem}.matching-page .matching-card .pet-info h2{font-size:1.5rem;color:#4a4a48;margin-bottom:.5rem}.matching-page .matching-card .pet-info .pet-details{color:#7a7a78;margin-bottom:1rem;font-size:.875rem}.matching-page .matching-card .pet-info .pet-description{color:#7a7a78;line-height:1.6;margin-bottom:1rem}.matching-page .matching-card .pet-info .pet-attributes{display:flex;gap:.5rem;flex-wrap:wrap}.matching-page .matching-card .pet-info .pet-attributes .badge{background-color:#f4a6a026;color:#4a4a48;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;border:1px solid rgba(244,166,160,.3)}.matching-page .matching-card .matching-actions{display:flex;gap:1rem;padding:2rem;border-top:1px solid #ECEBE8;background:#e46a4e05}.matching-page .matching-card .matching-actions .btn{flex:1;font-weight:600;font-size:1.125rem;padding:1rem 2rem;border-radius:16px;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent;touch-action:manipulation;transform:translateZ(0);will-change:transform}.matching-page .matching-card .matching-actions .btn-pass{background-color:#fafaf9;color:#4a4a48;border:2px solid #ECEBE8;position:relative;overflow:hidden;min-height:56px;min-width:56px;transition:transform .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}@media(min-width:1024px)and (hover:hover){.matching-page .matching-card .matching-actions .btn-pass:hover:not(:disabled){background-color:#ef44441a;border-color:#ef4444;color:#ef4444;transform:translate3d(0,-2px,0);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}}.matching-page .matching-card .matching-actions .btn-pass:active:not(:disabled){transform:scale3d(.95,.95,1);background-color:#ef444426}.matching-page .matching-card .matching-actions .btn-pass.processing{background-color:#ef444426;border-color:#ef4444;color:#ef4444;cursor:wait}.matching-page .matching-card .matching-actions .btn-pass.processing .spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(239,68,68,.3);border-top-color:#ef4444;border-radius:50%;animation:spin .6s linear infinite}.matching-page .matching-card .matching-actions .btn-pass.passed{background-color:#ef44441f;border-color:#ef444480;color:#ef4444;transform:translate3d(-2px,0,0)}.matching-page .matching-card .matching-actions .btn-like{background:linear-gradient(135deg,#e46a4e,#f4a6a0);color:#fff;border:none;font-weight:700;position:relative;overflow:hidden;min-height:56px;min-width:56px;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),filter .15s cubic-bezier(.4,0,.2,1)}@media(min-width:1024px)and (hover:hover){.matching-page .matching-card .matching-actions .btn-like:hover:not(:disabled){transform:translate3d(0,-2px,0);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;filter:brightness(1.05)}}.matching-page .matching-card .matching-actions .btn-like:active:not(:disabled){transform:scale3d(.95,.95,1);filter:brightness(.95)}.matching-page .matching-card .matching-actions .btn-like.processing{opacity:.8;cursor:wait;filter:brightness(.9)}.matching-page .matching-card .matching-actions .btn-like.processing .spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.matching-page .matching-card .matching-actions .btn-like:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.matching-page .matching-card .matching-actions .btn-like.success:after{width:200px;height:200px;animation:ripple .6s ease-out}.matching-page .matching-card .matching-actions .spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;margin-right:.25rem}.matching-page .spinner-large{width:48px;height:48px;border:4px solid rgba(228,106,78,.1);border-top-color:#e46a4e;border-radius:50%;animation:spin .8s cubic-bezier(.4,0,.2,1) infinite;margin:0 auto}.matching-page .empty-state,.matching-page .loading-state{text-align:center;padding:3rem;background-color:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.matching-page .empty-state .empty-icon,.matching-page .loading-state .empty-icon{font-size:5rem;margin-bottom:1.5rem}.matching-page .empty-state h2,.matching-page .loading-state h2{font-size:1.5rem;color:#4a4a48;margin-bottom:1rem}.matching-page .empty-state p,.matching-page .loading-state p{color:#7a7a78}.matching-page .empty-state .empty-micro-copy,.matching-page .loading-state .empty-micro-copy{margin-top:.25rem;font-size:.75rem;color:#7a7a78}.matching-page .empty-state--premium{border-color:#e46a4e66;background:linear-gradient(135deg,#e46a4e1f,#f4a6a014)}@media(min-width:768px)and (max-width:1024px){.matching-page .matching-filters-card{max-width:700px;padding:1rem}.matching-page .matching-card{max-width:500px;margin:0 auto}.matching-page .matching-card .pet-image-container{height:400px}.matching-page .matching-card .pet-info{padding:1rem}.matching-page .matching-card .matching-actions{padding:1rem;gap:1rem}.matching-page .matching-card .matching-actions .btn{padding:1rem 1.5rem;font-size:1rem}}@media(max-width:768px){.matching-page{padding:1rem;padding-top:calc(1rem + env(safe-area-inset-top,0));padding-bottom:calc(1rem + env(safe-area-inset-bottom,0))}.matching-page .matching-mobile-quick-actions{display:flex}.matching-page .matching-card{max-width:100%;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.matching-page .matching-card .pet-image-container{height:50vh;min-height:300px;max-height:500px}.matching-page .matching-card .pet-info{padding:1.5rem}.matching-page .matching-card .pet-info h2{font-size:1.25rem}.matching-page .matching-card .matching-actions{flex-direction:row;gap:1rem;padding:1.5rem;position:sticky;bottom:calc(64px + env(safe-area-inset-bottom,0));background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #ECEBE8;border-radius:0;margin:0;z-index:10}.matching-page .matching-card .matching-actions .btn{flex:1;min-height:56px;font-size:1rem;padding:1rem}.matching-page .matching-filters-card{margin-bottom:1.5rem;padding:1rem}.matching-page .matching-filters-card .matching-filters-actions{flex-direction:column}.matching-page .matching-filters-card .matching-filters-actions .btn{width:100%}}.lightbox-overlay{position:fixed;inset:0;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out;cursor:pointer}.lightbox-overlay .lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center;cursor:default}.lightbox-overlay .lightbox-content .lightbox-close{position:absolute;top:-40px;right:0;background-color:#fff3;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10001}.lightbox-overlay .lightbox-content .lightbox-close:hover{background-color:#ffffff4d;transform:scale(1.1)}.lightbox-overlay .lightbox-content .lightbox-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px #00000080}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes ripple{0%{width:0;height:0;opacity:1}to{width:200px;height:200px;opacity:0}}.matching-skeleton{max-width:600px;margin:0 auto}.matching-skeleton .skeleton-header{margin-bottom:2rem}.matching-skeleton .skeleton-header .skeleton-title{height:40px;width:200px;background:linear-gradient(90deg,#fafaf9 25%,#fafaf980,#fafaf9 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:12px;margin:0 auto}.matching-skeleton .skeleton-card{background-color:#fff;border-radius:16px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;overflow:hidden}.matching-skeleton .skeleton-card .skeleton-image{width:100%;height:400px;background:linear-gradient(90deg,#fafaf9 25%,#fafaf980,#fafaf9 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite}.matching-skeleton .skeleton-card .skeleton-info{padding:2rem}.matching-skeleton .skeleton-card .skeleton-info .skeleton-name{height:32px;width:60%;background:linear-gradient(90deg,#fafaf9 25%,#fafaf980,#fafaf9 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:12px;margin-bottom:1rem}.matching-skeleton .skeleton-card .skeleton-info .skeleton-details{height:20px;width:80%;background:linear-gradient(90deg,#fafaf9 25%,#fafaf980,#fafaf9 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:12px;margin-bottom:.5rem}.matching-skeleton .skeleton-card .skeleton-info .skeleton-description{height:60px;width:100%;background:linear-gradient(90deg,#fafaf9 25%,#fafaf980,#fafaf9 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:12px;margin-bottom:1rem}.matching-skeleton .skeleton-card .skeleton-actions{display:flex;gap:1rem;padding:2rem;border-top:1px solid #ECEBE8}.matching-skeleton .skeleton-card .skeleton-actions .skeleton-button{flex:1;height:50px;background:linear-gradient(90deg,#fafaf9 25%,#fafaf980,#fafaf9 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:12px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer}.modal-overlay .modal-content{background-color:#fff;border-radius:16px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;cursor:default;animation:slideUp .3s ease-out}.modal-overlay .modal-content .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #ECEBE8}.modal-overlay .modal-content .modal-header h2{margin:0;font-size:1.25rem;color:#4a4a48;font-weight:600}.modal-overlay .modal-content .modal-header .modal-close{background:none;border:none;font-size:1.5rem;color:#7a7a78;cursor:pointer;padding:.25rem;line-height:1;transition:color .2s ease;border-radius:12px}.modal-overlay .modal-content .modal-header .modal-close:hover{color:#4a4a48;background-color:#7a7a781a}.modal-overlay .modal-content .modal-header .modal-close:focus{outline:2px solid #E46A4E;outline-offset:2px}.modal-overlay .modal-content .modal-body{padding:1.5rem}.modal-overlay .modal-content .modal-body p{margin:0 0 1rem;color:#7a7a78;line-height:1.6;font-size:1rem}.modal-overlay .modal-content .modal-body p:last-child{margin-bottom:0}.modal-overlay .modal-content .modal-body p strong{color:#4a4a48;font-weight:600}.modal-overlay .modal-content .modal-footer{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid #ECEBE8;justify-content:flex-end}.modal-overlay .modal-content .modal-footer .btn{min-width:120px}@media(max-width:768px){.modal-overlay .modal-content .modal-footer{flex-direction:column}.modal-overlay .modal-content .modal-footer .btn{width:100%}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
