

/* Detail rhythm tokens are resolved from the shared semantic scale. */
:root {
  --site-gutter: 16px;
  --site-content-standard: 1120px;
  --site-content-wide: 1400px;
  --site-content-narrow: 880px;
  --site-bg-texture: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
}
@media (min-width: 760px) {
  :root { --site-gutter: 24px; }
}
@media (min-width: 1180px) {
  :root { --site-gutter: 36px; }
}
.site-shell,
.site-shell-wide {
  width: min(var(--site-content-wide), calc(100vw - var(--site-gutter) - var(--site-gutter)));
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
.site-shell-standard {
  width: min(var(--site-content-standard), calc(100vw - var(--site-gutter) - var(--site-gutter)));
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
.site-shell-narrow {
  width: min(var(--site-content-narrow), calc(100vw - var(--site-gutter) - var(--site-gutter)));
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
@media (max-width: 767px) {
  .site-shell,
  .site-shell-wide { --site-gutter: var(--space-mobile-gutter); }
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img,svg{display:block}
.hidden{display:none!important}
.block{display:block}
.inline-block{display:inline-block}
.flex{display:flex}
.inline-flex{display:inline-flex}
.grid{display:grid}
.relative{position:relative}
.absolute{position:absolute}
.fixed{position:fixed}
.inset-0{inset:0}
.top-0{top:0}
.left-0{left:0}
.right-0{right:0}
.z-0{z-index:var(--layer-base)}
.z-1{z-index:var(--layer-content)}
.mx-auto{margin-left:auto;margin-right:auto}
.ml-1{margin-left:var(--space-ui-1)}
.ml-2{margin-left:var(--space-ui-2)}
.mt-0\.5{margin-top:var(--space-ui-0-5)}
.mt-1{margin-top:var(--space-ui-1)}
.mt-1\.5{margin-top:var(--space-ui-1-5)}
.mt-2{margin-top:var(--space-ui-2)}
.mb-1{margin-bottom:var(--space-ui-1)}
.mb-1\.5{margin-bottom:var(--space-ui-1-5)}
.mb-2{margin-bottom:var(--space-ui-2)}
.mb-3{margin-bottom:var(--space-ui-3)}
.mb-4{margin-bottom:var(--space-ui-4)}
.mb-5{margin-bottom:var(--space-ui-5)}
.mb-6{margin-bottom:var(--space-ui-6)}
.p-1\.5{padding:var(--space-ui-1-5)}
.p-3{padding:var(--space-ui-3)}
.p-4{padding:var(--space-ui-4)}
.p-6{padding:var(--space-ui-6)}
.p-8{padding:var(--space-ui-8)}
.px-1\.5{padding-left:var(--space-ui-1-5);padding-right:var(--space-ui-1-5)}
.px-2{padding-left:var(--space-ui-2);padding-right:var(--space-ui-2)}
.px-2\.5{padding-left:var(--space-ui-2-5);padding-right:var(--space-ui-2-5)}
.px-3{padding-left:var(--space-ui-3);padding-right:var(--space-ui-3)}
.px-4{padding-left:var(--space-ui-4);padding-right:var(--space-ui-4)}
.py-0\.5{padding-top:var(--space-ui-0-5);padding-bottom:var(--space-ui-0-5)}
.py-1{padding-top:var(--space-ui-1);padding-bottom:var(--space-ui-1)}
.py-1\.5{padding-top:var(--space-ui-1-5);padding-bottom:var(--space-ui-1-5)}
.py-2{padding-top:var(--space-ui-2);padding-bottom:var(--space-ui-2)}
.py-2\.5{padding-top:var(--space-ui-2-5);padding-bottom:var(--space-ui-2-5)}
.py-3{padding-top:var(--space-ui-3);padding-bottom:var(--space-ui-3)}
.py-6{padding-top:var(--space-ui-6);padding-bottom:var(--space-ui-6)}
.py-8{padding-top:var(--space-ui-8);padding-bottom:var(--space-ui-8)}
.py-12{padding-top:var(--space-scale-rem-3);padding-bottom:var(--space-scale-rem-3)}
.py-16{padding-top:var(--space-scale-rem-4);padding-bottom:var(--space-scale-rem-4)}
.pt-1{padding-top:var(--space-ui-1)}
.pt-4{padding-top:var(--space-ui-4)}
.pb-2{padding-bottom:var(--space-ui-2)}
.pb-12{padding-bottom:var(--space-scale-rem-3)}
.pb-16{padding-bottom:var(--space-scale-rem-4)}
.pr-3{padding-right:var(--space-ui-3)}
.space-y-1\.5>:not([hidden])~:not([hidden]){margin-top:var(--space-ui-1-5)}
.space-y-3>:not([hidden])~:not([hidden]){margin-top:var(--space-ui-3)}
.max-w-3xl{max-width:var(--size-content-3xl)}
.max-w-5xl{max-width:var(--size-content-5xl)}
.w-3{width:var(--size-scale-px-12)}
.w-3\.5{width:var(--size-scale-px-14)}
.w-4{width:var(--size-scale-px-16)}
.w-5{width:var(--size-scale-px-20)}
.w-7{width:var(--size-scale-px-28)}
.w-8{width:var(--size-scale-px-32)}
.w-14{width:var(--size-scale-px-56)}
.w-16{width:var(--size-scale-px-64)}
.w-32{width:var(--size-scale-px-128)}
.w-80{width:var(--size-scale-px-320)}
.w-full{width:100%}
.h-3{height:var(--size-scale-px-12)}
.h-3\.5{height:var(--size-scale-px-14)}
.h-4{height:var(--size-scale-px-16)}
.h-5{height:var(--size-scale-px-20)}
.h-7{height:var(--size-scale-px-28)}
.h-14{height:var(--size-scale-px-56)}
.min-h-screen{min-height:100vh}
.min-w-0{min-width:0}
.flex-1{flex:1 1 0%}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.flex-shrink-0{flex-shrink:0}
.items-center{align-items:center}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.gap-0\.5{gap:var(--space-ui-0-5)}
.gap-1{gap:var(--space-ui-1)}
.gap-1\.5{gap:var(--space-ui-1-5)}
.gap-2{gap:var(--space-ui-2)}
.gap-3{gap:var(--space-ui-3)}
.gap-4{gap:var(--space-ui-4)}
.gap-x-6{column-gap:var(--space-ui-6)}
.gap-y-1{row-gap:var(--space-ui-1)}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.aspect-\[2\/3\]{aspect-ratio:2/3}
.aspect-video{aspect-ratio:16/9}
.overflow-hidden{overflow:hidden}
.overflow-x-auto{overflow-x:auto}
.border{border:var(--size-scale-px-1) solid var(--border)}
.border-b{border-bottom:var(--size-scale-px-1) solid var(--border)}
.border-t{border-top:var(--size-scale-px-1) solid var(--border)}
.border-collapse{border-collapse:collapse}
.border-red-900{border-color:var(--visual-error-border)}
.last\:border-0:last-child{border:0}
.rounded{border-radius:var(--radius-ui-xs)}
.rounded-md{border-radius:var(--radius-ui-sm)}
.rounded-lg{border-radius:var(--radius-ui-md)}
.rounded-xl{border-radius:var(--radius-ui-lg)}
.rounded-full{border-radius:var(--radius-pill)}
.object-cover{object-fit:cover}
.text-center{text-align:center}
.text-\[9px\]{font-size:var(--type-label)}
.text-\[10px\]{font-size:var(--type-kicker)}
.text-\[11px\]{font-size:var(--type-meta)}
.text-xs{font-size:var(--type-scale-rem--75);line-height:var(--leading-utility-xs)}
.text-sm{font-size:var(--type-scale-rem--875);line-height:var(--leading-utility-sm)}
.text-base{font-size:var(--type-scale-rem-1);line-height:var(--leading-utility-base)}
.text-lg{font-size:var(--type-scale-rem-1-125);line-height:var(--leading-utility-lg)}
.text-xl{font-size:var(--type-scale-rem-1-25);line-height:var(--leading-utility-xl)}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.italic{font-style:italic}
.leading-snug{line-height:var(--leading-utility-snug)}
.leading-tight{line-height:var(--leading-utility-tight)}
.leading-relaxed{line-height:var(--leading-utility-relaxed)}
.break-all{word-break:break-all}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.whitespace-nowrap{white-space:nowrap}
.text-white{color:var(--text-primary)}
.text-red-400{color:var(--visual-error-text)}
.text-green-400{color:var(--status-green)}
.text-green-600{color:var(--visual-success-solid)}
.text-yellow-400{color:var(--resource-badge-remux-text)}
.bg-slate-800{background:var(--bg-surface)}
.bg-slate-700{background:var(--bg-surface-hover)}
.bg-blue-600{background:var(--status-blue)}
.border-slate-600{border-color:var(--visual-border-medium)}
.shadow-2xl{box-shadow:var(--shadow-dialog)}
.opacity-0{opacity:var(--opacity-hidden)}
.opacity-25{opacity:var(--opacity-subtle)}
.opacity-75{opacity:var(--opacity-quiet)}
.opacity-100{opacity:var(--opacity-visible)}
.transition{transition-property:color,background-color,border-color,opacity,transform;transition-duration:var(--motion-duration-base);transition-timing-function:var(--motion-ease-standard)}
.duration-100{transition-duration:var(--motion-duration-fast)}
.ease-out{transition-timing-function:var(--motion-ease-out)}
.animate-spin{animation:spin var(--motion-duration-spin) linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.hover\:text-white:hover{color:var(--text-primary)}
.hover\:text-\[\#d4a04a\]:hover{color:var(--accent)}
.hover\:opacity-80:hover{opacity:var(--opacity-hover)}
.hover\:bg-blue-700:hover{background:var(--status-blue-hover)}
.active\:bg-blue-800:active{background:var(--status-blue-active)}
.focus\:border-blue-500:focus{border-color:var(--status-blue)}
.focus\:outline-none:focus{outline:0}
@media (min-width:640px){
  .sm\:w-40{width:var(--size-scale-px-160)}
  .sm\:gap-6{gap:var(--space-ui-6)}
  .sm\:text-2xl{font-size:var(--type-scale-rem-1-5);line-height:var(--leading-utility-xs)}
  .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){
  .animate-spin{animation:none}
  .transition{transition-duration:var(--motion-duration-instant)}
}


:root {
  --site-gutter: 16px;
  --site-content-standard: 1120px;
  --site-content-wide: 1400px;
  --site-content-narrow: 880px;
  --site-bg-texture: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
}
@media (min-width: 760px) {
  :root { --site-gutter: 24px; }
}
@media (min-width: 1180px) {
  :root { --site-gutter: 36px; }
}
.site-shell,
.site-shell-wide {
  width: min(var(--site-content-wide), calc(100vw - var(--site-gutter) - var(--site-gutter)));
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
.site-shell-standard {
  width: min(var(--site-content-standard), calc(100vw - var(--site-gutter) - var(--site-gutter)));
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
.site-shell-narrow {
  width: min(var(--site-content-narrow), calc(100vw - var(--site-gutter) - var(--site-gutter)));
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
@media (max-width: 767px) {
  .site-shell,
  .site-shell-wide { --site-gutter: var(--space-mobile-gutter); }
}

  :root {
    --bg-body: #0a0a0c;
    --bg-header: #121214;
    --bg-surface: #1a1a1e;
    --bg-surface-hover: #24242a;
    --text-primary: #e6e4e0;
    --text-secondary: #a09890;
    --text-muted: #92877a;
    --text-dim: #746a5f;
    --accent: #d4a04a;
    --accent-hover: #c08e3a;
    --border: rgba(255,255,255,0.06);
    --bg-pill: rgba(10,10,12,0.62);
    --text-on-accent: #171006;
    --success: #7fbf83;
    --error: #d46a5f;
    --detail-info-column: 72ch;
    --radius-xs: var(--radius-ui-xs);
    --radius-sm: var(--radius-ui-sm);
    --radius-md: var(--radius-ui-md);
    --radius-lg: var(--radius-ui-lg);
  }
  html { padding-top: constant(safe-area-inset-top); padding-top: env(safe-area-inset-top, 0); background: var(--bg-body); background-image: var(--site-bg-texture); }
  body { background: var(--bg-body); background-image: var(--site-bg-texture); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; color: var(--text-primary); -webkit-text-size-adjust:100%; text-size-adjust:100%; }
  :focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: var(--radius-sm); }
  :focus:not(:focus-visible) { outline: none; }
  button { touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
  .poster-shadow { box-shadow: var(--shadow-page-art); }
  .backdrop { position: absolute; top: 0; left: 0; right: 0; height: var(--size-scale-px-320); z-index: var(--layer-base);
    background-size: cover; background-position: center 18%; opacity:var(--opacity-backdrop-art); pointer-events:none;
  }
  .backdrop::after { content: ''; position: absolute; inset: 0;
    background: var(--visual-page-backdrop);
  }
	  .content { position: relative; z-index: var(--layer-content); }
	  .detail-shell { padding-top:var(--space-scale-px-16); padding-bottom:0; }
  .ui-primary { color:var(--text-primary); }
  .ui-secondary { color:var(--text-secondary); }
  .ui-muted { color:var(--text-muted); }
  .ui-accent { color:var(--accent); }
  .ui-success { color:var(--success); }
  .surface-card { background:var(--bg-surface); border:1px solid var(--border); box-shadow:var(--shadow-card-hairline); transition:border-color 0.18s ease, background-color 0.18s ease; }
  .status-panel { background:var(--bg-surface); border-color:var(--border); color:var(--text-secondary); }
  .back-link { color:var(--text-primary); font-size:var(--type-control); font-weight:600; background:var(--bg-pill); border:1px solid var(--border); padding:0 var(--space-scale-px-14); border-radius:var(--radius-md); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); transition:background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease; }
  .icon-btn { cursor: pointer; user-select: none; }
  .magnet-link { color: inherit; text-decoration: none; }
  .poster-fallback { background:var(--bg-surface); color:var(--text-muted); border:1px solid var(--border); box-shadow: var(--shadow-card-hairline-strong); }
  .poster-mark { color:var(--accent); font-weight:800; letter-spacing:0; font-size:var(--type-content-title); line-height:1; margin-bottom:var(--space-scale-px-8); }
  .detail-measure { max-width: 58ch; }
  .detail-section-title { margin:0; color:var(--text-primary); font-size:var(--type-section); line-height:var(--leading-detail-heading); font-weight:var(--weight-section); letter-spacing:0; }
  .detail-section-copy { color:var(--text-muted); font-size:var(--type-card-copy); line-height:var(--leading-detail-value); }
  .detail-story { width:100%; max-width:none; justify-self:stretch; display:grid; gap:0; align-content:start; }
  .detail-story-row { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-group); color:var(--text-secondary); font-size:var(--type-card-copy); line-height:var(--leading-detail-prose); font-weight:400; padding:0 0 var(--space-detail-group); }
  .detail-enrichment-list { display:grid; gap:0; border-top:1px solid var(--visual-detail-divider); }
  .detail-enrichment { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-item); color:var(--text-secondary); font-size:var(--type-field-value); line-height:var(--leading-detail-value); font-weight:400; padding:var(--space-detail-row-block) 0; border-bottom:1px solid var(--visual-detail-divider); }
  .detail-enrichment:last-child { border-bottom:0; }
  .detail-story-label,
  .detail-enrichment-label { color:var(--text-muted); font-size:var(--type-field-label); line-height:var(--leading-detail-meta); font-weight:720; white-space:nowrap; }
  .detail-overview { max-width:none; margin:0; color:var(--text-secondary); font-size:var(--type-card-copy); line-height:var(--leading-detail-prose); font-weight:400; }
  .detail-overview-body { min-width:0; }
  .detail-overview-toggle { width:max-content; position:relative; margin-top:var(--space-detail-intra); padding:0; border:0; background:transparent; color:var(--accent); font-size:var(--type-meta); line-height:var(--leading-detail-control); font-weight:750; cursor:pointer; }
  .detail-overview-toggle:hover { color:var(--text-primary); }
  /* UI-011: invisible vertical hit-area expansion toward 44px; horizontal
     stays untouched since the button's own text width already exceeds 44px. */
  .detail-overview-toggle::after {
    content:"";
    position:absolute;
    top:calc(-1 * max(0px, (44px - 1.4em) / 2));
    bottom:calc(-1 * max(0px, (44px - 1.4em) / 2));
    left:0;
    right:0;
  }
  .detail-story-row > .detail-overview { width:100%; min-width:0; text-align:justify; text-align-last:left; text-justify:inter-character; overflow-wrap:break-word; }
  .detail-enrichment-text { width:100%; min-width:0; color:var(--text-secondary); font-size:var(--type-field-value); line-height:var(--leading-detail-value); text-align:left; overflow-wrap:break-word; }
  .detail-crew-name { margin-top:var(--space-person-name-gap); color:var(--text-secondary); font-size:var(--type-person-name); line-height:var(--leading-person-name); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .detail-crew-role { color:var(--accent); font-size:var(--type-person-role); line-height:var(--leading-person-role); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .detail-overview, .detail-enrichment, .detail-section-copy, .detail-version-link, .detail-version-title, .detail-similar-link, .detail-similar-title {
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
  }
	  .detail-hero { --detail-poster-col:clamp(7.5rem, 32vw, 8.5rem); display:grid; grid-template-columns:var(--detail-poster-col) minmax(0,1fr); grid-template-areas:"poster title" "season season" "copy copy" "resource resource"; gap:var(--space-scale-px-14) var(--space-scale-px-16); align-items:start; margin-bottom:var(--space-scale-px-18); }
	  .detail-media-stack,
	  .detail-info-stack { display:contents; min-width:0; }
	  .detail-poster-cell { grid-area:poster; min-width:0; align-self:start; }
	  .detail-poster-cell img,
	  .detail-poster-cell .poster-fallback { display:block; width:100%; aspect-ratio:2/3; object-fit:cover; }
	  .detail-title-cell { grid-area:title; min-width:0; align-self:start; padding-top:0!important; display:grid; align-content:start; gap:var(--space-detail-item); }
  .detail-title-cell h1 { margin:0 0 var(--space-detail-intra); }
  .detail-title-cell p,
  .detail-hero-copy p { margin-top:0; }
  .detail-title-main { min-width:0; display:grid; align-content:start; }
	  .detail-title-overview { display:none; }
	  .detail-hero-copy { grid-area:copy; min-width:0; width:100%; justify-self:stretch; display:grid; gap:var(--space-detail-item); }
	  .detail-season-entry { grid-area:season; margin:0; min-width:0; width:var(--detail-poster-col); justify-self:start; align-self:start; }
	  .detail-season-entry .detail-pill { width:100%; justify-content:center; }
	  .detail-resource-card { grid-area:resource; margin:0; padding:var(--space-detail-card-inset); }
  .detail-resource-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,max-content); align-items:start; gap:var(--space-detail-group); margin-bottom:var(--space-detail-item); }
  .detail-resource-head .detail-section-title { line-height:var(--leading-detail-heading); }
  .resource-access-summary { justify-self:end; max-width:min(100%, 54ch); margin:0; color:var(--text-muted); font-size:var(--type-meta); line-height:var(--leading-detail-meta); font-weight:500; overflow-wrap:anywhere; text-align:right; }
  .detail-resource-body { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:var(--space-detail-section); align-items:center; }
  .detail-resource-stack { min-width:0; display:grid; gap:var(--space-detail-intra); font-size:var(--type-card-copy); line-height:var(--leading-detail-value); }
  .detail-resource-stack > * { margin:0; }
  .detail-file-text { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-intra); align-items:baseline; }
  .detail-resource-meta { display:flex; flex-wrap:wrap; gap:var(--space-detail-intra) var(--space-detail-section); }
  .detail-resource-badges { margin-top:var(--space-detail-intra); }
  .magnet-title-link { min-height: var(--size-scale-px-44); display:flex; align-items:center; }
  .detail-pill { min-height: var(--size-scale-px-44); display:inline-flex; align-items:center; }
  .lang-toggle { min-width:var(--size-scale-px-44); height:var(--size-scale-px-44); min-height:var(--size-scale-px-44); padding:0 var(--space-scale-px-10); display:inline-flex; align-items:center; justify-content:center; border-radius:var(--radius-md); background:var(--bg-surface); color:var(--text-secondary); border:1px solid var(--border); font-size:var(--type-meta); line-height:1; font-weight:700; letter-spacing:0; transition:background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease; }
  .deep-page-header-actions { display:flex; align-items:center; gap:var(--space-scale-px-8); }
  .deep-nav-actions { display:flex; align-items:center; gap:var(--space-scale-px-8); }
  .deep-nav-icon { width:var(--size-scale-px-44); min-width:var(--size-scale-px-44); height:var(--size-scale-px-44); display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--border); border-radius:var(--radius-md); background:var(--bg-surface); color:var(--text-secondary); transition:background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease; }
  .deep-nav-icon:hover { background:var(--bg-surface-hover); border-color:var(--visual-border-medium); color:var(--text-primary); }
  .deep-nav-icon:active { transform:translateY(1px); }
  .deep-nav-icon svg { width:var(--size-scale-px-19); height:var(--size-scale-px-19); }
  .deep-nav-vip { color:var(--accent); }
  .magnet-action { min-height:var(--size-scale-px-44); display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; background:var(--accent); color:var(--text-on-accent); text-decoration:none; transition:background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease; }
  .magnet-action:active { transform: translateY(1px); }
  .copy-btn { min-width:var(--size-scale-px-44); min-height:var(--size-scale-px-44); display:inline-flex; align-items:center; justify-content:center; color:var(--text-muted); border:0; background:transparent; transition:background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease; }
  .copy-btn:active { transform: translateY(1px); }
  .locked-resource-panel { width:100%; min-width:var(--size-scale-px-260); display:flex; align-items:center; justify-content:flex-end; }
  .resource-action-buttons { min-width:0; width:auto; display:grid; grid-template-columns:repeat(2,118px); align-items:stretch; justify-content:end; gap:var(--space-scale-px-8); justify-self:end; }
  .resource-action-buttons .magnet-action,
  .resource-action-buttons .copy-btn { width:100%; min-width:0; padding:0 var(--space-scale-px-12); border-radius:var(--radius-sm); font-size:var(--type-control); font-weight:780; white-space:nowrap; gap:var(--space-scale-px-6); text-decoration:none; }
  .resource-action-buttons .magnet-action { border:1px solid transparent; background:var(--accent); color:var(--text-on-accent); }
  .resource-action-buttons .copy-btn { border:1px solid var(--border); background:var(--bg-surface); color:var(--text-primary); }
  /* Keep the detail page's two unlock actions aligned with the homepage hierarchy. */
  .resource-unlock-actions .support-primary,
  .locked-resource-actions .magnet-action { border-color:transparent !important; background:var(--accent) !important; color:var(--text-on-accent) !important; font-weight:900; box-shadow:var(--shadow-accent-control); }
  .resource-unlock-actions .support-secondary,
  .locked-resource-actions .copy-btn { border-color:var(--border) !important; background:var(--bg-surface) !important; color:var(--text-secondary) !important; font-weight:800; }
  .resource-unlock-actions .support-primary:hover:not(:disabled),
  .locked-resource-actions .magnet-action:hover:not(:disabled) { background:var(--visual-accent-bright) !important; }
  .resource-unlock-actions .support-secondary:hover:not(:disabled),
  .locked-resource-actions .copy-btn:hover:not(:disabled) { border-color:var(--accent-dim) !important; color:var(--text-primary) !important; }
  .vip-unlock-link { text-decoration:none; }
  .detail-auth-overlay,
  .detail-confirm-overlay,
  .detail-membership-overlay { position:fixed; inset:0; z-index:var(--layer-dialog); display:flex; align-items:center; justify-content:center; padding:var(--space-scale-px-18); background:var(--visual-overlay-page); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
  .detail-auth-overlay,
  .detail-confirm-overlay,
  .detail-membership-overlay { padding:var(--space-dialog-pad); background:var(--visual-overlay-modal); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); }
  .detail-auth-panel,
  .detail-confirm-panel { width:min(var(--size-scale-px-432), calc(100vw - var(--space-dialog-pad) - var(--space-dialog-pad))); max-height:min(var(--size-scale-px-620), calc(100vh - var(--space-dialog-pad) - var(--space-dialog-pad))); overflow:auto; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--visual-dialog-surface-soft); box-shadow:var(--shadow-dialog); }
  .detail-auth-head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-dialog-gap); padding:var(--space-dialog-pad); }
  .detail-auth-heading { min-width:0; display:flex; align-items:center; gap:var(--space-dialog-gap); }
  .detail-auth-logo { width:var(--size-dialog-logo); height:var(--size-dialog-logo); border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center; background:var(--bg-surface); border:1px solid var(--visual-dialog-brand-border); color:var(--accent); font-size:var(--type-section); font-weight:900; letter-spacing:0; flex-shrink:0; }
  .detail-auth-title { color:var(--text-primary); font-size:var(--type-dialog-title); font-weight:850; line-height:var(--leading-title); }
  .detail-auth-sub { margin-top:var(--space-dialog-gap); color:var(--text-muted); font-size:var(--type-dialog-copy); line-height:var(--leading-copy); }
  .detail-auth-close { width:var(--size-dialog-control); height:var(--size-dialog-control); border-radius:var(--radius-sm); color:var(--text-muted); background:var(--bg-surface); border:1px solid var(--border); font-size:var(--type-dialog-title); line-height:1; }
  .detail-auth-body,
  .detail-confirm-body { padding:0 var(--space-dialog-pad) var(--space-dialog-pad); display:grid; gap:var(--space-dialog-gap); }
  .detail-auth-provider-list { display:grid; grid-template-columns:1fr; gap:var(--space-scale-px-8); }
  .detail-auth-provider { min-height:var(--size-dialog-control); width:100%; border-radius:var(--radius-md); border:1px solid var(--border); background:var(--bg-surface); color:var(--text-primary); font-size:var(--type-dialog-copy); font-weight:800; display:flex; align-items:center; justify-content:center; gap:var(--space-dialog-gap); }
  .detail-auth-provider:disabled,
  .detail-auth-primary:disabled { opacity:var(--opacity-disabled); cursor:not-allowed; }
  .detail-auth-provider-mark { width:var(--size-scale-px-20); height:var(--size-scale-px-20); border-radius:var(--radius-xs); display:flex; align-items:center; justify-content:center; color:var(--accent); background:var(--visual-control-wash); font-size:var(--type-section); font-weight:850; flex-shrink:0; }
  .detail-auth-provider-apple .detail-auth-provider-mark { color:var(--text-primary); font-size:var(--type-value); }
  .detail-auth-divider { display:flex; align-items:center; gap:var(--space-scale-px-10); color:var(--text-muted); font-size:var(--type-kicker); line-height:1; margin:var(--space-scale-px-2) 0 0; }
  .detail-auth-divider::before,
  .detail-auth-divider::after { content:""; flex:1; height:var(--size-scale-px-1); background:var(--border); }
  .detail-auth-form,
  .detail-auth-field-stack { display:grid; gap:var(--space-scale-px-8); }
  .detail-auth-mode-switch { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--space-scale-px-3); padding:var(--space-scale-px-3); border:1px solid var(--border); border-radius:var(--radius-sm); background:var(--bg-surface); }
  .detail-auth-mode-option { min-height:var(--size-dialog-control); border-radius:var(--radius-xs); border:0; background:transparent; color:var(--text-muted); font-size:var(--type-control); font-weight:800; }
  .detail-auth-mode-option.is-active { background:var(--bg-header); color:var(--text-primary); box-shadow:var(--shadow-border-ring); }
  .detail-auth-input { min-height:var(--size-dialog-control); min-width:0; border-radius:var(--radius-sm); border:1px solid var(--border); background:var(--bg-surface); color:var(--text-primary); padding:0 var(--space-dialog-pad); outline:none; font-size:var(--type-dialog-copy); }
  .detail-auth-input:focus { border-color:var(--visual-input-focus-border); box-shadow:var(--shadow-input-focus); }
  .detail-auth-reset-context { display:grid; gap:var(--space-scale-px-3); padding:var(--space-scale-px-10) var(--space-scale-px-12); border:1px solid var(--border); border-radius:var(--radius-sm); background:var(--bg-surface); }
  .detail-auth-reset-kicker { color:var(--text-muted); font-size:var(--type-kicker); font-weight:750; letter-spacing:0.08em; text-transform:uppercase; }
  .detail-auth-reset-email { color:var(--text-primary); font-size:var(--type-dialog-copy); line-height:var(--leading-meta); overflow-wrap:anywhere; }
  .detail-auth-primary,
  .detail-auth-secondary { min-height:var(--size-dialog-control); border-radius:var(--radius-sm); padding:0 var(--space-dialog-pad); font-size:var(--type-control); font-weight:800; }
  .detail-auth-primary { border:1px solid var(--accent); background:var(--accent); color:var(--text-on-accent); }
  .detail-auth-secondary { border:1px solid var(--border); background:var(--bg-surface); color:var(--text-primary); }
  .detail-auth-note,
  .detail-confirm-copy { margin:0; color:var(--text-muted); font-size:var(--type-dialog-copy); line-height:var(--leading-copy); }
  .detail-confirm-panel { width:min(var(--size-scale-px-432), calc(100vw - var(--size-scale-px-32))); max-height:min(var(--size-scale-px-620), calc(100vh - var(--size-scale-px-48))); }
  .detail-confirm-title { margin:0; color:var(--text-primary); font-size:var(--type-dialog-title); line-height:var(--leading-title); font-weight:850; }
  .detail-confirm-meta { margin:0; color:var(--text-secondary); font-size:var(--type-dialog-meta); line-height:var(--leading-meta); }
  .detail-confirm-actions { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-dialog-gap); }
  .detail-membership-panel { width:min(var(--size-scale-px-432), calc(100vw - var(--size-scale-px-32))); max-height:min(var(--size-scale-px-620), calc(100vh - var(--size-scale-px-48))); overflow:auto; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--visual-dialog-surface); box-shadow:var(--shadow-dialog); }
  .detail-membership-body { padding:0 var(--space-scale-px-16) var(--space-scale-px-16); display:grid; gap:var(--space-scale-px-10); }
  .detail-membership-list { display:grid; gap:var(--space-scale-px-8); }
  .detail-membership-card { display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:var(--space-scale-px-10); align-items:center; border:1px solid var(--border); border-radius:var(--radius-md); padding:var(--space-scale-px-11); background:var(--bg-surface); }
  .detail-membership-card.is-selected { border-color:var(--accent); background:var(--visual-selected-surface); box-shadow:var(--shadow-selected-inset); }
  .detail-membership-name { color:var(--text-primary); font-size:var(--type-section); line-height:1.25; font-weight:850; overflow-wrap:anywhere; }
  .detail-membership-meta { margin-top:var(--space-scale-px-3); color:var(--text-muted); font-size:var(--type-meta); line-height:1.4; }
  .detail-membership-benefits { margin:var(--space-scale-px-6) 0 0; padding:0; list-style:none; display:grid; gap:var(--space-scale-px-3); color:var(--text-muted); font-size:var(--type-meta); line-height:1.35; }
  .detail-membership-benefits li:before { content:"•"; color:var(--accent); margin-right:var(--space-scale-px-5); }
  .detail-membership-price { color:var(--accent); font-size:var(--type-control); line-height:1.3; font-weight:850; white-space:nowrap; }
  .detail-membership-card .detail-auth-primary { min-width:var(--size-scale-px-88); }
  .detail-membership-alt-payment { justify-self:end; border:0; background:transparent; color:var(--text-muted); padding:var(--space-scale-px-2) 0; font-size:var(--type-meta); text-decoration:underline; text-underline-offset:3px; }
  .detail-membership-alt-payment:hover { color:var(--text-primary); }
  .detail-membership-status { margin:0; color:var(--accent); font-size:var(--type-card-copy); line-height:1.5; }
  /* Resource unlock and membership checkout intentionally share the homepage card system. */
  .resource-unlock-overlay .support-head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-dialog-gap); padding:var(--space-dialog-pad); }
  .resource-unlock-overlay .support-heading { min-width:0; display:flex; align-items:center; gap:var(--space-dialog-gap); }
  .resource-unlock-overlay .support-logo { width:var(--size-dialog-logo); height:var(--size-dialog-logo); border-radius:var(--radius-md); display:flex; align-items:center; justify-content:center; background:var(--bg-surface); border:1px solid var(--accent-border-soft); color:var(--accent); font-size:var(--type-section); font-weight:900; letter-spacing:-0.02em; flex-shrink:0; }
  .resource-unlock-overlay .support-title { color:var(--text-primary); font-size:var(--type-dialog-title); font-weight:850; line-height:var(--leading-title); }
  .resource-unlock-overlay .support-close { width:var(--size-dialog-control); height:var(--size-dialog-control); border-radius:var(--radius-sm); color:var(--text-muted); background:var(--bg-surface); border:1px solid var(--border); font-size:var(--type-dialog-title); line-height:1; }
  .resource-unlock-overlay .support-primary,
  .resource-unlock-overlay .support-secondary { min-height:var(--size-dialog-control); border-radius:var(--radius-sm); padding:0 var(--space-dialog-pad); font-size:var(--type-control); font-weight:800; }
  .resource-unlock-overlay .support-primary { border:1px solid var(--accent); background:var(--accent); color:var(--text-on-accent); }
  .resource-unlock-overlay .support-secondary { border:1px solid var(--border); background:var(--bg-surface); color:var(--text-primary); }
  .resource-unlock-overlay .support-primary:disabled,
  .resource-unlock-overlay .support-secondary:disabled { opacity:var(--opacity-disabled); cursor:not-allowed; }
  .resource-unlock-overlay { position:fixed; inset:0; z-index:var(--layer-dialog); display:flex; align-items:center; justify-content:center; padding:var(--space-dialog-pad); background:var(--visual-overlay-modal); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); }
  .resource-unlock-panel { width:min(var(--size-scale-px-432), calc(100vw - var(--space-dialog-pad) - var(--space-dialog-pad))); max-height:min(var(--size-scale-px-760), calc(100vh - var(--space-dialog-pad) - var(--space-dialog-pad))); overflow-x:hidden; overflow-y:auto; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--visual-dialog-surface); box-shadow:var(--shadow-dialog); }
  .resource-unlock-body { padding:0 var(--space-dialog-pad) var(--space-dialog-pad); display:grid; gap:var(--space-dialog-gap); }
  .resource-unlock-card { display:grid; gap:var(--space-dialog-gap); padding:var(--space-dialog-card-pad); border:1px solid var(--accent-border-soft); border-radius:var(--radius-md); background:var(--visual-highlight-panel); }
  .resource-unlock-kicker { color:var(--accent); font-size:var(--type-kicker); line-height:var(--leading-section); font-weight:850; letter-spacing:0.08em; text-transform:uppercase; }
  .resource-unlock-title { color:var(--text-primary); font-size:var(--type-card-title); line-height:var(--leading-meta); font-weight:850; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .resource-unlock-copy, .resource-unlock-meta { margin:0; color:var(--text-muted); font-size:var(--type-dialog-copy); line-height:var(--leading-copy); }
  .resource-unlock-meta { color:var(--text-secondary); }
  .resource-unlock-actions { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-dialog-gap); }
  .resource-membership-list { display:grid; gap:var(--space-dialog-gap); }
  .resource-membership-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:var(--space-dialog-gap); align-items:center; border:1px solid var(--border); border-radius:var(--radius-md); padding:var(--space-dialog-card-pad); background:var(--bg-surface); transition:border-color .16s ease, background-color .16s ease, box-shadow .16s ease; }
  .resource-membership-card.is-selected,
  .resource-membership-card:has(:focus-visible) { border-color:var(--accent); background:var(--visual-selected-surface); box-shadow:var(--shadow-selected-inset); }
  @media (hover:hover) and (pointer:fine) {
    .resource-membership-card:hover { border-color:var(--accent); background:var(--visual-selected-surface); box-shadow:var(--shadow-selected-inset); }
    /* Same take-over rule as the /vip plan cards (2d8b1baf) and home.css's
       mirror of this same card family: the default selection is a
       conversion nudge, not a fixed label -- while the pointer is over a
       sibling card, the default card defers to its plain resting style. */
    .resource-membership-list:has(.resource-membership-card:hover) .resource-membership-card.is-selected:not(:hover) {
      border-color:var(--border);
      background:var(--bg-surface);
      box-shadow:none;
    }
  }
  .resource-membership-name { color:var(--text-primary); font-size:var(--type-card-title); font-weight:850; line-height:var(--leading-section); overflow-wrap:anywhere; }
  .resource-membership-meta { margin-top:var(--space-dialog-gap); color:var(--text-muted); font-size:var(--type-dialog-meta); line-height:var(--leading-meta); }
  .resource-membership-benefits { margin:var(--space-dialog-gap) 0 0; padding:0; list-style:none; display:grid; gap:var(--space-dialog-gap); color:var(--text-muted); font-size:var(--type-dialog-meta); line-height:var(--leading-meta); }
  .resource-membership-benefits li:before { content:"•"; color:var(--accent); margin-right:var(--space-scale-px-5); }
  .resource-membership-price-block { display:grid; gap:var(--space-scale-px-1); margin-top:var(--space-dialog-gap); align-content:end; }
  .resource-membership-original-price { color:var(--text-muted); font-size:var(--type-dialog-meta); line-height:var(--leading-meta); text-decoration:line-through; text-decoration-thickness:1px; white-space:nowrap; }
  .resource-membership-price { color:var(--accent); font-size:var(--type-dialog-price); font-weight:920; line-height:1.05; white-space:nowrap; font-variant-numeric:tabular-nums; }
  .resource-membership-benefits li.is-standout { color:var(--text-primary); font-weight:900; }
  .resource-membership-card .support-primary { min-width:var(--size-dialog-action-min); }
  .resource-membership-alt-payment { justify-self:end; border:0; background:transparent; color:var(--text-muted); padding:var(--space-scale-px-2) 0; font-size:var(--type-dialog-meta); text-decoration:underline; text-underline-offset:3px; }
  .resource-membership-alt-payment:hover { color:var(--text-primary); }
  .copy-btn-content { display:inline-flex; align-items:center; justify-content:center; gap:var(--space-scale-px-6); min-width:0; }
  .series-chip,
  .genre-chip { display:inline-flex; align-items:center; min-height:var(--resource-badge-height); padding:var(--resource-spec-padding-block) var(--resource-spec-padding-inline); border-radius:var(--resource-spec-radius); font-size:var(--type-resource-badge); line-height:var(--resource-spec-line-height); white-space:nowrap; }
  .series-chip { background:var(--visual-series-chip-bg); color:var(--visual-series-chip-text); border:1px solid var(--visual-dialog-brand-border); font-weight:var(--resource-spec-weight); }
  .genre-chip { background:var(--bg-surface); color:var(--text-secondary); border:1px solid var(--border); }
  .detail-row { border-color:var(--border); }
  .detail-label { color:var(--text-muted); }
  .detail-value { color:var(--text-secondary); }
  .media-surface { background:var(--bg-surface); }




  .detail-version-head { display:grid; gap:var(--space-detail-intra); margin-bottom:var(--space-detail-item); }
  .ssr-detail-versions ul { list-style:none; margin:0; padding:0; display:grid; gap:var(--space-detail-item); }
  .detail-version-item { min-width:0; }
  .detail-version-link { --detail-version-source-width:76px; display:grid; grid-template-columns:var(--detail-version-source-width) minmax(0,1fr) max-content; gap:var(--space-detail-item) var(--space-detail-group); align-items:start; min-width:0; padding:var(--space-detail-item) var(--space-detail-group); border:1px solid var(--border); border-radius:var(--radius-md); background:var(--bg-surface); color:inherit; text-decoration:none; box-shadow:var(--shadow-card-hairline); transition:border-color 0.18s ease, background-color 0.18s ease; }
  .detail-version-link-locked { border-color:var(--visual-version-locked-border); box-shadow:var(--shadow-version-locked-rail); background:var(--visual-version-locked-surface); }
  .detail-version-source { width:var(--detail-version-source-width); min-width:0; min-height:var(--size-scale-px-22); display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; padding:0 var(--space-scale-px-7); border:1px solid var(--resource-source-border); border-radius:var(--radius-xs); background:var(--resource-source-bg); color:var(--visual-series-chip-text); font-size:var(--type-kicker); line-height:1; font-weight:850; white-space:nowrap; }
  .detail-version-body { min-width:0; display:grid; gap:var(--space-detail-intra); }
  .detail-version-title { display:block; min-width:0; color:var(--text-primary); font-size:var(--type-card-title); line-height:var(--leading-detail-value); font-weight:650; overflow-wrap:anywhere; }
  .detail-version-tags, .detail-version-metrics { display:flex; flex-wrap:wrap; gap:var(--space-detail-intra); min-width:0; }
  .detail-version-tags span, .detail-version-metrics span { display:inline-flex; align-items:center; min-height:var(--size-scale-px-18); color:var(--text-muted); background:var(--bg-header); border:1px solid var(--border); border-radius:var(--radius-xs); padding:var(--space-scale-px-1) var(--space-scale-px-5); font-size:var(--type-kicker); line-height:var(--leading-detail-control); font-weight:620; white-space:nowrap; }
  .detail-version-metrics { justify-content:flex-end; align-self:start; }
  .detail-version-seeders { color:var(--success)!important; border-color:var(--visual-success-border)!important; background:var(--visual-success-surface)!important; }
  .detail-similar-card { display:grid; gap:var(--space-detail-item); padding:var(--space-detail-card-inset); margin-bottom:var(--space-detail-section); }
  .detail-similar-head { display:flex; align-items:baseline; justify-content:space-between; gap:var(--space-detail-item); min-width:0; }
  .detail-similar-context { flex:0 0 auto; color:var(--text-muted); font-size:var(--type-meta); line-height:var(--leading-detail-meta); font-weight:500; }
  .detail-similar-list { list-style:none; margin:0; padding:0; display:grid; gap:0; }
  .detail-similar-item { min-width:0; }
  .detail-similar-item + .detail-similar-item { border-top:1px solid var(--visual-detail-divider); }
  .detail-similar-link { min-height:var(--size-scale-px-74); display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:var(--space-detail-item); padding:var(--space-detail-item) 0; border:0; border-radius:0; background:transparent; color:inherit; text-decoration:none; }
  .detail-similar-poster { width:var(--size-scale-px-48); aspect-ratio:2/3; display:block; object-fit:cover; border-radius:var(--radius-sm); background:var(--bg-surface); border:1px solid var(--border); }
  .detail-similar-poster-fallback { display:inline-flex; align-items:center; justify-content:center; color:var(--text-muted); font-size:var(--type-meta); line-height:1; font-weight:800; }
  .detail-similar-body { min-width:0; display:grid; gap:var(--space-detail-intra); }
  .detail-similar-title { color:var(--text-primary); font-size:var(--type-card-title); line-height:var(--leading-detail-value); font-weight:650; overflow-wrap:anywhere; }
  .detail-similar-original { color:var(--text-muted); font-size:var(--type-meta); line-height:var(--leading-detail-meta); font-weight:400; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .detail-similar-meta { color:var(--text-muted); font-size:var(--type-meta); line-height:var(--leading-detail-meta); font-weight:400; }
  .detail-similar-tags { display:flex; flex-wrap:wrap; gap:var(--space-detail-intra); min-width:0; }
  .detail-similar-tags span { display:inline-flex; align-items:center; min-height:var(--size-scale-px-17); color:var(--text-secondary); background:var(--bg-surface); border:1px solid var(--border); border-radius:var(--radius-xs); padding:var(--space-scale-px-1) var(--space-scale-px-5); font-size:var(--type-label); line-height:var(--leading-detail-control); font-weight:620; white-space:nowrap; }
  .detail-similar-arrow { width:var(--size-scale-px-28); height:var(--size-scale-px-28); display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--border); border-radius:var(--radius-sm); color:var(--text-muted); background:var(--bg-header); transition:background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease; }
  .detail-similar-arrow svg { width:var(--size-scale-px-15); height:var(--size-scale-px-15); display:block; }
  .media-info-panel { overflow:hidden; margin-bottom:var(--space-detail-section)!important; }
  .media-info-toggle { list-style:none; min-height:var(--size-scale-px-50); display:flex; align-items:center; justify-content:space-between; gap:var(--space-detail-group); padding:var(--space-detail-group) var(--space-detail-card-inset); cursor:pointer; }
  .media-info-toggle::-webkit-details-marker { display:none; }
  .media-info-toggle-copy { min-width:0; display:grid; gap:var(--space-detail-intra); }
  .media-info-title { color:var(--text-secondary); font-size:var(--type-section); line-height:var(--leading-detail-heading); font-weight:500; letter-spacing:0; }
  .media-info-compact { min-width:0; color:var(--text-muted); font-size:var(--type-card-copy); line-height:var(--leading-detail-meta); font-weight:400; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .media-info-affordance { flex:0 0 auto; min-width:var(--size-scale-px-32); min-height:var(--size-scale-px-32); display:inline-flex; align-items:center; justify-content:center; gap:var(--space-scale-px-7); color:var(--text-muted); font-size:var(--type-meta); line-height:1; font-weight:500; align-self:center; }
  .media-info-expand-icon { width:var(--size-scale-px-20); height:var(--size-scale-px-20); display:block; color:var(--text-muted); transform-origin:center; transform-box:fill-box; transition:transform 0.18s ease, color 0.18s ease; }
  .media-info-panel[open] .media-info-toggle { border-bottom:1px solid var(--border); }
  .media-info-panel[open] .media-info-expand-icon { transform:rotate(180deg); }
  .media-info-body { display:grid; gap:var(--space-detail-group); padding:0 var(--space-detail-card-inset) var(--space-detail-card-inset); }
  .media-info-overview { margin:0; padding-top:var(--space-detail-item); display:grid; }
  .media-info-group { display:grid; gap:var(--space-detail-intra); }
  .media-info-group h3 { margin:0; color:var(--text-muted); font-size:var(--type-card-copy); line-height:var(--leading-detail-meta); font-weight:500; letter-spacing:0; }
  .media-info-track { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-group); padding:var(--space-detail-item) 0; border-top:1px solid var(--visual-detail-divider); }
  .media-info-track-label { color:var(--text-secondary); font-size:var(--type-control); line-height:var(--leading-detail-value); font-weight:500; overflow-wrap:anywhere; }
  .media-info-track-body { min-width:0; margin:0; display:grid; }
  .media-info-row { min-width:0; display:grid; grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-item); padding:var(--space-detail-row-block) 0; border-top:1px solid var(--visual-detail-divider); }
  .media-info-row:first-child { border-top:0; }
  .media-info-row dt { margin:0; color:var(--text-muted); font-size:var(--type-card-copy); line-height:var(--leading-detail-value); font-weight:400; letter-spacing:0; }
  .media-info-row dd { margin:0; color:var(--text-secondary); font-size:var(--type-control); line-height:var(--leading-detail-value); font-weight:500; text-align:right; overflow-wrap:anywhere; }
  .detail-facts-card { padding:var(--space-detail-card-inset); margin-bottom:var(--space-detail-section); }
  .detail-facts-card .detail-section-title { margin-bottom:var(--space-detail-item); }
  .detail-facts-table { width:100%; border-collapse:collapse; font-size:var(--type-card-copy); }
  .detail-facts-table .detail-row { border-bottom:1px solid var(--visual-detail-divider); }
  .detail-facts-table .detail-row:last-child { border-bottom:0; }
  .detail-facts-table .detail-label,
  .detail-facts-table .detail-value { padding-block:var(--space-detail-row-block); line-height:var(--leading-detail-value); vertical-align:top; }
  .detail-facts-table .detail-label { padding-inline-end:var(--space-detail-group); white-space:nowrap; }
  .detail-facts-table .detail-value { overflow-wrap:anywhere; }
  .detail-crew-section,
  .detail-stills-section { display:grid; gap:var(--space-detail-item); margin-bottom:var(--space-detail-section); }
  .detail-crew-rail { display:flex; gap:var(--space-detail-item); overflow-x:auto; padding-bottom:var(--space-detail-intra); }
  .detail-crew-person { flex:0 0 auto; width:var(--size-scale-px-64); text-align:center; }
  .detail-crew-avatar { display:block; width:var(--size-scale-px-56); height:var(--size-scale-px-56); margin-inline:auto; border-radius:var(--radius-pill); object-fit:cover; }
  .detail-crew-name { margin-top:var(--space-detail-intra); }
  .detail-crew-role { margin-top:var(--space-detail-intra); }
  .detail-stills-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-detail-item); }
  .detail-still { display:block; width:100%; aspect-ratio:16/9; border-radius:var(--radius-md); object-fit:cover; }
  @media (min-width:640px) {
    .detail-stills-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  }
  @media (hover: hover) and (pointer: fine) {
	    .surface-card:hover { border-color:var(--visual-border-soft-medium); }
	    .back-link:hover, .lang-toggle:hover { background:var(--bg-surface-hover); color:var(--text-primary); border-color:var(--visual-border-medium); }
	    .copy-btn:hover { background:var(--bg-surface-hover); color:var(--text-primary); }
    .magnet-action:hover { background:var(--accent-hover); }
    .unlock-btn:hover { border-color:var(--accent-hover); background:var(--accent-hover); color:var(--text-on-accent); }
    .resource-action-buttons .copy-btn:hover { border-color:var(--border); background:var(--bg-surface-hover); color:var(--text-primary); }
    .detail-version-link:hover { border-color:var(--visual-dialog-brand-border); background:var(--bg-surface-hover); }
    .detail-similar-link:hover { background:var(--bg-surface-hover); }
    .detail-similar-link:hover .detail-similar-title { color:var(--accent); }
    .detail-similar-link:hover .detail-similar-arrow { color:var(--text-primary); border-color:var(--border); background:var(--bg-surface); }
    .media-info-toggle:hover { background:var(--bg-surface-hover); }
	  }
	  @media (min-width: 640px) {
	    .detail-hero { --detail-poster-col:11rem; grid-template-columns:var(--detail-poster-col) minmax(0,1fr); grid-template-areas:"poster title" "season season" "copy copy" "resource resource"; gap:var(--space-scale-px-14) var(--space-scale-px-28); }
	  }
	  @media (max-width: 759px) {
	    .detail-hero { grid-template-areas:"poster title" "copy copy" "resource resource"; }
	    .detail-media-stack { grid-area:poster; display:grid; gap:var(--space-scale-px-14); align-content:start; min-width:0; }
	    .detail-poster-cell,
	    .detail-season-entry { grid-area:auto; }
	    .detail-season-entry { width:100%; }
	    .detail-season-entry .detail-pill { gap:var(--space-scale-px-6); padding-left:var(--space-scale-px-8); padding-right:var(--space-scale-px-8); font-size:var(--type-control); white-space:nowrap; }
	    .detail-season-entry .detail-pill svg { width:var(--size-scale-px-14); height:var(--size-scale-px-14); flex:0 0 auto; }
	    .detail-title-cell { align-self:stretch; }
    .detail-title-main { height:100%; }
    .detail-title-overview { display:grid; gap:var(--space-detail-intra); margin-top:var(--space-detail-item); padding-top:var(--space-detail-item); border-top:1px solid var(--visual-detail-divider); }
    .detail-title-overview-label { color:var(--text-muted); font-size:var(--type-section); line-height:var(--leading-detail-heading); font-weight:var(--weight-section); white-space:nowrap; }
    .detail-title-overview-copy { margin:0; color:var(--text-secondary); font-size:var(--type-card-copy); line-height:var(--leading-detail-prose); font-weight:400; text-align:left; overflow-wrap:break-word; }
    .detail-title-overview-copy:not(.is-expanded) { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
    .detail-hero-copy .detail-story-row { display:none; }
  }
	  @media (min-width: 760px) {
	    .detail-shell { padding-top:var(--space-scale-px-22); }
    .detail-hero { display:grid; grid-template-columns:clamp(168px, 18vw, 198px) minmax(0,1fr); grid-template-areas:"media info" "resource resource"; gap:var(--space-scale-px-18) var(--space-scale-px-32); align-items:start; margin-bottom:var(--space-scale-px-22); }
	    .detail-media-stack { grid-area:media; display:grid; gap:var(--space-scale-px-14); align-content:start; min-width:0; }
	    .detail-info-stack { grid-area:info; display:grid; gap:var(--space-scale-px-18); align-content:start; justify-self:stretch; width:100%; max-width:none; min-width:0; }
	    .detail-poster-cell,
	    .detail-title-cell,
	    .detail-hero-copy,
	    .detail-season-entry { grid-area:auto; }
    .detail-hero h1 { max-width:100%; font-size:var(--type-page-title); line-height:var(--leading-title); font-weight:var(--weight-page-title); margin-bottom:var(--space-scale-px-8); }
    .detail-hero-copy { width:100%; justify-self:stretch; display:grid; gap:var(--space-detail-item); }
	    .detail-overview { margin:0!important; }
	    .detail-overview:not(.is-expanded) { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; }
	    .detail-enrichment { color:var(--text-secondary); }
	    .detail-season-entry { align-self:start; justify-self:start; width:100%; }
	    .detail-season-entry .detail-pill { width:100%; justify-content:center; }
	    .detail-resource-card { margin-top:var(--space-scale-px-4); }
  }
	  @media (min-width: 1180px) {
	    .detail-shell { padding-top:var(--space-scale-px-22); }
	  }
  @media (max-width: 640px) {
    .detail-resource-body { grid-template-columns:1fr; }
    .detail-measure, .detail-file-text, .detail-overview, .detail-story, .detail-enrichment { max-width:none; }
    .detail-section-title { font-size:var(--type-section); line-height:var(--leading-detail-heading); }
    .detail-section-copy { font-size:var(--type-card-copy); line-height:var(--leading-copy); }
    .detail-overview { font-size:var(--type-card-copy)!important; line-height:var(--leading-detail-prose); }
    .detail-story-row { grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-group); font-size:var(--type-card-copy)!important; line-height:var(--leading-detail-prose); padding-bottom:var(--space-detail-group); }
    .detail-enrichment { grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-item); font-size:var(--type-card-copy)!important; line-height:var(--leading-detail-value); padding:var(--space-detail-row-block) 0; }
    .detail-story-label, .detail-enrichment-label { font-size:var(--type-field-label); line-height:var(--leading-detail-meta); }
    .detail-resource-head { grid-template-columns:minmax(0,1fr) minmax(0,max-content); gap:var(--space-detail-item); }
    .resource-access-summary { max-width:none; font-size:var(--type-meta); overflow-wrap:normal; }
    .detail-version-head { margin-bottom:var(--space-scale-px-8); }
    .ssr-detail-versions ul { gap:var(--space-scale-px-7); }
    .detail-version-link { --detail-version-source-width:64px; grid-template-columns:var(--detail-version-source-width) minmax(0,1fr); gap:var(--space-scale-px-7) var(--space-scale-px-9); padding:var(--space-scale-px-9) var(--space-scale-px-10); }
    .detail-version-source { min-width:var(--size-scale-px-38); min-height:var(--size-scale-px-21); padding:0 var(--space-scale-px-6); font-size:var(--type-label); }
    .detail-version-title { font-size:var(--type-compact-title); line-height:1.38; }
    .detail-version-tags span, .detail-version-metrics span { min-height:var(--size-scale-px-17); font-size:var(--type-label); padding:var(--space-scale-px-1) var(--space-scale-px-5); }
    .detail-version-metrics { grid-column:2; justify-content:flex-start; }
    .detail-similar-card { gap:var(--space-detail-item); }
    .detail-similar-context { font-size:var(--type-compact-meta); }
    .detail-similar-list { gap:0; }
    .detail-similar-link { min-height:var(--size-scale-px-70); grid-template-columns:44px minmax(0,1fr) auto; gap:var(--space-detail-item); padding:var(--space-detail-item) 0; }
    .detail-similar-poster { width:var(--size-scale-px-44); border-radius:var(--radius-sm); }
    .detail-similar-title { font-size:var(--type-compact-title); line-height:var(--leading-detail-value); }
    .detail-similar-original { font-size:var(--type-compact-meta); line-height:var(--leading-detail-meta); }
    .detail-similar-meta { font-size:var(--type-compact-meta); line-height:var(--leading-detail-meta); }
    .detail-similar-tags span { min-height:var(--size-scale-px-16); font-size:var(--type-label); padding:var(--space-scale-px-1) var(--space-scale-px-4); }
    .detail-similar-arrow { width:var(--size-scale-px-26); height:var(--size-scale-px-26); }
    .media-info-toggle { min-height:var(--size-scale-px-48); align-items:center; padding:var(--space-detail-group) var(--space-detail-card-inset); gap:var(--space-detail-item); }
    .media-info-affordance span:first-child { display:none; }
    .media-info-affordance { min-width:var(--size-scale-px-28); min-height:var(--size-scale-px-28); }
    .media-info-body { gap:var(--space-detail-group); padding:0 var(--space-detail-card-inset) var(--space-detail-card-inset); }
    .media-info-track { grid-template-columns:1fr; gap:var(--space-detail-intra); padding:var(--space-detail-item) 0; }
    .media-info-row { grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-item); padding:var(--space-detail-row-block) 0; }
    .locked-resource-panel { min-width:0; justify-content:flex-start; padding-top:var(--space-detail-item); margin-top:var(--space-detail-intra); border-top:1px solid var(--visual-detail-divider); }
    .resource-action-buttons { width:auto; justify-self:start; }
    .resource-action-buttons .magnet-action,
    .resource-action-buttons .copy-btn { font-size:var(--type-section); }
  }
  @media (max-width: 640px) {
    .resource-card--nested { gap:var(--space-mobile-gap); padding:var(--space-mobile-card-pad); }
    .resource-card--nested .resource-card__main { gap:var(--space-scale-px-2); }
    .resource-card--nested .resource-card__title { position:relative; display:block; font-size:var(--type-compact-title); line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    /* UI-011: modest invisible vertical hit-area growth, capped small so
       stacked resource-card rows never overlap each other's tap target. */
    .resource-card--nested .resource-card__title::after { content:""; position:absolute; top:-3px; bottom:-3px; left:0; right:0; }
    .resource-card--nested .resource-card__release { font-size:var(--type-compact-meta); line-height:1.2; }
    .resource-card--nested .resource-badge-row { min-height:var(--size-scale-px-13); max-height:var(--size-scale-px-13); flex-wrap:nowrap; gap:var(--space-scale-px-2); overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
    .resource-card--nested .resource-badge-row::-webkit-scrollbar { display:none; }
    .resource-card--nested .resource-badge { min-height:var(--size-scale-px-13); padding:0 var(--space-scale-px-3); font-size:var(--type-compact-label); line-height:1.15; }
    .resource-card--nested .resource-card__facts { flex-wrap:nowrap; gap:var(--space-scale-px-3); overflow-x:auto; scrollbar-width:none; }
    .resource-card--nested .resource-card__facts::-webkit-scrollbar { display:none; }
    .resource-card--nested .resource-fact { --resource-fact-font-size:var(--type-compact-label); height:var(--size-scale-px-15); padding:0 var(--space-scale-px-3); border-radius:var(--radius-ui-xs); }
    :root {
      --mobile-density-control:var(--size-mobile-control);
      --mobile-density-title:var(--type-page-title);
      --mobile-density-section:var(--type-section);
      --mobile-density-body:var(--type-card-copy);
      --mobile-density-meta:var(--type-meta);
      --mobile-density-label:var(--type-label);
      --mobile-density-gap:var(--space-mobile-gap);
      --mobile-density-card-pad:var(--space-mobile-card-pad);
    }
    body { font-size:var(--mobile-density-body); }
    .detail-shell { padding-top:var(--space-scale-px-7); }
    .deep-page-header { margin-bottom:var(--space-scale-px-8)!important; padding-block:var(--space-scale-px-5)!important; }
    .detail-hero { --detail-poster-col:var(--size-mobile-poster); gap:var(--space-detail-item) var(--space-detail-group); margin-bottom:var(--space-detail-section); }
    .detail-title-cell { gap:var(--mobile-density-gap); }
    .detail-title-cell h1 { margin-bottom:var(--space-scale-px-2); }
    .detail-hero h1 { font-size:var(--mobile-density-title); line-height:var(--leading-title); font-weight:var(--weight-page-title); }
    .detail-title-main > p { margin-bottom:var(--space-detail-intra)!important; font-size:var(--type-card-copy)!important; line-height:var(--leading-detail-meta)!important; }
    .detail-title-main > .flex { gap:var(--space-detail-intra)!important; margin-bottom:var(--space-detail-intra)!important; font-size:var(--type-meta)!important; line-height:var(--leading-detail-meta); }
    .detail-title-main .genre-chip,
    .detail-title-main .series-chip { padding:var(--space-scale-px-1) var(--space-scale-px-4)!important; font-size:var(--type-label)!important; line-height:var(--leading-detail-control); }
    .detail-title-overview { gap:var(--space-detail-intra); margin-top:var(--space-detail-item); padding-top:var(--space-detail-item); }
    .detail-title-overview-label { font-size:var(--mobile-density-section); line-height:var(--leading-detail-heading); }
    .detail-title-overview-copy { font-size:var(--mobile-density-body); line-height:var(--leading-detail-prose); }
    .detail-hero-copy { gap:var(--space-detail-item); }
    .detail-section-title { font-size:var(--mobile-density-section); }
    .detail-section-copy { font-size:var(--mobile-density-body); line-height:var(--leading-detail-value); }
    .detail-overview { font-size:var(--mobile-density-body)!important; line-height:var(--leading-detail-prose); }
    .detail-story-row { grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-group); padding:0 0 var(--space-detail-group); font-size:var(--mobile-density-body)!important; line-height:var(--leading-detail-prose); }
    .detail-enrichment { grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-item); padding:var(--space-detail-row-block) 0; font-size:var(--mobile-density-body)!important; line-height:var(--leading-detail-value); }
    .detail-story-label,
    .detail-enrichment-label { font-size:var(--type-field-label); line-height:var(--leading-detail-meta); }
    .detail-enrichment-text { white-space:normal; overflow:visible; }
    .detail-resource-head { gap:var(--space-detail-item); margin-bottom:var(--space-detail-item); }
    .detail-resource-card { padding:var(--space-detail-card-inset); border-radius:var(--radius-mobile-md); }
    .resource-access-summary { font-size:var(--type-compact-meta); }
    .detail-resource-body { gap:var(--space-detail-group); }
    .detail-resource-stack { gap:var(--space-detail-intra); }
    .detail-file-text { grid-template-columns:max-content minmax(0,1fr); gap:var(--space-detail-intra); }
    .detail-file-text { font-size:var(--mobile-density-body); line-height:var(--leading-detail-value); }
    .magnet-title-link { min-height:0; display:block; white-space:normal; overflow:visible; overflow-wrap:anywhere; word-break:break-word; }
    .resource-action-buttons { grid-template-columns:repeat(2,minmax(0,88px)); gap:var(--space-detail-intra); }
    .locked-resource-panel { padding-top:var(--space-detail-item); margin-top:var(--space-detail-intra); }
    .detail-version-link { --detail-version-source-width:44px; gap:var(--space-detail-intra) var(--space-detail-item); padding:var(--space-detail-item); }
    .detail-version-source { min-height:var(--size-scale-px-14); padding-inline:var(--space-scale-px-3); font-size:var(--mobile-density-label); }
    .detail-version-body { gap:var(--space-detail-intra); }
    .detail-version-title { font-size:var(--type-compact-title); line-height:var(--leading-detail-value); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .detail-version-tags,
    .detail-version-metrics { gap:var(--space-detail-intra); }
    .detail-version-tags span,
    .detail-version-metrics span { min-height:var(--size-scale-px-13); padding:0 var(--space-scale-px-3); font-size:var(--type-compact-label); }
    .detail-similar-card { gap:var(--space-detail-item); padding:var(--space-detail-card-inset); margin-bottom:var(--space-detail-section); }
    .detail-similar-list { gap:0; }
    .detail-similar-link { min-height:var(--size-scale-px-47); grid-template-columns:var(--size-mobile-thumbnail) minmax(0,1fr) auto; gap:var(--space-detail-item); padding:var(--space-detail-item) 0; }
    .detail-similar-poster { width:var(--size-mobile-thumbnail); }
    .detail-similar-body { gap:var(--space-detail-intra); }
    .detail-similar-title { font-size:var(--type-compact-title); line-height:var(--leading-detail-value); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .detail-similar-context,
    .detail-similar-original,
    .detail-similar-meta { font-size:var(--type-compact-meta); line-height:var(--leading-detail-meta); }
    .detail-similar-tags { flex-wrap:wrap; gap:var(--space-scale-px-2); overflow:visible; }
    .detail-similar-tags span { min-height:var(--size-scale-px-11); padding:0 var(--space-scale-px-3); font-size:var(--type-compact-label); }
    .detail-similar-arrow { width:var(--size-scale-px-18); height:var(--size-scale-px-18); }
    .detail-similar-arrow svg { width:var(--size-scale-px-10); height:var(--size-scale-px-10); }
    .media-info-toggle { min-height:var(--size-scale-px-32); padding:var(--space-detail-item) var(--space-detail-card-inset); gap:var(--space-detail-item); }
    .media-info-title { font-size:var(--type-card-copy); }
    .media-info-compact { font-size:var(--mobile-density-meta); }
    .media-info-affordance { min-width:var(--size-scale-px-21); min-height:var(--size-scale-px-21); font-size:var(--mobile-density-meta); }
    .media-info-expand-icon { width:var(--size-scale-px-14); height:var(--size-scale-px-14); }
    .media-info-body { gap:var(--space-detail-group); padding:0 var(--space-detail-card-inset) var(--space-detail-card-inset); }
    .media-info-group { gap:var(--space-detail-intra); }
    .media-info-group h3 { font-size:var(--mobile-density-meta); }
    .media-info-track { gap:var(--space-detail-intra); padding:var(--space-detail-item) 0; }
    .media-info-track-label { font-size:var(--type-compact-meta); }
    .media-info-row { grid-template-columns:minmax(max-content,0.34fr) minmax(0,1fr); gap:var(--space-detail-item); padding:var(--space-detail-row-block) 0; }
    .media-info-row dt { font-size:var(--mobile-density-meta); }
    .media-info-row dd { font-size:var(--type-compact-meta); }
    .ssr-detail-versions ul { gap:var(--space-scale-px-4); }
    .ssr-detail-versions .resource-card--compact { --resource-compact-source-width:48px; grid-template-columns:var(--resource-compact-source-width) minmax(0,1fr); gap:var(--space-scale-px-3) var(--space-scale-px-6); padding:var(--space-scale-px-5) var(--space-scale-px-6); }
    .ssr-detail-versions .resource-card--compact .resource-card__source { min-height:var(--size-scale-px-16); padding-inline:var(--space-scale-px-3); font-size:var(--type-compact-label); }
    .ssr-detail-versions .resource-card--compact .resource-card__main { gap:var(--space-scale-px-2); }
    .ssr-detail-versions .resource-card--compact .resource-card__title { position:relative; font-size:var(--type-compact-title); line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .ssr-detail-versions .resource-card--compact .resource-card__title::after { content:""; position:absolute; top:-3px; bottom:-3px; left:0; right:0; }
    .ssr-detail-versions .resource-card--compact .resource-badge-row { min-height:var(--size-scale-px-13); max-height:var(--size-scale-px-13); flex-wrap:nowrap; gap:var(--space-scale-px-2); overflow-x:auto; overflow-y:hidden; scrollbar-width:none; }
    .ssr-detail-versions .resource-card--compact .resource-badge-row::-webkit-scrollbar { display:none; }
    .ssr-detail-versions .resource-card--compact .resource-badge-row .resource-badge:first-child { display:none; }
    .ssr-detail-versions .resource-card--compact .resource-badge,
    .ssr-detail-versions .resource-card--compact .resource-fact { --resource-fact-font-size:var(--type-compact-label); height:var(--size-scale-px-13); min-height:var(--size-scale-px-13); padding-inline:var(--space-scale-px-3); font-size:var(--type-compact-label); }
    .ssr-detail-versions .resource-card--compact .resource-card__facts { grid-column:2; justify-content:flex-start; flex-wrap:nowrap; gap:var(--space-scale-px-3); }
    .detail-version-head { margin-bottom:var(--space-scale-px-5); }
    .detail-facts-card { padding:var(--space-detail-card-inset); margin-bottom:var(--space-detail-section); }
    .detail-facts-card .detail-section-title { margin-bottom:var(--space-detail-item); }
    .detail-facts-card td { padding-block:var(--space-detail-row-block); font-size:var(--type-compact-meta); line-height:var(--leading-detail-value); }
    .detail-crew-section,
    .detail-stills-section { gap:var(--space-detail-item); margin-bottom:var(--space-detail-section); }
    .detail-crew-rail { gap:var(--space-detail-item); padding-bottom:var(--space-detail-intra); }
    .detail-crew-person { width:var(--size-scale-px-46); }
    .detail-crew-avatar { width:var(--size-mobile-avatar); height:var(--size-mobile-avatar); }
    .detail-stills-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-detail-item); }
    .back-link,
    .detail-pill,
    .lang-toggle,
    .deep-nav-icon,
    .magnet-action,
    .copy-btn { min-height:var(--mobile-density-control); }
    .lang-toggle,
    .deep-nav-icon,
    .copy-btn { min-width:var(--mobile-density-control); width:var(--mobile-density-control); height:var(--mobile-density-control); }
    .back-link { padding-inline:var(--space-scale-px-8); font-size:var(--type-control); }
    .back-link svg { width:var(--size-mobile-icon); height:var(--size-mobile-icon); }
    .lang-toggle,
    .deep-nav-icon { font-size:var(--type-control); }
    .deep-page-header-actions,
    .deep-nav-actions { gap:var(--space-scale-px-4); }
    .deep-nav-icon svg { width:var(--size-mobile-icon); height:var(--size-mobile-icon); }
    .back-link,
    .detail-pill,
    .lang-toggle,
    .deep-nav-icon,
    .magnet-action,
    .copy-btn,
    .detail-version-link,
    .detail-similar-link,
    .media-info-toggle,
    .detail-resource-card { border-radius:var(--radius-mobile-md); }
    .detail-season-entry .detail-pill { min-height:var(--mobile-density-control); font-size:var(--mobile-density-body); }
    .resource-action-buttons .magnet-action,
    .resource-action-buttons .copy-btn { min-height:var(--mobile-density-control); padding-inline:var(--space-scale-px-6); font-size:var(--type-compact-meta); }
    .detail-auth-head { padding:var(--space-scale-px-11) var(--space-scale-px-11) var(--space-scale-px-8); }
    .detail-auth-title { font-size:var(--type-content-title); }
    .detail-auth-sub { font-size:var(--mobile-density-body); }
    .detail-auth-close { width:var(--mobile-density-control); height:var(--mobile-density-control); font-size:var(--type-dialog-title); }
    .detail-auth-body,
    .detail-confirm-body { padding:0 var(--space-scale-px-11) var(--space-scale-px-11); gap:var(--space-scale-px-8); }
    .detail-auth-provider { min-height:var(--mobile-density-control); font-size:var(--mobile-density-body); }
  }
  .icon-btn svg { transition: opacity 0.15s; }
  .icon-btn .check-icon { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: var(--opacity-hidden); pointer-events: none; transition: opacity 0.15s; }
  .icon-btn.copied .original-icon { opacity: var(--opacity-hidden); }
  .icon-btn.copied .check-icon { opacity: var(--opacity-visible); }
  .toast { position: fixed; bottom: 40px; left: 50%; transform: translateX(-50%);
    background: var(--success); color: var(--text-on-accent); padding: var(--space-scale-px-6) var(--space-scale-px-16); border-radius: var(--radius-md);
    font-size: var(--type-control); z-index: var(--layer-toast); opacity: var(--opacity-hidden); transition: opacity 0.3s;
    backdrop-filter: blur(8px); box-shadow: var(--shadow-floating); }
  .toast.show { opacity: var(--opacity-visible); }
  .rec-card::-webkit-scrollbar { display: none; }
  .info-label { color: var(--text-muted); }
  .info-val { color: var(--text-primary); }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
  }
