.sp{padding:var(--space-6)0 var(--space-12)}.sp-hero{max-width:860px;margin-bottom:var(--space-8)}.sp-kicker{font-family:var(--font-family-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-size:.76rem}.sp-hero h1{margin:var(--space-3)0;text-wrap:balance;font-size:max(2.4rem,min(6.4vw,4.4rem));line-height:1.1}.sp-hero p{max-width:62ch;color:var(--text-secondary);margin:0;font-size:1.1rem;line-height:1.6}.sp-meta{margin-top:var(--space-4);font-family:var(--font-family-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);font-size:.74rem;display:inline-block}.sp-langnote{margin:0 0 var(--space-6);font-size:var(--font-size-sm);color:var(--text-tertiary)}.sp-langnote:empty{display:none}.sp-layout{gap:var(--space-10);grid-template-columns:250px minmax(0,1fr);align-items:start;display:grid}.sp-toc{max-height:calc(100dvh - 120px);position:-webkit-sticky;position:sticky;top:96px;overflow:auto}.sp-toc ol{border-left:1px solid var(--glass-border);margin:0;padding:0;list-style:none}.sp-toc a{gap:var(--space-3);padding:.5rem 0 .5rem var(--space-4);color:var(--text-secondary);font-size:var(--font-size-sm);border-left:2px solid transparent;margin-left:-1px;line-height:1.35;text-decoration:none;display:flex}.sp-toc a span{font-family:var(--font-family-mono);color:var(--text-tertiary);padding-top:2px;font-size:.7rem}.sp-toc a:hover{color:var(--text-primary)}.sp-toc a.is-active{color:var(--text-primary);border-left-color:var(--color-primary)}.sp-toc a.is-active span{color:var(--color-primary)}.sp-body{max-width:760px}.sp-body section{padding-bottom:var(--space-8);margin-bottom:var(--space-8);border-bottom:1px dashed var(--glass-border);scroll-margin-top:96px}.sp-body section:last-child{border-bottom:none}.sp-body h2{align-items:baseline;gap:var(--space-3);margin:0 0 var(--space-4);font-size:max(1.5rem,min(3.4vw,2rem));line-height:1.15;display:flex}.sp-body h2 span{font-family:var(--font-family-mono);letter-spacing:.08em;color:var(--color-primary);font-size:.8rem}.sp-body h3{margin:var(--space-6)0 var(--space-2);font-size:1.15rem}.sp-body p,.sp-body li{color:var(--text-secondary);line-height:1.7}.sp-body p{margin:0 0 var(--space-4)}.sp-body ul{margin:0 0 var(--space-4);padding-left:1.2rem}.sp-body li{margin-bottom:var(--space-2)}.sp-body li::marker{color:var(--color-primary)}.sp-body strong{color:var(--text-primary)}.sp-body a{color:var(--color-primary-light);text-underline-offset:3px}.sp-body a:hover{color:var(--text-primary)}.sp-facts{margin:0 0 var(--space-4);background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-md);grid-template-columns:max-content 1fr;gap:0;display:grid;overflow:hidden}.sp-facts dt,.sp-facts dd{padding:.7rem var(--space-4);border-bottom:1px solid var(--glass-border);margin:0}.sp-facts dt{font-family:var(--font-family-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);align-items:center;font-size:.72rem;display:flex}.sp-facts dd{color:var(--text-primary);overflow-wrap:anywhere}.sp-facts dt:last-of-type,.sp-facts dd:last-of-type{border-bottom:none}.sp-table-wrap{margin:0 0 var(--space-4);border:1px solid var(--glass-border);border-radius:var(--radius-md);overflow-x:auto}.sp-table{border-collapse:collapse;width:100%;min-width:560px;font-size:var(--font-size-sm)}.sp-table th{text-align:left;padding:.7rem var(--space-4);background:var(--bg-card);font-family:var(--font-family-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);font-size:.7rem}.sp-table td{padding:.75rem var(--space-4);border-top:1px solid var(--glass-border);color:var(--text-secondary);vertical-align:top;line-height:1.5}.sp-table td:first-child{color:var(--text-primary);font-weight:600}.sp-callout{margin:0 0 var(--space-4);padding:var(--space-4)var(--space-5);background:var(--bg-card);border:1px solid var(--glass-border);border-left:3px solid var(--color-primary);border-radius:var(--radius-sm)}.sp-callout p:last-child{margin-bottom:0}.sp-btn{border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary);font:inherit;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);background:0 0;padding:.7rem 1.4rem;font-weight:700;text-decoration:none;display:inline-block}.sp-btn:hover,.sp-btn.is-solid{background:var(--color-primary);color:#0c0b09}.sp-btn.is-solid:hover{background:var(--color-primary-light)}.sp-body .sp-btn{color:var(--color-primary)}.sp-body .sp-btn.is-solid,.sp-body .sp-btn:hover{color:#0c0b09}@media (max-width:900px){.sp-layout{gap:var(--space-6);grid-template-columns:1fr}.sp-toc{max-height:none;position:static}.sp-toc ol{gap:var(--space-2);padding-bottom:var(--space-2);border-left:none;display:flex;overflow-x:auto}.sp-toc li{flex-shrink:0}.sp-toc a{border:1px solid var(--glass-border);border-radius:var(--radius-full);white-space:nowrap;margin:0;padding:.4rem .9rem}.sp-toc a.is-active{border-color:var(--color-primary)}.sp-toc a span{display:none}}@media (max-width:560px){.sp-facts{grid-template-columns:1fr}.sp-facts dt{border-bottom:none;padding-bottom:0}}
