/* Supplied artwork states share the existing five-second alarm lifecycle. */
.studio-home .universe-portal{position:relative;display:block;flex:0 0 180px;width:180px;aspect-ratio:1.22;isolation:isolate;transition:transform .22s ease;filter:drop-shadow(0 0 12px #7970ff80)}
.universe-portal img{display:block;width:100%;height:100%;object-fit:contain;transition:opacity .18s ease}
.universe-portal .universe-green,.universe-portal .universe-red{position:absolute;inset:0;opacity:0;pointer-events:none}
.universe-portal:hover,.universe-portal:focus-visible{transform:translateY(-4px) scale(1.035);filter:drop-shadow(0 0 16px #82ff3cb0)}
.universe-portal:is(:hover,:focus-visible) .universe-idle{opacity:0}
.universe-portal:is(:hover,:focus-visible) .universe-green{opacity:1}
.alarm-active .universe-portal .universe-idle,.alarm-active .universe-portal .universe-green{opacity:0}
.alarm-active .universe-portal .universe-red{opacity:1;animation:universe-alarm 1s ease-in-out infinite}
.alarm-active .universe-portal{filter:drop-shadow(0 0 22px #ff2020b0)}
@keyframes universe-alarm{0%,100%{opacity:.55}50%{opacity:1}}
@media(max-width:760px){.studio-home .universe-portal{flex:0 0 auto;width:170px;margin:0 auto}.studio-home .ignition-row{gap:12px}}
.less-motion .universe-portal,.less-motion .universe-portal img{transition:none}.less-motion .universe-portal .universe-red{animation:none}
@media(prefers-reduced-motion:reduce){.universe-portal,.universe-portal img{transition:none}.alarm-active .universe-portal .universe-red{animation:none}}

/* Explicit compact rows avoid flex height distribution on narrow browsers. */
@media(max-width:760px){.studio-home .ignition-row{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-content:start;gap:8px;height:auto;min-height:0}.studio-home .ignition-row>p{margin:0}.studio-home .universe-portal{width:170px;height:140px;min-height:0;aspect-ratio:auto;flex:none;margin:0}.studio-home .ignition{margin:0}}
