/* Anniversary Spotlight — 9:16 story cards; fonts 12px */
.as-wrapper{--as-text:CanvasText;--as-sub:color-mix(in oklab, CanvasText 60%, transparent);--as-border:color-mix(in oklab, CanvasText 12%, transparent);--as-accent:#1f8aac;background:color-mix(in oklab, Canvas 96%, transparent);padding:16px;border:1px solid var(--as-border);border-radius:18px;box-shadow:0 6px 24px rgba(0,0,0,.04);margin:16px 0 24px;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans","Helvetica Neue",sans-serif}
.as-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}
.as-header h2{margin:0;font-size:12pxfont-size:23px;font-weight:600;}
.as-empty{padding:12px;border:1px dashed var(--as-border);border-radius:12px;color:var(--as-sub);text-align:center;font-size:12px}

.as-grid{display:grid;gap:10px}
@media (max-width:480px){.as-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:481px) and (max-width:980px){.as-grid{grid-template-columns:repeat(3,1fr)}}
@media (min-width:981px){.as-grid{grid-template-columns:repeat(10, minmax(140px,1fr))}}

.as-story-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-decoration:none;background:Canvas;border:1px solid var(--as-border);border-radius:16px;padding:8px;box-shadow:0 2px 8px rgba(0,0,0,.03);transition:transform .16s ease, box-shadow .16s ease;border-color:color-mix(in oklab, CanvasText 10%, transparent);aspect-ratio:11/16;overflow:hidden}
.as-story-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.06)}

.as-badge{position:absolute;top:8px;left:8px;font-size:12px;padding:4px 8px;border-radius:999px;color:#fff}
.as-birth{background:#16a34a}.as-death{background:#dc2626}

.as-portrait{display:block;width:70%;aspect-ratio:1/1;border-radius:50%;background:#e5e7eb;background-size:cover;background-position:center;border:2px solid #fff;box-shadow:0 1px 0 rgba(0,0,0,.04), inset 0 0 0 1px color-mix(in oklab, CanvasText 10%, transparent);margin-top:.6rem}

.as-title{display:block;text-align:center;color:var(--as-text);font-weight:700;line-height:1.25;font-size:12px;margin:.25rem 0 .15rem;padding:0 .2rem;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}

.as-mini{display:block;text-align:center;color:var(--as-text);opacity:.88;font-size:12px;white-space:normal;overflow:hidden;text-overflow:ellipsis;padding:0 .3rem;margin-top:.12rem}
.as-mini em{font-style:normal;opacity:.75;margin-right:.15rem}
.as-muted{color:var(--as-sub)}

.as-title{font-size:12px;}

.as-mini{font-size:12px;}

.as-header h2{font-size:23px;font-size:23px;font-weight:600;}

.as-badge{font-size:12px;}

@media (min-width:981px){
  .as-grid{grid-template-columns:repeat(8,1fr)!important;}
  .as-wrapper{width:80%; margin:0 auto;}
}
