:root{--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--font-system: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--color-text: #1a1a1a;--color-text-muted: #666666;--color-bg: #ffffff;--color-border: #e1e1e1;--color-code-bg: #f5f5f5;--color-success: #0d7377;--color-error: #c53030;--color-warning: #d69e2e;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--border-radius: 2px;--max-width: 80ch}*{box-sizing:border-box}body{font-family:var(--font-system);font-size:16px;line-height:1.5;color:var(--color-text);background:var(--color-bg);margin:0;padding:0}.container{max-width:var(--max-width);margin:0 auto;padding:var(--space-xl) var(--space-md)}.section{margin-bottom:var(--space-xl)}.section-title{font-size:1.25rem;font-weight:600;margin:0 0 var(--space-md) 0;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-sm)}.nav{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-xl)}.nav-list{list-style:none;margin:0;padding:0;display:flex;gap:var(--space-lg)}.nav-link{color:var(--color-text);text-decoration:none;padding:var(--space-md) 0;border-bottom:2px solid transparent}.nav-link:hover,.nav-link.active{border-bottom-color:var(--color-text)}.card{border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--space-lg);margin-bottom:var(--space-md)}.table{width:100%;border-collapse:collapse;margin:var(--space-md) 0}.table th,.table td{text-align:left;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border)}.table th{font-weight:600;background:var(--color-code-bg)}.table-mono{font-family:var(--font-mono);font-size:.875rem}.code-block{font-family:var(--font-mono);font-size:.875rem;background:var(--color-code-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--space-md);overflow-x:auto;margin:var(--space-md) 0}.code-inline{font-family:var(--font-mono);font-size:.875rem;background:var(--color-code-bg);padding:var(--space-xs) var(--space-sm);border-radius:var(--border-radius)}.form-field{margin-bottom:var(--space-md)}.form-label{display:block;font-weight:600;margin-bottom:var(--space-sm)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;font-size:inherit}.form-textarea{font-family:var(--font-mono);font-size:.875rem;min-height:200px;resize:vertical}.form-file{padding:var(--space-sm);border:2px dashed var(--color-border);border-radius:var(--border-radius);text-align:center;cursor:pointer}.form-file:hover{border-color:var(--color-text-muted)}.button{display:inline-block;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-bg);color:var(--color-text);text-decoration:none;cursor:pointer;font-family:inherit;font-size:inherit}.button:hover{background:var(--color-code-bg)}.button-primary{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.button-primary:hover{opacity:.9}.alert{padding:var(--space-md);border-radius:var(--border-radius);margin:var(--space-md) 0}.alert-success{background:#f0fff4;border:1px solid var(--color-success);color:var(--color-success)}.alert-error{background:#fed7d7;border:1px solid var(--color-error);color:var(--color-error)}.alert-warning{background:#fefcbf;border:1px solid var(--color-warning);color:var(--color-warning)}.status-pass{color:var(--color-success);font-weight:600}.status-fail{color:var(--color-error);font-weight:600}.status-warn{color:var(--color-warning);font-weight:600}.hash{font-family:var(--font-mono);font-size:.875rem;word-break:break-all}.hash-short{font-family:var(--font-mono);font-size:.875rem}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);margin:var(--space-md) 0}@media (max-width: 768px){.two-column{grid-template-columns:1fr}.nav-list{flex-direction:column;gap:0}.container{padding:var(--space-md) var(--space-sm)}}*:focus{outline:2px solid var(--color-text);outline-offset:2px}@media print{.nav{display:none}.code-block,.table{break-inside:avoid}}
