@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.dashboard-page::-webkit-scrollbar{width:8px}.dashboard-page::-webkit-scrollbar-track{background:#1a1a1a}.dashboard-page::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}.dashboard-page::-webkit-scrollbar-thumb:hover{background:#3a3a3a}.dashboard-page{height:100vh;overflow-y:auto;background:#141413;color:#faf9f5;font-family:var(--font-sans)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:20px 40px;border-bottom:1px solid rgba(255,255,255,.1)}.dashboard-logo{font-size:var(--text-3xl);font-weight:var(--weight-semibold);color:#fed060}.dashboard-logout-btn{display:flex;align-items:center;gap:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#faf9f5b3;padding:8px 16px;border-radius:6px;font-size:var(--text-md);font-weight:var(--weight-medium);cursor:pointer;transition:all .2s}.dashboard-logout-btn:hover{background:#ffffff14;border-color:#fff3;color:#faf9f5}.dashboard-logout-btn:active{transform:scale(.98)}.dashboard-logout-btn svg{width:18px;height:18px}.dashboard-content{max-width:1100px;margin:0 auto;padding:40px 40px 80px}.dashboard-welcome{margin-bottom:32px}.dashboard-welcome-title{font-size:var(--text-5xl);font-weight:var(--weight-bold);margin:0 0 8px;line-height:1.2}.dashboard-welcome-subtitle{font-size:var(--text-xl);color:#888;margin:0}.dashboard-stats{display:flex;gap:16px;margin-bottom:48px}.dashboard-stat-card{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px 24px;display:flex;flex-direction:row;align-items:center;gap:16px}.stat-text{display:flex;flex-direction:column;gap:2px}.stat-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-blue{background:#4b8aff26;color:#4b8aff}.stat-icon-green{background:#10a37f26;color:#10a37f}.stat-icon-gold{background:#fed06026;color:#fed060}.stat-value{font-size:28px;font-weight:var(--weight-bold);line-height:1.2}.stat-label{font-size:var(--text-md);color:#888}.dashboard-section{margin-bottom:48px}.dashboard-section-title{font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin:0 0 24px;color:#faf9f5e6}.dashboard-course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.dashboard-course-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px;display:flex;flex-direction:column;transition:all .2s}.dashboard-course-card:hover{background:#ffffff14;border-color:#ffffff26}.card-top{flex:1}.card-bottom{margin-top:20px;display:flex;flex-direction:column;gap:10px}.card-badges{display:flex;gap:8px;margin-bottom:14px}.card-badge{padding:4px 10px;border-radius:4px;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.5px;text-transform:uppercase}.card-badge-category{background:#4b8aff26;color:#4b8aff}.card-badge-level{background:#fed06026;color:#fed060}.card-badge-guide{background:#4b8aff26;color:#4b8aff}.card-title{font-size:var(--text-xl);font-weight:var(--weight-semibold);margin:0 0 14px;line-height:1.3;color:#faf9f5}.card-progress-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-progress-label{font-size:var(--text-sm);color:#888}.card-progress-pct{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#faf9f5e6}.card-progress-track{width:100%;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;margin-bottom:14px}.card-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#4b8aff,#7ba8ff);transition:width .5s ease}.card-progress-fill-gold{background:linear-gradient(90deg,#fed060,#ffe088)}.card-meta{font-size:var(--text-sm);color:#888;margin:0;line-height:1.4}.card-description{font-size:var(--text-sm);color:#faf9f599;margin:0 0 14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:var(--text-md);font-weight:var(--weight-semibold);cursor:pointer;transition:all .2s;width:100%}.card-btn-filled{background:#6366f1;color:#faf9f5;border:none}.card-btn-filled:hover{background:#7678f3;box-shadow:0 4px 12px #6366f14d}.card-btn-filled:active{transform:scale(.98)}.card-btn-outline{background:transparent;color:#faf9f5cc;border:1px solid rgba(255,255,255,.15)}.card-btn-outline:hover{background:#ffffff0d;border-color:#ffffff4d;color:#faf9f5}.card-btn-outline:active{transform:scale(.98)}.card-btn-guide{background:transparent;color:#faf9f5cc;border:1px solid rgba(255,255,255,.15)}.card-btn-guide:hover{background:#ffffff0d;border-color:#ffffff4d;color:#faf9f5}.card-btn-guide:active{transform:scale(.98)}.card-last-accessed{font-size:var(--text-xs);color:#6a6a6a;text-align:center}@media(max-width:768px){.dashboard-header{padding:16px 20px}.dashboard-logo{font-size:20px}.dashboard-logout-btn{padding:7px 14px;font-size:16px;gap:6px}.dashboard-logout-btn svg{width:16px;height:16px}.dashboard-content{padding:24px 20px 60px}.dashboard-welcome-title{font-size:26px}.dashboard-welcome-subtitle{font-size:16px}.dashboard-stats{gap:12px;margin-bottom:36px}.dashboard-stat-card{padding:16px}.stat-icon{width:30px;height:30px;margin-bottom:6px}.stat-icon svg{width:16px;height:16px}.stat-value{font-size:22px}.stat-label{font-size:12px}.dashboard-course-grid{grid-template-columns:1fr}.dashboard-section-title{font-size:18px;margin-bottom:16px}}@media(max-width:480px){.dashboard-header{padding:14px 16px}.dashboard-logo{font-size:18px}.dashboard-logout-btn{padding:8px;min-width:36px;justify-content:center}.dashboard-logout-text{display:none}.dashboard-content{padding:20px 16px 50px}.dashboard-welcome-title{font-size:22px}.dashboard-welcome-subtitle{font-size:14px}.dashboard-stats{flex-direction:column;gap:10px;margin-bottom:32px}.dashboard-stat-card{padding:14px 16px;gap:12px}.stat-value{font-size:20px}.card-title{font-size:15px}.card-btn{padding:10px 16px;font-size:14px}.dashboard-section{margin-bottom:36px}}.course-page::-webkit-scrollbar{width:8px}.course-page::-webkit-scrollbar-track{background:#1a1a1a}.course-page::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}.course-page::-webkit-scrollbar-thumb:hover{background:#3a3a3a}.course-page{height:100vh;overflow-y:auto;background:#141413;color:#faf9f5;font-family:var(--font-sans)}.course-header{display:flex;justify-content:space-between;align-items:center;padding:20px 40px;border-bottom:1px solid rgba(255,255,255,.1)}.header-logo{font-size:var(--text-3xl);font-weight:var(--weight-semibold);color:#fed060}.header-logo-clickable{cursor:pointer;transition:opacity .2s}.header-logo-clickable:hover{opacity:.8}.logout-button{display:flex;align-items:center;gap:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#faf9f5b3;padding:8px 16px;border-radius:6px;font-size:var(--text-md);font-weight:var(--weight-medium);cursor:pointer;transition:all .2s}.logout-button:hover{background:#ffffff14;border-color:#fff3;color:#faf9f5}.logout-button:active{transform:scale(.98)}.logout-button svg{width:18px;height:18px}.course-content{max-width:800px;margin:0 auto;padding:40px 40px 80px}.back-button{display:flex;align-items:center;gap:8px;background:none;border:none;color:#faf9f599;font-size:var(--text-md);cursor:pointer;padding:0;margin-bottom:24px;transition:color .2s}.back-button:focus,.back-button:focus-visible{outline:none}.back-button:hover{color:#faf9f5}.back-button svg{width:16px;height:16px}.course-badges{display:flex;gap:8px;margin-bottom:16px}.badge{padding:4px 12px;border-radius:4px;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.5px;text-transform:uppercase}.badge-category{background:#4b8aff26;color:#4b8aff}.badge-level{background:#fed06026;color:#fed060}.course-title{font-size:var(--text-5xl);font-weight:var(--weight-bold);margin:0 0 16px;line-height:1.2}.course-description{font-size:var(--text-xl);line-height:1.6;color:#faf9f5b3;margin:0 0 16px}.course-prerequisite{font-size:var(--text-md);line-height:1.5;color:#faf9f599;margin:0 0 24px;padding:12px 16px;background:#4b8aff14;border-left:3px solid rgba(75,138,255,.5);border-radius:4px}.course-prerequisite strong{color:#faf9f5cc;font-weight:var(--weight-semibold);margin-right:8px}.course-environment{font-size:var(--text-md);line-height:1.5;color:#faf9f599;margin:0 0 24px;padding:12px 16px;background:#fed06014;border-left:3px solid rgba(254,208,96,.5);border-radius:4px}.course-environment strong{color:#faf9f5cc;font-weight:var(--weight-semibold);margin-right:8px}.course-stats{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.stat-item{font-size:var(--text-lg);font-weight:var(--weight-medium);color:#faf9f5b3}.stat-separator{width:1px;height:16px;background:#fff3}.course-progress-section{margin-bottom:32px}.course-progress-bar{width:100%;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;margin-bottom:8px}.course-progress-fill{height:100%;background:linear-gradient(90deg,#4b8aff,#7ba8ff);border-radius:4px;transition:width .5s ease}.course-progress-text{font-size:var(--text-md);font-weight:var(--weight-semibold);color:#faf9f5b3;text-align:right}.continue-button{display:flex;align-items:center;gap:10px;background:#6366f1;color:#faf9f5;border:none;padding:14px 28px;border-radius:8px;font-size:var(--text-lg);font-weight:var(--weight-semibold);cursor:pointer;transition:all .2s;margin-bottom:48px}.continue-button:hover{background:#7678f3;transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.continue-button:active{transform:translateY(0)}.continue-button svg{width:14px;height:14px}.modules-section{margin-top:48px}.modules-heading{font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin:0 0 24px;color:#faf9f5e6}.modules-list{display:flex;flex-direction:column;gap:12px}.module-block{background:#ffffff0d;border-radius:12px;overflow:hidden;transition:all .2s}.module-block:hover{background:#ffffff14}.module-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;cursor:pointer;-webkit-user-select:none;user-select:none}.module-left{display:flex;align-items:center;gap:16px;flex:1}.module-number{width:32px;height:32px;border-radius:50%;background:#4b8aff33;color:#4b8aff;display:flex;align-items:center;justify-content:center;font-weight:var(--weight-semibold);font-size:var(--text-md);flex-shrink:0}.module-title{font-size:var(--text-xl);font-weight:var(--weight-medium);color:#faf9f5}.module-right{display:flex;align-items:center;gap:16px}.module-progress{display:flex;align-items:center;gap:12px}.progress-bar{width:120px;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4b8aff,#7ba8ff);border-radius:3px;transition:width .3s ease}.progress-text{font-size:var(--text-md);font-weight:var(--weight-semibold);color:#faf9f5b3;min-width:40px;text-align:right}.module-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.module-icon svg{transition:transform .2s;color:#faf9f580}.module-icon svg.icon-expanded{transform:rotate(180deg)}.module-topics{padding:0 24px 20px;display:flex;flex-direction:column;gap:12px;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.topic-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff08;border-radius:8px;transition:all .2s}.topic-item:hover{background:#ffffff0f}.topic-item.topic-current{background:#4b8aff26;border:1px solid rgba(75,138,255,.3)}.topic-item.topic-current .topic-name{color:#4b8aff;font-weight:var(--weight-medium)}.topic-item.topic-accessible{cursor:pointer}.topic-item.topic-locked{cursor:not-allowed;opacity:.45}.topic-item.topic-locked:hover{background:transparent}.topic-locked-tooltip{position:fixed;background-color:#1e1e1e;border:.5px solid #fed060;color:#fed060;font-size:var(--text-base);font-weight:var(--weight-normal);line-height:1.4;padding:8px 12px;border-radius:6px;width:max-content;box-shadow:0 4px 12px #0006;pointer-events:none;z-index:2000;white-space:nowrap}.topic-mobile-msg{margin:0 0 8px;padding:10px 12px;background-color:#fed0600d;border:.5px solid #fed060;border-radius:8px;color:#fed060;font-size:var(--text-md);font-weight:var(--weight-normal);line-height:1.4}.topic-left{display:flex;align-items:center;gap:12px}.topic-name{font-size:var(--text-md);color:#faf9f5e6}.topic-duration{font-size:var(--text-base);color:#faf9f580}@media(max-width:768px){.course-header{padding:16px 20px}.header-logo{font-size:20px}.logout-button{padding:7px 14px;font-size:16px;gap:6px}.logout-button svg{width:16px;height:16px}.course-content{padding:24px 20px 60px}.back-button{font-size:16px;margin-bottom:20px}.course-badges{gap:6px}.badge{padding:3px 10px;font-size:13px}.course-title{font-size:28px;margin-bottom:12px}.course-description{font-size:16px;margin-bottom:20px}.course-prerequisite,.course-environment{font-size:16px}.course-stats{gap:12px;margin-bottom:16px}.stat-item{font-size:16px}.stat-separator{display:none}.course-progress-section{margin-bottom:28px}.course-progress-bar{height:6px}.course-progress-text{font-size:16px}.continue-button{width:100%;justify-content:center;padding:12px 24px;font-size:16px;margin-bottom:40px}.modules-heading{font-size:18px;margin-bottom:20px}.module-header{padding:16px;flex-wrap:wrap}.module-left{gap:12px;width:100%}.module-number{width:28px;height:28px;font-size:16px}.module-title{font-size:16px}.module-right{gap:12px;width:100%;margin-top:8px;padding-left:40px}.progress-bar{flex:1}.progress-text{font-size:14px;min-width:35px}.module-topics{padding:0 16px 16px;gap:10px}.topic-item{padding:10px 12px}.topic-left{gap:10px}.topic-name{font-size:16px}.topic-duration{font-size:14px}.topic-mobile-msg{font-size:16px}}@media(max-width:480px){.course-header{padding:14px 16px}.header-logo{font-size:18px}.logout-button{padding:6px 12px;font-size:14px;gap:6px}.logout-button svg{width:14px;height:14px}.logout-text{display:none}.logout-button{padding:8px;min-width:36px;justify-content:center}.course-content{padding:20px 16px 50px}.back-button{font-size:14px;margin-bottom:16px}.course-title{font-size:24px}.course-description{font-size:15px;line-height:1.5}.course-stats{flex-direction:column;align-items:flex-start;gap:8px}.stat-item{font-size:14px}.continue-button{padding:11px 20px;font-size:15px}.modules-heading{font-size:16px}.module-block{border-radius:10px}.module-header{padding:14px;flex-wrap:wrap}.module-left{width:100%}.module-number{width:26px;height:26px;font-size:14px}.module-title{font-size:15px}.module-right{width:100%;margin-top:8px;justify-content:space-between;padding-left:38px}.module-progress{flex:1;gap:10px}.progress-bar{flex:1;min-width:0}.progress-text{font-size:13px}.module-topics{padding:0 14px 14px}.topic-item{padding:9px 10px}.topic-name{font-size:14px}.topic-duration{font-size:13px}.topic-left svg{width:18px;height:18px}}.login-page{width:100vw;height:100vh;background-color:#141413;color:#faf9f5;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto}.login-header{padding:1.2rem 2.5rem;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.logo{font-size:1.3rem;font-weight:600;color:#fed060}.login-content{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:2.5rem 3rem;max-width:1400px;width:100%;margin:0 auto;align-items:center;overflow:hidden}.login-left{display:flex;flex-direction:column;gap:2.5rem;max-width:450px}.login-title{font-size:3rem;font-weight:600;line-height:1.2;margin:0;color:#faf9f5}.login-form{display:flex;flex-direction:column;gap:1rem;background-color:transparent;padding:2rem;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.login-error{padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#f87171;font-size:.875rem;text-align:center}.login-input{padding:.875rem 1rem;background-color:#1a1a1a99;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#faf9f5;font-size:.95rem;transition:all .2s ease;width:100%}.login-input::placeholder{color:#fff6}.login-input:focus{outline:none;border-color:#4b8aff;background-color:#1a1a1acc}.login-input:disabled{opacity:.5;cursor:not-allowed}.password-input-container{position:relative;width:100%}.password-input-container .login-input{padding-right:3rem}.password-toggle-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#ffffff80;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle-btn:hover{color:#fffc}.password-toggle-btn:focus{outline:none;color:#4b8aff}.login-button{padding:.875rem 1rem;background-color:#fff;color:#161616;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.login-button:hover{background-color:#f0f0f0;transform:translateY(-1px)}.login-button:active{transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-right{display:flex;align-items:center;justify-content:center;height:100%;max-height:calc(100vh - 180px)}@media(max-width:1200px){.login-content{padding:2rem 2.5rem;gap:2rem}.login-title{font-size:2.5rem}.login-left{gap:2rem}}@media(max-width:1024px){.login-page{height:auto;min-height:100vh;overflow-y:auto}.login-content{grid-template-columns:1fr;padding:2rem;gap:2.5rem;max-width:100%;box-sizing:border-box}.login-left{max-width:500px;width:95%;margin:0 auto;box-sizing:border-box}.login-title{font-size:2.5rem;text-align:center}.login-right{max-height:500px;width:95%;max-width:600px;margin:0 auto;box-sizing:border-box}}@media(max-width:640px){.login-header{padding:1rem}.logo{font-size:1.1rem}.login-content{padding:1rem;gap:1.5rem;max-width:100%;box-sizing:border-box}.login-title{font-size:1.75rem;max-width:95%;margin:0 auto;word-wrap:break-word}.login-form{padding:1.25rem;width:95%;min-width:200px;max-width:95%;margin:0 auto;box-sizing:border-box}.login-left{gap:1.5rem;width:95%;min-width:200px;max-width:95%;margin:0 auto;align-items:center;box-sizing:border-box}.login-right{max-height:400px;width:95%;min-width:200px;max-width:95%;margin:0 auto;box-sizing:border-box}.login-input,.login-button{font-size:.9rem;box-sizing:border-box}}.animated-chat{width:100%;max-width:550px;height:100%;max-height:550px;background-color:#1a1a1a;border-radius:16px;padding:.75rem;overflow:hidden;box-shadow:0 8px 32px #0006;border:1px solid rgba(255,255,255,.05);font-family:var(--font-sans);box-sizing:border-box}.animated-chat-messages{display:flex;flex-direction:column;gap:.875rem;height:100%;overflow-y:auto;pointer-events:none}.animated-chat-messages::-webkit-scrollbar{display:none}.animated-chat-messages{-ms-overflow-style:none;scrollbar-width:none}.message{display:flex;align-items:flex-start;gap:.75rem;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animated-chat .message-content{padding:.875rem 1rem;border-radius:12px;max-width:85%;word-wrap:break-word;font-size:.875rem;line-height:1.6;white-space:pre-wrap;font-family:var(--font-sans)}.ai-icon{flex-shrink:0;width:32px;height:32px;background-color:#fed060;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;color:#161616;margin-top:.25rem}.ai-message{justify-content:flex-start}.ai-message .message-content{background-color:#2a2a2a;color:#faf9f5;border:1px solid rgba(255,255,255,.1)}.student-message{justify-content:flex-end}.student-message .message-content{background-color:#4b8aff;color:#faf9f5}.animated-chat .message-content .code-block{background-color:#0006;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:.75rem .875rem;margin:.5rem 0;overflow-x:auto;font-family:JetBrains Mono,Fira Code,Consolas,Monaco,monospace;font-size:.8rem;line-height:1.6}.animated-chat .message-content .code-block code{color:#e8e8e8;background:none;padding:0;font-family:inherit}.animated-chat .message-content .inline-code{background-color:#4b8aff33;border:1px solid rgba(75,138,255,.3);border-radius:4px;padding:.2rem .4rem;font-family:JetBrains Mono,Fira Code,Consolas,Monaco,monospace;font-size:.85em;color:#4b8aff;font-weight:500}.animated-chat .ai-message .inline-code{color:#fed060;background-color:#fed06026;border-color:#fed0604d}.animated-chat .message-content strong{font-weight:var(--weight-bold);color:inherit}.typing-indicator{padding:0}.typing-dots{display:flex;gap:6px;align-items:center;background-color:#2a2a2a;border:1px solid rgba(255,255,255,.1);padding:.875rem 1rem;border-radius:12px}.typing-dots span{width:8px;height:8px;background-color:#fed060;border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out}.typing-dots span:nth-child(1){animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-10px);opacity:1}}@media(max-width:1024px){.animated-chat{max-height:450px}}@media(max-width:640px){.animated-chat{padding:.875rem;max-height:400px;width:100%;min-width:200px;box-sizing:border-box}.message{gap:.5rem}.ai-icon{width:28px;height:28px;font-size:.65rem}.message-content{font-size:.8rem;max-width:90%;padding:.75rem .875rem;box-sizing:border-box}.animated-chat-messages{gap:.75rem}.message-content .code-block{font-size:.7rem;padding:.6rem;box-sizing:border-box}.message-content .inline-code{font-size:.75em;padding:.1rem .3rem}}.onboard-page{width:100vw;height:100vh;background-color:#141413;color:#faf9f5;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto}.onboard-header{padding:1.2rem 2.5rem;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.onboard-content{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.onboard-card{width:100%;max-width:460px}.onboard-step{font-size:.875rem;color:#fed060;margin:0 0 .5rem;letter-spacing:.5px}.onboard-title{font-size:2rem;font-weight:600;margin:0 0 2rem;color:#faf9f5}.onboard-form{display:flex;flex-direction:column;gap:1.25rem;padding:2rem;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.onboard-error{padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#f87171;font-size:.875rem;text-align:center}.onboard-field{display:flex;flex-direction:column;gap:.4rem}.onboard-label{font-size:.85rem;color:#ffffff8c}.onboard-input{padding:.875rem 1rem;background-color:#1a1a1a99;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#faf9f5;font-size:.95rem;font-family:inherit;transition:all .2s ease;width:100%;box-sizing:border-box}.onboard-input::placeholder{color:#fff6}.onboard-input:focus{outline:none;border-color:#4b8aff;background-color:#1a1a1acc}.onboard-input:disabled{opacity:.5;cursor:not-allowed}.onboard-dob-row{display:flex;gap:.5rem}.onboard-select{flex:1;padding:.875rem 2rem .875rem .75rem;background-color:#1a1a1a99;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#faf9f5;font-size:.95rem;font-family:inherit;transition:all .2s ease;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.onboard-select:focus{outline:none;border-color:#4b8aff;background-color:#1a1a1acc}.onboard-select:disabled{opacity:.5;cursor:not-allowed}.onboard-select option{background-color:#1a1a1a;color:#faf9f5}.onboard-country-wrapper{position:relative}.onboard-country-trigger{cursor:pointer;display:flex;align-items:center;min-height:1.2em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.onboard-country-trigger.open{border-color:#4b8aff;background-color:#1a1a1acc}.onboard-country-placeholder{color:#fff6}.onboard-country-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background-color:#1a1a1a;border:1px solid rgba(255,255,255,.15);border-radius:8px;z-index:100;overflow:hidden}.onboard-country-search{width:100%;padding:.75rem 1rem;background-color:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.1);color:#faf9f5;font-size:.9rem;font-family:inherit;outline:none;box-sizing:border-box}.onboard-country-search::placeholder{color:#ffffff59}.onboard-country-list{list-style:none;margin:0;padding:0;max-height:200px;overflow-y:auto}.onboard-country-list::-webkit-scrollbar{width:6px}.onboard-country-list::-webkit-scrollbar-track{background:transparent}.onboard-country-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.onboard-country-item{padding:.6rem 1rem;cursor:pointer;font-size:.9rem;color:#fffc;transition:background-color .1s}.onboard-country-item:hover,.onboard-country-item.highlighted{background-color:#4b8aff26;color:#faf9f5}.onboard-country-item.selected{color:#4b8aff}.onboard-country-empty{padding:.75rem 1rem;color:#ffffff59;font-size:.875rem}.onboard-button{padding:.875rem 1rem;background-color:#fff;color:#161616;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem;font-family:inherit}.onboard-button:hover{background-color:#f0f0f0;transform:translateY(-1px)}.onboard-button:active{transform:translateY(0)}.onboard-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media(max-width:640px){.onboard-header,.onboard-content{padding:1rem}.onboard-title{font-size:1.5rem}.onboard-form{padding:1.25rem}}*{margin:0;padding:0;box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#262624;color:#faf9f5}.app-container{display:flex;flex-direction:row;height:100vh;height:100dvh;width:100%;overflow:hidden}.main-content{flex:1 1 auto;width:100%;display:flex;flex-direction:column;align-items:stretch;background-color:#262624;height:100vh;height:100dvh;overflow:hidden;min-width:0;box-sizing:border-box;position:relative}.mute-button{background-color:transparent;border:1px solid #2A2A2A;color:#faf9f5;width:36px;height:36px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;flex-shrink:0}.mute-button:hover{background-color:#242424;border-color:#3a3a3a}.mute-button svg{width:18px;height:18px}.subtopic-section{flex-shrink:0;align-self:stretch;background-color:#262624;border-bottom:1px solid #2A2A2A;padding:16px 24px;width:100%;box-sizing:border-box}.subtopic-controls-container{display:flex;align-items:center;gap:16px;width:100%}.topic-name-display{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:#faf9f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px;flex-shrink:1}.subtopic-count-wrapper{position:relative;flex-shrink:0}.subtopic-count-button{display:flex;align-items:center;gap:6px;background-color:transparent;border:1px solid #2A2A2A;color:#faf9f5;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:var(--text-base);transition:all .2s ease}.subtopic-count-button:focus,.subtopic-count-button:focus-visible{outline:none}.subtopic-count-button:hover{background-color:#1d1d1d;border-color:#3a3a3a}.dropdown-chevron-inline{transition:transform .2s ease}.dropdown-chevron-inline.chevron-open{transform:rotate(180deg)}.subtopic-dropdown-overlay{position:absolute;top:calc(100% + 8px);left:0;z-index:1000;min-width:300px}.header-secondary-row{display:contents}.topic-progress-inline-header{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.topic-progress-inline-header .topic-progress-track{flex:1;height:8px;background-color:#2a2a2a;border-radius:4px;overflow:hidden}.topic-progress-inline-header .topic-progress-fill{height:100%;background:linear-gradient(90deg,#4b8aff,#7ba8ff);border-radius:4px;transition:width .3s ease}.topic-progress-inline-header .topic-progress-count{color:#888;font-size:var(--text-xs);white-space:nowrap;flex-shrink:0}.hamburger-button{display:none;background-color:transparent;border:none;color:#faf9f5;width:36px;height:36px;cursor:pointer;padding:0;flex-shrink:0}.hamburger-button svg{width:24px;height:24px}.hamburger-button:hover{opacity:.8}.chat-container{flex:1;align-self:stretch;overflow-y:auto;overflow-x:hidden;padding:24px;background-color:#262624;min-width:0;width:100%;box-sizing:border-box}.chat-messages{width:100%;min-width:0;overflow-wrap:break-word;word-wrap:break-word;padding-bottom:56px}.chat-container::-webkit-scrollbar{width:8px}.chat-container::-webkit-scrollbar-track{background:#1a1a1a}.chat-container::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}.chat-container::-webkit-scrollbar-thumb:hover{background:#3a3a3a}.empty-state{text-align:center;padding:60px 20px;color:#6a6a6a}.empty-state h2{font-size:var(--text-4xl);font-weight:var(--weight-semibold);color:#faf9f5;margin-bottom:12px}.empty-state p{font-size:var(--text-lg);color:#8a8a8a;max-width:500px;margin:0 auto}.colab-float-wrapper{position:absolute;bottom:100px;right:32px;display:flex;flex-direction:column;align-items:flex-end;gap:10px;transition:bottom .2s ease}.has-usage-banner .colab-float-wrapper{bottom:140px}.has-two-banners .colab-float-wrapper{bottom:178px}.colab-float-btn{position:relative;display:flex;align-items:center;padding:8px;background-color:#242322;border:1px solid #2A2A2A;border-radius:10px;text-decoration:none;cursor:pointer;transition:background-color .2s ease,border-color .2s ease;z-index:10}.colab-float-btn:hover{background-color:#2c2b29;border-color:#3a3a3a}.colab-float-btn:after{content:"Open Colab";position:absolute;bottom:calc(100% + 8px);right:0;background-color:#1a1a1a;color:#faf9f5;font-size:var(--text-sm);font-weight:var(--weight-medium);padding:4px 10px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease}.colab-float-btn:hover:after{opacity:1}.colab-float-btn.panel-open:after{display:none}.colab-float-icon{width:48px;height:auto;flex-shrink:0;display:block}.input-area{flex-shrink:0;align-self:stretch;background-color:#262624;border-top:none;padding:20px 24px;width:100%;box-sizing:border-box}.input-container{max-width:900px;margin:0 auto;display:flex;gap:10px;align-items:flex-end;background-color:#2d2d2d;border-radius:28px;padding:8px 8px 8px 20px;border:none;transition:background-color .2s ease;box-sizing:border-box}.input-container:focus-within{background-color:#333}.chat-input{flex:1;background-color:transparent;border:none;color:#faf9f5;font-size:var(--text-lg);font-family:inherit;resize:none;outline:none;max-height:150px;min-height:24px;overflow-y:auto;line-height:24px;padding:8px 0;align-self:center}.chat-input::placeholder{color:#6a6a6a}.chat-input:disabled{opacity:.5;cursor:not-allowed}.chat-input::-webkit-scrollbar{width:6px}.chat-input::-webkit-scrollbar-track{background:transparent}.chat-input::-webkit-scrollbar-thumb{background:#4a4a4a;border-radius:3px}.send-button{background-color:#fff;border:none;padding:0;color:#000;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;align-self:flex-end}.send-button:hover:not(:disabled){background-color:#e0e0e0}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{background-color:#3a3a3a;color:#6a6a6a;cursor:not-allowed;opacity:.6}.send-button svg{width:20px;height:20px}.input-hint{width:100%;margin:8px 0 0;font-size:var(--text-sm);color:#6a6a6a;text-align:center}@media(max-width:768px){.hamburger-button{display:flex;align-items:center;justify-content:center}.subtopic-section{padding:12px 16px}.subtopic-controls-container{flex-wrap:wrap;gap:10px}.topic-name-display{flex:1;max-width:none}.header-secondary-row{display:flex;align-items:center;gap:10px;width:100%;order:10;padding-left:46px;margin-top:2px}.subtopic-count-button{padding:6px 10px}.topic-progress-inline-header .topic-progress-track{height:6px}.topic-progress-inline-header .topic-progress-count{font-size:10px}.mute-button{width:32px;height:32px}.mute-button svg{width:16px;height:16px}.chat-container{padding:16px 8px}.chat-messages{padding:0 4px}.input-area{padding:16px}.input-container{padding:6px 6px 6px 16px;border-radius:24px}.chat-input{font-size:16px;padding:6px 0}.send-button{width:36px;height:36px}.send-button svg{width:18px;height:18px}.empty-state{padding:40px 16px}}@keyframes wave{0%{transform:rotate(0)}15%{transform:rotate(18deg)}30%{transform:rotate(-10deg)}45%{transform:rotate(16deg)}60%{transform:rotate(-8deg)}75%{transform:rotate(12deg)}to{transform:rotate(0)}}.wave{display:inline-block;transform-origin:70% 70%;animation:wave 2s ease-in-out .3s 2;font-style:normal}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-history{text-align:center;padding:16px;color:#f9fafb80;font-size:var(--text-md)}.dataset-float-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#242322;border:1px solid #2A2A2A;border-radius:10px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease;outline:none;font-family:inherit}.dataset-float-btn:hover{background-color:#2c2b29;border-color:#3a3a3a}.dataset-float-btn:focus,.dataset-float-btn:focus-visible{outline:none;border-color:#2a2a2a}.dataset-float-btn.collapsed{padding:8px}.dataset-float-icon{display:flex;align-items:center;color:#fed060b3}.dataset-float-label{color:#faf9f5;font-size:var(--text-sm);white-space:nowrap}.dataset-float-dl-icon{color:#f9fafb66;flex-shrink:0}.summary-container{flex-shrink:0;margin:12px 20px 0;background:#242322;border:.5px solid rgba(250,249,245,.2);border-radius:12px;overflow:hidden;box-shadow:0 2px 16px #00000059}.summary-header{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s;border-radius:12px}.summary-header:hover{background:#ffffff0a}.summary-title{font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-normal);color:#faf9f5;letter-spacing:.4px;flex:1}.summary-meta{font-size:var(--text-sm);color:#f9fafb59}.summary-toggle{font-size:var(--text-xs);color:#fed060b3}.summary-content{font-family:inherit;padding:12px 14px 14px;font-size:var(--text-md);line-height:1.6;color:#f9fafbbf;border-top:1px solid #2e2e2e;white-space:pre-wrap}.sidebar{width:280px;height:100vh;background-color:#242322;color:#faf9f5;display:flex;flex-direction:column;border-right:1px solid #2A2A2A;flex-shrink:0;overflow-y:auto;overflow-x:hidden}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:#242322}.sidebar::-webkit-scrollbar-thumb{background:#fed06066;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#fed060}.sidebar-header{padding:20px 10px 16px;border-bottom:1px solid #2A2A2A}.back-to-course-btn{display:flex;align-items:center;gap:8px;background-color:transparent;border:none;color:#999;padding:0;cursor:not-allowed;font-size:var(--text-md);font-family:inherit;width:100%;transition:all .2s ease;opacity:.8}.back-to-course-btn:focus,.back-to-course-btn:focus-visible{outline:none}.back-to-course-btn svg{width:18px;height:18px;flex-shrink:0}.back-to-course-btn span{font-weight:var(--weight-normal)}.back-to-course-btn:not(:disabled){cursor:pointer;opacity:1}.back-to-course-btn:not(:disabled):hover{color:#ccc}.back-to-course-btn:not(:disabled):hover svg{stroke:#ccc}.sidebar-course-name{padding:14px 16px 10px;font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:.5px;color:#faf9f5;text-transform:none;border-bottom:1px solid #2A2A2A}.sidebar-section{padding:24px 10px;border-bottom:1px solid #2A2A2A}.module-section{padding:20px 10px 16px;position:relative}.section-label{font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:.5px;color:#faf9f5;margin-bottom:10px;text-transform:none}.module-dropdown-trigger{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:1px solid #2E2E2E;border-radius:8px;padding:9px 10px;cursor:pointer;color:#faf9f5;font-family:inherit;font-size:var(--text-md);font-weight:var(--weight-normal);text-align:left;transition:border-color .2s ease,background-color .2s ease}.module-dropdown-trigger:focus,.module-dropdown-trigger:focus-visible{outline:none}.module-dropdown-trigger:hover:not(:disabled){border-color:#3e3e3e;background-color:#ffffff08}.module-dropdown-trigger.open{border-color:#3e3e3e;background-color:#ffffff08}.module-dropdown-trigger:disabled{cursor:default;opacity:.5}.module-dropdown-icon{flex-shrink:0;display:flex;align-items:center}.module-dropdown-label{flex:1;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.module-dropdown-chevron{flex-shrink:0;color:#666;transition:transform .2s ease}.module-dropdown-chevron.rotated{transform:rotate(180deg)}.module-dropdown-list{position:absolute;top:calc(100% - 8px);left:10px;right:10px;background-color:#1e1e1e;border:1px solid #3A3A3A;border-radius:8px;z-index:100;overflow:hidden;box-shadow:0 4px 16px #0006}.module-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;color:#999;font-family:inherit;font-size:var(--text-base);text-align:left;cursor:pointer;transition:background-color .15s ease,color .15s ease;border-bottom:1px solid #2A2A2A}.module-dropdown-item:last-child{border-bottom:none}.module-dropdown-item:hover{background-color:#ffffff0d;color:#faf9f5}.module-dropdown-item.module-item-current{color:#faf9f5;font-weight:var(--weight-normal);background-color:#ffffff08;cursor:default}.module-item-name{flex:1;line-height:1.3}.module-dropdown-item.module-item-locked{cursor:not-allowed;opacity:.5}.module-dropdown-item.module-item-available{color:#faf9f5;font-weight:var(--weight-normal)}.topic-item.topic-locked{opacity:.45}.topic-item.topic-available{border:1px solid #2E2E2E}.topic-item.topic-available .topic-name{color:#faf9f5;font-weight:var(--weight-normal)}.sidebar-locked-tooltip{position:fixed;transform:translateY(-50%);background-color:#1e1e1e;border:.5px solid #fed060;color:#fed060;font-size:var(--text-base);font-weight:var(--weight-normal);line-height:1.4;padding:8px 12px;border-radius:6px;width:max-content;box-shadow:0 4px 12px #0006;pointer-events:none;z-index:2000;white-space:nowrap}.sidebar-mobile-msg{margin:0 10px 12px;padding:10px 12px;background-color:#fed0600d;border:.5px solid #fed060;border-radius:8px;color:#fed060;font-size:var(--text-md);font-weight:var(--weight-normal);line-height:1.4;animation:fadeInMsg .2s ease}@keyframes fadeInMsg{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.topics-section{flex:1;overflow-y:auto;padding:24px 0}.topics-section::-webkit-scrollbar{width:4px}.topics-section::-webkit-scrollbar-track{background:#242322}.topics-section::-webkit-scrollbar-thumb{background:#fed06066;border-radius:3px}.topics-section::-webkit-scrollbar-thumb:hover{background:#fed060}.topics-list{display:flex;flex-direction:column;gap:8px;padding:0 10px}.no-topics{color:#6a6a6a;font-size:var(--text-base);padding:8px 10px}.topic-item{display:flex;align-items:center;gap:12px;cursor:default;transition:opacity .2s ease;background-color:transparent;border:1px solid transparent;border-radius:8px;padding:10px 6px}.topic-item.topic-clickable:hover{opacity:.8}.topic-item.topic-current{background-color:#2e2d2b;border:1px solid #2E2E2E;padding-left:6px;padding-right:6px;border-radius:6px}.topic-item.topic-current .topic-name{color:#faf9f5;font-weight:var(--weight-normal)}.topic-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.topic-name{flex:1;font-size:var(--text-md);color:#999;line-height:1.4;font-weight:var(--weight-normal)}.sidebar-footer{padding:12px 10px 24px;border-top:none;background-color:transparent;flex-shrink:0}.sidebar-tips-btn{display:flex;align-items:center;justify-content:flex-start;gap:6px;width:100%;padding:8px 6px;margin-bottom:16px;background:transparent;border:1px solid #2E2E2E;border-radius:8px;color:#999;font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-normal);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.sidebar-tips-btn:focus,.sidebar-tips-btn:focus-visible{outline:none;border-color:#2e2e2e}.sidebar-tips-btn:hover{color:#faf9f5;border-color:#3e3e3e;background:#ffffff08}.sidebar-tips-btn svg{flex-shrink:0;stroke:currentColor}.progress-stats{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.progress-label{font-size:var(--text-sm);font-weight:var(--weight-normal);letter-spacing:.5px;color:#faf9f5;text-transform:none}.progress-count{font-size:var(--text-base);font-weight:var(--weight-normal);color:#fed060}.progress-track{height:8px;background-color:#2a2a2a;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:#fed060;transition:width .3s ease;border-radius:4px}.sidebar-overlay{display:none}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;z-index:1000;transform:translate(-100%);transition:transform .3s ease}.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;inset:0;background-color:#0009;z-index:999}.sidebar-closed+.sidebar-overlay{display:none}}.subtopic-dropdown-container{position:relative;width:100%;min-width:0}.subtopic-dropdown-button{width:100%;background-color:transparent;border:none;border-radius:0;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:all .2s ease;font-family:inherit;min-width:0;overflow:hidden}.subtopic-dropdown-button:hover{opacity:.8}.subtopic-dropdown-button:focus,.subtopic-dropdown-button:focus-visible{outline:none}.subtopic-dropdown-button:disabled{cursor:not-allowed;opacity:.5}.dropdown-content{flex:1;text-align:left;display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0;overflow:hidden}.dropdown-topic-name{font-size:var(--text-lg);font-weight:var(--weight-medium);color:#faf9f5;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.dropdown-subtopic-count{font-size:var(--text-sm);color:#8a8a8a;white-space:nowrap;flex-shrink:0}.dropdown-chevron{width:18px;height:18px;color:#8a8a8a;transition:transform .2s ease;flex-shrink:0}.dropdown-chevron.chevron-open{transform:rotate(180deg)}.subtopic-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;background-color:#1d1d1d;border:1px solid #2A2A2A;border-radius:8px;box-shadow:0 4px 12px #0006;z-index:100;max-height:320px;overflow-y:auto;padding:6px;animation:dropdownSlideIn .2s ease}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.subtopic-dropdown-menu::-webkit-scrollbar{width:6px}.subtopic-dropdown-menu::-webkit-scrollbar-track{background:#1a1a1a;border-radius:3px}.subtopic-dropdown-menu::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:3px}.subtopic-dropdown-menu::-webkit-scrollbar-thumb:hover{background:#4a4a4a}.subtopic-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:6px;cursor:default;transition:background-color .15s ease,transform .1s ease;-webkit-user-select:none;user-select:none}.subtopic-item.subtopic-clickable:hover{background-color:#2f2f2f;transform:translate(2px)}.subtopic-item.subtopic-clickable:active{transform:translate(1px)}.subtopic-item.subtopic-current{background-color:#2a2a2a}.subtopic-item.subtopic-current .subtopic-name{color:#4b8aff;font-weight:var(--weight-medium)}.subtopic-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.subtopic-name{flex:1;font-size:var(--text-md);color:#faf9f5;line-height:1.4}.no-subtopics{padding:16px;text-align:center;color:#6a6a6a;font-size:var(--text-base)}@media(max-width:768px){.subtopic-dropdown-button{padding:10px 14px}.dropdown-subtopic-count{font-size:var(--text-xs)}.subtopic-item{padding:8px 10px}}.message-bubble{display:flex;margin-bottom:20px;animation:fadeIn .3s ease-in;min-width:0;width:100%;max-width:100%}.message-bubble.user{justify-content:flex-end}.message-bubble.user .message-content{background-color:#3e3e3e;color:#faf9f5;border-radius:18px;padding:16px 20px;max-width:75%;min-width:0;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.message-bubble.ai{justify-content:flex-start}.message-bubble.ai .message-content{background-color:transparent;color:#faf9f5;border-radius:18px;padding:16px 20px;max-width:75%;min-width:0;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.message-bubble.system{justify-content:center}.message-bubble.system .message-content{background-color:#ffffff08;color:#888;border-radius:12px;padding:8px 12px;font-size:var(--text-base);max-width:60%;text-align:center}.message-text{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;line-height:1.5}.streaming-cursor{display:inline-block;margin-left:2px;animation:blink 1s steps(2) infinite;color:#4b8aff}.markdown-content{width:100%;min-width:0}.markdown-paragraph{margin:0 0 12px;line-height:1.5}.markdown-paragraph:last-child{margin-bottom:0}.markdown-link{color:#4b8aff;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.markdown-link:hover{border-bottom-color:#4b8aff}.markdown-list{margin:6px 0 12px;padding-left:24px}.markdown-list li{margin:3px 0;line-height:1.5}.markdown-content strong{font-weight:var(--weight-semibold);color:#c1ff72}.markdown-content em{font-style:italic;color:#faf9f5}.code-block-container{margin:12px 0;border-radius:8px;overflow:hidden;background-color:#1e1e1e;border:1px solid #333333}.code-block-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#2d2d2d;border-bottom:1px solid #333333}.code-language{font-size:var(--text-sm);color:#888;text-transform:uppercase;font-weight:var(--weight-medium);letter-spacing:.5px}.copy-button{padding:4px 12px;font-size:var(--text-sm);color:#faf9f5;background-color:transparent;border:1px solid #4a4a4a;border-radius:4px;cursor:pointer;transition:all .2s ease;font-family:inherit}.copy-button:hover{background-color:#3a3a3a;border-color:#5a5a5a}.copy-button:active{transform:scale(.95)}.copy-button.copied{background-color:#10a37f;border-color:#10a37f;color:#faf9f5}.inline-code{background-color:#ffffff1a;color:#fed060;padding:2px 6px;border-radius:4px;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,Menlo,Monaco,Liberation Mono,Courier New,monospace;font-weight:300;font-size:.9em;letter-spacing:1px;border:1px solid rgba(255,255,255,.05)}.code-block-container pre{margin:0!important;padding:16px!important;background:transparent!important;overflow-x:auto;font-size:var(--text-xl)!important;font-family:ui-monospace,SF Mono,Cascadia Code,Consolas,Menlo,Monaco,Liberation Mono,Courier New,monospace!important}.code-block-container pre::-webkit-scrollbar{height:8px}.code-block-container pre::-webkit-scrollbar-track{background:#1e1e1e}.code-block-container pre::-webkit-scrollbar-thumb{background:#4a4a4a;border-radius:4px}.code-block-container pre::-webkit-scrollbar-thumb:hover{background:#5a5a5a}.loading-dots{display:inline-block;margin-left:1px}.loading-dots:after{content:".";animation:dots-cycle 1.2s steps(1) infinite}@keyframes dots-cycle{0%{content:"."}33%{content:".."}66%{content:"..."}to{content:"."}}.show-more-btn{display:block;margin-top:8px;background:none;border:none;color:#ececec80;font-size:var(--text-base);cursor:pointer;padding:0;font-family:inherit;transition:color .2s ease}.show-more-btn:hover{color:#faf9f5}.message-bubble.historical{opacity:.85}.conversation-separator{text-align:center;padding:24px 16px;margin:16px 0;position:relative}.conversation-separator:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(75,138,255,.3) 20%,rgba(75,138,255,.3) 80%,transparent 100%)}.conversation-separator-text{display:inline-block;padding:6px 16px;background-color:#1d1d1d;color:#4b8affcc;font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:.5px;border-radius:12px;border:1px solid rgba(75,138,255,.2);position:relative;z-index:1}@media(max-width:768px){.message-bubble.user .message-content,.message-bubble.ai .message-content{max-width:85%;padding:12px 16px;font-size:18px}.message-bubble.system .message-content{max-width:75%}.code-block-container{margin:8px 0}.code-block-container pre{padding:12px!important}.code-block-header{padding:6px 10px}.code-language{font-size:var(--text-xs)}.copy-button{padding:3px 8px;font-size:var(--text-xs)}.inline-code{font-size:.85em;padding:1px 4px}}.typing-indicator-container{display:flex;justify-content:flex-start;margin-bottom:20px;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.typing-indicator-bubble{background-color:transparent;color:#ececec;border-radius:18px;padding:12px 16px;display:flex;align-items:center;gap:8px}.typing-indicator-text{font-size:var(--text-xl);font-weight:var(--weight-medium);color:#8e8e8e}.typing-indicator-bubble .typing-dots{display:flex;gap:4px;align-items:center;background-color:transparent;border:none;padding:0;border-radius:0}.dot{width:6px;height:6px;border-radius:50%;background-color:#6e6e6e;animation:typing 1.4s infinite}.dot:nth-child(1){animation-delay:0s}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-8px)}}.waveform{display:flex;align-items:center;justify-content:center;gap:3px;height:24px;padding:0 8px}.wave-bar{width:3px;height:8px;background-color:#ffffff4d;border-radius:2px;transition:all .3s ease}.waveform-active .wave-bar{background-color:#4b8aff;animation:wave-pulse 1s ease-in-out infinite}.waveform-active .wave-bar:nth-child(1){animation-delay:0s}.waveform-active .wave-bar:nth-child(2){animation-delay:.2s}.waveform-active .wave-bar:nth-child(3){animation-delay:.4s}.waveform-active .wave-bar:nth-child(4){animation-delay:.6s}.waveform-active .wave-bar:nth-child(5){animation-delay:.8s}@keyframes wave-pulse{0%,to{height:8px}50%{height:20px}}.usage-banner+.usage-banner{margin-top:6px}.usage-banner{max-width:900px;margin:0 auto;padding:8px 16px;border-radius:8px;font-size:13px;line-height:1.4;display:flex;align-items:center;justify-content:space-between;gap:12px}.usage-banner__message{flex:1}.usage-banner__reset{opacity:1}.usage-banner__dismiss{background:none;border:none;cursor:pointer;padding:2px;opacity:.7;flex-shrink:0;display:flex;align-items:center}.usage-banner__dismiss:hover{opacity:1}.usage-banner--yellow{background-color:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.usage-banner--yellow .usage-banner__dismiss{color:#fbbf24}.usage-banner--red{background-color:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.35);font-weight:500}.usage-banner--red .usage-banner__dismiss{color:#ef4444}@media(max-width:768px){.usage-banner{font-size:12px;padding:6px 12px;border-radius:6px}}.colab-panel{position:absolute;bottom:calc(100% + 12px);right:0;width:400px;min-width:300px;max-width:min(500px,calc(100vw - 48px));max-height:calc(100vh - 180px);display:flex;flex-direction:column;background-color:#242322;border:.5px solid rgba(255,255,255,.18);border-radius:12px;z-index:100;overflow:hidden;box-shadow:0 8px 32px #00000080;font-size:var(--text-md);color:#fff}.cp-title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:#fff;margin:0}.cp-divider{height:1px;background-color:#ffffff14;margin:0}.cp-link{color:#6aa3ff;text-decoration:none}.cp-link:hover{text-decoration:underline}.cp-setup{display:flex;flex-direction:column;gap:8px;padding:18px 18px 58px;overflow-x:visible;overflow-y:auto;flex:1}.cp-step{display:flex;gap:6px;color:#d4d3d0;font-size:var(--text-base);align-items:flex-start;margin-top:4px}.cp-step-num{color:#9a9a9a;flex-shrink:0;width:16px}.cp-step strong{color:#fff}.cp-anim-box{position:relative;background-color:#1a1a1a;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px 12px;margin-bottom:2px;overflow:visible}.cp-browser-bar{display:flex;align-items:center;gap:6px;background-color:#2d2d2d;border-radius:4px;padding:4px 8px;font-size:var(--text-sm);font-family:monospace;color:#d4d3d0;overflow:hidden}.cp-lock{font-size:var(--text-sm)}.cp-typing-url{overflow:hidden;white-space:nowrap;width:0;animation:typeUrl 1.8s steps(28,end) .3s forwards}@keyframes typeUrl{0%{width:0}to{width:190px}}.cp-cursor{animation:blink 1s step-end infinite;color:#fff}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.cp-selected-url{position:relative;font-family:monospace;font-size:var(--text-sm);color:#d4d3d0}.cp-selected-url:after{content:"";position:absolute;top:0;left:0;height:100%;width:0;background-color:#4b8aff59;animation:sweepSelect 1.2s ease .4s forwards}@keyframes sweepSelect{0%{width:0}to{width:100%}}.cp-dialog{display:flex;flex-direction:column;border-radius:6px;overflow:hidden;font-size:var(--text-sm)}.cp-dialog-title{font-size:var(--text-base);font-weight:var(--weight-semibold);color:#fff;padding:4px 0 6px;border-bottom:1px solid rgba(255,255,255,.08)}.cp-dialog-body{display:flex;flex-direction:column;gap:2px;padding:4px 0}.cp-dialog-row{padding:3px 6px;border-radius:4px;color:#9a9a9a;font-size:var(--text-sm)}.cp-dialog-footer{border-top:1px solid rgba(255,255,255,.08);padding-top:6px;margin-top:2px}.cp-new-nb-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;border:1px solid #4B8AFF;color:#6aa3ff;font-size:var(--text-sm);font-weight:var(--weight-medium);animation:pulseNewNb 1.4s ease-in-out infinite}@keyframes pulseNewNb{0%,to{background-color:transparent;box-shadow:none}50%{background-color:#4b8aff2e;box-shadow:0 0 0 3px #4b8aff33}}.cp-input{background-color:#2d2d2d;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#fff;font-size:var(--text-base);padding:8px 10px;width:100%;outline:none;box-sizing:border-box;font-family:inherit}.cp-input:focus{border-color:#4b8aff}.cp-input::placeholder{color:#6a6a6a}.cp-error{color:#ff6b6b;font-size:var(--text-sm);margin:0}.cp-link-btn{align-self:flex-end;background-color:#4b8aff;color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;font-family:inherit;transition:background-color .15s ease,opacity .15s ease}.cp-link-btn:hover:not(:disabled){background-color:#3a72e8}.cp-link-btn:disabled{opacity:.45;cursor:not-allowed}.cp-linked{display:flex;flex-direction:column}.cp-action-row{display:flex;align-items:center;gap:10px;padding:14px 18px;background:none;border:none;color:#fff;font-size:var(--text-md);font-family:inherit;cursor:pointer;text-decoration:none;text-align:left;transition:background-color .15s ease;width:100%;box-sizing:border-box}.cp-action-row:hover{background-color:#ffffff0d}.cp-action-row.primary{color:#6aa3ff;font-weight:var(--weight-medium)}.cp-action-row.muted{color:#9a9a9a}.cp-action-icon{font-size:14px;flex-shrink:0;display:flex;align-items:center}.cp-chevron{margin-left:auto;color:#6a6a6a;font-size:16px}.cp-howto{display:flex;flex-direction:column;gap:8px;padding:18px;overflow-x:visible;overflow-y:auto;flex:1;animation:slideInRight .2s ease}@keyframes slideInRight{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.cp-howto-header{display:flex;align-items:center;gap:10px}.cp-back-btn{background:none;border:none;color:#9a9a9a;font-size:16px;cursor:pointer;padding:0;line-height:1;transition:color .15s ease}.cp-back-btn:hover{color:#fff}.cp-howto-label{font-size:var(--text-base);font-weight:var(--weight-semibold);color:#fff;margin:4px 0 2px}.cp-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:var(--text-sm)}.cp-toolbar-item{padding:3px 8px;border-radius:4px;color:#d4d3d0;background-color:#ffffff0f;cursor:default}.cp-toolbar-sep{color:#ffffff26;padding:0 2px}.cp-code-click-target{animation:codeClickFlash 2.4s ease-in-out infinite}@keyframes codeClickFlash{0%,20%{background-color:#ffffff0f;color:#d4d3d0}25%,38%{background-color:#4b8aff4d;color:#fff}43%,to{background-color:#ffffff0f;color:#d4d3d0}}.cp-cell{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-family:monospace;color:#d4d3d0;background-color:#2d2d2d;border-radius:4px;padding:5px 8px}.cp-cell-gutter{color:#6a6a6a;flex-shrink:0}.cp-run-click-target{flex-shrink:0;animation:runClickFlash 2.4s ease-in-out infinite}@keyframes runClickFlash{0%,20%{color:#6a6a6a;transform:scale(1)}25%,38%{color:#34a853;transform:scale(1.2)}43%,to{color:#6a6a6a;transform:scale(1)}}.cp-run-btn-muted{flex-shrink:0;color:#6a6a6a}.cp-cell-code{flex:1;color:#d4d3d0}.cp-cell-actions{color:#6a6a6a;margin-left:auto;flex-shrink:0}.cp-trash-click-target{display:inline-block;font-size:15px;vertical-align:middle;animation:trashClickFlash 2.4s ease-in-out infinite}@keyframes trashClickFlash{0%,20%{filter:none;transform:scale(1)}25%,38%{filter:drop-shadow(0 0 4px #ea4335);transform:scale(1.2)}43%,to{filter:none;transform:scale(1)}}.cp-cell-output{margin-top:4px;padding:4px 8px;font-family:monospace;font-size:var(--text-sm);color:#9a9a9a;border-left:2px solid rgba(255,255,255,.08)}.cp-typing-output{overflow:hidden;white-space:nowrap;display:inline-block;width:0;animation:typeUrl 1.2s steps(11,end) .6s forwards}.cp-click-cursor{position:absolute;font-size:16px;line-height:1;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:10;animation:handTap 2.4s ease-in-out infinite}@keyframes handTap{0%,18%{transform:translate(-50%) translateY(0);opacity:1}25%{transform:translate(-50%) translateY(-6px);opacity:1}38%,85%{transform:translate(-50%) translateY(0);opacity:1}95%,to{transform:translate(-50%) translateY(0);opacity:.2}}.cp-scroll-arrow{position:absolute;bottom:14px;left:50%;transform:translate(-50%);width:34px;height:34px;padding:3px;background-color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:all;z-index:10;box-shadow:0 2px 8px #00000073;transition:transform .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none}.cp-scroll-arrow:before{content:"";display:block;width:11px;height:11px;border-right:2.5px solid #111111;border-bottom:2.5px solid #111111;transform:rotate(45deg);margin-top:-3px}.cp-scroll-arrow:hover{transform:translate(-50%) translateY(-2px);box-shadow:0 4px 12px #00000080}.cp-setup::-webkit-scrollbar,.cp-howto::-webkit-scrollbar{width:4px}.cp-setup::-webkit-scrollbar-track,.cp-howto::-webkit-scrollbar-track{background:transparent}.cp-setup::-webkit-scrollbar-thumb,.cp-howto::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:4px}@media(max-width:480px){.colab-panel{right:-32px;width:calc(100vw - 16px)}}.tips-overlay{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tips-card{position:relative;width:500px;max-width:calc(100vw - 32px);background:#1e1e1e;border:1px solid #2e2e2e;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 40px #00000080}.tips-skip{position:absolute;top:12px;right:14px;z-index:10;background:none;border:none;color:#888;font-size:13px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:color .15s,background .15s}.tips-skip:hover{color:#ccc;background:#ffffff0f}.tips-skip:focus,.tips-skip:focus-visible{outline:none}.tips-graphic{height:260px;display:flex;align-items:center;justify-content:center;padding:44px 24px 16px;animation:tipSlideIn .3s ease}.tips-graphic[data-direction=prev]{animation:tipSlideInReverse .3s ease}.tips-text{padding:0 28px 8px;text-align:center;animation:tipFadeIn .35s ease}.tips-text[data-direction=prev]{animation:tipFadeIn .35s ease}.tips-title{font-size:20px;font-weight:600;color:#faf9f5;margin:0 0 8px}.tips-body{font-size:14px;line-height:1.6;color:#aaa;margin:0}.tips-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 28px 24px}.tips-nav-arrow{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid #2e2e2e;border-radius:50%;color:#faf9f5;cursor:pointer;padding:0;transition:background .15s,border-color .15s}.tips-nav-arrow:hover:not(:disabled){background:#ffffff0f;border-color:#3e3e3e}.tips-nav-arrow:focus,.tips-nav-arrow:focus-visible{outline:none;border-color:#2e2e2e}.tips-nav-arrow:disabled{opacity:.25;cursor:default}.tips-nav-arrow svg{width:18px;height:18px}.tips-done-btn{display:flex;align-items:center;justify-content:center;background:#4b8aff;border:none;border-radius:20px;color:#fff;font-size:13px;font-weight:500;cursor:pointer;padding:8px 20px;transition:background .15s;font-family:inherit;white-space:nowrap}.tips-done-btn:hover{background:#3a7bf0}.tips-done-btn:focus,.tips-done-btn:focus-visible{outline:none}.tips-dots{display:flex;gap:8px}.tips-dot{width:8px;height:8px;border-radius:50%;background:#3a3a3a;transition:background .2s,transform .2s}.tips-dot-active{background:#fed060;transform:scale(1.25)}@keyframes tipSlideIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes tipSlideInReverse{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes tipFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tip-mockup{width:100%;max-width:420px;height:200px;display:flex;flex-direction:column;justify-content:center;background:#262624;border-radius:12px;border:1px solid #2a2a2a;overflow:hidden}.tip-leads-chat{display:flex;flex-direction:column;gap:10px;padding:20px 16px 16px}.tip-mock-ai-bubble.tip-leads-ai-bubble{width:100%;max-width:none;padding:10px 14px}.tip-leads-ai-text{font-size:11px;line-height:1.55;color:#faf9f5d9}.tip-leads-typing{display:flex;align-items:center;gap:4px;padding:8px 12px}.tip-leads-dot{width:6px;height:6px;border-radius:50%;background:#faf9f566;animation:tipLeadsDotPulse 1.4s ease-in-out infinite}.tip-leads-dot:nth-child(2){animation-delay:.2s}.tip-leads-dot:nth-child(3){animation-delay:.4s}@keyframes tipLeadsDotPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.tip-sayhi-chat{display:flex;flex-direction:column;gap:12px;padding:20px 16px 14px}.tip-sayhi-user{font-size:13px;font-weight:500;padding:8px 18px}.tip-mock-ai-bubble.tip-sayhi-ai-bubble{width:100%;max-width:none;padding:10px 14px}.tip-sayhi-ai-text{font-size:11px;line-height:1.55;color:#faf9f5d9}.tip-sayhi-ai-text strong{color:#7ba8ff;font-weight:600}.tip-path-content{display:flex;gap:14px;padding:14px 16px;height:100%}.tip-path-sidebar,.tip-path-subtopics{flex:1;background:#242322;border:1px solid #2a2a2a;border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:3px}.tip-path-sb-header{font-size:9px;font-weight:600;letter-spacing:.5px;color:#faf9f566;padding:0 2px 4px}.tip-path-topic{display:flex;align-items:center;gap:6px;padding:5px 4px;border-radius:4px}.tip-path-topic span{font-size:10.5px;color:#999}.tip-path-done span{color:#faf9f5b3}.tip-path-current{background:#4b8aff14;border:1px solid rgba(75,138,255,.15)}.tip-path-current span{color:#faf9f5;font-weight:500}.tip-path-locked{opacity:.45}.tip-path-dd-item{display:flex;align-items:center;gap:6px;padding:5px 4px;border-radius:4px}.tip-path-dd-item span{font-size:10px;color:#888}.tip-path-dd-done span{color:#faf9f599}.tip-path-dd-active{background:#4b8aff0f}.tip-path-dd-active span{color:#faf9f5;font-weight:500}.tip-path-dd-future{opacity:.45}.tip-mock-chat{position:relative;padding:20px 16px 12px}.tip-talks-chat{display:flex;flex-direction:column;gap:8px;padding:40px 16px 10px}.tip-mock-ai-bubble.tip-talks-ai-bubble{max-width:100%;padding:8px 12px}.tip-talks-ai-text{font-size:11px;line-height:1.5;color:#faf9f5d9}.tip-talks-ai-text code{background:#4b8aff26;color:#7ba8ff;padding:1px 4px;border-radius:3px;font-family:Consolas,Monaco,monospace;font-size:10.5px}.tip-mock-ai-row{display:flex;align-items:flex-start;gap:10px}.tip-mock-ai-bubble{background:transparent;border-radius:14px;padding:12px 16px;display:flex;flex-direction:column;gap:7px;max-width:200px}.tip-mock-text-line{height:8px;border-radius:4px;background:#faf9f51f}.tip-mock-waveform{position:absolute;top:10px;right:14px;display:flex;align-items:center;gap:3px;height:20px;z-index:5}.tip-wave-bar{width:3px;border-radius:2px;background:#4b8aff;animation:tipWaveBounce .8s ease-in-out infinite alternate}@keyframes tipWaveBounce{0%{height:4px}to{height:16px}}.tip-mock-input{padding:0 16px 16px}.tip-mock-input-bar{display:flex;align-items:center;gap:8px;background:#2d2d2d;border-radius:20px;padding:8px 8px 8px 16px}.tip-mock-input-text{flex:1;font-size:12px;color:#faf9f580}.tip-mock-send-btn{width:28px;height:28px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tip-mock-send-btn svg{width:14px;height:14px;stroke:#000}.tip-mock-hint{display:flex;align-items:center;gap:6px;margin-top:10px;justify-content:center}.tip-mock-hint-arrow{width:16px;height:16px;stroke:#fed060;flex-shrink:0}.tip-mock-hint span{font-size:11px;color:#fed060;font-weight:500}.tip-skip-chat{display:flex;flex-direction:column;gap:10px;padding:16px 16px 12px}.tip-mock-user-row{display:flex;justify-content:flex-end}.tip-mock-user-bubble{background:#3e3e3e;color:#faf9f5;font-size:11.5px;line-height:1.4;padding:8px 14px;border-radius:14px;max-width:75%}.tip-skip-ai-bubble{max-width:260px;padding:10px 14px}.tip-skip-ai-text{font-size:11.5px;line-height:1.5;color:#faf9f5d9}.tip-skip-ai-text code{background:#4b8aff26;color:#7ba8ff;padding:1px 5px;border-radius:4px;font-family:Consolas,Monaco,monospace;font-size:11px}.tip-skip-progress{display:flex;flex-direction:column;gap:6px;padding:8px 16px 14px;border-top:1px solid #2a2a2a}.tip-skip-progress-label{display:flex;align-items:center;gap:6px;animation:tipSkipCheckFade 1.5s ease infinite}.tip-skip-progress-label span{font-size:11px;color:#fed060;font-weight:500}@keyframes tipSkipCheckFade{0%,to{opacity:.6}50%{opacity:1}}.tip-skip-progress-track{height:6px;background:#2a2a2a;border-radius:3px;overflow:hidden}.tip-skip-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#4b8aff,#7ba8ff);border-radius:3px;animation:tipSkipAdvance 2s ease-in-out infinite}@keyframes tipSkipAdvance{0%{width:33%}80%{width:66%}81%{width:33%}to{width:33%}}.tip-ask-chat{display:flex;flex-direction:column;gap:12px;padding:16px 16px 14px}.tip-ask-questions{display:flex;flex-direction:column;align-items:flex-end;position:relative;height:40px}.tip-ask-q{position:absolute;right:0;top:0;opacity:0;animation:tipAskCycle 6s ease-in-out infinite}.tip-ask-q2{animation-delay:2s}.tip-ask-q3{animation-delay:4s}@keyframes tipAskCycle{0%{opacity:0;transform:translateY(6px)}8%{opacity:1;transform:translateY(0)}30%{opacity:1;transform:translateY(0)}38%{opacity:0;transform:translateY(-6px)}to{opacity:0}}.tip-ask-bubble{font-size:11px;padding:7px 12px;white-space:nowrap;max-width:none}.tip-ask-lightbulb{flex-shrink:0;display:flex;align-items:flex-start;padding-top:4px;animation:tipBulbPulse 2s ease-in-out infinite}@keyframes tipBulbPulse{0%,to{opacity:.5}50%{opacity:1}}.tip-ask-ai-bubble{max-width:220px;padding:10px 14px}.tip-ask-hint{text-align:center;font-size:11px;color:#fed060;font-weight:500;padding-top:4px}.tip-pickup-content{display:flex;flex-direction:column;gap:14px;padding:16px 12px 14px}.tip-pickup-frames{display:flex;align-items:center;justify-content:center;gap:8px}.tip-pickup-frame{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative}.tip-pickup-frame-label{font-size:10.5px;color:#faf9f580;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.tip-pickup-mini-ui{display:flex;width:120px;height:90px;border:1px solid #2a2a2a;border-radius:6px;overflow:hidden;background:#262624}.tip-pickup-sidebar{width:36px;background:#242322;border-right:1px solid #2a2a2a;display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 4px}.tip-pickup-sb-item{width:20px;height:4px;border-radius:2px}.tip-pickup-sb-done{background:#fed060}.tip-pickup-sb-current{background:#4b8aff}.tip-pickup-sb-locked{background:#ffffff1f}.tip-pickup-sb-bar{width:24px;height:3px;background:#2a2a2a;border-radius:2px;overflow:hidden;margin-top:auto}.tip-pickup-sb-fill{height:100%;background:#fed060;border-radius:2px}.tip-pickup-chat-area{flex:1;display:flex;flex-direction:column;gap:5px;padding:10px 8px}.tip-pickup-close-x{position:absolute;top:22px;right:-4px;animation:tipCloseXPulse 2s ease-in-out infinite}@keyframes tipCloseXPulse{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.tip-pickup-saved{position:absolute;top:22px;right:-4px;animation:tipSavedPop 2s ease-in-out infinite}@keyframes tipSavedPop{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.tip-pickup-arrow-between{display:flex;align-items:center;padding-top:16px}.tip-pickup-hint{text-align:center;font-size:11px;color:#fed060;font-weight:500}.tip-revisit-content{display:flex;flex-direction:column;gap:12px;padding:14px 16px}.tip-revisit-sidebar-mock{background:#242322;border:1px solid #2a2a2a;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:4px}.tip-revisit-sb-header{font-size:10px;font-weight:600;letter-spacing:.5px;color:#faf9f580;padding:0 4px 6px}.tip-revisit-topic{display:flex;align-items:center;gap:8px;padding:7px 6px;border-radius:6px;border:1px solid transparent;position:relative}.tip-revisit-topic span{font-size:11.5px;color:#999}.tip-revisit-completed span{color:#faf9f5}.tip-revisit-target{border-color:#2e2e2e;background:#fed0600d;animation:tipRevisitGlow 2s ease-in-out infinite}@keyframes tipRevisitGlow{0%,to{background:#fed06008}50%{background:#fed0601a}}.tip-revisit-click{position:absolute;right:8px;top:50%;transform:translateY(-50%);animation:tipRevisitClickBounce 1.5s ease-in-out infinite}@keyframes tipRevisitClickBounce{0%,to{transform:translateY(-50%) scale(1)}50%{transform:translateY(-50%) scale(1.15)}}.tip-revisit-current{border-color:#2e2e2e}.tip-revisit-current span{color:#faf9f5}.tip-revisit-locked{opacity:.45}.tip-revisit-review-badge{display:flex;align-items:center;gap:6px;justify-content:center;padding:6px 12px;background:#4b8aff14;border:1px solid rgba(75,138,255,.2);border-radius:6px}.tip-revisit-review-badge span{font-size:11px;color:#7ba8ff;font-weight:500}.tip-revisit-hint{text-align:center;font-size:11px;color:#fed060;font-weight:500}@media(max-width:480px){.tips-card{border-radius:12px}.tips-graphic{height:240px;padding:44px 16px 12px}.tips-text{padding:0 20px 8px}.tips-title{font-size:18px}.tips-body{font-size:13px}.tips-nav{padding:12px 20px 20px}}.ctx-tooltip-wrapper{position:relative}.ctx-tooltip{position:absolute;z-index:4000;width:240px;padding:10px 14px;background:#1e1e1e;border:1px solid #3a3a3a;border-radius:10px;box-shadow:0 4px 20px #00000080;animation:ctxTooltipIn .25s ease}.ctx-tooltip--above{bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.ctx-tooltip--above .ctx-tooltip__arrow{position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:10px;height:10px;background:#1e1e1e;border-right:1px solid #3a3a3a;border-bottom:1px solid #3a3a3a}.ctx-tooltip--below{top:calc(100% + 10px);left:50%;transform:translate(-50%)}.ctx-tooltip--below .ctx-tooltip__arrow{position:absolute;top:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:10px;height:10px;background:#1e1e1e;border-left:1px solid #3a3a3a;border-top:1px solid #3a3a3a}.ctx-tooltip--align-right{left:auto;right:0;transform:none}.ctx-tooltip--align-right .ctx-tooltip__arrow{left:auto;right:16px;transform:rotate(45deg)}.ctx-tooltip__text{font-size:12.5px;line-height:1.5;color:#ccc;margin:0 0 10px}.ctx-tooltip__dismiss{display:inline-block;background:#4b8aff;border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:500;padding:5px 14px;cursor:pointer;font-family:inherit;transition:background .15s}.ctx-tooltip__dismiss:hover{background:#3a7bf0}.ctx-tooltip__dismiss:focus,.ctx-tooltip__dismiss:focus-visible{outline:none}@keyframes ctxTooltipIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.ctx-tooltip--align-right{animation:ctxTooltipInRight .25s ease}@keyframes ctxTooltipInRight{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.ctx-tooltip{width:200px;padding:8px 12px}.ctx-tooltip__text{font-size:12px}}.guide-reader{height:100vh;display:flex;flex-direction:column;background:#262624;color:#faf9f5;font-family:var(--font-sans)}.guide-header{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;border-bottom:1px solid #2A2A2A;background:#262624;flex-shrink:0;z-index:20}.guide-header-left{display:flex;align-items:center;gap:12px;min-width:0}.guide-hamburger{display:none;background:none;border:none;color:#faf9f5b3;cursor:pointer;padding:4px}.guide-back-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid #2A2A2A;color:#faf9f5b3;padding:6px 12px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}.guide-back-btn:hover{background:#1d1d1d;color:#faf9f5}.guide-header-title{display:flex;align-items:center;gap:10px;min-width:0}.guide-title-text{font-size:15px;font-weight:600;color:#faf9f5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guide-badge{padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.5px;background:#4b8aff26;color:#4b8aff;white-space:nowrap}.guide-logout-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid #2A2A2A;color:#faf9f5b3;padding:6px 12px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}.guide-logout-btn:hover{background:#1d1d1d;color:#faf9f5}.guide-body{flex:1;display:flex;overflow:hidden}.guide-sidebar{width:260px;flex-shrink:0;border-right:1px solid #2A2A2A;overflow-y:auto;background:#242322}.guide-sidebar-header{padding:20px 20px 12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#888}.guide-chapter-list{display:flex;flex-direction:column;padding:0 8px 20px}.guide-chapter-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid transparent;background:transparent;color:#faf9f599;font-size:13px;text-align:left;cursor:pointer;border-radius:6px;transition:none;line-height:1.4;outline:none}.guide-chapter-item:focus,.guide-chapter-item:focus-visible,.guide-chapter-item:focus-within{outline:none;border-color:transparent;box-shadow:none}.guide-chapter-item:hover{color:#faf9f599;border-color:transparent}.guide-chapter-active{background:#4b8aff1a;color:#faf9f5;border:1px solid rgba(75,138,255,.3)}.guide-chapter-active:hover,.guide-chapter-active:focus,.guide-chapter-active:focus-visible{background:#4b8aff1a;color:#faf9f5;border-color:#4b8aff4d;outline:none;box-shadow:none}.guide-chapter-number{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;font-weight:600;background:#ffffff14;color:#faf9f580}.guide-chapter-active .guide-chapter-number{background:#4b8aff33;color:#faf9f5}.guide-chapter-title{flex:1;min-width:0}.guide-content{flex:1;overflow-y:auto;padding:40px 60px 80px;max-width:820px}.guide-loading{display:flex;align-items:center;justify-content:center;height:200px;color:#888;font-size:16px}.guide-chapter-heading{margin-bottom:32px}.guide-chapter-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#4b8aff;display:block;margin-bottom:8px}.guide-chapter-h1{font-size:28px;font-weight:700;margin:0;line-height:1.3;color:#faf9f5}.guide-article{line-height:1.7;font-size:15px;color:#faf9f5d9}.guide-article h2{font-size:22px;font-weight:600;margin:40px 0 16px;color:#faf9f5}.guide-article h3{font-size:18px;font-weight:600;margin:32px 0 12px;color:#faf9f5f2}.guide-article h4{font-size:16px;font-weight:600;margin:24px 0 10px;color:#faf9f5e6}.guide-article p{margin:0 0 16px}.guide-article ul,.guide-article ol{margin:0 0 16px;padding-left:24px}.guide-article li{margin-bottom:6px}.guide-article li>ul,.guide-article li>ol{margin-top:6px;margin-bottom:0}.guide-article strong{color:#c1ff72;font-weight:600}.guide-article hr{border:none;border-top:1px solid #2A2A2A;margin:32px 0}.guide-article blockquote{border-left:3px solid #4B8AFF;margin:16px 0;padding:8px 16px;color:#faf9f5b3;background:#4b8aff0d;border-radius:0 6px 6px 0}.guide-link{color:#4b8aff;text-decoration:none}.guide-link:hover{text-decoration:underline}.guide-image{max-width:100%;height:auto;border-radius:8px;margin:16px 0;border:1px solid #2A2A2A}.guide-table-wrapper{overflow-x:auto;margin:16px 0;border-radius:8px;border:1px solid #2A2A2A}.guide-table{width:100%;border-collapse:collapse;font-size:14px}.guide-table th{text-align:left;padding:10px 14px;background:#1d1d1d;color:#faf9f5e6;font-weight:600;border-bottom:1px solid #2A2A2A}.guide-table td{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.05);color:#faf9f5bf}.guide-table tr:last-child td{border-bottom:none}.guide-code-block{margin:16px 0;border-radius:8px;overflow:hidden;border:1px solid #2A2A2A}.guide-code-header{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background:#1d1d1d;border-bottom:1px solid #2A2A2A}.guide-code-lang{font-size:12px;font-weight:600;text-transform:uppercase;color:#888}.guide-copy-btn{background:#ffffff14;border:1px solid #2A2A2A;color:#faf9f599;padding:3px 10px;border-radius:4px;font-size:11px;cursor:pointer;transition:all .15s}.guide-copy-btn:hover{background:#ffffff1f;color:#faf9f5e6}.guide-copy-btn.copied{color:#10a37f;border-color:#10a37f4d}.guide-inline-code{background:#ffffff14;padding:2px 6px;border-radius:4px;font-size:.9em;color:#e8c872;font-family:Fira Code,Consolas,monospace}.guide-nav-footer{display:flex;justify-content:space-between;gap:16px;margin-top:48px;padding-top:24px;border-top:1px solid #2A2A2A}.guide-nav-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:1px solid #2A2A2A;color:#faf9f5cc;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s;max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guide-nav-btn:hover:not(:disabled){background:#1d1d1d;border-color:#fff3;color:#faf9f5}.guide-nav-btn:disabled{opacity:.3;cursor:not-allowed}.guide-nav-btn-next{margin-left:auto}.guide-sidebar-backdrop{display:none}.guide-content::-webkit-scrollbar{width:8px}.guide-content::-webkit-scrollbar-track{background:transparent}.guide-content::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}.guide-content::-webkit-scrollbar-thumb:hover{background:#3a3a3a}.guide-sidebar::-webkit-scrollbar{width:6px}.guide-sidebar::-webkit-scrollbar-track{background:transparent}.guide-sidebar::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:3px}@media(max-width:768px){.guide-hamburger{display:flex}.guide-back-text,.guide-logout-text{display:none}.guide-header{padding:12px 16px}.guide-title-text{font-size:14px;max-width:160px}.guide-sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;z-index:50;transform:translate(-100%);transition:transform .25s ease;box-shadow:none}.guide-sidebar-open{transform:translate(0);box-shadow:4px 0 20px #00000080}.guide-sidebar-backdrop{display:block;position:fixed;inset:0;background:#00000080;z-index:40}.guide-content{padding:24px 20px 60px}.guide-chapter-h1{font-size:22px}.guide-article h2{font-size:19px}.guide-article h3{font-size:16px}.guide-nav-footer{flex-direction:column}.guide-nav-btn{max-width:100%;justify-content:center}}@media(max-width:480px){.guide-content{padding:20px 16px 50px}.guide-chapter-h1{font-size:20px}.guide-article{font-size:14px}.guide-badge{display:none}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.375em;border-bottom-right-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-bottom:none;border-top:1px solid #aeaeae;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:auto 1px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.5em;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.625em;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.react-datepicker-popper-offset{margin-top:-.7em}.admin-page{height:100vh;overflow-y:auto;background:#141413;color:#faf9f5;font-family:var(--font-sans);scrollbar-color:rgba(255,255,255,.15) transparent}.admin-page::-webkit-scrollbar{width:8px}.admin-page::-webkit-scrollbar-track{background:transparent}.admin-page::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.admin-page::-webkit-scrollbar-thumb:hover{background:#ffffff40}.admin-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:var(--text-lg);color:#faf9f580}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:20px 40px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-logo{font-size:var(--text-3xl);font-weight:var(--weight-semibold);color:#fed060}.admin-header-right{display:flex;align-items:center;gap:12px}.admin-badge{background:#6366f133;color:#818cf8;padding:4px 12px;border-radius:12px;font-size:var(--text-sm);font-weight:var(--weight-medium)}.admin-logout-btn{display:flex;align-items:center;gap:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#faf9f5b3;padding:8px 16px;border-radius:6px;font-size:var(--text-md);font-weight:var(--weight-medium);cursor:pointer;transition:all .2s}.admin-logout-btn:hover{background:#ffffff1a;border-color:#ffffff1a;color:#faf9f5}.admin-content{max-width:1400px;margin:0 auto;padding:32px 40px}.admin-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-title{font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin:0}.admin-refresh-btn{background:#faf9f5;border:1px solid #faf9f5;color:#141413;padding:8px 20px;border-radius:6px;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:all .2s}.admin-refresh-btn:hover{background:#faf9f5d9;border-color:#faf9f5d9}.admin-refresh-btn:focus,.admin-logout-btn:focus,.admin-date-toggle:focus,.admin-date-apply-btn:focus,.admin-date-cancel-btn:focus,.admin-date-reset-btn:focus{outline:none}.admin-date-range{display:flex;justify-content:space-between;align-items:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:14px 24px;margin-bottom:20px}.admin-date-picker-wrap{position:relative}.admin-date-toggle{display:flex;align-items:center;gap:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#faf9f5;padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.admin-date-toggle:hover{border-color:#ffffff1f;background:#ffffff14}.admin-date-toggle-icon{font-size:16px}.admin-date-toggle-arrow{font-size:10px;color:#faf9f566}.admin-calendar-dropdown{position:absolute;top:calc(100% + 8px);left:0;z-index:100;background:#1e1e1d;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:16px;box-shadow:0 12px 40px #00000080}.admin-calendar-actions{display:flex;gap:10px;margin-top:12px;justify-content:flex-end}.admin-date-apply-btn{background:#faf9f5;border:1px solid #faf9f5;color:#141413;padding:6px 20px;border-radius:6px;font-size:13px;font-weight:var(--weight-medium);cursor:pointer;transition:all .2s}.admin-date-apply-btn:hover:not(:disabled){background:#faf9f5d9;border-color:#faf9f5d9}.admin-date-apply-btn:disabled{opacity:.35;cursor:not-allowed}.admin-date-cancel-btn{background:transparent;border:1px solid rgba(255,255,255,.1);color:#faf9f599;padding:6px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.admin-date-cancel-btn:hover{background:#ffffff0d;border-color:#ffffff1a;color:#faf9f5}.admin-date-reset-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#faf9f5;padding:8px 20px;border-radius:6px;font-size:14px;font-weight:var(--weight-medium);cursor:pointer;transition:all .2s}.admin-date-reset-btn:hover{background:#ffffff1a;border-color:#ffffff1f}.admin-date-indicator{font-size:13px;color:#faf9f5;margin-bottom:16px;padding-left:2px}.admin-calendar.react-datepicker{background:#1e1e1d;border:none;font-family:var(--font-sans);color:#faf9f5}.admin-calendar .react-datepicker__header{background:#1e1e1d;border-bottom:1px solid rgba(255,255,255,.08);padding-top:10px}.admin-calendar .react-datepicker__current-month{color:#faf9f5;font-weight:var(--weight-medium);font-size:14px;margin-bottom:6px}.admin-calendar .react-datepicker__day-name{color:#faf9f566;font-size:12px;width:36px;line-height:28px}.admin-calendar .react-datepicker__day{color:#faf9f5d9;width:36px;line-height:36px;border-radius:6px;font-size:13px;transition:background .15s}.admin-calendar .react-datepicker__day:hover{background:#4b8aff33;color:#fff}.admin-calendar .react-datepicker__day--selected,.admin-calendar .react-datepicker__day--range-start,.admin-calendar .react-datepicker__day--range-end{background:#4b8aff!important;color:#fff!important;font-weight:var(--weight-medium)}.admin-calendar .react-datepicker__day--in-range,.admin-calendar .react-datepicker__day--in-selecting-range{background:#4b8aff33!important;color:#fff!important;border-radius:0}.admin-calendar .react-datepicker__day--range-start{border-radius:6px 0 0 6px!important}.admin-calendar .react-datepicker__day--range-end{border-radius:0 6px 6px 0!important}.admin-calendar .react-datepicker__day--range-start.react-datepicker__day--range-end{border-radius:6px!important}.admin-calendar .react-datepicker__day--today{background:#fed06040;color:#fed060;font-weight:var(--weight-medium)}.admin-calendar .react-datepicker__day--today:hover{background:#fed06066;color:#fed060}.admin-calendar .react-datepicker__day--outside-month{color:#faf9f533}.admin-calendar .react-datepicker__day--disabled{color:#faf9f526!important;cursor:not-allowed}.admin-calendar .react-datepicker__day--disabled:hover{background:transparent}.admin-calendar .react-datepicker__navigation{top:12px}.admin-calendar .react-datepicker__navigation-icon:before{border-color:#faf9f580}.admin-calendar .react-datepicker__navigation:hover .react-datepicker__navigation-icon:before{border-color:#4b8aff}.admin-summary{display:flex;gap:16px;margin-bottom:32px}.admin-summary-card{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:20px 24px}.admin-summary-value{font-size:24px;font-weight:var(--weight-semibold);color:#fff}.admin-summary-label{font-size:14px;color:#faf9f580;margin-top:4px}.admin-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:var(--text-sm)}.admin-table-container{overflow-x:auto;border-radius:10px;border:1px solid rgba(255,255,255,.08);scrollbar-color:rgba(255,255,255,.15) transparent}.admin-table-container::-webkit-scrollbar{height:8px}.admin-table-container::-webkit-scrollbar-track{background:transparent}.admin-table-container::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.admin-table-container::-webkit-scrollbar-thumb:hover{background:#ffffff40}.admin-table{min-width:1000px;width:100%;border-collapse:collapse;font-size:14px}.admin-table thead{background:#ffffff0d}.admin-table th{text-align:left;padding:12px 14px;color:#faf9f599;font-weight:var(--weight-medium);white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.08)}.admin-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.admin-th-sortable:hover{color:#faf9f5}.admin-table td{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.04);color:#faf9f5d9}.admin-table tbody tr:hover{background:#ffffff08}.admin-name-link{color:#faf9f5;font-weight:var(--weight-semibold);cursor:pointer}.admin-name-link:hover{color:#faf9f5b3}.admin-td-number{text-align:right;font-variant-numeric:tabular-nums}.admin-tier-select{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#faf9f5;padding:4px 8px;border-radius:4px;font-size:var(--text-sm);cursor:pointer;outline:none}.admin-tier-select:focus{border-color:#4b8aff}.admin-tier-select option{background:#1a1a1a;color:#faf9f5}.admin-modal-overlay{position:fixed;inset:0;background:#0009;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.admin-modal{background:#1e1e1d;border:1px solid rgba(255,255,255,.1);border-radius:14px;width:100%;max-width:580px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.admin-modal-header{display:flex;align-items:flex-start;gap:12px;padding:24px 24px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.admin-modal-back{background:none;border:none;color:#faf9f599;font-size:20px;cursor:pointer;padding:2px 6px;margin-top:2px;transition:color .15s;outline:none}.admin-modal-back:hover{color:#faf9f5}.admin-modal-title-block{flex:1;min-width:0}.admin-modal-name{font-size:18px;font-weight:var(--weight-semibold);color:#faf9f5;margin:0}.admin-modal-subline{display:flex;align-items:center;gap:10px;margin-top:3px}.admin-modal-email{font-size:14px;color:#faf9f580}.admin-modal-meta{font-size:14px;color:#faf9f580;text-transform:uppercase}.admin-modal-close{background:none;border:none;color:#faf9f566;font-size:24px;cursor:pointer;padding:0 4px;line-height:1;transition:color .15s;outline:none}.admin-modal-close:hover{color:#faf9f5}.admin-modal-body{padding:20px 24px 24px;overflow-y:auto;flex:1;scrollbar-color:rgba(255,255,255,.15) transparent}.admin-modal-body::-webkit-scrollbar{width:6px}.admin-modal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.admin-modal-loading{text-align:center;padding:32px 0;color:#faf9f566;font-size:14px}.admin-modal-section{margin-bottom:24px}.admin-modal-section:last-child{margin-bottom:0}.admin-modal-section-title{font-size:13px;font-weight:var(--weight-medium);color:#faf9f580;text-transform:uppercase;letter-spacing:.5px;margin:0 0 14px}.admin-modal-empty{color:#faf9f54d;font-size:14px;margin:0}.admin-modal-courses{display:flex;flex-direction:column;gap:14px}.admin-modal-course{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:14px 16px}.admin-modal-course-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.admin-modal-course-title{font-size:14px;font-weight:var(--weight-medium);color:#faf9f5}.admin-modal-course-status{font-size:11px;font-weight:var(--weight-medium);padding:2px 10px;border-radius:10px}.admin-modal-course-status--in_progress{background:#4b8aff26;color:#4b8aff}.admin-modal-course-status--completed{background:#22c55e26;color:#22c55e}.admin-modal-progress-bar{height:6px;background:#ffffff14;border-radius:3px;overflow:hidden;margin-bottom:8px}.admin-modal-progress-fill{height:100%;background:#4b8aff;border-radius:3px;transition:width .3s}.admin-modal-course-details{display:flex;justify-content:space-between;font-size:12px}.admin-modal-course-pct{color:#faf9f5;font-weight:var(--weight-medium)}.admin-modal-course-count{color:#faf9f566}.admin-modal-course-pos{font-size:12px;color:#faf9f573;margin-top:6px}.admin-modal-activity-row{display:flex;gap:12px;margin-bottom:14px}.admin-modal-stat{flex:1;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:12px;text-align:center}.admin-modal-stat-value{display:block;font-size:20px;font-weight:var(--weight-semibold);color:#fff}.admin-modal-stat-label{display:block;font-size:11px;color:#faf9f573;margin-top:2px}.admin-modal-activity-btn{width:100%;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#faf9f5;padding:10px;border-radius:6px;font-size:13px;font-weight:var(--weight-medium);cursor:pointer;transition:all .2s;outline:none}.admin-modal-activity-btn:hover{background:#ffffff1a;border-color:#ffffff1a}.admin-activity-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:600px){.admin-activity-columns{grid-template-columns:1fr}}.admin-modal-detail-list{display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.admin-modal-detail-item{display:flex;align-items:center;gap:10px;font-size:13px}.admin-modal-detail-time{color:#faf9f5b3}.admin-modal-detail-duration{color:#4b8aff;font-weight:var(--weight-medium)}.admin-detail-badge{padding:2px 8px;border-radius:8px;font-size:11px;font-weight:var(--weight-medium)}.admin-detail-badge-6h{background:#fbbf2426;color:#fbbf24}.admin-detail-badge-weekly{background:#ef444426;color:#f87171}.admin-empty{text-align:center;padding:40px;color:#faf9f566;font-size:var(--text-md)}@media(max-width:768px){.admin-header{padding:16px 20px}.admin-content{padding:20px}.admin-date-range{flex-direction:column;gap:12px;padding:14px 16px;align-items:stretch}.admin-date-toggle{width:100%;justify-content:center}.admin-calendar-dropdown{left:50%;transform:translate(-50%)}.admin-summary{flex-direction:column}.admin-table{font-size:12px}.admin-table th,.admin-table td{padding:8px}.admin-modal{max-width:100%;max-height:90vh}.admin-modal-activity-row{flex-direction:column}}:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica", "Arial", sans-serif;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 15px;--text-xl: 16px;--text-2xl: 18px;--text-3xl: 20px;--text-4xl: 24px;--text-5xl: 36px;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;font-family:var(--font-sans);line-height:1.5;font-weight:var(--weight-normal);color-scheme:dark;color:#faf9f5;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(max-width:768px){:root{--text-lg: 14px;--text-xl: 14px;--text-2xl: 16px;--text-3xl: 18px;--text-4xl: 20px;--text-5xl: 26px}}@media(max-width:480px){:root{--text-5xl: 22px}}#root{width:100%;height:100vh;overflow:hidden}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:block;min-width:320px;min-height:100vh;width:100%;overflow:hidden;font-family:var(--font-sans)}input,textarea,select{font-family:inherit}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
