.video-upscale { display:flex; flex:1; flex-direction:column; min-width:0; min-height:0; width:100%; margin:0; padding:0; border:0; color:#f2f2f2; background:transparent; font:inherit; color-scheme:dark; }
.video-upscale[hidden], .video-upscale [hidden] { display:none !important; }
.video-upscale *, .video-upscale *::before, .video-upscale *::after { box-sizing:border-box; }
.video-upscale button, .video-upscale select { font:inherit; }
.video-upscale button { cursor:pointer; }
.video-upscale button:disabled, .video-upscale select:disabled { cursor:default; opacity:.45; }
.video-upscale :is(button,input,select):focus-visible { outline:2px solid #f3f3ef; outline-offset:3px; }
.video-upscale svg { width:18px; height:18px; flex:none; }
.video-upscale-form { display:flex; flex:1; flex-direction:column; min-height:0; width:100%; }
.video-upscale-header { display:flex; flex:none; align-items:center; gap:8px; min-height:44px; padding:0 4px 12px; }
.video-upscale-header h2 { flex:1; margin:0; font-size:14px; font-weight:600; line-height:20px; }
.video-upscale-back,.video-upscale-close { display:grid; place-items:center; flex:none; width:32px; height:32px; padding:0; border:0; border-radius:50%; color:#efefeb; background:#ffffff08; }
.video-upscale-back:hover,.video-upscale-close:hover { background:#ffffff14; }
.video-upscale-symbol { display:grid; place-items:center; flex:none; width:32px; height:32px; border-radius:50%; color:#282721; background:#f5f5ef; }
.video-upscale-symbol svg { width:19px; height:19px; }
.video-upscale-close { margin-left:auto; }
.video-upscale-scroll { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; padding:0 0 10px; scrollbar-width:thin; scrollbar-color:#ffffff24 transparent; }
.video-upscale-intro-card { margin:0 0 8px; padding:12px; border:1px solid #ffffff0c; border-radius:14px; background:#ffffff06; }
.video-upscale-intro-card > div { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:12px; }
.video-upscale-intro-card > div > span { color:#aba9a3; font-size:10px; line-height:15px; font-weight:500; letter-spacing:.25px; }
.video-upscale-intro-card button { display:inline-flex; align-items:center; gap:5px; min-height:24px; padding:3px 7px; border:1px solid #ffffff17; border-radius:6px; color:#eee; background:#ffffff03; font-size:10px; line-height:16px; }
.video-upscale-intro-card button svg { width:12px; height:12px; }
.video-upscale-intro-card h3 { margin:0 0 5px; font-size:17px; line-height:23px; font-weight:600; }
.video-upscale-intro-card p { margin:0; color:#b8b5ae; font-size:11px; line-height:17px; }
.video-upscale-source { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:8px; width:100%; min-height:157px; margin:0; padding:15px 10px; border:1px dashed #ffffff1b; border-radius:14px; color:#f0efeb; background:#ffffff04; }
.video-upscale-source:hover { background:#ffffff09; border-color:#ffffff35; }
.video-upscale-source > span { display:grid; place-items:center; width:36px; height:36px; margin-bottom:5px; border-radius:50%; color:#c1c0b9; background:#ffffff0b; box-shadow:inset 0 1px 5px #ffffff0a; }
.video-upscale-source strong { font-size:12px; font-weight:500; line-height:18px; }
.video-upscale-source small { color:#9f9e98; font-size:11px; line-height:16px; }
.video-upscale-preview { overflow:hidden; margin:0; border:1px solid #ffffff10; border-radius:14px; background:#ffffff04; }
.video-upscale-preview video { display:block; width:100%; height:140px; object-fit:contain; background:#0000001c; pointer-events:none; }
.video-upscale-preview > div { display:flex; position:relative; flex-direction:column; gap:4px; padding:10px 40px 10px 11px; }
.video-upscale-preview strong { overflow:hidden; color:#efeee9; font-size:11px; font-weight:500; line-height:16px; white-space:nowrap; text-overflow:ellipsis; }
.video-upscale-preview span { color:#a4a09a; font-size:10px; line-height:15px; }
.video-upscale-preview button { position:absolute; right:9px; top:50%; display:grid; place-items:center; width:26px; height:26px; padding:0; transform:translateY(-50%); border:0; border-radius:7px; color:#b5b2aa; background:#ffffff06; }
.video-upscale-preview button svg { width:14px; height:14px; }
.video-upscale-source-actions { display:flex; gap:7px; margin:8px 0 12px; }
.video-upscale-source-actions button { display:flex; flex:1; align-items:center; justify-content:center; gap:6px; min-width:0; min-height:30px; padding:6px; border:1px solid #ffffff12; border-radius:8px; color:#c6c3bc; background:#ffffff04; font-size:10px; line-height:16px; }
.video-upscale-source-actions button:hover { background:#ffffff0c; }
.video-upscale-source-actions svg { width:13px; height:13px; }
.video-upscale-setting-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:8px; }
.video-upscale-option { display:flex; position:relative; flex-direction:column; justify-content:center; gap:2px; min-width:0; min-height:58px; padding:10px 11px; border:1px solid #ffffff0b; border-radius:13px; background:#ffffff07; }
.video-upscale-option > span:first-child { color:#a5a29c; font-size:11px; line-height:16px; }
.video-upscale-option select { display:block; width:100%; min-width:0; margin:0; padding:0 16px 0 0; border:0; color:#f4f3ed; background:transparent; font-size:13px; line-height:20px; font-weight:550; cursor:pointer; }
.video-upscale-option select option { color:#f2f2ee; background:#38342e; }
.video-upscale-cadence strong { color:#f4f3ed; font-size:13px; line-height:20px; font-weight:550; }
.video-upscale-cadence small { position:absolute; right:11px; bottom:11px; color:#a19e98; font-size:9px; line-height:16px; }
.video-upscale-model { margin-bottom:10px; }
.video-upscale-model-value { display:flex; align-items:center; gap:7px; }
.video-upscale-model-mark { display:block; flex:none; width:12px; height:12px; background:linear-gradient(90deg,transparent 0 33%,#f5f3eb 33% 66%,transparent 66%),linear-gradient(transparent 0 33%,#f5f3eb 33% 66%,transparent 66%); transform:rotate(-45deg); }
.video-upscale-help { margin:0 3px 13px; color:#9b9791; font-size:10px; line-height:16px; }
.video-upscale-status { margin:0 3px 10px; color:#c3beb7; font-size:11px; line-height:17px; }
.video-upscale-error { margin:0 0 10px; padding:10px 11px; border:1px solid #e58b8b28; border-radius:10px; background:#e58b8b08; }
.video-upscale-error p { margin:0; color:#edc1c1; font-size:11px; line-height:17px; }
.video-upscale-error button { margin-top:7px; padding:5px 9px; border:1px solid #ffffff20; border-radius:6px; color:#eee; background:#ffffff08; font-size:11px; }
.video-upscale-footer { display:flex; flex:none; flex-direction:column; gap:8px; margin-top:auto; padding:12px 4px 1px; }
.video-upscale-footer > span { color:#bbb6ad; font-size:10px; line-height:15px; text-align:center; }
.video-upscale:not([data-has-source="true"]) .video-upscale-footer > span { display:none; }
.video-upscale-submit { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:41px; margin:0; padding:9px 10px; border:0; border-radius:10px; color:#11130a; background:#d5ff00; box-shadow:0 3px 0 #8ea400; font-size:14px !important; line-height:20px; font-weight:600 !important; }
.video-upscale-submit:hover:not(:disabled) { background:#e0ff33; }
.video-upscale-submit svg { width:17px; height:17px; fill:currentColor; }
.video-upscale-submit:disabled { color:#242715; background:#d5ff00; opacity:.45; }
.media-library[aria-modal="true"]::backdrop { background:#0008; backdrop-filter:blur(8px); }
@media(max-width:760px) { .video-upscale-header { padding-bottom:14px; } .video-upscale-scroll { padding-bottom:16px; } .video-upscale-source { min-height:175px; } .video-upscale-footer { padding-bottom:max(4px,env(safe-area-inset-bottom)); } }

/* Custom pickers keep the sidebar styling when their menus enter the top layer. */
.video-upscale .video-upscale-picker { display:block; gap:0; padding:0; overflow:visible; }
.video-upscale .video-upscale-select-trigger { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; min-width:0; min-height:58px; margin:0; padding:10px 11px; border:0; border-radius:inherit; color:#f4f3ed; background:transparent; text-align:left; }
.video-upscale .video-upscale-select-trigger:hover:not(:disabled) { background:#ffffff06; }
.video-upscale .video-upscale-select-trigger[aria-expanded="true"] { background:#ffffff07; box-shadow:inset 0 0 0 1px #ffffff1d; }
.video-upscale-select-copy { display:flex; flex:1; flex-direction:column; gap:2px; min-width:0; }
.video-upscale .video-upscale-select-label { display:block; color:#a5a29c; font-size:11px; font-weight:400; line-height:16px; }
.video-upscale .video-upscale-select-value { display:block; overflow:hidden; color:#f4f3ed; font-size:13px; font-weight:550; line-height:20px; white-space:nowrap; text-overflow:ellipsis; }
.video-upscale .video-upscale-select-chevron { width:14px; height:14px; margin-left:auto; color:#deded8; stroke-width:1.8; }
.video-upscale-select-trigger[aria-expanded="true"] .video-upscale-select-chevron { transform:rotate(180deg); }
.video-upscale .video-upscale-model-trigger { min-height:76px; gap:10px; }
.video-upscale-model-copy { display:flex; flex:1; flex-direction:column; gap:3px; min-width:0; }
.video-upscale .video-upscale-model-copy strong { display:block; overflow:hidden; color:#f1f1ed; font-size:12px; font-weight:550; line-height:17px; white-space:nowrap; text-overflow:ellipsis; }
.video-upscale .video-upscale-model-copy small { display:block; overflow:hidden; color:#a4a49e; font-size:11px; font-weight:400; line-height:15px; white-space:nowrap; text-overflow:ellipsis; }
.video-upscale-model-icon { display:grid; place-items:center; flex:none; width:40px; height:40px; overflow:hidden; border-radius:9px; color:#eff0e9; background:#ffffff0b; }
.video-upscale-model-icon > svg { width:24px; height:24px; }
.video-upscale-menu { position:fixed; inset:auto; box-sizing:border-box; min-width:0; max-width:calc(100vw - 16px); max-height:calc(100dvh - 16px); margin:0; padding:7px; overflow:auto; overscroll-behavior:contain; border:1px solid #ffffff24; border-radius:14px; color:#f2f2ee; background:linear-gradient(145deg,#282a29,#202221); box-shadow:0 16px 42px #0008,inset 0 1px 0 #ffffff04; font:inherit; color-scheme:dark; scrollbar-width:thin; scrollbar-color:#ffffff26 transparent; }
.video-upscale-menu[hidden], .video-upscale-menu[popover]:not(:popover-open) { display:none !important; }
.video-upscale-menu:popover-open { display:block; }
.video-upscale-menu-title { margin:0; padding:5px 8px 9px; color:#939a95; font-size:10px; font-weight:400; line-height:15px; letter-spacing:.1px; }
.video-upscale-menu .video-upscale-menu-option { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-width:0; min-height:38px; margin:0; padding:10px 9px; border:0; border-radius:9px; color:#e8eae5; background:transparent; font:inherit; font-size:11px; font-weight:500; line-height:17px; text-align:left; cursor:pointer; }
.video-upscale-menu .video-upscale-menu-option[aria-selected="true"] { background:#ffffff08; }
.video-upscale-menu .video-upscale-menu-option:hover:not(:disabled) { background:#ffffff0d; }
.video-upscale-menu .video-upscale-menu-option:focus-visible { outline:1px solid #ffffff60; outline-offset:-1px; background:#ffffff12; }
.video-upscale-menu .video-upscale-menu-check { flex:none; width:16px; height:16px; margin-left:auto; color:#c8d0c8; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; opacity:0; }
.video-upscale-menu-option[aria-selected="true"] .video-upscale-menu-check { opacity:1; }
.video-upscale-menu .video-upscale-menu-model { display:grid; grid-template-columns:40px minmax(0,1fr) 16px; gap:11px; min-height:70px; padding:9px; border-radius:11px; }
.video-upscale-menu-model .video-upscale-model-copy strong { display:block; overflow:hidden; color:#f5f5f0; font-size:12px; font-weight:500; line-height:17px; white-space:nowrap; text-overflow:ellipsis; }
.video-upscale-menu-model .video-upscale-model-copy small { display:-webkit-box; overflow:hidden; color:#a3aaa3; font-size:11px; font-weight:400; line-height:15px; white-space:normal; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.video-upscale-menu-model .video-upscale-menu-check { color:#d5ff00; }
@media(max-width:760px) { .video-upscale-menu { border-radius:13px; } .video-upscale-menu .video-upscale-menu-option { min-height:42px; } .video-upscale-menu .video-upscale-menu-model { min-height:74px; } }
