/* Homepage-only preview. The decoration never participates in hit testing. */
.home-main { position:relative; isolation:isolate; }
.home-ambient { position:fixed; inset:0; z-index:-1; overflow:hidden; pointer-events:none; contain:strict; background-image:radial-gradient(rgba(150,152,255,.09) .7px,transparent .9px); background-size:9px 9px; }
.home-ambient * { pointer-events:none; }
.home-ambient[data-renderer="webgl2"] { background:none; }
.pattern-waves-canvas { display:block; width:100%; height:100%; }
.home-ambient[data-renderer="static-fallback"] .pattern-waves-canvas,.home-ambient[data-renderer="context-lost"] .pattern-waves-canvas { visibility:hidden; }
.home-main .portfolio-intro { position:relative; }
.ambient-control { position:absolute; inset-inline-end:0; bottom:10px; display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 10px; border:1px solid transparent; background:transparent; color:var(--muted); font-size:12px; line-height:1.4; cursor:pointer; }
.ambient-control:hover { color:var(--accent); border-color:var(--line); }
.ambient-control:disabled { cursor:default; opacity:.65; }
.ambient-control-icon { width:10px; height:10px; display:block; border-inline:2px solid currentColor; }
.ambient-control[aria-pressed="false"] .ambient-control-icon { border:0; border-inline-start:8px solid currentColor; border-block:5px solid transparent; }
@media(max-width:650px) {
 .ambient-control { font-size:11px; bottom:0; }
}
@media print { .home-ambient,.ambient-control { display:none!important; } }
