.sv-modality{--sv-modality-prose-max: 720px}.sv-modality__hero{padding-top:clamp(2rem,6vw,4rem)}.sv-modality__prose{max-width:var(--sv-modality-prose-max);margin:0 auto;color:var(--sv-text-secondary);font-size:var(--sv-text-md);line-height:1.7}.sv-modality__prose p{margin:0 0 var(--sv-space-4)}.sv-modality__prose p:last-child{margin-bottom:0}.sv-modality__list{max-width:var(--sv-modality-prose-max);margin:0 auto;padding:0 0 0 var(--sv-space-5);color:var(--sv-text-secondary);font-size:var(--sv-text-md);line-height:1.7}.sv-modality__list li{margin:0 0 var(--sv-space-2)}.sv-modality__list-outro{max-width:var(--sv-modality-prose-max);margin:var(--sv-space-4) auto 0;color:var(--sv-text-secondary);font-size:var(--sv-text-md);line-height:1.7}.sv-modality__steps{max-width:var(--sv-modality-prose-max);margin:0 auto;padding:0;list-style:none;display:grid;gap:var(--sv-space-5)}.sv-modality__step{display:grid;grid-template-columns:auto 1fr;gap:var(--sv-space-4);align-items:start}.sv-modality__step-num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--sv-accent-muted);color:var(--sv-accent);font-weight:600;font-size:var(--sv-text-md)}.sv-modality__step-title{margin:0 0 var(--sv-space-1);font-size:var(--sv-text-lg);font-weight:600;color:var(--sv-text-primary)}.sv-modality__step-body p{margin:0;color:var(--sv-text-secondary);font-size:var(--sv-text-md);line-height:1.65}.sv-modality__figure{max-width:960px;margin:0 auto;padding:0;border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#5b8def14,#5b8def05);border:1px dashed var(--sv-border-strong)}.sv-modality__figure-skeleton{aspect-ratio:16 / 9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sv-space-3);padding:var(--sv-space-5);color:var(--sv-text-muted);text-align:center}.sv-modality__figure-icon{color:var(--sv-accent);opacity:.5}.sv-modality__figure-caption-faint{margin:0;max-width:480px;font-size:var(--sv-text-xs);color:var(--sv-text-muted);opacity:.75;font-style:italic}.sv-modality__figcaption{padding:var(--sv-space-3) var(--sv-space-4);font-size:var(--sv-text-sm);color:var(--sv-text-secondary);background:#0003;text-align:center}.sv-modality__faq-list{max-width:var(--sv-modality-prose-max);margin:0 auto;display:grid;gap:var(--sv-space-3)}.sv-modality__faq-item{border:1px solid var(--sv-border-subtle);border-radius:12px;background:var(--sv-bg-elevated);padding:var(--sv-space-3) var(--sv-space-4);transition:border-color .15s ease}.sv-modality__faq-item[open]{border-color:var(--sv-border-strong)}.sv-modality__faq-item summary{cursor:pointer;font-weight:600;color:var(--sv-text-primary);font-size:var(--sv-text-md);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--sv-space-3)}.sv-modality__faq-item summary::-webkit-details-marker{display:none}.sv-modality__faq-item summary:after{content:"+";font-size:1.5em;font-weight:300;color:var(--sv-text-secondary);line-height:1}.sv-modality__faq-item[open] summary:after{content:"−"}.sv-modality__faq-item p{margin:var(--sv-space-3) 0 0;color:var(--sv-text-secondary);font-size:var(--sv-text-md);line-height:1.65}.sv-modality__related-card{text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease}.sv-modality__related-card:hover{transform:translateY(-2px);border-color:var(--sv-accent)}.sv-tool__runner{max-width:960px;margin:0 auto;padding:var(--sv-space-5);display:grid;gap:var(--sv-space-4)}.sv-tool__controls{display:grid;grid-template-columns:1fr 1fr;gap:var(--sv-space-4)}@media (max-width: 640px){.sv-tool__controls{grid-template-columns:1fr}}.sv-tool__control label{display:block;font-size:var(--sv-text-sm);color:var(--sv-text-secondary);margin-bottom:var(--sv-space-1)}.sv-tool__control select,.sv-tool__control input[type=range]{width:100%}.sv-tool__preview{display:block;margin:0 auto;background:#000;max-width:100%;height:auto;border-radius:12px;border:1px solid var(--sv-border-subtle)}.sv-tool__actions{display:flex;flex-wrap:wrap;gap:var(--sv-space-3);align-items:center;justify-content:center}.sv-tool__hint{text-align:center;font-size:var(--sv-text-sm);color:var(--sv-text-muted);margin:0}.sv-tool__error{padding:var(--sv-space-4);border-radius:12px;border:1px solid var(--sv-danger, #c0392b);background:#c0392b14;color:var(--sv-text-primary);text-align:center}
