:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-spacing:1.5rem;--page-gutter:clamp(calc(var(--page-spacing) * 2 / 3), 4vw, var(--page-spacing));--viewport-height:100vh;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--page-background:#fff;--light-ink:#000;--ink:var(--light-ink);--muted-ink:#666;--border-color:#e5e5e5;--trial-background:#ff9800;--trial-ink:var(--light-ink);--sheet-backdrop-color:var(--light-ink);--dark-page-background:#121212;--dark-ink:#f5f5f5;--dark-muted-ink:#aaa;--dark-border-color:#333;--artwork-filter:none;--dark-artwork-filter:drop-shadow(0 0 calc(var(--page-spacing) / 12) var(--muted-ink));--text-small-size:.875rem;--artwork-width:min(72vw, 26rem, calc(var(--viewport-height) / 2));--content-max-width:80rem;--header-artwork-size:clamp(var(--control-size), 6vw, calc(var(--control-size) * 1.5));--header-title-size:clamp(1rem, 3vw, 1.5rem);--card-radius:var(--page-spacing);--control-size:2.75rem;--dot-size:.375rem;--category-title-size:clamp(1.5rem, 4vw, 2rem);--font-weight-bold:700;--sheet-width:40rem;--sheet-backdrop-opacity:.35;--sheet-shadow:none;--dark-sheet-shadow:0 0 0 1px var(--border-color), 0 0 var(--page-spacing) color-mix(in srgb, var(--sheet-backdrop-color) calc(var(--sheet-backdrop-opacity) * 100%), transparent);--movie-card-width:clamp(calc(var(--control-size) * 5), 64vw, calc(var(--control-size) * 7));--movie-poster-ratio:16 / 9;--motion-duration:.48s;--motion-easing:cubic-bezier(.22, 1, .36, 1);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-family:Prompt,system-ui,sans-serif}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-background:var(--dark-page-background);--ink:var(--dark-ink);--muted-ink:var(--dark-muted-ink);--border-color:var(--dark-border-color);--artwork-filter:var(--dark-artwork-filter);--sheet-shadow:var(--dark-sheet-shadow)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-background:var(--dark-page-background);--ink:var(--dark-ink);--muted-ink:var(--dark-muted-ink);--border-color:var(--dark-border-color);--artwork-filter:var(--dark-artwork-filter);--sheet-shadow:var(--dark-sheet-shadow)}}@supports (height:100svh){:root{--viewport-height:100svh}}*{box-sizing:border-box}body{min-height:100dvh;padding:calc(var(--page-spacing) * 2) 0;background:var(--page-background);color:var(--ink);place-items:center;margin:0;display:grid}main,.category-page{justify-items:center;gap:var(--page-spacing);text-align:center;width:100%;min-width:0;display:grid}h1,p{margin:0}button,select,.category-card{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.carousel.is-pointer-input .category-card:focus{outline:none}.category-status,.no-script{color:var(--muted-ink);font-size:var(--text-small-size);line-height:1.75}.carousel{width:min(100%, var(--content-max-width));min-width:0}.carousel-viewport{padding-block:calc(var(--page-spacing) / 2);scrollbar-width:none;overflow:hidden}.carousel-viewport::-webkit-scrollbar{display:none}.carousel.is-ready .carousel-viewport{touch-action:pan-y pinch-zoom;cursor:grab}.carousel.is-dragging .carousel-viewport{cursor:grabbing}.carousel-track{width:100%;transform:translate3d(calc(var(--carousel-initial-index) * -100%), 0, 0);display:flex}.carousel.is-ready .carousel-track{will-change:transform;padding-inline:0}.slide{flex:0 0 100%;width:100%;min-width:0}.category-card{justify-items:center;gap:calc(var(--page-spacing) / 3);width:var(--artwork-width);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:0;grid-template-rows:auto auto;margin-inline:auto;padding:0;text-decoration:none;display:grid}.card-art{aspect-ratio:1;place-items:center;width:100%;min-height:0;display:grid}.card-art img{object-fit:contain;pointer-events:none;width:100%;height:100%;min-height:0;filter:var(--artwork-filter);display:block}.card-title{font-size:var(--category-title-size);font-weight:var(--font-weight-bold);line-height:1.5}.carousel-controls{visibility:hidden;justify-content:center;align-items:center;gap:var(--page-spacing);margin-top:calc(var(--page-spacing) / 2);display:flex}.carousel.is-ready .carousel-controls{visibility:visible}.arrow,.dot{background:var(--page-background);cursor:pointer;touch-action:manipulation;flex-shrink:0;place-items:center;padding:0;display:grid}.arrow{width:var(--control-size);height:var(--control-size);border:1px solid var(--border-color);border-radius:50%}.arrow:hover{border-color:var(--ink)}.arrow svg,.trial-badge svg{width:var(--page-spacing);height:var(--page-spacing);fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.pagination{align-items:center;display:flex}.dot{width:var(--control-size);height:var(--control-size);border-radius:var(--card-radius);border:0}.dot:after{content:"";width:var(--dot-size);height:var(--dot-size);border-radius:var(--dot-size);background:var(--border-color)}.dot[aria-current=true]:after,.dot:hover:after{background:var(--ink)}.category-status{min-height:1.75em;padding-inline:var(--page-spacing)}.category-layout{flex-direction:column;align-items:stretch;padding:0;display:flex}body.category-layout{padding-block:var(--safe-area-top) var(--safe-area-bottom)}html:has(.home-page){overscroll-behavior:none;height:100%;overflow:hidden}body:has(>.home-page){overscroll-behavior:none;height:100dvh;min-height:0;overflow:hidden}body:has(>.home-page)>.home-header{flex-shrink:0}.category-header-inner{justify-content:space-between;align-items:center;gap:calc(var(--page-spacing) / 2);width:min(100%, var(--content-max-width));padding-block:calc(var(--page-spacing) / 2);padding-inline:calc(var(--page-gutter) + var(--safe-area-left)) calc(var(--page-gutter) + var(--safe-area-right));flex-wrap:wrap;margin-inline:auto;display:flex}.category-brand{align-items:center;gap:calc(var(--page-spacing) / 2);min-width:0;display:flex}.category-header-actions{justify-content:flex-end;align-items:center;gap:calc(var(--page-spacing) / 2);flex-wrap:wrap;margin-inline-start:auto;display:flex}.theme-control{justify-content:space-between;align-items:center;gap:calc(var(--page-spacing) / 2);flex-wrap:wrap;display:flex}.settings-link{color:var(--ink);text-decoration:none}.settings-page{justify-items:stretch;gap:var(--page-spacing);width:min(100%, var(--sheet-width));padding:var(--page-gutter);text-align:start;margin-inline:auto;display:grid}.theme-select{min-height:var(--control-size);max-width:100%;padding-inline:calc(var(--page-spacing) / 3);border:1px solid var(--border-color);border-radius:var(--card-radius);background:var(--page-background);color:var(--ink);font-size:var(--text-small-size);cursor:pointer;touch-action:manipulation;-webkit-user-select:auto;user-select:auto;display:block}.theme-select:hover{border-color:var(--ink)}.theme-select:disabled{cursor:default}.home-header{--header-artwork-size:clamp(calc(var(--control-size) + var(--page-spacing) / 2), 7vw, calc(var(--control-size) + var(--page-spacing)))}.home-header .category-brand{gap:calc(var(--page-spacing) / 6)}.home-header .category-illustration{overflow:hidden}.home-header .category-illustration img{object-fit:cover}.category-header .card-title{font-size:var(--header-title-size);text-align:start}.trial-badge{align-items:center;gap:calc(var(--page-spacing) / 4);padding:calc(var(--page-spacing) / 4) calc(var(--page-spacing) / 2);border-radius:var(--card-radius);background:var(--trial-background);color:var(--trial-ink);font-size:var(--text-small-size);font-weight:var(--font-weight-bold);white-space:nowrap;flex-shrink:0;margin-inline-start:auto;display:inline-flex}.category-page{padding:var(--page-gutter);flex:1;align-content:center}.home-page{min-height:0;padding-inline:0;container-type:size}.home-page .carousel{--home-artwork-limit:max(0px, calc(100cqh - var(--page-spacing) * 4 - var(--category-title-size) * 1.5 - var(--control-size) - var(--text-small-size) * 1.75))}.home-page .category-card{width:min(var(--artwork-width), var(--home-artwork-limit))}.home-mascot{width:min(var(--artwork-width), max(0px, calc(100cqh - var(--page-spacing) * 2 - var(--text-small-size) * 1.75)))}.category-illustration{flex:0 0 var(--header-artwork-size);width:var(--header-artwork-size)}.back-link{min-height:var(--control-size);padding-inline:calc(var(--page-spacing) / 2);border-radius:var(--card-radius);color:var(--ink);text-underline-offset:calc(var(--page-spacing) / 6);align-items:center;display:inline-flex}.category-header .back-link{padding-inline:calc(var(--page-spacing) / 3);font-size:var(--text-small-size);white-space:nowrap;flex-shrink:0;margin-inline-start:auto}html[data-sheet-restoring]{background:var(--page-background)}html[data-sheet-restoring] body{visibility:hidden}html[data-sheet-restoring]:before{content:"";background:var(--sheet-backdrop-color);opacity:var(--sheet-backdrop-opacity);position:fixed;inset:0}html[data-sheet-restoring]:after{content:""}body.sheet-open{inset-inline:0;top:var(--sheet-scroll-offset,0px);overscroll-behavior:none;width:100%;position:fixed;overflow:hidden}.category-sheet,html[data-sheet-restoring]:after{width:min(calc(100% - var(--safe-area-left) - var(--safe-area-right)), var(--sheet-width));overscroll-behavior:none;border-radius:var(--card-radius) var(--card-radius) 0 0;max-width:100%;height:100dvh;max-height:100dvh;box-shadow:var(--sheet-shadow);background:var(--page-background);color:var(--ink);border:0;margin:0 auto;padding:0;position:fixed;inset:0;overflow:hidden}.category-sheet[open]{will-change:transform;flex-direction:column;display:flex}.category-sheet:focus,.sheet-stack-list:focus,.sheet-stack-movie:focus{outline:none}.category-sheet::backdrop{background:var(--sheet-backdrop-color);opacity:var(--sheet-backdrop-opacity);transition:opacity var(--motion-duration) var(--motion-easing)}@starting-style{.category-sheet[open]::backdrop{opacity:0}}.category-sheet.is-closing::backdrop{opacity:0}.category-sheet[data-sheet-restored]::backdrop{opacity:var(--sheet-backdrop-opacity);transition:none}@starting-style{.category-sheet[data-sheet-restored][open]::backdrop{opacity:var(--sheet-backdrop-opacity)}}.sheet-toolbar{padding-top:var(--safe-area-top);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding-inline-end:calc(var(--page-spacing) / 2);display:grid;position:relative}.sheet-grip{width:var(--control-size);height:var(--dot-size);border-radius:var(--dot-size);background:var(--border-color);position:absolute;inset-block-start:calc(var(--safe-area-top) + var(--page-spacing) / 4);inset-inline-start:50%;transform:translate(-50%)}.sheet-toolbar .category-header{flex:1;width:100%;min-width:0}.sheet-heading{align-items:center;min-width:0;display:flex}.sheet-back{margin-inline-start:var(--page-gutter)}.category-sheet[data-has-back] .sheet-toolbar{cursor:default}.sheet-toolbar .category-header-inner{padding-inline:var(--page-gutter)}.sheet-content{overscroll-behavior:none;min-height:0;padding-bottom:var(--safe-area-bottom);flex:1;overflow:hidden auto}.sheet-content>.category-status{margin:auto}.sheet-content:has(>.sheet-stack){padding-bottom:0;overflow:hidden}.sheet-stack{flex:1;min-height:0;position:relative;overflow:hidden}.sheet-stack-panel{overscroll-behavior:none;padding-bottom:var(--safe-area-bottom);background:var(--page-background);transition:transform var(--motion-duration) var(--motion-easing), visibility 0s var(--motion-duration);flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden auto}.sheet-stack-catalog{visibility:visible;scrollbar-width:none;transition-delay:0s;transform:translate(0)}html:has(body>.movie-catalog)::-webkit-scrollbar{width:0}body:has(>.movie-catalog)::-webkit-scrollbar{width:0}.sheet-stack-catalog::-webkit-scrollbar{width:0}.sheet-stack-list,.sheet-stack-movie{visibility:hidden;transform:translate(100%)}.sheet-stack.is-list .sheet-stack-catalog,.sheet-stack.is-movie .sheet-stack-catalog,.sheet-stack.is-movie .sheet-stack-list{visibility:hidden;pointer-events:none;transition-delay:0s, var(--motion-duration);transform:translate(-25%)}.sheet-stack.is-list .sheet-stack-list,.sheet-stack.is-movie .sheet-stack-movie{visibility:visible;transition-delay:0s;transform:translate(0)}.sheet-content .category-page{min-height:min-content}.sheet-error{justify-items:center;gap:var(--page-spacing);padding:var(--page-spacing);text-align:center;margin:auto;display:grid}.movie-catalog{align-content:start;gap:calc(var(--page-spacing) * 1.5);width:min(100%, var(--content-max-width));text-align:start;margin-inline:auto;position:relative}.catalog-refresh{z-index:1;opacity:var(--pull-progress,0);transform:translate(-50%, calc((var(--pull-progress,0) - 1) * 100%));pointer-events:none;cursor:default;position:absolute;inset-block-start:calc(var(--page-spacing) / 4);inset-inline-start:50%}.catalog-refresh[data-refreshing]{opacity:1;transform:translate(-50%)}.catalog-refresh-icon{place-items:center;display:grid}.catalog-refresh[data-refreshing] .catalog-refresh-icon{animation:catalog-refresh-spin calc(var(--motion-duration) * 2) linear infinite}@keyframes catalog-refresh-spin{to{transform:rotate(1turn)}}html:has(body>.movie-catalog .catalog-refresh[data-enabled]){overscroll-behavior-y:none}.movie-catalog-note,.movie-meta{color:var(--muted-ink);font-size:var(--text-small-size);line-height:1.75}.movie-catalog-note{justify-self:start}.movie-section{width:100%;min-width:0}.movie-section-header,.movie-section-heading,.movie-section-controls{align-items:center;gap:calc(var(--page-spacing) / 3);display:flex}.movie-section-header{justify-content:space-between;gap:calc(var(--page-spacing) / 2);margin-bottom:calc(var(--page-spacing) / 2)}.movie-section-header h2{font-size:var(--header-title-size);margin:0;line-height:1.5}.movie-type-filter{gap:calc(var(--page-spacing) / 3);display:flex}.movie-type-filter button{min-height:var(--control-size);padding:calc(var(--page-spacing) / 4) calc(var(--page-spacing) / 2);border:1px solid var(--border-color);border-radius:var(--card-radius);color:var(--ink);font:inherit;cursor:pointer;background:0 0}.movie-type-filter button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--page-background)}.movie-type-filter button:focus-visible{outline:2px solid var(--ink);outline-offset:calc(var(--page-spacing) / 6)}.movie-ranking-note{margin:0 0 calc(var(--page-spacing) / 2);color:var(--muted-ink);font-size:var(--text-small-size)}.movie-track{gap:calc(var(--page-spacing) / 2);padding:calc(var(--page-spacing) / 4);overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;margin:0;list-style:none;display:flex;overflow-x:auto}.movie-track:focus-visible{outline:2px solid var(--ink);outline-offset:calc(var(--page-spacing) / 6)}.movie-track>li{flex:0 0 var(--movie-card-width);min-width:0}.movie-card{gap:calc(var(--page-spacing) / 4);height:100%;color:var(--ink);border-radius:var(--card-radius);-webkit-tap-highlight-color:transparent;flex-direction:column;text-decoration:none;display:flex;position:relative}.movie-card h3{font-size:inherit;overflow-wrap:anywhere;margin:0;line-height:1.5}.movie-card:hover h3{text-underline-offset:calc(var(--page-spacing) / 6);text-decoration:underline}.movie-card .movie-meta{margin-top:auto}.movie-poster{justify-content:center;align-items:center;gap:calc(var(--page-spacing) / 3);width:100%;aspect-ratio:var(--movie-poster-ratio);border:1px solid var(--border-color);border-radius:var(--card-radius);background:var(--border-color);color:var(--muted-ink);font-size:var(--text-small-size);flex-direction:column;display:flex;position:relative;overflow:hidden}.movie-poster>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.movie-poster>svg{width:var(--control-size);height:var(--control-size)}.movie-rank{min-width:var(--control-size);height:var(--control-size);padding-inline:calc(var(--page-spacing) / 4);border-radius:calc(var(--card-radius) / 2);background:var(--ink);color:var(--page-background);font-size:var(--header-title-size);font-weight:var(--font-weight-bold);place-items:center;display:grid;position:absolute;inset-block-start:calc(var(--page-spacing) / 3);inset-inline-start:calc(var(--page-spacing) / 3)}.movie-detail{align-items:stretch;gap:var(--page-spacing);width:min(100%, var(--content-max-width));padding:var(--page-gutter);text-align:start;flex-direction:column;margin-inline:auto;display:flex}.movie-detail>.back-link{align-self:start}.movie-detail-layout{grid-template-columns:minmax(0, calc(var(--control-size) * 6)) minmax(0, 1fr);align-items:start;gap:calc(var(--page-spacing) * 2);display:grid}.movie-detail-copy{gap:var(--page-spacing);min-width:0;line-height:1.75;display:grid}.movie-detail-copy h2,.movie-detail-copy h3{margin:0;line-height:1.5}.movie-detail-copy h2{font-size:var(--category-title-size)}.movie-detail-copy h3{margin-bottom:calc(var(--page-spacing) / 2);font-size:var(--header-title-size)}.movie-credits{gap:calc(var(--page-spacing) / 2);margin:0;display:grid}.movie-credits>div{grid-template-columns:calc(var(--control-size) * 2) minmax(0, 1fr);gap:calc(var(--page-spacing) / 2);display:grid}.movie-credits dt{color:var(--muted-ink)}.movie-credits dd{margin:0}.sheet-content .movie-track{overscroll-behavior-x:none}.sheet-content .movie-detail-layout{gap:var(--page-spacing);grid-template-columns:minmax(0,1fr)}.sheet-content .movie-detail-layout>.movie-poster{width:100%}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=40rem){:root{--artwork-width:min(76vw, 26rem, calc(var(--viewport-height) * .36))}.home-page{gap:var(--page-gutter)}.carousel-viewport{padding-block:calc(var(--page-spacing) / 4)}.carousel-controls{gap:var(--page-gutter);margin-top:calc(var(--page-spacing) / 3)}.movie-detail-layout{gap:var(--page-spacing);grid-template-columns:minmax(0,1fr)}.movie-detail-layout>.movie-poster{width:min(100%, calc(var(--movie-card-width) * 1.5));justify-self:center}}@media (orientation:landscape) and (height<=32rem){:root{--page-gutter:calc(var(--page-spacing) * 2 / 3);--artwork-width:min(calc(var(--viewport-height) * .28), 12rem)}.category-header-inner{padding-block:calc(var(--page-spacing) / 4)}.home-page{gap:calc(var(--page-spacing) / 2);padding-block:calc(var(--page-spacing) / 2)}.category-card{grid-template-columns:var(--artwork-width) minmax(0, auto);align-items:center;gap:var(--page-spacing);width:fit-content;max-width:calc(100% - var(--page-gutter) * 2)}.home-page .carousel{--home-artwork-limit:max(0px, calc(100cqh - var(--page-spacing) - var(--page-spacing) / 4 - var(--control-size) - var(--text-small-size) * 1.75))}.home-page .category-card{grid-template-columns:min(var(--artwork-width), var(--home-artwork-limit)) minmax(0, auto);width:fit-content}.carousel-viewport{padding-block:calc(var(--page-spacing) / 4)}.carousel-controls{margin-top:calc(var(--page-spacing) / 4)}}@media (prefers-reduced-motion:reduce){:root{--motion-duration:0s}.catalog-refresh[data-refreshing] .catalog-refresh-icon{animation:none}}.movie-list-intro,.movie-list-description{color:var(--muted-ink);font-size:var(--text-small-size);line-height:1.75}.movie-list-intro{margin-bottom:calc(var(--page-spacing) / 2)}.movie-list-art{aspect-ratio:var(--movie-poster-ratio);border-radius:var(--card-radius);background:var(--border-color);display:flex;overflow:hidden}.movie-list-art .movie-poster{border-radius:0;flex:1 1 0;min-width:0;height:100%}.movie-list-heading h2{font-size:var(--category-title-size);margin:0;line-height:1.5}.movie-list-grid{gap:var(--page-spacing) calc(var(--page-spacing) / 2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.movie-list-description{margin-bottom:calc(var(--page-spacing) / 3)}.auth-form{gap:var(--page-spacing);width:min(100%, var(--sheet-width));padding-inline:var(--page-gutter);display:grid}.auth-form label{gap:calc(var(--page-spacing) / 3);text-align:left;display:grid}.auth-form input{font:inherit;color:var(--ink);background:var(--page-background);border:1px solid var(--border-color);border-radius:calc(var(--card-radius) / 3);padding:calc(var(--page-spacing) / 3)}.auth-page button{font:inherit;color:var(--ink);background:var(--page-background);border:1px solid var(--border-color);border-radius:calc(var(--card-radius) / 3);padding:calc(var(--page-spacing) / 3) var(--page-spacing);cursor:pointer}
