.som{--som-line:var(--stone-line);color:var(--color-bone);background-image:radial-gradient(at 50% 18%,#b6934d12,#0000 60%)}.som:before{content:"";pointer-events:none;z-index:0;opacity:.05;mix-blend-mode:screen;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}.som-wrap{max-width:1200px;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));flex-direction:column;gap:14px;margin:0 auto 56px;display:flex;position:relative}.som-head{gap:20px;max-width:880px}.som-eyebrow{font-family:var(--font-mono);letter-spacing:.32em;text-transform:uppercase;color:var(--gold-dim);font-size:11px}.som h1{font-family:var(--font-display);text-wrap:balance;margin:0;font-size:clamp(44px,7vw,84px);font-weight:500;line-height:1.02}.som h1 .it{color:var(--color-gold-lit);font-style:italic;font-weight:400}.som-quote{border-left:1px solid var(--color-gold);margin:4px 0 0;padding-left:20px}.som-quote p{font-family:var(--font-display);color:var(--color-gold-lit);margin:0;font-size:clamp(21px,2.4vw,27px);font-style:italic;line-height:1.35}.som-quote cite{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dim);margin-top:8px;font-size:11px;font-style:normal;display:block}.som-lede{max-width:68ch;color:var(--bone-dim);margin:0;font-size:18px;line-height:1.7}.som-how{font-family:var(--font-mono);color:var(--bone-faint);margin:0;font-size:12px}.som h2{font-family:var(--font-display);margin:0;font-size:32px;font-weight:500}.som h3{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--color-gold);margin:0;font-size:11px;font-weight:400}.som-stage{border-top:1px solid var(--som-line);border-bottom:1px solid var(--som-line);grid-template-columns:minmax(0,1fr) 340px;display:grid}@media (width<=900px){.som-stage{grid-template-columns:minmax(0,1fr)}}.som-view{touch-action:none;cursor:grab;background:radial-gradient(at 50% 55%,#17120f 0%,#0c0a0a 70%);height:72vh;min-height:520px;max-height:780px;position:relative}.som-view:active{cursor:grabbing}.som-view canvas{width:100%;height:100%;display:block}.som-labels{pointer-events:none;position:absolute;inset:0}.som-lab{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold-lit);white-space:nowrap;text-shadow:0 0 8px #0c0a0a,0 0 16px #0c0a0a;font-size:10.5px;position:absolute;transform:translate(-50%,-50%)}.som-key{font-family:var(--font-mono);color:var(--bone-faint);gap:14px;font-size:10.5px;display:flex;position:absolute;bottom:14px;left:14px}.som-key span{align-items:center;gap:6px;display:flex}.som-dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.som-static{text-align:center;color:var(--bone-faint);justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.som-panel{border-left:1px solid var(--som-line);flex-direction:column;gap:12px;min-width:0;max-height:780px;padding:22px;display:flex;overflow:auto}@media (width<=900px){.som-panel{border-left:0;border-top:1px solid var(--som-line);max-height:none}}.som-panel .k{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--color-gold);font-size:10.5px}.som-panel .pt{font-family:var(--font-display);margin:0;font-size:23px;line-height:1.3}.som-panel .src{font-family:var(--font-mono);color:var(--bone-faint);font-size:11px}.som-panel ul{margin:0;padding:0;list-style:none}.som-panel li{border-top:1px solid var(--som-line);flex-direction:column;gap:3px;padding:10px 0;display:flex}.som-panel li button{all:unset;cursor:pointer;color:var(--color-bone);font-size:15px;line-height:1.45}.som-panel li button:hover,.som-panel li button:focus-visible{color:var(--color-gold-lit);outline:none;text-decoration:underline}.som-panel .hint{color:var(--bone-faint);margin:0;font-style:italic}.som-controls{flex-direction:column;gap:10px;padding-top:6px;display:flex}.som-row{flex-wrap:wrap;gap:6px;display:flex}.som-chip{all:unset;cursor:pointer;font-family:var(--font-mono);border:1px solid var(--som-line);color:var(--bone-faint);border-radius:999px;padding:5px 11px;font-size:11px}.som-chip[aria-pressed=true]{color:var(--color-bone);border-color:var(--bone-faint)}.som-chip:focus-visible,.som-search input:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.som-chip .n{opacity:.55;margin-left:6px}.som-search input{border:0;border-bottom:1px solid var(--som-line);width:100%;max-width:420px;color:var(--color-bone);font-family:var(--font-body);background:0 0;padding:8px 2px;font-size:15px}.som-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:28px;padding-top:8px;display:grid}.som-grid div{flex-direction:column;gap:8px;display:flex}.som-grid p,.som-method p{color:var(--bone-dim);max-width:70ch;margin:0;line-height:1.7}.som-note{color:var(--bone-faint);margin:0;font-size:14.5px}.som-bridges{margin:0;padding:0;list-style:none}.som-bridges li{border-top:1px solid var(--som-line);grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);gap:18px;padding:16px 0;display:grid}.som-bridges .ours{font-family:var(--font-display);font-size:19px;line-height:1.35}.som-bridges .his{color:var(--bone-dim);font-size:15px;line-height:1.5}.som-bridges .sim{font-family:var(--font-mono);color:var(--bone-faint);text-align:center;padding-top:4px;font-size:12px}.som-bridges .who{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--bone-faint);margin-top:5px;font-size:10.5px;display:block}@media (width<=640px){.som-bridges li{grid-template-columns:minmax(0,1fr)}.som-bridges .sim{text-align:left}}.som-method{gap:16px}.som-link{color:var(--color-gold-lit);text-underline-offset:3px;text-decoration:underline}.som-text{gap:14px;max-width:820px}.som-text p{color:var(--bone-dim);max-width:68ch;margin:0;font-size:17.5px;line-height:1.75}.som-step{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-dim);font-size:11px}.som-text h2{text-wrap:balance}
