:root{font-family:DM Sans,sans-serif;color:#271d1c;background:#f8f5ef;font-synthesis:none;--paper: #f8f5ef;--ink: #271d1c;--muted: #675953;--line: #dcd1c7;--rose: #ad2945;--rose-dark: #8d1e36;--serif: "Playfair Display", Georgia, serif}*{box-sizing:border-box}body{margin:0;min-width:300px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,input:focus-visible+span{outline:3px solid var(--rose);outline-offset:4px}h1:focus{outline:none}img{display:block;width:100%;object-fit:cover}.site{max-width:1336px;min-height:100svh;padding:0 56px;margin:auto;display:flex;flex-direction:column}.topbar,footer{display:flex;justify-content:space-between;align-items:center;gap:16px}.topbar{min-height:85px;border-bottom:1px solid var(--line)}.site:has(.quiz,.result) .topbar{min-height:64px}.brand{display:flex;align-items:center;gap:8px;padding:0;border:0;background:none;color:var(--ink);font-size:24px;font-weight:700;letter-spacing:-.07em}.brand-light{margin-left:-7px;font-weight:500}.mark{width:32px;height:32px;border-radius:9px;background:var(--rose);color:#fff7f5;display:grid;place-items:center}.mark svg{width:18px}.top-note,footer,.eyebrow,.art-index,.art-caption,.round-meta{font-size:11px;font-weight:700;letter-spacing:.14em}.top-note,footer,.round-meta{color:var(--muted)}footer{min-height:68px;margin-top:auto;border-top:1px solid var(--line)}.footer-note{letter-spacing:0;font-weight:500}footer>span>span{color:var(--rose);padding:0 4px}.footer-support{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-height:44px;color:var(--rose-dark);font-size:13px;letter-spacing:0;text-decoration:none}.footer-support span{font-weight:500;text-decoration:underline;text-underline-offset:3px}.footer-support:hover{color:var(--ink)}.footer-support:focus-visible{outline:3px solid var(--rose);outline-offset:2px}.home{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:clamp(40px,7vw,104px);align-items:center;padding:66px 0 76px;flex:1}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--rose-dark);margin:0 0 18px}.eyebrow span{width:7px;height:7px;border-radius:50%;background:var(--rose)}h1,h2{font-family:var(--serif);margin:0}h1{font-weight:700;letter-spacing:-.065em;line-height:.98;font-size:clamp(65px,8.4vw,127px);text-wrap:balance}h1 em{color:var(--rose);font-weight:700}.lede{font-size:clamp(16px,1.65vw,20px);line-height:1.55;color:var(--muted);max-width:400px;margin:24px 0 28px;text-wrap:pretty}.group-picker{padding:0;margin:0 0 19px;border:0}.group-picker legend{font-weight:700;font-size:14px;margin-bottom:10px}.options{display:flex;gap:8px;flex-wrap:wrap}.options label{position:relative}.options input{position:absolute;opacity:0}.options span{display:block;padding:8px 20px;border:1px solid var(--line);border-radius:99px;font-size:14px;font-weight:600;cursor:pointer}.options input:checked+span{background:#f6e2e3;border-color:#b65768;color:#831c35}.primary,.secondary{min-height:46px;border-radius:7px;font-size:14px;font-weight:700}.primary{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;padding:0 17px;background:var(--rose);border:1px solid var(--rose);color:#fff}.primary:hover{background:var(--rose-dark);border-color:var(--rose-dark)}.primary span{font-size:19px}.primary:disabled{opacity:.65}.start{min-width:min(100%,258px)}.secondary{padding:0 14px;background:transparent;border:1px solid var(--line);color:var(--ink)}.secondary:hover:enabled{background:#eee6dd}.secondary:disabled{opacity:.42}.fineprint{display:block;font-size:12px;color:var(--muted);margin:12px 0 0}.hero-art{background:#ecd9d3;min-width:0;aspect-ratio:1.03;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:19px;overflow:hidden;isolation:isolate}.hero-art:before{content:"";position:absolute;z-index:-1;inset:0;opacity:.7;background-image:radial-gradient(#ad756f .65px,transparent .65px);background-size:6px 6px;-webkit-mask-image:linear-gradient(120deg,#000,transparent 75%);mask-image:linear-gradient(120deg,#000,transparent 75%)}.art-index,.art-caption{display:flex;justify-content:space-between;gap:10px;color:#733e42}.art-caption{align-items:end}.art-caption span:last-child{font:italic 600 17px var(--serif);letter-spacing:0}.collage{position:absolute;inset:11% 15%}.polaroid{position:absolute;width:52%;padding:6px 6px 3px;background:#fff9f0;box-shadow:0 5px 16px #643e3b30}.polaroid img{height:auto;aspect-ratio:1.14}.polaroid span{display:block;padding:2px 0 0;color:#74564d;font:italic 600 12px var(--serif)}.polaroid-0{left:0;top:1%;transform:rotate(-10deg);z-index:1}.polaroid-1{right:0;top:4%;transform:rotate(9deg)}.polaroid-2{left:2%;bottom:1%;transform:rotate(5deg)}.polaroid-3{right:1%;bottom:0;transform:rotate(-7deg);z-index:2}.art-heart{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-13deg);background:var(--rose);color:#fff7f5;border:3px solid #f9e6da;width:55px;height:55px;border-radius:50%;display:grid;place-items:center;box-shadow:0 2px 6px #643e3b36}.art-heart svg{width:28px;height:28px}#root:has(.quiz,.result)+.home-content{display:none}.home-guide{border-top:1px solid var(--line);padding:52px 0 62px}.guide-intro{max-width:620px}.home-guide h2{font-size:clamp(31px,4.4vw,52px);letter-spacing:-.045em;line-height:1.06}.home-guide p:not(.eyebrow){color:var(--muted);line-height:1.55;margin:11px 0 0}.guide-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;list-style:none;padding:0;margin:30px 0 42px}.guide-steps li{border-top:1px solid var(--line);padding-top:14px}.guide-steps li>span{font:italic 700 24px var(--serif);color:var(--rose)}.guide-steps h3{font-size:17px;margin:8px 0 0}.guide-faq{display:grid;grid-template-columns:1fr 2fr;gap:25px;align-items:start}.guide-faq h2{font-size:clamp(27px,3vw,39px)}.faq-items details{border-top:1px solid var(--line);padding:12px 0}.faq-items details:last-child{border-bottom:1px solid var(--line)}.faq-items summary{cursor:pointer;font-weight:700}.faq-items summary:focus-visible{outline:3px solid var(--rose);outline-offset:4px}.quiz{width:min(100%,860px);margin:38px auto 44px}.round-meta{display:flex;justify-content:space-between;margin-bottom:10px}.progress{display:flex;gap:5px;margin-bottom:24px}.progress i{display:block;flex:1;height:4px;border-radius:10px;background:#e8dad0}.progress i.active{background:var(--rose)}.quiz h1,.result h1{font-size:clamp(38px,6vw,72px)}.quiz-heading p,.breakdown>p{color:var(--muted);margin:12px 0 20px;font-size:15px}.face-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.face{position:relative;display:block;padding:0;width:100%;border:0;border-radius:8px;overflow:hidden;background:#e6d9d0;color:#fff}.face img{aspect-ratio:1.18;height:auto;transition:filter .16s}.face:hover img{filter:brightness(.93)}.face:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.face.picked:after{box-shadow:inset 0 0 0 3px var(--rose)}.face-number,.face-heart{position:absolute;z-index:1;background:#29201ebd}.face-number{top:7px;left:7px;border-radius:4px;padding:3px 6px;font-size:10px}.face-heart{bottom:7px;right:7px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center}.face.picked .face-heart{background:var(--rose)}.quiz-actions{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:17px}.picked-count{font-size:13px;color:var(--muted)}.result{width:min(100%,900px);margin:54px auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:32px;align-items:start}.result-card{min-width:0}.result-poster{display:block;width:100%;height:auto;background:#fbf4e9;border-radius:8px;box-shadow:0 10px 30px #501a2c24}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.card-loading-title,.card-loading-copy{padding:0 18px}.result-details{min-width:0}.share-controls{margin-bottom:26px}.share-actions{display:flex;flex-wrap:wrap;gap:8px}.share-actions a{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.share-actions a:focus-visible{outline:3px solid var(--rose);outline-offset:4px}.share-caption{margin:12px 0 0;padding:11px 13px;background:#efe5df;border-left:2px solid var(--rose);color:var(--muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.share-status{color:var(--muted);font-size:13px;margin:8px 0 0}.share-status:empty{margin:0}.breakdown h2{font-size:31px;letter-spacing:-.04em}.stat{margin:13px 0}.stat>div{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:700}.stat meter{display:block;width:100%;height:12px;accent-color:var(--rose)}.stat meter::-webkit-meter-bar{background:#eadfd6;border:0}.stat meter::-webkit-meter-optimum-value{background:var(--rose)}.result-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}@media(max-width:900px){.site{padding:0 32px}.home{gap:40px}}@media(max-width:680px){.site{padding:0 18px}.topbar{min-height:62px}.brand{font-size:21px}.mark{width:29px;height:29px}.top-note{font-size:9px;letter-spacing:.1em}.home{grid-template-columns:1fr;gap:27px;padding:35px 0 29px}h1{font-size:clamp(49px,11vw,76px)}.eyebrow{margin-bottom:13px}.lede{margin:16px 0 19px}.hero-art{aspect-ratio:1.3}.home-guide{padding:32px 0 35px}.guide-steps,.guide-faq{grid-template-columns:1fr;gap:15px}.guide-steps{margin:21px 0 29px}.collage{inset:10% 24%}.art-index,.art-caption{font-size:8px}.art-caption span:last-child{font-size:13px}.art-heart{width:43px;height:43px}footer{display:grid;grid-template-columns:auto 1fr;gap:0 16px;padding-top:12px;font-size:10px}.footer-note{text-align:right}.footer-support{grid-column:1 / -1;justify-self:start}.quiz{margin:24px auto 27px}.face-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.face img{aspect-ratio:1.58;object-position:center 39%}.face-heart{width:30px;height:30px}.face-heart svg{width:17px}.result{display:block;margin:28px 0}.share-controls{padding-top:16px}.breakdown{margin:24px 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}.top-nav{display:flex;align-items:center;gap:clamp(12px,3vw,28px)}.top-nav a{color:var(--ink);font-size:14px;font-weight:700;text-decoration:none;padding:8px 12px;border-radius:6px}.top-nav a:hover,.top-nav a[aria-current=page]{background:#f6e2e3;color:var(--rose-dark)}.top-nav a:focus-visible,a.brand:focus-visible{outline:3px solid var(--rose);outline-offset:4px}a.brand{text-decoration:none}@media(max-width:480px){.top-nav .top-note{display:none}.top-nav{gap:3px}.top-nav a{padding-inline:9px}}.home h1{font-size:clamp(60px,8vw,112px)}@media(max-width:680px){.home h1{font-size:clamp(48px,11vw,74px)}}.home-editorial{max-width:930px;margin:0 auto 36px}.guide-chapter{border-top:1px solid var(--line);padding:clamp(24px,4vw,40px) 0}.home-guide .guide-chapter p{margin-top:14px;line-height:1.65}.guide-figure{margin:20px 0 0}.guide-figure img{height:auto;border:1px solid var(--line);border-radius:7px}.guide-figure figcaption{color:var(--muted);font-size:13px;line-height:1.5;margin-top:8px}.guide-example{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.6fr);gap:22px;align-items:start}.guide-chapter p a{color:var(--rose-dark);text-underline-offset:3px}.guide-start{margin-top:18px;text-decoration:none}@media(max-width:680px){.guide-example{grid-template-columns:1fr;gap:0}.guide-example .guide-figure{max-width:420px}}:lang(ko){--serif: "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif}:root:lang(ko){font-family:var(--serif);word-break:keep-all;overflow-wrap:anywhere}:lang(ko) h1{line-height:1.12;letter-spacing:-.045em}:lang(ko) h1 em{font-style:normal}:lang(ko) .home h1{font-size:clamp(48px,6vw,90px)}:lang(ko) .art-caption span:last-child{font-style:normal}:root:lang(zh-CN){--serif: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;font-family:var(--serif);overflow-wrap:anywhere}:root:lang(zh-CN) h1,:root:lang(zh-CN) h2{letter-spacing:-.025em;line-height:1.2}:root:lang(zh-CN) h1 em,:root:lang(zh-CN) .art-caption span:last-child{font-style:normal}:root:lang(zh-CN) .home h1{font-size:clamp(48px,6.4vw,93px)}:root:lang(zh-CN) :is(.top-note,.eyebrow,.art-index,.art-caption,.round-meta){letter-spacing:.06em}@media(max-width:680px){:root:lang(zh-CN) .collage{inset-block-end:17%}}@media(max-width:480px){.topbar{gap:8px}.brand,.top-nav a{white-space:nowrap}.top-nav{flex-wrap:wrap;justify-content:flex-end}}.language-picker{position:relative;white-space:nowrap}.language-picker summary{display:flex;align-items:center;gap:7px;min-height:36px;padding:6px 9px;border:1px solid var(--line);border-radius:6px;color:var(--ink);font-size:13px;font-weight:700;cursor:pointer;list-style:none}.language-picker summary::-webkit-details-marker{display:none}.language-picker summary:before{content:"";width:16px;height:16px;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cellipse cx='12' cy='12' rx='4' ry='9'/%3E%3Cpath d='M3 12h18'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cellipse cx='12' cy='12' rx='4' ry='9'/%3E%3Cpath d='M3 12h18'/%3E%3C/svg%3E") center / contain no-repeat}.language-picker summary:after{content:"";width:5px;height:5px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:translateY(-1px) rotate(45deg)}.language-picker[open] summary:after{transform:translateY(1px) rotate(225deg)}.language-picker summary:hover,.language-picker[open] summary{background:#f6e2e3;color:var(--rose-dark)}.language-picker summary:focus-visible{outline:3px solid var(--rose);outline-offset:4px}.language-options{position:absolute;z-index:10;top:calc(100% + 6px);inset-inline-end:0;min-width:125px;margin:0;padding:4px;list-style:none;background:var(--paper);border:1px solid var(--line);border-radius:7px;box-shadow:0 6px 20px #501a2c20}.language-options a,.language-options span{display:block;padding:8px 9px;font-size:14px;border-radius:4px}.language-options span{background:#f6e2e3;color:var(--rose-dark);font-weight:700}@media(max-width:380px){.topbar:has(.blog-quiz-link){flex-wrap:wrap;padding:10px 0}.topbar:has(.blog-quiz-link) .top-nav{flex-basis:100%;justify-content:space-between}}
