/* Refined film-credit aesthetic. DESIGN_VARIANCE: 6 / MOTION_INTENSITY: 3 / VISUAL_DENSITY: 4.
   Native CSS; one dark theme, square corners, UMEPLAY orange, SUIT typography. */
@font-face{font-family:SUIT;src:url('assets/suit.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#101010;--surface:#181818;--line:#2a2a2a;--text:#eeece8;--muted:#a4a19d;--orange:#ff570a;--font:SUIT,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--font);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border-radius:0}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--orange);outline-offset:5px}::selection{background:var(--orange);color:#101010}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:20px;top:-100px;z-index:100;padding:12px 20px;background:var(--orange);color:#101010}.skip:focus{top:10px}
.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center}.brand img{width:156px;height:auto}.header-label{font-size:12px;letter-spacing:.16em;color:var(--muted)}.instagram-link{font-size:14px}.instagram-link span{margin-left:16px;font-size:21px}.intro{padding:42px 0 36px}.intro-label{font-size:12px;letter-spacing:.18em;margin:0 0 12px;color:var(--muted)}h1{font-family:var(--font);font-weight:670;font-size:clamp(50px,7.5vw,100px);line-height:1.08;letter-spacing:-.055em;margin:0;white-space:nowrap}h1 span{color:var(--text)}h1 .title-stop{color:var(--orange);padding-left:.015em}.intro-copy{margin:16px 0 0;font-size:16px;color:#a8a5a1;letter-spacing:-.02em}
.work-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);gap:1px;background:var(--line)}.work-tab{position:relative;border:0;background:var(--bg);padding:20px 24px;display:flex;align-items:center;gap:14px;text-align:left;transition:background .2s,color .2s}.work-tab::after{content:"";position:absolute;bottom:-1px;left:24px;right:24px;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .24s ease}.work-tab[aria-selected=true]{background:#1a1918;color:var(--text)}.work-tab[aria-selected=true]::after{transform:scaleX(1)}.work-tab[aria-selected=true] .work-number{color:var(--orange);opacity:1}.work-number{font-size:12px;opacity:.8;align-self:flex-start;margin-top:4px}.work-name{font-size:24px;line-height:1.2;letter-spacing:.015em;font-weight:620}.work-korean{font-size:14px;color:var(--muted)}.work-tab[aria-selected=true] .work-korean{color:#b7b3ae}.work-arrow{display:none}.work-tab:hover:not([aria-selected=true]){background:#171717}.film-banner{position:relative;isolation:isolate;min-height:196px;overflow:hidden;padding:32px 34px;display:flex;align-items:flex-end;justify-content:space-between;background:#151211;border-bottom:1px solid var(--line)}.film-image{position:absolute;z-index:-2;right:0;top:0;width:72%;height:100%;object-fit:cover;object-position:50% 55%;opacity:.52}.film-banner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#161211 3%,rgba(22,18,17,.82) 28%,rgba(16,16,16,.1) 78%),linear-gradient(0deg,rgba(16,16,16,.65),transparent)}.film-subtitle{font-size:14px;color:#b7b2ae;margin:0 0 12px}.film-copy h2{font-size:clamp(64px,7vw,100px);font-weight:620;line-height:1;letter-spacing:-.045em;margin:0}.film-caption{text-align:right;display:grid;gap:14px;font-size:14px;color:#c4bfba;position:relative}.film-count{font-size:25px;line-height:1;font-weight:450;font-variant-numeric:tabular-nums}.film-count small{font-size:12px;letter-spacing:.1em;font-weight:500;margin-left:8px;color:#bbb7b3}.cast-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:33px 0 28px}.role-filters{display:flex;gap:26px}.role-filters button{border:0;border-bottom:2px solid transparent;padding:5px 0 9px;background:none;color:var(--muted);font-size:15px;white-space:nowrap}.role-filters button span{font-size:12px;margin-left:7px;opacity:.75}.role-filters button[aria-pressed=true]{color:var(--text);border-color:var(--orange)}.role-filters button:hover{color:var(--text)}.profile-hint{font-size:12px;color:var(--muted)}.cast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:26px;row-gap:44px}.cast-card{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;min-width:0;animation:enter .38s both;animation-delay:calc(var(--i) * 12ms)}.portrait{position:relative;aspect-ratio:4/5;overflow:hidden;background:#242424}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 26%;filter:grayscale(1);transition:transform .55s cubic-bezier(.2,.7,.3,1),filter .45s;display:block}.portrait::after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.08);pointer-events:none}.portrait-arrow{position:absolute;bottom:12px;right:12px;background:rgba(16,16,16,.8);border:1px solid rgba(255,255,255,.26);color:var(--text);width:32px;height:32px;display:grid;place-items:center;font-size:21px;transform:translateY(50px);transition:transform .3s}.cast-card:hover .portrait img,.cast-card:focus-visible .portrait img{transform:scale(1.035);filter:grayscale(0)}.cast-card:hover .portrait-arrow,.cast-card:focus-visible .portrait-arrow{transform:translateY(0)}.cast-card:active{transform:translateY(2px)}.card-caption{padding-top:16px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.actor-name{font-size:20px;font-weight:620;line-height:1.4;letter-spacing:-.02em}.actor-role{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.5;display:block}.cast-note{font-size:13px;color:var(--muted);margin:44px 0 0}.coming{padding:70px 38px;display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:40px;background:var(--surface)}[hidden]{display:none!important}.coming-mark{color:var(--orange);font-size:150px;font-weight:900;line-height:1;letter-spacing:-.08em}.coming-label{color:var(--muted);font-size:12px;letter-spacing:.15em}.coming h3{font-size:32px;letter-spacing:-.04em;margin:8px 0 16px}.coming p:not(.coming-label){color:var(--muted);font-size:16px}.coming a{display:inline-flex;gap:30px;margin-top:14px;border-bottom:1px solid var(--orange);padding-bottom:8px}.closing{border-top:1px solid var(--line);margin-top:82px;padding:48px 0 56px;display:flex;justify-content:space-between;align-items:flex-end}.closing p{font-size:44px;letter-spacing:-.045em;line-height:1.3;font-weight:580;margin:0}.closing p span{color:var(--muted)}.closing a{font-size:15px;border-bottom:1px solid #777;padding-bottom:10px;display:flex;gap:60px}.closing a span{font-size:21px;line-height:1}.site-footer{border-top:1px solid var(--line);min-height:108px;display:flex;align-items:center;gap:26px;font-size:12px;color:var(--muted);padding-bottom:env(safe-area-inset-bottom)}.site-footer img{width:106px;height:auto;opacity:.8}.site-footer p{margin:0}.site-footer a{margin-left:auto}.notice{padding:30px;border:1px solid var(--line)}
dialog{width:min(850px,calc(100% - 48px));padding:0;max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #363432;background:#151515;color:var(--text)}dialog::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(7px)}dialog[open]{animation:dialog-enter .25s ease-out}.profile-layout{display:grid;grid-template-columns:1fr 1fr}.profile-picture{background:#222}.profile-picture img{width:100%;height:100%;max-height:680px;object-fit:cover;object-position:center top;display:block}.profile-info{padding:68px 38px 40px;align-self:center;min-width:0}.profile-label{font-size:12px;letter-spacing:.12em;color:var(--orange);margin:0 0 22px}.profile-info h2{font-size:48px;font-weight:620;line-height:1.2;margin:0;letter-spacing:-.035em}.profile-role{font-size:16px;color:var(--muted);margin:14px 0 30px}.profile-divider{height:1px;background:var(--line);margin-bottom:28px}.profile-subhead{font-size:14px;margin:0 0 15px}.profile-info a{border:0;border-top:1px solid #373532;border-bottom:1px solid #373532;padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:border-color .2s}.profile-info a:hover{border-color:var(--orange)}.profile-info a>span:first-child{display:grid;gap:3px;min-width:0}.profile-info small{font-size:12px;color:var(--muted);letter-spacing:.07em}#profile-handle{font-size:16px;overflow-wrap:anywhere}.external{color:var(--orange);font-size:28px}.profile-footnote{font-size:12px;color:var(--muted);margin-top:18px}.close-profile{position:absolute;right:12px;top:12px;width:44px;height:44px;border:1px solid #4a4743;background:#151515;color:var(--text);font-size:22px;display:grid;place-items:center}
@keyframes enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.intro{padding-top:50px;padding-bottom:44px}}
@media(max-width:1023px){.wrap{width:calc(100% - 64px)}.profile-hint{display:none}.cast-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 20px}.film-caption>span:first-child{max-width:160px}.work-korean{display:none}}
@media(max-width:767px){.wrap{width:calc(100% - 40px)}.site-header{height:72px}.brand img{width:132px}.header-label{display:none}.instagram-link{font-size:13px}.instagram-link span{margin-left:8px}.intro{padding:30px 0 28px}.intro-label{font-size:12px;letter-spacing:.12em;margin-bottom:13px}h1{font-size:clamp(32px,9.35vw,66px);letter-spacing:-.052em}.intro-copy{font-size:14px;margin-top:15px}.work-tab{padding:17px 13px;gap:9px}.work-tab::after{left:13px;right:13px}.work-name{font-size:20px}.work-number{font-size:12px;margin-top:2px}.work-arrow{font-size:20px}.film-banner{min-height:172px;padding:25px 20px;align-items:flex-end}.film-copy h2{font-size:62px}.film-subtitle{font-size:12px;margin-bottom:14px}.film-caption{gap:0}.film-caption>span:first-child{display:none}.film-count{font-size:21px;line-height:1.1;display:grid;gap:5px;justify-items:end}.film-count small{font-size:12px;max-width:80px;letter-spacing:.025em;line-height:1.3}.film-image{width:100%;object-position:65% 52%;opacity:.5}.film-banner::after{background:linear-gradient(90deg,rgba(22,18,17,.85),rgba(22,18,17,.12)),linear-gradient(0deg,rgba(16,16,16,.6),transparent)}.cast-toolbar{margin:23px 0 22px}.role-filters{width:100%;gap:0;justify-content:space-between}.role-filters button{font-size:14px;padding-bottom:9px}.role-filters button span{font-size:12px;margin-left:4px}.cast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:31px 16px}.card-caption{padding-top:13px;gap:5px}.actor-name{font-size:18px}.actor-role{font-size:12px;margin-top:4px}.portrait-arrow{display:none}.cast-note{font-size:12px;line-height:1.8;margin-top:30px}.closing{margin-top:49px;padding:31px 0 34px;gap:25px;align-items:flex-end}.closing p{font-size:30px}.closing a{font-size:13px;gap:18px;padding-bottom:6px;white-space:nowrap}.site-footer{min-height:110px;display:grid;grid-template-columns:auto 1fr;gap:12px 20px;padding-top:24px;padding-bottom:25px}.site-footer img{width:94px}.site-footer p{font-size:12px;justify-self:end}.site-footer a{font-size:12px;grid-column:1/-1;margin-left:0}.coming{padding:35px 20px;grid-template-columns:1fr;gap:8px}.coming-mark{font-size:82px}.coming h3{font-size:26px}.coming p:not(.coming-label){font-size:14px}.coming a{font-size:14px}.profile-layout{grid-template-columns:1fr}.profile-picture{height:min(47dvh,440px)}.profile-picture img{height:100%;object-position:center 24%}.profile-info{padding:27px 25px 28px}.profile-label{margin-bottom:11px}.profile-info h2{font-size:36px}.profile-role{margin:10px 0 19px;font-size:14px}.profile-divider{margin-bottom:19px}.profile-subhead{font-size:14px}.profile-footnote{font-size:12px}.profile-info a{padding:15px 0}dialog{width:calc(100% - 32px);max-height:calc(100dvh - 32px)}}
@media(max-width:480px){.closing{flex-direction:column;align-items:flex-start;gap:24px}.closing p{white-space:nowrap}.closing a{width:max-content;max-width:100%}.closing a span{margin-left:20px}}
@media(max-width:359px){.wrap{width:calc(100% - 32px)}.role-filters button{font-size:12px}.role-filters button span{margin-left:3px}.work-name{font-size:19px}.work-tab{gap:6px}.film-copy h2{font-size:54px}.film-banner{padding-inline:16px}.closing{display:block}.closing a{margin-top:25px;width:max-content}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.cast-card:hover .portrait img{transform:none}}

/* The work determines accent, while the original UMEPLAY wordmark stays orange. */
body[data-work="insane"]{--orange:#f04b51;--work-wash:#211214;--poster-tone:#ad0208}
body[data-work="reviver"]{--orange:#67b5cf;--work-wash:#102126;--poster-tone:#29575d}
.work-tab[data-work="insane"]{--tab-accent:#f04b51;--tab-wash:#211214}
.work-tab[data-work="reviver"]{--tab-accent:#67b5cf;--tab-wash:#102126}
.work-tab::after{background:var(--tab-accent)}
.work-tab[aria-selected=true]{background:var(--tab-wash)}
.work-tab[aria-selected=true] .work-number{color:var(--tab-accent)}
.film-banner{background:var(--work-wash);transition:background .25s}
.film-banner::after{background:linear-gradient(90deg,var(--work-wash) 3%,transparent 100%),linear-gradient(0deg,rgba(16,16,16,.65),transparent)}
.load-message{font-size:14px;color:var(--muted);margin:24px 0}
.load-message.error{border-left:2px solid var(--orange);padding-left:14px}
.profile-bio{font-size:15px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere;color:#c2beba;margin:24px 0}
.profile-credits{margin:28px 0 30px}.profile-credits h3{font-size:14px;font-weight:600;margin:0 0 18px}
.credit-entry{padding:12px 0;border-top:1px solid var(--line)}.credit-entry strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}
.credit-entry p{font-size:13px;color:var(--muted);margin:4px 0 0;overflow-wrap:anywhere}.credit-entry time{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}
.profile-layout{align-items:start}.profile-picture{position:sticky;top:0}.profile-picture img{max-height:none;aspect-ratio:4/5}.profile-info{align-self:start}
.profile-footnote[hidden],.profile-subhead[hidden]{display:none!important}
@media(max-width:767px){.profile-picture{position:relative}.profile-picture img{aspect-ratio:auto}.profile-info{padding-top:27px}.profile-bio{font-size:14px}}

.support-toolbar{display:flex;gap:12px;align-items:center;margin:23px 0}.support-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #45413d;background:none;padding:10px 15px;font-size:14px;min-height:44px}.support-toolbar button:hover{border-color:var(--orange)}.heart-symbol{font-size:24px;line-height:1;color:var(--orange)}#actor-heart[aria-pressed=true]{border-color:var(--orange);color:var(--orange)}#open-support{flex:1}#support-count{color:var(--muted);font-size:12px}.support-message{font-size:13px;line-height:1.8;color:var(--muted);margin:12px 0;overflow-wrap:anywhere}.support-message:empty{display:none}.support-message.error{color:#ff9c9c}.support-message.success{color:#c6d7c3}#support-dialog{width:min(600px,calc(100% - 40px));padding:35px;max-height:calc(100dvh - 40px)}.support-header>p:first-child{font-size:12px;letter-spacing:.12em;color:var(--orange);margin:0 0 13px}.support-header h2{font-size:29px;font-weight:550;letter-spacing:-.04em;line-height:1.3;max-width:90%;margin:0}.support-subtitle{font-size:14px;line-height:1.8;color:var(--muted);margin:15px 0 23px}#support-form label{display:block;font-size:14px;margin:15px 0 9px}#support-form input,#support-form textarea{font:inherit;font-size:15px;line-height:1.7;padding:11px 12px;border:1px solid #48423d;background:#1c1a18;color:var(--text);display:block;width:100%;border-radius:0}#support-form textarea{resize:vertical}#support-form input:focus,#support-form textarea:focus{outline:1px solid var(--orange);border-color:var(--orange)}#support-form ::placeholder{color:#99938d}.support-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:15px}.support-form-bottom small{font-size:12px;color:var(--muted)}#send-support{font:inherit;font-size:14px;font-weight:600;border:0;background:var(--orange);color:#131313;padding:10px 16px;white-space:nowrap}.support-toolbar button:disabled,#send-support:disabled{opacity:.5;cursor:wait}.support-comments{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.support-comments h3{font-size:15px;font-weight:550;margin:0 0 20px}.support-comments h3 span{color:var(--muted);font-size:12px;margin-left:6px}#comments-empty{font-size:14px;color:var(--muted);padding:12px 0 15px}.support-comment{padding:18px 0;border-top:1px solid #302d2a}.support-comment:first-child{border-top:0;padding-top:0}.support-comment>div{display:flex;justify-content:space-between;align-items:center;gap:15px}.support-comment strong{font-size:14px;font-weight:550;overflow-wrap:anywhere}.support-comment time{font-size:12px;color:var(--muted);flex:none}.support-comment p{font-size:14px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0}#more-comments{background:none;border:1px solid #45413d;width:100%;padding:12px;font-size:14px;color:var(--text);margin-top:12px}.photo-error{display:grid;place-items:center;height:100%;padding:15px;font-size:12px;color:var(--muted)}.role-filters{flex-wrap:wrap}
@media(max-width:767px){#support-dialog{width:calc(100% - 24px);padding:28px 20px;max-height:calc(100dvh - 24px)}.support-header h2{font-size:25px}.support-toolbar{margin:20px 0}.support-form-bottom{gap:8px}.support-form-bottom small{font-size:12px;max-width:110px}#send-support{padding-inline:12px}}

/* Motion keeps the existing film-credit layout and responds to each action. */
.work-tabs{position:relative}.work-indicator{position:absolute;bottom:-1px;left:0;height:2px;pointer-events:none;z-index:2;transform-origin:left center}
.motion-ready .work-tab::after{display:none}.motion-ready .cast-card{animation:none}.motion-ready #profile-dialog[open]{animation:none}
.motion-ready .film-banner{transition:none}.poster-leaving{pointer-events:none}
.photo-flight-layer[popover]{position:fixed;inset:0;margin:0;padding:0;border:0;width:100%;height:100%;max-width:none;max-height:none;overflow:visible;background:transparent;pointer-events:none;contain:layout style}
.photo-flight-layer::backdrop{background:transparent;pointer-events:none}
.photo-flight{position:fixed;overflow:hidden;background:#222;pointer-events:none;contain:layout paint;will-change:left,top,width,height}
.photo-flight img{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}
.heart-symbol,#heart-count{display:inline-block;transform-origin:center}.support-toolbar button,#send-support,#more-comments{transform-origin:center}
@media(prefers-reduced-motion:reduce){.photo-flight-layer{display:none!important}}

/* Equal viewport gutters; the portrait fills its pane without a bottom strip. */
#profile-dialog{margin:auto;inset:0}
@media(min-width:768px){
  .profile-layout{align-items:stretch}
  .profile-picture{position:relative;min-height:min(530px,calc(100dvh - 50px));overflow:hidden}
  .profile-picture img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-position:center 26%}
  .profile-info{padding-block:54px;align-self:center;max-height:min(680px,calc(100dvh - 50px));overflow:auto}
  .profile-footnote{margin-bottom:0}
}
