:root{--bg:#f6f1e7;--paper:#fffdf8;--paper-2:#faf5ea;--ink:#2c2823;--ink-soft:#6d6559;--ink-faint:#97907f;--line:#e5ddca;--line-strong:#d8cfb6;--accent:#bd5a37;--accent-ink:#fff;--accent-soft:#f2e2d6;--ok:#4d7a54;--ok-soft:#e4ecdf;--warn:#b07d2a;--warn-soft:#f2e7cf;--stop:#b0432f;--stop-soft:#f2ddd4;--serif:"Nanum Myeongjo","Apple Myungjo","AppleMyungjo","본명조","Batang","바탕",Georgia,serif;--sans:"Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","맑은 고딕","Noto Sans KR","Segoe UI",Roboto,sans-serif;--wrap:940px;--radius:14px}*{box-sizing:border-box}body,html{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.72;letter-spacing:-.003em;-webkit-font-smoothing:antialiased}::selection{background:var(--accent-soft)}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}@media (max-width:560px){.wrap{padding:0 18px}}.masthead{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:saturate(1.1) blur(6px);backdrop-filter:saturate(1.1) blur(6px);position:-webkit-sticky;position:sticky;top:0;z-index:30}.masthead-inner{display:flex;align-items:center;justify-content:space-between;padding:15px 0;gap:14px}.wordmark{display:flex;align-items:baseline;gap:10px;cursor:pointer;background:none;border:none;padding:0;text-align:left}.wordmark .name{font-family:var(--serif);font-size:23px;font-weight:800;color:var(--ink);letter-spacing:-.01em}.wordmark .sub{font-size:12.5px;color:var(--ink-faint)}@media (max-width:560px){.wordmark .sub{display:none}}.adv-toggle{background:none;border:1px solid var(--line-strong);color:var(--ink-soft);border-radius:999px;padding:7px 15px;font-size:12.5px;cursor:pointer;min-height:40px}.adv-toggle:hover{border-color:var(--accent);color:var(--accent)}.adv-panel{border-bottom:1px solid var(--line);background:var(--paper-2)}.adv-inner{padding:18px 0 20px}.adv-inner h4{margin:0 0 4px;font-size:14px}.adv-inner .muted{color:var(--ink-soft);font-size:13px;margin:0 0 12px}.key-row{display:flex;gap:8px;flex-wrap:wrap}.key-input{flex:1 1;min-width:220px;background:var(--paper);border:1px solid var(--line-strong);color:var(--ink);border-radius:10px;padding:11px 13px;font:inherit;font-size:14px;min-height:44px}.key-input:focus{outline:2px solid var(--accent);border-color:transparent}.key-warn{display:flex;gap:7px;align-items:flex-start;color:var(--warn);font-size:12.5px;margin:9px 0 0}.btn-remove{background:none;border:1px solid var(--line-strong);color:var(--stop);border-radius:10px;padding:0 14px;font-size:13px;cursor:pointer;min-height:44px}main{padding:44px 0 72px}@media (max-width:560px){main{padding:30px 0 56px}}.hero{max-width:720px;margin:8px 0 40px}.hero h1{font-family:var(--serif);font-size:40px;line-height:1.28;font-weight:800;letter-spacing:-.02em;margin:0 0 16px;word-break:keep-all}.hero p{font-size:17px;color:var(--ink-soft);margin:0}@media (max-width:560px){.hero h1{font-size:27px}.hero p{font-size:15.5px}}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 8px}.eyebrow .num{font-family:var(--serif);font-weight:800;color:var(--accent);font-size:15px;border:1.5px solid var(--accent);border-radius:999px;width:30px;height:30px;display:grid;place-items:center;flex:none}.eyebrow .nm{font-weight:700;font-size:15px;letter-spacing:.01em}.lesson{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:12px;padding:16px 18px;color:var(--ink-soft);font-size:14.5px;margin:0 0 26px}h2.step-title{font-family:var(--serif);font-size:28px;font-weight:800;letter-spacing:-.015em;margin:0 0 6px}@media (max-width:560px){h2.step-title{font-size:23px}}.step-sub{color:var(--ink-soft);margin:0 0 26px}.map{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:720px){.map{grid-template-columns:1fr}}.map-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;text-align:left;cursor:pointer;transition:border-color .14s,transform .14s,box-shadow .14s;position:relative;display:block;width:100%}.map-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px -18px rgba(60,40,20,.5)}.map-card:disabled{cursor:not-allowed;opacity:.62}.map-card:disabled:hover{transform:none;border-color:var(--line);box-shadow:none}.map-card .mc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.map-card .mc-num{font-family:var(--serif);font-weight:800;font-size:30px;color:var(--line-strong);line-height:1}.map-card.done .mc-num{color:var(--accent)}.map-card .mc-name{font-family:var(--serif);font-size:20px;font-weight:800;margin:0 0 4px}.map-card .mc-blurb{color:var(--ink-soft);font-size:14px;margin:0}.check{width:26px;height:26px;border-radius:999px;display:grid;place-items:center;font-size:14px;flex:none}.check.on{background:var(--accent);color:#fff}.check.off{border:1.5px dashed var(--line-strong);color:transparent}.lock{font-size:12px;color:var(--ink-faint)}.field{margin:0 0 20px}.field label{display:block;font-weight:700;font-size:15px;margin-bottom:3px}.field .req{color:var(--accent);font-size:12px;margin-left:6px;font-weight:700}.field .fhint{display:block;color:var(--ink-faint);font-size:13px;margin-bottom:8px}input[type=date],input[type=number],input[type=text],select,textarea{width:100%;background:var(--paper);border:1px solid var(--line-strong);color:var(--ink);border-radius:11px;padding:12px 14px;font:inherit;font-size:15px;min-height:46px}textarea{resize:vertical;line-height:1.6}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);border-color:transparent}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--paper);border:1px solid var(--line-strong);color:var(--ink);border-radius:11px;padding:12px 20px;font:inherit;font-size:15px;font-weight:600;cursor:pointer;min-height:46px;transition:background .12s,border-color .12s,transform .1s}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.primary:hover:not(:disabled){filter:brightness(1.05)}.btn.block{width:100%}.btn.lg{padding:15px 24px;font-size:16px;min-height:52px}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.btn.ghost,.link-btn{background:none}.link-btn{border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:14px;padding:0;text-decoration:underline;text-underline-offset:3px}.backbar{margin:0 0 22px}.back{background:none;border:none;color:var(--ink-soft);cursor:pointer;font:inherit;font-size:14px;padding:6px 0;min-height:40px}.back:hover{color:var(--accent)}.notice{border-radius:12px;padding:15px 17px;font-size:14.5px;margin:0 0 20px}.notice.info{background:var(--paper);border:1px solid var(--line);color:var(--ink-soft)}.notice.warn{background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 40%,var(--line));color:#7a5613}.notice.err{background:var(--stop-soft);border:1px solid color-mix(in srgb,var(--stop) 40%,var(--line));color:#7c2f1e}.notice.paper{background:#efe7d5;border:1px solid var(--line-strong);color:#6b5b38;font-weight:500}.notice b{color:inherit}.access-bar{font-size:13px;color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin:0 0 22px}.ts-bar{border-bottom:1px solid var(--line);background:var(--paper-2)}.ts-inner{display:flex;align-items:center;gap:14px;padding:12px 0;flex-wrap:wrap}.ts-label{font-size:12.5px;color:var(--ink-soft)}.hint-line{font-size:12.5px;color:var(--ink-faint);margin:8px 0 0}.cards{display:flex;flex-direction:column;gap:16px}.idea{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}.idea h3{font-family:var(--serif);font-size:21px;font-weight:800;margin:0 0 4px}.idea .one{color:var(--ink-soft);margin:0 0 14px}.idea dl{display:grid;grid-template-columns:96px 1fr;grid-gap:8px 16px;gap:8px 16px;margin:0 0 16px}@media (max-width:480px){.idea dl{grid-template-columns:1fr;gap:2px 0}.idea dl div{margin-bottom:8px}}.idea dl dt{color:var(--ink-faint);font-size:12.5px;font-weight:700}.idea dl dd{margin:0;font-size:14.5px}.idea dl dd.risk{color:var(--stop)}.anchors{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.tag{background:var(--accent-soft);color:#8a3d20;border-radius:999px;padding:3px 11px;font-size:12px;font-weight:600}.firstcheck{background:var(--paper-2);border:1px dashed var(--line-strong);border-radius:10px;padding:11px 14px;font-size:14px;margin:0 0 16px}.firstcheck b{color:var(--accent)}.block{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin:0 0 16px}.block h3{font-family:var(--serif);font-size:19px;font-weight:800;margin:0 0 14px}.checks{flex-direction:column}.check-row,.checks{display:flex;gap:12px}.check-row{align-items:flex-start}.check-row .body strong{font-size:14.5px}.check-row .body p{margin:3px 0 0;font-size:14px;color:var(--ink-soft)}.check-row .body p.next,.q-star{color:var(--accent)}.q-star{font-size:11px;margin-left:6px}.pill,.q-star{font-weight:700}.pill{flex:none;min-width:52px;text-align:center;font-size:12px;padding:4px 9px;border-radius:999px}.pill.pass,.pill.yes{background:var(--ok-soft);color:var(--ok)}.pill.mixed,.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.fail,.pill.no{background:var(--stop-soft);color:var(--stop)}.pill.unknown{background:var(--paper-2);color:var(--ink-faint);border:1px solid var(--line-strong)}.verdict-card{background:var(--paper);border:1.5px solid var(--accent);border-radius:var(--radius);padding:22px;margin:6px 0 0}.verdict-card h3{font-family:var(--serif);font-size:19px;font-weight:800;margin:0 0 10px}.verdict-card>p{margin:0 0 16px}.testnext{border-top:1px solid var(--line);padding-top:16px}.tn-label{display:inline-block;font-size:12px;font-weight:800;color:#fff;background:var(--accent);padding:3px 11px;border-radius:7px;margin-bottom:8px}.testnext p{margin:0 0 16px;font-size:15.5px}.exp-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:14px;gap:14px;margin:0 0 8px}@media (max-width:720px){.exp-grid{grid-template-columns:1fr}}.exp{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px;text-align:left;cursor:pointer;transition:border-color .14s}.exp.sel,.exp:hover{border-color:var(--accent)}.exp.sel{box-shadow:inset 0 0 0 1px var(--accent)}.exp h4{font-family:var(--serif);font-size:18px;font-weight:800;margin:0 0 5px}.exp p{margin:0;font-size:13.5px;color:var(--ink-soft)}.how-list{margin:12px 0 0;padding-left:18px}.how-list li{font-size:13.5px;color:var(--ink-soft);margin-bottom:5px}.locked-tag{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;color:var(--ok);font-weight:700}.big-verdict{text-align:center;padding:26px;border-radius:var(--radius);margin:4px 0 18px}.big-verdict .v{font-family:var(--serif);font-size:40px;font-weight:800;line-height:1;margin-bottom:10px}.big-verdict.계속{background:var(--ok-soft);color:var(--ok)}.big-verdict.수정{background:var(--warn-soft);color:#7a5613}.big-verdict.중단{background:var(--stop-soft);color:var(--stop)}.big-verdict p{margin:0;font-size:15px}.foot{border-top:1px solid var(--line);margin-top:8px}.foot-inner{padding:26px 0 40px;color:var(--ink-faint);font-size:12.5px;line-height:1.7;max-width:760px}