body{background:#111114;color:#f4f4f5}aside{background:linear-gradient(180deg,#111116f5,#111116df);border-bottom:1px solid #ffffff09;backdrop-filter:blur(20px)}.brand{letter-spacing:-1.3px}nav button{transition:color .2s}nav button span{font-weight:500;color:#a9a9b2}nav button.active span{color:#fff}header label{border:1px solid #ffffff18;background:#ffffff07;border-radius:9px;padding:10px 13px;transition:border-color .2s}header label:focus-within{border-color:#ffffff60}.avatar{border-radius:9px;background:linear-gradient(145deg,#da3044,#8d132b);box-shadow:0 3px 14px #0004}.hero-image-layer{position:absolute;inset:0;background-position:center 25%;background-size:cover;pointer-events:none;opacity:0}.hero-shade{z-index:1;background:linear-gradient(90deg,#111114e8,transparent 85%),linear-gradient(0deg,#111114,transparent 55%)}.hero-content{z-index:2}.hero-carousel{z-index:3}.hero-content h1{letter-spacing:-2.5px}.hero-actions .primary{border-radius:8px;box-shadow:0 4px 22px #0003}.hero-actions .secondary{border-radius:8px;background:#ffffff16;backdrop-filter:blur(10px);border:1px solid #ffffff20}.catalog{padding-top:28px}.section-top h2{font-weight:600;letter-spacing:-.8px}.section-top .tabs{border:1px solid #ffffff10;border-radius:10px;padding:4px;background:#ffffff04}.section-top .tabs button{border-radius:7px!important;font-size:11px;padding:8px 15px}.section-top .tabs .selected{background:#ffffff12;color:white;box-shadow:0 1px 5px #0003}#genre-filter{background:#1b1b21;border:1px solid #ffffff15;border-radius:9px;padding:11px 15px;font-size:12px;min-width:190px}.genre-pills{display:flex;gap:9px;overflow-x:auto;padding:3px 0 22px;scrollbar-width:none}.genre-pills button{flex:none;padding:10px 18px;border-radius:30px;font-size:11px;letter-spacing:.2px;border:1px solid #ffffff14;color:#aaaab4;background:linear-gradient(140deg,#ffffff07,#ffffff02);transition:background .2s,border-color .2s,color .2s}.genre-pills button:hover{border-color:#ffffff40;color:white}.genre-pills button.selected{background:#eeeef1;color:#16161c;border-color:#eeeef1;font-weight:700;box-shadow:0 3px 14px #0003}.shelf-heading h2{font-size:20px;letter-spacing:-.4px;font-weight:600}.shelf-heading button{color:#9898a4;font-size:24px}.shelf-rail .poster{border-radius:9px;box-shadow:0 4px 15px #0003;border:1px solid #ffffff0a}.shelf-rail{gap:13px}.shelf-rail .card h3{font-size:12px;color:#e3e3e8}.shelf-rail .card p{font-size:10px;color:#777781}.shelf-rail .badge{background:#17171cd9;color:#eee;border:1px solid #ffffff12;backdrop-filter:blur(8px);border-radius:4px;font-size:7px;letter-spacing:1px}.shelf-rail .card:hover{transform:translateY(-4px)}.continue-section{padding-bottom:15px}.continue-section h2{font-size:21px;letter-spacing:-.5px;font-weight:600;margin-bottom:17px}.continue-section:has(#continue-empty:not([hidden])){display:none}.continue-grid{gap:15px;padding-bottom:18px}.continue-card{flex-basis:285px;background:#1a1a20;border:1px solid #ffffff0d;border-radius:11px;overflow:hidden;box-shadow:0 5px 20px #0002}.continue-play{border-radius:0}.continue-play img{transition:transform .4s}.continue-play:hover img{transform:scale(1.04)}.continue-overlay{background:linear-gradient(0deg,#0008,transparent 85%);font-size:23px}.continue-card .progress-track{height:3px;margin:0;background:#ffffff13}.continue-card .progress-track div{background:linear-gradient(90deg,#e50935,#ff5265)}.continue-card>strong{margin:15px 15px 7px;font-size:13px;font-weight:600}.continue-card>p{margin:0 15px 15px;font-size:10px;color:#9999a6}.remove-history{width:26px;height:26px;font-size:10px;padding:0;background:#111b;border:1px solid #ffffff20;opacity:0;transition:opacity .2s}.continue-card:hover .remove-history,.continue-card:focus-within .remove-history{opacity:1}.continue-resume{display:block;margin:0 15px 15px;padding:8px 12px;border:1px solid #ffffff18;border-radius:6px;font-size:10px;color:#e8e8ee;background:#ffffff06;width:calc(100% - 30px);text-align:center}.continue-resume:hover{background:#ffffff12}.continue-counter{font-size:10px;color:#888894;font-weight:400;margin-left:12px}.continue-nav{float:right;display:flex;gap:6px}.continue-nav button{width:29px;height:29px;border:1px solid #ffffff16;border-radius:50%;background:#ffffff05;font-size:18px;color:#bbb}#detail{background:#18181d;border-radius:14px}.detail-banner:after{background:linear-gradient(0deg,#18181d,transparent 95%),linear-gradient(90deg,#0007,transparent)}.detail-banner-content h2{letter-spacing:-1px}.details-top p{color:#c4c4ce;font-size:14px}.detail-tags{color:#838391!important}.episodes-heading select{border:1px solid #ffffff18;border-radius:8px;background:#24242c}.episode-row{padding:17px 10px;gap:17px;border-color:#ffffff09}.episode-row.selected{background:#ffffff05}.episode-item:has(.selected){border:1px solid #ffffff10;border-radius:10px;background:#202027}.episode-thumbnail{width:125px;min-width:125px;aspect-ratio:16/9;position:relative;overflow:hidden;background:linear-gradient(135deg,#30303a,#17171e);border-radius:7px;border:1px solid #ffffff0d}.episode-thumbnail img{width:100%;height:100%;object-fit:cover}.episode-thumbnail span{position:absolute;inset:0;display:grid;place-items:center;font-size:19px;background:#0003;color:#fffe;text-shadow:0 2px 7px black}.episode-number{color:#70707e;font-size:19px}.episode-name strong{font-size:13px;color:#eeeef2}.episode-name small{font-size:11px;color:#888895}.source-panel-heading .sources-title{font-size:13px;font-weight:500;color:#aaaab6}#sources .source{background:linear-gradient(140deg,#2b2b34,#202027);border:1px solid #ffffff10;border-radius:10px;padding:13px;transition:border-color .2s}#sources .source:hover{border-color:#ffffff30}#sources .source>strong{font-size:11px;color:#e9e9ef}#sources .source>p{color:#898999}#sources .source .primary{border-radius:6px;font-weight:600}#sources .external-actions button{border-radius:6px;background:#ffffff09;border:1px solid #ffffff12;color:#ccc}#sources .source-more summary{font-size:9px;color:#888}.sources-title{letter-spacing:-.3px}.source-panel-heading button{color:#888896}footer{border-top:1px solid #ffffff08;color:#656571}#config{background:#1b1b22;border:1px solid #ffffff12;border-radius:14px}#addon-url{background:#26262f;border:1px solid #ffffff12;border-radius:8px}#addon-form .primary{border-radius:8px;background:linear-gradient(135deg,#e50935,#b9072b)}@media(max-width:700px){.hero-content h1{letter-spacing:-1.5px}.hero-actions .primary,.hero-actions .secondary{border-radius:7px}.genre-pills{gap:7px;padding-bottom:18px}.genre-pills button{font-size:10px;padding:9px 14px}#genre-filter{min-width:0}.continue-card{flex-basis:250px}.continue-section h2{font-size:19px}.remove-history{opacity:1}.episode-thumbnail{width:90px;min-width:90px}.episode-row{gap:11px;padding:15px 7px}.episode-name strong{font-size:12px}.episode-name small{font-size:10px}.episode-number{font-size:15px;width:13px}.shelf-heading h2{font-size:18px}#detail{border-radius:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

#play-status.searching{display:flex;gap:10px;align-items:center;min-height:38px;color:#c9c9d4;font-size:12px}#play-status.searching:before{content:"";width:14px;height:14px;flex:none;border:2px solid #ffffff22;border-top-color:#e9435c;border-radius:50%;animation:source-spin .8s linear infinite}@keyframes source-spin{to{transform:rotate(360deg)}}

.episode-watch{margin-left:auto;flex:none;background:#ffffff0d;border:1px solid #ffffff18;color:#dddde5;border-radius:7px;padding:9px 13px;font-size:11px}.episode-row:hover .episode-watch{background:#f1f1f4;color:#16161a}.episode-name{min-width:0;flex:1}@media(max-width:700px){.episode-watch{font-size:9px;padding:7px}.episode-name small{-webkit-line-clamp:1}}

.brand{letter-spacing:-1px;text-transform:none;line-height:.9;flex:none}.zuppi-wordmark{display:block;font-size:34px;font-weight:900}.brand .zuppi-wordmark small{display:block;color:#eee;font-size:8px;letter-spacing:3.5px;margin:7px 0 0;font-weight:500;line-height:1}@media(max-width:700px){.zuppi-wordmark{font-size:29px}.brand .zuppi-wordmark small{font-size:7px;letter-spacing:2.7px;margin-top:5px}}

#player-options-popup{width:min(780px,94vw);max-height:85dvh;border:1px solid #ffffff18;border-radius:16px;background:linear-gradient(145deg,#25252e,#18181e);padding:30px;box-shadow:0 22px 100px #000a;color:#eee}#player-options-popup::backdrop{background:#0009;backdrop-filter:blur(7px)}#player-options-popup h2{font-size:23px;letter-spacing:-.5px;margin:0 40px 10px 0}.popup-description{font-size:12px;color:#a5a5b2;line-height:1.7;margin-bottom:18px}.popup-close{position:absolute;right:16px;top:16px;border:1px solid #ffffff18;border-radius:50%;width:30px;height:30px;background:#ffffff07;font-size:13px}#detail.theatre #player-options-popup #source-panel{display:block;padding:0!important}#detail.theatre #player-options-popup .sources{display:flex}#player-options-popup #source-panel{padding:0!important}#player-options-popup .source-panel-heading .sources-title{font-size:13px}@media(max-width:700px){#player-options-popup{padding:23px 18px}#player-options-popup h2{font-size:20px}}

#hero{isolation:isolate;scroll-margin-top:90px}.hero-shade,.hero-image-layer{pointer-events:none}.hero-content{position:relative;z-index:2}.hero-actions{position:relative;z-index:4;pointer-events:auto}.hero-actions button{position:relative;pointer-events:auto;scroll-margin-top:110px;touch-action:manipulation}.hero-actions #hero-save[aria-pressed=true]{background:#ffffff25;border-color:#ffffff55}@media(max-width:700px){.hero-actions button{scroll-margin-top:140px}}

.trailer-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#eee!important;background:#ffffff12;border:1px solid #ffffff20;border-radius:8px;font-size:14px;white-space:nowrap}.hero-actions,.detail-actions{flex-wrap:wrap}.hero-actions .trailer-button{font-size:16px;padding:14px 22px}.detail-actions .trailer-button{padding:12px 20px;font-size:13px;border-radius:8px}@media(max-width:700px){.hero-actions{gap:8px}.hero-actions .trailer-button{font-size:12px;padding:12px 15px}.detail-actions .trailer-button{padding:10px 13px;font-size:11px}}

.quality-control{display:flex;align-items:center;gap:9px;color:#aaaab6;font-size:11px;margin-left:auto}.quality-control select{width:auto;max-width:185px;margin:0;border:1px solid #ffffff20;background:#23232b;border-radius:7px;padding:8px 11px;font-size:12px;color:#eee;cursor:pointer}.playback-toolbar{flex-wrap:wrap}@media(max-width:700px){.quality-control{gap:4px}.quality-control>span{display:none}.quality-control select{max-width:140px;font-size:10px;padding:7px}.playback-toolbar strong{display:none}}

#trailer-dialog{width:min(1050px,96vw);max-width:1050px;max-height:94dvh;background:#141419;border:1px solid #ffffff18;border-radius:14px;padding:0;overflow:auto;box-shadow:0 25px 100px #000b}#trailer-dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}.trailer-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px}.trailer-top h2{font-size:16px;margin:0;font-weight:500;color:#eee}.trailer-close{width:30px;height:30px;border:1px solid #ffffff22;border-radius:50%;flex:none;background:#ffffff08;color:white;font-size:13px}#trailer-dialog iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:black}#trailer-dialog>p{font-size:11px;line-height:1.6;color:#888896;margin:14px 22px 18px}@media(max-width:700px){.trailer-top{padding:14px}.trailer-top h2{font-size:13px}#trailer-dialog{border-radius:9px}}

.audio-badge{position:absolute;left:7px;right:7px;top:7px;width:max-content;max-width:calc(100% - 14px);border:1px solid #ffffff20;background:#101016df;backdrop-filter:blur(8px);border-radius:5px;padding:4px 6px;color:#e7e7ef;font-size:8px;font-weight:600;line-height:1.2;letter-spacing:.1px;pointer-events:none;z-index:1}@media(max-width:700px){.audio-badge{font-size:7px;left:5px;right:5px;top:5px;padding:3px 4px;max-width:calc(100% - 10px)}}

.media-track-controls{display:flex;gap:10px;align-items:center}.media-track-controls label{display:flex;align-items:center;gap:6px;font-size:10px;color:#aaaab5}.media-track-controls select{width:auto;max-width:160px;margin:0;border:1px solid #ffffff20;background:#23232b;border-radius:7px;padding:8px 9px;font-size:11px;color:#eee}.media-track-controls select:disabled{opacity:.5;cursor:default}#detail.theatre .playback-toolbar{gap:12px;flex-wrap:wrap}#detail.theatre video{height:calc(100dvh - 160px)}@media(max-width:700px){.media-track-controls{width:100%;justify-content:center;gap:12px}.media-track-controls select{max-width:145px;font-size:10px;padding:7px}.media-track-controls label{font-size:9px}#detail.theatre .playback-toolbar{padding:15px 48px 12px 15px}#detail.theatre video{height:calc(100dvh - 190px)}}

.detail-audio{display:inline-flex;align-items:center;margin-left:10px;padding:4px 9px;border:1px solid #ffffff16;border-radius:5px;background:#ffffff05;color:#8c8c9b;font-size:10px;vertical-align:middle}.detail-audio.confirmed{color:#eeeef4;border-color:#ffffff25;background:#ffffff09}.detail-loading{position:relative;height:430px;overflow:hidden;background:#202027}.detail-loading-image{width:100%;height:100%;object-fit:cover;opacity:.5;filter:blur(2px)}.detail-loading:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#18181d,transparent 95%),linear-gradient(90deg,#0008,transparent)}.detail-loading-content{position:absolute;z-index:1;bottom:35px;left:45px;right:45px}.detail-loading-content h2{font-size:36px;letter-spacing:-1px;margin:13px 0 20px}.detail-loading-status{display:flex;align-items:center;gap:10px;color:#aaaab6;font-size:12px}.detail-loading-status:before{content:"";width:13px;height:13px;border:2px solid #ffffff20;border-top-color:#e9435c;border-radius:50%;animation:source-spin .8s linear infinite}.detail-skeleton{padding:10px 45px 40px;display:grid;gap:12px}.detail-skeleton span{display:block;height:12px;border-radius:5px;background:linear-gradient(90deg,#ffffff05,#ffffff0d,#ffffff05);background-size:200% 100%;animation:detail-shimmer 1.7s ease-in-out infinite}.detail-skeleton span:first-child{width:55%;height:20px;margin-bottom:8px}.detail-skeleton span:last-child{width:78%}@keyframes detail-shimmer{to{background-position:-200% 0}}@media(max-width:700px){.detail-loading{height:330px}.detail-loading-content{left:22px;right:22px;bottom:25px}.detail-loading-content h2{font-size:28px}.detail-skeleton{padding:10px 22px 30px}.detail-audio{margin-left:7px;font-size:9px;padding:3px 7px}}@media(prefers-reduced-motion:reduce){.detail-skeleton span{animation:none}.detail-loading-status:before{animation:none}}

.audio-badge{display:flex;flex-wrap:wrap;gap:4px;background:none;border:0;padding:0;backdrop-filter:none;overflow:visible}.audio-chip{display:inline-block;border-radius:5px;padding:4px 7px;font-size:9px;font-weight:700;line-height:1.3;white-space:nowrap}.audio-chip.dubbed{background:#12492e;color:#8ef0b4;border:1px solid #39966080}.audio-chip.subtitled{background:#514013;color:#ffe38a;border:1px solid #b9903280}.detail-audio.confirmed{background:transparent;border:0;padding:0;gap:5px;flex-wrap:wrap}.detail-audio .audio-chip{font-size:10px;padding:4px 8px}@media(max-width:700px){.audio-badge .audio-chip{font-size:7px;padding:3px 4px}.detail-audio .audio-chip{font-size:9px}}

#grid.search-pending{display:block!important;min-height:340px}.search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:340px;padding:35px 20px 55px;text-align:center;grid-column:1/-1}.search-loading .boot-emblem{width:80px;height:80px}.search-loading .boot-wordmark{font-size:23px;margin-top:16px}.search-loading-text{font-size:12px;color:#9692a2;line-height:1.7;margin:22px 0 0;max-width:100%;overflow-wrap:anywhere}.search-loading .boot-progress{width:110px;margin-top:18px}@media(max-width:700px){#grid.search-pending,.search-loading{min-height:300px}.search-loading .boot-emblem{width:65px;height:65px}.search-loading .boot-wordmark{font-size:21px}}

/* Mobile: prevent focus zoom without disabling pinch zoom. */
@media (max-width:900px),(hover:none) and (pointer:coarse){input,textarea,select,#search,#addon-url,#genre-filter,.episodes-heading select,.quality-control select,.media-track-controls select{font-size:16px!important}.card:hover,.shelf-rail .card:hover,.continue-play:hover img{transform:none!important}.card img,.continue-play img{transform:none!important}.hero-image-layer{transform:none!important}button,a,input,select,textarea{touch-action:manipulation}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}}

html.modal-scroll-locked{overflow:hidden;overscroll-behavior:none}dialog{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}dialog::backdrop{overscroll-behavior:none}dialog .sources,dialog .episode-list{overscroll-behavior:contain}
