@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700&family=Noto+Serif+KR:wght@400;500;600&display=swap');
:root{--ink:#33302e;--muted:#817872;--paper:#f7f3ed;--rose:#a65d64;--line:#e3dbd3}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans KR',sans-serif;font-size:14px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a65d64;outline-offset:5px}header{max-width:1320px;margin:auto;padding:30px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:28px;color:var(--ink);text-decoration:none;letter-spacing:1px}.brand span{display:block;font-family:Arial;font-size:8px;letter-spacing:4px;text-align:center;margin-top:7px}.textbtn{border:0;background:none;color:var(--muted);font-size:12px}.eyebrow{font-size:10px;letter-spacing:3px;font-weight:600;color:var(--rose);text-transform:uppercase}.hero{max-width:1120px;margin:55px auto 65px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:0 30px}.hero h1{font-family:'Noto Serif KR',serif;font-weight:400;font-size:clamp(34px,4.3vw,58px);line-height:1.5;letter-spacing:-2px;margin:25px 0}.hero h1 em{font-style:normal;color:var(--rose)}.lead{line-height:1.95;color:var(--muted);font-size:14px}.primary,.secondary{padding:17px 25px;border-radius:3px;border:1px solid var(--rose);font-weight:500}.primary{background:var(--rose);color:white}.secondary{background:transparent;color:var(--rose)}.hero .primary{margin-top:24px;min-width:260px;display:flex;justify-content:space-between}.micro{font-size:11px;color:var(--muted);margin-top:15px}.hero-art{position:relative;padding:20px 40px 35px}.cover-card{transform:rotate(6deg);border:1px solid #d5b2ad;background:#fcf8f3;padding:17px;border-radius:14px;box-shadow:0 20px 70px #5d39321c;position:relative}.cover-card:before{content:'';position:absolute;inset:10px;border:1px solid #e8d5cb;pointer-events:none;border-radius:8px}.cover-card img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px}.cover-card .cardtop{display:flex;justify-content:space-between;font-family:Georgia;font-size:12px;padding:8px 8px 15px;letter-spacing:2px}.cover-card h2{text-align:center;font-family:Georgia;font-size:30px;font-weight:400;margin:18px 0 8px}.cover-card p{text-align:center;color:var(--muted);font-size:11px;margin-bottom:18px}.seal{position:absolute;bottom:10px;left:5px;background:#eadbd3;border:6px solid var(--paper);width:100px;height:100px;border-radius:50%;display:grid;place-content:center;text-align:center;transform:rotate(-12deg);font-family:Georgia;font-style:italic;font-size:16px;line-height:1.5}.steps{display:grid;grid-template-columns:repeat(3,1fr);max-width:1060px;margin:0 auto 55px;border-top:1px solid var(--line);padding:30px 20px;gap:25px}.steps article{display:flex;gap:18px}.steps b{font-family:Georgia;font-size:22px;color:#b2968a;font-weight:400}.steps h3{font-size:13px;margin:0 0 7px}.steps p{font-size:12px;color:var(--muted);margin:0;line-height:1.6}footer{border-top:1px solid var(--line);padding:26px;text-align:center;font-size:9px;letter-spacing:1px;color:#988d83}footer p{font-size:10px;letter-spacing:0;line-height:1.7}.game{max-width:930px;padding:35px 24px 50px;margin:auto;text-align:center}.game h1,.result h1{font-family:'Noto Serif KR',serif;font-size:31px;font-weight:400;letter-spacing:-1px;margin:15px 0}.game .sub{color:var(--muted);margin-bottom:26px}.progresshead{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.progress{height:3px;background:#e8e0d8;margin:12px 0 32px}.progress span{display:block;height:100%;background:var(--rose);transition:width .3s}.choices{display:grid;grid-template-columns:1fr 1fr;gap:32px;position:relative}.choice{text-align:left;padding:0;background:#fcfaf6;border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:transform .2s,border-color .2s;position:relative;color:var(--ink)}.choice:hover{transform:translateY(-5px);border-color:var(--rose)}.choice img{width:100%;aspect-ratio:1.12;object-fit:cover;display:block}.choice .info{padding:22px}.choice small{font-size:9px;letter-spacing:2px;color:var(--rose)}.choice h2{font-family:'Noto Serif KR',serif;font-size:22px;font-weight:500;margin:9px 0}.choice p{color:var(--muted);font-size:12px;line-height:1.7;margin:0}.pick{display:block;margin-top:20px;border-top:1px solid var(--line);padding-top:14px;font-size:12px;color:var(--rose)}.vs{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);border-radius:50%;background:var(--paper);border:1px solid var(--line);width:43px;height:43px;display:grid;place-content:center;font-family:Georgia;font-style:italic;color:var(--muted);z-index:2}.back{margin-top:25px}.result{max-width:1020px;margin:35px auto 55px;padding:0 24px;text-align:center}.result-layout{display:grid;grid-template-columns:370px 1fr;gap:65px;align-items:center;text-align:left;margin-top:30px}.result-card{position:relative;overflow:hidden;padding:15px;background:linear-gradient(130deg,#ead1bf,#f8eee8 28%,#d6dce9 48%,#f6e6e4 66%,#d1b29b);border:1px solid #bf9e83;border-radius:17px;box-shadow:0 16px 40px #9c70662a;animation:reveal 1.1s ease both}.card-inner{background:#faf6eeed;border:1px solid #cbb49c;border-radius:10px;padding:14px}.result-card:after{content:'';pointer-events:none;position:absolute;inset:-80%;background:linear-gradient(110deg,transparent 43%,#fff9 49%,transparent 56%);animation:shine 2s ease .6s both}.card-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#826552;margin:2px 0 13px}.result-card img{width:100%;display:block;border-radius:5px;aspect-ratio:1;object-fit:cover}.result-card h2{font-family:Georgia;font-size:32px;font-weight:400;margin:17px 0 7px}.result-card .ko{color:var(--rose);font-size:12px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.tags span{border:1px solid #ddd0c2;padding:6px 9px;border-radius:20px;font-size:10px;color:#827260}.card-bottom{font-size:9px;color:#958170;border-top:1px solid #e0d4c7;padding-top:13px;display:flex;justify-content:space-between}.result-copy h2{font-family:'Noto Serif KR',serif;font-size:27px;line-height:1.6;font-weight:400}.result-copy p{line-height:1.9;color:var(--muted)}.actions{display:grid;gap:10px;margin:23px 0}.code{background:#eee6dd;border-radius:6px;padding:14px;font-size:12px;line-height:1.8}.compare{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.compare input{width:120px;border:1px solid var(--line);padding:12px;background:#fffaf5;border-radius:3px;text-transform:uppercase}.compare button{padding:12px}.comparison{margin-top:22px;padding:20px;background:#eee4df;border-radius:8px}.comparison h3{font-family:'Noto Serif KR',serif;font-size:22px;margin:0 0 8px}.pair{display:flex;gap:12px;margin-top:14px}.pair figure{margin:0;flex:1;text-align:center;font-size:11px}.pair img{width:100%;border-radius:7px}.fine{font-size:11px!important;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:12px;background:var(--paper);width:min(850px,94vw);padding:35px;max-height:90vh}dialog::backdrop{background:#2d242a80;backdrop-filter:blur(5px)}dialog h2{font-family:'Noto Serif KR',serif;font-weight:400}.close{float:right;border:0;background:none;font-size:20px}#catalogGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}#catalogGrid img{width:100%;border-radius:5px}#catalogGrid h3{font-size:12px}#catalogGrid p{font-size:10px;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#3c3433;color:white;padding:13px 22px;border-radius:5px;opacity:0;pointer-events:none;transition:opacity .2s;width:max-content;max-width:90vw;z-index:10}.invite{padding:13px 17px;border-left:2px solid var(--rose);background:#eee4df;font-size:12px;line-height:1.8;margin-bottom:20px}.sparkles{font-size:22px;color:#bb9271;letter-spacing:16px;animation:twinkle 1s ease 2}.saved{margin-top:15px}.hidden{display:none!important}@keyframes reveal{from{opacity:0;transform:perspective(900px) rotateY(85deg) scale(.8)}to{opacity:1;transform:perspective(900px) rotateY(0) scale(1)}}@keyframes shine{from{transform:translateX(-40%)}to{transform:translateX(40%)}}@keyframes twinkle{50%{opacity:.2;transform:scale(1.15)}}@media(max-width:700px){header{padding:22px}.brand{font-size:23px}.hero{grid-template-columns:1fr;margin:30px auto;gap:15px;padding:0 25px;text-align:center}.hero h1{font-size:35px;line-height:1.5;margin:17px 0}.hero .primary{width:100%;justify-content:center;gap:30px}.hero-art{max-width:340px;margin:0 auto;grid-row:2;padding:15px 30px 25px}.cover-card h2{font-size:24px}.seal{width:77px;height:77px;font-size:13px}.steps{grid-template-columns:1fr;gap:20px;margin-bottom:20px;padding:25px}.game{padding:25px 16px 40px}.game h1{font-size:26px}.choices{gap:12px}.choice .info{padding:13px}.choice h2{font-size:18px}.choice p{font-size:11px;min-height:38px}.choice small{font-size:8px;letter-spacing:1px}.vs{width:30px;height:30px;font-size:11px;top:31%}.pick{font-size:11px}.result-layout{grid-template-columns:1fr;gap:22px}.result-card{max-width:340px;width:100%;margin:auto}.result-copy{text-align:center}.tags{justify-content:center}.result-copy h2{font-size:24px}.result h1{font-size:26px}#catalogGrid{grid-template-columns:repeat(2,1fr)}dialog{padding:22px}.progress{margin-bottom:25px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
#fitting{width:min(1000px,96vw);text-align:center;padding:30px 36px}#fitting h2{font-size:27px;margin:15px 0}.angle-tabs{display:flex;justify-content:center;gap:6px;margin:22px 0}.angle-tabs button{border:1px solid var(--line);background:transparent;padding:11px 22px;border-radius:30px;color:var(--muted)}.angle-tabs button[aria-pressed=true]{background:var(--rose);border-color:var(--rose);color:white}.fitting-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.fit-heading{display:flex;align-items:center;justify-content:space-between}.fit-heading h3{font-size:14px;font-weight:500}.fit-heading span{font-size:11px;color:var(--muted)}.wear-photo{width:100%;aspect-ratio:3/4;background-size:600% 300%;background-repeat:no-repeat;border-radius:8px;background-color:#ece3d9}.gold-options{display:flex;gap:6px;justify-content:center;margin:15px 0}.gold-options button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 3px;border:1px solid var(--line);background:transparent;border-radius:5px;font-size:11px;color:var(--muted)}.gold-options button[aria-pressed=true]{border-color:var(--rose);color:var(--rose);background:#f0e2dc}.swatch{display:block;width:16px;height:16px;border-radius:50%;border:1px solid #0001;flex-shrink:0}.swatch-0{background:linear-gradient(135deg,#aaa,#fff,#bbb)}.swatch-1{background:linear-gradient(135deg,#b58c40,#f4dda1,#c09c51)}.swatch-2{background:linear-gradient(135deg,#bd7a67,#f4cfbe,#c88e79)}.fit-note{color:var(--muted);font-size:11px;line-height:1.8;margin:18px 0}#fitDone{padding:12px 22px}@media(max-width:600px){#fitting{padding:24px 14px}#fitting h2{font-size:21px}.fitting-pair{gap:10px}.gold-options{flex-direction:column;gap:5px}.gold-options button{padding:9px}.angle-tabs button{padding:10px 16px}.fit-heading{display:block;text-align:left;margin-bottom:10px}.fit-heading h3{margin-bottom:5px}.wear-photo{aspect-ratio:3/4}}

.wear-photo{background-size:696% 348%;max-width:300px;margin:auto}.fit-person{max-width:350px;width:100%;margin:auto}#fitting{width:min(850px,96vw)}
/* Pink celestial card edition */
:root{--rose:#ad7189;--paper:#fcf6f4;--line:#e9d7dd;--ink:#4a3540;--muted:#927c85}.topnav{display:flex;gap:20px;align-items:center}.gift-tab{border:1px solid #dcbac8;border-radius:30px;padding:9px 15px;color:#a56a81}
.cover-card,.result-card{background:#f9ecef url('assets/tarot-frame.svg') center/100% 100% no-repeat;padding:67px 35px 55px;border:1px solid #d5a9b8;border-radius:17px;box-shadow:0 18px 48px #9b657d24,0 0 0 4px #fff9fa;position:relative}
.cover-card:before{display:none}.cover-card .cardtop{color:#a66b82;font-size:9px;letter-spacing:2px;padding:0 0 21px}.cover-card img,.result-card img{border-radius:50%;aspect-ratio:4/5;object-fit:cover;border:1px solid #cba3b2;outline:1px solid #dabdc6;outline-offset:6px;background:#f7f1e9}.cover-card h2{font-family:Georgia,serif;font-size:27px;font-style:italic;color:#9e647e;margin:25px 0 10px}.cover-card p{color:#a18490;font-size:10px;margin:0}.seal{background:#efdce3;color:#a36e85;border-color:var(--paper)}
.result-card{padding:64px 35px 47px}.card-inner{background:transparent;border:0;padding:0}.card-label{font-size:8px;color:#a16c81;letter-spacing:1.6px;margin:0 0 22px}.result-card h2{text-align:center;font-family:Georgia,serif;font-style:italic;color:#995e79;font-size:29px;margin:24px 0 9px}.result-card .ko{text-align:center;color:#a16e83;font-size:11px;line-height:1.7}.result-card .tags{justify-content:center}.tags span{border-color:#ddbfca;color:#a27687;background:#fbf2f4;font-size:9px}.card-bottom{font-size:8px;border-color:#ddc5ce;color:#ad8999}.result-card:after{background:linear-gradient(110deg,transparent 44%,#fff9 50%,transparent 56%)}
.choice{background:#f9edf0 url('assets/tarot-frame.svg') center/100% 100% no-repeat;padding:53px 29px 28px;border:1px solid #d6adbc;border-radius:14px;box-shadow:0 9px 25px #9b657d0d}.choice img{border-radius:50%;aspect-ratio:4/5;border:1px solid #d3b1bd;outline:1px solid #dfc6cf;outline-offset:5px}.choice .info{text-align:center;padding:20px 0 10px}.choice h2{font-weight:400;color:#8b5c70}.choice p{color:#a08390}.choice .pick{border-color:#e3cbd4;color:#a26882}.vs{border-color:#dfc3ce;color:#a4788c;background:#fcf5f7}.comparison{background:#f5e5ec;border:1px solid #e4c5d3}.comparison h3{color:#a44e63}.match-gift{margin-top:18px;width:100%;font-size:12px}
#destiny{width:min(720px,96vw);max-height:94dvh;padding:30px;overflow:hidden;border:1px solid #edb7c2;background:radial-gradient(ellipse at center,#fff6ee 5%,#ffd7df 65%,#e9a4b3);text-align:center;isolation:isolate}#destiny::backdrop{background:#241416e6;backdrop-filter:blur(10px)}.destiny-close{position:absolute;right:20px;top:18px;z-index:4;color:#9c5d6d}.destiny-content{position:relative;z-index:2}.destiny-halo{position:absolute;inset:-35%;background:repeating-conic-gradient(from 0deg,#fff4 0deg 2deg,transparent 2deg 15deg);border-radius:50%;animation:orbit 25s linear infinite;z-index:0}.destiny-cards{height:195px;position:relative;margin:28px auto 12px;max-width:330px}.soul-card{position:absolute;top:0;width:125px;height:185px;background:#fff0f3 url('assets/tarot-frame.svg') center/100% 100%;border:1px solid #d590a0;border-radius:10px;padding:28px 15px;box-shadow:0 10px 30px #85516b33}.soul-card img{width:100%;height:100%;object-fit:cover;border-radius:50%}.soul-card.left{left:40px;transform:rotate(-13deg);animation:soulLeft 1.6s ease both}.soul-card.right{right:40px;transform:rotate(13deg);animation:soulRight 1.6s ease both}.soul-heart{position:absolute;left:50%;top:60px;transform:translateX(-50%);font-size:72px;color:#c76580;text-shadow:0 0 24px #fff;animation:heartBloom 1.2s ease 1.1s both}.destiny-small{letter-spacing:4px;color:#b46577;font-size:12px;animation:wordReveal .8s ease 1.5s both}#destiny h2{font-family:'Noto Serif KR',serif;font-size:58px;letter-spacing:12px;color:#a44e63;margin:12px 0 14px;animation:wordReveal 1s ease 1.7s both;text-shadow:0 3px 24px #fff}.destiny-caption{color:#935c67;line-height:1.9;animation:wordReveal .8s ease 2s both}.destiny-model{font-size:11px;letter-spacing:2px;color:#a36272}.destiny-content>.primary{margin-top:13px}.destiny-content>.textbtn{display:block;margin:14px auto 0;color:#a26374}.star-shower{position:absolute;inset:0;pointer-events:none}.star-shower i{font-style:normal;position:absolute;left:var(--x);top:var(--y);color:#fff9e2;font-size:22px;animation:starBloom 3.8s ease var(--delay) both;text-shadow:0 0 9px #fff}.star-shower i:nth-child(3n){color:#db879b;font-size:17px}
#giftDialog{width:min(550px,94vw);text-align:center;padding:30px}#giftDialog h2{font-size:34px;letter-spacing:6px;color:#ac6577;margin:17px 0}.gift-lead{font-size:13px;line-height:1.8;color:var(--muted)}.gift-card{margin:24px auto;padding:45px 25px 40px;background:#fff0f3 url('assets/tarot-frame.svg') center/100% 100%;border:1px solid #edbec8;border-radius:13px;max-width:350px;color:#a66b84}.gift-star{font-size:26px}.gift-card>p:first-of-type{font-size:9px;letter-spacing:1.6px;margin-top:18px}.gift-card h3{font-family:Georgia,serif;font-style:italic;font-size:37px;font-weight:400;margin:20px 0}.gift-card strong{font-family:'Noto Serif KR',serif;font-size:14px;font-weight:400}.gift-rule{width:60px;height:1px;background:#e6acb9;margin:20px auto}.gift-preview{font-size:11px;margin:24px 0 8px}.gift-card small{font-size:9px}.gift-success{color:#9b5c7b;font-size:13px}.gift-card+.primary,#giftActions>.primary{width:100%}#giftActions .fine{line-height:1.8;margin:15px 0 0}
@keyframes soulLeft{from{opacity:0;transform:translateX(-180px) rotate(-50deg)}to{opacity:1;transform:rotate(-13deg)}}@keyframes soulRight{from{opacity:0;transform:translateX(180px) rotate(50deg)}to{opacity:1;transform:rotate(13deg)}}@keyframes heartBloom{0%{opacity:0;transform:translateX(-50%) scale(.1)}65%{opacity:1;transform:translateX(-50%) scale(1.35)}100%{opacity:1;transform:translateX(-50%) scale(1)}}@keyframes wordReveal{from{opacity:0;transform:translateY(18px);filter:blur(7px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes starBloom{0%{opacity:0;transform:scale(.1) translateY(40px)}35%{opacity:1;transform:scale(1.5)}100%{opacity:.65;transform:scale(.8) translateY(-20px)}}
@media(max-width:700px){.topnav{gap:8px}.topnav .textbtn{font-size:10px}.gift-tab{padding:8px 10px}.brand{font-size:20px}.cover-card{padding:52px 26px 41px}.cover-card h2{font-size:22px}.cover-card p{font-size:8px}.choice{padding:35px 15px 22px}.choice .info{padding:15px 0 8px}.choice h2{font-size:16px}.choice small{font-size:7px;letter-spacing:.7px}.choice p{font-size:10px}.choice .pick{font-size:10px;margin-top:12px}.result-card{padding:57px 29px 43px}.result-card h2{font-size:27px}#destiny{padding:30px 15px 20px}#destiny h2{font-size:44px;letter-spacing:8px}.destiny-cards{margin:20px auto 10px;height:173px}.soul-card{height:168px;width:112px}.soul-card.left{left:45px}.soul-card.right{right:45px}.destiny-caption{font-size:12px}.destiny-small{font-size:10px}#giftDialog{padding:25px 20px}.gift-card{padding:38px 20px}.gift-card h3{font-size:33px}}
@media(prefers-reduced-motion:reduce){.destiny-halo{animation:none}.soul-card,.soul-heart,.destiny-small,#destiny h2,.destiny-caption,.star-shower i{animation:none;opacity:1;filter:none}}

/* Refined celestial edition: ornament is confined above the photographs. */
:root{--ink:#493b40;--muted:#807278;--rose:#9c7282;--paper:#faf7f3;--line:#e4dcd8}
.cover-card,.result-card,.choice{background:#f4eceb url('assets/celestial-minimal.svg') center top/100% auto no-repeat;border:1px solid #cdbdb6;border-radius:11px;box-shadow:0 16px 38px #5f404011;}
.cover-card{transform:rotate(3deg);padding:82px 32px 32px}.cover-card .cardtop{font-size:8px;color:#8d7477;letter-spacing:2px;padding-bottom:24px}.cover-card img,.result-card img,.choice img{border:1px solid #c9b8a6;outline:1px solid #d9cbc1;outline-offset:6px}.cover-card h2{color:#77616b;font-style:normal;font-size:27px;margin-top:28px}.cover-card p{color:#817078;line-height:1.8}.seal{display:none}
.result-card{padding:80px 30px 29px}.card-label{color:#927b78;margin-bottom:25px}.result-card h2{font-style:normal;color:#77616b;margin:28px 0 10px}.result-card .ko{color:#806c75}.result-card .tags{margin:20px 0}.tags span{color:#847178;background:transparent;border-color:#d9cbc8}.card-bottom{color:#8d7b7b;border-color:#d9cbc8;padding-top:17px;margin-top:22px}
.choice{padding:80px 30px 25px}.choice .info{background:#f4eceb;padding:27px 0 4px;position:relative}.choice h2{color:#725d67}.choice p{color:#807078}.choice .pick{color:#8f6c7a;border-color:#ded0cf}.vs{background:#faf7f3;color:#977c83;border-color:#ddcfcd}.comparison{background:#f2eae8;border-color:#ddcfca}.comparison h3{color:#80616f}.code{background:#eee7e3}
.gift-card{background:#f4eceb url('assets/celestial-minimal.svg') center top/100% auto no-repeat;padding-top:90px;border-color:#cdbdb6;color:#8a6c78}.gift-star{display:none}.gift-card h3{font-style:normal}.gift-card strong,.gift-card small{line-height:1.8}
#encounter{width:min(590px,94vw);text-align:center;background:#faf6f2;padding:42px 38px;animation:wordReveal .65s ease both}#encounter>.close{position:absolute;right:20px;top:16px;color:#8a727b}.encounter-intro{font-size:11px;color:#958088;margin:23px 0 17px}#encounter h2{font-size:43px;color:#a76677;letter-spacing:6px;margin:0 0 25px}#encounter h2 span{display:block;font:11px 'Noto Sans KR',sans-serif;letter-spacing:5px;margin-bottom:12px}.encounter-pair{display:flex;align-items:center;gap:18px;max-width:340px;margin:0 auto}.encounter-pair figure{margin:0;flex:1;min-width:0}.encounter-pair img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:50%;border:1px solid #cbb9aa;padding:5px}.encounter-pair>span{color:#b29978}.encounter-pair figcaption{font-size:10px;color:#8a7780;margin-top:12px}.encounter-copy{line-height:1.8;color:#8f606b;font-size:18px;margin:27px 0 14px}.encounter-copy strong{font-weight:500}#encounter .fine{line-height:1.9}#encounter .primary{display:block;width:100%;margin:26px 0 17px}#encounter .textbtn{display:block;margin:auto}
@media(max-width:700px){.cover-card{padding:60px 25px 27px}.cover-card h2{font-size:21px}.cover-card p{font-size:9px}.result-card{padding:70px 29px 28px}.choice{padding:43px 16px 18px}.choice .info{padding-top:21px}.choice h2{font-size:16px}.choice p{font-size:10px}.choice .pick{margin-top:15px}.gift-card{padding-top:75px}#encounter{padding:35px 22px 25px}#encounter h2{font-size:36px}.encounter-copy{font-size:17px}.encounter-pair{max-width:280px}}
/* Interlaced frame inspired by the selected upper-left silhouette. */
.cover-card,.result-card,.choice{background:#f4eceb url('assets/interlaced-frame.svg') center/100% 100% no-repeat;border:0;border-radius:23px;box-shadow:0 12px 35px #65455112;padding:80px 48px 66px}
.cover-card img,.result-card img,.choice img{border:1.5px solid #b99580;outline:none;border-radius:50%;aspect-ratio:4/5}
.choice .info{background:transparent;padding:25px 0 0}.cover-card .cardtop{padding-bottom:20px}.result-card .card-label{margin-bottom:20px}.cover-card p{padding:0 5px}.card-bottom{font-size:7px;letter-spacing:.4px}.result-card h2{font-size:28px}.choice .pick{margin-top:19px}.cover-card h2{font-size:25px}
@media(max-width:700px){.cover-card{padding:62px 33px 51px}.cover-card h2{font-size:20px}.result-card{padding:70px 40px 58px}.choice{padding:49px 24px 47px;border-radius:16px}.choice h2{font-size:15px}.choice p{font-size:10px;line-height:1.8}.choice .info{padding-top:18px}.choice .pick{font-size:10px}.choice small{font-size:7px;letter-spacing:0}.result-card h2{font-size:27px}}
.cover-card,.result-card,.choice{padding-left:16%;padding-right:16%}
.photo-disclosure{display:block;font:9px/1.7 'Noto Sans KR',sans-serif!important;color:#806d75!important;text-align:center;margin:12px 0 5px;letter-spacing:0}.coupon-details{font-size:12px;line-height:2;margin:22px 0 0;overflow-wrap:anywhere}.coupon-details span{font-size:10px}#reservationMemo{white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;padding:16px;background:#eee6e4;font:11px/1.8 monospace;border-radius:5px}#giftDialog>#copyMemo,#giftDialog>#saveGift{width:100%;margin:6px 0}.choice .photo-disclosure{font-size:8px!important}.pair .photo-disclosure,.encounter-pair .photo-disclosure{font-size:8px!important}

/* Baby pink palette */
:root{--paper:#fff8f8;--rose:#b85d75;--ink:#553d42;--muted:#8b6b72;--line:#f0d8dd}body{background:#fff8f8}.cover-card,.result-card,.choice{background-color:#ffeef2}.cover-card h2,.result-card h2,.choice h2{color:#a35d70}.cover-card p,.choice p,.result-card .ko,.photo-disclosure{color:#92636e!important}.card-label,.cover-card .cardtop{color:#aa6879}.tags span{background:#fff5f7;border-color:#eabfc9;color:#996373}.card-bottom,.choice .pick{border-color:#ecc9d1;color:#a86274}.primary{background:#b85d75;border-color:#b85d75;color:#fff}.primary:hover{background:#a54c65}.secondary{background:#fff3f6;border-color:#d795a6;color:#a64d67}.gift-tab{border-color:#e9b5c2;color:#b05c74}.code,.invite{background:#ffe9ef}.comparison{background:#ffedf2;border-color:#f0c7d2}.comparison h3{color:#b05b73}.vs{background:#fff8f8;color:#b46c80;border-color:#ecc3ce}.gift-card{background-color:#fff0f4;color:#a45d73;border-color:#e4afbd}#reservationMemo{background:#ffeef3}#giftDialog h2,#giftDialog h3{color:#ac5b73}#encounter{background:#fff6f8}.encounter-intro,.encounter-pair figcaption{color:#a1707e}.story-hint{font-size:11px;line-height:1.8;text-align:center;color:#a16c7c;margin:2px 10px 8px}.gold-options button[aria-pressed=true]{background:#ffe8ef}.result-copy .fine{line-height:1.8}
#cardReveal{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;background:#000;color:#fff;padding:20px;overflow:auto;isolation:isolate}#cardReveal::backdrop{background:#000}.reveal-stage{position:relative;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.reveal-glow{position:absolute;inset:0;background:radial-gradient(ellipse at center,#ef9eb64d,transparent 65%);animation:lightAwake 3.8s ease both;pointer-events:none}.reveal-kicker{font-size:10px;letter-spacing:4px;color:#f7bfcd;animation:revealWords 1s ease .5s both}.cinema-card{position:relative;width:min(270px,65vw);padding:45px 40px;background:#ffeef2 url('assets/interlaced-frame.svg') center/100% 100%;color:#9e536a;border-radius:18px;text-align:center;box-shadow:0 0 80px #f6b1ca66;overflow:hidden;animation:cinemaCard 2s cubic-bezier(.15,.7,.2,1) .65s both}.cinema-card img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:50%;border:1px solid #cf91a0}.cinema-card h2{font:23px Georgia;margin:20px 0 6px}.cinema-card p{font-size:10px;line-height:1.8;margin:0}.cinema-card:after{content:'';position:absolute;inset:-100%;background:linear-gradient(115deg,transparent 45%,#fff9 50%,transparent 55%);animation:cinemaShine 1.2s ease 2s both;pointer-events:none}.reveal-message{font-family:'Noto Serif KR';font-size:20px;letter-spacing:2px;color:#ffe5ed;animation:revealWords .9s ease 2s both}.reveal-skip{border:1px solid #ffffff40;color:#ffe6ed;background:#000;padding:10px 20px;border-radius:30px;font-size:11px;z-index:2}.reveal-sample{font-size:9px;color:#d9b4bf;animation:revealWords .8s ease 2s both}
@keyframes cinemaCard{0%{opacity:0;transform:perspective(1000px) rotateY(90deg) scale(.6);filter:brightness(.1)}45%{opacity:1;filter:brightness(.6)}100%{opacity:1;transform:perspective(1000px) rotateY(0) scale(1);filter:brightness(1)}}@keyframes lightAwake{0%,15%{opacity:0}60%,100%{opacity:1}}@keyframes revealWords{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cinemaShine{from{transform:translateX(-45%)}to{transform:translateX(45%)}}
@media(max-height:650px){.cinema-card{width:190px;padding:30px}.reveal-stage{gap:8px}.reveal-message{font-size:16px}.cinema-card h2{font-size:19px}}

.booking-link{display:block;text-align:center;text-decoration:none;line-height:1.5}#giftDialog>.booking-link{margin:12px 0;width:100%}

/* Keep both photographed rings visible inside the existing oval cards. */
img[src*="-photo.png"]{object-fit:contain!important;background:#fbf1ed}#originalPhoto{width:min(680px,94vw);padding:36px 24px}#originalPhoto>img{display:block;width:100%;max-height:65vh;object-fit:contain;border-radius:12px}#originalPhoto .fine{line-height:1.9}.photo-disclosure{line-height:1.6!important;white-space:normal}#cardReveal .photo-disclosure{font-size:9px}

/* Keep the introduction and tournament focused on choosing a ring. */
body:has(#app .hero) header .topnav{display:none}
#app .game .photo-disclosure{display:none}

/* Product editorial refresh and a quieter result page. */
.cover-card img,.choice img,.result-card img,.cinema-card img{height:auto;object-fit:cover!important;background:#f4e9dc}
#catalogGrid img{height:auto}
.result-layout{align-items:start;gap:48px}
.result-visual{min-width:0}
.result-copy>.code{padding:12px 16px;margin:18px 0;font-size:12px}
.result-copy .actions{grid-template-columns:1fr;gap:10px;margin:20px 0 12px}
.result-copy .story-hint{font-size:11px;line-height:1.9;color:var(--muted);margin:0 0 20px}
.fitting-link{display:flex;flex-direction:column;gap:6px;align-items:center;width:100%;border:0;background:transparent;color:var(--rose);padding:22px 8px;font-size:13px}
.fitting-link span{font-size:11px;color:var(--muted)}
.compact-compare{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0;background:transparent;margin:20px 0}
.compact-compare summary{cursor:pointer;color:var(--rose);font-size:12px;padding:17px 0;list-style:none}
.compact-compare summary::after{content:'＋';float:right}.compact-compare[open] summary::after{content:'−'}
.compare-entry{padding:0 0 10px}.compare-entry label{display:block;margin-bottom:8px}.compare-entry>div{display:flex;gap:8px}.compare-entry input{min-width:0;flex:1;width:100%;margin:0;border-radius:8px}.compare-entry button{white-space:nowrap;padding:12px 18px;border-radius:8px}
.visit-invite{margin-top:22px;padding:19px 0}.visit-invite p{font-family:'Noto Serif KR',serif;font-size:15px;margin:0 0 10px}.visit-invite a{display:inline-block;padding:0;color:var(--rose);text-underline-offset:5px}.visit-invite small{display:block;font-size:10px;margin-top:12px;color:var(--muted)}
.replay-link{margin-top:10px;padding:8px 0}.result-disclaimer{max-width:580px;margin:32px auto 0;line-height:1.9;font-size:10px}
#shareDialog{width:min(460px,94vw);padding:42px 28px;text-align:center}#shareDialog h2{font-family:'Noto Serif KR';font-size:22px;font-weight:400;line-height:1.6}#shareDialog .fine{line-height:1.9}#shareDialog .primary{width:100%;margin:20px 0 12px}#shareDialog .textbtn{padding:14px}
.wear-photo{position:relative;overflow:hidden;background:#f4e9dc;background-image:none!important;background-size:auto;max-width:300px;aspect-ratio:3/4}
.wear-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .15s}
.wear-loading{display:none;position:absolute;inset:0;place-content:center;text-align:center;padding:15px;font-size:11px;color:var(--rose);line-height:1.8;background:#f7eee4}
.wear-photo.loading .wear-loading,.wear-photo.error .wear-loading{display:grid}.wear-photo.loading img,.wear-photo.error img{opacity:0}
#fitting .fit-note{font-size:11px;line-height:1.9}
@media(max-width:700px){.result-layout{gap:12px}.result-copy{padding-top:8px}.result-card{max-width:340px}.result h1{font-size:25px}.result-copy h2{font-size:25px}.result-copy .actions button{border-radius:8px}.result-copy>.eyebrow{margin-top:0}.fitting-link{padding:18px 0}.visit-invite{margin-top:10px}}
