@import"https://fonts.cdnfonts.com/css/gilroy-bold";.login-screen{min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden}.login-screen:before{content:"";position:absolute;width:200%;height:200%;background:radial-gradient(circle,rgba(0,160,223,.1) 0%,transparent 70%);animation:pulse 15s ease-in-out infinite;top:-50%;left:-50%}@keyframes pulse{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.1) rotate(180deg)}}.login-container{width:100%;max-width:420px;position:relative;z-index:1}.login-card{background:#2a2a2af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:48px 40px;box-shadow:0 20px 60px #00000080,0 0 0 1px #00a0df33;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-logo-section{display:flex;align-items:flex-start;justify-content:center;gap:8px;margin-bottom:32px}.login-logo{height:48px;width:auto}.login-lab-badge{height:24px;width:auto;margin-top:-4px}.login-title{color:#fff;font-size:28px;font-weight:600;text-align:center;margin:0 0 8px;letter-spacing:-.5px}.login-subtitle{color:#999;font-size:16px;text-align:center;margin:0 0 32px}.login-form{width:100%}.login-input{width:100%;padding:14px 16px;background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:16px;transition:all .3s ease;outline:none}.login-input::placeholder{color:#fff6}.login-input:focus{background:#0009;border-color:#00a0df;box-shadow:0 0 0 3px #00a0df1a}.login-input:disabled{opacity:.5;cursor:not-allowed}.login-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;text-align:center;animation:shake .3s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.login-button{width:100%;padding:14px 24px;background:linear-gradient(135deg,#00a0df,#0369a1);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden}.login-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .6s}.login-button:hover:not(:disabled):before{transform:translate(100%)}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #00a0df4d}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.5;cursor:not-allowed}.login-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-footer{text-align:center;margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.05)}.login-footer p{color:#666;font-size:14px;margin:0}@media (max-width: 480px){.login-card{padding:32px 24px}.login-logo{height:40px}.login-lab-badge{height:20px;margin-top:-2px}.login-title{font-size:24px}.login-subtitle{font-size:14px}}.login-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.login-dialog{background-color:#1a1a1a;border:1px solid #333;border-radius:8px;padding:32px;width:90%;max-width:400px;position:relative;animation:slideIn .3s ease-out;box-shadow:0 4px 20px #00a0df33}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.login-dialog h2{color:#00a0df;margin:0 0 24px;text-align:center;font-size:24px;font-weight:600}.close-button{position:absolute;top:16px;right:16px;background:none;border:none;color:#888;font-size:28px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transition:color .2s}.close-button:hover{color:#fff}.form-group{margin-bottom:20px}.form-group label{display:block;color:#bbb;margin-bottom:8px;font-size:14px;font-weight:500}.form-group input{width:100%;padding:10px 12px;background-color:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;font-size:14px;transition:border-color .2s,background-color .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#00a0df;background-color:#333}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-group input::placeholder{color:#666}.submit-button{width:100%;padding:12px;background-color:#00a0df;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;margin-top:8px}.submit-button:hover:not(:disabled){background-color:#0369a1;transform:translateY(-1px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{opacity:.6;cursor:not-allowed}.dialog-footer{margin-top:20px;text-align:center;padding-top:20px;border-top:1px solid #333}.link-button{background:none;border:none;color:#00a0df;cursor:pointer;font-size:14px;text-decoration:underline;padding:0;transition:color .2s}.link-button:hover{color:#8ed1fc}.error-message{background-color:#dc26261a;border:1px solid rgba(220,38,38,.3);color:#ef4444;padding:10px;border-radius:4px;margin-bottom:16px;font-size:14px;text-align:center}.success-message{background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e;padding:10px;border-radius:4px;margin-bottom:16px;font-size:14px;text-align:center}.user-dropdown{position:relative}.avatar-button{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#00a0df,#0369a1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;font-family:Helvetica Neue,Arial,sans-serif;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px #00a0df4d}.avatar-button:hover .avatar{transform:scale(1.05);box-shadow:0 4px 12px #00a0df66}.avatar-button:active .avatar{transform:scale(.98)}.dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:#1a1a1a;border:1px solid #333;border-radius:8px;box-shadow:0 4px 20px #00000080;z-index:1000;animation:dropdownSlide .2s ease-out;overflow:hidden}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:12px 16px;background:#0f0f0f}.dropdown-username{color:#00a0df;font-size:14px;font-weight:500}.dropdown-groups{margin-top:4px;display:flex;gap:6px;flex-wrap:wrap}.group-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#8ed1fc33;color:#8ed1fc;border:1px solid rgba(142,209,252,.3)}.group-badge[data-group=admins]{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.group-badge[data-group=watchers]{background:#3b82f633;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.dropdown-divider{height:1px;background:#333;margin:0}.dropdown-item{width:100%;padding:12px 16px;background:none;border:none;color:#ccc;text-align:left;cursor:pointer;font-size:14px;transition:background-color .2s,color .2s;display:flex;align-items:center;gap:12px}.dropdown-item:hover{background:#2a2a2a;color:#fff}.dropdown-item:active{background:#333}.dropdown-icon{width:18px;height:18px;flex-shrink:0}.dropdown-item-danger{color:#f87171}.dropdown-item-danger:hover{background:#f871711a;color:#ef4444}.build-number{padding:8px 16px;color:#888;font-size:12px;text-align:center;font-style:italic}.build-number-item{color:#8ed1fc;font-size:13px}.build-number-item:hover{background:#2a2a2a;color:#00a0df}.build-number-text{color:inherit}@media (max-width: 768px){.dropdown-menu{right:-8px;min-width:180px}.avatar{width:32px;height:32px;font-size:14px}}.configuration-screen{position:absolute;top:60px;left:0;right:0;bottom:0;background:#1a1a1a;z-index:100;display:flex;flex-direction:column;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.configuration-header{padding:20px 30px;background:#0f0f0f;border-bottom:2px solid #00a0df;display:flex;justify-content:space-between;align-items:center}.configuration-header h2{color:#00a0df;font-size:24px;font-weight:600;margin:0}.close-config-btn{width:36px;height:36px;border:none;background:#2a2a2a;border-radius:4px;color:#888;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s}.close-config-btn:hover{background:#333;color:#fff}.close-config-btn svg{width:20px;height:20px}.configuration-content{flex:1;padding:30px;overflow-y:auto;max-width:1200px;width:100%;margin:0 auto}.loading-message{color:#888;text-align:center;padding:40px;font-size:16px}.config-section{background:#0f0f0f;border:1px solid #333;border-radius:8px;padding:24px;margin-bottom:24px}.config-section h3{color:#00a0df;font-size:18px;font-weight:600;margin:0 0 20px}.config-field{margin-bottom:20px}.config-field label{display:block;color:#bbb;font-size:14px;font-weight:500;margin-bottom:8px}.field-help{display:block;color:#666;font-size:12px;font-weight:400;margin-top:4px;line-height:1.4}.config-field textarea{width:100%;padding:12px;background:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;font-size:14px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;line-height:1.5;resize:vertical;transition:border-color .2s,background-color .2s;box-sizing:border-box}.config-field textarea:focus{outline:none;border-color:#00a0df;background:#333}.config-field textarea:disabled{opacity:.6;cursor:not-allowed}.config-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.reset-btn,.save-btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s}.reset-btn{background:#555;color:#fff}.reset-btn:hover:not(:disabled){background:#666;transform:translateY(-1px)}.save-btn{background:#00a0df;color:#fff}.save-btn:hover:not(:disabled){background:#0369a1;transform:translateY(-1px)}.reset-btn:active:not(:disabled),.save-btn:active:not(:disabled){transform:translateY(0)}.reset-btn:disabled,.save-btn:disabled{opacity:.6;cursor:not-allowed}.success-message{margin-top:16px;padding:12px;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:4px;color:#22c55e;font-size:14px;text-align:center}.error-message{margin-top:16px;padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:4px;color:#ef4444;font-size:14px;text-align:center}.variables-list{display:flex;flex-direction:column;gap:12px}.variable-item{display:flex;align-items:center;gap:12px;padding:12px;background:#2a2a2a;border-radius:4px;border:1px solid #333}.variable-item code{background:#00a0df;color:#fff;padding:4px 8px;border-radius:4px;font-size:13px;font-weight:600;white-space:nowrap}.variable-item span{color:#888;font-size:14px}.configuration-content::-webkit-scrollbar{width:8px}.configuration-content::-webkit-scrollbar-track{background:#0f0f0f}.configuration-content::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.configuration-content::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){.configuration-content{padding:20px}.config-section{padding:16px}.config-actions{flex-direction:column}.reset-btn,.save-btn{width:100%}}.csv-upload-page{min-height:100vh;background:#0a0a0a;color:#fff;padding:20px;overflow-y:auto}.csv-upload-container{max-width:1200px;margin:0 auto;padding:20px}.csv-upload-container h1{color:#00a0df;font-size:32px;margin:0 0 30px;padding-bottom:15px;border-bottom:2px solid #333}.error-box{background:#dc262633;border:1px solid #dc2626;border-radius:8px;padding:30px;text-align:center}.error-box h2{color:#fca5a5;margin:0 0 10px}.error-box p{color:#fca5a5;margin:0}.channel-ranges-section{margin-bottom:30px;padding:20px;background:#1a1a1a;border-radius:8px;border:1px solid #333}.channel-ranges-section h3{margin:0 0 15px;color:#00a0df;font-size:20px}.ranges-list{display:flex;flex-wrap:wrap;gap:10px}.range-badge{display:inline-block;padding:8px 16px;background:#0369a1;color:#fff;border-radius:6px;font-size:15px;font-weight:500}.loading-text{color:#999;font-style:italic;margin:0}.info-text{color:#666;margin:0}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:10px;color:#ccc;font-weight:600;font-size:16px}.help-text{display:block;margin-top:6px;font-size:14px;color:#888;font-weight:400}.number-input,.csv-textarea{width:100%;padding:12px;background:#1a1a1a;border:1px solid #444;border-radius:6px;color:#fff;font-size:15px;font-family:inherit;box-sizing:border-box;transition:border-color .2s}.number-input:focus,.csv-textarea:focus{outline:none;border-color:#00a0df}.csv-textarea{resize:vertical;font-family:Courier New,monospace;line-height:1.6;min-height:200px}.file-input{width:100%;padding:12px;background:#1a1a1a;border:1px solid #444;border-radius:6px;color:#ccc;font-size:15px;cursor:pointer;transition:border-color .2s}.file-input:hover{border-color:#00a0df}.file-input::-webkit-file-upload-button{background:#00a0df;border:none;padding:10px 20px;border-radius:4px;color:#fff;cursor:pointer;margin-right:15px;font-weight:600;transition:background .2s}.file-input::-webkit-file-upload-button:hover{background:#0369a1}.error-message{padding:15px;background:#dc262633;border:1px solid #dc2626;border-radius:6px;color:#fca5a5;margin-bottom:20px;font-size:15px}.success-message{padding:15px;background:#22c55e33;border:1px solid #22c55e;border-radius:6px;color:#86efac;margin-bottom:20px;font-size:15px}.upload-results{margin:30px 0;padding:20px;background:#1a1a1a;border-radius:8px;border:1px solid #333}.upload-results h3{margin:0 0 20px;color:#00a0df;font-size:22px}.results-section{margin-bottom:20px}.results-section:last-child{margin-bottom:0}.results-section h4{margin:0 0 12px;font-size:18px}.success-results h4{color:#22c55e}.error-results h4{color:#dc2626}.results-list{max-height:300px;overflow-y:auto;padding-right:5px}.result-item{padding:10px 15px;background:#0a0a0a;border-radius:6px;margin-bottom:8px;display:flex;gap:15px;align-items:center;border:1px solid #222}.channel-num,.row-num{font-weight:600;color:#00a0df;white-space:nowrap;min-width:80px}.url-text{color:#ccc;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:Courier New,monospace}.error-text{color:#fca5a5;font-size:14px;flex:1}.more-text{color:#888;font-style:italic;margin:12px 0 0;font-size:14px;text-align:center}.action-buttons{display:flex;gap:15px;margin-top:30px;padding-top:30px;border-top:2px solid #333}.btn{padding:14px 32px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#00a0df;color:#fff;flex:2}.btn-primary:hover:not(:disabled){background:#0369a1;transform:translateY(-1px);box-shadow:0 4px 12px #00a0df4d}.btn-secondary{background:#444;color:#fff;flex:1}.btn-secondary:hover:not(:disabled){background:#555}.csv-upload-page::-webkit-scrollbar,.results-list::-webkit-scrollbar{width:10px}.csv-upload-page::-webkit-scrollbar-track,.results-list::-webkit-scrollbar-track{background:#0a0a0a}.csv-upload-page::-webkit-scrollbar-thumb,.results-list::-webkit-scrollbar-thumb{background:#444;border-radius:5px}.csv-upload-page::-webkit-scrollbar-thumb:hover,.results-list::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){.csv-upload-page,.csv-upload-container{padding:10px}.csv-upload-container h1{font-size:24px}.action-buttons{flex-direction:column}.btn{width:100%}.ranges-list{gap:8px}.range-badge{font-size:14px;padding:6px 12px}.result-item{flex-direction:column;align-items:flex-start;gap:8px}.channel-num,.row-num{min-width:auto}}body:has(.manifest-ad-watcher) #root{overflow-x:hidden;overflow-y:auto;height:100vh}.manifest-ad-watcher{padding:30px;max-width:1400px;margin:0 auto}.manifest-ad-watcher .section-header{margin-bottom:25px;display:flex;justify-content:space-between;align-items:center}.manifest-ad-watcher .section-header h2{color:var(--text-color);font-size:1.8rem;font-weight:600;margin:0}.manifest-ad-watcher .close-button{background:transparent;border:none;color:var(--text-secondary);font-size:2rem;line-height:1;padding:0;width:40px;height:40px;cursor:pointer;transition:color .2s;display:flex;align-items:center;justify-content:center;border-radius:4px}.manifest-ad-watcher .close-button:hover{color:var(--text-color);background:#ffffff0d}.manifest-ad-watcher .section-description{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:20px;margin-bottom:25px}.manifest-ad-watcher .section-description p{color:var(--text-secondary);line-height:1.6;margin:0;font-size:.95rem}.manifest-ad-watcher .monitoring-summary{margin-bottom:30px}.manifest-ad-watcher .summary-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.manifest-ad-watcher .summary-card{background:linear-gradient(135deg,var(--primary-color) 0%,#0369a1 100%);border-radius:12px;padding:25px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 15px #00a0df33;transition:transform .2s,box-shadow .2s}.manifest-ad-watcher .summary-card-large{padding:50px 40px;min-height:200px}.manifest-ad-watcher .summary-card:hover{transform:translateY(-3px);box-shadow:0 6px 25px #00a0df4d}.manifest-ad-watcher .summary-count{font-size:4rem;font-weight:700;color:#fff;line-height:1}.manifest-ad-watcher .summary-label{color:#fff;font-size:1.1rem;opacity:.95;text-align:center;max-width:80%}.manifest-ad-watcher .queue-breakdown{display:flex;align-items:center;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.2);width:100%;justify-content:center}.manifest-ad-watcher .breakdown-item{color:#ffffffe6;font-size:.9rem}.manifest-ad-watcher .breakdown-separator{color:#ffffff80;font-size:.9rem}.manifest-ad-watcher .queue-actions{display:flex;justify-content:center;margin:20px 0}.manifest-ad-watcher .controls-section{display:flex;gap:15px;margin-bottom:30px}.manifest-ad-watcher .launch-btn,.manifest-ad-watcher .refresh-btn{padding:10px 20px;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.manifest-ad-watcher .launch-btn{background:var(--primary-color);color:#fff}.manifest-ad-watcher .launch-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #00a0df4d}.manifest-ad-watcher .refresh-btn{background:var(--surface-color);color:var(--text-color);border:1px solid var(--border-color)}.manifest-ad-watcher .refresh-btn:hover:not(:disabled){background:var(--background-color);border-color:var(--primary-color)}.manifest-ad-watcher .launch-btn:disabled,.manifest-ad-watcher .refresh-btn:disabled{opacity:.5;cursor:not-allowed}.manifest-ad-watcher .tasks-section{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:20px}.manifest-ad-watcher .tasks-section h3{margin:0 0 20px;color:var(--text-color);font-size:1.2rem;font-weight:600}.manifest-ad-watcher .loading-message,.manifest-ad-watcher .error-message,.manifest-ad-watcher .no-tasks-message{text-align:center;padding:30px;border-radius:6px;margin:20px 0}.manifest-ad-watcher .loading-message{background:#00a0df0d;color:var(--primary-color);border:1px dashed rgba(0,160,223,.3)}.manifest-ad-watcher .error-message{background:#dc35450d;color:#dc3545;border:1px dashed rgba(220,53,69,.3)}.manifest-ad-watcher .no-tasks-message{background:#6c757d0d;color:#6c757d;border:1px dashed rgba(108,117,125,.3)}.manifest-ad-watcher .tasks-table-container{overflow-x:auto;border-radius:6px;border:1px solid var(--border-color)}.manifest-ad-watcher .tasks-table{width:100%;border-collapse:collapse;background:var(--background-color)}.manifest-ad-watcher .tasks-table th,.manifest-ad-watcher .tasks-table td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--border-color)}.manifest-ad-watcher .tasks-table th{background:var(--surface-color);color:var(--text-color);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:1}.manifest-ad-watcher .tasks-table td{color:var(--text-secondary);font-size:.9rem}.manifest-ad-watcher .tasks-table tbody tr:hover{background:#00a0df08}.manifest-ad-watcher .tasks-table tbody tr:last-child td{border-bottom:none}.manifest-ad-watcher .task-id code{background:#00a0df1a;color:var(--primary-color);padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.85rem}.manifest-ad-watcher .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.manifest-ad-watcher .status-running{background:#28a7451a;color:#28a745}.manifest-ad-watcher .status-pending{background:#ffc1071a;color:#ffc107}.manifest-ad-watcher .status-stopped{background:#dc35451a;color:#dc3545}.manifest-ad-watcher .status-stopping{background:#ff851b1a;color:#ff851b}.manifest-ad-watcher .status-provisioning{background:#007bff1a;color:#007bff}.manifest-ad-watcher .status-unknown{background:#6c757d1a;color:#6c757d}.manifest-ad-watcher .streams-count{font-weight:600;color:var(--primary-color)}.manifest-ad-watcher .cpu,.manifest-ad-watcher .memory{font-family:Courier New,monospace;font-size:.85rem}.manifest-ad-watcher .uptime{font-weight:500}.manifest-ad-watcher .last-update{font-size:.85rem;color:#999;margin-top:.5rem;text-align:center}.manifest-ad-watcher .polling-indicator{color:var(--primary-color);animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.manifest-ad-watcher .container-ip{font-family:Courier New,monospace;font-size:.85rem}.manifest-ad-watcher .task-def-revision{color:var(--primary-color);font-weight:500}.manifest-ad-watcher .status-activating{background:#ffc1071a;color:#ffc107}.manifest-ad-watcher .status-deprovisioning,.manifest-ad-watcher .status-deactivating{background:#6c757d1a;color:#6c757d}.manifest-ad-watcher .error-message{background:#dc35451a;border:1px solid rgba(220,53,69,.3);color:#dc3545;padding:12px 16px;border-radius:6px;margin:16px 0;font-size:.9rem}.manifest-ad-watcher .started-at{font-size:.85rem;color:var(--text-secondary)}@media (max-width: 768px){.manifest-ad-watcher{padding:20px}.manifest-ad-watcher .section-header h2{font-size:1.5rem}.manifest-ad-watcher .summary-card{flex-direction:column;text-align:center;padding:20px}.manifest-ad-watcher .summary-count{font-size:2rem}.manifest-ad-watcher .controls-section{flex-direction:column}.manifest-ad-watcher .launch-btn,.manifest-ad-watcher .refresh-btn{width:100%;justify-content:center}.manifest-ad-watcher .tasks-table{font-size:.8rem}.manifest-ad-watcher .tasks-table th,.manifest-ad-watcher .tasks-table td{padding:8px 10px}}@media (max-width: 480px){.manifest-ad-watcher .tasks-table-container,.manifest-ad-watcher .task-id code{font-size:.75rem}.manifest-ad-watcher .started-at{display:none}}.streams-watched-section{margin-top:40px}.streams-watched-section h3{color:var(--text-color);font-size:1.4rem;font-weight:600;margin-bottom:20px}.streams-table-container{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;overflow-x:auto}.streams-table{width:100%;border-collapse:collapse}.streams-table thead{background:var(--surface-color);position:sticky;top:0;z-index:10}.streams-table th{padding:12px;text-align:left;font-weight:600;color:var(--text-color);border-bottom:2px solid var(--border-color);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;background:var(--surface-color);position:sticky;top:0;z-index:11}.streams-table tbody tr{border-bottom:1px solid rgba(255,255,255,.05);transition:background-color .2s}.streams-table tbody tr.sqs-row{background:#00a0df1a}.streams-table tbody tr:hover{background:#00a0df0d}.streams-table tbody tr.sqs-row:hover{background:#00a0df26}.streams-table tbody tr:last-child{border-bottom:none}.streams-table td{padding:12px;color:var(--text-secondary);font-size:.9rem}.channel-number{font-weight:600;color:var(--primary-color)}.channel-number .channel-link{color:var(--primary-color);text-decoration:none;transition:opacity .2s}.channel-number .channel-link:hover{opacity:.8;text-decoration:underline}.channel-name{color:var(--text-color)}.watched-since{color:var(--text-secondary);font-size:.85rem}.leadtv-link-btn{display:inline-block;padding:4px 12px;background:var(--primary-color);color:#fff;text-decoration:none;border-radius:4px;font-size:.85rem;transition:background-color .2s}.leadtv-link-btn:hover{background:var(--primary-hover)}.no-streams-message{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:30px;text-align:center;color:var(--text-secondary);font-size:.9rem}.streams-loading{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.loading-text{color:var(--text-secondary);font-size:.9rem}.url-with-copy{display:flex;align-items:center;gap:8px}.stream-url-text{background:#0000004d;padding:6px 10px;border-radius:4px;font-size:.8rem;color:var(--text-secondary);font-family:Courier New,monospace;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:500px}.copy-btn{background:var(--primary-color);border:none;color:#fff;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s;white-space:nowrap;min-width:90px;font-weight:500}.copy-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.copy-btn:active{transform:translateY(0)}.status-monitoring{background:#fbbf2433;color:#fbbf24;padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center;gap:4px;cursor:help}.status-found{background:#22c55e33;color:#22c55e;padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center;gap:4px;cursor:help}.task-ref{font-family:monospace;font-size:.85rem;color:var(--text-secondary)}.task-actions{text-align:center;padding:8px}.kill-task-btn{background:#dc2626;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex;align-items:center;gap:4px}.kill-task-btn:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px)}.kill-task-btn:disabled{background:#6b7280;cursor:not-allowed;transform:none}.kill-task-btn:active{transform:translateY(0)}.queue-status-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:15px 20px;margin-top:15px;display:flex;justify-content:space-between;align-items:center}.queue-metrics{display:flex;gap:30px}.queue-metric{color:var(--text-secondary);font-size:.9rem}.queue-metric strong{color:var(--text-color);font-weight:600;margin-right:5px}.reset-queue-btn{background:#f59e0b;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex;align-items:center;gap:8px;box-shadow:0 2px 8px #f59e0b4d}.reset-queue-btn:hover:not(:disabled){background:#d97706;transform:translateY(-1px)}.reset-queue-btn:disabled{background:#6b7280;cursor:not-allowed;transform:none}.reset-queue-btn:active{transform:translateY(0)}@media (max-width: 768px){.manifest-ad-watcher .summary-cards-grid{grid-template-columns:1fr}.manifest-ad-watcher .summary-card-large{padding:30px 25px;min-height:150px}.manifest-ad-watcher .summary-count{font-size:3rem}.manifest-ad-watcher .summary-label{font-size:1rem}}body:has(.changelog-container) #root{overflow-x:hidden;overflow-y:auto;height:100vh}.changelog-container{padding:30px;max-width:1200px;margin:0 auto}.changelog-title{color:#00a0df;font-size:2.5rem;font-weight:700;margin-bottom:2rem;text-align:center;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.changelog-content{background:#000000b3;border-radius:12px;padding:2rem}.build-entry{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid rgba(142,209,252,.2)}.build-entry:last-child{border-bottom:none;padding-bottom:0}.build-header{color:#8ed1fc;font-size:1.8rem;font-weight:600;margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.build-date{font-size:1rem;color:#8ed1fcb3;font-weight:400}.section{margin-bottom:2rem}.section-header{font-size:1.2rem;font-weight:600;margin-bottom:.8rem;text-transform:uppercase;letter-spacing:.05em}.section-added{color:#4ade80}.section-fixed{color:#fbbf24}.section-changed{color:#60a5fa}.section-initial{color:#a78bfa}.change-list{list-style:none;padding:0;margin:0}.change-item{color:#ffffffe6;line-height:1.6;padding:.5rem 0 .5rem 1.5rem;position:relative}.change-item:before{content:"•";position:absolute;left:0;color:#00a0df;font-weight:700}.loading,.error{text-align:center;padding:3rem;font-size:1.2rem}.error{color:#ff6b6b}@media (max-width: 768px){.changelog-container{padding:1rem}.changelog-title{font-size:2rem}.build-header{font-size:1.5rem;flex-direction:column;align-items:flex-start}.build-date{font-size:.9rem}}.cors-check-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);padding:20px}.cors-check-card{background:#2a2a2a;border-radius:16px;box-shadow:0 10px 40px #00000080;max-width:600px;width:100%;overflow:hidden;border:1px solid rgba(0,160,223,.2)}.cors-check-header{background:linear-gradient(135deg,#00a0df,#0369a1);padding:30px;text-align:center;position:relative}.cors-icon{width:80px;height:80px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:50%;position:relative}.cors-icon svg{width:50px;height:50px}.cors-icon.checking svg{color:#00a0df;margin-left:1px}.cors-icon.passed svg{color:#10b981}.cors-icon.failed svg{color:#fbbf24}.spinner{animation:rotate 2s linear infinite;transform-origin:center center}.spinner .path{stroke:#00a0df;stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.cors-check-header h2{color:#fff;margin:0;font-size:28px;font-weight:600}.cors-check-body{padding:30px}.status-message{color:#e0e0e0;font-size:16px;text-align:center;margin-bottom:25px;min-height:24px}.progress-bar-container{margin-bottom:30px}.progress-bar{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;position:relative;margin-bottom:10px}.progress-fill{height:100%;background:linear-gradient(90deg,#00a0df,#8ed1fc);border-radius:4px;transition:width .3s ease;box-shadow:0 0 10px #00a0df80}.progress-text{display:block;text-align:center;color:#8ed1fc;font-size:14px;font-weight:600}.error-section{background:#00a0df0d;border:1px solid rgba(0,160,223,.2);border-radius:8px;padding:20px;animation:fadeIn .5s ease}.error-section h3{color:#00a0df;margin:0 0 15px;font-size:18px;display:flex;align-items:center;gap:10px}.error-section p{color:#e0e0e0;line-height:1.6;margin:10px 0;font-size:14px}.error-section h4{color:#00a0df;margin:20px 0 15px;font-size:16px}.error-section ul{list-style:none;padding:0;margin:0}.error-section li{color:#e0e0e0;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.error-section li:last-child{border-bottom:none}.error-section strong{color:#8ed1fc;margin-right:8px}.section-divider{border:none;border-top:1px solid rgba(255,255,255,.1);margin:20px 0}.install-note{color:#a0a0a0;font-size:14px;font-style:italic;margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.success-section{text-align:center;animation:fadeIn .5s ease}.success-section p{color:#10b981;font-size:16px;margin:10px 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.action-buttons{display:flex;gap:15px;justify-content:center}.retry-button,.back-button{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;border:none;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px}.retry-button{background:linear-gradient(135deg,#00a0df,#0369a1);color:#fff}.retry-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #00a0df66}.retry-button svg{width:20px;height:20px}.back-button{background:#ffffff1a;color:#e0e0e0;border:1px solid rgba(255,255,255,.2)}.back-button:hover{background:#ffffff26;border-color:#ffffff4d}@media (max-width: 640px){.cors-check-card{margin:20px}.cors-check-header{padding:20px}.cors-check-header h2{font-size:24px}.cors-check-body{padding:20px}.action-buttons{flex-direction:column}.retry-button,.back-button{width:100%;justify-content:center}}.history-section{margin:20px 0;padding:15px;background:#0000004d;border-radius:8px;border:1px solid rgba(0,160,223,.2)}.history-section h3{font-size:.9rem;color:#888;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px;font-weight:400}.history-list{max-height:300px;overflow-y:auto;padding-right:8px}.history-list::-webkit-scrollbar{width:6px}.history-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.history-list::-webkit-scrollbar-thumb{background:#00a0df4d;border-radius:3px}.history-list::-webkit-scrollbar-thumb:hover{background:#00a0df80}.history-item{display:flex;align-items:flex-start;padding:10px 12px;margin-bottom:8px;background:#ffffff05;border-radius:6px;border-left:3px solid;transition:background .2s;font-size:.9rem}.history-item:hover{background:#ffffff0d}.history-item.error{border-left-color:#dc2626}.history-item.success{border-left-color:#10b981}.history-item.warning{border-left-color:#f59e0b}.history-item.info{border-left-color:#00a0df}.history-icon{font-size:18px;margin-right:10px;flex-shrink:0;line-height:1.2}.history-content{flex:1;min-width:0}.history-message{color:#ffffffe6;font-size:.85rem;line-height:1.4;margin-bottom:4px;word-wrap:break-word}.history-meta{display:flex;align-items:center;gap:12px;font-size:.75rem;color:#ffffff80}.history-timestamp{color:#fff6}.history-user{color:#fff6;font-style:italic}.history-empty{text-align:center;color:#fff6;padding:20px;font-size:.85rem}.history-error{background:#dc26261a;border:1px solid rgba(220,38,38,.2);color:#f87171;padding:10px;border-radius:6px;font-size:.85rem}.history-loading{text-align:center;color:#fff6;padding:12px;font-size:.85rem}.history-load-more{width:100%;padding:6px 12px;margin-top:8px;background:#00a0df1a;border:1px solid rgba(0,160,223,.2);color:#ffffffb3;border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s}.history-load-more:hover{background:#00a0df33;border-color:#00a0df4d;color:#ffffffe6}.history-load-more:active{transform:scale(.98)}.ad-markers-section{margin:20px 0;padding:15px;background:#0000004d;border-radius:8px;border:1px solid rgba(0,160,223,.2)}.ad-markers-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.ad-markers-section .button-group{display:flex;gap:10px}.ad-markers-section .section-header h3{font-size:.9rem;color:#888;text-transform:uppercase;letter-spacing:1px;margin:0;font-weight:400}.ad-markers-section .scanning-indicator{color:#00a0df;font-size:.8rem;font-weight:400;text-transform:none;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.ad-markers-section .refresh-btn,.ad-markers-section .scan-btn{background:var(--primary-color);color:#fff;border:none;border-radius:4px;padding:6px 10px;cursor:pointer;font-size:14px;transition:background-color .2s}.ad-markers-section .scan-btn{background:linear-gradient(135deg,#00a0df,#0369a1)}.ad-markers-section .refresh-btn:hover:not(:disabled){background:var(--primary-hover)}.ad-markers-section .scan-btn:hover:not(:disabled){background:linear-gradient(135deg,#00a0df,#0369a1)}.ad-markers-section .refresh-btn:disabled,.ad-markers-section .scan-btn:disabled{opacity:.6;cursor:not-allowed}.ad-markers-section .loading-message,.ad-markers-section .error-message,.ad-markers-section .no-data-message{text-align:center;padding:20px;border-radius:4px;margin:10px 0}.ad-markers-section .loading-message{background:#00a0df1a;color:var(--primary-color);border:1px solid rgba(0,160,223,.2)}.ad-markers-section .error-message{background:#dc35451a;color:#dc3545;border:1px solid rgba(220,53,69,.2)}.ad-markers-section .no-data-message{background:#6c757d1a;color:#6c757d;border:1px solid rgba(108,117,125,.2)}.ad-markers-table-container{overflow-x:auto;border-radius:6px;border:1px solid var(--border-color)}.ad-markers-table{width:100%;border-collapse:collapse;background:var(--background-color)}.ad-markers-table th,.ad-markers-table td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--border-color)}.ad-markers-table th{background:var(--surface-color);color:var(--text-color);font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:1}.ad-markers-table td{color:var(--text-secondary);font-size:.9rem}.ad-markers-table tbody tr:hover{background:#00a0df0d}.ad-markers-table tbody tr:last-child td{border-bottom:none}.ad-markers-table .time-seen{font-family:Courier New,monospace;font-size:.85rem;white-space:nowrap}.ad-markers-table .marker-type code{background:#00a0df1a;color:var(--primary-color);padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.85rem;font-weight:500}.ad-markers-table .duration{font-family:Courier New,monospace;font-size:.85rem;font-weight:500}.ad-markers-table .extra{max-width:200px}.ad-markers-table .extra-data{font-family:Courier New,monospace;font-size:.8rem;color:#6c757d;cursor:help}@media (max-width: 768px){.ad-markers-section{padding:15px;margin-top:15px}.ad-markers-table th,.ad-markers-table td{padding:8px 10px;font-size:.8rem}.ad-markers-table .extra{max-width:120px}.ad-markers-section .section-header h3{font-size:1rem}}@media (max-width: 480px){.ad-markers-table-container{font-size:.75rem}.ad-markers-table th,.ad-markers-table td{padding:6px 8px}.ad-markers-section .section-header{flex-direction:column;gap:10px;align-items:flex-start}}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}.iptv-container{width:100vw;height:100vh;display:flex;flex-direction:column;background:#1a1a1a}.app-header{height:60px;background:#0f0f0f;border-bottom:2px solid #00a0df;display:flex;align-items:center;justify-content:space-between;padding:0 30px;box-shadow:0 2px 10px #00a0df33}.logo-container{display:flex;align-items:center;position:relative}.tab-navigation{display:flex;gap:20px;margin-left:40px;flex:1}.tab-link{padding:8px 16px;color:#888;text-decoration:none;font-size:14px;font-weight:500;border-bottom:2px solid transparent;transition:all .3s ease;cursor:pointer}.tab-link:hover{color:#00a0df}.tab-link.active{color:#00a0df;border-bottom-color:#00a0df}.logo{height:35px;width:auto;position:relative}.lab-badge{height:18px;width:auto;margin-left:2px;margin-bottom:15px;align-self:flex-start}.header-right-section{display:flex;align-items:center;gap:16px}.channel-search{display:flex;align-items:center}.channel-search-input{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:8px 12px;color:#fff;font-size:14px;width:200px;transition:all .3s ease}.channel-search-input::placeholder{color:#ffffff80}.channel-search-input:focus{outline:none;background:#ffffff26;border-color:#00a0df;width:250px}.auth-container{display:flex;align-items:center}.no-channels-message{display:flex;flex-direction:column;align-items:center;justify-content:center;height:calc(100vh - 60px);color:#999;font-size:18px;gap:20px}.no-channels-message p{margin:0}.clear-search-btn{padding:8px 16px;background:#00a0df;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .3s ease}.clear-search-btn:hover{background:#0369a1}.user-info{display:flex;align-items:center;gap:12px}.username{color:#00a0df;font-size:14px;font-weight:500}.login-btn,.logout-btn{padding:8px 20px;background-color:#00a0df;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s}.login-btn:hover,.logout-btn:hover{background-color:#0369a1;transform:translateY(-1px)}.login-btn:active,.logout-btn:active{transform:translateY(0)}.logout-btn{background-color:#555}.logout-btn:hover{background-color:#666}.main-content{display:flex;width:100%;height:calc(50vh - 30px)}.loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;background:#1a1a1a}.player-section{width:55%;height:100%;position:relative}.player-container{position:relative;width:100%;height:100%;background:#000;display:flex;align-items:center;justify-content:center}.video-player{width:100%;height:100%;background:#000}.error-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#ff0000e6;color:#fff;padding:15px 25px;border-radius:8px;font-size:16px;font-weight:700;z-index:1000;box-shadow:0 4px 6px #0000004d;animation:fadeIn .3s ease-in}.success-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#10b981e6;color:#fff;padding:15px 25px;border-radius:8px;font-size:16px;font-weight:700;z-index:1000;box-shadow:0 4px 6px #0000004d;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.channel-divider{position:relative;height:4px;background:linear-gradient(90deg,transparent 0%,#00a0df 20%,#0369a1 50%,#00a0df 80%,transparent 100%);box-shadow:0 0 20px #00a0df80,0 0 40px #00a0df4d}.divider-glow{position:absolute;top:-10px;left:0;right:0;height:20px;background:radial-gradient(ellipse at center,rgba(0,160,223,.2) 0%,transparent 70%);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.channel-overlay{position:absolute;top:20px;left:20px;background:#000000e6;color:#fff;padding:15px 25px;border-radius:8px;z-index:100;animation:fadeIn .3s ease;border:1px solid rgba(0,160,223,.5);box-shadow:0 4px 15px #00000080}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.overlay-content{display:flex;align-items:center;gap:15px}.channel-number{font-size:2rem;font-weight:700;color:#00a0df}.channel-name{font-size:1.5rem}.channel-btn{position:absolute;right:10px;width:50px;height:50px;border-radius:50%;border:none;background:#00a0dfe6;color:#fff;font-size:2rem;font-weight:700;cursor:pointer;z-index:50;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px #0000004d}.channel-btn:hover{background:#00a0df;transform:scale(1.1);box-shadow:0 6px 8px #0006}.channel-btn:active{transform:scale(.95)}.next-btn{top:calc(50% - 35px)}.prev-btn{top:calc(50% + 35px)}.info-panel{width:45%;height:100%;background:#2a2a2a;padding:30px;overflow-y:auto;border-left:2px solid #3a3a3a}.info-content{display:flex;flex-direction:column;gap:25px;color:#fff}.info-row{display:flex;gap:15px}.info-section{display:flex;flex-direction:column;gap:8px}.info-section.half-width{flex:1}.info-section.half-width:first-child{flex:0 0 120px}.info-section label{font-size:.9rem;color:#888;text-transform:uppercase;letter-spacing:1px}.info-value{font-size:1.2rem;color:#f0f0f0;padding:10px;background:#0000004d;border-radius:6px;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:10px;height:44px;box-sizing:border-box}.country-flag-inline{font-size:1.2rem;cursor:help;margin-left:8px;line-height:1}.url-value{font-size:.9rem;font-family:monospace;display:flex;align-items:center;justify-content:space-between;gap:10px}.url-text{flex:1;word-break:break-all;max-height:60px;overflow-y:auto;overflow-x:hidden}.copy-btn{background:#00a0df33;border:1px solid #00a0df;color:#00a0df;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s ease;flex-shrink:0;min-width:32px}.copy-btn:hover{background:#00a0df4d;transform:scale(1.05)}.copy-btn:active{transform:scale(.95)}.copy-btn.copied{background:#4caf5033;border-color:#4caf50;color:#4caf50;animation:copySuccess .3s ease}@keyframes copySuccess{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.ai-section{flex:1;display:flex;flex-direction:column;margin:20px 0;padding:15px;background:#0000004d;border-radius:8px;border:1px solid rgba(0,160,223,.2);min-height:0}.ai-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ai-header-controls{display:flex;align-items:center;gap:15px}.show-hidden-checkbox{display:flex;align-items:center;cursor:pointer;font-size:.9rem;color:#8ed1fc}.show-hidden-checkbox input[type=checkbox]{margin-right:6px;cursor:pointer;accent-color:#00a0df}.show-hidden-checkbox span{-webkit-user-select:none;user-select:none}.ai-header label{font-size:.9rem;color:#888;text-transform:uppercase;letter-spacing:1px}.ai-query-btn{padding:6px 12px;background:#00a0df33;color:#00a0df;border:1px solid #00a0df;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.ai-query-btn:hover{background:#00a0df4d;transform:translateY(-1px)}.ai-list{flex:1;overflow-y:auto;margin-bottom:15px;min-height:100px}.no-ai{color:#666;font-size:.9rem;text-align:center;padding:20px}.ai-loading{display:flex;align-items:center;justify-content:center;padding:20px;color:#00a0df}.spinner{width:20px;height:20px;border:2px solid rgba(0,160,223,.3);border-top-color:#00a0df;border-radius:50%;animation:spin .8s linear infinite;margin-right:10px}@keyframes spin{to{transform:rotate(360deg)}}.ai-interaction{position:relative;padding:12px;margin-bottom:10px;background:#0003;border-radius:6px;border-left:3px solid #00a0df;transition:opacity .3s}.ai-interaction.pending{opacity:.8}.ai-interaction.hidden-item{opacity:.6;border-left-color:#666}.ai-hide-btn{position:absolute;top:10px;right:10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:4px 8px;cursor:pointer;font-size:1rem;transition:all .2s ease;z-index:1}.ai-hide-btn:hover{background:#ffffff26;border-color:#00a0df}.hidden-badge{margin-left:8px;color:#8ed1fc;font-size:.85rem}.ai-prompt,.ai-response{margin-bottom:8px;font-size:.9rem;line-height:1.4}.ai-prompt{cursor:help}.ai-prompt strong,.ai-response strong,.ai-response-content strong{color:#00a0df;display:inline-block;margin-bottom:4px;margin-right:8px}.markdown-content{margin-top:8px;color:#e0e0e0;line-height:1.6}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{color:#00a0df;margin-top:16px;margin-bottom:8px}.markdown-content h1{font-size:1.4rem}.markdown-content h2{font-size:1.2rem}.markdown-content h3{font-size:1.1rem}.markdown-content p{margin-bottom:12px}.markdown-content ul,.markdown-content ol{margin-left:24px;margin-bottom:12px}.markdown-content li{margin-bottom:4px}.markdown-content code{background:#00a0df1a;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em}.markdown-content pre{background:#00000080;padding:12px;border-radius:6px;overflow-x:auto;margin-bottom:12px}.markdown-content pre code{background:transparent;padding:0}.markdown-content blockquote{border-left:3px solid #00a0df;padding-left:16px;margin-left:0;color:#999;font-style:italic}.markdown-content strong{color:#fff;font-weight:600}.markdown-content em{color:#ccc}.markdown-content a{color:#00a0df;text-decoration:underline}.markdown-content a:hover{color:#0369a1}.prompt-text{display:inline;word-break:break-word}.ai-pending{display:flex;align-items:center;color:#fbbf24;font-style:italic}.spinner-small{width:16px;height:16px;border:2px solid rgba(251,191,36,.3);border-top-color:#fbbf24;border-radius:50%;animation:spin .8s linear infinite;margin-right:8px}.ai-timestamp{font-size:.8rem;color:#666;text-align:right;display:flex;justify-content:flex-end;align-items:center;gap:8px}.error-badge{color:#ef4444;font-size:.9rem}.ai-prompt-section{border-top:1px solid rgba(0,160,223,.2);padding-top:15px;margin-top:15px}.ai-prompt-section label{display:block;color:#999;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.ai-prompt-input-wrapper{display:flex;gap:10px;align-items:flex-end}.ai-prompt-input{flex:1;background:#0000004d;border:1px solid rgba(0,160,223,.3);border-radius:4px;padding:8px;color:#fff;font-size:.9rem;resize:vertical;min-height:40px}.ai-prompt-input:focus{outline:none;border-color:#00a0df;background:#00000080}.ai-prompt-input:disabled{opacity:.5;cursor:not-allowed}.ai-prompt-query-btn{padding:8px 16px;background:#00a0df;border:none;border-radius:4px;color:#fff;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.ai-prompt-query-btn:hover:not(:disabled){background:#0369a1}.ai-prompt-query-btn:disabled{opacity:.5;cursor:not-allowed}.notes-section{margin:20px 0;padding:15px;background:#0000004d;border-radius:8px;border:1px solid rgba(0,160,223,.2)}.notes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.notes-header label{font-size:.9rem;color:#888;text-transform:uppercase;letter-spacing:1px}.add-note-btn{padding:6px 12px;background:#00a0df33;color:#00a0df;border:1px solid #00a0df;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.add-note-btn:hover{background:#00a0df4d;transform:translateY(-1px)}.note-input-wrapper{margin-bottom:12px}.note-input{width:100%;padding:10px;background:#1a1a1a;border:1px solid #3a3a3a;color:#fff;border-radius:6px;font-size:.95rem;resize:vertical;font-family:inherit}.note-input:focus{outline:none;border-color:#00a0df;box-shadow:0 0 5px #00a0df33}.note-input-actions{display:flex;gap:8px;margin-top:8px}.note-save-btn,.note-cancel-btn{padding:6px 16px;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.note-save-btn{background:#00a0df;color:#fff}.note-save-btn:hover{background:#0369a1}.note-cancel-btn{background:#666;color:#fff}.note-cancel-btn:hover{background:#777}.notes-list{max-height:200px;overflow-y:auto}.notes-list::-webkit-scrollbar{width:6px}.notes-list::-webkit-scrollbar-track{background:#1a1a1a;border-radius:3px}.notes-list::-webkit-scrollbar-thumb{background:#00a0df;border-radius:3px}.note-item{display:flex;justify-content:space-between;align-items:flex-start;padding:10px;margin-bottom:8px;background:#ffffff0d;border-radius:6px;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.note-item:hover{background:#ffffff14;border-color:#00a0df4d}.note-content{flex:1;margin-right:10px}.note-text{color:#f0f0f0;font-size:.95rem;line-height:1.4;word-wrap:break-word}.note-timestamp{color:#888;font-size:.75rem;margin-top:4px}.note-delete-btn{width:24px;height:24px;padding:0;background:#f4433633;color:#f44336;border:1px solid #f44336;border-radius:4px;font-size:1.2rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.note-delete-btn:hover{background:#f443364d;transform:scale(1.1)}.no-notes{color:#666;font-size:.9rem;text-align:center;padding:20px}.note-indicator{margin-left:8px;font-size:.9em;vertical-align:middle}.ad-marker-indicator{margin-left:8px;font-size:.9em;vertical-align:middle;filter:hue-rotate(200deg)}.tier-indicator{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:linear-gradient(135deg,#00a0df,#0369a1);color:#fff;border-radius:50%;margin-left:8px;font-size:.85em;font-weight:700;vertical-align:middle}.tier-section{margin-top:20px;padding:15px;background:#ffffff08;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.tier-section label{display:block;color:#8ed1fc;margin-bottom:10px;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.tier-dropdown{width:100%;padding:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:5px;color:#fff;font-size:1rem;cursor:pointer;transition:all .3s ease}.tier-dropdown:hover:not(:disabled){background:#ffffff14;border-color:#00a0df}.tier-dropdown:focus{outline:none;border-color:#00a0df;box-shadow:0 0 0 2px #00a0df33}.tier-dropdown:disabled{opacity:.5;cursor:not-allowed}.tier-dropdown option{background:#1a1a1a;color:#fff}.tier-section .saving-indicator{margin-left:10px;color:#8ed1fc;font-size:.9rem;animation:pulse 1.5s infinite}.tier-section .auth-hint{display:inline-block;margin-left:10px;color:#ffffff80;font-size:.9rem;font-style:italic}.disable-btn{margin-top:20px;padding:15px 30px;background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #f443364d}.disable-btn:hover{background:linear-gradient(135deg,#d32f2f,#c62828);transform:translateY(-2px);box-shadow:0 6px 8px #f4433666}.disable-btn:active{transform:translateY(0)}.enable-btn{margin-top:20px;padding:15px 30px;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #4caf504d}.enable-btn:hover{background:linear-gradient(135deg,#45a049,#388e3c);transform:translateY(-2px);box-shadow:0 6px 8px #4caf5066}.enable-btn:active{transform:translateY(0)}.separator-bar{height:3px;background:linear-gradient(135deg,#00a0df,#0369a1);box-shadow:0 1px 4px #00a0df66}.channel-list-wrapper{flex:1;background:#1a1a1a;max-height:calc(50vh - 30px);display:flex}.channel-list{flex:1;overflow-y:auto;padding:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:8px}.channel-list::-webkit-scrollbar{width:8px}.channel-list::-webkit-scrollbar-track{background:#2a2a2a}.channel-list::-webkit-scrollbar-thumb{background:#00a0df;border-radius:4px}.channel-list::-webkit-scrollbar-thumb:hover{background:#0369a1}.channel-item{display:flex;align-items:center;padding:12px;background:#2a2a2a;border-radius:6px;cursor:pointer;transition:all .2s ease;border:2px solid transparent;color:#e0e0e0;position:relative}.channel-item:hover{background:#3a3a3a;transform:translate(5px);border-color:#00a0df4d}.channel-item.manually-enabled{border-color:#4caf50;background:linear-gradient(135deg,#2a2a2a,#4caf501a)}.channel-item.manually-enabled:before{content:"✓";position:absolute;left:-8px;color:#4caf50;font-size:18px;font-weight:700}.channel-item.active{background:linear-gradient(135deg,#00a0df,#0369a1);border-color:#00a0df;color:#fff;box-shadow:0 2px 8px #00a0df66}.channel-num{font-size:1.2rem;font-weight:700;min-width:55px;color:#00a0df;margin-right:12px}.channel-item.active .channel-num{color:#fff}.channel-info{display:flex;flex-direction:column;gap:2px;flex:1;overflow:hidden}.channel-title{font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-meta{display:flex;gap:8px;font-size:.85rem;opacity:.7}.channel-country{color:#8ed1fc;font-weight:600}.channel-res{white-space:nowrap}.filter-fab{position:fixed;bottom:20px;right:20px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#00a0df,#0369a1);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 8px #0000004d,0 0 20px #00a0df4d;transition:all .3s ease;z-index:1000}.filter-fab:hover{transform:scale(1.1) rotate(15deg);box-shadow:0 6px 12px #0006,0 0 30px #00a0df80}.filter-fab:active{transform:scale(.95)}.filter-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease}.filter-popup{background:#2a2a2a;border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 30px #00000080;border:1px solid rgba(0,160,223,.3);animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.special-filters{padding:15px;margin-bottom:15px;border-bottom:1px solid rgba(255,255,255,.1)}.special-filters h3{color:#8ed1fc;margin-bottom:15px;font-size:1rem;text-transform:uppercase;letter-spacing:1px}.tier-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.tier-filter-option{display:flex;align-items:center;padding:8px 12px;background:#ffffff0d;border-radius:5px;cursor:pointer;transition:all .3s ease}.tier-filter-option:hover{background:#ffffff14}.tier-filter-option input[type=radio]{margin-right:8px;cursor:pointer;accent-color:#00a0df}.tier-filter-option span{color:#fff;font-size:.95rem}.notes-filter{margin-top:15px}.notes-filter-option{display:flex;align-items:center;padding:8px 12px;background:#ffffff0d;border-radius:5px;cursor:pointer;transition:all .3s ease;width:fit-content}.notes-filter-option:hover{background:#ffffff14}.notes-filter-option input[type=checkbox]{margin-right:8px;cursor:pointer;accent-color:#00a0df}.notes-filter-option span{color:#fff;font-size:.95rem}.filter-popup h3{color:#8ed1fc;margin:20px 15px 10px;font-size:1rem;text-transform:uppercase;letter-spacing:1px}.filter-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #3a3a3a}.filter-header h2{margin:0;color:#00a0df;font-size:1.5rem}.close-btn{background:none;border:none;color:#999;font-size:2rem;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-btn:hover{background:#ffffff1a;color:#fff}.filter-controls{display:flex;gap:10px;padding:15px 20px;border-bottom:1px solid #3a3a3a}.filter-btn{flex:1;padding:10px;background:#3a3a3a;border:1px solid #4a4a4a;color:#fff;border-radius:6px;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background:#4a4a4a;border-color:#00a0df}.filter-search{padding:15px 20px;border-bottom:1px solid #3a3a3a}.search-input{width:100%;padding:10px 15px;background:#1a1a1a;border:1px solid #3a3a3a;color:#fff;border-radius:6px;font-size:1rem;transition:all .2s ease}.search-input:focus{outline:none;border-color:#00a0df;box-shadow:0 0 10px #00a0df33}.country-list{flex:1;overflow-y:auto;padding:15px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:10px;max-height:300px}.country-list::-webkit-scrollbar{width:8px}.country-list::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.country-list::-webkit-scrollbar-thumb{background:#00a0df;border-radius:4px}.country-item{display:flex;align-items:center;gap:8px;padding:8px;background:#1a1a1a;border-radius:6px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.country-item:hover{background:#3a3a3a;border-color:#00a0df4d}.country-item input[type=checkbox]{accent-color:#00a0df;cursor:pointer}.country-item span{font-size:.9rem;color:#e0e0e0;font-weight:600}.filter-footer{padding:20px;border-top:1px solid #3a3a3a;display:flex;justify-content:center}.apply-btn{padding:12px 40px;background:linear-gradient(135deg,#00a0df,#0369a1);border:none;color:#fff;font-size:1.1rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 10px #00a0df4d}.apply-btn:hover{transform:translateY(-2px);box-shadow:0 6px 15px #00a0df66}.apply-btn:active{transform:translateY(0)}@media (max-width: 768px){.iptv-container{display:flex;flex-direction:column;height:100vh}.main-content{flex-direction:column;height:auto;flex:none}.player-section{width:100%;height:30vh;order:1;flex-shrink:0}.info-panel{width:100%;height:auto;min-height:25vh;max-height:25vh;border-left:none;border-top:2px solid #3a3a3a;order:2;padding:20px;overflow-y:auto;flex-shrink:0}.separator-bar{order:3;flex-shrink:0}.channel-list-wrapper{order:4;flex:1;min-height:0;max-height:calc(45vh - 63px);overflow:hidden}.channel-list{grid-template-columns:1fr;height:100%}.channel-btn{width:45px;height:45px;font-size:1.5rem}.channel-overlay{top:10px;left:10px;padding:10px 15px}.channel-number{font-size:1.5rem}.channel-name{font-size:1.2rem}.filter-popup{width:95%;max-height:90vh}.country-list{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}.filter-fab{bottom:20px;right:20px;width:50px;height:50px}.info-field{flex-direction:column;align-items:flex-start}.info-field input{width:100%}.channel-controls{flex-direction:column;gap:10px}.channel-nav{width:100%}.video-player{height:100%}.ai-section{max-height:none}}@font-face{font-family:Gilroy-ExtraBold;src:local("Gilroy ExtraBold"),local("Gilroy-ExtraBold"),local("Gilroy ExtBd"),local("GilroyExtBd");font-weight:800;font-style:normal}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#1a1a1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}
