.sidebar-backdrop{display:none}@media (any-pointer:coarse){.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1040;opacity:0;pointer-events:none;background:#0006;width:100vw;height:100dvh;transition:opacity .3s cubic-bezier(.4,0,.2,1);display:block;position:fixed;top:0;left:0}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}}.sidebar{background-color:#1f2937;flex-direction:column;flex-shrink:0;height:100%;transition:width .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);display:flex}@media (any-pointer:fine){.sidebar{z-index:50;width:240px;position:relative}.sidebar.collapsed{width:68px}.sidebar.collapsed .brand-name{opacity:0;width:0;overflow:hidden}.sidebar.collapsed .tab-label{opacity:0;display:none}}@media (any-pointer:coarse){.sidebar{top:0;left:0;transform:translate(-100%);box-shadow:4px 0 24px #0003;z-index:1050!important;width:280px!important;height:100%!important;position:fixed!important}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand-name,.sidebar .tab-label{opacity:1!important;width:auto!important;display:block!important;overflow:visible!important}.sidebar .collapse-btn.desktop-only{display:none!important}}.sidebar .sidebar-header{justify-content:center;align-items:center;height:64px;margin-top:20px;padding:0 20px;display:flex}.sidebar .sidebar-header .logo-container{align-items:center;gap:12px;display:flex}.sidebar .sidebar-header .logo-container img{transition:width .2s}.sidebar .collapse-btn.desktop-only{color:#9ca3af;cursor:pointer;background:0 0;border:none;justify-content:flex-end;align-items:center;width:100%;margin-top:20px;padding:8px 20px;display:flex}.sidebar .collapse-btn.desktop-only:hover{color:#f3f4f6}.sidebar .tabs-container{flex-direction:column;gap:8px;padding:16px 12px;display:flex}.sidebar .tab{cursor:pointer;color:#4b5563;white-space:nowrap;border-radius:8px;align-items:center;gap:14px;padding:12px 16px;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.sidebar .tab:hover{color:#f3f4f6}@media (any-pointer:fine){.sidebar .tab:hover{transform:translate(2px)}}.sidebar .tab.active{color:#f3f4f6;background-color:#0b1c68;font-weight:600}.sidebar .tab.active .tab-icon{color:#f3f4f6}.sidebar .tab .tab-icon{color:#9ca3af;justify-content:center;align-items:center;min-width:24px;display:flex}.sidebar .tab .tab-label{color:#d1d5db;transition:opacity .2s}.plot-container{overscroll-behavior:none;background-color:#fff;flex-direction:column;flex:1;gap:0;width:100%;height:100%;padding:0;display:flex;touch-action:none!important;overflow:hidden!important}.plot-container .plot-graph-wrapper{width:100%;min-height:0;box-shadow:none;background:#fff;border:none;border-radius:0;flex:1;position:relative;touch-action:none!important;overflow:hidden!important}.plot-container .plot-graph-wrapper .plot-graph{width:100%;height:100%}.plot-container .plot-graph-wrapper .mobile-rotate-overlay{z-index:9999;text-align:center;background-color:#fff;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100dvh;padding:32px;display:none;position:fixed;top:0;left:0}.plot-container .plot-graph-wrapper .mobile-rotate-overlay .icon-wrapper{justify-content:center;align-items:center;width:100px;height:100px;margin-bottom:24px;display:flex;position:relative}.plot-container .plot-graph-wrapper .mobile-rotate-overlay .icon-wrapper .phone-icon{color:#4b5563;animation:2.5s ease-in-out infinite rotateDevice}.plot-container .plot-graph-wrapper .mobile-rotate-overlay .icon-wrapper .rotate-arrow{color:#1f2937;animation:2.5s ease-in-out infinite fadeInOutArrow;position:absolute;top:0;right:0}.plot-container .plot-graph-wrapper .mobile-rotate-overlay h3{color:#f3f4f6;margin-bottom:8px;font-size:1.5rem;font-weight:700}.plot-container .plot-graph-wrapper .mobile-rotate-overlay p{color:#000;max-width:300px;font-size:1rem;line-height:1.5}.plot-container .plot-graph-wrapper .status-msg{color:#0b1c68;font-weight:500;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.plot-container .plot-graph-wrapper .status-msg.error{color:#ef4444;background:#fef2f2;border-radius:8px;padding:16px 32px}.plot-container .plot-graph-wrapper .status-msg.loading:after{content:"";border:2px solid #1f2937;border-top-color:#0000;border-radius:50%;width:24px;height:24px;margin:10px auto 0;animation:.8s linear infinite spin;display:block}@media only screen and (max-width:900px) and (orientation:portrait){.plot-container .plot-graph-wrapper .mobile-rotate-overlay{display:flex}.plot-container .plot-graph-wrapper .plot-button{display:none!important}}@keyframes rotateDevice{0%,20%{transform:rotate(0)}50%,70%{transform:rotate(90deg)}to{transform:rotate(0)}}@keyframes fadeInOutArrow{0%,to{opacity:0}40%,60%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.file-selector-container{flex-direction:column;gap:24px;width:100%;height:100%;margin:0 auto;padding:24px;display:flex}.file-selector-container .drop-area{cursor:pointer;background:#fff;border:2px dashed #e2e8f0;border-radius:20px;justify-content:center;align-items:center;min-height:160px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 6px -1px #0000000d}.file-selector-container .drop-area:hover{border-color:#1f2937;box-shadow:0 10px 15px -3px #0000001a}.file-selector-container .drop-area.dragging{background:#1f29370d;border-color:#1f2937;transform:scale(1.02)}.file-selector-container .drop-area .drop-content{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.file-selector-container .drop-area .drop-content .icon-circle{color:#1f2937;background:#4d668a;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.file-selector-container .drop-area .drop-content h3{color:#f3f4f6;margin:0;font-size:1.1rem}.file-selector-container .drop-area .drop-content p{color:#0b1c68;margin:0;font-size:.9rem}.file-selector-container .file-list-header{justify-content:space-between;align-items:center;display:flex}.file-selector-container .file-list-header h4{color:#f3f4f6;margin:0;font-weight:600}.file-selector-container .file-list-header .clear-all{color:#ef4444;cursor:pointer;background:0 0;border:none;font-size:.8rem}.file-selector-container .file-list-header .clear-all:hover{text-decoration:underline}.file-selector-container .file-list{flex-direction:column;flex:1;gap:10px;padding-right:4px;display:flex;overflow-y:auto}.file-selector-container .file-list .empty-state{color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:200px;display:flex}.file-selector-container .file-card{cursor:pointer;background:#fff;border:1px solid #f1f5f9;border-radius:16px;justify-content:space-between;align-items:center;padding:14px 18px;transition:all .2s;display:flex}.file-selector-container .file-card:hover{border-color:#4d668a;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.file-selector-container .file-card.active{background:#0b1c68;border-color:#1f2937;box-shadow:0 4px 20px #1f293726}.file-selector-container .file-card.active .file-name{color:#1f2937;font-weight:700}.file-selector-container .file-card .file-main-info{align-items:center;gap:16px;display:flex}.file-selector-container .file-card .file-main-info .file-type-icon{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.file-selector-container .file-card .file-main-info .file-type-icon.local{color:#0b1c68;background:#f0fdf4}.file-selector-container .file-card .file-main-info .file-type-icon.remote{color:#ef4444;background:#fef2f2}.file-selector-container .file-card .file-main-info .file-details{flex-direction:column;display:flex}.file-selector-container .file-card .file-main-info .file-details .file-name{color:#f3f4f6;white-space:nowrap;text-overflow:ellipsis;max-width:300px;font-size:.95rem;overflow:hidden}.file-selector-container .file-card .file-main-info .file-details .file-meta{color:#d4d4d4ad;font-size:.75rem}.file-selector-container .file-card .remove-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:8px;transition:all .2s}.file-selector-container .file-card .remove-btn:hover{color:#ef4444;background:#fee2e2}.ftp-browser{background-color:#f3f4f6;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.ftp-browser .custom-scrollbar-track{z-index:50;opacity:0;justify-content:flex-end;width:24px;padding-right:4px;transition:opacity .3s;display:flex;position:absolute;top:4px;bottom:4px;right:0}.ftp-browser .custom-scrollbar-track.visible{opacity:1}.ftp-browser .custom-scrollbar-track.invisible{opacity:0;pointer-events:none}.ftp-browser .custom-scrollbar-track{-webkit-user-select:none;user-select:none;touch-action:none}.ftp-browser .custom-scrollbar-track .custom-scrollbar-thumb{cursor:grab;will-change:transform;background-color:#00000040;border-radius:10px;width:6px;transition:width .2s cubic-bezier(.25,.46,.45,.94),background-color .2s}.ftp-browser .custom-scrollbar-track .custom-scrollbar-thumb:active{cursor:grabbing}.ftp-browser .custom-scrollbar-track.active .custom-scrollbar-thumb{background-color:#00000080;width:12px;box-shadow:0 0 8px #0000001a}.ftp-browser .ftp-content{-webkit-user-select:none;user-select:none;-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:20px;position:relative;overflow-y:scroll}.ftp-browser .ftp-content::-webkit-scrollbar{width:10px;display:block!important}.ftp-browser .ftp-content::-webkit-scrollbar-track{background:#00000008;border-radius:10px}.ftp-browser .ftp-content::-webkit-scrollbar-thumb{background-color:#00000040;border:2px solid #f3f4f6;border-radius:10px;min-height:45px}.ftp-browser .ftp-content::-webkit-scrollbar-thumb:active{background-color:#0006}.ftp-browser .ftp-content{scrollbar-width:thin;scrollbar-color:#00000040 #0000}.ftp-browser .ftp-content.android-mode{scrollbar-width:none;-ms-overflow-style:none}.ftp-browser .ftp-content .ftp-items-grid{touch-action:pan-y;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;padding-bottom:180px;display:grid}@media (max-width:768px){.ftp-browser .ftp-content .ftp-items-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.ftp-browser .ftp-content .ftp-empty{color:#9ca3af;justify-content:center;align-items:center;height:100%;display:flex}.ftp-browser .selection-box{pointer-events:none;z-index:999;background-color:#3b82f633;border:1px solid #3b82f6cc;position:absolute}.ftp-browser .ftp-item{cursor:pointer;will-change:transform,opacity;box-sizing:border-box;background-color:#fff;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:10px;padding:20px 10px;transition:transform .1s ease-out,background-color .2s;animation:.2s ease-out backwards fadeInUp;display:flex;position:relative}.ftp-browser .ftp-item:first-child{animation-delay:15ms}.ftp-browser .ftp-item:nth-child(2){animation-delay:30ms}.ftp-browser .ftp-item:nth-child(3){animation-delay:45ms}.ftp-browser .ftp-item:nth-child(4){animation-delay:60ms}.ftp-browser .ftp-item:nth-child(5){animation-delay:75ms}.ftp-browser .ftp-item:nth-child(6){animation-delay:90ms}.ftp-browser .ftp-item:nth-child(7){animation-delay:.105s}.ftp-browser .ftp-item:nth-child(8){animation-delay:.12s}.ftp-browser .ftp-item:nth-child(9){animation-delay:.135s}.ftp-browser .ftp-item:nth-child(10){animation-delay:.15s}.ftp-browser .ftp-item:nth-child(11){animation-delay:.165s}.ftp-browser .ftp-item:nth-child(12){animation-delay:.18s}.ftp-browser .ftp-item:nth-child(13){animation-delay:.195s}.ftp-browser .ftp-item:nth-child(14){animation-delay:.21s}.ftp-browser .ftp-item:nth-child(15){animation-delay:.225s}@media (hover:hover){.ftp-browser .ftp-item:hover{background-color:#f9fafb;transform:translateY(-2px);box-shadow:0 4px 6px #0000000d}.ftp-browser .ftp-item:hover .selection-indicator.unchecked{opacity:1;transform:scale(1)}}.ftp-browser .ftp-item.selected{background-color:#eff6ff;border-color:#3b82f699;box-shadow:0 0 0 1px #3b82f61a}.ftp-browser .ftp-item.selected .ftp-item-name{color:#3b82f6;font-weight:600}.ftp-browser .ftp-item.selection-mode .selection-indicator.unchecked{opacity:1;transform:scale(1)}.ftp-browser .ftp-item.is-folder .ftp-item-icon{color:#f59e0b}.ftp-browser .ftp-item:not(.is-folder) .ftp-item-icon{color:#9ca3af}.ftp-browser .ftp-item .ftp-item-name{text-align:center;white-space:nowrap;text-overflow:ellipsis;color:#1f2937;width:100%;font-size:.8rem;overflow:hidden}.ftp-browser .ftp-item .selection-indicator{z-index:10;width:22px;height:22px;transition:all .2s cubic-bezier(.175,.885,.32,1.275);position:absolute;top:8px;right:8px}.ftp-browser .ftp-item .selection-indicator.checked{color:#fff;background:#3b82f6;border-radius:50%;justify-content:center;align-items:center;animation:.3s cubic-bezier(.175,.885,.32,1.275) popIn;display:flex;box-shadow:0 2px 4px #3b82f64d}.ftp-browser .ftp-item .selection-indicator.unchecked{opacity:0;transform:scale(.9)}.ftp-browser .ftp-item .selection-indicator.unchecked .circle-outline{background:#ffffffe6;border:2px solid #d1d5db;border-radius:50%;width:100%;height:100%}@media (pointer:fine){.ftp-browser .mobile-action-bar{display:none!important}}.ftp-browser .mobile-action-bar{-webkit-backdrop-filter:blur(12px);padding:20px 20px max(20px,env(safe-area-inset-bottom));z-index:1001;background:#ffffffeb;border-top:1px solid #0000000d;border-radius:24px 24px 0 0;flex-direction:column;gap:16px;animation:.4s cubic-bezier(.19,1,.22,1) slideUpAction;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #00000026}.ftp-browser .mobile-action-bar:before{content:"";background-color:#e5e7eb;border-radius:10px;width:40px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.ftp-browser .mobile-action-bar .selection-info{color:#1f2937;justify-content:center;align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.ftp-browser .mobile-action-bar .selection-info svg{color:#3b82f6}.ftp-browser .mobile-action-bar .action-group{gap:12px;display:flex}.ftp-browser .mobile-action-bar .action-group .mobile-btn{cursor:pointer;border:none;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:8px;height:54px;font-size:1.05rem;font-weight:700;transition:transform .1s;display:flex}.ftp-browser .mobile-action-bar .action-group .mobile-btn:active{transform:scale(.96)}.ftp-browser .mobile-action-bar .action-group .mobile-btn.primary{color:#fff;background:#3b82f6;box-shadow:0 4px 12px #3b82f64d}.ftp-browser .mobile-action-bar .action-group .mobile-btn.secondary{color:#4b5563;background:#fff;border:1px solid #e5e7eb}.ftp-browser .mobile-range-fab{color:#4b5563;z-index:1000;cursor:pointer;background-color:#fff;border:none;border-radius:20px;justify-content:center;align-items:center;width:60px;height:60px;transition:bottom .4s cubic-bezier(.34,1.56,.64,1),background-color .3s,transform .2s;display:flex;position:absolute;bottom:30px;right:30px;box-shadow:0 8px 20px #00000026}.ftp-browser .mobile-range-fab.active{color:#fff;background-color:#3b82f6;animation:2s infinite pulse-ring;transform:scale(1.05);box-shadow:0 10px 25px #3b82f666}.ftp-browser .mobile-range-fab:active{transform:scale(.9)}.ftp-browser .mobile-range-fab.pushed-up{bottom:180px}@media (pointer:fine){.ftp-browser .mobile-range-fab{display:none!important}}.ftp-browser .touch-hint{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;pointer-events:none;z-index:40;opacity:0;background:#000000b3;border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:.75rem;font-weight:500;animation:4s 1s forwards hintFade;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.ftp-browser .touch-hint .show-mobile{display:none}.ftp-browser .touch-hint .show-desktop{display:inline}@media (any-pointer:coarse) and (hover:none){.ftp-browser .touch-hint .show-mobile{display:inline}.ftp-browser .touch-hint .show-desktop{display:none}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes hintFade{0%{opacity:0;transform:translate(-50%,10px)}10%{opacity:1;transform:translate(-50%)}80%{opacity:1}to{opacity:0}}@keyframes slideUpAction{0%{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes pulse-ring{0%{box-shadow:0 0 #3b82f6b3}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}.topbar{-webkit-backdrop-filter:blur(12px)saturate(180%);z-index:50;background-color:#fffc;border-bottom:1px solid #00000014;flex-shrink:0;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 20px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.topbar .topbar-center{pointer-events:none;justify-content:center;align-items:center;width:auto;max-width:40%;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.topbar .topbar-center .file-info-badge{background:#fff;border:1px solid #0000000f;border-radius:14px;padding:6px 20px;box-shadow:0 2px 10px #0000000a}.topbar .topbar-center .file-info-badge .ftp-meta{align-items:center;gap:15px;display:flex}.topbar .topbar-center .file-info-badge .ftp-meta .meta-section{flex-direction:column;align-items:flex-start;display:flex}.topbar .topbar-center .file-info-badge .ftp-meta .meta-section .label{color:#94a3b8;letter-spacing:.05em;margin-bottom:2px;font-size:.6rem;font-weight:800;line-height:1}.topbar .topbar-center .file-info-badge .ftp-meta .meta-section .value{color:#1f2937;font-family:JetBrains Mono,Inter,monospace;font-size:.9rem;font-weight:700}.topbar .topbar-center .file-info-badge .ftp-meta .meta-section.time-section .value{color:#3b82f6}.topbar .topbar-center .file-info-badge .ftp-meta .meta-divider{background:#e2e8f0;width:1px;height:24px}.topbar .topbar-center .file-info-badge .local-meta .value{color:#1f2937;font-size:.9rem;font-weight:700}@media (any-pointer:coarse){.topbar .topbar-center .ftp-meta{gap:8px}.topbar .topbar-center .ftp-meta .meta-section .label{display:none}.topbar .topbar-center .ftp-meta .meta-section .value{font-size:.75rem}}.topbar .mobile-menu-btn{color:#3b82f6;cursor:pointer;background:#3b82f60d;border:none;border-radius:12px;padding:10px;transition:all .2s;display:none}.topbar .mobile-menu-btn:hover{background:#3b82f61a;transform:scale(1.05)}.topbar .mobile-menu-btn:active{transform:scale(.95)}@media (any-pointer:coarse) and (hover:none),(max-width:768px){.topbar .mobile-menu-btn{display:flex}}.topbar .topbar-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.topbar .topbar-left .nav-back-btn{color:#0b1c68}.topbar .topbar-left .mobile-menu-btn{color:#3b82f6;cursor:pointer;background:#3b82f60d;border:none;border-radius:12px;padding:10px;transition:all .2s;display:none}.topbar .topbar-left .mobile-menu-btn:hover{background:#3b82f61a;transform:scale(1.05)}.topbar .topbar-left .mobile-menu-btn:active{transform:scale(.95)}@media (any-pointer:coarse) and (hover:none),(max-width:768px){.topbar .topbar-left .mobile-menu-btn{display:flex}}.topbar .topbar-left .breadcrumb-path{color:#1f2937;align-items:center;gap:8px;font-size:.95rem;font-weight:600;animation:.4s ease-out slideInLeft;display:flex}.topbar .topbar-left .breadcrumb-path .path-root{color:#0b1c68;align-items:center;gap:6px;display:flex}.topbar .topbar-left .breadcrumb-path .path-separator{color:#cbd5e1;font-weight:300}.topbar .topbar-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.topbar .topbar-right .action-btn.secondary{color:#71717a;background:#f4f4f5;transition:all .2s;position:relative}.topbar .topbar-right .action-btn.secondary.active{color:#0284c7;background:#e0f2fe;border-color:#bae6fd}.topbar .topbar-right .sort-indicator-dot{opacity:0;background-color:#0284c7;border-radius:50%;width:6px;height:6px;transition:opacity .2s;position:absolute;top:2px;right:2px}.topbar .topbar-right .action-btn.secondary.active .sort-indicator-dot{opacity:1}.topbar .topbar-right .desktop-ftp-actions{align-items:center;gap:10px;display:flex}@media (any-pointer:coarse){.topbar .topbar-right .desktop-ftp-actions{display:none!important}}.topbar .topbar-right .selection-badge{color:#3b82f6;background:#eff6ff;border:1px solid #3b82f61a;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:700;animation:.3s cubic-bezier(.34,1.56,.64,1) fadeInScale;display:flex}.topbar .topbar-right .action-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;height:38px;padding:0 16px;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 4px #0000000d}.topbar .topbar-right .action-btn.primary{color:#fff;background:#3b82f6}.topbar .topbar-right .action-btn.primary:hover{background:#2372f5;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.topbar .topbar-right .action-btn.secondary{color:#64748b;background:#fff;border-color:#e2e8f0}.topbar .topbar-right .action-btn.secondary:hover{color:#ef4444;background:#f8fafc;border-color:#fee2e2}.topbar .topbar-right .action-btn:active{transform:scale(.96)}.topbar .topbar-right .action-btn:empty{display:none}@media (any-pointer:coarse){.topbar .topbar-right .action-btn{justify-content:center;width:38px;padding:0}.topbar .topbar-right .action-btn span{display:none}.topbar .topbar-right .action-btn svg{width:18px;height:18px}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.channel-selector{align-items:center;gap:8px;font-size:14px;font-weight:500;display:inline-flex}.channel-selector label{align-items:center;gap:6px;display:flex}.channel-selector select{appearance:none;color:#0b1c68;cursor:pointer;background-color:#ffffff1a;border:1px solid #fff9;border-radius:6px;padding:6px 12px;font-size:14px;transition:all .2s}.channel-selector select:hover:not(:disabled){background-color:#fff3;border-color:#fff}.channel-selector select:focus{border-color:#fff;outline:none;box-shadow:0 0 0 2px #ffffff4d}.channel-selector select option{color:#333}.download-progress-overlay{z-index:1000;background:#0000004d;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.download-progress-container{background:#fff;border-radius:12px;flex-direction:column;align-items:center;width:400px;padding:20px 30px;display:flex;box-shadow:0 8px 24px #0003}.progress-label{color:#333;margin-bottom:12px;font-size:16px}.progress-bar{background:#eee;border-radius:8px;width:100%;height:16px;overflow:hidden}.progress-fill{background:#4f46e5;height:100%;transition:width .2s}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-item{background:#fff;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:20px 10px;display:flex}.skeleton-item .skeleton-icon,.skeleton-item .skeleton-text{background:linear-gradient(90deg,#f0f0f0 25%,#f8f8f8 50%,#f0f0f0 75%) 0 0/200% 100%;border-radius:8px;animation:1.5s linear infinite shimmer}.skeleton-item .skeleton-icon{border-radius:12px;width:48px;height:48px}.skeleton-item .skeleton-text{width:80%;height:12px;margin-top:4px}.skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;display:grid}@media (any-pointer:coarse){.skeleton-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.app{background-color:#f3f4f6;width:100vw;height:100dvh;display:flex;overflow:hidden}@media (any-pointer:coarse){.app .sidebar{z-index:1000;height:100%;position:absolute}}.app .main-view{flex-direction:column;flex:1;transition:margin-left .3s;display:flex;overflow:hidden}@media (pointer:coarse){.app .main-view{width:100vw;margin-left:0!important}}
