@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&display=swap";:root{--bg-dark:#0a0c10;--bg-player:#050608;--bg-card:#12161eb3;--bg-hover:#1e2633cc;--bg-overlay:#0a0c10d9;--primary:#66fcf1;--primary-glow:#66fcf14d;--primary-hover:#8efef7;--primary-dark:#45a29e;--accent-purple:#bb86fc;--accent-purple-glow:#bb86fc4d;--text-main:#f3f4f6;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--text-dark:#475569;--border:#ffffff14;--border-light:#ffffff26;--border-glow:#66fcf140;--shadow:0 10px 30px -10px #000000b3;--shadow-glow:0 0 25px #66fcf11f;--shadow-purple:0 0 25px #bb86fc1f;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Outfit", var(--font-sans);font-family:var(--font-sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--bg-dark);color:var(--text-main);box-sizing:border-box}*,:before,:after{box-sizing:inherit}body{background-color:var(--bg-dark);background-image:radial-gradient(at 10% 20%,#66fcf108 0,#0000 50%),radial-gradient(at 90% 80%,#bb86fc08 0,#0000 50%);background-attachment:fixed;min-height:100vh;margin:0;padding:0;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:var(--text-dark);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-main);letter-spacing:-.02em;margin:0 0 .5em;font-weight:600}a{color:var(--primary);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-hover)}button{cursor:pointer;color:inherit;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;transition:all .2s;display:inline-flex}input,select{font-family:inherit;font-size:inherit;color:inherit}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px}.glass-panel-glow{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-glow);box-shadow:var(--shadow-glow);border-radius:16px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 15px #66fcf11a}50%{box-shadow:0 0 25px #66fcf140}}input[type=range]{appearance:none;cursor:pointer;background:0 0}input[type=range]:focus{outline:none}input[type=range]::-webkit-media-slider-container{height:4px}input[type=range]::-webkit-slider-runnable-track{background:var(--text-dark);border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background-color:var(--primary);width:12px;height:12px;box-shadow:0 0 10px var(--primary-glow);border-radius:50%;margin-top:-4px;transition:transform .1s}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.3)}input[type=range]::-moz-range-track{background:var(--text-dark);border-radius:2px;height:4px}input[type=range]::-moz-range-thumb{background-color:var(--primary);width:12px;height:12px;box-shadow:0 0 10px var(--primary-glow);border:none;border-radius:50%;transition:transform .1s}input[type=range]::-moz-range-thumb:hover{transform:scale(1.3)}.app-layout{background-color:var(--bg-dark);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#0a0c10cc;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:relative}.logo-section{align-items:center;gap:12px;display:flex}.logo-section h1{background:linear-gradient(135deg, var(--primary), var(--accent-purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:6px;margin:0;font-size:24px;font-weight:700;display:flex}.logo-section h1 span{background:var(--primary-glow);color:var(--primary);border:1px solid var(--border-glow);-webkit-text-fill-color:var(--primary);border-radius:12px;padding:2px 8px;font-size:14px}.controls-header{align-items:center;gap:16px;display:flex}.lang-selector-group{border:1px solid var(--border);background:#ffffff08;border-radius:20px;align-items:center;gap:8px;padding:4px 12px;display:flex}.lang-select{color:var(--text-main);cursor:pointer;background:0 0;border:none;outline:none;padding:4px 6px;font-weight:500}.lang-select option{background:var(--bg-dark);color:var(--text-main)}.lang-arrow{color:var(--text-muted);font-size:14px}.main-container{flex:1;display:flex;position:relative;overflow:hidden}.content-area{flex-direction:column;flex:1;align-items:center;padding:24px;display:flex;overflow-y:auto}.dropzone-container{flex-direction:column;gap:20px;width:100%;max-width:800px;margin:auto;animation:.4s slideUp;display:flex}.dropzone{border:2px dashed var(--border);text-align:center;background:var(--bg-card);cursor:pointer;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 40px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.dropzone:hover,.dropzone.drag-active{border-color:var(--primary);box-shadow:var(--shadow-glow);background:#66fcf105}.dropzone.drag-active{transform:scale(1.02)}.dropzone-icon{color:var(--primary);background:var(--primary-glow);box-shadow:0 0 20px var(--primary-glow);border-radius:50%;justify-content:center;align-items:center;padding:16px;display:flex}.dropzone-text h3{margin-bottom:8px;font-size:20px}.dropzone-text p{color:var(--text-muted);font-size:14px}.file-btn{background:var(--primary-glow);border:1px solid var(--border-glow);color:var(--primary);border-radius:20px;margin-top:8px;padding:10px 24px;font-weight:600;transition:all .2s}.file-btn:hover{background:var(--primary);color:var(--bg-dark);box-shadow:0 0 15px var(--primary-glow)}.upload-options-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:12px;padding:20px;display:flex}.upload-options-card h4{color:var(--text-secondary);margin:0;font-size:16px}.sample-row{flex-wrap:wrap;gap:12px;display:flex}.sample-btn{border:1px solid var(--border);color:var(--text-secondary);background:#ffffff08;border-radius:12px;padding:8px 16px;font-size:14px;font-weight:500}.sample-btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.player-wrapper{flex-direction:column;gap:16px;width:100%;max-width:960px;margin:auto;animation:.4s fadeIn;display:flex}.player-card{background:var(--bg-player);border:1px solid var(--border);width:100%;box-shadow:var(--shadow);border-radius:16px;position:relative;overflow:hidden}.video-container{width:100%;padding-bottom:56.25%;position:relative;overflow:hidden}.video-element{object-fit:contain;width:100%;height:100%;position:absolute;top:0;left:0}.subtitle-overlay{pointer-events:none;z-index:5;justify-content:center;display:flex;position:absolute;bottom:12%;left:5%;right:5%}.subtitle-cue-box{-webkit-backdrop-filter:blur(4px);text-align:center;pointer-events:auto;background:#000000a6;border:1px solid #ffffff0d;border-radius:8px;max-width:85%;padding:8px 18px;box-shadow:0 4px 15px #00000080}.subtitle-line{color:#fff;text-shadow:0 2px 4px #000c;font-size:20px;font-weight:500;line-height:1.5;font-family:var(--font-sans)}@media (width<=768px){.subtitle-line{font-size:16px}}.subtitle-word-token{cursor:pointer;border-radius:4px;padding:0 2px;transition:all .15s;display:inline-block;position:relative}.subtitle-word-token:hover{background:var(--primary-glow);color:var(--primary);transform:scale(1.05)}.subtitle-word-token.active-translating{background:var(--accent-purple-glow);color:var(--accent-purple);box-shadow:0 0 8px var(--accent-purple-glow)}.subtitle-punctuation-token{white-space:pre-wrap;display:inline}.custom-controls{-webkit-backdrop-filter:blur(20px);opacity:0;z-index:6;box-sizing:border-box;cursor:grab;-webkit-user-select:none;user-select:none;background:#0a0c10a6;border:none;border-radius:16px;width:calc(100% - 32px);max-width:1200px;padding:14px 20px;transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),max-width .3s cubic-bezier(.4,0,.2,1);position:absolute;top:16px;left:50%;transform:translate(-50%)translateY(-10px);box-shadow:0 10px 40px #0006,inset 0 1px #ffffff14}.custom-controls.settings-collapsed{max-width:520px}.custom-controls.dragging{cursor:grabbing;box-shadow:0 16px 50px #0000008c,inset 0 1px #ffffff1f;transition:none!important}.custom-controls button,.custom-controls select,.custom-controls input,.custom-controls label{cursor:pointer}.custom-controls .timeline-slider{cursor:ew-resize}.custom-controls .time-display{cursor:default}.custom-controls .time-display.clickable-time{cursor:pointer}.controls-inner-wrapper{cursor:default;flex-direction:column;gap:12px;width:100%;max-width:1200px;margin:0 auto;display:flex}.player-card:hover .custom-controls,.player-card.controls-visible .custom-controls{opacity:1;transform:translate(-50%)translateY(0)}.controls-row-first{align-items:center;gap:16px;width:100%;display:flex}.controls-row-first .timeline-slider{flex:1}.timeline-slider{height:4px}.time-display{color:var(--text-secondary);font-family:monospace;font-size:12px;transition:color .2s}.time-display.clickable-time:hover{color:var(--primary)}.control-btn{color:var(--text-main);border-radius:50%;padding:6px}.control-btn:hover{color:var(--primary);background:#ffffff14}.control-btn.active-settings-btn{color:var(--primary);background:#66fcf11f;border:1px solid #66fcf14d;box-shadow:0 0 8px #66fcf133}.volume-group{align-items:center;gap:8px;display:flex}.volume-slider{width:70px}.controls-row-second{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.left-controls-group,.right-controls-group{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.control-item{align-items:center;gap:6px;display:flex}.control-label-text{color:var(--text-muted);white-space:nowrap;font-size:12px}.sync-adjuster{border:1px solid var(--border);background:#ffffff0d;border-radius:12px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:flex}.sync-btn{color:var(--text-secondary);border-radius:4px;padding:2px 4px}.sync-btn:hover{color:var(--primary);background:#ffffff1a}.sync-value{color:var(--primary);font-family:monospace;font-weight:600}.track-selector-dropdown{border:1px solid var(--border);color:var(--text-main);background:#000000b3;border-radius:6px;outline:none;padding:4px 8px;font-size:12px}.track-selector-dropdown option{background:var(--bg-dark)}.sidecar-uploader-pill{position:relative}.sidecar-label{border:1px solid var(--border);cursor:pointer;background:#ffffff0d;border-radius:12px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;transition:all .2s;display:inline-flex}.sidecar-label:hover{background:var(--primary-glow);color:var(--primary);border-color:var(--primary-dark)}.translation-popover-container{z-index:100;pointer-events:auto;animation:.15s ease-out fadeIn;position:absolute}.translation-card{border:1px solid var(--border-glow);border-radius:16px;flex-direction:column;gap:12px;min-width:250px;max-width:320px;padding:16px;display:flex;box-shadow:0 10px 40px #0009}.popover-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.word-term{color:var(--primary);font-size:18px;font-weight:700;font-family:var(--font-display)}.tts-btn{color:var(--text-muted);border-radius:50%;padding:4px}.tts-btn:hover{color:var(--primary);background:var(--primary-glow)}.translation-result{flex-direction:column;gap:4px;display:flex}.translation-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;font-size:11px}.translation-text{color:var(--text-main);min-height:22.4px;font-size:16px;font-weight:500;line-height:1.4;display:block}.loading-translation{color:var(--text-muted);align-items:center;gap:8px;padding:8px 0;font-size:14px;display:flex}.loading-spinner{border:2px solid #ffffff1a;border-top-color:var(--primary);border-radius:50%;width:16px;height:16px;animation:1s linear infinite rotate}@keyframes rotate{to{transform:rotate(360deg)}}.translation-error{color:#ef4444;font-size:13px}.popover-footer{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.close-popover-btn{border:1px solid var(--border);color:var(--text-secondary);background:#ffffff0d;border-radius:12px;padding:4px 12px;font-size:12px}.close-popover-btn:hover{background:var(--bg-hover);color:var(--text-main)}.sidebar{border-left:1px solid var(--border);-webkit-backdrop-filter:blur(16px);z-index:8;background:#12161ed9;flex-direction:column;width:320px;transition:width .3s cubic-bezier(.4,0,.2,1),border-left-width .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.sidebar:not(.open){opacity:0;pointer-events:none;border-left-width:0;width:0}.sidebar-inner{flex-direction:column;flex-shrink:0;width:320px;height:100%;display:flex}.close-sidebar-btn-inner{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.close-sidebar-btn-inner:hover{color:var(--primary);background:#ffffff14}.sidebar-backdrop{display:none}@media (width<=900px){.sidebar{border-left:1px solid var(--border);opacity:1;width:320px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:68px;bottom:0;right:0;transform:translate(100%);box-shadow:-10px 0 30px #00000080}.sidebar.open{opacity:1;pointer-events:auto;width:320px;transform:translate(0)}.sidebar:not(.open){opacity:1;pointer-events:none;border-left-width:1px;width:320px;transform:translate(100%)}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);z-index:7;background:#00000080;animation:.2s ease-out fadeIn;display:block;position:fixed;inset:68px 0 0}}.sidebar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px;display:flex}.sidebar-header h2{align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.sidebar-badge{background:var(--accent-purple-glow);color:var(--accent-purple);border-radius:10px;padding:2px 8px;font-family:monospace;font-size:12px}.sidebar-content{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.history-list{flex-direction:column;gap:10px;display:flex}.history-item{border:1px solid var(--border);background:#ffffff05;border-radius:12px;flex-direction:column;gap:4px;padding:12px;transition:all .2s;display:flex}.history-item:hover{border-color:var(--border-light);background:#ffffff0a}.history-top{justify-content:space-between;align-items:center;display:flex}.history-orig{color:var(--primary);font-size:14px;font-weight:600}.history-lang{color:var(--text-muted);text-transform:uppercase;background:#ffffff08;border-radius:4px;padding:1px 4px;font-size:10px}.history-trans{color:var(--text-main);font-size:13px;line-height:1.3}.history-time{color:var(--text-dark);align-self:flex-end;font-size:10px}.empty-history{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 20px;display:flex}.empty-history p{font-size:14px}.sidebar-footer{border-top:1px solid var(--border);gap:10px;padding:16px 20px;display:flex}.export-btn{border:1px solid var(--border);color:var(--text-secondary);background:#ffffff0d;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.export-btn:hover{background:var(--bg-hover);color:var(--text-main);border-color:var(--text-muted)}.toggle-sidebar-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:inline-flex}.toggle-sidebar-btn:hover{color:var(--primary);background:#ffffff1a}.toggle-sidebar-btn.active{color:var(--primary);background:#66fcf11f;border-color:#66fcf14d;box-shadow:0 0 8px #66fcf133}.play-overlay-center{color:var(--primary);pointer-events:none;z-index:4;background:#000000b3;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reset-video-pill{color:#ef4444;background:#ef44441a;border:1px solid #ef444433;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.reset-video-pill:hover{background:#ef444433;border-color:#ef444466;transform:scale(1.05);box-shadow:0 0 10px #ef444433}.controls-mode-overlay{z-index:7;pointer-events:auto;position:absolute;bottom:16px;right:16px}:-webkit-any(.player-card:fullscreen .video-container,.player-card:-webkit-full-screen .video-container){height:100%;padding-bottom:0}:is(.player-card:fullscreen .video-container,.player-card:fullscreen .video-container){height:100%;padding-bottom:0}.controls-mode-btn{-webkit-backdrop-filter:blur(4px);border:1px solid var(--border);color:var(--text-secondary);opacity:.35;background:#0a0c1099;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.controls-mode-btn:hover{opacity:1;color:var(--primary);border-color:var(--primary-glow);box-shadow:0 0 10px var(--primary-glow);background:#0a0c10d9}.tips-carousel-container{color:var(--text-secondary);-webkit-user-select:none;user-select:none;border:1px solid #ffffff0a;justify-content:space-between;align-items:center;gap:16px;min-height:100px;padding:16px 20px;font-size:13px;display:flex;position:relative}.carousel-collapse-btn{color:var(--text-muted);cursor:pointer;z-index:2;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex;position:absolute;top:8px;right:8px}.carousel-collapse-btn:hover{color:var(--primary);background:#ffffff14}.tips-collapsed-tab{cursor:pointer;-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text-secondary);-webkit-user-select:none;user-select:none;background:#12161e99;border-radius:24px;justify-content:center;align-items:center;width:fit-content;margin:16px auto 0;padding:8px 20px;font-size:13px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.tips-collapsed-tab:hover{border-color:var(--border-glow);box-shadow:var(--shadow-glow);color:var(--primary);background:#12161ed9;transform:scale(1.03)}.carousel-nav-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:#ffffff08;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.carousel-nav-btn:hover{background:var(--primary-glow);border-color:var(--primary-glow);color:var(--primary);box-shadow:0 0 8px var(--primary-glow)}.carousel-content-wrapper{text-align:center;flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.carousel-slide-header{align-items:center;gap:8px;display:flex}.carousel-slide-title{color:var(--text-main);font-size:14px}.carousel-slide-body{color:var(--text-secondary);width:100%;line-height:1.5}.carousel-indicators{gap:6px;margin-top:8px;display:flex}.carousel-dot{cursor:pointer;background:#ffffff26;border-radius:50%;width:6px;height:6px;transition:all .2s}.carousel-dot:hover{background:#fff6}.carousel-dot.active{background:var(--primary);box-shadow:0 0 6px var(--primary-glow);border-radius:3px;width:12px}.highlight-yellow{color:gold;background-color:#f1c40f1f;border:1px solid #f1c40f40;border-radius:4px;padding:1px 5px;font-family:inherit;font-weight:500}.highlight-code{color:gold;white-space:pre-wrap;word-break:break-all;text-align:left;background-color:#f1c40f0d;border:1px dashed #f1c40f33;border-radius:6px;max-width:650px;margin:10px auto 4px;padding:8px 12px;font-family:monospace;font-size:11.5px;display:block}.translation-skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1f 50%,#ffffff0d 75%) 0 0/200% 100%;border-radius:4px;width:65%;height:22.4px;margin:0;animation:1.5s linear infinite loading-pulse;display:block}@keyframes loading-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.subtitle-word-token.active-translating-context{color:var(--text-main);border-bottom:2px solid var(--accent-purple);background:#bb86fc26;border-radius:2px}.translation-context-phrase{color:var(--text-secondary);border-left:2px solid var(--primary-glow);margin-bottom:4px;padding-left:8px;font-size:14px;font-style:italic;font-weight:500;line-height:1.4}.context-toggle-btn{border:1px solid var(--border-glow);color:var(--primary);background:var(--primary-glow);border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500}.context-toggle-btn:hover{background:var(--primary);color:var(--bg-dark);box-shadow:0 0 10px var(--primary-glow)}.video-title-header{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;text-align:center;max-width:350px;font-size:14px;font-weight:500;font-family:var(--font-display);border:1px solid var(--border);z-index:1;background:#ffffff08;border-radius:12px;padding:6px 14px;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)}@media (width<=768px){.video-title-header{display:none}}.subtitle-word-token.already-translated{border-bottom:1px dashed var(--primary-dark)}.subtitle-word-token.already-translated:hover{color:var(--primary);background:var(--primary-glow);border-bottom-style:solid}.seek-indicator-overlay{pointer-events:none;z-index:8;opacity:0;background:radial-gradient(circle,#ffffff26 0%,#fff0 70%);justify-content:center;align-items:center;width:40%;animation:.6s ease-out flashOverlay;display:flex;position:absolute;top:0;bottom:0}.seek-indicator-overlay.backward{border-top-left-radius:16px;border-bottom-left-radius:16px;left:0}.seek-indicator-overlay.forward{border-top-right-radius:16px;border-bottom-right-radius:16px;right:0}.seek-indicator-circle{background:#0009;border:1px solid #ffffff1a;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:64px;height:64px;display:flex;box-shadow:0 4px 12px #00000080}.seek-text{color:var(--primary);font-family:monospace;font-size:14px;font-weight:700}@keyframes flashOverlay{0%{opacity:0;transform:scale(.9)}25%{opacity:1;transform:scale(1)}75%{opacity:1}to{opacity:0}}.help-debug-actions-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:100%;margin-top:16px;display:flex}.help-debug-actions-row .tips-collapsed-tab{margin:0}.debug-console-trigger-btn{cursor:pointer;-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text-secondary);-webkit-user-select:none;user-select:none;background:#12161e99;border-radius:24px;justify-content:center;align-items:center;padding:8px 20px;font-size:13px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.debug-console-trigger-btn:hover,.debug-console-trigger-btn.active{border-color:var(--primary-glow);box-shadow:var(--shadow-glow);color:var(--primary);background:#12161ed9;transform:scale(1.03)}.debug-console-drawer{-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border-glow);z-index:9999;background:#0a0c10f2;flex-direction:column;height:400px;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -10px 30px #00000080}.debug-console-resize-handle{cursor:ns-resize;z-index:10;background:0 0;height:6px;transition:background .2s;position:absolute;top:0;left:0;right:0}.debug-console-resize-handle:hover,.debug-console-resize-handle:active{background:var(--primary-glow)}.debug-console-drawer.open{transform:translateY(0)}.debug-console-header{border-bottom:1px solid var(--border);background:#12161ecc;justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.debug-console-title-group{align-items:center;gap:8px;display:flex}.debug-console-title-group h3{color:var(--text-main);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:14px;font-weight:600}.pulse-icon{color:#10b981;animation:2s infinite pulse}@keyframes pulse{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}.debug-console-tabs{flex:1;gap:8px;margin-left:24px;display:flex}.debug-tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s}.debug-tab-btn:hover{color:var(--text-main);background:#ffffff0d}.debug-tab-btn.active{color:var(--primary);background:var(--primary-glow);font-weight:600}.debug-console-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.debug-console-close-btn:hover{color:#ef4444;background:#ef44441a}.debug-console-content,.console-tab-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.console-toolbar{background:#0a0c1066;border-bottom:1px solid #ffffff08;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;display:flex}.search-bar-wrapper{flex:1;align-items:center;min-width:200px;max-width:320px;display:flex;position:relative}.search-icon{color:var(--text-muted);position:absolute;left:10px}.console-filter-input{border:1px solid var(--border);width:100%;color:var(--text-main);background:#00000080;border-radius:6px;outline:none;padding:6px 32px 6px 30px;font-size:12px;transition:all .2s}.console-filter-input:focus{border-color:var(--primary-dark);box-shadow:0 0 6px var(--primary-glow)}.clear-filter-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;display:flex;position:absolute;right:10px}.clear-filter-btn:hover{color:var(--text-main)}.console-actions{align-items:center;gap:10px;display:flex}.checkbox-label{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:12px;display:flex}.checkbox-label input{accent-color:var(--primary);cursor:pointer}.console-tool-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:#ffffff0d;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;transition:all .2s;display:inline-flex}.console-tool-btn:hover{color:var(--text-main);background:#ffffff1a}.console-tool-btn.danger{color:#f87171;background:#ef44440d;border-color:#ef444433}.console-tool-btn.danger:hover{color:#ef4444;background:#ef444426}.logs-scroller{font-family:var(--font-mono,monospace);flex-direction:column;flex:1;gap:4px;padding:12px 20px;font-size:12px;display:flex;overflow-y:auto}.empty-logs{color:var(--text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;font-size:13px;display:flex}.spin-icon{color:var(--primary);animation:1.5s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.log-line-item{word-break:break-all;white-space:pre-wrap;border-radius:4px;gap:8px;padding:4px 8px;line-height:1.4;display:flex}.log-line-item:hover{background:#ffffff05}.log-timestamp{color:#8b5cf6;flex-shrink:0}.log-type-tag{flex-shrink:0;width:55px;font-weight:700}.log-line-item.type-log{color:#e2e8f0}.log-line-item.type-log .log-type-tag{color:#94a3b8}.log-line-item.type-info{color:#38bdf8}.log-line-item.type-info .log-type-tag{color:#0ea5e9}.log-line-item.type-warn{color:#fbbf24;background:#f59e0b0d;border-left:2px solid #fbbf24}.log-line-item.type-warn .log-type-tag{color:#f59e0b}.log-line-item.type-error{color:#f87171;background:#ef44440d;border-left:2px solid #ef4444}.log-line-item.type-error .log-type-tag{color:#ef4444}.diagnostics-tab-content{flex:1;padding:20px;overflow-y:auto}.diagnostics-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;display:grid}.diag-card{border:1px solid var(--border);background:#ffffff05;border-radius:12px;padding:16px}.diag-card h4{color:var(--text-main);border-bottom:1px solid #ffffff0d;margin:0 0 14px;padding-bottom:8px;font-size:14px;font-weight:600}.diag-table{border-collapse:collapse;width:100%;font-size:12px}.diag-table td{vertical-align:top;padding:6px 0}.diag-table td:first-child{color:var(--text-secondary);width:130px;font-weight:500}.diag-table td:last-child{color:var(--text-main)}.monospace{font-family:var(--font-mono,monospace)}.truncate-cell{white-space:nowrap;text-overflow:ellipsis;max-width:200px;overflow:hidden}.status-badge{border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.status-badge.playing{color:#10b981;background:#10b98126}.status-badge.paused{color:#f87171;background:#ef444426}.status-badge.ok{color:#10b981;background:#10b9811a}.status-badge.warn{color:#fbbf24;background:#f59e0b26}.buffered-range-item{opacity:.8;margin-bottom:2px;font-size:11px}.empty-diag-subcard{text-align:center;color:var(--text-muted);background:#0003;border:1px dashed #ffffff0d;border-radius:8px;padding:24px}.empty-diag-subcard p{color:var(--text-secondary);margin:0 0 4px;font-size:12px}@media (width<=600px){.debug-console-drawer{height:100vh}}
