.lean-code-block{position:relative;margin:1.25em 0;background:var(--block-surface);border:1px solid var(--block-border);border-radius:var(--block-radius);box-shadow:var(--block-shadow);overflow:hidden}.lean-header{display:flex;align-items:center;gap:8px;padding:6px 10px;background:transparent;border-bottom:1px solid var(--block-seam);user-select:none;cursor:default}.lean-label{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10.5px;font-weight:var(--fw-semibold);letter-spacing:0.06em;text-transform:uppercase;color:var(--block-label-fg);user-select:none}.lean-label::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;background:color-mix(in srgb,var(--accent-indigo) 25%,transparent);border:1px solid color-mix(in srgb,var(--accent-indigo) 45%,transparent)}.lean-check-btn{margin-left:auto;padding:3px 10px;font-family:var(--font-ui);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:0.02em;color:var(--color-primary);background:var(--color-primary-12);border:1px solid var(--color-primary-30);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.lean-check-btn:hover{background:var(--color-primary-25);border-color:var(--color-primary-50)}.lean-check-btn:disabled{opacity:0.5;cursor:not-allowed}.lean-check-btn.loading{pointer-events:none}.lean-code-block.read-only .lean-check-btn{display:none}.lean-code-block.read-only .lean-header{border-bottom-color:var(--block-seam)}.lean-status{font-family:var(--font-ui);font-size:10.5px;font-weight:var(--fw-semibold);padding:2px 8px;border-radius:var(--radius-full);user-select:none}.lean-status.verified{color:var(--color-success);background:var(--color-success-15);border:1px solid var(--color-success-30)}.lean-status.error{color:var(--color-danger);background:var(--color-danger-15);border:1px solid var(--color-danger-30)}.lean-status.checking{color:#b58900;background:var(--color-warning-15);border:1px solid var(--color-warning-30)}.lean-code-editor{display:flex;overflow-x:auto;background:color-mix(in srgb,var(--block-fg) 4%,transparent)}.lean-code-editor>pre{flex:1;margin:0;padding:0;overflow:visible;font-size:0;background:transparent;border:none;color:inherit}.lean-code-editor>pre>.lean-code-input{display:block;font-size:13px;padding:10px 12px;margin:0;vertical-align:top}.lean-line-numbers{flex-shrink:0;padding:10px 8px 10px 10px;min-width:2.25rem;text-align:right;font-family:var(--font-mono);font-size:13px;line-height:1.55;color:color-mix(in srgb,var(--block-fg) 30%,transparent);background:color-mix(in srgb,var(--block-fg) 3%,transparent);border-right:1px solid var(--block-seam);user-select:none;white-space:pre}.lean-code-input{flex:1;min-height:3.75rem;padding:10px 12px;margin:0;font-family:var(--font-mono);font-size:13px;line-height:1.55;color:var(--block-fg);background:transparent;border:none;outline:none;white-space:pre;overflow-x:visible;tab-size:2}.lean-code-input:focus{background:color-mix(in srgb,var(--color-primary) 6%,transparent)}.lean-code-block.read-only .lean-code-input{cursor:default;user-select:text}.lean-diagnostics{border-top:1px solid var(--block-seam)}.lean-diagnostics:empty{display:none}.lean-diagnostic-item{display:flex;gap:8px;padding:6px 12px;font-family:var(--font-mono);font-size:12px;line-height:1.45;border-left:3px solid transparent}.lean-diagnostic-item.error{color:var(--color-danger);border-left-color:var(--color-danger);background:var(--color-danger-08)}.lean-diagnostic-item.warning{color:#b58900;border-left-color:var(--color-warning);background:var(--color-warning-08)}.lean-diagnostic-item.information{color:var(--color-info);border-left-color:var(--color-info);background:var(--color-info-08)}.lean-diagnostic-loc{flex-shrink:0;color:var(--block-label-fg)}.lean-diagnostic-msg{flex:1;word-break:break-word}pre.lean-diagnostic-msg{margin:0;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;background:none;border:none;white-space:pre-wrap;word-break:break-word}.lean-goal-state{padding:8px 12px;font-family:var(--font-mono);font-size:12.5px;line-height:1.55;color:var(--color-primary);background:var(--color-primary-08);border-top:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent);white-space:pre-wrap}.lean-goal-state pre{margin:0;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;background:none;white-space:pre-wrap;word-break:break-word}.lean-verified{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:var(--fw-semibold);color:var(--color-success);background:var(--color-success-15);padding:2px 8px;border-radius:var(--radius-full);border:1px solid var(--color-success-30)}.lean-goal-panel{margin:10px 12px 12px;border:1px solid color-mix(in srgb,var(--color-primary) 22%,transparent);border-radius:var(--radius-sm);overflow:hidden}.lean-goal-header{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background:var(--color-primary-08);border-bottom:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent)}.lean-goal-title{font-size:10.5px;font-weight:var(--fw-semibold);color:var(--color-primary);text-transform:uppercase;letter-spacing:0.06em}.lean-goal-nav{display:flex;align-items:center;gap:8px}.lean-goal-nav button{background:var(--color-primary-15);border:none;color:var(--color-primary);width:22px;height:22px;border-radius:var(--radius-sm);cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center}.lean-goal-nav button:disabled{opacity:0.3;cursor:default}.lean-goal-nav button:not(:disabled):hover{background:var(--color-primary-30)}.lean-goal-step{font-size:10.5px;color:var(--block-muted-fg)}.lean-goal-body{padding:10px 12px}.lean-hypotheses{margin-bottom:8px}.lean-hypothesis{font-family:var(--font-mono);font-size:12.5px;color:var(--block-muted-fg);padding:2px 0;line-height:1.55}.lean-goal-separator{color:var(--color-primary);font-weight:700;font-size:13px;padding:4px 0;border-top:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent);margin-top:4px}.lean-goal-target{font-family:var(--font-mono);font-size:13px;color:var(--block-fg);padding:6px 0;line-height:1.6}.lean-goal-target .katex{font-size:1.1em}.lean-contributions{margin:12px 12px 12px;border-top:1px solid var(--block-seam);padding-top:10px}.lean-contributions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.lean-contributions-title{font-family:var(--font-mono);font-size:10.5px;font-weight:var(--fw-semibold);color:var(--block-label-fg);text-transform:uppercase;letter-spacing:0.06em}.lean-submit-proof-btn{font-family:var(--font-ui);font-size:11px;padding:3px 10px;border-radius:var(--radius-sm);border:1px solid var(--color-primary-30);background:var(--color-primary-10);color:var(--color-primary);cursor:pointer;transition:background-color var(--transition-fast)}.lean-submit-proof-btn:hover{background:var(--color-primary-25)}.lean-contribution-card{background:color-mix(in srgb,var(--block-fg) 4%,transparent);border-radius:var(--radius-sm);padding:10px;margin-bottom:8px;border:1px solid var(--block-seam)}.lean-contribution-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;color:var(--block-label-fg)}.lean-contribution-badge{font-family:var(--font-ui);font-size:10px;padding:1px 8px;border-radius:var(--radius-full);font-weight:600}.lean-contribution-badge.verified{background:var(--color-success-15);color:var(--color-success);border:1px solid var(--color-success-30)}.lean-contribution-badge.failed{background:var(--color-danger-15);color:var(--color-danger);border:1px solid var(--color-danger-30)}.lean-contribution-badge.pending{background:var(--color-warning-15);color:#b58900;border:1px solid var(--color-warning-30)}.lean-contribution-code{font-family:var(--font-mono);font-size:12px;color:var(--block-fg);background:color-mix(in srgb,var(--block-fg) 6%,transparent);padding:8px;border-radius:var(--radius-sm);white-space:pre-wrap;max-height:200px;overflow-y:auto}.lean-vote-row{display:flex;gap:12px;margin-top:6px;align-items:center}.lean-vote-btn{background:none;border:none;color:var(--block-label-fg);cursor:pointer;font-size:12px;padding:2px 4px;transition:color var(--transition-fast)}.lean-vote-btn:hover{color:var(--block-fg)}.lean-vote-count{font-size:11px;color:var(--block-muted-fg)}.lean-submit-form{padding:8px 0 0;margin-bottom:8px}.seo-content-page .lean-code-block::before{content:"Lean";display:block;padding:5px 12px;font-family:var(--font-mono);font-size:10.5px;font-weight:var(--fw-semibold);letter-spacing:0.08em;text-transform:uppercase;color:var(--block-label-fg);background:color-mix(in srgb,var(--accent-indigo) 10%,transparent);border-bottom:1px solid var(--block-seam)}.seo-content-page .lean-code-block::after{content:"? Unverified";position:absolute;top:4px;right:10px;font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-semibold);letter-spacing:0.04em;padding:1px 7px;border-radius:999px;color:var(--block-muted-fg,var(--block-label-fg));background:color-mix(in srgb,var(--block-fg) 6%,transparent);border:1px solid color-mix(in srgb,var(--block-fg) 12%,transparent);pointer-events:none}.seo-content-page .lean-code-block[data-lean-result*='"success":true']::after{content:"\2713 Verified";color:#2e7d32;background:color-mix(in srgb,#2e7d32 12%,transparent);border-color:color-mix(in srgb,#2e7d32 30%,transparent)}.seo-content-page .lean-code-block[data-lean-result*='"success":false']::after{content:"\2717 Errors";color:#c62828;background:color-mix(in srgb,#c62828 12%,transparent);border-color:color-mix(in srgb,#c62828 30%,transparent)}.seo-content-page[data-reader-theme="dark"] .lean-code-block[data-lean-result*='"success":true']::after,.seo-content-page[data-reader-theme="night"] .lean-code-block[data-lean-result*='"success":true']::after{color:#66bb6a;background:color-mix(in srgb,#66bb6a 18%,transparent);border-color:color-mix(in srgb,#66bb6a 35%,transparent)}.seo-content-page[data-reader-theme="dark"] .lean-code-block[data-lean-result*='"success":false']::after,.seo-content-page[data-reader-theme="night"] .lean-code-block[data-lean-result*='"success":false']::after{color:#ef5350;background:color-mix(in srgb,#ef5350 18%,transparent);border-color:color-mix(in srgb,#ef5350 35%,transparent)}