:root{--color-bg:#fff;--color-text:#1f1f1f;--color-muted:#6b6b6b;--color-line:#dcdcdc;--color-graphite:#4a4744;--color-accent:var(--color-graphite);--color-accent-text:#fff;--color-warning:#2f6b3a;--color-selected-bg:#f2f2f2;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--radius:6px;--gutter:16px;--measure:40rem;--wordmark-height:22px}@media (min-width:768px){:root{--gutter:32px;--wordmark-height:28px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-body);flex-direction:column;margin:0;font-size:1rem;line-height:1.5;display:flex}a{color:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header,.site-footer,.site-main{width:100%;max-width:calc(var(--measure) + 2 * var(--gutter));padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.site-header{min-height:calc(var(--wordmark-height) + 40px);padding-top:20px;padding-bottom:20px}.wordmark-link{line-height:0;display:inline-block}.wordmark{height:var(--wordmark-height);width:auto;display:block}.site-main{flex:1;padding-top:8px;padding-bottom:48px}.prose h1{margin:0 0 16px;font-size:1.75rem;font-weight:600;line-height:1.2}.prose p{margin:0 0 16px}.site-footer{border-top:1px solid var(--color-line);color:var(--color-muted);padding-top:24px;padding-bottom:32px;font-size:.875rem}.site-footer p{margin:0 0 8px}.flow h1{margin:0 0 24px;font-size:1.75rem;font-weight:600;line-height:1.2}.flow h1:focus{outline:none}.opening-body{margin:0 0 16px}.opening-quiet{color:var(--color-muted);margin:0 0 24px;font-size:.875rem}.progress{margin:0 0 28px}.flow .progress-chapter{color:var(--color-graphite);margin:0 0 8px;font-size:.875rem;font-weight:600}.progress-marks{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.progress-mark{appearance:none;background:var(--color-line);border:0;border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-mark::-webkit-progress-bar{background:var(--color-line)}.progress-mark::-webkit-progress-value{background:var(--color-accent)}.progress-mark::-moz-progress-bar{background:var(--color-accent)}.block{margin:0 0 24px}.sentence,.line{margin:0 0 12px;font-size:1.375rem;line-height:1.6}.line{font-size:1.125rem}.blank{font:inherit;color:var(--color-text)}.blank-typed{border:0;border-bottom:1px solid var(--color-text);max-width:100%;font-size:inherit;background:0 0;border-radius:0;margin:0 2px;padding:0 2px;display:inline-block}.blank-typed[aria-invalid=true]{border-bottom-color:var(--color-warning)}.blank-chosen{border-bottom:1px solid var(--color-text)}.blank-chosen.is-empty{color:var(--color-muted);border-bottom-color:#0000}.question-hint,.question-count{color:var(--color-muted);margin:0 0 8px;font-size:.875rem}.question-count{text-align:right;margin-top:4px}.question-keys{margin:6px 0 0}.question-error,.form-error{color:var(--color-warning);margin:6px 0 0;font-size:.875rem}.long{border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);width:100%;min-height:6rem;color:var(--color-text);font:inherit;resize:vertical;padding:10px 12px;font-size:1rem;display:block}.choices{gap:8px;display:grid}.choice{border:1px solid var(--color-line);border-radius:var(--radius);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;display:flex}.choice[data-checked]{background:var(--color-selected-bg);border-color:var(--color-accent)}.choice:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:2px}.choice[data-disabled]{cursor:not-allowed;opacity:.45}.choice input[type=radio],.choice input[type=checkbox]{flex:none;margin:0}.choice-key{border:1px solid var(--color-line);width:1.5rem;height:1.5rem;color:var(--color-muted);border-radius:4px;flex:none;justify-content:center;align-items:center;font-size:.75rem;display:inline-flex}.other-text{border:0;border-bottom:1px solid var(--color-line);min-width:0;color:var(--color-text);font:inherit;background:0 0;flex:1;padding:2px 0;font-size:1rem}.check{align-items:flex-start;gap:10px;margin:0 0 16px;display:flex}.check input{flex:none;margin-top:4px}.check input:focus{outline:2px solid var(--color-graphite);outline-offset:3px}.form-status:empty{display:none}.form-status{margin:0 0 16px}.flow-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.button{appearance:none;border:1px solid var(--color-accent);border-radius:var(--radius);background:var(--color-bg);color:var(--color-accent);font:inherit;cursor:pointer;padding:12px 20px;font-weight:600}.button-primary{background:var(--color-accent);color:var(--color-accent-text)}.button:disabled{opacity:.6;cursor:progress}.thanks-value{word-break:break-all}.signoff{margin:16px 0 24px}.thanks-links{gap:8px;margin:0;padding:0;list-style:none;display:grid}.turnstile:empty{display:none}.hp{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}body[data-view=question] .footer-contact{display:none}@media (hover:none),(pointer:coarse){.choice-key,.question-keys{display:none}}@media (min-width:768px){.flow h1,.prose h1{font-size:2rem}.sentence{font-size:1.625rem}}
