:root{--ink:#392b36;--plum:#552b49;--coral:#ef6a5b;--yellow:#ffcf5c;--mint:#8bc7ad;--cream:#fffaf3;--line:#eadfd5;--muted:#766a72;--result-accent:#ef6a5b}*{box-sizing:border-box}html{min-height:100%;background:var(--cream)}body{margin:0;min-height:100vh;color:var(--ink);font-family:"Apple SD Gothic Neo","Noto Sans KR",system-ui,sans-serif;background:radial-gradient(circle at 8% 5%,rgba(255,207,92,.18),transparent 28%),radial-gradient(circle at 92% 88%,rgba(139,199,173,.18),transparent 28%),var(--cream);word-break:keep-all}button,a{font:inherit}button{color:inherit}.quiz-root{min-height:100vh;transition:opacity .15s ease,transform .15s ease}.quiz-root.leaving{opacity:0;transform:translateX(-10px)}.quiz-root.leaving-back{opacity:0;transform:translateX(10px)}.quiz-root.entering{animation:enter .25s ease}.quiz-root.entering-back{animation:enterBack .25s ease}@keyframes enter{from{opacity:0;transform:translateX(12px)}}@keyframes enterBack{from{opacity:0;transform:translateX(-12px)}}
.quiz-intro{width:min(1080px,calc(100% - 36px));min-height:100vh;margin:auto;padding:44px 0;display:grid;grid-template-columns:1.18fr .82fr;align-items:center;gap:56px;position:relative}.back-home{position:absolute;top:28px;left:0;display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--muted);font-size:14px;font-weight:700}.intro-visual{position:relative}.intro-visual:before{content:"";position:absolute;inset:-18px 20% -18px -18px;border:1px dashed rgba(85,43,73,.22);border-radius:38px;transform:rotate(-2deg)}.intro-visual img{position:relative;width:100%;aspect-ratio:1.45;object-fit:cover;border-radius:32px;box-shadow:0 24px 70px rgba(85,43,73,.16)}.intro-sticker{position:absolute;right:-16px;top:-16px;padding:10px 14px;background:var(--yellow);color:var(--plum);border-radius:14px 14px 14px 4px;font-size:12px;font-weight:900;transform:rotate(3deg);box-shadow:0 8px 18px rgba(70,45,60,.12)}.intro-type{color:var(--coral);font-size:12px;font-weight:900;letter-spacing:.06em}.intro-copy h1{margin:12px 0 16px;font-size:clamp(43px,5vw,64px);line-height:1.1;letter-spacing:-.06em}.intro-copy>p{font-size:17px;line-height:1.75;color:var(--muted);margin:0 0 23px}.intro-meta{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px;margin-bottom:28px}.intro-meta b{color:var(--plum)}.intro-meta i{width:3px;height:3px;background:#c6b9c1;border-radius:50%}.start-button{width:100%;border:0;background:var(--plum);color:#fff;border-radius:16px;padding:16px 18px;font-weight:900;font-size:16px;cursor:pointer;box-shadow:0 13px 28px rgba(85,43,73,.22);display:flex;align-items:center;justify-content:center;gap:20px;transition:.2s}.start-button span{font-size:20px}.start-button:hover{transform:translateY(-3px);box-shadow:0 17px 34px rgba(85,43,73,.26)}.intro-copy>small{display:block;text-align:center;margin-top:14px;color:#a0939b;font-size:12px}
.question-shell{width:min(820px,calc(100% - 32px));margin:auto;padding-bottom:48px}.quiz-top{height:84px;display:flex;align-items:center;justify-content:space-between}.mini-brand{display:flex;align-items:center;gap:8px;color:var(--plum);font-size:14px;font-weight:900;text-decoration:none}.mini-brand b{display:grid;place-items:center;width:32px;height:32px;background:var(--plum);color:var(--yellow);border-radius:11px;font-size:11px;letter-spacing:-2px}.close-quiz{width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:12px;cursor:pointer;font-size:21px}.progress-area{margin:14px 4px 27px}.progress-label{display:flex;justify-content:space-between;margin-bottom:9px;font-size:11px;color:#9b8e96;font-weight:800;letter-spacing:.1em}.progress-label b{color:var(--coral)}.progress-track{height:8px;background:#eee4dd;border-radius:999px;overflow:hidden}.progress-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--coral),#f49b6c);transition:width .35s ease}.progress-message{display:block;margin-top:9px;text-align:right;color:#9b8e96;font-size:11px;font-weight:700}.question-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fffdfb 100%);border:1px solid var(--line);border-radius:28px;padding:46px 54px 28px;box-shadow:0 20px 60px rgba(85,43,73,.08)}.question-card:before{content:"";position:absolute;width:180px;height:180px;right:-90px;top:-100px;border-radius:50%;background:radial-gradient(circle,rgba(255,207,92,.18),rgba(255,207,92,0) 68%);pointer-events:none}.question-scene{display:flex;justify-content:center;position:relative;z-index:1}.question-kicker{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:6px 11px;border:1px solid #f1d8c8;border-radius:999px;background:#fff7f1;text-align:center;color:var(--coral);font-size:11px;font-weight:900;letter-spacing:-.01em}.question-card h1{font-size:31px;line-height:1.38;letter-spacing:-.045em;text-align:center;max-width:610px;margin:12px auto 35px}.answer-list{display:grid;gap:12px}.answer-button{position:relative;width:100%;min-height:66px;border:1px solid var(--line);background:linear-gradient(135deg,#fff 0%,#fffdfa 100%);border-radius:18px;padding:11px 15px;display:grid;grid-template-columns:42px 1fr 28px;align-items:center;gap:13px;text-align:left;cursor:pointer;font-size:15px;font-weight:700;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.answer-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#fbf3eb;color:var(--plum);font-weight:900}.answer-copy{line-height:1.5}.answer-copy b.answer-emphasis{font-weight:900;color:var(--coral);background:linear-gradient(transparent 62%,rgba(255,207,92,.42) 62%)}.answer-button>b{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;background:#f5f0ed;color:#9e9098;font:800 11px/1 system-ui}.answer-button:hover{border-color:#c8aebb;transform:translateY(-2px);box-shadow:0 10px 22px rgba(85,43,73,.09)}.answer-button:active{transform:translateY(0) scale(.995)}.answer-button.selected{background:var(--plum);border-color:var(--plum);color:#fff;transform:scale(.99)}.answer-button.selected .answer-icon{background:var(--yellow)}.answer-button.selected .answer-copy b.answer-emphasis{color:var(--yellow);background:none}.answer-button.selected>b{background:#fff;color:var(--plum);font-size:0}.answer-button.selected>b:after{content:"✓";font-size:13px;font-weight:900}.question-foot{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.prev-button{border:0;background:transparent;padding:10px 0;color:var(--muted);cursor:pointer;font-size:13px;font-weight:800}.prev-button:disabled{opacity:.3;cursor:not-allowed}.question-foot small{font-size:11px;color:#a598a0}
.result-shell{width:min(780px,calc(100% - 32px));margin:auto;padding-bottom:70px}.result-top>span{font-size:10px;font-weight:900;letter-spacing:.18em;color:#9d9098}.result-card{background:#fff;border:1px solid var(--line);border-radius:30px;overflow:hidden;box-shadow:0 22px 70px rgba(85,43,73,.11)}.result-image-wrap{position:relative;background:#f7eee8;aspect-ratio:1.65;overflow:hidden}.result-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 44%}.result-number{position:absolute;left:20px;top:18px;padding:8px 10px;background:rgba(255,255,255,.86);border-radius:9px;color:var(--plum);font:900 9px/1.2 system-ui;letter-spacing:.12em}.result-spark{position:absolute;right:22px;top:18px;font-size:27px;color:var(--yellow);text-shadow:0 2px 0 var(--plum)}.result-copy{text-align:center;padding:33px 38px 36px}.result-label{font-size:12px;color:var(--result-accent);font-weight:900}.result-copy h1{font-size:48px;line-height:1;margin:10px 0 17px;letter-spacing:-.055em}.result-summary{max-width:570px;margin:0 auto 20px;font-size:16px;line-height:1.75;color:var(--muted)}.trait-chips{display:flex;justify-content:center;flex-wrap:wrap;gap:7px}.trait-chips span{padding:7px 10px;background:#f8f3ef;border-radius:8px;color:#766772;font-size:11px;font-weight:700}.score-breakdown{max-width:560px;margin:25px auto 0;padding:20px 22px;background:#fbf7f3;border-radius:18px;text-align:left}.score-breakdown h2{margin:0 0 15px;font-size:13px;color:var(--plum)}.score-row{display:grid;gap:6px;margin-top:11px}.score-row>div{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px;color:var(--muted)}.score-row b{color:var(--ink);font-size:12px}.score-row>i{height:8px;background:#ece5e0;border-radius:999px;overflow:hidden}.score-row em{display:block;height:100%;border-radius:999px;min-width:2px}.detail-card{margin-top:17px;padding:32px 34px;background:#fff;border:1px solid var(--line);border-radius:24px}.detail-heading{display:flex;align-items:center;gap:14px;margin-bottom:13px;font-size:14px;font-weight:900;color:var(--plum)}.detail-heading i{height:1px;flex:1;background:var(--line)}.detail-card>p{display:grid;grid-template-columns:32px 1fr;gap:12px;margin:0;padding:14px 0;border-bottom:1px solid #f0e8e2;color:var(--muted);font-size:14px;line-height:1.7}.detail-card>p>b{color:var(--result-accent);font-size:11px;padding-top:4px}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.detail-columns>div{padding:20px;background:#fbf7f3;border-radius:16px}.detail-columns h2{font-size:14px;margin:0 0 12px}.detail-columns ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}.detail-columns li{font-size:12px;color:var(--muted);padding-left:14px;position:relative}.detail-columns li:before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;background:var(--result-accent);border-radius:50%}.match-note{margin-top:16px;padding:18px 20px;border:1px dashed #d8c6cf;border-radius:16px}.match-note span{font-size:11px;font-weight:900;color:var(--result-accent)}.match-note p{margin:4px 0 0;font-size:13px;color:var(--muted)}.result-actions{display:grid;grid-template-columns:1.3fr 1fr;gap:10px;margin-top:18px}.result-actions button,.result-actions a{border:0;border-radius:14px;padding:15px 16px;font-weight:900;cursor:pointer;text-decoration:none;text-align:center}.share-button{background:var(--plum);color:#fff}.replay-button{background:#fff;border:1px solid var(--line)!important}.result-actions a{grid-column:span 2;background:transparent;color:var(--muted);font-size:13px}.fun-note{text-align:center;color:#a79aa2;font-size:10px}.image-fallback{display:grid;place-items:center}.image-fallback:after{content:"이미지를 불러오지 못했지만 결과는 그대로 확인할 수 있어요";padding:30px;text-align:center;color:var(--muted);font-size:13px}.toast{position:fixed;z-index:20;left:50%;bottom:24px;transform:translate(-50%,20px);padding:12px 18px;border-radius:12px;background:#30242d;color:#fff;font-size:13px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}.confetti{position:absolute;z-index:4;left:50%;top:45%;width:8px;height:15px;background:var(--c);border-radius:3px;animation:burst var(--d) ease-out forwards}@keyframes burst{to{transform:translate(var(--x),170px) rotate(var(--r));opacity:0}}.loading-state,.error-state{min-height:100vh;display:grid;place-content:center;text-align:center;padding:30px;color:var(--muted)}.loading-state span{width:42px;height:42px;margin:auto;border:4px solid #eadfd5;border-top-color:var(--coral);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-state b{font-size:22px;color:var(--plum)}.error-state a{color:var(--coral)}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
@media(max-width:780px){.quiz-intro{grid-template-columns:1fr;gap:28px;padding:72px 0 38px;align-content:start}.intro-visual{width:min(600px,100%);margin:auto}.intro-copy{text-align:center}.intro-copy>p{max-width:500px;margin-inline:auto}.intro-meta,.start-button{max-width:500px;margin-inline:auto}.question-card{padding:38px 30px 25px}}
@media(max-width:520px){.quiz-intro{width:min(100% - 26px,1080px);padding-top:64px}.back-home{top:20px}.intro-visual img{border-radius:23px;aspect-ratio:1.2}.intro-sticker{right:8px;top:-10px}.intro-copy h1{font-size:39px}.intro-copy>p{font-size:14px}.intro-meta{justify-content:center}.question-shell,.result-shell{width:min(100% - 24px,820px)}.quiz-top{height:68px}.mini-brand span{display:none}.question-card{padding:30px 16px 20px;border-radius:22px}.question-kicker{font-size:10px;min-height:26px;padding:5px 9px}.progress-message{text-align:center;font-size:10px}.question-card h1{font-size:24px;margin-bottom:26px}.answer-button{min-height:62px;grid-template-columns:39px 1fr 23px;gap:10px;padding:10px;font-size:14px}.answer-icon{width:39px;height:39px}.answer-button:hover{transform:none}.question-foot{align-items:flex-start}.question-foot small{max-width:150px;text-align:right}.result-image-wrap{aspect-ratio:1.15}.result-copy{padding:28px 20px 30px}.result-copy h1{font-size:40px}.result-summary{font-size:14px}.trait-chips span{font-size:10px}.detail-card{padding:25px 18px}.detail-columns{grid-template-columns:1fr}.result-actions{grid-template-columns:1fr}.result-actions a{grid-column:auto}.confetti{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
