@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css");:root{--ink:#16213a;--ink-2:#4b5670;--ink-3:#8690a8;--accent:#3157e6;--accent-deep:#2342bf;--accent-soft:rgba(49,87,230,0.12);--c-mint:#5fd7b0;--c-sky:#7ab6ff;--c-apricot:#ffb27a;--c-lilac:#c7b3ff;--warn:#d77a2c;--danger:#d5485a;--ok:#1f9f74;--glass:rgba(255,255,255,0.52);--glass-strong:rgba(255,255,255,0.72);--glass-weak:rgba(255,255,255,0.34);--glass-line:rgba(255,255,255,0.85);--glass-edge:rgba(22,33,58,0.08);--glass-shadow:0 18px 48px -18px rgba(22,33,58,0.28),0 2px 6px rgba(22,33,58,0.05);--blur:22px;--r-xl:28px;--r-lg:20px;--r-md:14px;--r-pill:999px;--font:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR",system-ui,sans-serif;--fs-0:13px;--fs-1:15px;--fs-2:17px;--fs-3:21px;--fs-4:28px;--fs-5:38px}*{box-sizing:border-box}body,html{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:var(--fs-1);line-height:1.6;color:var(--ink);background:#e9eef8;min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}::selection{background:rgba(49,87,230,.22)}:focus-visible{outline:3px solid rgba(49,87,230,.45);outline-offset:2px;border-radius:6px}.bg{position:fixed;inset:0;z-index:-1;overflow:hidden;background:linear-gradient(160deg,#eef2fb,#e6ecf9 45%,#f3eef7)}.bg i{position:absolute;border-radius:50%;filter:blur(70px);opacity:.75;will-change:transform;animation:drift 26s ease-in-out infinite alternate}.bg i:first-child{width:56vmax;height:56vmax;left:-14vmax;top:-18vmax;background:var(--c-sky);animation-duration:29s}.bg i:nth-child(2){width:46vmax;height:46vmax;right:-12vmax;top:10vmax;background:var(--c-lilac);animation-duration:33s;animation-delay:-8s}.bg i:nth-child(3){width:40vmax;height:40vmax;left:20vmax;bottom:-20vmax;background:var(--c-mint);animation-duration:31s;animation-delay:-15s}.bg i:nth-child(4){width:28vmax;height:28vmax;right:18vmax;bottom:-6vmax;background:var(--c-apricot);opacity:.55;animation-duration:37s;animation-delay:-4s}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(6vmax,-4vmax,0) scale(1.12)}}@media (prefers-reduced-motion:reduce){.bg i{animation:none}*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.glass{position:relative;background:var(--glass);backdrop-filter:blur(var(--blur)) saturate(1.5);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.5);border:1px solid var(--glass-edge);border-radius:var(--r-xl);box-shadow:var(--glass-shadow),inset 0 1px 0 var(--glass-line)}.glass:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,0) 38%);-webkit-mask:linear-gradient(#000,transparent 60%);mask:linear-gradient(#000,transparent 60%)}.glass.strong{background:var(--glass-strong)}.glass.weak{background:var(--glass-weak)}.glass.md{border-radius:var(--r-lg)}.glass.sm{border-radius:var(--r-md)}.shell{display:grid;grid-template-columns:248px 1fr;min-height:100dvh;grid-gap:20px;gap:20px;padding:20px}.side{position:-webkit-sticky;position:sticky;top:20px;align-self:start;height:calc(100dvh - 40px);display:flex;flex-direction:column;padding:22px 16px}.main{min-width:0}.wrap{max-width:880px;margin:0 auto}.wrap.narrow{max-width:760px}@media (max-width:900px){.shell{grid-template-columns:1fr;gap:12px;padding:12px 12px 92px}.side{position:fixed;left:12px;right:12px;bottom:12px;top:auto;height:auto;padding:8px;flex-direction:row;z-index:20}.side .brand,.side .side-foot{display:none}.side nav.menu{flex-direction:row;justify-content:space-around;width:100%;gap:0}.side nav.menu a{flex-direction:column;gap:2px;font-size:11px;padding:8px 4px;flex:1 1}.side nav.menu a svg{width:22px;height:22px}}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 22px}.brand .logo{width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,var(--accent) 0,#6c8cff 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 8px 16px -8px var(--accent);display:grid;place-items:center;color:#fff;font-weight:800;font-size:17px}.brand b{font-size:19px;font-weight:800;letter-spacing:-.02em}.brand small{display:block;font-size:11.5px;color:var(--ink-3);margin-top:-2px}nav.menu{display:flex;flex-direction:column;gap:4px}nav.menu a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;font-weight:600;color:var(--ink-2);transition:background .18s,color .18s}nav.menu a svg{width:19px;height:19px;flex:none}nav.menu a:hover{background:rgba(255,255,255,.45);color:var(--ink)}nav.menu a.on{background:rgba(255,255,255,.75);color:var(--accent-deep);box-shadow:inset 0 1px 0 #fff,0 6px 14px -10px rgba(22,33,58,.4)}.side-foot{margin-top:auto;font-size:12.5px;color:var(--ink-3);padding:8px;display:flex;flex-direction:column;gap:6px}.side-foot button{background:none;border:0;color:var(--ink-2);text-align:left;padding:4px 0;font-weight:600}.side-foot button:hover{color:var(--accent)}h1,h2,h3{margin:0;letter-spacing:-.025em;line-height:1.25}h1{font-size:var(--fs-5)}h1,h2{font-weight:800}h2{font-size:var(--fs-4)}h3{font-size:var(--fs-3);font-weight:700}p{margin:0}.muted{color:var(--ink-2)}.hint{color:var(--ink-3);font-size:var(--fs-0)}.lead{font-size:var(--fs-2);color:var(--ink-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:var(--r-pill);border:1px solid transparent;font-weight:700;font-size:var(--fs-1);line-height:1;transition:transform .12s,box-shadow .18s,background .18s,opacity .18s;white-space:nowrap}.btn:active{transform:translateY(1px) scale(.99)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn svg{width:18px;height:18px}.btn.primary{color:#fff;background:linear-gradient(180deg,#4a6ef0 0,var(--accent) 55%,var(--accent-deep) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 10px 22px -10px var(--accent)}.btn.primary:hover:not(:disabled){box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 14px 26px -10px var(--accent)}.btn.glassy{background:rgba(255,255,255,.6);border-color:var(--glass-edge);color:var(--ink);box-shadow:inset 0 1px 0 #fff,0 6px 14px -10px rgba(22,33,58,.4);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.btn.glassy:hover:not(:disabled){background:rgba(255,255,255,.8)}.btn.ghost{background:transparent;color:var(--ink-2);padding-inline:12px}.btn.ghost:hover:not(:disabled){color:var(--accent);background:rgba(255,255,255,.4)}.btn.sm{padding:8px 14px;font-size:var(--fs-0)}.btn.lg{padding:15px 26px;font-size:var(--fs-2)}.btn.danger{color:var(--danger)}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:var(--fs-0);font-weight:700;color:var(--ink-2)}.input,.select,.textarea{width:100%;padding:12px 14px;border-radius:var(--r-md);border:1px solid var(--glass-edge);background:rgba(255,255,255,.62);box-shadow:inset 0 1px 2px rgba(22,33,58,.06),inset 0 1px 0 #fff;transition:background .18s,border-color .18s,box-shadow .18s}.input:focus,.select:focus,.textarea:focus{outline:none;background:rgba(255,255,255,.9);border-color:rgba(49,87,230,.45);box-shadow:0 0 0 4px rgba(49,87,230,.12)}.textarea{resize:vertical;min-height:120px;line-height:1.7}.textarea.editor{min-height:480px;font-size:16px;line-height:1.85;padding:22px 24px}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234b5670' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:38px}.input.big{font-size:var(--fs-3);padding:18px 20px;border-radius:var(--r-lg);font-weight:600}.check{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-md);background:rgba(255,255,255,.45);border:1px solid transparent;cursor:pointer;transition:background .18s}.check:hover{background:rgba(255,255,255,.7)}.check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent);flex:none}.check b{display:block;font-weight:700}.check small{color:var(--ink-3)}.check small,.chip{font-size:var(--fs-0)}.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:var(--r-pill);background:rgba(255,255,255,.55);border:1px solid var(--glass-edge);font-weight:600;color:var(--ink-2);transition:background .15s,color .15s,transform .12s;box-shadow:inset 0 1px 0 #fff}.chip:hover{background:rgba(255,255,255,.85);color:var(--ink)}.chip.on{background:var(--accent);color:#fff;border-color:transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 16px -10px var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:8px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font-size:12px;font-weight:700;background:rgba(255,255,255,.6);color:var(--ink-2)}.badge.ok{background:rgba(95,215,176,.28);color:var(--ok)}.badge.warn{background:rgba(255,178,122,.32);color:var(--warn)}.badge.accent{background:var(--accent-soft);color:var(--accent-deep)}.dot{width:8px;height:8px;border-radius:50%;background:currentColor}.topic-bar{position:-webkit-sticky;position:sticky;top:12px;z-index:15;padding:12px 16px}@media (max-width:900px){.topic-bar{top:8px}}.rail{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:relative;padding:6px;grid-gap:2px;gap:2px}.rail .liquid{position:absolute;top:6px;bottom:6px;left:6px;width:calc((100% - 12px) / 8);border-radius:var(--r-pill);background:linear-gradient(180deg,#fff,rgba(255,255,255,.75));box-shadow:0 6px 16px -8px rgba(22,33,58,.45),inset 0 1px 0 #fff;transition:transform .55s cubic-bezier(.3,1.4,.4,1);z-index:0}.rail button{position:relative;z-index:1;background:none;border:0;padding:10px 4px 9px;border-radius:var(--r-pill);display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--ink-3);font-size:12px;font-weight:700;transition:color .2s}.rail button em{font-style:normal;font-size:11px;font-weight:800;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:rgba(22,33,58,.08);transition:background .2s,color .2s}.rail button.done{color:var(--ink-2)}.rail button.done em{background:rgba(95,215,176,.35);color:var(--ok)}.rail button.on{color:var(--accent-deep)}.rail button.on em{background:var(--accent);color:#fff}.rail button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:640px){.rail button span{display:none}.rail button{padding:8px 2px}}.grid{display:grid;grid-gap:14px;gap:14px}.grid.c2{grid-template-columns:repeat(2,1fr)}.grid.c3{grid-template-columns:repeat(3,1fr)}@media (max-width:760px){.grid.c2,.grid.c3{grid-template-columns:1fr}}.card{padding:22px}.card.tight{padding:16px 18px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:14px}.stack.lg{gap:22px}.stack.sm{gap:8px}.item{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:var(--r-lg);background:rgba(255,255,255,.42);border:1px solid transparent;transition:background .18s,transform .12s}.item:hover{background:rgba(255,255,255,.72)}.item .grow{flex:1 1;min-width:0}.item .t{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item .s{font-size:var(--fs-0);color:var(--ink-3)}.titleopt{display:flex;gap:12px;align-items:center;padding:16px 18px;border-radius:var(--r-lg);background:rgba(255,255,255,.45);border:1.5px solid transparent;text-align:left;width:100%;font-weight:600;font-size:var(--fs-2);transition:background .18s,border-color .18s}.titleopt:hover{background:rgba(255,255,255,.75)}.titleopt.on{border-color:var(--accent);background:rgba(255,255,255,.85)}.titleopt i{width:22px;height:22px;border-radius:50%;border:2px solid rgba(22,33,58,.2);flex:none;display:grid;place-items:center}.titleopt.on i{border-color:var(--accent);background:var(--accent)}.titleopt.on i:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:50;padding:12px 18px;font-weight:600;font-size:var(--fs-0);animation:pop .25s ease-out;max-width:calc(100vw - 32px)}@media (max-width:900px){.toast{bottom:96px}}@keyframes pop{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.prog{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:var(--r-md);background:rgba(255,255,255,.55);border:1px solid var(--glass-edge)}.prog .lbl{display:flex;justify-content:space-between;font-size:var(--fs-0);color:var(--ink-2);font-weight:600}.prog .track{height:8px;border-radius:999px;background:rgba(22,33,58,.08);overflow:hidden}.prog .fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#6c8cff,var(--accent));transition:width .6s linear;position:relative}.prog .fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);animation:shimmer 1.4s linear infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.spin{width:16px;height:16px;border:2.5px solid rgba(255,255,255,.4);border-top-color:currentcolor;border-radius:50%;animation:spin .7s linear infinite}.btn.ghost .spin,.btn.glassy .spin{border-color:rgba(22,33,58,.15);border-top-color:var(--accent)}@keyframes spin{to{transform:rotate(1turn)}}.pulse{animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.45}}.preview{background:#fff;border-radius:var(--r-lg);padding:34px 38px;color:#1f2430;font-size:16px;line-height:1.85;max-height:520px;overflow:auto;box-shadow:inset 0 0 0 1px rgba(22,33,58,.06)}.preview h1{font-size:26px;margin-bottom:18px}.preview h2{font-size:20px;margin:26px 0 10px}.preview h3{font-size:17px;margin:20px 0 8px}.preview p{margin:0 0 14px}.preview img{max-width:100%;border-radius:12px;margin:10px 0 18px}.slot{aspect-ratio:3/2;border-radius:var(--r-lg);background:rgba(255,255,255,.4);border:1.5px dashed rgba(22,33,58,.18);display:grid;place-items:center;overflow:hidden;position:relative}.slot img{width:100%;height:100%;object-fit:cover}.slot .lbl{position:absolute;left:10px;top:10px}.score{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:24px;color:var(--ink);background:conic-gradient(var(--accent) calc(var(--v) * 1%),rgba(22,33,58,.08) 0);position:relative;flex:none}.score:before{content:"";position:absolute;inset:7px;border-radius:50%;background:rgba(255,255,255,.92)}.score span{position:relative}.auth{min-height:100dvh;display:grid;place-items:center;padding:20px}.auth .glass{width:100%;max-width:420px;padding:36px 32px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.mt{margin-top:14px}.mt-lg{margin-top:26px}.right{margin-left:auto}.center{text-align:center}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.list li{color:var(--ink-2)}hr.sep{border:0;border-top:1px solid rgba(22,33,58,.08);margin:6px 0}kbd{font:inherit;font-size:12px;padding:1px 6px;border-radius:6px;background:rgba(22,33,58,.08)}.tbl-wrap{overflow-x:auto;margin:0 -4px;padding:0 4px}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl td:first-child{min-width:150px}.tbl td:not(:first-child),.tbl th{white-space:nowrap}.tbl th{text-align:left;font-weight:600;color:var(--ink-3);font-size:12.5px;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.55)}.tbl td{padding:8px;border-bottom:1px solid rgba(255,255,255,.35);vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl .r{text-align:right;white-space:nowrap}.tbl td.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing{max-width:1040px;margin:0 auto;padding:20px 16px 60px;display:grid;grid-gap:18px;gap:18px}.landing-top{display:flex;align-items:center;justify-content:space-between;padding:6px 4px}.landing-hero{padding:44px 36px;display:grid;grid-gap:16px;gap:16px}.landing-hero h1{font-size:clamp(30px,5vw,48px);max-width:640px}.landing-hero h1 em{font-style:normal;color:var(--accent)}.landing-hero .lead{max-width:600px}.landing-steps{padding:30px 34px;display:grid;grid-gap:16px;gap:16px}.steps7{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);grid-gap:8px;gap:8px}.steps7 li{display:grid;justify-items:center;grid-gap:6px;gap:6px;font-weight:600;font-size:14px}.steps7 .n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(180deg,#4a6ef0,var(--accent-deep));font-weight:800}.landing-plans{padding:30px 34px;display:grid;grid-gap:16px;gap:16px}.landing-foot{text-align:center;padding:10px}@media (max-width:720px){.landing-hero{padding:30px 22px}.landing-plans,.landing-steps{padding:22px}.steps7{grid-template-columns:repeat(4,1fr)}.landing-top .btn.ghost{display:none}}