.notification-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:10px;max-width:400px;pointer-events:none}.notification{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:12px;box-shadow:0 18px 42px #0206175c;animation:slideInNotification .3s ease-out;pointer-events:auto;font-size:.95rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.25)}@keyframes slideInNotification{0%{opacity:0;transform:translate(400px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutNotification{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(400px)}}.notification-success{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:#10b9814d}.notification-error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#ef44444d}.notification-warning{background:linear-gradient(135deg,#f59e0b,#b45309);color:#fff;border-color:#f59e0b4d}.notification-info{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border-color:#3b82f64d}.notification-content{display:flex;align-items:center;gap:12px;flex:1}.notification-icon{font-size:1.2rem;font-weight:700;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.notification-icon-svg{width:18px;height:18px}.notification-message{margin:0;line-height:1.4;word-wrap:break-word;max-width:280px}.notification-close{flex-shrink:0;background:none;border:none;color:inherit;font-size:1.5rem;cursor:pointer;padding:0;margin-left:12px;opacity:.7;transition:opacity .2s ease;display:flex;align-items:center;justify-content:center;width:28px;height:28px}.notification-close-icon{width:16px;height:16px}.notification-close:hover{opacity:1}@media (max-width: 600px){.notification-container{top:10px;right:10px;left:10px;max-width:none}.notification-message{max-width:none}}.navbar{display:flex;justify-content:flex-end;align-items:center;background:#0f172ab8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--tt-border);padding:1rem 2rem;box-shadow:0 8px 26px #02061759;position:sticky;top:0;z-index:50}.navbar-brand{flex:1}.navbar-brand h1{display:none}.navbar-menu{position:relative}.menu-toggle{cursor:pointer;display:flex;flex-direction:column;gap:.4rem;padding:.5rem;border-radius:.25rem;transition:background-color .2s}.menu-toggle:hover{background-color:#94a3b829}.hamburger span{display:block;width:24px;height:2px;background-color:#fff;border-radius:2px;transition:all .3s ease}.menu-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:.85rem;min-width:250px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease;box-shadow:0 8px 24px #0006}.menu-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.menu-header{padding:1rem;color:var(--tt-text);font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--tt-border)}.menu-item{padding:.75rem 1rem;color:var(--tt-text-muted);font-size:.9rem;border-bottom:1px solid rgba(148,163,184,.12);display:flex;flex-direction:column;gap:.25rem}.menu-item .label{color:#e2e8f080;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.menu-item .value{color:var(--tt-text);font-weight:500;word-break:break-all}.menu-divider{height:1px;background-color:var(--tt-border);margin:.5rem 0}.menu-button{display:flex;align-items:center;justify-content:center;gap:.45rem;width:calc(100% - 2rem);margin:.5rem 1rem;padding:.75rem;border:none;border-radius:.375rem;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.change-pwd-btn{background-color:#8b5cf633;color:#c4b5fd;border:1px solid rgba(139,92,246,.35)}.settings-btn{background-color:#0ea5e929;color:#7dd3fc;border:1px solid rgba(14,165,233,.35)}.settings-btn:hover{background-color:#0ea5e942;border-color:#0ea5e98c;transform:translateY(-2px)}.change-pwd-btn:hover{background-color:#8b5cf64d;border-color:#8b5cf68c;transform:translateY(-2px)}.logout-btn{background-color:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.35)}.logout-btn:hover{background-color:#ef44444d;border-color:#ef44448c;transform:translateY(-2px)}.settings-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0206178c;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.settings-modal{width:100%;max-width:560px;background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:.85rem;padding:1.2rem;box-shadow:0 20px 44px #0206176b}.settings-modal h3{margin:0;color:var(--tt-text);font-size:1.1rem}.settings-modal p{margin:.55rem 0 1rem;color:var(--tt-text-muted)}.settings-modal label{display:block;margin-bottom:.45rem;color:var(--tt-text);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.settings-modal input{width:100%;box-sizing:border-box;border-radius:.45rem;border:1px solid var(--tt-border);background:#0f172a99;color:var(--tt-text);padding:.75rem}.settings-error{margin-top:.6rem;color:#fca5a5;font-size:.85rem}.settings-actions{display:flex;justify-content:flex-end;gap:.55rem;margin-top:1rem}.settings-actions .menu-button{width:auto;min-width:100px;margin:0;text-transform:none;letter-spacing:0}.settings-secondary-btn{background:#94a3b829;color:var(--tt-text);border:1px solid rgba(148,163,184,.35)}.settings-secondary-btn:hover{background:#94a3b842}.settings-save-btn{background-color:#22c55e2e;color:#86efac;border:1px solid rgba(34,197,94,.4)}.settings-save-btn:hover{background-color:#22c55e47}.navbar-controls{display:flex;gap:.5rem;align-items:center;flex:1;justify-content:center}.nav-btn{padding:.5rem 1rem;background-color:#64b49633;border:1px solid rgba(100,180,150,.4);color:#64b496;border-radius:.375rem;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.nav-btn:hover{background-color:#64b4964d;border-color:#64b49699;transform:translateY(-2px)}.nav-btn:active{transform:translateY(0)}@media (max-width: 768px){.navbar{padding:1rem}.navbar-brand h1{font-size:1.2rem}.navbar-controls{gap:.25rem}.nav-btn{padding:.4rem .7rem;font-size:.8rem}.menu-dropdown{min-width:200px}.menu-item{font-size:.85rem}}.sidebar{position:fixed;left:0;top:0;width:260px;height:100vh;background:#020617db;border-right:1px solid var(--tt-border);display:flex;flex-direction:column;z-index:99;padding-top:1rem;overflow-y:auto;transition:width .2s ease}.sidebar.collapsed{width:84px}.sidebar-logo{display:flex;align-items:center;gap:.75rem;padding:0 1.5rem 1.5rem;border-bottom:1px solid var(--tt-border);margin-bottom:1rem;cursor:pointer;transition:opacity .2s ease}.sidebar.collapsed .sidebar-logo{padding:0 .75rem 1rem;justify-content:center}.sidebar-logo:hover{opacity:.8}.logo-icon{font-size:1.75rem}.logo-text{color:var(--tt-text);font-weight:700;font-size:1.4rem;letter-spacing:.5px}.logo-mark{width:52px;height:52px;border-radius:12px;border:1px solid rgba(203,213,225,.5);background:linear-gradient(180deg,#334155f2,#1e293beb);box-shadow:inset 0 1px #ffffff24;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.logo-image{width:96%;height:96%;object-fit:contain;border-radius:inherit}.sidebar.collapsed .logo-text{display:none}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem;padding:0 1rem;flex:1}.sidebar.collapsed .sidebar-nav{padding:0 .5rem}.nav-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:transparent;border:none;color:var(--tt-text-muted);cursor:pointer;border-radius:.5rem;transition:all .2s ease;text-align:left;font-size:.95rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .nav-item{justify-content:center;gap:0;padding:.75rem}.nav-item:hover{background:#94a3b824;color:var(--tt-text)}.nav-item.active{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;font-weight:600}.nav-icon{font-size:1.25rem;min-width:1.5rem;text-align:center;flex-shrink:0;width:1.5rem;height:1.5rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.4rem;background:#94a3b81f;border:1px solid var(--tt-border)}.nav-icon-svg{width:15px;height:15px;stroke-width:2.1}.nav-label{flex:1;overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .nav-label{display:none}.sidebar-footer{padding:.5rem 1rem 1rem;border-top:1px solid var(--tt-border)}.sidebar.collapsed .sidebar-footer{padding:.5rem .5rem .75rem}.sidebar-toggle-btn{margin-top:.25rem}.sidebar-import-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.sidebar-import-modal{background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:1rem;padding:2rem;width:90%;max-width:500px;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease}.sidebar-import-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;border-bottom:1px solid var(--tt-border);padding-bottom:1rem}.sidebar-import-header h2{margin:0;color:var(--tt-text);font-size:1.5rem;font-weight:700}.sidebar-close-btn{background:transparent;border:none;color:var(--tt-text-muted);font-size:1.5rem;cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease}.sidebar-close-btn:hover{background:#94a3b82e;color:var(--tt-text)}.sidebar-import-content{display:flex;flex-direction:column;gap:1rem}.sidebar-import-drop-zone{border:3px dashed rgba(167,139,250,.5);border-radius:18px;padding:50px 40px;text-align:center;cursor:pointer;transition:all .3s ease;background:#0f172ab3}.sidebar-import-drop-zone:hover{border-color:#a78bfad9;background:#0f172ad6}.sidebar-import-drop-zone.dragging{background:#8b5cf624;border-color:#a78bfa;box-shadow:0 0 30px #8b5cf640}.sidebar-import-drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none}.sidebar-import-drop-zone-content h3{color:var(--tt-text)}.sidebar-import-drop-icon{font-size:1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c4b5fd;margin-bottom:10px;display:block}.sidebar-import-drop-zone h3{font-size:1.3rem;margin:0 0 10px;font-weight:600}.sidebar-import-drop-description{margin:8px 0;color:var(--tt-text-muted);font-size:.95rem}.sidebar-import-drop-hint{font-size:.9rem;color:#e2e8f099;margin:12px 0}.sidebar-import-file-select-btn{display:inline-block;padding:10px 24px;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border-radius:10px;cursor:pointer;font-weight:600;transition:all .2s ease;pointer-events:all}.sidebar-import-file-select-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf666}.sidebar-import-hint{font-size:.85rem;color:#e2e8f09e;margin:12px 0 0}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:transparent;padding:2rem}.login-container{width:100%;max-width:400px}.login-form{background:var(--tt-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--tt-border);border-radius:1rem;padding:2rem;box-shadow:0 8px 32px #0000004d;animation:slideUp .3s ease}.login-form h2{margin:0 0 1.5rem;color:var(--tt-text);text-align:center;font-size:1.5rem;letter-spacing:.5px}.login-page .form-group{margin-bottom:1.5rem}.login-page .form-group label{display:block;margin-bottom:.5rem;color:var(--tt-text-muted);font-size:.9rem;font-weight:500}.login-page .form-group input{width:100%;padding:.75rem;background:#0f172aa8;border:1px solid var(--tt-border);border-radius:.375rem;color:var(--tt-text);font-size:.95rem;transition:all .2s ease;box-sizing:border-box}.login-page .form-group input:focus{outline:none;border-color:#a78bfabf;box-shadow:0 0 0 4px #a78bfa2e}.login-page .form-group input::placeholder{color:#e2e8f066}.login-btn{width:100%;padding:.75rem;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);border:none;border-radius:.375rem;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf657}.login-btn:disabled{opacity:.6;cursor:not-allowed}.forgot-password-btn{width:100%;background:transparent;border:1px solid rgba(148,163,184,.4);color:#e2e8f0e6;border-radius:.375rem;padding:.7rem;font-size:.9rem;cursor:pointer;transition:all .2s ease}.forgot-password-btn:hover:not(:disabled){border-color:#38bdf8b3;color:#bae6fd}.forgot-password-btn:disabled{opacity:.6;cursor:not-allowed}.divider{text-align:center;color:#e2e8f073;margin:1.5rem 0;font-size:.85rem;text-transform:uppercase;letter-spacing:1px}.login-page .message{margin-top:1rem;padding:.75rem;border-radius:.375rem;font-size:.9rem;text-align:center;animation:messageSlide .3s ease}@keyframes messageSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.login-form{padding:1.5rem}.login-form h2{font-size:1.25rem}.login-page .form-group input{font-size:16px}}#email,#password{color:#fff}.home-page{display:flex;flex-direction:column;height:100%;background:transparent;color:var(--tt-text)}.home-page .content-area{flex:1;padding:40px 20px;overflow-y:auto}.welcome-message{text-align:center;margin-bottom:50px;animation:fadeIn .5s ease-in}.welcome-message h1{font-size:2.8rem;margin:0 0 10px;font-weight:700;letter-spacing:.5px}.welcome-message p{font-size:1.1rem;color:var(--tt-text-muted);margin:0;font-weight:300}.quick-access{max-width:1200px;margin:0 auto 50px}.access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin-bottom:40px}.access-card{background:var(--tt-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--tt-border);border-radius:18px;padding:30px;cursor:pointer;transition:all .3s ease;text-align:center;box-shadow:var(--tt-shadow)}.access-card:hover{background:#0f172ae6;border-color:#a78bfa73;transform:translateY(-8px);box-shadow:0 28px 60px #13062573}.access-icon{font-size:3rem;margin-bottom:15px;display:block}.access-icon-svg{width:44px;height:44px}.access-card h3{font-size:1.3rem;margin:0 0 10px;font-weight:600}.access-card p{font-size:.95rem;margin:0;opacity:.9;line-height:1.4}.upload-section{max-width:1200px;margin:0 auto}.upload-section h2{font-size:1.8rem;margin:0 0 25px;text-align:center}.home-page .drop-zone{border:3px dashed rgba(255,255,255,.4);border-radius:18px;padding:60px 40px;text-align:center;cursor:pointer;transition:all .3s ease;background:var(--tt-surface);border-color:#a78bfa59;box-shadow:var(--tt-shadow)}.home-page .drop-zone:hover{border-color:#a78bfab8;background:#0f172ae0}.home-page .drop-zone.dragging{background:#8b5cf61f;border-color:#a78bfa;box-shadow:0 0 30px #a78bfa38}.drop-content{pointer-events:none}.drop-icon{font-size:3rem;margin-bottom:15px;display:block}.drop-icon-svg{width:42px;height:42px}.home-page .drop-zone h3{font-size:1.3rem;margin:0 0 10px;font-weight:600}.home-page .drop-zone p{font-size:.95rem;margin:8px 0;color:var(--tt-text-muted)}.drop-hint{font-size:.9rem!important;color:#fff9;margin:12px 0!important}.file-select-btn{display:inline-block;padding:10px 24px;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;transition:all .3s ease;margin:8px 0;pointer-events:all}.file-select-btn:hover{transform:translateY(-2px);box-shadow:0 8px 16px #8b5cf666}.home-page .drop-zone .hint{font-size:.85rem;color:#e2e8f094;font-style:italic;margin-top:15px}.home-page .error-message{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#fecaca;padding:15px 20px;border-radius:12px;margin-top:15px;text-align:center;font-weight:500}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.home-page .content-area{padding:20px}.welcome-message h1{font-size:2rem}.access-grid{grid-template-columns:1fr}.home-page .drop-zone{padding:40px 20px}.access-icon,.drop-icon{font-size:2.5rem}}.welcome-message h1{font-size:1.8rem}.welcome-message p{font-size:1rem}} .projects-list-page{height:100%;background:transparent}.projects-container{max-width:1200px;margin:0 auto;padding:40px 20px}.projects-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;color:var(--tt-text)}.projects-header h1{font-size:2.5rem;margin:0}.btn-create-new{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-create-new:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.projects-list-page .error-message{background:#ef444433;color:#fecaca;padding:15px;border-radius:12px;margin-bottom:20px;border:1px solid rgba(239,68,68,.4)}.tabs{display:flex;gap:15px;margin-bottom:30px;border-bottom:1px solid var(--tt-border)}.tab{background:none;border:none;color:var(--tt-text-muted);padding:15px 25px;font-size:1rem;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent}.tab:hover{color:var(--tt-text)}.tab.active{color:var(--tt-text);border-bottom-color:var(--tt-accent)}.search-bar-container{margin-bottom:30px}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:15px;font-size:1.1rem;pointer-events:none;color:#e2e8f073}.search-icon-svg{width:16px;height:16px}.search-bar{width:100%;padding:12px 15px 12px 45px;background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:12px;font-size:1rem;color:var(--tt-text);transition:all .3s ease}.search-bar::placeholder{color:#e2e8f073}.search-bar:focus{outline:none;border-color:#a78bfabf;box-shadow:0 0 0 4px #a78bfa2e}.search-clear{position:absolute;right:12px;background:#94a3b82e;border:none;color:var(--tt-text-muted);font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center}.search-clear-icon{width:16px;height:16px}.search-clear:hover{background:#94a3b84d;color:var(--tt-text)}.projects-list-page .loading{text-align:center;color:var(--tt-text);padding:60px 20px;font-size:1.2rem}.no-projects{background:var(--tt-surface);border:1px dashed rgba(167,139,250,.45);border-radius:18px;padding:60px 40px;text-align:center;color:var(--tt-text)}.no-projects p{margin:0 0 20px;font-size:1.1rem}.btn-create{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border:none;padding:12px 30px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-create:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.btn-clear-search{background:#94a3b82e;color:var(--tt-text);border:1px solid var(--tt-border);padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:15px}.btn-clear-search:hover{background:#94a3b847;border-color:#a78bfa80;transform:translateY(-2px)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.project-card{background:var(--tt-surface);border-radius:18px;padding:25px;cursor:pointer;transition:all .3s ease;box-shadow:var(--tt-shadow);border:1px solid var(--tt-border)}.project-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px #0003}.project-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:15px;gap:10px}.project-title-section{display:flex;align-items:center;gap:10px;flex:1}.project-header h3{margin:0;color:var(--tt-text)}.btn-delete-project{background:#ef444429;border:1px solid rgba(239,68,68,.34);color:#fecaca;border-radius:999px;display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;letter-spacing:.04em;cursor:pointer;padding:6px 10px;transition:all .2s ease;flex-shrink:0;opacity:.9}.btn-delete-project:hover{opacity:1;transform:translateY(-1px);background:#ef44443d;border-color:#ef44448f;color:#fee2e2}.project-card:hover .btn-delete-project{opacity:1}.btn-delete-project-text{line-height:1}.btn-delete-project-text:before{content:"X";margin-right:6px;font-weight:800}.badge-imported{background:#ffc107;color:#333;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.project-info{color:var(--tt-text-muted)}.project-info p{margin:8px 0;font-size:.95rem}.project-info strong{color:var(--tt-text)}.project-info .note{color:#e2e8f0ad;font-style:italic;margin-top:10px;padding-top:10px;border-top:1px solid var(--tt-border)}.pagination{display:flex;justify-content:center;gap:10px;margin-top:40px;flex-wrap:wrap}.pagination-btn{min-width:40px;padding:10px 12px;background:#94a3b829;border:1px solid var(--tt-border);color:var(--tt-text);border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:#94a3b842;border-color:#a78bfa80;transform:translateY(-2px)}.pagination-btn.active{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border-color:transparent;box-shadow:0 4px 15px #0003}.pagination-btn:disabled{cursor:not-allowed;opacity:.6}.projects-list-page .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.delete-modal{background:var(--tt-surface);border-radius:18px;box-shadow:0 20px 60px #0000004d;max-width:400px;width:90%;animation:slideUp .3s ease;border:1px solid var(--tt-border)}.delete-modal-header{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;padding:25px;border-radius:12px 12px 0 0;border-bottom:none}.delete-modal-header h2{margin:0;font-size:1.5rem;font-weight:700}.delete-modal-content{padding:25px;color:var(--tt-text)}.delete-modal-content p{margin:0 0 15px;line-height:1.6}.delete-warning{background:#f59e0b33;border-left:4px solid var(--tt-warning);padding:12px;border-radius:4px;color:#fcd34d;font-size:.9rem;margin-top:15px}.delete-modal-actions{display:flex;gap:12px;padding:20px 25px;border-top:1px solid var(--tt-border)}.btn-cancel,.btn-confirm-delete{flex:1;padding:12px 20px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.95rem}.btn-cancel{background:#94a3b833;color:var(--tt-text)}.btn-cancel:hover:not(:disabled){background:#94a3b847;transform:translateY(-2px)}.btn-confirm-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-confirm-delete:hover:not(:disabled){background:#ee3b46;transform:translateY(-2px);box-shadow:0 8px 20px #ff47574d}.btn-cancel:disabled,.btn-confirm-delete:disabled{opacity:.6;cursor:not-allowed}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.projects-header{flex-direction:column;align-items:flex-start;gap:15px}.projects-header h1{font-size:1.8rem}.btn-create-new{width:100%}.projects-grid{grid-template-columns:1fr}}.popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease}.popup-content{background:var(--tt-surface);border-radius:18px;padding:40px;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease;border:1px solid var(--tt-border)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.popup-content h2{margin:0 0 10px;color:var(--tt-text);font-size:1.5rem}.popup-content p{margin:0 0 25px;color:var(--tt-text-muted);font-size:.95rem}.popup-form{margin-bottom:25px}.popup-form input{width:100%;padding:12px 15px;border:1px solid var(--tt-border);border-radius:12px;background:#0f172aa8;color:var(--tt-text);font-size:1rem;transition:all .3s ease;box-sizing:border-box}.popup-form input:focus{outline:none;border-color:#a78bfabf;box-shadow:0 0 0 4px #a78bfa2e}.popup-form input::placeholder{color:#e2e8f06b}.error-text{color:#fca5a5;font-size:.85rem;margin-top:8px;font-weight:500}.char-count{font-size:.75rem;color:#e2e8f085;margin-top:6px;text-align:right}.popup-actions{display:flex;gap:12px;justify-content:flex-end}.popup-actions .btn-cancel,.popup-actions .btn-create{padding:10px 24px;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.popup-actions .btn-cancel{background:#94a3b833;color:var(--tt-text)}.popup-actions .btn-cancel:hover{background:#94a3b847;transform:translateY(-1px)}.popup-actions .btn-cancel:active{transform:translateY(0)}.popup-actions .btn-create{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff}.popup-actions .btn-create:hover{transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf659}.popup-actions .btn-create:active{transform:translateY(0)}@media (max-width: 480px){.popup-content{padding:30px 20px;width:95%}.popup-actions{flex-direction:column-reverse}.popup-actions .btn-cancel,.popup-actions .btn-create{width:100%}}.timestamps-export-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.timestamps-export-modal-content{background:#fff;border-radius:18px;box-shadow:0 10px 40px #0003;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;animation:modalSlideIn .3s ease-out;background:var(--tt-surface);border:1px solid var(--tt-border)}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.timestamps-export-modal{min-height:300px;display:flex;flex-direction:column}.timestamps-export-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--tt-border)}.timestamps-export-modal .modal-header h2{margin:0;font-size:1.5rem;color:var(--tt-text)}.timestamps-export-modal .modal-close{background:none;border:none;font-size:2rem;color:#e2e8f099;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.timestamps-export-modal .modal-close:hover{color:var(--tt-text)}.timestamps-export-modal .modal-body{padding:24px;flex:1;overflow-y:auto}.timestamps-display{background:#0f172aa6;border:1px solid var(--tt-border);border-radius:12px;padding:20px;min-height:150px;word-break:break-all;white-space:pre-wrap;font-family:Courier New,monospace;font-size:.9rem;line-height:1.6;color:var(--tt-text)}.timestamps-text{margin:0;color:var(--tt-text)}.timestamps-export-modal .modal-footer{display:flex;gap:12px;padding:24px;border-top:1px solid var(--tt-border);justify-content:flex-end}.btn-copy-large{flex:1;padding:12px 20px;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem}.btn-copy-large:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf64d}.btn-close-modal{padding:12px 24px;background:#94a3b829;color:var(--tt-text);border:1px solid var(--tt-border);border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem}.btn-close-modal:hover{background:#94a3b847}@media (max-width: 600px){.timestamps-export-modal-content{width:95%;max-height:90vh}.timestamps-export-modal .modal-header,.timestamps-export-modal .modal-body{padding:16px}.timestamps-export-modal .modal-footer{flex-direction:column;padding:16px}.btn-copy-large,.btn-close-modal{width:100%}}.project-editor-page{height:100%;background:transparent;padding-bottom:60px}.editor-container{display:flex;flex-direction:column;gap:20px;max-width:1600px;margin:0 auto;padding:40px 20px 20px}.editor-sidebar{background:var(--tt-surface);border:1px solid var(--tt-border);border-radius:16px;padding:20px;height:fit-content;position:sticky;flex-shrink:0}.mode-selector{display:flex;flex-direction:row;gap:8px}.mode-btn{width:100%;background:#94a3b81f;border:1px solid var(--tt-border);color:var(--tt-text-muted);padding:11px 14px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease;text-align:center}.mode-btn:hover{background:#94a3b838;border-color:#a78bfa73;color:var(--tt-text)}.mode-btn.active{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border-color:transparent;box-shadow:0 4px 15px #0003}.editor-main{flex:1;background:var(--tt-surface);border-radius:18px;padding:40px;box-shadow:var(--tt-shadow);border:1px solid var(--tt-border);max-height:calc(100vh - 140px);overflow-y:auto}.editor-main::-webkit-scrollbar{width:8px}.editor-main::-webkit-scrollbar-track{background:#94a3b829}.editor-main::-webkit-scrollbar-thumb{background:#a78bfa9e;border-radius:4px}.error-banner{background:#ef444433;color:#fecaca;padding:15px 20px;border-radius:8px;margin-bottom:30px;font-weight:500}.loading-indicator{text-align:center;color:#c4b5fd;padding:20px;font-weight:600}.project-editor-page .loading{text-align:center;color:var(--tt-text);padding:100px 20px;font-size:1.2rem}.project-editor-page .error-message{background:#ef444433;color:#fecaca;padding:20px;border-radius:12px;text-align:center;margin-bottom:20px;border:1px solid rgba(239,68,68,.4)}.btn-back{display:block;margin-top:20px;background:#94a3b833;color:var(--tt-text);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-back:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.edit-mode{display:flex;flex-direction:column;gap:24px}.edit-info-header{background:#0f172aad;border:1px solid var(--tt-border);border-radius:8px;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.info-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.info-label{color:#e2e8f094;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.info-value{color:#c4b5fd;font-size:.95rem;font-weight:700;word-break:break-word}.info-note{color:#555;font-style:italic;font-weight:500}.metadata-section{margin-bottom:20px;width:100%}.metadata-section h2{color:var(--tt-text);font-size:1.2rem;margin-bottom:16px;margin-top:0;font-weight:700}.metadata-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.metadata-form-two-column{display:grid;grid-template-columns:1fr 1.5fr;gap:24px}.metadata-column-left,.metadata-column-right{display:flex;flex-direction:column;gap:16px}.form-group-full{height:100%}.form-group-full textarea{height:100%;min-height:120px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:var(--tt-text-muted);font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.3px}.editor-main .form-group input,.editor-main .form-group textarea{padding:10px 14px;border:1px solid var(--tt-border);border-radius:10px;font-size:.9rem;font-family:inherit;transition:all .3s ease;color:var(--tt-text);background:#0f172aa8}.editor-main .form-group input:focus,.editor-main .form-group textarea:focus{outline:none;border-color:#a78bfabf;box-shadow:0 0 0 4px #a78bfa2e}.form-group textarea{resize:vertical;min-height:70px}.btn-save{align-self:flex-start;background:#e0e0e0;color:#999;border:none;padding:12px 30px;border-radius:8px;font-weight:600;cursor:not-allowed;transition:all .3s ease}.btn-save.active{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;cursor:pointer}.btn-save.active:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.timeline-section-wrapper{max-width:100vw;margin-left:calc(-50vw + 50%);background:#02061780;padding:30px 0;margin:20px;border-top:1px solid var(--tt-border);border-bottom:1px solid var(--tt-border);border-radius:18px}.timeline-header{max-width:1600px;margin:0 auto;padding:0 60px}.timeline-header h2{color:var(--tt-text);font-size:1.4rem;margin:0 0 20px}.timeline-container{width:100%;height:400px;overflow-x:auto;overflow-y:visible;background:transparent;padding:20px 60px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;pointer-events:auto;display:flex}.timeline-container::-webkit-scrollbar{height:10px}.timeline-container::-webkit-scrollbar-track{background:#94a3b829}.timeline-container::-webkit-scrollbar-thumb{background:#a78bfa9e;border-radius:5px}.timeline-container::-webkit-scrollbar-thumb:hover{background:#5568d3}.timeline{display:flex;gap:15px;align-items:stretch;min-width:min-content;padding:0}.empty-timeline-center{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:400px}.empty-timeline-title{margin:0;color:#e2e8f0b8;font-size:.98rem;font-weight:500}.add-video-slot{min-width:70px;width:70px;height:100%;background:#8b5cf61f;border:3px dashed rgba(167,139,250,.74);border-radius:12px;color:#c4b5fd;font-size:2.5rem;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0}.add-video-slot:hover{background:#667eea33;border-color:#5568d3;color:#5568d3;transform:scale(1.05)}.video-slot .add-video-slot{height:100%;transform:none}.video-slot .add-video-slot:hover{transform:none}.video-slot{display:flex;gap:15px;align-items:stretch;flex-shrink:0;height:100%}.video-item{min-width:280px;width:280px;height:100%;background:#0f172abf;border:1px solid var(--tt-border);border-radius:12px;padding:15px;cursor:move;transition:all .3s ease;flex-shrink:0;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column}.video-item:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33}.video-item.dragging{opacity:.5;border-color:#ffc107;background:#fffef0}.video-item.drag-over{border:2px solid #667eea;background:#667eea0d}.video-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:10px}.video-order{background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;padding:4px 10px;border-radius:4px;font-weight:600;font-size:.85rem}.btn-delete{background:#ff6b6b;color:#fff;border:none;width:28px;height:28px;border-radius:4px;font-size:1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-delete:hover{background:#ff5252;transform:scale(1.1)}.btn-delete-icon{width:14px;height:14px}.video-content{display:flex;flex-direction:column;gap:8px;flex:1;overflow:hidden}.video-content input,.video-content textarea{width:100%;padding:6px 8px;border:1px solid var(--tt-border);border-radius:6px;font-size:.8rem;font-family:inherit;background:#0f172aa8;color:var(--tt-text)}.video-content input:focus,.video-content textarea:focus{outline:none;border-color:#667eea;background:#0f172ad1;color:var(--tt-text)}.video-content textarea{resize:none;flex:1;min-height:60px}.mode-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#999}.mode-placeholder h2{color:#666;margin-bottom:10px}.mode-placeholder p{color:#aaa;font-size:1.05rem}.create-mode{width:100%}.create-video-container{display:flex;gap:20px;height:auto;min-height:400px}.create-left-panel{flex:0 0 220px;background:#0f172ac7;border:1px solid var(--tt-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.project-info{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.project-info h3{margin:0;color:#c4b5fd;font-size:1.05rem;font-weight:700;word-break:break-word;line-height:1.3;flex-shrink:0}.info-item{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}.info-item label{display:block;color:#e2e8f094;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:0;flex-shrink:0}.editor-note-container{flex:1;overflow-y:auto;min-height:0;border:1px solid var(--tt-border);border-radius:10px;padding:10px;background:#0f172a99}.editor-note-container p{margin:0;color:var(--tt-text-muted);font-size:.9rem;font-weight:500;line-height:1.5;word-break:break-word;white-space:pre-wrap}.editor-note-container p.not-set{color:#e2e8f070;font-style:italic}.info-item p{margin:0;color:#555;font-size:.9rem;font-weight:500;line-height:1.5;word-break:break-word}.info-item p.not-set{color:#aaa;font-style:italic}.btn-download-in-panel{padding:12px 16px;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border:none;border-radius:6px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #667eea33;flex-shrink:0;width:100%}.btn-inline-icon{width:16px;height:16px;margin-right:6px;vertical-align:text-bottom}.btn-download-in-panel:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf657}.btn-download-in-panel:active{transform:translateY(0)}.btn-download{padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem;width:100%;margin-top:8px}.btn-download:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.download-button-container{margin-top:20px;display:flex;gap:12px}.edit-mode .download-button-container{justify-content:flex-start;align-items:center}.export-folder-input{min-width:260px;max-width:420px;width:100%;padding:12px 14px;border-radius:8px;border:1px solid rgba(148,163,184,.28);background:#0f172a8c;color:#e2e8f0;font-size:.9rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.export-folder-input:focus{border-color:#667eeabf;box-shadow:0 0 0 2px #667eea33}.export-folder-input::placeholder{color:#94a3b8c7}.export-folder-input:disabled{opacity:.6;cursor:not-allowed}.btn-download-large{flex:1;padding:16px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:700;font-size:1.05rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea40;text-transform:uppercase;letter-spacing:.5px}.edit-mode .btn-download-large{flex:0 0 auto;width:auto;padding:14px 32px;font-size:.95rem}.btn-download-large:hover{transform:translateY(-3px);box-shadow:0 6px 20px #667eea59}.btn-download-large:active{transform:translateY(-1px)}.project-download-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1200;padding:24px}.project-download-modal-content{width:min(1120px,96vw);max-height:88vh;background:#0f172af0;border:1px solid rgba(148,163,184,.2);border-radius:18px;box-shadow:0 28px 70px #020617a8;display:flex;flex-direction:column;overflow:hidden}.project-download-modal-content.is-complete{border-color:#22c55e8c;box-shadow:0 28px 70px #1665347a;background:radial-gradient(circle at top right,rgba(34,197,94,.18),transparent 45%),#0f172af5}.project-download-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 16px;border-bottom:1px solid rgba(148,163,184,.16)}.project-download-modal-header h3{margin:0;color:var(--tt-text);font-size:1.24rem}.project-download-modal-header p{margin:8px 0 0;color:var(--tt-text-muted);font-size:.9rem}.project-download-modal-close{width:36px;height:36px;border-radius:10px;border:1px solid rgba(148,163,184,.3);background:#0f172ab8;color:#e2e8f0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.project-download-modal-close .btn-inline-icon{margin-right:0}.project-download-modal-close:hover{background:#8b5cf638;border-color:#a78bfa9e}.project-download-list{padding:18px 22px 22px;overflow-y:auto;display:grid;gap:12px}.project-download-list::-webkit-scrollbar{width:10px}.project-download-list::-webkit-scrollbar-thumb{background:#a78bfa73;border-radius:999px}.project-download-row{border-radius:16px;background:#02061775;border:1px solid rgba(148,163,184,.16);padding:14px 16px}.project-download-row-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.project-download-row-top strong{color:#c4b5fd;font-size:.94rem;font-weight:700}.project-download-row-top span{text-transform:uppercase;letter-spacing:.08em;font-size:.74rem;color:#e2e8f0b8;font-weight:600}.project-download-row-meta,.project-download-row-message{margin:8px 0 0;color:#e2e8f0c7;font-size:.9rem;word-break:break-word}.project-download-row-message{color:#e2e8f0a8;font-size:.84rem}.project-download-progress-track{margin-top:12px;height:12px;border-radius:999px;overflow:hidden;background:#94a3b829}.project-download-progress-track.app-download-track{background:#6366f147}.project-download-progress-fill{height:100%;background:linear-gradient(135deg,#8b5cf6,#d946ef);border-radius:inherit;transition:width .3s ease}.project-download-progress-fill.project-download-progress-fill-local-determinate{background:linear-gradient(135deg,#16a34a,#22c55e);transition:width .2s ease}@media (max-width: 900px){.project-download-modal-overlay{padding:12px}.project-download-modal-content{width:100%;max-height:92vh}.project-download-modal-header{padding:16px 14px 12px}.project-download-list{padding:12px 14px 14px}}.create-carousel-section{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0}.carousel-nav{display:flex;justify-content:center;padding:8px 0}.carousel-counter{color:#c4b5fd;font-weight:700;font-size:.9rem}.carousel-container{display:flex;align-items:center;justify-content:center;gap:12px;flex:1;min-height:350px}.carousel-arrow{flex-shrink:0;width:40px;height:40px;background:#0f172ac7;border:1px solid var(--tt-border);color:#c4b5fd;border-radius:10px;font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-weight:600}.carousel-arrow:hover:not(.disabled){background:#8b5cf638;color:#e9d5ff;border-color:#a78bfa9e;transform:scale(1.08)}.carousel-arrow.disabled{background:#94a3b81f;border-color:#94a3b833;color:#e2e8f057;cursor:not-allowed;opacity:.5}.carousel-slide{flex:1;background:#0f172ad1;border:1px solid var(--tt-border);border-radius:12px;padding:24px;display:flex;flex-direction:column;min-width:0;animation:carouselSlide .4s ease-out}@keyframes carouselSlide{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.carousel-fade-in{animation:fadeInContent .5s ease-out .1s both}@keyframes fadeInContent{0%{opacity:0}to{opacity:1}}.video-display{display:flex;flex-direction:column;height:100%}.video-slide-header{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--tt-border)}.video-number{color:#c4b5fd;font-weight:700;font-size:1rem}.video-display-content{display:flex;flex-direction:column;gap:20px;flex:1}.display-field{display:flex;flex-direction:column;gap:8px}.display-field label{color:#e2e8f0ad;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.display-field p{margin:0;color:var(--tt-text);font-size:.95rem;padding:12px 14px;background:#0f172aa3;border:1px solid var(--tt-border);border-radius:10px;word-break:break-word}.display-field .url-text{font-family:monospace;font-size:.8rem;color:#93c5fd}.display-field .notes-text{min-height:70px;max-height:150px;overflow-y:auto}.input-with-copy{display:flex;gap:10px;align-items:center}.input-with-copy input{flex:1}.input-with-copy .btn-copy-inline{align-self:center;flex-shrink:0}.field-with-copy{display:flex;gap:10px;align-items:center}.field-with-copy p{flex:1;margin:0}.btn-copy{flex-shrink:0;width:36px;height:36px;padding:0;background:#0f172ab3;border:1px solid var(--tt-border);border-radius:10px;cursor:pointer;font-size:1rem;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-copy-icon{width:15px;height:15px}.btn-copy:hover{background:#8b5cf629;border-color:#a78bfaa3}.btn-copy:active{transform:scale(.95)}.timestamps-mode{width:100%}.timestamps-container{display:flex;gap:25px;height:calc(100vh - 300px);min-height:500px}.timestamps-left-panel{flex:0 0 220px;background:#0f172acc;border:1px solid var(--tt-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:20px}.timestamps-left-panel .project-info h3{margin:0 0 12px;color:#c4b5fd;font-size:1rem}.timestamps-left-panel .project-info{flex:0 0 auto}.timestamps-left-panel .info-item{margin-bottom:10px}.timestamps-left-panel .info-item label{display:block;color:#e2e8f094;font-size:.8rem;font-weight:600;margin-bottom:4px}.timestamps-left-panel .info-item p{margin:0;color:var(--tt-text);font-size:.95rem;font-weight:500}.timestamp-controls{display:flex;flex-direction:column;gap:12px;margin-top:10px}.status-bar{display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:10px;font-weight:600;font-size:.9rem}.status-bar.valid{background:#22c55e33;color:#86efac;border:1px solid rgba(34,197,94,.4)}.status-bar.invalid{background:#f59e0b33;color:#fcd34d;border:1px solid rgba(245,158,11,.4)}.status-icon{display:inline-flex;align-items:center;justify-content:center}.status-icon-svg{width:16px;height:16px}.btn-format-toggle{padding:10px 15px;background:#94a3b824;border:1px solid var(--tt-border);color:#ddd6fe;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease}.btn-format-toggle:hover:not(:disabled){background:#8b5cf633;color:#f5d0fe;border-color:#a78bfa9e}.btn-format-toggle:disabled{background:#94a3b81f;border-color:#94a3b833;color:#e2e8f059;cursor:not-allowed;opacity:.6}.btn-export{padding:10px 15px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease}.btn-export:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.timestamps-right-panel{flex:1;background:#0f172ac7;border:1px solid var(--tt-border);border-radius:12px;padding:20px;overflow-y:auto}.timestamps-list{display:flex;flex-direction:column;gap:12px}.timestamp-row{display:flex;gap:15px;align-items:center;padding:12px 15px;background:#0f172a9e;border:1px solid var(--tt-border);border-radius:10px;transition:all .3s ease}.timestamp-row.invalid{background:#f59e0b24;border-color:#f59e0b75}.row-info{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:200px}.row-info .video-order{font-weight:700;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);font-size:.95rem;min-width:35px}.row-info .contestant-name{color:var(--tt-text-muted);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timestamp-input{flex:0 0 120px;padding:10px 12px;border:1px solid var(--tt-border);border-radius:10px;font-size:.95rem;font-family:monospace;font-weight:600;transition:all .3s ease;text-align:center;background:#0f172ab8;color:var(--tt-text)}.timestamp-input:focus{outline:none;border-color:#a78bfabf;box-shadow:0 0 0 4px #a78bfa2e}.timestamp-row.invalid .timestamp-input{border-color:#f59e0b80;background:#f59e0b1f}.timestamp-input:disabled{background:#94a3b824;border-color:#94a3b83d;color:#e2e8f075;cursor:not-allowed;opacity:.7}@media (max-width: 1024px){.editor-container{flex-direction:column;padding:20px 20px 10px}.editor-sidebar{width:100%;position:relative;top:0}.mode-selector{flex-direction:row;flex-wrap:wrap}.mode-btn{flex:1;min-width:100px}.editor-main{max-height:none}.timeline-section-wrapper{margin-left:-20px;width:calc(100% + 40px)}.timeline-container{padding:15px}.add-video-slot{min-width:60px;width:60px}.video-item{min-width:240px;width:240px}}@media (max-width: 768px){.editor-container{padding:20px 10px 10px}.editor-sidebar{padding:15px}.editor-sidebar h3{font-size:.9rem}.mode-btn{padding:10px 12px;font-size:.85rem}.editor-main{padding:20px}.metadata-section h2,.timeline-section h2{font-size:1.2rem}.timeline-container{padding:15px 10px}.timeline{padding:15px}.video-item{min-width:200px;width:200px;padding:12px}.add-video-slot{min-width:55px;width:55px;font-size:2rem}.video-content input,.video-content textarea{font-size:.8rem}.timeline-section-wrapper{margin-left:-10px;width:calc(100% + 20px)}}.upload-mode{display:flex;flex-direction:column;gap:20px;height:100%}.upload-content{display:flex;flex-direction:column;gap:28px}.warning-banner{display:flex;gap:16px;background:#f59e0b29;border:1px solid rgba(245,158,11,.48);border-radius:12px;padding:20px 24px;align-items:flex-start;box-shadow:0 4px 12px #ffc10726}.warning-icon{font-size:1.8rem;flex-shrink:0;margin-top:2px}.warning-icon-svg{width:22px;height:22px}.warning-content{flex:1}.warning-title{margin:0 0 6px;font-weight:700;color:#fcd34d;font-size:1.05rem}.warning-message{margin:0;color:#fde68a;font-size:.95rem;line-height:1.6}.metadata-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.metadata-card{background:#0f172ac7;border:1px solid var(--tt-border);border-radius:12px;padding:24px;transition:all .3s ease;box-shadow:0 4px 12px #0000000f;display:flex;flex-direction:column;gap:16px}.metadata-card:hover{border-color:#667eea;box-shadow:0 8px 24px #667eea1f;transform:translateY(-2px)}.metadata-card-header{display:flex;align-items:center;gap:12px}.metadata-icon{font-size:1.5rem;flex-shrink:0}.metadata-icon-svg{width:20px;height:20px}.metadata-label{font-weight:700;color:#333;font-size:.95rem;letter-spacing:.3px;text-transform:uppercase;color:#e2e8f0a3}.metadata-card-content{display:flex;flex-direction:column;gap:12px}.metadata-value{margin:0;color:var(--tt-text);font-size:1rem;line-height:1.6;word-break:break-word;font-weight:500;min-height:28px;display:flex;align-items:center}.notes-value{min-height:60px;white-space:pre-wrap;font-family:Segoe UI,sans-serif}.btn-copy-inline{align-self:flex-start;padding:8px 14px;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #667eea33}.btn-copy-inline:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf64d}.btn-copy-inline:active{transform:translateY(0)}.upload-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px}.btn-export-timestamps,.btn-mark-done{flex:1;min-width:200px;padding:16px 28px;border:none;border-radius:10px;font-weight:600;font-size:1.05rem;cursor:pointer;transition:all .3s ease;text-align:center;letter-spacing:.3px;box-shadow:0 4px 12px #0000001a}.btn-export-timestamps,.btn-mark-done{display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-export-timestamps{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-export-timestamps:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 20px #667eea66}.btn-export-timestamps:active:not(:disabled){transform:translateY(-1px)}.btn-export-timestamps:disabled{background:#e0e0e0;color:#999;cursor:not-allowed;opacity:.7;box-shadow:none}.btn-mark-done{background:linear-gradient(135deg,#48c774,#2faa4c);color:#fff}.btn-mark-done.done{background:linear-gradient(135deg,#ccc,#999);color:#555}.btn-mark-done:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 20px #48c77466}.btn-mark-done.done:hover:not(:disabled){box-shadow:0 8px 20px #9696964d}.btn-mark-done:active:not(:disabled){transform:translateY(-1px)}.btn-mark-done:disabled{background:#e0e0e0;color:#999;cursor:not-allowed;opacity:.7;box-shadow:none}.empty-state-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;min-height:400px;color:#fff}.empty-icon{font-size:4.5rem;animation:float 3s ease-in-out infinite}.empty-icon svg{width:64px;height:64px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.btn-add-first-video{padding:18px 40px;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);color:#fff;border:1px solid rgba(167,139,250,.45);border-radius:10px;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 26px #8b5cf647;letter-spacing:.3px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.btn-add-first-video:hover{transform:translateY(-2px);box-shadow:0 14px 30px #8b5cf65c}.btn-add-first-video:active{transform:translateY(0)}@media (max-width: 768px){.metadata-cards-grid{grid-template-columns:1fr;gap:16px}.metadata-card{padding:20px}.upload-actions{flex-direction:column;gap:12px;margin-top:12px}.btn-export-timestamps,.btn-mark-done{width:100%;min-width:unset;padding:14px 20px;font-size:1rem}.warning-banner{padding:16px 20px;gap:12px}.warning-icon{font-size:1.5rem}.warning-title{font-size:1rem}.warning-message{font-size:.9rem}}@media (max-width: 500px){.metadata-card{padding:16px}.metadata-label{font-size:.9rem}.metadata-value{font-size:.95rem}.btn-copy-inline{padding:6px 12px;font-size:.8rem}}.yt-downloader-page{min-height:100%;background:radial-gradient(circle at top left,rgba(124,58,237,.28),transparent 34%),radial-gradient(circle at top right,rgba(147,51,234,.2),transparent 30%),linear-gradient(135deg,#0f1020,#171730 52%,#0b1022);color:#e5e7eb}.yt-shell{max-width:1120px;margin:0 auto;padding:32px 24px 48px}.yt-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:24px}.yt-hero-headline h1{margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.yt-hero-headline p{margin:10px 0 0;max-width:58ch;color:#e5e7ebd1}.yt-toggle-group{display:inline-flex;gap:10px;background:#0f172a8c;padding:8px;border:1px solid rgba(148,163,184,.18);border-radius:999px;box-shadow:0 18px 40px #0f172a40}.yt-toggle,.yt-refresh-btn{border:none;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}.yt-toggle{padding:12px 18px;border-radius:999px;background:transparent;color:#e2e8f0d1;font-weight:600}.yt-toggle.active{background:linear-gradient(135deg,#8b5cf6,#d946ef);color:#f8fafc}.yt-toggle:hover,.yt-refresh-btn:hover,.btn-download:hover:not(:disabled){transform:translateY(-1px)}.yt-panel{background:#0f172ab8;border:1px solid rgba(148,163,184,.16);border-radius:28px;padding:24px;box-shadow:0 28px 70px #13062566;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.yt-panel-download{display:grid;gap:20px}.yt-form{display:grid;gap:10px}.yt-form label{font-size:.92rem;color:#cbd5e1}.yt-input-row{display:grid;grid-template-columns:1fr auto;gap:12px}.yt-input-row input{width:100%;padding:16px 18px;border-radius:18px;border:1px solid rgba(148,163,184,.18);background:#0f172aa8;color:#f8fafc;font-size:1rem;outline:none}.yt-input-row input::placeholder{color:#e2e8f073}.yt-input-row input:focus{border-color:#a78bfabf;box-shadow:0 0 0 4px #a78bfa33}.btn-download,.yt-refresh-btn{padding:14px 20px;border-radius:16px;font-weight:700}.btn-download{background:linear-gradient(135deg,#8b5cf6,#d946ef);color:#f8fafc}.btn-download:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-download-ready{background:linear-gradient(135deg,#34d399,#22c55e)}.yt-download-list{max-height:420px;overflow-y:auto;display:grid;gap:14px;padding-right:4px}.yt-download-list::-webkit-scrollbar{width:8px}.yt-download-list::-webkit-scrollbar-thumb{background:#a78bfa73;border-radius:999px}.yt-status-card,.yt-download-card{border-radius:24px;background:#0206176b;border:1px solid rgba(148,163,184,.12);padding:18px}.yt-status-header,.yt-status-meta,.yt-job-topline,.yt-job-meta,.yt-active-header{display:flex;justify-content:space-between;gap:16px;align-items:center}.yt-status-label,.yt-status-value{font-size:.9rem;text-transform:uppercase;letter-spacing:.12em}.yt-status-label{color:#c4b5fd}.yt-status-value{color:#e2e8f0}.yt-progress-track{margin:16px 0 12px;height:16px;background:#94a3b829;border-radius:999px;overflow:hidden}.yt-progress-track.progress-local-track{background:#6366f147}.yt-progress-fill{height:100%;border-radius:inherit;background:#a855f7;transition:width .35s ease}.yt-progress-fill.progress-download{background:#8b5cf6}.yt-progress-fill.progress-local-download{width:100%;background:linear-gradient(90deg,#22c55e59,#22c55ee6 45%,#22c55e59);background-size:220% 100%;animation:yt-local-download-pulse 1.1s linear infinite}.yt-progress-fill.progress-local-download-determinate{background:linear-gradient(135deg,#16a34a,#22c55e);transition:width .25s ease}@keyframes yt-local-download-pulse{0%{background-position:0% 0}to{background-position:220% 0}}.yt-progress-fill.progress-low{background:#ef4444}.yt-progress-fill.progress-mid{background:#f59e0b}.yt-progress-fill.progress-high{background:#a855f7}.yt-progress-fill.progress-complete{background:#22c55e}.yt-status-meta{color:#e2e8f0cc;font-size:.92rem}.yt-download-card h2,.yt-active-header h2{margin:0;font-size:1.15rem}.yt-download-card p,.yt-active-header p,.yt-job-url,.yt-job-message{margin:8px 0 0;color:#e2e8f0c7;word-break:break-word}.yt-download-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.yt-retention-note{color:#e2e8f0ad;font-size:.88rem}.yt-panel-active{display:grid;gap:18px}.yt-refresh-btn{background:#94a3b824;color:#e2e8f0}.yt-active-list{display:grid;gap:16px}.yt-job-card{display:grid;grid-template-columns:88px 1fr;gap:14px;padding:18px;border-radius:22px;background:#0f172ab8;border:1px solid rgba(148,163,184,.12)}.yt-panel-download .yt-job-card{grid-template-columns:1fr}.yt-retention-ring{--ttl: 100;--ring-color: #22c55e;--ring-track: rgba(148, 163, 184, .26);width:88px;height:88px;border-radius:50%;padding:8px;position:relative;display:grid;place-items:center}.yt-retention-ring.orange{--ring-color: #eab308}.yt-retention-ring.red{--ring-color: #ef4444}.yt-retention-ring-arc{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(from -90deg,var(--ring-color) 0 calc(var(--ttl) * 1%),var(--ring-track) calc(var(--ttl) * 1%) 100%);transform:scaleX(-1);transition:background .7s linear}.yt-retention-ring-inner{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;background:#0f172a;position:relative;z-index:1;color:#f8fafc;font-weight:800;font-size:1rem}.yt-job-body{min-width:0}.yt-job-topline{align-items:baseline;text-transform:capitalize}.yt-job-topline strong{color:#c4b5fd}.yt-job-topline span{color:#e2e8f0a8;font-size:.88rem}.yt-job-meta{margin-top:14px;color:#e2e8f099;font-size:.84rem;flex-wrap:wrap}.yt-empty-state{padding:28px;text-align:center;color:#e2e8f0b8;border:1px dashed rgba(148,163,184,.22);border-radius:20px}@media (max-width: 900px){.yt-hero{flex-direction:column;align-items:flex-start}.yt-input-row,.yt-job-card{grid-template-columns:1fr}.yt-retention-ring{width:72px;height:72px}}@media (max-width: 640px){.yt-shell{padding:18px 14px 32px}.yt-panel{padding:18px;border-radius:22px}.yt-toggle-group{width:100%;flex-direction:column;border-radius:24px}.yt-toggle{width:100%}}.admin-page{min-height:100%;background:radial-gradient(circle at top right,rgba(56,189,248,.16),transparent 38%),radial-gradient(circle at top left,rgba(34,197,94,.12),transparent 30%),linear-gradient(135deg,#0b1220,#111a2c 52%,#0d1726)}.admin-shell{max-width:1200px;margin:0 auto;padding:28px 22px 40px}.admin-header h1{margin:0;color:#e2e8f0;font-size:clamp(1.9rem,3vw,2.5rem)}.admin-header p{margin:8px 0 0;color:#e2e8f0b8}.admin-tabs{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px}.admin-tab{border:1px solid rgba(148,163,184,.3);background:#0f172ab8;color:#e2e8f0;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:600}.admin-tab.active{background:linear-gradient(135deg,#0ea5e9,#10b981);border-color:#2dd4bf80;color:#f8fafc}.admin-panel{margin-top:16px;border:1px solid rgba(148,163,184,.25);background:#020617b3;border-radius:14px;padding:14px}.admin-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#e2e8f0d1}.admin-storage-summary{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(220px,.9fr);gap:12px;margin-bottom:14px}.admin-storage-usage-card,.admin-storage-stats{border:1px solid rgba(148,163,184,.2);background:#0f172a8f;border-radius:12px;padding:12px}.admin-storage-usage-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;color:#e2e8f0}.admin-storage-usage-head span{color:#e2e8f0b8}.admin-storage-bar{margin-top:10px;height:12px;border-radius:999px;overflow:hidden;background:#1e293beb}.admin-storage-bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#22c55e 55%,#f59e0b);transition:width .3s ease}.admin-storage-metrics{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px 14px;color:#e2e8f0c7;font-size:.92rem}.admin-storage-stats{display:grid;gap:10px}.admin-storage-stats div{display:grid;gap:2px}.admin-storage-stats strong{color:#f8fafc;font-size:1.2rem}.admin-storage-stats span{color:#e2e8f0b8}.admin-storage-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;color:#e2e8f0c2}.admin-storage-card .admin-card-head{align-items:flex-start}.admin-storage-card .admin-role{white-space:nowrap}.admin-storage-card .admin-user-actions{margin-top:12px}.admin-storage-card .admin-action-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 860px){.admin-storage-summary{grid-template-columns:1fr}}.admin-add-btn{border:1px solid rgba(148,163,184,.32);background:#0f172ab8;color:#e2e8f0;border-radius:10px;padding:8px 12px;font-weight:600;display:inline-flex;gap:6px;align-items:center;cursor:pointer}.admin-invitation-create{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-invitation-email-input{min-width:260px;border:1px solid rgba(148,163,184,.35);background:#0f172ad1;color:#e2e8f0;border-radius:10px;padding:8px 10px}.admin-invitation-email-input::placeholder{color:#e2e8f073}.admin-user-actions{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}.admin-action-btn{border:1px solid rgba(148,163,184,.32);background:#0f172ab8;color:#e2e8f0;border-radius:10px;padding:7px 11px;font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.admin-action-btn.danger{border-color:#ef44447a;color:#fecaca}.admin-invitation-link-bar{border:1px solid rgba(56,189,248,.38);background:#0e74901f;border-radius:12px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.admin-invitation-link-bar span{color:#e2e8f0e6;word-break:break-all}.admin-list{display:grid;gap:10px}.admin-card{border:1px solid rgba(148,163,184,.2);background:#0f172a9e;border-radius:12px;padding:12px}.admin-card p{margin:6px 0 0;color:#e2e8f0c2;word-break:break-word}.admin-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-card-head strong{color:#f8fafc}.admin-role{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;padding:4px 8px;border-radius:999px;border:1px solid rgba(148,163,184,.3)}.admin-role.role-admin{color:#22c55e;border-color:#22c55e80}.admin-role.role-user{color:#93c5fd;border-color:#3b82f673}.admin-log-message{white-space:pre-wrap}.admin-report-image{margin-top:10px;width:100%;max-width:360px;border-radius:10px;border:1px solid rgba(148,163,184,.28);cursor:zoom-in}.admin-image-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1700;background:#020617d6;display:flex;align-items:center;justify-content:center;padding:24px}.admin-image-preview-large{max-width:min(1200px,92vw);max-height:88vh;border-radius:14px;border:1px solid rgba(148,163,184,.35);box-shadow:0 24px 70px #020617b3}.admin-image-close{position:absolute;top:18px;right:18px;width:36px;height:36px;border-radius:10px;border:1px solid rgba(148,163,184,.4);background:#0f172ad6;color:#e2e8f0;font-size:1rem;line-height:1;cursor:pointer}.admin-empty{border:1px dashed rgba(148,163,184,.3);border-radius:12px;padding:24px;text-align:center;color:#e2e8f0b8}.admin-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1800;background:#020617b8;display:flex;align-items:center;justify-content:center;padding:20px}.admin-confirm-modal{width:min(520px,100%);border:1px solid rgba(148,163,184,.32);background:#0f172af2;border-radius:14px;padding:16px;box-shadow:0 20px 55px #0206179e}.admin-confirm-modal h3{margin:0;color:#f8fafc}.admin-confirm-modal p{margin:8px 0 0;color:#e2e8f0cc}.admin-confirm-actions{margin-top:14px;display:flex;justify-content:flex-end;gap:8px}.change-password-page{display:flex;flex-direction:column;min-height:100vh}.change-password-page .content-area{display:flex;justify-content:center;align-items:flex-start;flex:1;padding:3rem 2rem}.change-password-container{width:100%;max-width:500px}.change-password-form{background:var(--tt-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--tt-border);border-radius:1rem;padding:2rem;box-shadow:0 8px 32px #0000004d;animation:slideUp .3s ease}.change-password-form h2{margin:0 0 1.5rem;color:var(--tt-text);text-align:center;font-size:1.5rem;letter-spacing:.5px}.change-password-form input{width:100%;padding:.75rem;margin-bottom:1rem;background:#0f172aa8;border:1px solid var(--tt-border);border-radius:.375rem;color:var(--tt-text);font-size:.95rem;transition:all .2s ease;box-sizing:border-box}.change-password-form input:focus{outline:none;border-color:#a78bfabf;box-shadow:0 0 0 4px #a78bfa2e}.change-password-form input::placeholder{color:#e2e8f066}.change-password-form button[type=submit]{width:100%;padding:.75rem;background:linear-gradient(135deg,var(--tt-accent) 0%,var(--tt-accent-2) 100%);border:none;border-radius:.375rem;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.change-password-form button[type=submit]:hover{transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf657}.back-btn{width:100%;margin-top:1rem;padding:.75rem;background:#94a3b81f;border:1px solid var(--tt-border);border-radius:.375rem;color:var(--tt-text-muted);cursor:pointer;transition:all .2s ease}.back-btn:hover{background:#94a3b838;color:var(--tt-text)}.change-password-page .message{margin-bottom:1rem;padding:.75rem;border-radius:.375rem;text-align:center}.message.success{background:#22c55e33;border:1px solid rgba(34,197,94,.35);color:#86efac}.message.error{background:#ef444433;border:1px solid rgba(239,68,68,.35);color:#fca5a5}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;height:100vh}.loading-screen{display:flex;justify-content:center;align-items:center;height:100vh;background:var(--tt-bg-main);color:var(--tt-text);font-size:1.2rem}.connection-screen{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:24px;background:radial-gradient(circle at top,rgba(16,185,129,.16),transparent 32%),radial-gradient(circle at bottom right,rgba(59,130,246,.16),transparent 26%),var(--tt-bg-main);color:var(--tt-text)}.connection-card{width:min(560px,96vw);border-radius:20px;padding:32px;border:1px solid rgba(148,163,184,.24);background:#0f172ae6;box-shadow:0 24px 60px #0206176b;text-align:center}.connection-card h1{margin:0 0 12px;font-size:1.5rem}.connection-card p{margin:0;color:#e2e8f0db;line-height:1.6}.connection-subtext{margin-top:12px!important;color:#94a3b8eb!important;font-size:.95rem}.connection-spinner{width:44px;height:44px;margin:0 auto 18px;border-radius:999px;border:4px solid rgba(148,163,184,.24);border-top-color:#10b981f2;opacity:.55}.connection-spinner.active{animation:connection-spin 2.4s infinite;opacity:1}@keyframes connection-spin{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.42,0,1,1)}28%{transform:rotate(70deg);animation-timing-function:linear}68%{transform:rotate(315deg);animation-timing-function:cubic-bezier(0,0,.58,1)}to{transform:rotate(360deg)}}.app-with-sidebar{display:flex;height:100vh;width:100%;--sidebar-width: 260px}.app-with-sidebar.sidebar-collapsed{--sidebar-width: 84px}.app-main{display:flex;flex-direction:column;flex:1;margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));overflow:hidden;transition:margin-left .2s ease,width .2s ease}.app-main>.navbar{position:sticky;top:0;z-index:50;flex-shrink:0}.app-main>div,.app-main>section{flex:1;overflow-y:auto}.report-issue-btn{position:fixed;right:16px;bottom:16px;z-index:1400;padding:10px 14px;border-radius:10px;border:1px solid rgba(148,163,184,.35);background:#0f172ad9;color:#e2e8f0;font-size:.84rem;font-weight:600;cursor:pointer;box-shadow:0 10px 28px #02061757}.report-issue-btn:hover{background:#8b5cf638;border-color:#a78bfa94}.report-issue-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;background:#020617ad;display:flex;align-items:center;justify-content:center;padding:16px}.report-issue-modal{width:min(560px,96vw);background:#0f172af2;border:1px solid rgba(148,163,184,.3);border-radius:14px;box-shadow:0 22px 60px #0206178f;padding:14px}.report-issue-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.report-issue-header h3{margin:0;color:#e2e8f0}.report-issue-close{width:32px;height:32px;border-radius:8px;border:1px solid rgba(148,163,184,.32);background:#0f172ab8;color:#e2e8f0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.report-drop-zone{border:2px dashed rgba(148,163,184,.4);border-radius:12px;background:#0206177a;padding:14px;margin-bottom:12px}.report-drop-zone.dragging{border-color:#a78bfae6;background:#8b5cf624}.report-drop-content{display:flex;flex-direction:column;align-items:center;gap:8px;color:#e2e8f0d1}.report-drop-content p{margin:0}.report-select-file{border:1px solid rgba(148,163,184,.35);border-radius:8px;padding:6px 10px;cursor:pointer;color:#e2e8f0;background:#0f172ab8}.report-image-preview{margin-top:4px;width:100%;max-width:260px;border-radius:10px;border:1px solid rgba(148,163,184,.28)}.report-message{width:100%;min-height:110px;resize:vertical;border:1px solid rgba(148,163,184,.35);border-radius:10px;padding:10px 12px;background:#0206178c;color:#f8fafc;margin-bottom:12px}.report-issue-actions{display:flex;justify-content:flex-end}.report-submit-btn{border:none;border-radius:10px;padding:10px 14px;font-weight:700;color:#f8fafc;background:linear-gradient(135deg,#0ea5e9,#10b981);cursor:pointer}.report-submit-btn:disabled{opacity:.6;cursor:not-allowed}:root{--tt-bg-main: linear-gradient(135deg, #0f1020 0%, #171730 52%, #0b1022 100%);--tt-bg-soft: linear-gradient(135deg, rgba(124, 58, 237, .2), rgba(217, 70, 239, .12));--tt-surface: rgba(15, 23, 42, .72);--tt-surface-strong: rgba(2, 6, 23, .62);--tt-surface-muted: rgba(148, 163, 184, .12);--tt-border: rgba(148, 163, 184, .2);--tt-text: #e5e7eb;--tt-text-muted: rgba(226, 232, 240, .74);--tt-accent: #8b5cf6;--tt-accent-2: #d946ef;--tt-danger: #ef4444;--tt-warning: #f59e0b;--tt-success: #22c55e;--tt-shadow: 0 24px 70px rgba(12, 8, 29, .42);color:var(--tt-text);background-color:#0b1022}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;min-width:320px;background:radial-gradient(circle at top left,rgba(124,58,237,.2),transparent 34%),radial-gradient(circle at top right,rgba(147,51,234,.14),transparent 30%),var(--tt-bg-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{width:100%;height:100%}#root{display:flex;flex-direction:column}
