*{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.6;word-break:keep-all;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;line-height:1.25;letter-spacing:-.02em;text-wrap:balance;font-weight:700}p{margin:0;text-wrap:pretty}a{color:inherit}img{max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.muted{color:var(--ink-3)}.small{font-size:13px}.help{font-size:13px;color:var(--ink-3)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:16px;top:-48px;z-index:100;padding:10px 14px;border-radius:8px;background:var(--ink);color:var(--bg);text-decoration:none;font-size:14px}.skip:focus{top:8px}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:24px}@media (max-width: 640px){.wrap{padding-inline:16px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:var(--r-control);border:1px solid transparent;font:inherit;font-size:16px;font-weight:600;white-space:nowrap;text-decoration:none;cursor:pointer;background:var(--accent);color:var(--accent-ink);transition:transform .15s cubic-bezier(.16,1,.3,1),background-color .15s,border-color .15s}.btn:active{transform:translateY(1px) scale(.99)}.btn:hover{filter:brightness(1.06)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;filter:none;transform:none}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-secondary,.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong);filter:none}.btn-secondary:hover,.btn.secondary:hover{border-color:var(--ink-3);filter:none}.btn-ghost,.btn.ghost{background:transparent;color:var(--ink-2);filter:none}.btn-ghost:hover,.btn.ghost:hover{background:var(--surface-2);color:var(--ink);filter:none}.btn-sm,.btn.sm{min-height:40px;padding:0 14px;font-size:14px}.btn-lg,.btn.lg{min-height:56px;padding:0 28px;font-size:17px}.btn-block,.btn.block{width:100%}.btn-kakao{background:var(--kakao);color:var(--kakao-ink)}.btn-kakao:hover{filter:brightness(.97)}.btn.on-dark.secondary{background:transparent;color:var(--bg);border-color:color-mix(in srgb,var(--bg) 40%,var(--ink))}.btn svg{width:18px;height:18px;flex:none}.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--accent);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px;min-height:44px}.chip,.badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--ink-2)}.chip b{color:var(--ink)}.chip-accent,.badge.free{background:var(--accent-soft);color:var(--accent)}.chip-pass,.badge.ok{background:var(--pass-soft);color:var(--pass)}.chip-risk,.badge.bad{background:var(--risk-soft);color:var(--risk)}.chip-warn,.badge.pass{background:var(--warn-soft);color:var(--warn)}.chip svg,.badge svg{width:14px;height:14px}.chips{display:flex;flex-wrap:wrap;gap:6px}.ai-chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px 0 8px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line);white-space:nowrap}.ai-chip svg{width:14px;height:14px;fill:currentColor}.ai-chip.on-dark{background:color-mix(in srgb,var(--accent) 18%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.ai-edge{position:relative}.ai-edge:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;pointer-events:none;background:linear-gradient(120deg,var(--accent),var(--ai-2) 30%,transparent 55%,var(--accent));-webkit-mask:linear-gradient(black 0 0) content-box,linear-gradient(black 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.55}.box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-box)}.box-raised{box-shadow:var(--shadow)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-box);padding:28px;min-width:0}.card.soft{background:var(--surface-2);border-color:transparent}.card.accent{background:var(--accent-soft);border-color:var(--accent-line)}.card.warn{background:var(--warn-soft);border-color:transparent}.card.dark,.box.dark{background:var(--ink);color:var(--bg);border-color:var(--ink)}.card.dark .muted,.box.dark .muted,.card.dark .help,.box.dark .help{color:color-mix(in srgb,var(--bg) 66%,var(--ink))}.card-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:18px}.card-h h2{font-size:18px}.card-h p,.card-h a{font-size:14px;color:var(--ink-3)}@media (max-width: 640px){.card{padding:20px}}.topbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}.topbar-in{display:flex;align-items:center;gap:24px;min-height:64px}.topbar-mid{display:flex;align-items:center;gap:8px;min-width:0}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:18px;letter-spacing:-.03em;text-decoration:none;color:var(--ink);flex:none}.brand-mark{width:28px;height:28px;border-radius:8px;background:var(--brand-mark);display:grid;place-items:center;flex:none}.brand-mark svg{width:18px;height:18px}.nav{display:flex;gap:4px}.nav a{padding:8px 12px;border-radius:8px;font-size:15px;color:var(--ink-2);text-decoration:none}.nav a:hover{background:var(--surface-2);color:var(--ink)}.topbar-end{margin-left:auto;display:flex;align-items:center;gap:8px}@media (max-width: 900px){.nav{display:none}}@media (max-width: 560px){.topbar-in{gap:10px}.topbar .brand-name{display:none}.topbar-end{gap:6px}.topbar-end .hide-sm{display:none}}.theme-btn{width:40px;height:40px;border-radius:var(--r-control);flex:none;display:inline-grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer}.theme-btn svg{width:18px;height:18px}.testbanner{padding:6px 16px;font-size:12px;text-align:center;background:var(--warn-soft);color:var(--warn)}.cut{display:grid;gap:14px}.cut.marked{padding-top:22px}.cut-row{display:grid;grid-template-columns:minmax(0,168px) minmax(0,1fr) 52px;align-items:center;column-gap:16px;row-gap:4px}.cut-name{font-size:14px;color:var(--ink-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cut-name b{font-family:var(--font-mono);font-weight:500;color:var(--ink-3);margin-right:8px}.cut-track{position:relative;height:12px}.cut-track:before{content:"";position:absolute;top:5px;right:0;bottom:5px;left:0;background:var(--line);border-radius:2px}.cut-fill{position:absolute;left:0;top:0;bottom:0;border-radius:3px;background:var(--ink)}.cut-row.is-risk .cut-fill{background:var(--risk)}.cut-row.is-weak .cut-fill{background:var(--ink-3)}.cut-score{text-align:right;font-family:var(--font-mono);font-size:15px;font-weight:600}.cut-row.is-risk .cut-score{color:var(--risk)}.cut-hits{grid-column:2 / -1;font-size:12px;color:var(--ink-3)}.cut-mark{position:absolute;top:-8px;bottom:-8px;width:0;border-left:1.5px dashed var(--risk);pointer-events:none;font-style:normal}.cut-mark.avg{border-left:1.5px solid var(--ink-2)}.cut-mark span{position:absolute;top:-20px;right:5px;font-size:12px;font-weight:600;white-space:nowrap;font-family:var(--font-mono);color:var(--risk)}.cut-mark.avg span{right:auto;left:5px;color:var(--ink-2)}.cut.compact .cut-row{grid-template-columns:56px minmax(0,1fr) 34px;column-gap:10px}.cut.compact .cut-name,.cut.compact .cut-score{font-size:13px}@media (max-width: 640px){.cut:not(.compact) .cut-row{grid-template-columns:minmax(0,1fr) 48px;grid-template-areas:"name score" "track track" "hits hits";row-gap:6px}.cut:not(.compact) .cut-name{grid-area:name}.cut:not(.compact) .cut-track{grid-area:track}.cut:not(.compact) .cut-score{grid-area:score}.cut:not(.compact) .cut-hits{grid-area:hits}.cut:not(.compact) .cut-mark{top:-4px;bottom:-4px}.cut.marked:not(.compact){padding-top:28px}.cut:not(.compact) .cut-mark span{top:-50px}}.ruler{position:relative;height:44px}.ruler-base{position:absolute;left:0;right:0;top:18px;height:8px;border-radius:4px;background:var(--surface-2);overflow:hidden}.ruler-fill{position:absolute;left:0;top:0;bottom:0;background:var(--accent);border-radius:4px}.ruler-ticks{position:absolute;left:0;right:0;top:30px;display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--ink-3)}.ruler-needle{position:absolute;top:8px;width:2px;height:28px;background:var(--ink);border-radius:1px;transform:translate(-1px)}.ruler.lg{height:56px}.ruler.lg .ruler-base{height:12px;border-radius:6px;top:16px}.ruler.lg .ruler-needle{top:6px;height:32px;width:3px}.ruler.lg .ruler-ticks{top:38px}.odds{display:flex;align-items:baseline;gap:6px}.odds b{font-size:48px;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}.odds span{font-size:20px;color:var(--ink-3)}.odds.xl b{font-size:clamp(64px,9vw,104px);line-height:.95;letter-spacing:-.06em}.odds.xl span{font-size:30px;font-weight:500}.odds.sm b{font-size:36px}.odds.sm span{font-size:15px}.hazard{height:6px;background:repeating-linear-gradient(-45deg,var(--hazard) 0 10px,var(--hazard-ink) 10px 20px);border-radius:3px}.app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh;background:linear-gradient(to right,var(--surface) 247px,var(--line) 247px 248px,transparent 248px)}.side{position:sticky;top:0;height:100vh;overflow-y:auto;border-right:1px solid var(--line);background:var(--surface);padding:16px 12px;display:flex;flex-direction:column;gap:4px}.side-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 4px 12px 10px}.exam-switch{display:flex;align-items:center;gap:10px;width:100%;min-width:0;padding:10px 12px;border-radius:var(--r-control);border:1px solid var(--line);background:var(--bg);font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;text-align:left;text-decoration:none}.exam-switch>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-switch small{display:block;font-weight:400;color:var(--ink-3);font-size:12px}.exam-name:before{content:attr(data-name);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-name:after{content:attr(data-sub);display:block;font-weight:400;color:var(--ink-3);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-switch svg{width:16px;height:16px;flex:none;color:var(--ink-3)}.side-nav{display:grid;gap:2px;margin-top:12px}.side-nav a{display:flex;align-items:center;gap:12px;height:44px;padding:0 12px;border-radius:var(--r-control);font-size:15px;color:var(--ink-2);text-decoration:none}.side-nav a svg{width:20px;height:20px;flex:none}.side-nav a:hover{background:var(--surface-2);color:var(--ink)}.side-nav a[aria-current=page]{background:var(--surface-2);color:var(--ink);font-weight:600}.side-foot{margin-top:auto;display:grid;gap:2px;border-top:1px solid var(--line);padding-top:12px}.side-foot a{min-height:40px;display:flex;align-items:center;padding:0 12px;font-size:14px;color:var(--ink-3);text-decoration:none;border-radius:8px}.side-foot a:hover,.side-foot a[aria-current=page]{color:var(--ink);background:var(--surface-2)}.app-col{min-width:0;display:flex;flex-direction:column}.mhead{display:none}.main{min-width:0;padding:32px 40px 80px;flex:1}.tabbar{display:none}@media (max-width: 960px){.app{grid-template-columns:minmax(0,1fr);background:none}.side{display:none}.mhead{display:flex;align-items:center;gap:10px;position:sticky;top:env(safe-area-inset-top,0px);z-index:20;min-height:60px;padding:8px 16px;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}.mhead .exam-switch{flex:1;padding:6px 10px}.main{padding:20px 16px 104px}.tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}.tabbar a{display:grid;justify-items:center;align-content:center;gap:2px;padding:6px 0;min-height:52px;font-size:11px;color:var(--ink-3);text-decoration:none}.tabbar a svg{width:22px;height:22px}.tabbar a[aria-current=page]{color:var(--ink);font-weight:600}}.page-stack{display:grid;gap:20px;max-width:1080px;margin-inline:auto;min-width:0}.page-stack.narrow{max-width:760px}.ph{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.ph h1{font-size:28px;letter-spacing:-.03em}.ph p{color:var(--ink-3);margin-top:4px}.grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media (max-width: 900px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.ph h1{font-size:22px}}.coach-line{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap;padding:16px 18px;border-radius:14px;background:var(--accent-soft);border:1px solid var(--accent-line);font-size:15px;line-height:1.6}.coach-line .ai-chip{flex:none}.coach-line>span:last-child{flex:1;min-width:12em}.shell{min-height:100vh;display:flex;flex-direction:column}.shell>main{flex:1}.lh{border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:env(safe-area-inset-top,0px);z-index:20}.lh-in{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;min-height:64px;padding-block:8px}.lh-right{display:flex;align-items:center;gap:8px}.x-btn{width:44px;height:44px;border-radius:var(--r-control);border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;color:var(--ink-2);text-decoration:none;cursor:pointer;padding:0;font:inherit}.x-btn svg{width:20px;height:20px}.lh-prog{display:grid;gap:6px;min-width:0}.lh-top{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--ink-3);min-width:0}.lh-top strong{color:var(--ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.lh-top .num{white-space:nowrap}.lh-sub{font-size:13px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.segs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px}.segs span{height:6px;border-radius:3px;background:var(--surface-2)}.segs span.d{background:var(--ink)}.segs span.c{background:var(--accent)}@media (max-width: 640px){.lh-in{gap:12px}.lh-right .chip,.lh-right .ai-chip{display:none}}.learn{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;padding-block:32px 140px;align-items:start}.learn-main{display:grid;gap:20px;min-width:0}.learn-side{position:sticky;top:88px;display:grid;gap:12px;min-width:0}@media (max-width: 960px){.learn{grid-template-columns:minmax(0,1fr);padding-block:20px 140px}.learn-side{position:static}}.focus-body{width:100%;max-width:760px;margin-inline:auto;padding:40px 24px 140px;display:grid;gap:20px;align-content:start}.focus-body.wide{max-width:1080px}@media (max-width: 640px){.focus-body{padding:24px 16px 150px}}.utabs{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.utabs::-webkit-scrollbar{display:none}.utab{position:relative;min-height:48px;padding:0 16px;border:0;background:none;font:inherit;font-size:15px;font-weight:600;color:var(--ink-3);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;text-decoration:none}.utab[aria-selected=true],.utab[aria-current=page]{color:var(--ink)}.utab[aria-selected=true]:after,.utab[aria-current=page]:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--ink);border-radius:2px}.utab:disabled{opacity:.45;cursor:not-allowed}.cn-kicker{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--ink-3)}.cn-title{font-size:clamp(26px,3vw,34px);letter-spacing:-.035em;margin-top:10px;overflow-wrap:anywhere}.cn-lead{font-size:18px;line-height:1.75;color:var(--ink-2);margin-top:14px;max-width:40em;overflow-wrap:anywhere}.cn-block{margin-top:24px;padding:20px 22px;border-radius:14px;background:var(--bg);display:grid;gap:10px;min-width:0}.cn-block h3{font-size:13px;font-weight:700;color:var(--ink-3);letter-spacing:.02em}.cn-block p{color:var(--ink-2);overflow-wrap:anywhere}.cn-block.formula{background:var(--ink);color:var(--bg)}.cn-block.formula h3{color:color-mix(in srgb,var(--bg) 60%,var(--ink))}.cn-formula{font-family:var(--font-mono);font-size:clamp(20px,2.6vw,28px);font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere;color:var(--bg)}.toc{list-style:none;margin:0;padding:6px;display:grid;gap:2px}.toc a,.toc button,.toc .row{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:10px;background:transparent;font:inherit;font-size:14px;text-align:left;text-decoration:none;color:var(--ink-2)}.toc a,.toc button{cursor:pointer}.toc a:hover,.toc button:hover:not(:disabled){background:var(--surface-2)}.toc button:disabled{cursor:not-allowed;opacity:.6}.toc .n{width:24px;height:24px;border-radius:999px;border:1.5px solid var(--line-strong);display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;color:var(--ink-3)}.toc .done .n{background:var(--ink);border-color:var(--ink);color:var(--bg)}.toc .now,.toc [aria-current=step]{background:var(--accent-soft);color:var(--ink);font-weight:600}.toc .now .n,.toc [aria-current=step] .n{border-color:var(--accent);color:var(--accent)}.toc .t{font-size:12px;color:var(--ink-3);font-family:var(--font-mono);white-space:nowrap}.toc .chk .n{border-style:dashed}.toc .nm{min-width:0;overflow-wrap:anywhere}.act-bar{position:fixed;left:0;right:0;bottom:0;z-index:25;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}.act-bar-in{display:flex;gap:12px;align-items:center;justify-content:space-between;min-height:76px;padding-block:12px calc(12px + env(safe-area-inset-bottom,0px));flex-wrap:wrap}.act-bar-in>p{font-size:14px;color:var(--ink-3);min-width:0}.act-bar-in .acts-r{display:flex;gap:10px;margin-left:auto}@media (max-width: 640px){.act-bar-in>p{display:none}.act-bar-in .acts-r{width:100%}.act-bar-in .acts-r .btn{flex:1;padding:0 12px}}.res-hero{text-align:center;display:grid;justify-items:center;gap:12px;padding:40px 24px 36px}.res-ring{position:relative;width:148px;height:148px;flex:none}.res-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.res-ring circle{fill:none;stroke-width:10}.res-ring .bg{stroke:var(--surface-2)}.res-ring .fg{stroke:var(--accent);stroke-linecap:round}.res-ring b{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;font-size:40px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.res-ring b small{font-size:18px;color:var(--ink-3);font-weight:500}.res-ring b .cap{display:block;font-size:12px;font-weight:500;color:var(--ink-3);letter-spacing:0}.res-hero h1{font-size:clamp(26px,3.2vw,36px);letter-spacing:-.035em}.res-hero p{color:var(--ink-2);font-size:16px}.rows{list-style:none;margin:0;padding:0;display:grid}.rows li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 4px;border-top:1px solid var(--line)}.rows li:first-child{border-top:0}.rows strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}.rows small{display:block;font-size:13px;color:var(--ink-3);margin-top:2px;overflow-wrap:anywhere}.mark{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;flex:none}.mark svg{width:16px;height:16px}.mark.ok{background:var(--pass-soft);color:var(--pass)}.mark.no{background:var(--risk-soft);color:var(--risk)}.locked-note{display:flex;gap:14px;align-items:center;padding:18px 20px;border-radius:14px;border:1px dashed var(--line-strong);color:var(--ink-2);font-size:15px}.locked-note svg{width:20px;height:20px;flex:none;color:var(--ink-3)}.field,.field-l{display:grid;gap:8px}.field label,.field-l label{font-size:14px;font-weight:600}.input{width:100%;min-height:50px;padding:0 14px;border-radius:var(--r-control);border:1px solid var(--line-strong);background:var(--surface);font:inherit;font-size:16px;color:var(--ink)}.input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}select.input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.check{display:flex;gap:12px;align-items:center;min-height:44px;font-size:15px;line-height:1.5;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--accent);flex:none}.check .see{margin-left:auto;font-size:13px;color:var(--ink-3)}.divider{display:flex;align-items:center;gap:12px;color:var(--ink-3);font-size:13px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}.seg{display:inline-flex;padding:3px;border-radius:var(--r-control);background:var(--surface-2);gap:2px;flex-wrap:wrap}.seg button{min-height:40px;padding:0 16px;border:0;border-radius:8px;background:transparent;font:inherit;font-size:14px;color:var(--ink-2);cursor:pointer}.seg button[aria-pressed=true],.seg button[aria-selected=true]{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:var(--shadow-press)}.tabs{display:flex;gap:2px;padding:3px;background:var(--surface-2);border-radius:var(--r-control)}.tabs button{flex:1;min-height:40px;border:0;border-radius:8px;background:transparent;font:inherit;font-size:14px;color:var(--ink-2);cursor:pointer}.tabs button[aria-selected=true]{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:var(--shadow-press)}.choices{display:grid;gap:10px}.choice{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:14px;width:100%;min-height:58px;padding:12px 18px;text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:12px;font:inherit;font-size:17px;line-height:1.5;color:var(--ink);cursor:pointer;transition:border-color .12s,background-color .12s}.choice:hover:not(:disabled){border-color:var(--line-strong)}.choice .no,.choice .k{width:32px;height:32px;border-radius:999px;border:1.5px solid var(--line-strong);display:grid;place-items:center;font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--ink-2)}.choice[aria-pressed=true],.choice[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.choice[aria-pressed=true] .no,.choice[aria-checked=true] .no,.choice[aria-pressed=true] .k,.choice[aria-checked=true] .k{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.choice.right{border-color:var(--pass);background:var(--pass-soft)}.choice.right .no,.choice.right .k{background:var(--pass);border-color:var(--pass);color:var(--surface)}.choice.wrong{border-color:var(--risk);background:var(--risk-soft)}.choice.wrong .no,.choice.wrong .k{background:var(--risk);border-color:var(--risk);color:var(--surface)}.choice:disabled{cursor:default}.choice .tag{display:block;font-size:13px;font-weight:600;margin-top:2px}.choice.right .tag{color:var(--pass)}.choice.wrong .tag{color:var(--risk)}.q-text{font-size:22px;font-weight:600;line-height:1.5;letter-spacing:-.02em;overflow-wrap:anywhere}@media (max-width: 640px){.q-text{font-size:19px}.choice{font-size:16px;padding:12px 14px}}.alert{padding:14px 16px;border-radius:12px;font-size:14px;line-height:1.55;background:var(--surface-2);color:var(--ink-2)}.alert.error{background:var(--risk-soft);color:var(--risk)}.alert.warn{background:var(--warn-soft);color:var(--warn)}.alert.info{background:var(--accent-soft);color:var(--accent)}.alert.ok{background:var(--pass-soft);color:var(--pass)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--overlay);display:flex;align-items:flex-end;justify-content:center}.modal{width:100%;max-width:440px;max-height:88vh;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:20px 20px 0 0;padding:28px 24px calc(24px + env(safe-area-inset-bottom));display:grid;gap:12px}.modal>h2{font-size:20px;letter-spacing:-.03em}.modal p{color:var(--ink-2)}@media (min-width: 768px){.modal-back{align-items:center;padding:16px}.modal{border-radius:var(--r-box);box-shadow:var(--shadow)}}.modal .actions{display:flex;gap:10px;margin-top:12px;justify-content:flex-end;flex-wrap:wrap}@media (max-width: 767px){.modal .actions>*{flex:1}}.page{width:100%;max-width:1080px;margin:0 auto;padding:32px 24px 64px;flex:1}.page.narrow{max-width:760px}@media (max-width: 640px){.page{padding:20px 16px 40px}}.h1{font-size:clamp(24px,3vw,30px);font-weight:700;line-height:1.3;margin:0 0 8px;letter-spacing:-.03em}.h2{font-size:clamp(18px,2.2vw,22px);font-weight:700;line-height:1.4;margin:0 0 8px;letter-spacing:-.02em}.h3{font-size:16px;font-weight:700;margin:0 0 6px}.lead{font-size:17px;color:var(--ink-2);line-height:1.65;margin:0 0 20px}.stack{display:flex;flex-direction:column;gap:12px;min-width:0}.stack-lg{display:flex;flex-direction:column;gap:24px;min-width:0}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.grid2{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}@media (min-width: 768px){.grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.bottombar{position:sticky;bottom:0;display:flex;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}.bottombar>*{flex:1}@media (min-width: 768px){.bottombar{position:static;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-top:0;padding:16px 0 0;justify-content:flex-end}.bottombar>*{flex:0 0 auto;min-width:160px}}.list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-box);overflow:hidden;background:var(--surface)}.listrow{display:flex;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;min-width:0}.listrow:last-child{border-bottom:0}a.listrow:hover,button.listrow:hover{background:var(--surface-2)}.listrow .rank{flex:0 0 32px;height:32px;border-radius:999px;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);font-family:var(--font-mono);font-size:14px;font-weight:600}.listrow .body{flex:1;min-width:0}.listrow .title{font-size:15px;font-weight:600;overflow-wrap:anywhere}.listrow .meta{font-size:13px;color:var(--ink-3);margin-top:2px;overflow-wrap:anywhere}.progress{height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}.progress>span{display:block;height:100%;background:var(--ink);border-radius:3px;transition:width .3s cubic-bezier(.16,1,.3,1)}.spinner{display:flex;justify-content:center;padding:64px 0;color:var(--ink-3);font-size:14px}.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 16px;font-size:14px;margin:0}.kv dt{color:var(--ink-3)}.kv dd{margin:0;font-weight:500;overflow-wrap:anywhere}.spec{margin:0;display:grid;border-top:1px solid var(--line)}.spec>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;padding:18px 2px;border-bottom:1px solid var(--line)}.spec dt{font-size:14px;color:var(--ink-3)}.spec dd{margin:0;font-size:16px;font-weight:600;overflow-wrap:anywhere}.spec dd small{display:block;font-size:14px;font-weight:400;color:var(--ink-3);margin-top:2px}@media (prefers-reduced-motion: no-preference){.rise{animation:rise .7s cubic-bezier(.16,1,.3,1) both}.rise-2{animation-delay:.08s}.rise-3{animation-delay:.16s}@keyframes rise{0%{transform:translateY(10px)}to{transform:none}}.grow{animation:grow 1.1s cubic-bezier(.16,1,.3,1) both;transform-origin:left}@keyframes grow{0%{transform:scaleX(.02)}to{transform:none}}}@font-face{font-family:Pretendard Variable;src:url(/fonts/PretendardVariable.woff2) format("woff2-variations"),url(/fonts/PretendardVariable.woff2) format("woff2");font-weight:45 920;font-style:normal;font-display:swap}:root{--bg: #f5f6f9;--surface: #ffffff;--surface-2: #eceef4;--ink: #0f1117;--ink-2: #3c4250;--ink-3: #5f6676;--line: #e2e5ec;--line-strong: #c8ccd8;--accent: #4353ff;--accent-ink: #ffffff;--accent-soft: #eef0ff;--accent-line: #c9cefe;--ai-2: #0ea5c6;--pass: #13795b;--pass-soft: #e5f4ee;--risk: #c4281c;--risk-soft: #fdecea;--hazard: #f5c400;--hazard-ink: #12151a;--warn: #8a5a00;--warn-soft: #fff4d6;--brand-mark: var(--ink);--brand-mark-ink: var(--bg);--kakao: #fee500;--kakao-ink: #191600;--player-bg: #0e1016;--player-ink: #e9ecf0;--overlay: rgba(10, 12, 15, .5);--shadow: 0 1px 2px rgba(15, 17, 23, .05), 0 10px 30px -14px rgba(31, 41, 120, .18);--shadow-press: 0 1px 2px rgba(0, 0, 0, .08);--shadow-sheet: 0 -12px 40px rgba(0, 0, 0, .18);--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--r-control: 10px;--r-box: 16px;--wrap: 1200px;color-scheme:light;--t1: var(--ink);--t2: var(--ink-2);--t3: var(--ink-3);--line2: var(--line-strong);--font: var(--font-sans)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0a0b0f;--surface: #12141a;--surface-2: #1a1d25;--ink: #eef0f4;--ink-2: #b9bfcc;--ink-3: #8b93a3;--line: #23262f;--line-strong: #343846;--accent: #8a94ff;--accent-ink: #0a0c22;--accent-soft: #171a3a;--accent-line: #303777;--ai-2: #4fd3ee;--pass: #3fc495;--pass-soft: #10261f;--risk: #ff7466;--risk-soft: #2c1513;--hazard: #f5c400;--warn: #f0b74a;--warn-soft: #2a2110;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px -14px rgba(0, 0, 0, .7);color-scheme:dark}}:root[data-theme=dark]{--bg: #0a0b0f;--surface: #12141a;--surface-2: #1a1d25;--ink: #eef0f4;--ink-2: #b9bfcc;--ink-3: #8b93a3;--line: #23262f;--line-strong: #343846;--accent: #8a94ff;--accent-ink: #0a0c22;--accent-soft: #171a3a;--accent-line: #303777;--ai-2: #4fd3ee;--pass: #3fc495;--pass-soft: #10261f;--risk: #ff7466;--risk-soft: #2c1513;--hazard: #f5c400;--warn: #f0b74a;--warn-soft: #2a2110;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px -14px rgba(0, 0, 0, .7);color-scheme:dark}
