.PetPortrait_container__cF05W{max-width:560px;margin:0 auto}.PetPortrait_dropZone__1wXqA{position:relative;border:3px dashed var(--border,#e5dfd8);border-radius:20px;padding:3rem 1.5rem;text-align:center;cursor:pointer;transition:border-color .3s,background .3s,transform .2s;background:radial-gradient(circle at 20% 80%,rgba(212,119,92,.04) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(122,173,145,.04) 0,transparent 50%),var(--surface-warm,#fdf6f0);overflow:hidden}.PetPortrait_dropZone__1wXqA:before{content:"";position:absolute;inset:8px;border:1px dashed var(--border-light,#f0ebe4);border-radius:14px;pointer-events:none;transition:border-color .3s}.PetPortrait_dragOver__GBKtN,.PetPortrait_dropZone__1wXqA:hover{border-color:var(--primary,#d4775c);background:radial-gradient(circle at 20% 80%,rgba(212,119,92,.08) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(122,173,145,.08) 0,transparent 50%),var(--surface-warm,#fdf6f0);transform:scale(1.01)}.PetPortrait_dropZone__1wXqA:focus-visible{outline:2px solid var(--primary,#d4775c);outline-offset:3px;border-color:var(--primary,#d4775c)}.PetPortrait_dragOver__GBKtN:before,.PetPortrait_dropZone__1wXqA:hover:before{border-color:var(--primary,#d4775c)}.PetPortrait_disabled__LqwC3{pointer-events:none;transform:none!important}.PetPortrait_uploadIcon__Vrr9K{font-size:3rem;margin-bottom:.75rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.06));animation:PetPortrait_gentleBob__Cnm77 3s ease-in-out infinite}@keyframes PetPortrait_gentleBob__Cnm77{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.PetPortrait_dropText__sknKK{font-size:.95rem;color:var(--muted,#9a928a);font-weight:500}.PetPortrait_dropTip__sOfkV{font-size:.78rem;color:var(--accent,#7aad91);font-weight:600;margin-top:.4rem}.PetPortrait_hiddenInput__chNTv{display:none}.PetPortrait_analyzingWrap__u8ofI{position:relative;display:inline-block}.PetPortrait_previewImg__htHEN{max-width:260px;max-height:260px;border-radius:16px;object-fit:cover;box-shadow:0 4px 20px rgba(0,0,0,.1)}.PetPortrait_analyzingOverlay__Ayarr{position:absolute;inset:0;background:rgba(44,40,37,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:#fff;font-weight:600;font-size:.9rem;letter-spacing:.01em}.PetPortrait_spinner__97czn{width:40px;height:40px;border-left:3px solid rgba(255,255,255,.2);border-bottom:3px solid rgba(255,255,255,.2);border-top:3px solid rgba(255,255,255,.2);border-top-color:var(--primary,#d4775c);border-right:3px solid rgba(255,255,255,.2);border-right-color:var(--accent,#7aad91);border-radius:50%;animation:PetPortrait_yarnSpin__HrMzO 1s linear infinite}@keyframes PetPortrait_yarnSpin__HrMzO{to{transform:rotate(1turn)}}.PetPortrait_error__gT7ut{margin-top:.75rem;padding:.65rem 1rem;background:#fdf0ee;color:#a6392d;border:1px solid #f5cfc9;border-radius:var(--radius,14px);font-size:.85rem;text-align:center}.PetPortrait_matchCard__awNWq{background:var(--surface,#fff);border-radius:20px;padding:1.75rem 1.5rem 1.5rem;border:1px solid var(--border,#e5dfd8);box-shadow:0 1px 3px rgba(0,0,0,.04),0 8px 32px rgba(212,119,92,.08);position:relative;overflow:hidden;animation:PetPortrait_matchReveal__xZvnX .5s cubic-bezier(.22,1,.36,1)}@keyframes PetPortrait_matchReveal__xZvnX{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.PetPortrait_matchCard__awNWq:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary,#d4775c),var(--accent,#7aad91),var(--primary,#d4775c));border-radius:20px 20px 0 0}.PetPortrait_matchRow__VsZU8{display:flex;gap:.5rem;align-items:center;justify-content:center;margin-bottom:1.25rem;animation:PetPortrait_fadeSlideUp__z0R6F .6s cubic-bezier(.22,1,.36,1) .15s both}@keyframes PetPortrait_fadeSlideUp__z0R6F{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.PetPortrait_matchPhoto__ivpr9{width:130px;height:130px;object-fit:cover;border-radius:16px;flex-shrink:0;box-shadow:0 2px 12px rgba(0,0,0,.08);border:2px solid var(--border-light,#f0ebe4)}.PetPortrait_matchArrow__0q_Sx{display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:0;flex-shrink:0;position:relative}.PetPortrait_matchArrow__0q_Sx:before{content:"🧶";font-size:1.4rem;position:absolute;animation:PetPortrait_yarnBounce__vnver 1.5s ease-in-out infinite}@keyframes PetPortrait_yarnBounce__vnver{0%,to{transform:translateX(0) scale(1)}50%{transform:translateX(2px) scale(1.1)}}.PetPortrait_matchArrow__0q_Sx:after{content:"";position:absolute;bottom:-2px;width:20px;height:2px;background:var(--border,#e5dfd8);border-radius:1px}.PetPortrait_matchPreview__EU1PE{width:130px;height:130px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-warm,#fdf6f0);border-radius:16px;border:2px solid var(--border-light,#f0ebe4);box-shadow:0 2px 12px rgba(0,0,0,.04)}.PetPortrait_matchTitle__taExi{font-size:1.3rem;font-weight:800;text-align:center;margin:0 0 .5rem;color:var(--secondary,#3d405b);letter-spacing:-.01em;animation:PetPortrait_fadeSlideUp__z0R6F .6s cubic-bezier(.22,1,.36,1) .3s both}.PetPortrait_matchMeta__RDTtr{display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap;margin-bottom:.5rem;animation:PetPortrait_fadeSlideUp__z0R6F .6s cubic-bezier(.22,1,.36,1) .4s both}.PetPortrait_confidenceBadge__FgmXy{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.01em}.PetPortrait_confidence_high__codrE{background:#e8f3ec;color:#2d6a4f}.PetPortrait_confidence_high__codrE:before{content:"\2713";font-size:.65rem}.PetPortrait_confidence_medium__Q7CP1{background:#fdf6e3;color:#92641e}.PetPortrait_confidence_medium__Q7CP1:before{content:"\2248";font-size:.7rem}.PetPortrait_confidence_low__2X_GU{background:var(--surface-warm,#fdf6f0);color:var(--muted,#9a928a);border:1px solid var(--border-light,#f0ebe4)}.PetPortrait_coatBadge__Bztmm{display:inline-block;padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--surface-warm,#fdf6f0);color:var(--secondary,#3d405b);border:1px solid var(--border-light,#f0ebe4)}.PetPortrait_matchReasonText__918Bs{font-size:.8rem;color:var(--muted,#9a928a);text-align:center;margin:0 0 1.25rem;line-height:1.5;animation:PetPortrait_fadeSlideUp__z0R6F .6s cubic-bezier(.22,1,.36,1) .45s both}.PetPortrait_colorSection__8HKYb{margin-bottom:1.25rem;animation:PetPortrait_fadeSlideUp__z0R6F .6s cubic-bezier(.22,1,.36,1) .5s both}.PetPortrait_colorLabel__nyxMw{font-size:.8rem;font-weight:700;margin-bottom:.6rem;color:var(--muted,#9a928a);text-transform:uppercase;letter-spacing:.05em;text-align:center}.PetPortrait_swatches__klyNu{display:flex;gap:1.25rem;justify-content:center}.PetPortrait_swatch__Qujv5{display:flex;flex-direction:column;align-items:center;gap:.35rem;font-size:.75rem;color:var(--muted,#9a928a);font-weight:500}.PetPortrait_swatchColor__R2WDr{width:40px;height:40px;border-radius:50%;border:3px solid var(--surface,#fff);box-shadow:0 0 0 1px var(--border,#e5dfd8),0 2px 8px rgba(0,0,0,.06);transition:transform .2s,box-shadow .2s}.PetPortrait_swatch__Qujv5:hover .PetPortrait_swatchColor__R2WDr{transform:scale(1.1);box-shadow:0 0 0 1px var(--primary,#d4775c),0 4px 12px rgba(0,0,0,.1)}.PetPortrait_matchActions__L_cFu{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;animation:PetPortrait_fadeSlideUp__z0R6F .6s cubic-bezier(.22,1,.36,1) .6s both}.PetPortrait_blanketBtn__6W4Po{padding:.7rem 1.5rem;border-radius:var(--radius,14px);border:2px solid var(--accent,#7aad91);background:transparent;color:var(--accent,#7aad91);font-weight:700;font-size:.92rem;cursor:pointer;transition:background .2s,color .2s,transform .15s}.PetPortrait_blanketBtn__6W4Po:hover{background:var(--accent,#7aad91);color:#fff;transform:translateY(-1px)}.PetPortrait_primaryBtn__BeMmW{padding:.7rem 1.75rem;border-radius:var(--radius,14px);border:none;background:var(--primary,#d4775c);color:#fff;font-weight:700;font-size:.92rem;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:0 2px 8px rgba(212,119,92,.25);letter-spacing:.01em}.PetPortrait_primaryBtn__BeMmW:hover{background:var(--primary-hover,#c0654b);box-shadow:0 4px 16px rgba(212,119,92,.3);transform:translateY(-1px)}.PetPortrait_primaryBtn__BeMmW:active{transform:translateY(0) scale(.98)}.PetPortrait_shareBtn__0Dubb{padding:.7rem 1.5rem;border-radius:var(--radius,14px);border:2px solid var(--secondary,#3d405b);background:transparent;color:var(--secondary,#3d405b);font-weight:700;font-size:.92rem;cursor:pointer;transition:background .2s,color .2s,transform .15s;display:inline-flex;align-items:center;gap:.4rem}.PetPortrait_shareBtn__0Dubb:hover{background:var(--secondary,#3d405b);color:#fff;transform:translateY(-1px)}.PetPortrait_shareBtn__0Dubb:disabled{opacity:.6;cursor:not-allowed;transform:none}.PetPortrait_secondaryBtn___Y6oy{padding:.7rem 1.5rem;border-radius:var(--radius,14px);border:1px solid var(--border,#e5dfd8);background:transparent;color:var(--fg,#2c2825);font-weight:600;font-size:.92rem;cursor:pointer;transition:background .2s,border-color .2s}.PetPortrait_secondaryBtn___Y6oy:hover{background:var(--surface-warm,#fdf6f0);border-color:var(--muted,#9a928a)}.PetPortrait_shareMsg__yjQDc{margin-top:.5rem;font-size:.82rem;color:var(--accent,#7aad91);font-weight:600;text-align:center;animation:PetPortrait_fadeSlideUp__z0R6F .3s ease both}.PetPortrait_chooseSection__Wy6Ti{margin-top:1.5rem;animation:PetPortrait_fadeSlideUp__z0R6F .6s cubic-bezier(.22,1,.36,1) .55s both}.PetPortrait_chooseTitle__OliQu{font-size:1rem;font-weight:700;text-align:center;color:var(--secondary,#3d405b);margin-bottom:1rem;letter-spacing:-.01em}.PetPortrait_chooseGrid___aon7{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem}.PetPortrait_outcomeCard__rqlG6{position:relative;background:radial-gradient(ellipse at 30% 0,rgba(212,119,92,.04) 0,transparent 60%),var(--surface-warm,#fdf6f0);border:1.5px solid var(--border,#e5dfd8);border-radius:16px;padding:1.1rem .9rem 1rem;cursor:pointer;transition:transform .2s,border-color .25s,box-shadow .25s;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem;overflow:hidden}.PetPortrait_outcomeCard__rqlG6:before{content:"";position:absolute;inset:5px;border:1.5px dashed var(--border-light,#f0ebe4);border-radius:12px;pointer-events:none;transition:border-color .25s}.PetPortrait_outcomeCard__rqlG6:hover{transform:translateY(-3px);border-color:var(--primary,#d4775c);box-shadow:0 6px 20px rgba(212,119,92,.12),0 2px 6px rgba(0,0,0,.04)}.PetPortrait_outcomeCard__rqlG6:hover:before{border-color:rgba(212,119,92,.25)}.PetPortrait_outcomeCard__rqlG6:active{transform:translateY(-1px) scale(.98)}.PetPortrait_cardPreview___AKYg{width:72px;height:72px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.PetPortrait_cardPreviewAmigurumi___STa1{background:var(--surface-warm,#fdf6f0);border:1.5px solid var(--border-light,#f0ebe4)}.PetPortrait_cardPreviewBlanket__4Qlp2{background:linear-gradient(135deg,#fce4ec,#fff5f9);border:1.5px solid #f5cfc9}.PetPortrait_cardPreviewShare__xJBLm{background:linear-gradient(135deg,#e8f3ec,#f0f8f3);border:1.5px solid #c8e0cf;font-size:2rem}.PetPortrait_cardTitle__c1gBQ{font-size:.88rem;font-weight:700;color:var(--secondary,#3d405b);line-height:1.2}.PetPortrait_cardDesc__hVOHH{font-size:.75rem;color:var(--muted,#9a928a);line-height:1.4}.PetPortrait_cardInfo__cqEwj{display:inline-block;font-size:.68rem;font-weight:600;color:var(--accent,#7aad91);background:var(--accent-light,#e8f3ec);padding:.15rem .5rem;border-radius:999px;margin-top:.1rem}.PetPortrait_moreToggle__LYyf0{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1rem;padding:.5rem;font-size:.82rem;font-weight:600;color:var(--muted,#9a928a);cursor:pointer;border:none;background:none;width:100%;transition:color .2s}.PetPortrait_moreToggle__LYyf0:hover{color:var(--secondary,#3d405b)}.PetPortrait_moreArrow__8ftuT{display:inline-block;font-size:.65rem;transition:transform .25s}.PetPortrait_moreArrowOpen__qdXpk{transform:rotate(180deg)}.PetPortrait_moreOptions__mzoTT{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-top:.5rem;animation:PetPortrait_fadeSlideUp__z0R6F .3s ease both}.PetPortrait_moreBtn__Crb2F{padding:.5rem 1rem;border-radius:var(--radius,14px);border:1px solid var(--border,#e5dfd8);background:transparent;color:var(--fg,#2c2825);font-weight:600;font-size:.82rem;cursor:pointer;transition:background .2s,border-color .2s}.PetPortrait_moreBtn__Crb2F:hover{background:var(--surface-warm,#fdf6f0);border-color:var(--muted,#9a928a)}@media (max-width:520px){.PetPortrait_chooseGrid___aon7{grid-template-columns:1fr;gap:.6rem}.PetPortrait_outcomeCard__rqlG6{flex-direction:row;text-align:left;padding:.9rem;gap:.75rem}.PetPortrait_outcomeCard__rqlG6:before{inset:4px}.PetPortrait_cardPreview___AKYg{width:56px;height:56px;border-radius:12px}.PetPortrait_cardBody__0JaCr{flex:1 1;min-width:0}.PetPortrait_moreOptions__mzoTT{flex-direction:column}.PetPortrait_moreBtn__Crb2F{width:100%}}@media (max-width:400px){.PetPortrait_matchPhoto__ivpr9,.PetPortrait_matchPreview__EU1PE{width:110px;height:110px}}.UnsupportedBrowserNotice_panel__W0ErH{max-width:520px;margin:4rem auto;padding:2rem 1.75rem;background:#fff;border:1px solid var(--border-light,#e0e0e0);border-radius:16px;text-align:center;font-family:inherit}.UnsupportedBrowserNotice_emoji__iOgIi{font-size:2.5rem;line-height:1;margin-bottom:.75rem}.UnsupportedBrowserNotice_title__S186d{font-size:1.3rem;font-weight:700;color:var(--fg,#222);margin:0 0 .5rem}.UnsupportedBrowserNotice_body__ee81d{font-size:.95rem;line-height:1.5;color:var(--muted,#555);margin:0 0 1.25rem}.UnsupportedBrowserNotice_detected__ThzZs{display:inline-block;padding:.25rem .6rem;border-radius:999px;background:#faf1f6;color:#8e4373;font-size:.8rem;margin-top:.5rem}.UnsupportedBrowserNotice_actions__yL8ff{display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem}.UnsupportedBrowserNotice_ctaPrimary__wTnnC{display:inline-block;padding:.7rem 1.2rem;border-radius:10px;background:#d27b3d;color:#fff;text-decoration:none;font-weight:600;transition:background .12s}.UnsupportedBrowserNotice_ctaPrimary__wTnnC:hover{background:#b3662f}.UnsupportedBrowserNotice_ctaSecondary__a8Xt9{display:inline-block;padding:.55rem 1rem;border-radius:10px;border:1px solid var(--border-light,#e0e0e0);background:#fff;color:var(--fg,#222);text-decoration:none;font-weight:500;transition:background .12s}.UnsupportedBrowserNotice_ctaSecondary__a8Xt9:hover{background:#fafafa}