/* Actor profiles and the detail-page actor dialog. No global card overrides. */
.ap-surface{--ap-ink:#f1f0e9;--ap-muted:#b8bab3;--ap-line:rgba(232,230,220,.15);--ap-button:rgba(235,232,221,.08);color:var(--ap-ink);font-family:inherit;min-width:0}
html[data-theme=light] .ap-surface{--ap-ink:#272c29;--ap-muted:#656b64;--ap-line:rgba(56,60,52,.17);--ap-button:rgba(57,61,49,.05)}
.ap-surface *{box-sizing:border-box}.ap-surface [hidden]{display:none!important}
.ap-profile{display:grid;grid-template-columns:128px minmax(0,1fr);gap:12px 24px;align-items:start;max-width:850px}
.ap-photo{grid-row:1/span 2;width:128px;aspect-ratio:2/3;border-radius:18px;overflow:hidden;margin:0;background:var(--ap-button);border:1px solid var(--ap-line);display:grid;place-items:center;font-size:38px}
.ap-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.ap-identity{min-width:0}.ap-name{font-size:32px;line-height:1.2;font-weight:650;letter-spacing:-.6px;margin:3px 0 8px;overflow-wrap:anywhere}
.ap-alias{font-size:13px;color:var(--ap-muted);margin:0;overflow-wrap:anywhere}
.ap-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px;font-size:12px;color:var(--ap-muted)}
.ap-fact{display:flex;align-items:center;gap:6px;max-width:100%;overflow-wrap:anywhere}.ap-fact svg{width:15px;height:15px;flex-shrink:0}
.ap-bio{grid-column:2;min-width:0}.ap-bio-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.8;color:var(--ap-muted);margin:0;overflow-wrap:anywhere}
.ap-bio.is-expanded .ap-bio-text{display:block}.ap-bio-toggle{background:transparent;border:0;padding:8px 0;color:var(--ap-ink);font:inherit;font-size:12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:32px}.ap-bio-toggle svg{width:14px;height:14px;transition:transform .25s}.ap-bio.is-expanded .ap-bio-toggle svg{transform:rotate(180deg)}
.ap-works-head{display:flex;align-items:center;gap:12px;margin:24px 0 16px;border-top:1px solid var(--ap-line);padding-top:20px}
.ap-works-head h2{font-size:18px;line-height:1.3;margin:0;font-weight:600}.ap-count{font-size:12px;color:var(--ap-muted)}
.ap-works{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 42px)/4);grid-template-columns:none;gap:14px;align-items:start;min-width:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;padding:5px 0 10px;overscroll-behavior-x:contain}
.ap-work{min-width:0;margin:0;scroll-snap-align:start}.ap-cover{position:relative;display:block;aspect-ratio:2/3;border-radius:14px;overflow:hidden;background:var(--ap-button);border:1px solid var(--ap-line);color:var(--ap-ink);text-decoration:none;isolation:isolate}
.ap-cover>img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .38s ease}.ap-cover:hover>img{transform:scale(1.035)}
.ap-cover:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(0deg,rgba(13,16,14,.30),transparent 55%);pointer-events:none}
.ap-badge{position:absolute;top:8px;left:8px;right:8px;width:max-content;max-width:calc(100% - 16px);padding:4px 7px;border-radius:7px;background:rgba(26,30,27,.82);color:#efeee8;font-size:10px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1}
.ap-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;z-index:2;background:linear-gradient(145deg,rgba(251,248,235,.98),rgba(203,202,188,.94));border:1px solid rgba(255,254,245,.65);box-shadow:inset 0 2px 3px rgba(255,255,247,.85),inset 0 -3px 5px rgba(103,108,96,.20),0 7px 16px rgba(8,12,9,.35),0 0 0 4px rgba(236,233,218,.10);color:#363d35;opacity:.92;transition:transform .35s ease,box-shadow .35s ease,opacity .35s}
.ap-play:before{content:"";position:absolute;inset:4px;border:1px solid rgba(117,126,105,.24);border-radius:50%;box-shadow:inset 0 1px 1px rgba(255,255,255,.4);pointer-events:none}
.ap-play svg{width:18px;height:18px;fill:currentColor;stroke:none;margin-left:2px;filter:drop-shadow(0 1px 0 rgba(255,255,249,.65))}
.ap-cover:hover .ap-play,.ap-cover:focus-visible .ap-play{transform:translate(-50%,-50%) scale(1.07);opacity:1;box-shadow:inset 0 2px 3px rgba(255,255,247,.9),inset 0 -3px 5px rgba(103,108,96,.20),0 10px 22px rgba(8,12,9,.4),0 0 0 5px rgba(236,233,218,.15)}
.ap-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:9px 0 0;font-size:13px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}.ap-title a{color:var(--ap-ink);text-decoration:none}.ap-meta{margin:5px 0 0;font-size:11px;line-height:1.5;color:var(--ap-muted);overflow-wrap:anywhere}.ap-empty{color:var(--ap-muted);font-size:13px;margin:12px 0}
.actor-profile-page{padding:calc(var(--ap-header-offset,var(--header-h,84px)) + 24px) 0 48px}.actor-profile-page>.container{max-width:1480px}.actor-profile-page .ap-works-head{margin-top:28px}.ap-page-back{display:inline-flex;align-items:center;gap:6px;color:var(--ap-muted);text-decoration:none;font-size:12px;margin-bottom:18px}.ap-page-back svg{width:16px;height:16px}
#actorPanel{padding:0;margin:auto;width:min(860px,calc(100vw - 48px));max-width:none;max-height:min(86dvh,820px);border:1px solid rgba(226,223,208,.22);border-radius:26px;background:linear-gradient(130deg,rgba(52,58,52,.97),rgba(34,39,35,.97) 65%,rgba(50,45,40,.97));box-shadow:0 28px 90px rgba(3,9,6,.5);backdrop-filter:blur(28px);overflow:hidden;color:var(--ap-ink);overscroll-behavior:contain}
#actorPanel[open]{display:flex;flex-direction:column;animation:apDialogIn .35s cubic-bezier(.22,1,.36,1)}
#actorPanel::backdrop{background:rgba(7,11,8,.53);backdrop-filter:blur(6px)}
html[data-theme=light] #actorPanel{background:linear-gradient(130deg,rgba(248,247,240,.97),rgba(232,235,226,.98));border-color:rgba(78,88,65,.2);box-shadow:0 24px 70px rgba(31,40,25,.22)}
.ap-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px 10px;flex-shrink:0;background:rgba(44,49,43,.58)}
html[data-theme=light] .ap-panel-head{background:rgba(242,242,234,.8)}
.ap-panel-label{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ap-muted);margin:0}.ap-panel-label svg{width:16px;height:16px}
.ap-close{width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;border:1px solid var(--ap-line);background:var(--ap-button);color:var(--ap-ink);cursor:pointer}.ap-close svg{width:17px;height:17px}
.ap-panel-scroll{padding:12px 28px 28px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(178,178,163,.3) transparent;min-height:0;scroll-behavior:smooth}
.ap-panel-foot{display:flex;justify-content:flex-end;margin-top:22px}.ap-full-link{font-size:12px;color:var(--ap-muted);display:inline-flex;align-items:center;gap:5px;text-decoration:none}.ap-full-link svg{width:15px;height:15px}
.ap-loading{display:flex;gap:14px;align-items:center;min-height:150px;color:var(--ap-muted);font-size:13px}.ap-loading-avatar{width:76px;height:114px;background:var(--ap-button);border-radius:14px;flex-shrink:0}.ap-error{padding:22px 0;color:var(--ap-muted);font-size:13px}.ap-retry{margin-top:14px;border:1px solid var(--ap-line);background:var(--ap-button);color:var(--ap-ink);border-radius:22px;padding:10px 18px;font:inherit;cursor:pointer}
.ap-works::-webkit-scrollbar{display:none}.ap-rail-controls{display:flex;gap:6px;margin-left:auto;flex-shrink:0}.ap-rail-button{width:36px;height:36px;display:grid;place-items:center;flex-shrink:0;border:1px solid var(--ap-line);border-radius:50%;background:var(--ap-button);color:var(--ap-ink);cursor:pointer}.ap-rail-button svg{width:16px;height:16px}.ap-rail-button:disabled{opacity:.28;cursor:default}.ap-rail-button:not(:disabled):hover{background:var(--ap-line)}.ap-works-head h2{min-width:0;overflow-wrap:anywhere}.actor-profile-page .ap-works,.actor-profile-page .ap-works-head{max-width:850px}
@media(max-width:600px){.ap-rail-button{width:44px;height:44px}.ap-rail-controls{gap:6px}.ap-works-head{gap:8px}}
.ap-close:hover,.ap-retry:hover{background:var(--ap-line)}.ap-surface :focus-visible{outline:2px solid var(--ap-ink);outline-offset:4px}
.ap-play{opacity:0;transform:translate(-50%,-50%) scale(.94);pointer-events:none}
.ap-cover:hover .ap-play,.ap-cover:focus-visible .ap-play{opacity:1;transform:translate(-50%,-50%) scale(1.04)}
@media(hover:none),(pointer:coarse){.ap-cover:not(:focus-visible) .ap-play{opacity:0;transform:translate(-50%,-50%) scale(.94)}}
.actor-profile-page{padding-bottom:48px}
@keyframes apDialogIn{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@keyframes apSheetIn{from{opacity:0;translate:0 30px}to{opacity:1;translate:0 0}}
@media(max-width:1024px){.ap-profile{grid-template-columns:112px minmax(0,1fr);gap:12px 20px}.ap-photo{width:112px}.ap-name{font-size:28px}.ap-works{grid-template-columns:none;grid-auto-columns:calc((100% - 36px)/4);gap:12px}.ap-bio-text{-webkit-line-clamp:2}#actorPanel{width:calc(100vw - 40px);max-height:88dvh}.ap-panel-scroll{padding:12px 22px 24px}}
@media(max-width:600px){.ap-profile{grid-template-columns:76px minmax(0,1fr);gap:12px 16px}.ap-photo{width:76px;grid-row:auto;border-radius:13px}.ap-name{font-size:26px;margin:3px 0 6px}.ap-alias{font-size:12px}.ap-facts{margin-top:10px;font-size:11px;gap:5px;display:grid}.ap-bio{grid-column:1/-1}.ap-bio-text{font-size:12px;-webkit-line-clamp:2;line-height:1.75}.ap-works{grid-template-columns:none;grid-auto-columns:calc((100% - 12px)/2);gap:12px}.ap-works-head{margin:16px 0 14px;padding-top:16px}.ap-works-head h2{font-size:17px}.ap-play{width:44px;height:44px}.ap-badge{top:7px;left:7px;max-width:calc(100% - 14px)}.actor-profile-page{padding:20px 0 36px}#actorPanel{width:100%;max-height:91dvh;margin:auto 0 0;border-radius:24px 24px 0 0;border-bottom:0}#actorPanel[open]{animation:apSheetIn .38s cubic-bezier(.22,1,.36,1)}.ap-panel-head{padding:12px 16px 8px}.ap-close{width:44px;height:44px}.ap-panel-scroll{padding:12px 20px calc(24px + env(safe-area-inset-bottom,0px))}.ap-bio-toggle{min-height:36px}.ap-panel-foot{margin-top:18px}}
@media(max-width:360px){.ap-panel-scroll{padding-left:16px;padding-right:16px}.ap-profile{column-gap:12px}.ap-name{font-size:24px}.ap-works{column-gap:10px;grid-auto-columns:calc((100% - 10px)/2)}}
@media(prefers-reduced-motion:reduce){#actorPanel,.ap-surface *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:600px){.actor-profile-page{padding-top:calc(var(--ap-header-offset,var(--header-h,68px)) + 20px)}}

/* Neutral actor links must take precedence over the site's blue link states. */
.ap-surface a.ap-full-link,.ap-surface a.ap-page-back{color:var(--ap-muted)!important;transition:color .2s ease}
.ap-surface a.ap-full-link:hover,.ap-surface a.ap-page-back:hover,.ap-surface a.ap-full-link:focus-visible,.ap-surface a.ap-page-back:focus-visible,.ap-surface .ap-title a:hover{color:var(--ap-ink)!important}
a.detail-cast-person,a.actor-card,a.detail-cast-person:visited,a.actor-card:visited{color:#efeee8!important}
a.detail-cast-person:hover,a.actor-card:hover,a.detail-cast-person:focus-visible,a.actor-card:focus-visible{color:#fffaf0!important}
a.detail-cast-person .detail-cast-person__name,a.actor-card .actor-card__name{color:inherit!important}
a.detail-cast-person:focus-visible,a.actor-card:focus-visible{outline:2px solid rgba(239,235,221,.8);outline-offset:5px}
html[data-theme=light] a.detail-cast-person,html[data-theme=light] a.actor-card{color:#30382f!important}
html[data-theme=light] a.detail-cast-person:hover,html[data-theme=light] a.actor-card:hover{color:#171e16!important}
