/* A26 Web Design System — App icon preview component */
@layer a26.components {
  :root {
    --a26-app-icon-radius: 22.37%;
    --a26-app-icon-shape: inset(0 round var(--a26-app-icon-radius));
  }

  .a26-app-icon-shape {
    border-radius: var(--a26-app-icon-radius);
    clip-path: var(--a26-app-icon-shape);
    overflow: hidden;
  }
  .a26-app-icon-preview {
    inline-size: 92px;
    block-size: 92px;
    width: 92px;
    height: 92px;
    min-inline-size: 92px;
    min-block-size: 92px;
    max-inline-size: 92px;
    max-block-size: 92px;
    aspect-ratio: 1 / 1;
    flex: 0 0 92px;
    position: relative;
    display: grid;
    place-items: center;
    isolation: isolate;
    border-radius: var(--a26-app-icon-radius);
    clip-path: var(--a26-app-icon-shape);
    overflow: hidden;
    contain: size layout paint;
    background:
      linear-gradient(160deg, color-mix(in srgb, var(--a26-accent-blue) 86%, white), color-mix(in srgb, var(--a26-accent-purple) 72%, black));
    box-shadow: 0 18px 36px color-mix(in srgb, var(--a26-accent-blue) 25%, transparent), inset 0 1px 0 #ffffff66;
  }

  .a26-app-icon-preview::before {
    content: '';
    position: absolute;
    inset: -20% -10% auto -10%;
    block-size: 54%;
    border-radius: 999px;
    background: linear-gradient(180deg, #ffffffaa, #ffffff00);
    filter: blur(12px);
    z-index: 1;
  }

  .a26-app-icon-preview__layer {
    position: absolute;
    border-radius: 18.8%;
  }

  .a26-app-icon-preview__layer:nth-child(1) {
    inline-size: 60%;
    block-size: 60%;
    background: color-mix(in srgb, white 35%, transparent);
    transform: translate(-8px, 9px) rotate(-10deg);
  }

  .a26-app-icon-preview__layer:nth-child(2) {
    inline-size: 56%;
    block-size: 56%;
    background: color-mix(in srgb, white 62%, transparent);
    transform: translate(8px, -8px) rotate(10deg);
  }

  .a26-app-icon-preview strong {
    position: relative;
    z-index: 2;
    color: white;
    font: var(--a26-font-title-2);
    font-weight: 800;
    text-shadow: 0 1px 12px #00000055;
  }
}
