@import "https://fonts.googleapis.com/css2?family=Inter:wght@500;600;700;800;900&family=Noto+Sans+KR:wght@400;500;700;800;900&display=swap";:root{--bg:#070a10;--screen:#f7f8fb;--ink:#10141d;--muted:#6d7482;--soft:#eef1f6;--card:#ffffffd6;--line:#0f172a17;--blue:#3b82f6;--blue2:#7c3aed;--mint:#16c7a7;--amber:#f59e0b;--dark:#0f172a;--shadow:0 22px 60px #0f172a29;--radius:28px}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,Noto Sans KR,-apple-system,BlinkMacSystemFont,system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer;border:0}button:disabled{opacity:.38;cursor:not-allowed}h1,h2,p{word-break:keep-all}.stage{background:radial-gradient(740px 520px at 16% 6%,#3b82f63d,#0000 58%),radial-gradient(640px 480px at 92% 94%,#7c3aed3d,#0000 56%),linear-gradient(135deg,#06070b,#0d1220 50%,#111827);place-items:center;width:100%;height:100svh;display:grid}.phone{background:#f7f8fb;width:min(430px,100%);height:100svh;position:relative;overflow:hidden}.screen{background:linear-gradient(#fbfcff,#f2f5fa);flex-direction:column;height:100%;display:flex;overflow:hidden}.page{min-height:0;padding:18px 18px calc(18px + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;gap:14px;display:flex;position:relative;overflow:hidden}.page>*{z-index:1;position:relative}.homebar{display:none}.page:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle,#3b82f629,#0000 68%);height:260px;position:absolute;inset:auto -60px -120px}.eyebrow{color:#64748b;letter-spacing:.18em;text-transform:uppercase;margin:0 0 8px;font-size:10.5px;font-weight:900}.lead{color:#647084;letter-spacing:-.035em;margin:0;font-size:15.5px;font-weight:650;line-height:1.55}.cta,.secondary{letter-spacing:-.035em;border-radius:20px;height:56px;font-weight:900;transition:transform .18s,box-shadow .18s}.cta:active,.secondary:active{transform:scale(.985)}.cta{background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;width:100%;box-shadow:0 18px 36px #3b82f647,inset 0 1px #fff3}.secondary{color:#111827;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffc2;width:100%}.bottomActions{flex:none;gap:12px;padding-top:2px;display:flex}.bottomActions.two{grid-template-columns:1fr 1.18fr;display:grid}.iconBtn{color:#172033;background:#ffffffb8;border-radius:17px;width:44px;height:44px;font-size:30px;line-height:1;box-shadow:0 12px 26px #0f172a14,inset 0 0 0 1px #0f172a14}.ghostBtn{width:44px;height:44px}.topNav{flex:none;grid-template-columns:46px 1fr 46px;align-items:center;gap:8px;min-height:48px;display:grid}.topNav>div{text-align:center;letter-spacing:-.035em;font-weight:900}.topNav span{font-size:15px}.progressDots{justify-content:center;gap:4px;height:6px;margin:8px auto 0;display:flex}.progressDots i{background:#d9dee8;border-radius:99px;width:14px;height:6px}.progressDots i.on{background:linear-gradient(90deg,var(--blue),var(--blue2))}.landingPage{color:#fff;text-align:left;isolation:isolate;background:radial-gradient(280px 260px at 76% 13%,#3b82f661,#0000 70%),radial-gradient(220px 180px at 12% 82%,#16c7a738,#0000 72%),linear-gradient(#0a1020,#070a10);justify-content:space-between;padding:28px 22px 20px}.landingPage:before{content:"";z-index:0;background:linear-gradient(145deg,#ffffff2e,#ffffff0a);border:1px solid #ffffff1f;border-radius:42px;height:260px;position:absolute;inset:88px 20px auto;transform:rotate(-4deg);box-shadow:0 30px 70px #00000042}.landingPage .eyebrow{color:#98b9ff}.brandMark{background:#ffffff1f;border:1px solid #ffffff29;border-radius:23px;place-items:center;width:66px;height:66px;display:grid;box-shadow:0 18px 45px #00000038}.brandMark span{color:#fff;font-size:28px;font-weight:900}.heroOrb{isolation:isolate;background:conic-gradient(from 210deg,#3b82f6,#7c3aed,#16c7a7,#3b82f6);border-radius:56px;place-items:center;width:206px;height:206px;margin:4px auto 0;display:grid;position:relative;overflow:hidden;box-shadow:0 34px 90px #00000057,inset 0 1px #ffffff47}.heroOrb:before{content:"";-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#0a1020d1,#0a10207a);border-radius:44px;position:absolute;inset:16px}.heroOrb span{letter-spacing:-.08em;color:#fff;text-shadow:0 12px 28px #00000047;font-size:64px;font-weight:950;position:relative}.heroOrb i,.heroOrb b{content:"";border:1px solid #ffffff52;border-radius:32px;position:absolute}.heroOrb i{width:138px;height:138px;transform:translate(56px,-18px)rotate(14deg)}.heroOrb b{background:#ffffff1f;border-radius:50%;width:68px;height:68px;transform:translate(-78px,70px)}.landingCopy{margin-top:auto}.landingPage h1{letter-spacing:-.09em;color:#fff;margin:8px 0 12px;font-size:42px;line-height:1.02}.landingPage .lead{color:#d8e2f3;font-size:16px}.previewStack{gap:8px;margin:15px 0 13px;display:grid}.previewStack article{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff1b;border:1px solid #ffffff21;border-radius:22px;grid-template-columns:40px 1fr;align-items:center;gap:2px 10px;min-height:58px;padding:10px 13px;display:grid}.previewStack small{color:#9ec1ff;background:#9ec1ff24;border-radius:13px;grid-row:1/3;place-items:center;width:32px;height:32px;font-weight:950;display:grid}.previewStack b{font-size:14.5px;display:block}.previewStack span{color:#e0e8f6;font-size:12.5px;font-weight:760;line-height:1.32;display:block}.authPage{justify-content:center;gap:18px}.authPage:before{display:none}.authPage h1{font-size:36px}.previewCard.authCard{background:#ffffff1c;border:1px solid #ffffff26;border-radius:28px;width:100%;padding:18px}.passwordHint{color:#d8e2f3;margin:0 0 12px;font-size:12px;font-weight:800}.authError{color:#fecaca!important;margin:10px 0 0!important;font-weight:800!important}.wizardPage{background:linear-gradient(#fbfcff,#f1f5fb)}.wizardBody{flex:1;min-height:0;display:flex;overflow:hidden}.panel{width:100%;height:100%;min-height:0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffffd1;border:1px solid #0f172a14;border-radius:32px;flex-direction:column;padding:24px 20px;display:flex;overflow:hidden}.panel h2{letter-spacing:-.078em;margin:0 0 10px;font-size:31px;line-height:1.08}.panel p:not(.eyebrow){color:#657083;margin:0 0 18px;font-size:14.8px;font-weight:680;line-height:1.5}.choice2{grid-template-columns:1fr 1fr;gap:12px;margin-top:auto;display:grid}.choice2 button,.mbtiGrid button{color:#162033;background:#f3f6fb;border:1px solid #0f172a14;border-radius:24px;font-weight:900;box-shadow:inset 0 1px #fffc}.choice2 button{height:132px;font-size:22px}.choice2 button.active,.mbtiGrid button.active{color:#fff;background:linear-gradient(145deg,#0f172a,#26324b);border-color:#0000;box-shadow:0 16px 30px #0f172a33}.grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field.full{width:100%;margin-top:auto}.field span{color:#748094;font-size:12px;font-weight:900}.field input,.field select{color:#111827;background:#f8fafc;border:1px solid #0f172a17;border-radius:19px;outline:none;width:100%;height:54px;padding:0 14px;font-weight:850}.field input:focus,.field select:focus{border-color:#3b82f68c;box-shadow:0 0 0 4px #3b82f61f}.check{color:#2a3548;align-items:center;gap:10px;margin-top:14px;font-weight:900;display:flex}.check input{width:20px;height:20px;accent-color:var(--blue)}.mbtiGrid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:auto;display:grid}.mbtiGrid button{letter-spacing:-.02em;height:48px;font-size:13px}.generatingPage{background:radial-gradient(260px 220px at 70% 18%,#3b82f63d,#0000 72%),linear-gradient(#fbfcff,#eef3fb);justify-content:center}.writing.big{text-align:center;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffffdb;border:1px solid #0f172a14;border-radius:34px;padding:34px 22px}.spinner{border:5px solid #3b82f61f;border-top-color:var(--blue);border-radius:50%;width:56px;height:56px;margin:0 auto 20px;animation:1s linear infinite spin}.writing.big h1{letter-spacing:-.075em;margin:0 0 12px;font-size:31px;line-height:1.15}.waitNote{letter-spacing:-.035em;color:#4b5563!important;margin:0 0 18px!important;font-size:14px!important;font-weight:800!important;line-height:1.62!important}.writing.big p:last-child{color:#657083;margin:14px 0 0;font-size:14.8px;font-weight:700;line-height:1.55}.progressTrack{background:#e3e9f2;border-radius:999px;height:10px;overflow:hidden}.progressTrack i{background:linear-gradient(90deg,var(--blue),var(--blue2));border-radius:999px;height:100%;transition:width .55s;display:block}.writingSteps{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;display:grid}.writingSteps span{color:#748094;background:#edf2f8;border-radius:999px;place-items:center;height:34px;font-size:11px;font-weight:900;display:grid}.writingSteps span.on{color:#fff;background:#111827}@keyframes spin{to{transform:rotate(360deg)}}.reportPage{background:linear-gradient(#fbfcff,#eef3fb)}.reportProgress{background:#e0e7f1;border-radius:999px;flex:0 0 7px;height:7px;overflow:hidden}.reportProgress span{background:linear-gradient(90deg,var(--blue),var(--blue2));height:100%;transition:width .25s;display:block}.slideWrap{flex:auto;min-height:0;display:flex;overflow:hidden}.cardPage{width:100%;height:100%;min-height:0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);-webkit-overflow-scrolling:touch;background:#ffffffdb;border:1px solid #0f172a14;border-radius:32px;flex:auto;padding:22px 19px 34px;overflow-y:auto}.cardPage h2{letter-spacing:-.078em;margin:0 0 16px;font-size:31px;line-height:1.08}.bodyBig,.enhanced p{letter-spacing:-.04em;color:#374151;margin:0 0 18px;font-size:17.2px;font-weight:650;line-height:1.72}.enhanced{height:auto;min-height:0;padding-bottom:8px;padding-right:2px;overflow:visible}.heroResult{color:#fff;background:radial-gradient(220px 180px at 82% 8%,#3b82f657,#0000 70%),linear-gradient(#0f172a,#172033)}.heroResult .eyebrow{color:#a9c5ff}.heroGlyph{color:#172033;background:linear-gradient(145deg,#fff,#dbeafe);border-radius:28px;place-items:center;width:86px;height:86px;margin:4px 0 18px;font-size:42px;font-weight:950;display:grid;box-shadow:0 22px 54px #00000038}.heroLead{color:#d7e2f5;font-size:18px;font-weight:760;line-height:1.64}.chipRow{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.chipRow span{color:#eef4ff;background:#ffffff1f;border-radius:999px;padding:9px 11px;font-size:12px;font-weight:900}.chipRow.light{margin-top:12px}.chipRow.light span{color:#2563eb;background:#eef5ff;border:1px solid #3b82f62e}.sajuBoard.classic{grid-template-columns:34px repeat(4,minmax(0,1fr));gap:6px;margin:8px 0 14px;display:grid}.sajuBoard.classic>b,.sajuBoard.classic>span,.sajuBoard.classic>em{text-align:center;border-radius:16px;place-items:center;display:grid}.sajuBoard.classic>b{color:#172033;background:#e7edf7;min-height:34px;font-size:11.5px}.sajuBoard.classic>span{color:#c7d7ff;background:#172033;font-size:11px;font-weight:900}.sajuBoard.classic>em{background:#f8fafc;border:1px solid #0f172a14;flex-direction:column;justify-content:center;gap:3px;min-height:76px;font-style:normal;display:flex}.sajuBoard.classic>em strong{font-size:27px;font-weight:950;line-height:1}.sajuBoard.classic>em small{color:#738094;font-size:9.6px;font-weight:850;line-height:1.15}.sajuBoard.classic>em.dayMark{box-shadow:inset 0 3px 0 var(--blue);background:#eef5ff;border-color:#3b82f673}.elementList{grid-template-columns:1fr 1fr;gap:9px;margin:10px 0 14px;display:grid}.elementList div{background:#f8fafc;border:1px solid #0f172a14;border-radius:19px;grid-template-columns:32px 1fr;align-items:center;gap:4px 8px;padding:11px;display:grid}.elementList strong{color:#172033;font-size:18px}.elementList span{color:#728096;font-size:11.2px;font-weight:900}.elementList i{background:#e3e9f2;border-radius:999px;grid-column:1/-1;height:8px;overflow:hidden}.elementList b{background:linear-gradient(90deg,var(--blue),var(--blue2));border-radius:999px;height:100%;display:block}.relationGrid.precise{grid-template-columns:repeat(2,1fr);gap:9px;margin:10px 0 14px;display:grid}.relationGrid.precise div{background:#f8fafc;border:1px solid #0f172a14;border-radius:21px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:77px;padding:12px;display:flex}.relationGrid.precise small{color:#748094;font-size:11px;font-weight:900}.relationGrid.precise strong{color:#172033;font-size:23px;font-weight:950;line-height:1.1}.relationGrid.precise b{color:#2563eb;font-size:13px}.traitList{gap:9px;display:grid}.traitList article{background:#f8fafc;border:1px solid #0f172a14;border-radius:19px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:12px;display:grid}.traitList b{font-size:15px}.traitList span{color:#647084;margin-top:4px;font-size:12.3px;line-height:1.38;display:block}.traitList strong{color:#2563eb;white-space:nowrap;font-size:11.2px}.quoteBox{color:#eaf1ff;background:#111827;border-radius:24px;margin-top:16px;padding:18px;font-size:17px;font-weight:900;line-height:1.55}.yearGraph{background:#f8fafc;border:1px solid #0f172a14;border-radius:24px;grid-template-columns:repeat(21,minmax(0,1fr));align-items:end;gap:3px;width:100%;height:150px;padding:16px 8px 8px;display:grid;overflow:hidden}.yearGraph div{text-align:center;min-width:0}.yearGraph i{background:#cbd5e1;border-radius:999px;width:100%;max-width:8px;margin:0 auto 6px;display:block}.yearGraph div.now i{background:linear-gradient(180deg,var(--blue),var(--blue2))}.yearGraph span{color:#64748b;font-size:9px;font-weight:800}.legend{color:#748094;justify-content:space-between;align-items:center;margin:8px 3px 12px;font-size:11px;font-weight:850;display:flex}.legend b{color:#172033}.timelineList{gap:10px;display:grid}.timelineList article{background:#f8fafc;border:1px solid #0f172a14;border-radius:20px;grid-template-columns:62px 1fr;align-items:start;gap:10px;padding:12px;display:grid}.timelineList article.focus{background:#eef5ff;border-color:#3b82f666}.timelineList strong{color:#172033;font-size:17px}.timelineList b{color:#2563eb;font-size:13px;display:block}.timelineList span{color:#647084;margin-top:4px;font-size:12.3px;font-weight:650;line-height:1.38;display:block}.splitList{gap:12px;display:grid}.splitList div{background:#f8fafc;border:1px solid #0f172a14;border-radius:22px;padding:13px}.splitList b{margin-bottom:8px;display:block}.splitList p{color:#59657a;margin:6px 0;font-size:12.6px;font-weight:650;line-height:1.4}.monthGrid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.monthGrid article{background:#f8fafc;border:1px solid #0f172a14;border-radius:21px;min-height:110px;padding:12px}.monthGrid strong{font-size:18px}.monthGrid b{color:#2563eb;margin:4px 0 7px;font-size:12px;display:block}.monthGrid span{color:#647084;font-size:12px;font-weight:650;line-height:1.38;display:block}.toast{z-index:20;color:#fff;background:#111827;border-radius:18px;width:min(380px,100% - 32px);padding:14px 16px;font-weight:800;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 18px 40px #00000040}@media (width>=680px){.phone{border-radius:42px;width:390px;height:min(844px,100svh - 40px);box-shadow:0 34px 90px #00000061}}@media (width<=420px){.page{padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px))}.landingPage{padding:27px 21px calc(20px + env(safe-area-inset-bottom,0px))}.heroOrb{width:190px;height:190px}.landingPage h1{font-size:39px}.cardPage{border-radius:29px;padding:21px 18px 34px}.cardPage h2{font-size:29px}.bodyBig,.enhanced p{font-size:16.6px;line-height:1.7}.panel{border-radius:29px;padding:22px 18px}.panel h2{font-size:29px}.choice2 button{height:118px}.mbtiGrid{gap:7px}.mbtiGrid button{height:43px;font-size:12px}.bottomActions.two{grid-template-columns:1fr 1.16fr}}@media (height<=720px){.heroOrb{width:138px;height:138px}.heroOrb span{font-size:50px}.landingPage h1{font-size:33px}.landingPage .lead{font-size:14px}.previewStack{gap:7px;margin:10px 0 8px}.previewStack article{min-height:78px;padding:9px 10px}.panel{padding:18px}.panel h2{font-size:25px}.choice2 button{height:88px}.mbtiGrid button{height:37px}.field input,.field select{height:47px}.cta,.secondary{height:51px}.cardPage h2{font-size:26px}.bodyBig,.enhanced p{font-size:15.8px;line-height:1.62}.yearGraph{height:126px}.relationGrid.precise div{min-height:68px}.monthGrid article{min-height:92px}.traitList article{padding:10px}.sajuBoard.classic>em{min-height:64px}.sajuBoard.classic>em strong{font-size:23px}}.printReport{display:none}@media print{html,body,#root{background:#fff!important;height:auto!important;overflow:visible!important}body *{visibility:hidden!important}.printReport,.printReport *{visibility:visible!important}.stage{display:none!important}.printReport{color:#1b1b1f;letter-spacing:-.015em;background:#fff;width:100%;font-family:Noto Sans KR,serif;position:absolute;inset:0;display:block!important}@page{size:A4;margin:15mm 14mm 17mm}.printCover{page-break-after:always;color:#fff;background:linear-gradient(160deg,#172033,#334155);border-radius:0;flex-direction:column;justify-content:center;height:267mm;padding:18mm;display:flex}.printCover p{letter-spacing:.22em;color:#c7d7ff;margin:0 0 18px;font-size:12px;font-weight:900}.printCover h1{letter-spacing:-.06em;margin:0 0 20px;font-size:42px;line-height:1.16}.printCover div{color:#e8eefc;margin-bottom:30px;font-size:18px;font-weight:800}.printCover small{color:#dbeafe;margin-top:auto;font-size:13px;line-height:1.7;display:block}.printPage{page-break-after:always;color:#20242c;padding:2mm 0}.printPage h2{letter-spacing:-.05em;border-bottom:2px solid #1f2937;margin:0 0 13px;padding-bottom:8px;font-size:25px;line-height:1.25}.printPage p{word-break:keep-all;color:#2d333d;margin:0 0 9px;font-size:12.7px;line-height:1.82}.printChapter{letter-spacing:.18em!important;color:#64748b!important;margin-bottom:5px!important;font-size:11px!important;font-weight:900!important}.printChart{page-break-inside:avoid;grid-template-columns:36px repeat(4,1fr);gap:6px;margin:12px 0 14px;display:grid}.printChart>b,.printChart>span,.printChart>em{text-align:center;border:1px solid #d5dbe7;border-radius:8px;justify-content:center;align-items:center;min-height:36px;font-style:normal;font-weight:900;display:flex}.printChart>span{color:#fff;background:#172033;font-size:12px}.printChart>b{background:#eef2f7;font-size:12px}.printChart>em{flex-direction:column;min-height:72px;font-size:27px}.printChart small{color:#687385;margin-top:5px;font-size:10px;display:block}}
