/* One icon surface. Original artwork, no nested white frames or clipped lettering. */
.app-icon.app-icon{
 display:grid;place-items:center;position:relative;flex-shrink:0;
 padding:0;border:0;border-radius:22.5%;overflow:visible;isolation:isolate;
 background:#fff;color:#59616c;letter-spacing:-.5px;
 box-shadow:0 2px 5px #17212e08,0 6px 14px -8px #17212e24;
}
.app-icon .app-icon-fallback{
 position:absolute;inset:0;display:grid;place-items:center;border-radius:inherit;
 font-size:inherit;font-weight:600;line-height:1;pointer-events:none;
}
.app-icon:has(img:not([hidden])) .app-icon-fallback{visibility:hidden}
.app-icon img.app-icon-art{
 display:block;position:relative;inset:auto;z-index:1;
 width:100%;height:100%;max-width:100%;max-height:100%;
 object-fit:contain;object-position:center;padding:0;border:0;
 border-radius:inherit;background:transparent;box-shadow:none;
 pointer-events:none;
}
.app-icon--mark img.app-icon-art{padding:14%;border-radius:0}
.app-icon img.app-icon-art[hidden]{display:none}
.translation-store-icon.app-icon{font-size:11px;letter-spacing:0;box-shadow:0 2px 6px #17212e0b}
@media(hover:hover){
 .launcher-card:hover .app-icon{transform:translateY(-2px) scale(1.04)}
 .store-link:hover .app-icon{transform:translateY(-2px) scale(1.04)}
}
@media(prefers-reduced-motion:reduce){
 .launcher-card:hover .app-icon,.store-link:hover .app-icon{transform:none}
}
