:root{--bg:#0d0d0b;--surface:#181818;--surface2:#22221f;--line:#30302b;--text:#f1f1ed;--muted:#a3a39b;--accent:#f4c600;--ink:#171500;--gold:#f4c600}body{background:var(--bg)}.container,.header-inner{max-width:1600px;padding-left:25px;padding-right:25px}.site-header{height:75px;position:sticky;top:0;background:#0e0e0cf5;backdrop-filter:blur(15px);border-bottom-color:#272721}.header-inner{gap:24px}.brand{font-size:21px;color:var(--accent);letter-spacing:0;gap:9px}.brand-mark{width:33px;height:33px;border-radius:8px;font-size:21px}.desktop-nav{gap:22px;flex:none}.desktop-nav a{padding:24px 0;color:#d1d1c8;font-size:14px}.desktop-nav a.active:after{bottom:12px;background:var(--accent)}.top-search{width:auto;flex:1;min-width:170px;max-width:380px;margin-left:auto;border-radius:30px;background:#20201d;border:0;padding:3px 5px 3px 19px;gap:5px}.top-search input{color:var(--text);font-size:13px}.top-search button{width:38px;min-height:35px;padding:7px;background:transparent;color:#ccc;border:0}.top-search button:hover{background:#ffffff0a}.top-search svg,.history-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.header-actions{margin-left:0;gap:16px;font-size:12px}.history-link{display:flex;gap:6px;align-items:center;white-space:nowrap;color:#ccc}.history-link svg{width:19px;height:19px}.avatar-link{border-color:#44443a;border-radius:50%;min-width:33px;height:33px;line-height:31px}.app-banner{display:flex;align-items:center;justify-content:space-between;margin:24px 0 25px;background:#1c1d25;border:1px solid #292b34;padding:13px 19px;border-radius:9px;gap:20px}.app-banner strong{display:block;letter-spacing:1px;font-size:16px;line-height:1.4}.app-banner small{color:#a6a6b4;font-size:11px;display:block;margin-top:2px}.app-banner .primary{border-radius:6px;min-height:36px;font-size:12px;padding:7px 18px;color:#171500}.source-tabs{display:flex;align-items:center;gap:8px;margin:20px 0;overflow:auto}.source-tabs>span{color:var(--muted);font-size:12px;flex:none;padding-right:7px}.source-tabs .selected,.chip.selected{background:#f4c600;color:#171500}.library-heading{margin:20px 0 20px}.library-heading h1{font-size:22px;letter-spacing:0;line-height:1.4;margin:0;display:flex;align-items:center;gap:9px}.library-heading h1:before{content:"";display:block;width:4px;height:20px;border-radius:2px;background:var(--accent)}.library-heading>a{font-size:12px;color:var(--muted)}.poster-grid{gap:25px 25px}.poster-image{background:linear-gradient(145deg,#262937,#151a25);border-radius:13px}.poster-placeholder{color:#62677c;writing-mode:horizontal-tb;font-size:23px;letter-spacing:2px;text-align:center;padding:10px}.poster-card h3{font-size:14px;margin-top:10px}.poster-card p{font-size:11px;color:#898a81}.poster-note{font-size:11px;bottom:10px;left:11px}.poster-shade{inset:60% 0 0}.play-circle{background:var(--accent)}.catalog-filters{margin:24px 0 23px;border:1px solid #2c2b24;border-radius:9px;background:#171714;overflow:hidden}.catalog-filter-row{display:flex;min-height:44px;border-bottom:1px solid #2a2922}.catalog-filter-row>.filter-label{width:70px;display:flex;align-items:center;justify-content:center;background:#11110f;font-size:13px;flex-shrink:0}.catalog-filter-row>div{display:flex;align-items:center;gap:7px;overflow-x:auto;padding:7px 13px;scrollbar-width:thin;scrollbar-color:#4d4931 transparent;min-width:0}.catalog-filter-row .chip{font-size:12px;padding:4px 11px;border-radius:5px}.catalog-filter-row .chip.selected{background:var(--accent);color:var(--ink)}.catalog-filter-row .chip:hover{color:var(--accent);background:#28271e}.catalog-filter-row .chip.selected:hover{color:var(--ink);background:var(--accent)}.catalog-sort{display:flex;gap:0;padding:9px 12px}.catalog-sort a{padding:7px 19px;border-radius:5px;font-size:12px;color:#c8c8be;margin-right:12px}.catalog-sort a.selected{background:var(--accent);color:var(--ink)}.active-source-type{display:flex;justify-content:space-between;padding:9px 16px;font-size:12px;color:var(--muted)}.site-footer{margin-top:45px;padding:28px 0 23px;border-top:1px solid #24241d;font-size:11px}.site-footer .container{display:flex;align-items:center;justify-content:space-between;gap:20px}.site-footer .footer-links{margin:0;font-size:11px;gap:20px}.mobile-bottom-nav{display:none}.history-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:35px 0 20px}.history-heading h1{font-size:27px;letter-spacing:0;margin-bottom:9px}.history-heading p{font-size:12px;margin:0}.history-heading button{font-size:12px}.history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:35px}.history-card{position:relative;display:grid;grid-template-columns:90px minmax(0,1fr);gap:15px;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:13px}.history-cover{display:block;width:90px;height:128px;overflow:hidden;border-radius:7px;background:#262937}.history-cover img{width:100%;height:100%;object-fit:cover}.history-info{min-width:0;display:flex;flex-direction:column;justify-content:center}.history-info h2{font-size:15px;margin:0 25px 7px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-info p{font-size:11px;color:var(--muted);margin:3px 0}.history-progress{height:3px;background:#333228;border-radius:3px;overflow:hidden;margin:9px 0}.history-progress span{display:block;background:var(--accent);height:100%}.history-info>a{font-size:12px;color:var(--accent);margin-top:5px}.history-remove{position:absolute;right:6px;top:5px;border:0;background:transparent;min-height:25px;padding:0 7px;color:var(--muted);font-size:20px}.history-empty{grid-column:1/-1;text-align:center;padding:70px 10px;color:var(--muted)}.excluded-category-row{opacity:.55}.excluded-category-row>td:first-child{text-decoration:line-through}.video-intro .eyebrow,.eyebrow{color:var(--accent)}.episode.current{color:var(--accent);border-color:var(--accent);background:#f4c6000a}.pill{color:var(--accent);background:#f4c60012}.primary:hover{background:#ffdb43;border-color:#ffdb43;color:#171500}.comment-avatar,.large-avatar{background:#f4c60012;border-color:#f4c60030;color:var(--accent)}.admin-nav a.active{background:#f4c60010;color:var(--accent)}.notice{color:#e3d390;background:#f4c60008;border-color:#f4c60030}.notice.error{color:var(--danger);background:#f4a29a0a;border-color:#f4a29a45}.toast{background:#f5e9b4;color:#211c08}.source-warning{color:#e3c86b}.admin-main input:focus,.admin-main textarea:focus{border-color:var(--accent)}
@media(max-width:1350px){.header-inner{gap:18px}.desktop-nav{gap:15px}.desktop-nav a{font-size:13px}.top-search{max-width:300px;min-width:150px}.header-actions{gap:11px}.history-link span{display:none}.brand{font-size:20px}.history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.desktop-nav{gap:10px}.header-inner{gap:12px}.header-actions .vip-link{display:none}.brand{font-size:18px}.brand-mark{width:30px;height:30px;font-size:19px}.top-search{max-width:300px}.poster-grid{gap:23px 18px}}
@media(max-width:850px){.desktop-nav{display:none}.history-link span{display:inline}.header-actions .vip-link{display:inline}.top-search{max-width:450px}.container,.header-inner{padding-left:20px;padding-right:20px}}
@media(max-width:700px){body{padding-bottom:calc(65px + env(safe-area-inset-bottom))}.container,.header-inner{padding-left:14px;padding-right:14px}.site-header{height:112px;top:0;background:#0e0e0cfa}.header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:48px 49px;gap:0 12px;padding-top:5px;padding-bottom:8px}.brand{font-size:20px;gap:8px}.brand-mark{width:28px;height:28px;font-size:18px;border-radius:7px}.header-actions{grid-column:2;grid-row:1;gap:13px}.header-actions .vip-link{display:none}.history-link{font-size:11px;gap:4px}.history-link span{display:inline}.history-link svg{width:17px;height:17px}.avatar-link{font-size:10px;width:29px;min-width:29px;height:29px;line-height:27px}.top-search{grid-row:2;grid-column:1/-1;margin:0;max-width:none;width:100%;padding:3px 5px 3px 15px;height:39px;align-self:end}.top-search input{font-size:12px}.top-search button{width:35px;min-height:31px;padding:6px}.top-search svg{width:19px;height:19px}.app-banner{margin:15px 0 21px;padding:11px 13px;border-radius:8px;gap:12px}.app-banner strong{font-size:14px}.app-banner small{font-size:10px}.app-banner .primary{font-size:11px;min-height:32px;padding:5px 13px}.library-heading{margin:20px 0 15px}.library-heading h1{font-size:19px;gap:8px}.library-heading h1:before{height:17px;width:3px}.library-heading>a{font-size:10px}.poster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px 11px}.poster-image{border-radius:9px}.poster-card h3{font-size:12px;margin-top:8px}.poster-card p{font-size:9px}.poster-note{font-size:9px;left:7px;bottom:7px}.source-tabs{margin:13px 0;gap:3px}.source-tabs>span{font-size:10px}.source-tabs .chip{font-size:11px;padding:4px 10px}.catalog-filters{margin:18px 0;border-radius:8px}.catalog-filter-row{min-height:40px}.catalog-filter-row>.filter-label{width:44px;font-size:11px}.catalog-filter-row>div{padding:6px 8px;gap:4px;scrollbar-width:none}.catalog-filter-row .chip{font-size:11px;padding:4px 9px}.catalog-sort{padding:8px 8px;justify-content:space-between}.catalog-sort a{font-size:11px;padding:5px 13px;margin-right:0}.active-source-type{padding:8px 11px;font-size:10px}.mobile-bottom-nav{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));align-items:center;position:fixed;bottom:0;left:0;right:0;padding:6px 4px calc(6px + env(safe-area-inset-bottom));min-height:62px;background:#141411f7;border-top:1px solid #35332a;backdrop-filter:blur(18px);z-index:50}.mobile-bottom-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;color:#919187;font-size:10px;line-height:1.3;padding:3px 0}.mobile-bottom-nav a.active{color:var(--accent)}.mobile-bottom-nav svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.site-footer{margin-top:28px;padding:23px 0;font-size:10px}.site-footer .container{display:block;text-align:center}.site-footer .footer-links{justify-content:center;gap:17px;font-size:10px;margin:10px 0 0}.history-heading{padding:25px 0 20px;gap:10px}.history-heading h1{font-size:24px}.history-heading p{font-size:10px}.history-heading button{font-size:10px;padding:5px 10px;min-height:31px;flex:none}.history-grid{grid-template-columns:1fr;gap:12px}.history-card{grid-template-columns:76px minmax(0,1fr);padding:11px;gap:13px}.history-cover{width:76px;height:108px}.history-info h2{font-size:14px}.history-info p{font-size:10px}.history-info>a{font-size:11px}.history-empty{padding:55px 0}.toast{bottom:calc(77px + env(safe-area-inset-bottom))}.player-shell{margin-left:-14px;width:calc(100% + 28px);border-radius:0}.admin-container{padding-bottom:0}}

.player-diagnostics{font-size:12px;color:var(--muted);margin:8px 0}.player-diagnostics summary{cursor:pointer}.player-diagnostics pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;background:var(--surface);max-height:220px;overflow:auto}
@media(min-width:1025px){.desktop-nav{gap:16px}.top-search{max-width:270px}}

.ai-video-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;z-index:1;clip-path:inset(0 0 52px 0)}.ai-video-layer[hidden]{display:none}#aiQuality[aria-pressed="true"]{color:var(--accent);border-color:var(--accent)}.player-toolbar>div{flex-wrap:wrap}.dm-overlay{z-index:2}.player-status{z-index:3}
/* 1.1: Player controls are visually and functionally part of the player. */
.bilibili-shell{background:#070913;border:1px solid #273045;box-shadow:0 15px 45px #0006;border-radius:15px;isolation:isolate}
.bilibili-shell video{cursor:pointer}
.bilibili-shell .player-toolbar{position:absolute;left:0;right:0;bottom:0;z-index:7;display:block;padding:27px 13px 7px;margin:0;background:linear-gradient(transparent,#02040ae8 35%,#02040af5 100%);color:#fafcff;opacity:.98;transition:opacity .2s}
.bilibili-shell:not(:hover) .player-toolbar{opacity:.92}
.player-seek-row{display:block!important;width:100%;height:14px}
.player-seek-row input{display:block;width:100%;height:4px;margin:5px 0 10px;cursor:pointer;accent-color:#00a1d6;border:0;padding:0;background:transparent}
.player-toolbar-main{display:flex!important;align-items:center;gap:6px!important;width:100%;flex-wrap:nowrap!important;min-width:0}
.bilibili-shell .player-toolbar button{min-height:32px;flex-shrink:0;background:transparent!important;border:0!important;border-radius:7px;padding:3px 8px;color:#f6f9ff;font-size:12px;font-weight:550}
.bilibili-shell .player-toolbar button:hover{background:#ffffff1d!important;color:#79d8ff}
.bilibili-shell #videoTogglePlay{font-size:19px;color:#91dfff}
.player-time{font-variant-numeric:tabular-nums;font-size:11px;color:#c9d1e3;white-space:nowrap}
.player-controls-spacer{flex:1}
.player-volume{display:flex;flex-direction:row;align-items:center;gap:4px;margin:0;color:#cbd5e9}
.player-volume input{width:65px;min-width:45px;height:4px;padding:0;accent-color:#00a1d6;border:0}
.player-toolbar .dm-control{display:flex;margin:0 2px;align-items:center;color:#e6edf9;font-size:11px;white-space:nowrap}
.player-toolbar .dm-control input{accent-color:#00a1d6;width:15px;height:15px}
.bilibili-shell .player-settings{position:absolute;bottom:87px;right:13px;z-index:8;background:#111726f5;border:1px solid #344258;border-radius:13px;padding:17px 19px;width:min(310px,calc(100% - 26px));box-shadow:0 14px 40px #000a;backdrop-filter:blur(20px);color:#ecf5ff}
.bilibili-shell .player-settings[hidden]{display:none!important}
.player-settings strong{font-size:14px;color:#d4eeff}
.player-settings label{display:block;color:#cad6e8;font-size:12px;margin:13px 0}
.player-settings output{float:right;color:#65ceff}
.player-settings input{display:block;width:100%;height:5px;border:0;padding:0;margin:9px 0;accent-color:#00a1d6;background:transparent}
.player-settings p{font-size:10px;line-height:1.5;margin:4px 0;max-height:42px;overflow:hidden}
.bilibili-shell .dm-overlay{inset:0 0 82px;opacity:.85;overflow:hidden}
.bilibili-shell .danmaku{font-size:clamp(14px,1.9vw,21px);font-weight:750;text-shadow:-1px -1px 2px #000,1px -1px 2px #000,-1px 1px 2px #000,1px 1px 3px #000;animation-name:danmaku;animation-duration:var(--dm-duration,10s);animation-timing-function:linear;pointer-events:none;line-height:1.5}
.bilibili-shell .ai-video-layer{z-index:1;clip-path:inset(0 0 0 0)}
.captcha-line{display:flex;align-items:center;gap:10px;margin-top:9px}.captcha-line input{flex:1;width:40%}.captcha-line img{display:block;width:146px;height:48px;cursor:pointer;border-radius:9px;border:1px solid #415263;background:#111726}.account-post-list{display:grid;gap:10px}.account-post{border-bottom:1px solid var(--line);padding:9px 0}.account-post>a{font-weight:600}.account-post>span{display:block;font-size:11px}.account-post p{margin:4px 0 8px;overflow-wrap:anywhere}
@media(max-width:850px){.bilibili-shell .player-toolbar{padding:15px 5px 5px}.player-toolbar-main{gap:1px!important}.bilibili-shell .player-toolbar button{font-size:10px;padding:3px 5px}.player-time{font-size:9px}.player-volume,.bilibili-shell #seekBack,.bilibili-shell #seekForward{display:none!important}.bilibili-shell .player-toolbar .dm-control{font-size:10px}.bilibili-shell #aiQuality{font-size:9px}.bilibili-shell .player-settings{bottom:69px}.bilibili-shell .dm-overlay{inset:0 0 65px}}

.bilibili-shell .speed-select{display:flex;margin:0;align-items:center}.bilibili-shell .player-toolbar select{width:76px;padding:4px 1px;min-height:28px;font-size:11px;border:none;background:#09121ab8;color:#f4f6fa;cursor:pointer;box-shadow:none}.bilibili-shell .player-toolbar option{background:#101925;color:#fff}
@media(max-width:600px){.bilibili-shell .player-toolbar select{width:50px;font-size:9px}.bilibili-shell .speed-select{display:block}}

/* 1.1.2 playback buffering and danmaku arrival. */
.bilibili-shell .player-seek-row{position:relative}
.bilibili-shell .video-buffered-track{position:absolute;left:0;top:5px;height:4px;width:0;background:#9ca7b18c;border-radius:4px;pointer-events:none;z-index:1;transition:width .15s}
.bilibili-shell #videoProgress{position:relative;z-index:2}
.bilibili-shell .buffer-state{font-variant-numeric:tabular-nums;color:#91a7b8;font-size:10px;white-space:nowrap;min-width:62px}
.bilibili-shell .dm-arrival{position:absolute;top:16px;right:16px;z-index:5;pointer-events:none;color:#fff;border-radius:25px;padding:7px 13px;background:rgba(10,17,30,.65);border:1px solid #9aafc345;font-size:13px;box-shadow:0 3px 12px #0005}
.bilibili-shell .dm-arrival[hidden]{display:none!important}
@media(max-width:850px){.bilibili-shell .buffer-state{font-size:9px;min-width:auto}.bilibili-shell .dm-arrival{top:9px;right:9px;padding:5px 9px;font-size:11px}}

.bilibili-shell #videoProgress::-webkit-slider-runnable-track{height:4px;border-radius:5px;background:linear-gradient(to right,#00a1d6 0 var(--played,0%),#9ca7b1 var(--played,0%) var(--buffered,0%),#354254 var(--buffered,0%) 100%)}
.bilibili-shell #videoProgress::-moz-range-track{height:4px;border-radius:5px;background:linear-gradient(to right,#00a1d6 0 var(--played,0%),#9ca7b1 var(--played,0%) var(--buffered,0%),#354254 var(--buffered,0%) 100%)}

/* v1.1.3: cursor-out auto hide, keyboard-visible focus remains reachable. */
.bilibili-shell .player-toolbar{transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.bilibili-shell.controls-hidden .player-toolbar{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(14px)}
.bilibili-shell.controls-hidden .player-settings{display:none!important}
.bilibili-shell .player-toolbar:focus-within{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
@media(hover:none){.bilibili-shell .player-toolbar{transition-duration:.15s}}

/* v1.1.4 - Mobile-first external options + fullscreen gesture controls */
.player-column>.player-outside-controls{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:12px 0 0;padding:11px 12px;background:#141b24;border:1px solid #2b3747;border-radius:12px;color:#d6e5f5}
.player-outside-controls button{border-color:#364557;background:#202b39;color:#e7f0ff;font-size:12px;min-height:35px;padding:6px 11px;border-radius:8px;white-space:nowrap}
.player-outside-controls button:hover{color:#8bd9ff;background:#2b394c}
.player-outside-controls .speed-select{display:flex;align-items:center;gap:7px;min-width:0;color:#d6e5f5;font-size:12px;white-space:nowrap}
.player-outside-controls select{width:auto;min-width:66px;min-height:35px;padding:5px 9px;color:#f1f6ff;background:#202b39;border:1px solid #364557;border-radius:8px;font-size:12px}
.player-outside-controls .dm-control{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#e7f0ff;white-space:nowrap;margin:0 2px;cursor:pointer}
.player-outside-controls .dm-control input{height:16px;width:16px;accent-color:#00a1d6}
.player-column>.player-outside-settings{background:#171f2a;border:1px solid #324357;border-radius:12px;margin:8px 0 12px;padding:15px 17px;color:#eef5ff;box-shadow:0 8px 24px #0004}
.player-outside-settings[hidden]{display:none!important}
.player-outside-settings strong{display:block;font-size:13px;color:#9cdfff;margin-bottom:9px}
.player-outside-settings label{display:block;color:#c5d5e7;font-size:12px;margin:12px 0}
.player-outside-settings output{float:right;color:#8ad8ff}
.player-outside-settings input[type=range]{display:block;width:100%;max-width:520px;height:16px;margin:7px 0;padding:0;border:0;background:transparent;accent-color:#00a1d6}
.player-outside-settings p{font-size:11px;margin:5px 0;color:#a9b9cb}
.bilibili-shell .video-gesture-surface{position:absolute;inset:0;z-index:4;touch-action:none;user-select:none;-webkit-user-select:none;cursor:pointer;background:transparent;outline:0}
.bilibili-shell .video-gesture-surface:focus-visible{box-shadow:inset 0 0 0 2px #70bce7}
.bilibili-shell .player-toolbar{z-index:10}
.bilibili-shell .dm-arrival{z-index:6}
.bilibili-shell .player-status{z-index:6;pointer-events:none}
.bilibili-shell .gate{z-index:12}
.bilibili-shell .gesture-tip{position:absolute;z-index:11;left:50%;top:48%;transform:translate(-50%,-50%);pointer-events:none;background:#070d17b8;color:#fff;padding:12px 16px;border-radius:10px;font-size:15px;white-space:nowrap;max-width:94%;text-align:center}
.bilibili-shell .sound-start{position:absolute;z-index:9;top:55%;left:50%;transform:translate(-50%,-50%);background:#00a1d6;color:white;border:0;border-radius:24px;padding:9px 20px;font-size:14px;white-space:nowrap}
.bilibili-shell .sound-start[hidden],.bilibili-shell .gesture-tip[hidden]{display:none!important}
.bilibili-shell .dm-overlay{inset:0 0 60px;z-index:2}
.bilibili-shell .player-toolbar .player-volume{display:flex!important}
.bilibili-shell #toggleMute{display:inline-flex!important;font-size:18px;min-width:30px}
.bilibili-shell #fullScreen{font-size:13px;min-height:36px;min-width:72px}
.bilibili-shell:fullscreen,.bilibili-shell:-webkit-full-screen{aspect-ratio:auto!important;width:100vw!important;height:100dvh!important;max-height:none!important;background:#000!important;border:0!important;border-radius:0!important;overflow:hidden}
.bilibili-shell:fullscreen video,.bilibili-shell:-webkit-full-screen video{width:100%!important;height:100%!important;object-fit:contain!important}
.bilibili-shell:fullscreen .player-toolbar,.bilibili-shell:-webkit-full-screen .player-toolbar{padding:35px max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;bottom:0!important}
.bilibili-shell:fullscreen .player-seek-row,.bilibili-shell:-webkit-full-screen .player-seek-row{min-height:23px;display:block!important}
.bilibili-shell:fullscreen .player-time,.bilibili-shell:-webkit-full-screen .player-time{font-size:13px}
.bilibili-shell:fullscreen .player-controls-spacer,.bilibili-shell:-webkit-full-screen .player-controls-spacer{flex:1}
.bilibili-shell:fullscreen #fullScreen,.bilibili-shell:-webkit-full-screen #fullScreen{min-width:90px}
@media(max-width:700px){
  .player-column>.player-outside-controls{gap:7px;margin-top:9px;padding:10px 9px}
  .player-outside-controls button{padding:5px 9px;font-size:11px;min-height:33px}
  .player-outside-controls select{font-size:11px;min-height:33px;min-width:58px;padding:4px 6px}
  .bilibili-shell .player-toolbar{padding:20px 7px 7px!important}
  .bilibili-shell .player-toolbar-main{gap:4px!important}
  .bilibili-shell .player-toolbar .player-volume{display:none!important}
  .bilibili-shell .player-toolbar #seekBack,.bilibili-shell .player-toolbar #seekForward{display:none!important}
  .bilibili-shell .player-time{font-size:10px}
  .bilibili-shell #fullScreen{padding:3px 10px;font-size:12px;min-width:66px}
  .bilibili-shell .buffer-state{font-size:9px}
}
@media(hover:fine) and (pointer:fine){
  .bilibili-shell .video-gesture-surface{pointer-events:none}
}

/* v1.1.5 ranking, aggregation, mobile fullscreen episodes, outside skip options */
.source-badge{position:absolute;top:10px;right:9px;background:#0078a9e8;color:white;font-size:10px;padding:3px 7px;border-radius:6px;z-index:2}
.alternate-sources{display:flex;gap:9px;align-items:center;flex-wrap:wrap;background:#111d29;border:1px solid #27394b;padding:10px 14px;margin:12px 0;border-radius:10px}
.alternate-sources strong{font-size:12px;color:#b6d9fa;margin-right:8px}
.rank-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:13px 0}
.ranking-hero{margin:30px 0 8px}.ranking-hero h1{margin-bottom:9px}
.rank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}
.rank-card{display:flex;align-items:center;gap:14px;background:#121e2b;border:1px solid #273446;border-radius:12px;padding:11px;min-width:0}
.rank-number{font-weight:800;font-size:24px;color:#89cced;min-width:35px;text-align:center}
.rank-card:nth-child(-n+3) .rank-number{color:#f2cf8e}
.rank-poster{width:65px;height:90px;border-radius:7px;overflow:hidden;flex-shrink:0;background:#243448}
.rank-poster img{width:100%;height:100%;object-fit:cover}
.rank-content{min-width:0;display:flex;flex-direction:column;gap:5px}
.rank-content strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rank-content span,.rank-content small{font-size:11px;color:#97afc3}
.skip-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px;align-items:center}
.skip-options label{margin:8px 0}.skip-options .skip-check{display:flex;align-items:center;gap:8px;flex-direction:row}
.skip-options input[type=number]{max-width:160px;padding:7px 9px}.skip-options input[type=checkbox]{width:17px;height:17px}
.bilibili-shell .full-extra-controls{display:none;position:absolute;right:16px;top:16px;z-index:13;gap:7px}
.bilibili-shell.is-fullscreen .full-extra-controls,.bilibili-shell.pseudo-fullscreen .full-extra-controls{display:flex}
.bilibili-shell .full-extra-controls[hidden]{display:none!important}
.bilibili-shell .full-extra-controls button,.full-episode-drawer button{color:white;background:#071728b9;border:1px solid #b6d9fa55;padding:5px 10px;border-radius:7px;min-height:36px}
.bilibili-shell .full-episode-drawer{position:absolute;right:0;top:0;bottom:0;width:min(380px,83vw);z-index:16;background:#091523f2;box-shadow:-8px 0 30px #000a;padding:17px;overflow-y:auto;overscroll-behavior:contain}
.bilibili-shell .full-episode-drawer[hidden]{display:none!important}
.full-episode-drawer-header{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px}
.full-episode-drawer-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:18px}
.full-episode-drawer-list>a{display:block;text-align:center;padding:8px 3px;font-size:11px;border-radius:6px;background:#192f43;color:#e3f2ff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.full-episode-drawer-list>a.selected{background:#007daf}
.full-episode-line{grid-column:1/-1;margin-top:10px;color:#b9d1e6}
.player-shell.pseudo-fullscreen{position:fixed!important;inset:0!important;height:100dvh!important;width:100vw!important;max-height:none!important;aspect-ratio:auto!important;z-index:99999!important;margin:0!important;border-radius:0!important}
.player-shell.pseudo-fullscreen video{height:100%!important}
body.player-has-pseudo-fullscreen{overflow:hidden!important}
.bilibili-shell.is-fullscreen .player-toolbar,.bilibili-shell.pseudo-fullscreen .player-toolbar{z-index:12}
.bilibili-shell.is-fullscreen .full-episode-drawer,.bilibili-shell.pseudo-fullscreen .full-episode-drawer{pointer-events:auto}
@media(max-width:700px){.rank-grid{grid-template-columns:1fr}.rank-number{font-size:19px;min-width:28px}.rank-poster{width:56px;height:78px}.skip-options{grid-template-columns:1fr 1fr}.bilibili-shell .video-gesture-surface{pointer-events:auto!important}.bilibili-shell .full-extra-controls{right:9px;top:9px}.full-episode-drawer-list{grid-template-columns:repeat(3,minmax(0,1fr))}}

.player-outside-controls .player-feedback{color:#ffdaad;border-color:#f9a64e55;background:#7d4b201c}
.player-outside-controls .player-feedback[hidden]{display:none!important}
.player-outside-controls .player-feedback:disabled{opacity:.5}

/* v1.1.7: one timeline; speed, settings and fullscreen aligned after volume. */
.bilibili-shell .player-seek-row{height:18px!important}
.bilibili-shell .player-seek-row input{height:8px!important;margin:5px 0 5px!important}
.bilibili-shell #videoProgress{width:100%;appearance:none;-webkit-appearance:none;background:transparent!important}
.bilibili-shell #videoProgress::-webkit-slider-runnable-track{height:6px!important;border-radius:6px!important;background:linear-gradient(90deg,#00a1d6 0 var(--played,0%),#8b99ab var(--played,0%) var(--buffered,0%),#354254 var(--buffered,0%) 100%)!important}
.bilibili-shell #videoProgress::-moz-range-track{height:6px!important;border-radius:6px!important;background:linear-gradient(90deg,#00a1d6 0 var(--played,0%),#8b99ab var(--played,0%) var(--buffered,0%),#354254 var(--buffered,0%) 100%)!important}
.bilibili-shell .player-toolbar-main{display:flex;align-items:center;gap:7px;flex-wrap:nowrap!important;min-width:0}
.bilibili-shell .player-toolbar-main #toggleMute{flex-shrink:0}
.bilibili-shell .player-toolbar-main .speed-select{display:flex;align-items:center;gap:3px;white-space:nowrap;flex-shrink:0;font-size:11px}
.bilibili-shell .player-toolbar-main #playerSettingsButton,.bilibili-shell .player-toolbar-main #fullScreen{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;flex-shrink:0;min-width:0;padding:5px 8px;font-size:12px}
.bilibili-shell .player-toolbar-main .player-time{white-space:nowrap}
.bilibili-shell .player-toolbar-main .buffer-state{font-size:9px;min-width:0}
.bilibili-shell .player-outside-settings{position:absolute;bottom:78px;right:12px;z-index:20;background:#171f2af5;border:1px solid #324357;border-radius:12px;padding:14px;max-height:65%;overflow:auto;width:min(390px,calc(100% - 24px));box-shadow:0 8px 26px #0008}
.bilibili-shell .player-outside-settings[hidden]{display:none!important}
.bilibili-shell .player-outside-settings strong{display:block;font-size:13px;color:#9cdfff}
.bilibili-shell .player-outside-settings label{display:block;color:#e1eaf5;font-size:12px;margin:9px 0}
.bilibili-shell .player-outside-settings input[type=range]{display:block;width:100%;max-width:100%;accent-color:#00a1d6}
.bilibili-shell .player-outside-settings input[type=number]{max-width:90px}
.bilibili-shell .player-outside-settings output{float:right}
@media(max-width:700px){
 .bilibili-shell .player-toolbar-main{gap:2px!important}
 .bilibili-shell .player-toolbar-main .buffer-state{display:none}
 .bilibili-shell .player-toolbar-main .player-time{font-size:9px}
 .bilibili-shell .player-toolbar-main .speed-select{font-size:0}
 .bilibili-shell .player-toolbar-main .speed-select select{width:49px!important;font-size:10px!important}
 .bilibili-shell .player-toolbar-main #playerSettingsButton{font-size:0;padding:4px 5px;min-width:28px}
 .bilibili-shell .player-toolbar-main #playerSettingsButton::first-letter{font-size:16px}
 .bilibili-shell .player-toolbar-main #fullScreen{font-size:10px;min-width:45px;padding:4px 5px}
 .bilibili-shell .player-outside-settings{bottom:65px}
}

/* Fullscreen episode controls remain alongside volume, speed and fullscreen. */
.bilibili-shell .player-toolbar-main .full-extra-controls{position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;z-index:auto;flex-shrink:0;align-items:center;gap:4px}
.bilibili-shell .player-toolbar-main .full-extra-controls button{font-size:11px;min-height:29px;padding:4px 6px;border-radius:6px;white-space:nowrap}
.bilibili-shell .player-toolbar-main .full-extra-controls[hidden]{display:none!important}
@media(max-width:700px){.bilibili-shell .player-toolbar-main .full-extra-controls{gap:2px}.bilibili-shell .player-toolbar-main .full-extra-controls button{font-size:10px;min-height:26px;padding:3px 4px}.bilibili-shell .player-toolbar-main #playerSettingsButton .settings-label{display:none}}
