:root{--deep-green:#2a3828;--deep-green-soft:#3b4c37;--beige:#f2ede4;--beige-card:#faf7f0;--gold:#b8965a;--gold-soft:#d8c29d;--ink:#3a342b;--ink-soft:#6b6459;--line:#e4dbc8}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--deep-green);color:var(--ink);scroll-behavior:smooth;font-family:Noto Sans KR,sans-serif}.scroller{scroll-snap-type:y mandatory;height:100svh;overflow-y:auto}.card{scroll-snap-align:start;justify-content:center;align-items:center;min-height:100svh;padding:48px 24px;display:flex;position:relative}.inner{width:100%;max-width:480px}.dots{z-index:50;flex-direction:column;gap:10px;display:flex;position:fixed;top:50%;right:14px;transform:translateY(-50%)}.dot{background:#ffffff40;border-radius:50%;width:6px;height:6px}.dot.active{background:var(--gold)}.reveal{background:radial-gradient(circle at 50% 30%, #35462f 0%, var(--deep-green) 70%);color:var(--beige);text-align:center;flex-direction:column}.reveal .eyebrow{color:var(--gold-soft);letter-spacing:.28em;text-transform:uppercase;margin-bottom:30px;font-size:9px}.reveal .name{color:var(--gold-soft);margin-bottom:8px;font-family:Noto Serif KR,serif;font-size:20px;font-weight:500}.reveal .report-title{color:#f2ede4b3;letter-spacing:.02em;margin-bottom:26px;font-family:Noto Serif KR,serif;font-size:20px}.illust{overflow:hidden}.illust.type-card{background:#faf8f3;border:1px solid #9aaf91;border-radius:16px;justify-content:center;align-items:center;width:280px;height:200px;margin-bottom:22px;display:flex;position:relative;overflow:hidden}.illust.type-card:before{content:"";z-index:2;pointer-events:none;border:1px solid #78916e73;border-radius:10px;position:absolute;inset:6px}.illust.type-card img{object-fit:contain;width:100%;height:100%;display:block}.type-result-label{color:var(--gold-soft);letter-spacing:-.02em;word-break:keep-all;margin-bottom:8px;font-family:Noto Sans KR,sans-serif;font-size:14px;font-weight:600;line-height:1.5}.reveal .typename{color:#faf7f0;letter-spacing:-.03em;word-break:keep-all;max-width:360px;font-family:Noto Serif KR,serif;font-size:34px;font-weight:700;line-height:1.35}.typename strong{color:#faf7f0;font-weight:700;display:block}.scrolldown{color:#f2ede466;letter-spacing:.2em;font-size:11px;position:absolute;bottom:36px}.calla-intro-card{color:#faf7f0;text-align:center;background:#6b7a63}.calla-intro-inner{width:100%;max-width:480px}.calla-eyebrow{color:#e8d7b8;letter-spacing:.35em;margin-bottom:32px;font-size:10px}.calla-intro-inner h2{color:#faf7f0;margin-bottom:28px;font-family:Noto Serif KR,serif;font-size:30px;font-weight:500;line-height:1.5}.calla-text{color:#faf7f0d9;letter-spacing:-.03em;font-family:Noto Sans KR,sans-serif;font-size:15px;line-height:1.8}.calla-text p{margin-bottom:18px}.calla-text .calla-last{color:#faf7f0;margin-top:26px;margin-bottom:0}.calla-text strong{color:#faf7f0;font-weight:700}.content-card{background:var(--beige)}.eyebrow-row{align-items:center;gap:10px;width:100%;margin-bottom:18px;display:flex}.num{color:var(--gold);font-family:Noto Serif KR,serif;font-size:13px}.section-label{color:var(--ink-soft);font-family:Noto Sans KR,sans-serif;font-size:12px}.rule{background:var(--line);flex:1;height:1px}.card-summary{border-left:3px solid var(--gold);color:var(--deep-green);letter-spacing:-.03em;margin-bottom:20px;padding-left:18px;font-family:Noto Serif KR,serif;font-size:26px;font-weight:600;line-height:1.5}.detail{color:var(--ink);letter-spacing:-.02em;white-space:pre-line;word-break:keep-all;font-family:Noto Sans KR,sans-serif;font-size:15px;line-height:1.78}.detail p{margin-bottom:12px;font-family:Noto Sans KR,sans-serif}.detail p:last-child{margin-bottom:0}.point-box{border:1px solid var(--line);background:var(--beige-card);border-radius:14px;margin-top:18px;padding:18px 20px}.point-box ul{margin:0;padding:0;list-style:none}.point-box li{margin-bottom:8px;padding-left:18px;font-family:Noto Sans KR,sans-serif;font-size:14.5px;line-height:1.7;position:relative}.point-box li:last-child{margin-bottom:0}.point-box li:before{content:"•";color:var(--gold);position:absolute;left:0}.keyword-tags{flex-wrap:wrap;gap:8px;margin-top:10px;margin-bottom:18px;display:flex}.keyword-tags span{color:#8c7a59;background:#f5f1ea;border-radius:999px;padding:7px 12px;font-family:Noto Sans KR,sans-serif;font-size:12px;font-weight:600;line-height:1}.section03-one-liner-box{border:1px solid var(--line);background:var(--beige-card);border-radius:16px;margin-top:8px;padding:22px 20px}.section03-one-liner-label{color:var(--gold);letter-spacing:.08em;margin-bottom:10px;font-family:Noto Sans KR,sans-serif;font-size:11px;font-weight:700;line-height:1}.section03-one-liner{color:var(--deep-green);letter-spacing:-.03em;word-break:keep-all;font-family:Noto Sans KR,sans-serif;font-size:18px;font-weight:700;line-height:1.7}.section03-divider{background:var(--line);width:100%;height:1px;margin:16px 0}.section03-detail{font-family:Noto Sans KR,sans-serif}.section03-detail p{margin:0 0 12px;font-family:Noto Sans KR,sans-serif;font-size:15px;line-height:1.85}.section03-detail p:last-child{margin-bottom:0}.section03-meaning{background:var(--beige-card);color:var(--ink);letter-spacing:-.02em;word-break:keep-all;border-radius:0 16px 16px 0;margin-top:18px;padding:18px;font-family:Noto Sans KR,sans-serif;font-size:16px;font-weight:500;line-height:1.72}.support-detail{font-size:15px;line-height:1.78}.support-detail p{margin-bottom:12px}.action-block{border:1px solid var(--line);background:var(--beige-card);border-radius:14px;margin-top:18px;padding:18px 20px;font-family:Noto Sans KR,sans-serif}.action-label{color:var(--gold);margin-bottom:10px;font-family:Noto Sans KR,sans-serif;font-size:12px;font-weight:700}.action-title{color:var(--deep-green-soft);margin-bottom:8px;font-family:Noto Sans KR,sans-serif;font-size:17px;font-weight:700;line-height:1.6}.action-content{color:var(--ink);font-family:Noto Sans KR,sans-serif;font-size:14.5px;line-height:1.8}.lifestyle-suggestion{margin-top:20px}.suggestion-title{border:0;margin:0 0 7px;padding:0;font-family:Noto Sans KR,sans-serif}.suggestion-title h3{color:var(--deep-green-soft);letter-spacing:-.025em;word-break:keep-all;margin:0;font-family:Noto Sans KR,sans-serif;font-size:15px;font-weight:700;line-height:1.6}.suggestion-text{color:var(--ink-soft);letter-spacing:-.02em;word-break:keep-all;margin:0;font-family:Noto Sans KR,sans-serif;font-size:14px;line-height:1.8}.suggestion-text p{margin:0}.nutrient-card{background:var(--beige)}.single-nutrient{border:1px solid var(--line);background:var(--beige-card);text-align:center;border-radius:16px;margin:18px 0;padding:20px 18px}.single-nutrient-label{color:var(--gold);letter-spacing:.08em;margin-bottom:10px;font-family:Noto Sans KR,sans-serif;font-size:11px;font-weight:700}.single-nutrient-name{color:var(--deep-green);font-family:Noto Serif KR,serif;font-size:24px;font-weight:600;line-height:1.5}.nutrient-detail{margin-bottom:14px}.routine-block{border:1px solid var(--line);background:var(--beige-card);border-radius:14px;margin-top:8px;padding:15px 17px;font-family:Noto Sans KR,sans-serif}.routine-block .k{color:var(--gold);margin-bottom:8px;font-family:Noto Sans KR,sans-serif;font-size:12px;font-weight:700}.routine-block .v{color:var(--ink);white-space:pre-line;word-break:keep-all;font-family:Noto Sans KR,sans-serif;font-size:14px;line-height:1.7}.selfcare-text{color:var(--deep-green-soft);border-top:1px solid #b8965a4d;margin-top:18px;padding-top:16px;font-family:Noto Sans KR,sans-serif;font-size:15px;font-weight:500;line-height:1.7}.card.closing{min-height:100svh;color:var(--beige);text-align:center;background-color:#2a3828;background-image:linear-gradient(#2a3828 0%,#223020 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.card.closing .inner{flex-direction:column;align-items:center;width:100%;max-width:480px;display:flex}.card.closing .eyebrow-row{width:100%}.card.closing .num{color:var(--gold)}.card.closing .section-label{color:#f2ede4b3}.card.closing .rule{background:#f2ede440}.card.closing .quote{color:#faf7f0;letter-spacing:-.03em;word-break:keep-all;max-width:400px;margin:36px auto 28px;font-family:Noto Serif KR,serif;font-size:24px;font-weight:500;line-height:1.65}.card.closing .cheer{color:#f2ede4c7;letter-spacing:-.02em;word-break:keep-all;max-width:340px;margin:0 auto;font-family:Noto Sans KR,sans-serif;font-size:15px;line-height:1.9}.card.closing .cheer p{font-family:Noto Sans KR,sans-serif}.card.closing .brandmark{color:#f2ede499;letter-spacing:.15em;text-align:center;width:calc(100% - 48px);font-family:Noto Sans KR,sans-serif;font-size:10.5px;line-height:1.6;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}@media (max-width:480px){.card{padding:38px 24px}.card-summary{font-size:24px}.reveal .typename{font-size:30px}.type-result-label{font-size:13px}.calla-intro-inner h2{font-size:27px}.card.closing .quote{font-size:22px}}.type-intro{color:var(--ink-soft);letter-spacing:-.02em;word-break:keep-all;margin:0 0 18px;font-family:Noto Sans KR,sans-serif;font-size:14.5px;line-height:1.72}.type-intro+.card-summary{margin-top:0}.content-card strong{color:inherit;font-weight:700}.closing .quote{color:#9b7768;letter-spacing:.03em;word-break:keep-all;line-height:1.7}.lifestyle-suggestion-label{color:#fff;letter-spacing:-.02em;background:#b78a3c;border-radius:2px 10px 10px 2px;align-items:center;height:22px;margin-bottom:10px;padding:0 9px 0 11px;font-family:Pretendard,Noto Sans KR,sans-serif;font-size:10.5px;font-weight:600;line-height:1;display:inline-flex}.lifestyle-suggestion-label:after{content:"";background:#fffc;border-radius:50%;width:3px;height:3px;margin-left:7px;display:block}
