:root{--bg:#f3f4f6;--tile:#fff;--ink:#23262d;--ink-2:#555b67;--ink-3:#6f7581;--line:#e1e4e9;--btn:#2b2f37;--btn-ink:#fff;--correct:#2f8a55;--correct-tint:#e7f4ec;--correct-ink:#1f6b40;--wrong:#c8463f;--wrong-tint:#fbebea;--wrong-ink:#a3332d;--psy:#b0522b;--psy-tint:#fbefe8;--phi:#6450b0;--phi-tint:#f0edfa;--sci:#2a7780;--sci-tint:#e6f2f3;--display:var(--font-display), "Black Han Sans", sans-serif;--body:var(--font-body), -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;--radius:18px;--ease:cubic-bezier(.2, .8, .2, 1)}@media (prefers-color-scheme:dark){:root{--bg:#16181c;--tile:#1f2228;--ink:#e6e8ec;--ink-2:#a9afba;--ink-3:#8b929e;--line:#2e323a;--btn:#c9cdd4;--btn-ink:#16181c;--correct:#5cbf86;--correct-tint:#1e3027;--correct-ink:#86d4a6;--wrong:#e57c76;--wrong-tint:#372423;--wrong-ink:#f0a39e;--psy:#e6a07f;--psy-tint:#31261f;--phi:#b3a5ec;--phi-tint:#28253a;--sci:#82c3c9;--sci-tint:#1d2d2f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-field=psy]{--field:var(--psy);--field-tint:var(--psy-tint)}[data-field=phi]{--field:var(--phi);--field-tint:var(--phi-tint)}[data-field=sci]{--field:var(--sci);--field-tint:var(--sci-tint)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--body);word-break:keep-all;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.6}.container{max-width:480px;margin:0 auto;padding:32px 20px 64px}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}a{color:inherit}:focus-visible{outline:2px solid var(--ink-2);outline-offset:3px}.mark{flex:none;width:20px;height:20px}.mark.is-correct{color:var(--correct)}.mark.is-wrong{color:var(--wrong)}.mark path{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.btn{width:100%;min-height:54px;transition:transform .1s var(--ease);border-radius:999px;padding:0 20px;font-size:1rem;font-weight:700;display:block}.btn:active{transform:scale(.97)}.btn.primary{background:var(--btn);color:var(--btn-ink);border:none}.btn.outline{border:1.5px solid var(--line);color:var(--ink);background:0 0}.intro{text-align:center;padding-top:4vh}.deck{max-width:360px;height:196px;margin:0 auto 32px;position:relative}.deck-card{text-align:left;width:124px;height:172px;color:var(--ink);background:var(--field-tint);border:1px solid color-mix(in srgb, var(--field) 18%, transparent);animation:deal .6s var(--ease) both;border-radius:18px;flex-direction:column;justify-content:space-between;margin-left:-62px;padding:16px 14px;display:flex;position:absolute;top:10px;left:50%}.deck-card:first-child{animation-delay:50ms;transform:translate(-112px)translateY(12px)rotate(-9deg)}.deck-card:nth-child(2){z-index:1;animation-delay:.15s;transform:translateY(-8px)}.deck-card:nth-child(3){text-align:right;align-items:flex-end;animation-delay:.25s;transform:translate(112px)translateY(12px)rotate(9deg)}.deck-field{color:var(--field);font-size:.8rem;font-weight:700}.deck-term{font-family:var(--display);max-width:4.6em;font-size:1.22rem;line-height:1.2}@keyframes deal{0%{opacity:0;translate:0 24px}to{opacity:1;translate:0}}.intro-title{font-family:var(--display);margin:0 0 8px;font-size:clamp(2.3rem,10vw,2.9rem);font-weight:400;line-height:1.15}.intro-lead{color:var(--ink-2);margin:0 0 32px}.intro-note{color:var(--ink-3);margin:12px 0 0;font-size:.85rem}.qcard{border-radius:var(--radius);background:var(--field-tint);animation:rise .35s var(--ease) both;padding:20px 20px 24px}.qcard-meta{color:var(--field);font-variant-numeric:tabular-nums;margin:0 0 10px;font-size:.85rem;font-weight:700}.qcard-q{text-wrap:pretty;margin:0;font-size:1.22rem;font-weight:700;line-height:1.6}.choices{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.choice{text-align:left;width:100%;min-height:56px;color:var(--ink);background:var(--tile);border:1.5px solid var(--line);transition:border-color .15s, background-color .2s, opacity .2s, transform .1s var(--ease);border-radius:14px;align-items:center;gap:12px;padding:12px 18px;display:flex}@media (hover:hover){.choice:not(:disabled):hover{border-color:var(--ink-3)}}.choice:not(:disabled):active{border-color:var(--ink-3);transform:scale(.98)}.choice:disabled{cursor:default}.choice-text{flex:1;min-width:0;font-size:1.05rem;font-weight:600}.choice.is-correct{background:var(--correct-tint);border-color:var(--correct)}.choice.is-correct .choice-text{font-weight:800}.choice.is-wrong{background:var(--wrong-tint);border-color:var(--wrong)}.choice.is-dim{opacity:.45}.explain{animation:rise .3s var(--ease) both;margin-top:24px}.explain-verdict{margin:0 0 6px;font-weight:800}.explain-verdict.is-correct{color:var(--correct-ink)}.explain-verdict.is-wrong{color:var(--wrong-ink)}.explain-body{color:var(--ink-2);margin:0 0 8px}.explain-source{color:var(--ink-3);text-underline-offset:3px;font-size:.8rem}.explain .btn{margin-top:24px}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.result{text-align:center;padding-top:4vh}.score{font-family:var(--display);font-variant-numeric:tabular-nums;margin:0;font-size:5.6rem;line-height:1}.score span{color:var(--ink-3);font-size:2rem}.score-meta{color:var(--ink-2);font-variant-numeric:tabular-nums;margin:12px 0 32px;font-size:.9rem}.actions{gap:8px;display:grid}.copy-fallback{color:var(--ink-2);margin:12px 0 0;font-size:.85rem}.copy-fallback span{border:1.5px dashed var(--line);color:var(--ink);-webkit-user-select:all;user-select:all;border-radius:10px;margin-top:6px;padding:10px;display:block}.review{text-align:left;border-top:1px solid var(--line);margin:40px 0 0;padding:0;list-style:none}.review li{border-bottom:1px solid var(--line)}.review summary{cursor:pointer;align-items:center;gap:12px;min-height:52px;padding:10px 4px;list-style:none;display:flex}.review summary::-webkit-details-marker{display:none}.review summary:after{content:"";border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);width:8px;height:8px;transition:transform .2s var(--ease);flex:none;margin-left:auto;transform:rotate(45deg)translateY(-2px)}.review details[open] summary:after{transform:rotate(-135deg)translateY(-2px)}.review-term{font-weight:700}.review-body{padding:0 4px 16px 36px;font-size:.9rem}.review-body p{margin:0 0 6px}.review-mine{color:var(--wrong-ink);font-weight:700}.review-exp{color:var(--ink-2)}.review-body a{color:var(--ink-3);text-underline-offset:3px;font-size:.8rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
