@font-face{font-family:Jua;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jua-latin-400.woff2) format("woff2")}@font-face{font-family:Jua;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jua-korean-400.woff2) format("woff2");unicode-range:u+11??,u+3130-318f,u+a960-a97f,u+ac00-d7a3,u+d7b0-d7ff}@font-face{font-family:Pretendard;font-style:normal;font-weight:45 920;font-display:swap;src:url(/fonts/PretendardVariable.woff2) format("woff2")}:root{--bg:#f6f4ff;--card:#fff;--ink:#201a3a;--muted:#6b6685;--brand:#6d5bd0;--brand-ink:#fff;--line:#e7e3f7;--radius:20px;--shadow:0 8px 30px rgba(80,60,180,.12);--font-body:"Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","Segoe UI",Roboto,sans-serif;--font-display:"Jua",var(--font-body);--ok:#2f9e60;--ok-bg:#eafaf0;--info:#3a7bd5;--info-bg:#e9f3fb;--warn:#dd8a2e;--warn-bg:#fff4e6;--gold:#e0a92b;--gold-bg:#fff8e6;--epic:#8c5adc;--epic-bg:#f4eeff;--lovehate:#d96ba0;--focus-ring:0 0 0 3px rgba(109,91,208,.22)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:linear-gradient(180deg,#fbfaff,#f2eeff 55%,#ece6ff);background-attachment:fixed;min-height:100vh;color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.wrap{max-width:480px;margin:0 auto;padding:24px 18px 64px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.rarity-frame{animation:fadeInUp .38s ease both}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.app-header{text-align:center;margin-bottom:22px}.mascot-strip{display:flex;justify-content:center;align-items:flex-end;gap:4px;margin-bottom:6px}.mascot-strip img{width:62px;height:58px;filter:drop-shadow(0 4px 8px rgba(80,60,180,.18))}.mascot-strip img:nth-child(odd){width:52px;height:49px;opacity:.92;margin-bottom:4px}h1{font-family:var(--font-display);font-size:1.7rem;font-weight:400;letter-spacing:-.2px;margin:0 0 6px}.app-header h1{font-size:2rem}.mini-title{text-align:center;color:var(--brand);opacity:.9;font-size:1.15rem;margin:0 0 16px}.sub{color:var(--muted);font-size:.92rem;margin:0 auto 20px;max-width:340px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.btn,button{font-family:var(--font-display);font-size:1.05rem;border:none;border-radius:14px;padding:15px 16px;background:var(--brand);color:var(--brand-ink);cursor:pointer;width:100%;transition:transform .12s ease,box-shadow .15s ease,filter .15s ease}.btn:hover,button:hover{filter:brightness(1.04)}.btn:active,button:active{transform:translateY(1px)}.btn:focus-visible,.seg-btn:focus-visible,button:focus-visible{outline:none;box-shadow:var(--focus-ring)}a:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}button:disabled{opacity:.5;cursor:not-allowed}.form{gap:16px}.field,.form{display:flex;flex-direction:column}.field{gap:6px}.field>span{font-size:.82rem;font-weight:600;color:var(--muted)}input[type=number],input[type=text],select{font:inherit;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fbfaff;color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus{outline:none;border-color:var(--brand);box-shadow:var(--focus-ring);background:#fff}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.date-row{display:flex;align-items:center;gap:8px}.date-row input{text-align:center;min-width:0}.date-row input:first-of-type{flex:1.5 1}.date-row input:nth-of-type(2),.date-row input:nth-of-type(3){flex:1 1}.unit{flex:0 0 auto;color:var(--muted);font-size:.92rem;font-weight:600;margin-right:2px}.seg{display:flex;gap:8px}.seg-btn{flex:1 1;width:auto;min-height:44px;padding:11px 8px;background:#fbfaff;color:var(--ink);border:1px solid var(--line);font-family:var(--font-body);font-size:.9rem;font-weight:600;transition:background .15s ease,color .15s ease,border-color .15s ease}.seg-btn.on{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.check{display:flex;align-items:center;gap:8px;padding:4px 0;min-height:32px;font-size:.9rem;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--brand)}.err{color:#d6455d;font-size:.85rem;margin:0}.hero{position:relative;overflow:hidden;border-radius:var(--radius);padding:28px 20px 24px;text-align:center;box-shadow:var(--shadow);margin-bottom:14px}.season-overlay{position:absolute;inset:0;z-index:0;pointer-events:none}.hero-content{position:relative;z-index:1}.season-badge{position:absolute;top:12px;right:12px;z-index:2;font-size:.72rem;font-weight:700;background:hsla(0,0%,100%,.35);color:inherit;border:1px solid hsla(0,0%,100%,.5);border-radius:999px;padding:4px 10px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.season-particles{margin-top:12px;font-size:1.35rem;letter-spacing:10px;padding-left:10px;opacity:.95}.hero .rarity{font-size:.8rem;font-weight:700;opacity:.85;margin-bottom:8px}.hero .emoji{font-size:4.5rem;line-height:1;margin:4px 0 10px}.hero-art{display:block;margin:6px auto 10px;width:132px;height:auto;filter:drop-shadow(0 6px 12px rgba(0,0,0,.15))}.hero .cname{font-family:var(--font-display);font-size:1.85rem;font-weight:400;letter-spacing:-.3px;text-shadow:0 1px 2px hsla(0,0%,100%,.35)}.hero .ctag{font-size:.95rem;margin-top:6px;opacity:.92}.hero .cmeta{font-size:.82rem;margin-top:8px;opacity:.8}.result{display:flex;flex-direction:column;gap:16px}.ptext{margin:0}.season-flavor{background:#f6f4ff;border-radius:12px;padding:12px 14px}.season-flavor-tag{display:inline-block;font-size:.72rem;font-weight:800;color:var(--brand);margin-bottom:4px}.season-flavor p{margin:0;font-size:.9rem}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{background:#f0edff;color:var(--brand);border-radius:999px;padding:6px 12px;font-size:.82rem;font-weight:600}.detail-body{display:flex;flex-direction:column;gap:16px}.detail-item{border-left:3px solid #d9d2f2;padding-left:12px}.detail-label{font-weight:700;font-size:.92rem;margin-bottom:3px}.detail-item p{margin:0;font-size:.9rem;color:#333050}.match{border-radius:14px;padding:13px 15px;border-left:4px solid var(--line)}.match p{margin:6px 0 0;font-size:.9rem}.match-title{font-weight:700;font-size:.95rem}.match.good{background:var(--ok-bg);border-left-color:var(--ok)}.match.good .match-title{color:var(--ok)}.match.nurture{background:var(--info-bg);border-left-color:var(--info)}.match.nurture .match-title{color:var(--info)}.match.warn{background:var(--warn-bg);border-left-color:var(--warn)}.match.warn .match-title{color:#b9701c}.match.neutral{background:#eef1f6;border-left-color:#9aa6b2}.match.love-hate{background:linear-gradient(135deg,#ffe7f0,#f1e8ff);border:1px solid #f0c6dc;border-left:4px solid var(--lovehate)}.match.love-hate .match-title{color:#c0568f}.compat-themes{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--line);padding-top:16px}.compat h2,.compat-h,.rarity-box-title{font-family:var(--font-display);font-weight:400;font-size:1.25rem;letter-spacing:-.2px;margin:0}.compat-note{font-size:.82rem;color:var(--muted);background:#f6f4ff;border-radius:10px;padding:11px 13px;margin:2px 0 0;line-height:1.5}.compat-note b{color:var(--brand)}.meta-row{display:flex;justify-content:space-between;font-size:.78rem;color:var(--muted)}.rarity-legendary .hero{box-shadow:0 0 0 3px #f6c945,0 10px 34px rgba(246,201,69,.45)}.rarity-epic .hero{box-shadow:0 0 0 3px #b18cff,0 10px 30px rgba(140,90,220,.4)}.rarity-box{border-top:1px solid var(--line);padding-top:16px;display:flex;flex-direction:column;gap:12px}.rarity-grades{display:flex;gap:8px}.grade{flex:1 1;text-align:center;border:1px solid var(--line);border-radius:12px;padding:10px 6px;background:#fbfaff;opacity:.5;transition:opacity .18s ease,transform .18s ease,box-shadow .18s ease}.grade.on{opacity:1;border-width:2px;transform:translateY(-3px) scale(1.03)}.grade.g-legendary.on{border-color:var(--gold);background:var(--gold-bg);box-shadow:0 6px 16px rgba(246,201,69,.4)}.grade.g-epic.on{border-color:var(--epic);background:var(--epic-bg);box-shadow:0 6px 16px rgba(140,90,220,.3)}.grade.g-common.on{border-color:var(--brand);background:#f0edff}.g-stars{font-size:.95rem;letter-spacing:1px;color:var(--gold)}.grade.g-epic .g-stars{color:var(--epic)}.grade.g-common .g-stars{color:var(--muted)}.g-label{font-weight:800;font-size:.9rem;margin-top:2px}.g-cond{font-size:.68rem;color:var(--muted);margin-top:2px}.elements-row{gap:8px}.el-chip,.elements-row{display:flex;justify-content:center}.el-chip{width:42px;height:42px;border-radius:50%;align-items:center;font-family:var(--font-display);font-weight:400;font-size:1.1rem;border:1px solid var(--line);transition:transform .15s ease}.el-chip.on{transform:scale(1.06)}.el-chip.off{background:#eef0f4;color:#b9bcc7;border-style:dashed}.el-chip.on{box-shadow:0 2px 8px rgba(0,0,0,.12)}.rarity-hint{margin:0;text-align:center;font-size:.86rem;font-weight:600;color:#4a4470}.ghost{background:transparent;color:var(--brand);border:1px solid var(--line)}.compat{margin-top:14px;display:flex;flex-direction:column;gap:12px}.sub2{color:var(--muted);font-size:.85rem;margin:0}.pair-faces{display:flex;align-items:center;justify-content:center;gap:12px;font-size:2.2rem;margin-bottom:6px}.pair-art{width:64px;height:60px}.pair-faces .x{font-size:1.2rem;color:var(--muted)}.share{margin-top:14px;margin-bottom:12px;display:flex;flex-direction:column;gap:8px}.share .ok{align-self:center;color:var(--ok);background:var(--ok-bg);border:1px solid #bfe8cf;border-radius:999px;padding:8px 16px;font-size:.85rem;font-weight:700;margin:0;text-align:center;animation:fadeInUp .25s ease both}.share-url{font-size:.72rem;color:var(--muted);word-break:break-all;background:#faf9ff;border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin:0}.disclaimer{margin-top:24px;text-align:center;color:var(--muted);font-size:.78rem}@media (max-width:360px){.wrap{padding:20px 14px 56px}.app-header h1{font-size:1.8rem}.hero .cname{font-size:1.65rem}.mascot-strip img{width:54px;height:50px}.mascot-strip img:nth-child(odd){width:46px;height:43px}.grade{padding:9px 4px}.g-cond{font-size:.63rem}.el-chip{width:38px;height:38px;font-size:1rem}}