.checkpoint-wrap{max-width:var(--measure)}.checkpoint-eyebrow{display:block;font-family:var(--font-display);font-size:var(--type-small);font-variant:small-caps;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.75rem;line-height:1.3}.checkpoint-h1{font-family:var(--font-display);font-size:var(--type-h1);font-weight:400;color:var(--ink);margin:0 0 1rem;line-height:1.15}.checkpoint-intro{font-family:var(--font-body);font-size:var(--type-body);line-height:1.65;color:var(--ink-soft);max-width:var(--measure);margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px dotted var(--rule)}.checkpoint-questions{display:flex;flex-direction:column;gap:2.75rem;margin-bottom:3rem;list-style:none;padding:0}.checkpoint-question{position:relative}.checkpoint-question-number{font-family:var(--font-display);font-size:4em;font-weight:300;line-height:.85;color:var(--rule);margin-bottom:.5rem;display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .2s var(--ease-out)}.checkpoint-question[data-selected] .checkpoint-question-number{color:var(--ink-soft)}.checkpoint-question-text{font-family:var(--font-body);font-size:var(--type-body);line-height:1.65;color:var(--ink);margin:0 0 1.25rem;max-width:var(--measure)}.checkpoint-options{display:flex;flex-direction:column;gap:.65rem;margin-bottom:1rem}.checkpoint-option input[type=radio]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.checkpoint-option label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-family:var(--font-body);font-size:var(--type-body);line-height:1.5;color:var(--ink);transition:color .16s var(--ease-out)}.checkpoint-option label:hover .checkpoint-radio-indicator{border-color:var(--accent)}.checkpoint-radio-indicator{flex-shrink:0;width:16px;height:16px;border-radius:50%;border:1.5px solid var(--rule);background:transparent;margin-top:.25em;transition:border-color .16s var(--ease-out),background .16s var(--ease-out);position:relative}.checkpoint-option input:checked+label .checkpoint-radio-indicator{border-color:var(--accent);background:var(--accent)}.checkpoint-option input:checked+label .checkpoint-radio-indicator:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--paper)}.checkpoint-option input:focus-visible+label .checkpoint-radio-indicator{outline:2px solid var(--accent);outline-offset:2px}.checkpoint-feedback{max-height:0;overflow:hidden;opacity:0;transition:max-height .22s var(--ease-out),opacity .18s var(--ease-out);margin-top:.75rem}.checkpoint-feedback.is-visible{max-height:12rem;opacity:1}.checkpoint-feedback-inner{background:var(--paper-warm);border:1px solid var(--rule);border-radius:2px;padding:.875rem 1.125rem}.checkpoint-feedback-label{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--lock);margin-bottom:.35rem;display:block}.checkpoint-feedback-text{font-family:var(--font-body);font-size:var(--type-small);font-style:italic;line-height:1.6;color:var(--ink-soft);margin:0}.checkpoint-submit-area{padding-top:2rem;border-top:1px dotted var(--rule)}.checkpoint-celebration{position:relative;background:var(--paper-warm);border:1px solid var(--rule);border-radius:2px;padding:2rem 2rem 2rem 2.5rem;overflow:hidden}.checkpoint-celebration:before{content:"";position:absolute;top:0;left:0;width:3rem;height:3rem;border-right:2px solid var(--success);border-bottom:2px solid var(--success);pointer-events:none}.checkpoint-celebration-h{font-family:var(--font-display);font-size:2.5em;font-weight:400;color:var(--ink);margin:0 0 .75rem;line-height:1.1}.checkpoint-celebration-next-label{font-family:var(--font-mono);font-size:var(--type-mono);color:var(--lock);letter-spacing:.04em;margin-bottom:.4rem}.checkpoint-celebration-next-body{font-family:var(--font-body);font-size:var(--type-body);line-height:1.5;color:var(--ink-soft);margin:0 0 1.5rem}.checkpoint-celebration-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-size:var(--type-body);font-variant:small-caps;letter-spacing:.04em;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:.875rem 1.75rem;text-decoration:none;cursor:pointer;border-radius:2px;transition:background .16s var(--ease-out),border-color .16s var(--ease-out);-webkit-appearance:none;-moz-appearance:none;appearance:none}.checkpoint-celebration-btn:hover{background:var(--accent);border-color:var(--accent);color:var(--paper);text-decoration:none}.checkpoint-submit-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-size:var(--type-body);font-variant:small-caps;letter-spacing:.04em;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:.875rem 1.75rem;cursor:pointer;border-radius:2px;transition:background .16s var(--ease-out),color .16s var(--ease-out),border-color .16s var(--ease-out),transform .12s var(--ease-out);-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-bottom:1rem}.checkpoint-submit-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--paper);transform:translateY(-1px)}.checkpoint-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.checkpoint-error{font-family:var(--font-body);font-size:var(--type-small);color:var(--success);padding:.6rem 1rem;border:1px solid var(--success);border-radius:2px;background:var(--paper-warm);margin-top:.75rem;display:none}.checkpoint-error.is-visible{display:block}.checkpoint-md-fallback{font-family:var(--font-body);font-size:var(--type-body);line-height:1.65;color:var(--ink);max-width:var(--measure)}.checkpoint-md-fallback h2{font-family:var(--font-display);font-size:var(--type-h3);font-weight:400;color:var(--ink);margin-top:2rem;margin-bottom:.5rem;padding-bottom:.4rem;border-bottom:1px dotted var(--rule)}.checkpoint-md-fallback p{margin-bottom:1em}.checkpoint-md-fallback ul,.checkpoint-md-fallback ol{padding-left:1.5rem;margin-bottom:1em}.checkpoint-md-fallback strong{font-weight:600;color:var(--ink)}.md-page-wrap{max-width:var(--measure)}.md-page-eyebrow{display:block;font-family:var(--font-display);font-size:var(--type-small);font-variant:small-caps;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.75rem;line-height:1.3}.md-page-h1{font-family:var(--font-display);font-size:var(--type-h1);font-weight:400;color:var(--ink);margin:0 0 2rem;line-height:1.15;padding-bottom:1.25rem;border-bottom:1px dotted var(--rule)}.md-page-body{font-family:var(--font-body);font-size:var(--type-body);line-height:1.65;color:var(--ink)}.md-page-body h2{font-family:var(--font-display);font-size:var(--type-h2);font-weight:400;color:var(--ink);margin-top:2.5rem;margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:1px dotted var(--rule)}.md-page-body h3{font-family:var(--font-display);font-size:var(--type-h3);font-weight:400;color:var(--ink-soft);margin-top:2rem;margin-bottom:.5rem}.md-page-body p{margin-bottom:1em;max-width:var(--measure)}.md-page-body ul,.md-page-body ol{padding-left:1.5rem;margin-bottom:1em}.md-page-body li{margin-bottom:.4em;line-height:1.6}.md-page-body strong{font-weight:600;color:var(--ink)}.md-page-body blockquote{border-left:3px solid var(--accent);margin:1.75rem 0;padding:1rem 1.5rem;background:var(--paper-warm);font-style:italic;color:var(--ink-soft);border-radius:0 2px 2px 0}.md-page-body code{font-family:var(--font-mono);font-size:.88em;background:var(--paper-warm);border:1px solid var(--rule);border-radius:2px;padding:.12em .38em}.md-page-body pre{background:var(--paper-warm);border:1px dotted var(--rule);border-radius:2px;padding:1.25rem 1.5rem;overflow-x:auto;font-family:var(--font-mono);font-size:var(--type-mono);line-height:1.55;margin:1.5rem 0}.md-page-body pre code{background:none;border:none;padding:0;font-size:inherit}.md-page-back{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-display);font-size:var(--type-small);font-variant:small-caps;letter-spacing:.06em;color:var(--ink-soft);text-decoration:none;margin-top:3rem;padding-top:1.5rem;border-top:1px dotted var(--rule);display:block;transition:color .16s var(--ease-out)}.md-page-back:hover{color:var(--ink)}
