.sj-page { padding-bottom: 48px; color: var(--text, #f2efe8); }
.sj-page .sg-back { margin-bottom: 22px; }
.sj-title { max-width: 1050px; margin: 16px 0 12px; font-size: clamp(34px, 4.3vw, 74px); line-height: 1.06; letter-spacing: -.045em; font-weight: 750; }
.sj-breadcrumb { color: var(--muted, #a9abb1); font-size: 13px; }
.sj-page > .sg-subtitle { max-width: 780px; font-size: 16px; line-height: 1.65; }
.sj-actions { margin: 28px 0 18px; }
.sj-primary { min-width: 235px; }
.sj-page > .sg-result-status { font-size: 13px; color: var(--muted, #a9abb1); }
.sj-progress-track { display: block; position: relative; width: 100%; height: 5px; overflow: hidden; border-radius: 8px; background: var(--line, #ffffff16); }
.sj-progress-fill { display: block; height: 100%; border-radius: inherit; background: var(--accent, #e31332); box-shadow: 0 0 10px #e3133266; }
.sj-page > .sj-progress-track { max-width: 440px; margin: 12px 0 24px; }
.sj-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin: 25px 0 16px; }
.sj-page .sj-select, .sj-page .sj-film-edition-select { width: auto; max-width: 100%; min-height: 40px; border: 1px solid var(--line, #ffffff16); border-radius: 18px; padding: 9px 16px; color: var(--text, #f2efe8); background: var(--surface, #141518); font-size: 12px; }
.sj-page .sj-select option, .sj-film-edition-select option { color: var(--text, #f2efe8); background: var(--surface, #141518); }
.sj-page .sj-auto-next { min-height: 40px; padding: 9px 16px; border-radius: 18px; border: 1px solid var(--line, #ffffff16); background: transparent; font-size: 12px; color: var(--muted, #a9abb1); box-shadow: none; }
.sj-page .sj-auto-next[aria-pressed='true'] { color: var(--text, #f2efe8); background: #e313321b; border-color: #e3133266; }
.sj-note { max-width: 790px; margin: 14px 0; font-size: 12px; line-height: 1.65; color: var(--muted, #a9abb1); }
.sj-phase { margin-top: 35px; }
.sj-phase h2 { margin: 0 0 20px; font-size: 28px; font-weight: 650; letter-spacing: -.025em; }
.sj-films { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; align-items: start; }
.sj-film { position: relative; min-width: 0; }
.sj-film-art { position: relative; isolation: isolate; overflow: hidden; aspect-ratio: 7/8; border-radius: 9px; background: var(--surface, #141518); }
.sj-page .sj-film-open { position: absolute; inset: 0; display: block; width: 100%; height: 100%; padding: 0; border: 0; border-radius: inherit; background: transparent; box-shadow: none; transform: none; text-align: left; }
.sj-art-fallback { position: absolute; display: grid; place-items: center; inset: 0; padding: 20px; text-align: center; font-size: 20px; font-weight: 600; line-height: 1.3; color: var(--muted, #a9abb1); background: linear-gradient(145deg, var(--surface, #141518), var(--canvas, #090a0c)); }
.sj-film-open .sg-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: none; }
.sj-film-open[data-image='loaded'] .sj-art-fallback { opacity: 0; }
.sj-film-open[data-image='loaded'] .sg-art { opacity: 1; }
.sj-film-open[data-image='loading']::after { content: ''; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 20%, #ffffff08 45%, transparent 70%); background-size: 250% 100%; animation: sj-shimmer 1.7s ease-in-out infinite; }
.sj-film-title { display: block; margin-top: 12px; font-size: 13px; font-weight: 500; line-height: 1.5; }
.sj-film-year, .sj-film-edition { display: block; margin-top: 5px; color: var(--muted, #a9abb1); font-size: 11px; line-height: 1.45; }
.sj-page .sj-film-edition-select { width: 100%; margin-top: 9px; padding: 6px 8px; min-height: 32px; border-radius: 7px; font-size: 10px; }
.sj-page .sj-seen-toggle { position: absolute; z-index: 3; top: 7px; right: 7px; display: grid; place-items: center; width: 30px; height: 30px; min-width: 30px; min-height: 30px; padding: 0; border: 0; border-radius: 50%; background: #090a0ccc; color: #a9abb1; box-shadow: none; transform: none; }
.sj-seen-icon { display: block; width: 19px; height: 19px; background: currentColor; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3Ccircle cx='12' cy='12' r='3' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat; }
.sj-page .sj-seen-toggle[aria-pressed='true'] { color: #fff; background: var(--accent, #e31332); box-shadow: 0 0 12px #e3133240; }
.sj-seen-toggle[aria-pressed='true'] .sj-seen-icon { mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12 4 4L19 6' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.sj-seen-toggle:hover { color: var(--text, #f2efe8); }
.sj-film-art > .sj-progress-track { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; height: 5px; }
.sj-page .sj-film-play { margin-top: 10px; padding: 7px 0; font-size: 12px; color: var(--text, #f2efe8); background: none; border: 0; box-shadow: none; }
.sj-page :is(button, select):focus-visible { outline: 2px solid var(--text, #f2efe8); outline-offset: 4px; }
.sj-library-title { max-width: 1000px; margin: 12px 0 24px; font-size: clamp(30px, 3.1vw, 54px); line-height: 1.1; letter-spacing: -.04em; }
.sj-tabs { display: flex; gap: 10px; margin-bottom: 30px; flex-wrap: wrap; }
.sj-page .sj-tab { padding: 11px 20px; border: 1px solid transparent; border-radius: 24px; color: var(--muted, #a9abb1); background: transparent; box-shadow: none; font-size: 13px; }
.sj-page .sj-tab[aria-pressed='true'] { color: var(--text, #f2efe8); border-color: #e3133277; background: #e313321a; }
.sj-marathon-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.sj-marathon-card { min-width: 0; padding: 24px; background: var(--surface, #141518); border-radius: 14px; }
.sj-marathon-card h2 { margin: 12px 0; font-size: 25px; line-height: 1.2; font-weight: 600; }
.sj-marathon-card .sg-kicker { color: var(--muted, #a9abb1); font-size: 11px; }
.sj-marathon-card .sj-next-label { min-height: 38px; margin: 18px 0; color: var(--text, #f2efe8); font-size: 15px; line-height: 1.5; }
.sj-count { color: var(--muted, #a9abb1); font-size: 12px; margin: 10px 0 20px; }
.sj-marathon-card .sj-primary { min-width: 0; width: 100%; }
.sj-marathon-card .sg-quiet { margin-top: 12px; }
.sj-marathon-card.sj-featured { grid-column: 1/-1; max-width: none; margin: 0; padding: 26px 0 0; background: transparent; }
.sj-featured h2 { font-size: clamp(30px, 4vw, 58px); }
.sj-featured .sj-progress-track { max-width: 420px; }
.sj-featured .sj-primary { width: auto; min-width: 250px; margin-right: 12px; }
.sj-page .sj-card-open { display: block; padding: 0; background: transparent; border: 0; font-size: 23px; text-align: left; box-shadow: none; }
.sj-empty { grid-column: 1/-1; padding: 30px 0; color: var(--muted, #a9abb1); line-height: 1.7; }
.sj-empty h2 { color: var(--text, #f2efe8); }
.sj-marathons > .sg-text-link { margin-top: 35px; }
.sj-confirm { position: fixed; inset: 0; margin: auto; max-width: min(510px, calc(100vw - 40px)); max-height: calc(100dvh - 40px); overflow-y: auto; padding: 28px; border: 1px solid var(--line, #ffffff20); border-radius: 18px; background: var(--surface, #141518); color: var(--text, #f2efe8); }
.sj-confirm::backdrop { background: #000b; backdrop-filter: blur(6px); }
.sj-confirm h2 { margin: 0 0 16px; font-size: 23px; }
.sj-confirm p { color: var(--muted, #a9abb1); font-size: 14px; line-height: 1.7; }
.sj-confirm button { margin: 15px 8px 0 0; }
.sj-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0); white-space: nowrap !important; border: 0 !important; }
/* Reserve the reference geometry independently of missing hero and poster assets. */
.sj-journey-header { position: relative; display: grid; grid-template-rows: 20px 52px 80px 46px 50px 70px; min-width: 0; scroll-margin-top: 104px; }
.sj-journey-header .sj-breadcrumb { margin: 0; font-size: 13px; line-height: 20px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.sj-collection-label { display: flex; align-items: center; margin: 0; font-size: 18px; font-weight: 750; letter-spacing: -.03em; }
.sj-journey-header .sj-title { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; width: 100%; max-width: none; height: 80px; margin: 0; font-size: clamp(34px, 4.43vw, 74px); line-height: 80px; }
.sj-description { margin: 0; color: var(--muted, #a9abb1); font-size: 24px; line-height: 34px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sj-section-tabs { display: flex; align-items: end; gap: 36px; }
.sj-page .sj-section-tab { min-height: 38px; padding: 5px 3px 11px; border: 0; border-bottom: 2px solid transparent; border-radius: 0; color: var(--muted, #a9abb1); background: transparent; box-shadow: none; font-size: 16px; font-weight: 450; }
.sj-page .sj-section-tab[aria-pressed='true'] { color: var(--text, #f2efe8); border-color: var(--accent, #e31332); box-shadow: 0 7px 12px -9px var(--accent, #e31332); }
.sj-page .sj-section-tab:hover { transform: none; }
.sj-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-width: 0; }
.sj-toolbar .sj-actions, .sj-toolbar .sj-controls { flex-wrap: nowrap; margin: 0; }
.sj-toolbar .sj-controls { justify-content: flex-end; }
.sj-toolbar .sj-follow { min-height: 40px; padding: 9px 16px; font-size: 12px; white-space: nowrap; }
.sj-toolbar .sj-select { max-width: 235px; text-overflow: ellipsis; }
.sj-information { position: absolute; z-index: 5; right: 0; bottom: -12px; color: var(--muted, #a9abb1); font-size: 11px; }
.sj-information > summary { cursor: pointer; width: max-content; margin-left: auto; padding: 3px 0; }
.sj-information > summary:focus-visible { outline: 2px solid var(--text, #f2efe8); outline-offset: 4px; }
.sj-information-body { position: absolute; top: 100%; right: 0; width: min(680px, calc(100vw - 40px)); padding: 20px; border: 1px solid var(--line, #ffffff20); border-radius: 12px; background: var(--surface, #141518); box-shadow: 0 20px 55px #0008; }
.sj-information .sj-progress-track { margin: 10px 0; }
.sj-information .sj-note { margin: 12px 0 0; }
.sj-sequence { scroll-margin-top: 104px; }
.sj-sequence .sj-phase:first-child { margin-top: 26px; }
.sj-phase h2 { line-height: 36px; }
.sj-phase:has(.sj-phase-caption) h2 { margin-bottom: 7px; }
.sj-phase-caption { margin: 0 0 12px; color: var(--muted, #a9abb1); font-size: 20px; line-height: 22px; }
.sj-page .sj-film-art .sj-film-play { position: absolute; z-index: 3; right: 16px; bottom: 36px; display: grid; place-items: center; width: 48px; height: 48px; min-height: 48px; margin: 0; padding: 0; border: 1px solid #ffffff70; border-radius: 50%; background: #090a0c66; box-shadow: 0 5px 20px #0006; color: #f2efe8; opacity: 0; pointer-events: none; transform: none; }
.sj-page .sj-film-art .sj-film-play .sg-play-icon { width: 16px; height: 16px; margin-left: 2px; }
.sj-page .sj-film-art .sj-current-play, .sj-page .sj-film-art:is(:hover,:focus-within) .sj-film-play { opacity: 1; pointer-events: auto; }
.sj-marathons > .sg-kicker { height: 13px; margin: 0 0 6px; line-height: 13px; }
.sj-marathons .sj-library-title { max-width: none; margin: 0 0 16px; font-size: clamp(30px, 3.1vw, 48px); line-height: 1.1; }
.sj-marathons .sj-tabs { min-height: 44px; margin: 0; }
.sj-marathon-list { display: block; }
.sj-featured { height: 306px; }
.sj-featured .sg-kicker { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
.sj-featured .sj-marathon-copy { max-width: 700px; }
.sj-featured h2 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; height: 110px; overflow: hidden; max-width: 700px; margin: 0; font-size: 50px; line-height: 1.08; letter-spacing: -.035em; }
.sj-featured .sj-next-label { margin: 12px 0 10px; min-height: 0; }
.sj-next-label small, .sj-next-label strong { display: block; }
.sj-featured .sj-next-label small { font-size: 16px; line-height: 24px; font-weight: 400; }
.sj-featured .sj-next-label strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 26px; line-height: 33px; font-weight: 550; }
.sj-featured .sj-progress-track { max-width: 332px; }
.sj-marathon-actions { display: flex; align-items: center; gap: 12px; }
.sj-featured .sj-marathon-actions { margin-top: 18px; }
.sj-featured .sj-primary { min-width: 295px; margin: 0; }
.sj-featured .sj-view-films { min-width: 180px; margin: 0; }
.sj-other-journeys { margin-top: 22px; }
.sj-other-journeys > h2 { margin: 0 0 12px; font-size: 24px; font-weight: 650; line-height: 29px; letter-spacing: -.025em; }
.sj-other-journeys .sj-marathon-card { position: relative; isolation: isolate; display: flex; align-items: end; min-height: 245px; padding: 18px; overflow: hidden; background: var(--surface, #141518); }
.sj-marathon-art { position: absolute; z-index: -1; inset: 0; overflow: hidden; }
.sj-marathon-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, #050608f5 2%, #05060899 45%, #05060805 100%); }
.sj-marathon-art .sg-art { opacity: 0; filter: none; }
.sj-marathon-art[data-image='loaded'] .sg-art { opacity: 1; }
.sj-marathon-art[data-image='loaded'] .sj-art-fallback { opacity: 0; }
.sj-other-journeys .sj-marathon-copy { width: 100%; min-width: 0; color: #f2efe8; }
.sj-other-journeys .sg-kicker { display: none; }
.sj-other-journeys h2 { margin: 0 48px 10px 0; font-size: 24px; line-height: 1.2; }
.sj-other-journeys .sj-next-label { margin: 0 48px 10px 0; min-height: 0; font-size: 14px; line-height: 20px; }
.sj-other-journeys .sj-next-label small { display: inline; font-size: inherit; }
.sj-other-journeys .sj-next-label small::after { content: ' · '; }
.sj-other-journeys .sj-next-label strong { display: inline; font-size: inherit; font-weight: 450; }
.sj-other-journeys .sj-progress-track { max-width: calc(100% - 50px); }
.sj-other-journeys .sj-marathon-actions { margin-top: 10px; }
.sj-other-journeys .sj-view-films { min-height: 24px; padding: 0; margin: 0; border-radius: 0; color: #f2efe8; background: transparent; box-shadow: none; font-size: 12px; }
.sj-page .sj-compact-play { position: absolute; bottom: 23px; right: 18px; min-width: 44px; width: 44px; height: 44px; min-height: 44px; margin: 0; padding: 0; border: 1px solid #ffffff25; border-radius: 50%; background: #ffffff0a; box-shadow: none; color: #f2efe8; }
.sj-page .sj-compact-play .sg-play-icon { width: 14px; height: 14px; margin-left: 2px; }
.sj-other-journeys .sj-marathon-card:has(.sj-compact-play:focus-visible) { outline: 2px solid var(--text, #f2efe8); outline-offset: 4px; }
@keyframes sj-shimmer { to { background-position: -150% 0; } }
.sj-manage-actions { display: inline-flex; align-items: center; gap: 4px; }
.sj-marathon-copy > .sj-manage-actions { margin-top: 8px; }
.sj-page .sj-icon-action { display: inline-grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; min-width: 38px; min-height: 38px; padding: 0; margin: 0; border: 0; border-radius: 50%; color: var(--muted, #a9abb1); background: transparent; box-shadow: none; transition: color 160ms ease, background 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.sj-page .sj-icon-action:is(:hover, :focus-visible) { color: var(--text, #f2efe8); background: #e3133214; box-shadow: 0 0 17px #e3133220; transform: translateY(-1px); }
.sj-page .sj-icon-action:disabled { opacity: .25; cursor: default; transform: none; box-shadow: none; }
.sj-action-icon { display: block; width: 17px; height: 17px; background: currentColor; mask: var(--sj-action-mask) center/contain no-repeat; }
.sj-icon-edit { --sj-action-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m14 5 5 5M4 20l5-1L20 8a3.5 3.5 0 0 0-5-5L4 14Z' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.sj-icon-archive { --sj-action-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 8h16v12H4ZM3 4h18v4H3Zm6 8h6' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.sj-icon-close, .sj-icon-remove { --sj-action-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 6 12 12M6 18 18 6' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E"); }
.sj-icon-up { --sj-action-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 14 6-6 6 6' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.sj-icon-down { --sj-action-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 10 6 6 6-6' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.sj-management-dialog { position: fixed; inset: 0; margin: auto; width: min(620px, calc(100vw - 32px)); max-width: none; max-height: min(820px, calc(100dvh - 40px)); overflow-y: auto; padding: 30px; box-shadow: 0 26px 90px #0009, 0 0 38px #e313320b; animation: sj-dialog-in 190ms ease-out; }
.sj-management-dialog > h2 { padding-right: 36px; }
.sj-page .sj-management-dialog > .sj-icon-close { position: absolute; top: 19px; right: 17px; }
.sj-page .sj-confirm > .sj-icon-close { position: absolute; top: 15px; right: 13px; }
.sj-confirm > h2 { padding-right: 30px; }
.sj-name-label { display: block; margin-bottom: 9px; font-size: 12px; color: var(--muted, #a9abb1); }
.sj-page .sj-name-input { width: 100%; min-height: 44px; box-sizing: border-box; padding: 10px 13px; border: 1px solid var(--line, #ffffff20); border-radius: 10px; color: var(--text, #f2efe8); background: var(--canvas, #090a0c); font: inherit; font-size: 14px; outline: 0; }
.sj-page .sj-name-input:focus-visible { border-color: #e3133270; box-shadow: 0 0 0 3px #e3133210; }
.sj-management-dialog .sj-edit-hint { margin: 12px 0 18px; font-size: 12px; }
.sj-edit-sequence { display: grid; gap: 3px; max-height: min(46dvh, 400px); overflow-y: auto; padding: 0 3px 0 0; margin: 0; list-style: none; overscroll-behavior: contain; }
.sj-edit-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 54px; border-bottom: 1px solid var(--line, #ffffff0b); }
.sj-edit-copy { display: flex; align-items: baseline; gap: 12px; min-width: 0; }
.sj-edit-copy small { flex: 0 0 17px; color: var(--muted, #a9abb1); font-size: 10px; font-variant-numeric: tabular-nums; }
.sj-edit-copy strong { font-size: 12px; font-weight: 500; line-height: 1.45; overflow-wrap: anywhere; }
.sj-edit-row-actions { display: inline-flex; flex: 0 0 auto; gap: 0; }
.sj-page .sj-edit-row .sj-icon-action { width: 36px; min-width: 36px; height: 42px; min-height: 42px; flex-basis: 36px; }
.sj-page .sj-edit-undo { display: block; min-height: 34px; margin: 12px 0 0; padding: 0; font-size: 11px; }
.sj-dialog-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; }
.sj-dialog-actions > button { margin: 0; }
.sj-management-error:empty { display: none; }
.sj-management-dialog .sj-management-error { margin: 12px 0 0; color: #ff899c; font-size: 12px; }
.sj-undo-notice { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin: 14px 0 4px; color: var(--muted, #a9abb1); font-size: 12px; }
.sj-undo-notice > button { padding: 4px 0; font-size: 12px; }
.sj-archive-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)); gap: 20px; margin-top: 28px; }
.sj-archive-card { padding: 20px; border-bottom: 1px solid var(--line, #ffffff16); }
.sj-archive-card h2 { margin: 12px 0; font-size: 22px; overflow-wrap: anywhere; }
.sj-archive-card .sj-note { margin: 12px 0; }
html:has(.sj-confirm[open]), body:has(.sj-confirm[open]) { overflow: hidden; overscroll-behavior: none; }
@keyframes sj-dialog-in { from { opacity: 0; transform: translateY(10px) scale(.985); } to { opacity: 1; transform: none; } }
@media (max-width: 1200px) { .sj-films { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px 16px; } }
@media (max-width: 1350px) {
  .sj-journey-header { display: block; }
  .sj-journey-header .sj-title { height: auto; margin: 8px 0; line-height: 1.1; -webkit-line-clamp: 2; }
  .sj-collection-label { min-height: 38px; }
  .sj-description { margin-bottom: 12px; }
  .sj-section-tabs { margin-bottom: 12px; }
  .sj-toolbar { flex-wrap: wrap; }
  .sj-toolbar .sj-controls { justify-content: flex-start; flex-wrap: wrap; }
  .sj-information { position: relative; bottom: auto; margin-top: 12px; }
  .sj-information > summary { margin-left: 0; }
  .sj-information-body { right: auto; left: 0; }
}
@media (max-width: 800px) { .sj-films { grid-template-columns: repeat(3, minmax(0, 1fr)); } .sj-marathon-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (hover: none) { .sj-page .sj-film-art .sj-film-play { opacity: 1; pointer-events: auto; } }
@media (max-width: 540px) {
  .sj-management-dialog { padding: 25px 17px 20px; width: calc(100vw - 24px); }
  .sj-management-dialog h2 { font-size: 21px; }
  .sj-dialog-actions { justify-content: stretch; }
  .sj-dialog-actions > button { flex: 1; min-width: 0; padding: 10px; }
  .sj-edit-row { gap: 6px; }
  .sj-edit-copy { gap: 7px; }
  .sj-title { font-size: 35px; }
  .sj-films { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px 12px; }
  .sj-phase h2 { font-size: 24px; }
  .sj-page .sj-select { width: 100%; }
  .sj-marathon-grid { grid-template-columns: 1fr; }
  .sj-marathon-card.sj-featured { padding-top: 5px; }
  .sj-featured { height: auto; min-height: 306px; }
  .sj-featured h2 { height: auto; min-height: 90px; font-size: 36px; }
  .sj-featured .sj-marathon-actions { align-items: stretch; flex-direction: column; }
  .sj-featured .sj-primary { min-width: 0; width: 100%; }
  .sj-featured .sj-view-films { min-width: 0; }
  .sj-other-journeys { margin-top: 28px; }
  .sj-description { font-size: 18px; white-space: normal; line-height: 1.45; }
  .sj-journey-header .sj-title { font-size: 36px; }
  .sj-toolbar .sj-actions { flex-wrap: wrap; }
  .sj-toolbar .sj-select { width: 100%; max-width: none; }
  .sj-toolbar .sj-controls { width: 100%; }
  .sj-tabs { gap: 4px; }
  .sj-page .sj-tab { padding: 10px 12px; font-size: 12px; }
  .sj-page > .sg-subtitle { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) { .sj-film-open::after, .sj-management-dialog { animation: none !important; } .sj-page * { scroll-behavior: auto; } .sj-page .sj-icon-action { transition: none; } }
