body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root,body,html{height:100%}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}[contenteditable=true],[role=button],a,button,input,select,textarea{-webkit-appearance:none;appearance:none}[contenteditable=true],input,textarea{-webkit-user-select:text;user-select:text}:focus:not(:focus-visible){outline:none}.sidebar-container{background-color:#fff;border-right:2px solid #dddddda4;display:flex;flex-direction:column;overflow:hidden;transition:width .3s ease;width:240px}.sidebar-container.collapsed{width:75px}.sidebar-header{align-items:center;border-bottom:2px solid #dddddda4;box-sizing:border-box;display:flex;height:75px;justify-content:space-between;padding:16px;transition:padding .2s}.sidebar-container.collapsed .sidebar-header{padding:10px 2px 10px 5px}.brand{align-items:center;display:flex;gap:20px}.logo-img{height:45px;transition:width .3s,height .3s;width:45px}.brand-text{border:3px solid #4e0487ba;border-radius:200px;color:#4e0487ba;font-size:1.2rem;font-weight:600;padding:5px 10px;transition:opacity .2s ease}.sidebar-container.collapsed .brand-text{opacity:0;pointer-events:none}.sidebar-container.collapsed .logo-img{height:35px;width:35px}.collapse-btn{background:none;border:none;color:#666;cursor:pointer;font-size:2rem}.menu-items{flex:1 1;padding:8px 10px 0;transition:all .3s ease}.menu-items ul{list-style:none;margin:0;padding:0}.menu-items li{align-items:center;border-radius:10px;color:#555;cursor:pointer;display:flex;gap:10px;margin:5px 0;padding:12px 16px;transition:background-color .2s,padding .2s}.menu-items li:hover{background-color:#ababab1e}.label{display:inline-block;opacity:1;transition:opacity .2s ease,width .2s ease,margin .2s ease;white-space:nowrap;width:auto}.sidebar-container.collapsed .label{margin:0;opacity:0;pointer-events:none;width:0}.menu-items li.active{background-color:#5130e51e;font-weight:600}.sidebar-container.mobile{align-items:center;background:#fff;display:flex;flex-direction:row;height:auto;left:0;padding:10px 15px;position:fixed;top:0;z-index:100}.sidebar-container.mobile .menu-items{display:none}.topbar-container{font-family:sans-serif;gap:10px;height:75px;justify-content:right}.notification-section,.topbar-container{align-items:center;display:flex;position:relative}.notification-section{gap:20px;transition:all .2s ease-in-out}.notification-section.open{background-color:#ebebeb;border-radius:10px}.notification-dropdown{background:#fff;border:1px solid #dcdcdc;border-radius:15px;box-shadow:0 2px 8px #00000026;color:#333;min-width:200px;opacity:0;padding:10px;position:absolute;right:0;text-align:center;top:50px;transition:opacity .2s ease-in-out;visibility:hidden}.notification-dropdown.open{opacity:1;visibility:visible}.profile-section{align-items:center;border-radius:15px;cursor:pointer;display:flex;padding:10px 15px;position:relative;transition:background-color .2s ease-in-out}.profile-section.open{background-color:#ebebeb}.icon-container{position:relative}.topbar-icon{border-radius:10px;cursor:pointer;height:25px;padding:10px;width:25px}.notification-dot{background-color:#f36;border-radius:50%;box-shadow:0 0 2px #0000004d;height:8px;position:absolute;right:-4px;top:-4px;width:8px}.user-name{font-size:1.2rem;margin-right:10px}.user-avatar{border-radius:50%;height:36px;object-fit:cover;width:36px}.arrow-down{height:20px;margin-left:10px;transition:transform .2s ease-in-out;width:20px}.arrow-down.open{transform:rotate(180deg)}.dropdown-menu{background:#fff;border:1px solid #dcdcdc;border-radius:15px;box-shadow:0 2px 8px #00000026;min-width:240px;opacity:0;padding:10px;position:absolute;right:0;top:70px;transition:opacity .2s ease-in-out;visibility:hidden;z-index:10}.dropdown-menu.open{opacity:1;visibility:visible}.dropdown-item{background:none;border:none;color:#333;cursor:pointer;display:block;font-size:1rem;padding:8px 12px;text-align:left;width:100%}.dropdown-item:hover{background-color:#f1f1f1;border-radius:10px}.email-text{font-weight:600;margin-bottom:8px;pointer-events:none}.topbar-avatar-picker{background:#fafafa;border:1px solid #ececec;border-radius:10px;margin:8px 0 10px;padding:8px}.topbar-avatar-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.topbar-avatar-choice{background:#fff;border:1px solid #ddd;border-radius:50%;cursor:pointer;height:38px;object-fit:cover;width:38px}.topbar-avatar-choice:hover{border-color:#8d8d8d}.topbar-upload-avatar-btn{align-items:center;color:#555;display:inline-flex;font-size:1.1rem;font-weight:700;justify-content:center}.topbar-avatar-uploading{color:#666;font-size:.8rem;margin-top:8px}.chat-interface{display:flex;flex:1 1;flex-direction:column;height:100%;position:relative}.chat-box{border-radius:10px;flex-direction:column;height:100%;overflow-y:auto;padding:10px;scroll-behavior:smooth}.chat-box,.chat-message{display:flex;margin-bottom:10px}.chat-message{word-wrap:break-word;align-items:flex-start;color:#000;font-size:1.1rem;max-width:90%}.chat-message.bot{border-radius:10px;margin-right:auto;padding:10px}.chat-message.user{background-color:#ffffffb7;border-radius:10px;margin-left:auto;margin-right:10px;padding:10px;text-align:left;width:70%}.chat-message-appear{animation:smoothMessageFade .45s ease-in-out forwards}@keyframes smoothMessageFade{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-mode-toggle{align-items:center;background:#f4f4f9;border-radius:10px;box-shadow:0 2px 5px #0000001a;display:flex;gap:10px;justify-content:center;margin:-8px auto 10px;padding:8px;width:fit-content}.chat-mode-toggle label{border-radius:8px;cursor:pointer;font-size:.8rem;font-weight:600;padding:4px 8px;position:relative;transition:all .3s ease-in-out;-webkit-user-select:none;user-select:none}.chat-mode-toggle input[type=radio]:checked[value=ai]+label{background-color:#673eb0;box-shadow:0 3px 8px #683eb09c;color:#fff}.chat-mode-toggle input[type=radio]:checked[value=slp]+label{background-color:#f0b624e5;box-shadow:0 3px 8px #f0b624a0;color:#fff}.chat-mode-toggle label{background-color:#fff;border:2px solid #0000;color:#555}.chat-mode-toggle label:hover{background-color:#eaeaea;transition:background-color .1s}.chat-mode-toggle input[type=radio]{display:none}.chat-mode-toggle input[type=radio]:checked+label{transform:scale(1.05)}.bot-avatar{align-self:flex-end;height:80px;margin-left:-15px;width:80px}.slp-chat-avatar-container{border-radius:50%;flex-shrink:0;height:54px;margin-right:10px;overflow:hidden;width:54px}.slp-chat-avatar{height:60px;object-fit:cover;width:56px}.message-content{display:flex;flex-direction:column}.feedback-side{align-self:center;border-radius:20px;display:flex;gap:.25rem;margin-left:10px;padding:5px}.thumb-btn{background:none;border:none;color:#acacac;cursor:pointer;font-size:1rem;opacity:.6;transition:opacity .2s,transform .1s}.thumb-btn.active{color:#5130e592;transform:scale(1.5)}.message-timestamp{color:#0079fa;margin-bottom:5px}.message-timestamp button{background:none;border:none;color:#0079fa;cursor:pointer;font:inherit;padding:0 2px}.message-timestamp button:hover{color:#0056b3;text-decoration:underline}.message-text{line-height:1.4;white-space:pre-wrap;word-break:break-word}.toggle-expand-btn{background:none;border:none;color:#007bff;cursor:pointer;font:inherit;padding:0}.toggle-expand-btn:hover{text-decoration:underline}.response-buttons{background-color:#4caf50;border:none;border-radius:40px;color:#fff;cursor:pointer;font-size:16px;margin-top:10px;padding:8px 16px}.response-buttons:hover{background-color:#45a049}.typing-indicator{align-items:center;display:flex;margin-left:10px;margin-top:10px}.typing-indicator .dot{animation:typingIndicator 1s infinite;background:#999;border-radius:50%;height:8px;margin:0 4px;opacity:.4;width:8px}.typing-indicator .dot:first-child{animation-delay:0s}.typing-indicator .dot:nth-child(2){animation-delay:.2s}.typing-indicator .dot:nth-child(3){animation-delay:.4s}@keyframes typingIndicator{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}.input-container{align-items:center;background:#fff;border:.5px solid #b5b5b5;border-radius:40px;display:flex;gap:8px;padding:4px 8px}.input-container:focus-within{border:1px solid #b5b5b5}.input-container input[type=text]{background:none;border:none;border-radius:10px;flex:1 1;height:20px;outline:none;padding:10px}.skip-button{background-color:#b2b2b2;font-size:.9rem;padding:10px 16px}.send-button,.skip-button{border:none;border-radius:40px;color:#fff;cursor:pointer}.send-button{font-size:1rem;padding:10px 9px 6px 12px}.send-ai{background-color:#673eb0}.send-slp{background-color:#f0b624e5}.voice-button{align-items:center;background-color:#fff;border:none;border-radius:40px;cursor:pointer;display:flex;padding:10px 16px}.voice-button:hover{background-color:#ddd}.voice-icon{height:24px;width:24px}.chat-box::-webkit-scrollbar{background:#0000;width:5px}.chat-box::-webkit-scrollbar-track{background:linear-gradient(180deg,#ccc 0,#d6caff 50%);border-radius:6px}.chat-box::-webkit-scrollbar-thumb{background-color:#fff;border-radius:6px;box-shadow:0 2px 4px #00000026}.chat-box::-webkit-scrollbar-thumb:hover{background-color:#f5f5f5}.chat-box::-webkit-scrollbar-corner{background:#0000}.back-button-slp{align-items:center;background:none;border:none;color:#f0b624e5;cursor:pointer;display:flex;font-size:1rem;font-weight:600;z-index:1000}.back-button-slp .back-icon{color:#f0b624e5}.slp-chat-header{align-items:center;border-bottom:1px solid #ddd;display:flex;height:48px;justify-content:start;position:relative}.slp-name-header{color:#333;font-size:1.1rem;font-weight:600;left:50%;position:absolute;transform:translateX(-50%);white-space:nowrap}.slp-chat-fade-in{animation:fadeInChat .4s ease-in-out}.options-row{align-items:flex-start;display:flex;flex-direction:column;gap:8px;margin-top:8px}.options-buttons{background:#f7f5ff;border:1px solid #5130e5a9;border-radius:30px;box-shadow:0 1px 2px #5130e51a;color:#333;cursor:pointer;font-size:16px;padding:8px 12px;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.options-buttons:focus,.options-buttons:hover{background:#efeaff;box-shadow:0 2px 4px #5130e52e;transform:translateY(-1px)}.fixed-options-row{align-self:center;display:flex;gap:8px;margin-bottom:8px}.fixed-options-buttons{background:#fff;border:1.5px solid #5130e559;border-radius:30px;box-shadow:0 3px 6px #5130e526;color:#444;cursor:pointer;font-size:16px;font-weight:500;padding:8px 14px;transition:transform .15s ease,box-shadow .15s ease}.fixed-options-buttons:focus,.fixed-options-buttons:hover{box-shadow:0 4px 8px #5130e540;transform:translateY(-2px)}.fixed-options-buttons:active{box-shadow:0 2px 4px #5130e52e;transform:translateY(0)}.fixed-options-buttons.end-session-btn{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(8px);background-color:#ffffff26;box-shadow:0 4px 8px #00000026;cursor:pointer;font-weight:500;position:absolute;right:12px;top:12px;transition:background .2s ease;z-index:10}@media (min-width:1025px){.bot-avatar{height:104px;margin-left:-18px;width:104px}}.summary-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:50}.summary-modal{background:#fff;border-radius:16px;box-shadow:0 10px 32px #00000040;color:#1f2937;max-height:60vh;max-width:460px;overflow-y:auto;padding:24px 28px;width:70%}.summary-modal h2{font-size:1.3rem;font-weight:600;margin-bottom:12px;margin-top:0}.summary-modal p{line-height:1.4;margin:8px 0}.modal-close-btn{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-weight:500;margin:24px auto 0;padding:8px 16px;transition:background .2s ease}.modal-close-btn:hover{background:#4f46e5}@keyframes fadeInChat{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.chat-message{font-size:1rem;margin-bottom:0}.chat-interface{display:flex;flex-direction:column;height:100%;width:100%}.chat-box{flex:1 1;height:auto;margin-bottom:8px;min-height:0;padding-bottom:calc(14px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(14px + env(safe-area-inset-bottom))}.skip-button{border-radius:50px;font-size:.85rem;padding:11px 6px}.input-container input[type=text]{font-size:.9rem;font-size:16px;width:100%}.chat-box{padding:0}.message-content.bot{border-radius:20px 20px 20px 20px}.message-content.bot,.message-content.slp{background-color:#e9e9e9;padding:12px 20px 12px 12px;width:60%}.message-content.slp{border-radius:2px 20px 20px 20px}.message-content.user{background-color:#5130e51e;border-radius:20px 2px 20px 20px;min-width:20%;padding:12px;width:max-content}.message-content.user-slp{background-color:#f9cf6466}.chat-message.bot,.chat-message.slp{max-width:95%;padding:5px}.chat-message.user{background:none;justify-content:flex-end;margin-right:5px;padding:5px}.chat-mode-toggle{margin-bottom:7px;margin-top:0}.fixed-options-buttons{font-size:14px;padding:10px 8px}.fixed-options-buttons.end-session-btn{right:26px;top:64px}}.slp-list-container{animation:fadeIn .4s ease-in-out;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.slp-list-header{color:#2c3e50;font-size:1.2rem;font-weight:700;margin-bottom:16px;text-align:center}.slp-list{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding-right:4px}.slp-list-item{align-items:center;background-color:#ebebeb;border-radius:20px;cursor:pointer;display:flex;padding:12px;transition:background-color .2s ease}.slp-list-item:hover{background-color:#e4ebf5}.slp-list-avatar-container{border-radius:50%;flex-shrink:0;height:54px;margin-right:12px;overflow:hidden;width:54px}.slp-list-avatar{height:58px;object-fit:cover;width:54px}.slp-list-text{display:flex;flex-direction:column;text-align:left}.slp-list-name{color:#333;font-size:1rem;font-weight:600}.slp-list-expertise{color:#666;font-size:.85rem}.emoji-row{display:flex;gap:10px;justify-content:space-between}.emoji-btn{background:#f3f3f3;border:2px solid #0000;border-radius:12px;cursor:pointer;font-size:20px;padding:10px;transition:transform .15s ease,border-color .15s ease}.emoji-btn:hover{transform:scale(1.1)}.emoji-btn.selected{background-color:#d0ebff;border-color:#007bff}.choice-row{display:flex;gap:12px;margin-top:8px}.choice-btn{background-color:#f4f4f4;border:1px solid #aaa;border-radius:10px;cursor:pointer;font-weight:500;padding:6px 14px;text-transform:capitalize;transition:all .2s ease}.choice-btn:hover{background-color:#e0e0e0}.choice-btn.selected{background-color:#007bff;border-color:#007bff;color:#fff}.summary-modal.survey{background:#fff;border-radius:16px;box-shadow:0 12px 30px #0003;color:#333;font-family:Segoe UI,sans-serif;margin-top:-60px;max-height:70vh;max-width:600px;overflow-y:auto;padding:24px 32px;text-align:left;width:70%}.survey-block{margin-bottom:24px}.survey-block p{font-weight:600;margin-bottom:10px}textarea{border:1px solid #ccc;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;min-height:60px;padding:8px 10px;resize:vertical;width:100%}.modal-submit-btn{background-color:#007bff;border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-size:15px;font-weight:700;margin:16px auto 0;padding:10px 20px;transition:background-color .2s ease}.modal-submit-btn:disabled{background-color:#a9a9a9;cursor:not-allowed}.modal-submit-btn:hover:not(:disabled){background-color:#005dc1}.my-progress-container{background:#fff;border-radius:15px;box-sizing:border-box;display:flex;flex-direction:column;font-family:sans-serif;height:100%;padding:0 16px 16px}.progress-header{align-items:center;display:flex;padding:10px 0}.blue-dot{background-color:#ffc782;border-radius:50%;height:8px;margin-right:8px;width:8px}.progress-header h2{color:#333;font-size:1rem;margin:0}.green-divider{background-color:#ffc782;border-radius:1px;height:4px;width:100%}.progress-header-addon{margin-top:10px}.badge-container{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-around;margin:16px 0;overflow-y:auto}.progress-badge{background-color:#f7f4fa;border:1px solid #e6d8f1;border-radius:10px;box-shadow:0 1px 4px #4e04871a;flex:1 1 100px;min-width:100px;padding:12px;text-align:center;transition:transform .2s ease-in-out}.progress-badge:hover{cursor:pointer;transform:scale(1.05)}.badge-value{color:#4e0487;font-size:1.4rem;font-weight:600;margin:0}.badge-label{color:#555;font-size:.8rem;margin-top:4px}.greeting-message{background-color:#fff6e1;border:1px solid #fbac2d;border-radius:12px;box-sizing:border-box;font-size:larger;margin:auto;padding:15px;text-align:center;width:100%}.training-video-container{border-radius:15px;font-family:sans-serif;margin:0 auto;width:100%}.training-video-header{border-radius:5px 5px 0 0;justify-content:space-between;padding:10px 0}.title-with-dot,.training-video-header{align-items:center;display:flex}.orange-dot{background-color:orange;border-radius:50%;display:inline-block;height:8px;margin-right:8px;width:8px}.training-video-header h2{color:#333;font-size:1rem;margin:0}.training-video-buttons{align-items:center;display:flex;gap:10px;justify-content:space-between}.choose-button-icon{height:22px;width:22px}.choose-button,.demo-button,.transcription-button{align-items:center;background-color:initial;border:none;border-radius:10px;color:#818181;cursor:pointer;display:flex;font-size:1rem;gap:6px;outline:none;padding:4px 12px;transition:all .3s ease}.demo-button.active{background-color:#ff7a0026;border:1px solid #ff7a004d;color:#ff7a00}.transcription-button.active{background-color:#6366f126;border:1px solid #6366f14d;color:#6366f1}.orange-divider{background-color:orange;border-radius:1px;height:3px}.video-area.empty{border:2px dashed #d0d5dd;margin:15px}.video-area.active,.video-area.empty{align-items:center;border-radius:30px;display:flex;flex-direction:column;height:auto;justify-content:center;margin-top:15px;min-height:400px;position:relative}.video-placeholder{color:#a0a0a0ba;cursor:pointer;font-size:2.2rem;font-stretch:expanded;font-weight:700;padding:16px 24px;position:relative;text-align:center}.video-placeholder:after,.video-placeholder:before{border:5px solid #b6b6b6;border-radius:4px;content:"";height:25px;position:absolute;width:25px}.video-placeholder:before{border-bottom:none;border-right:none;left:0;top:0}.video-placeholder:after{border-left:none;border-top:none;bottom:0;right:0}video{border:none;border-radius:5px;box-shadow:0 2px 8px #0000001a;max-width:1200px;outline:none}.upload-progress{align-items:center;display:flex;justify-content:center;padding:10px 0 0;text-align:center;width:80%}.progress-bar{background-color:#e0e0e0;border-radius:15px;box-shadow:0 0 4px #0000001a;height:30px;overflow:hidden;position:relative;width:100%}.progress-fill{background-color:#a7a9edaa;border-radius:15px;transition:width .3s ease}.progress-text{color:#333;font-size:20px;font-weight:700;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);white-space:nowrap}.download-progress{align-items:center;display:flex;height:400px;justify-content:center;width:100%}@media (max-width:1024px){.training-video-container.empty{height:100%}.video-area.active{min-height:0}.training-video-header{display:flex;flex-direction:column;padding:0 0 5px}.training-video-header h2{font-size:1.1rem;margin:12px 0}.training-video-buttons{width:90%}.choose-button-icon{height:20px;width:20px}.video-area.empty{min-height:200px;padding:20px}.video-area-container.empty{align-items:center;display:flex;height:75%;justify-content:center}.choose-button,.demo-button,.transcription-button{border-radius:12px;display:flex;flex-direction:column;font-size:.8rem;gap:3px;padding:6px 12px}video{border-radius:15px}}.transcription-container{max-height:0;opacity:0;overflow:hidden;transition:max-height .5s ease-in-out,opacity .5s ease-in-out}.transcription-container.visible{max-height:500px;opacity:1}.transcription-window{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;height:125px;margin-top:0;overflow-y:auto;padding:0 20px 20px;position:relative;transition:height .5s ease-in-out}.transcription-window.expanded{height:500px}.transcription-header{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#f9f9f9;box-shadow:0 10px 8px -8px #0000001a;display:flex;justify-content:space-between;margin:0;opacity:.9;padding:10px 0;position:sticky;top:0;z-index:1}.transcription-header h2{flex:1 1;font-size:1.25em;margin:0}.transcription-content{max-height:380px;overflow-y:auto;padding-top:10px}.transcription-item{color:#333;font-size:1.1em;line-height:1.5;margin:10px}.view-full-btn{background-color:#a5a5a5;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9em;margin-right:10px;padding:6px 10px}.view-full-btn:hover{background-color:#8b8b8b}.timestamp-button-trans{background:none;border:none;color:#007bff;cursor:pointer;font-size:1rem;font-weight:700;padding:8px 8px 0 0;text-decoration:underline}.transcription-window::-webkit-scrollbar{background:#0000;width:5px}.transcription-window::-webkit-scrollbar-track{background:linear-gradient(180deg,#ccc 0,#d6caff 50%);border-radius:6px;margin:15px 0}.transcription-window::-webkit-scrollbar-thumb{background-color:#fff;border-radius:6px;box-shadow:0 2px 4px #00000026}.transcription-window::-webkit-scrollbar-thumb:hover{background-color:#f5f5f5}.transcription-window::-webkit-scrollbar-corner{background:#0000}.speaker-chip{background:#6b7280;border-radius:8px;color:#fff;display:inline-block;font-size:.7rem;font-weight:600;margin-right:6px;padding:2px 6px}@media (max-width:1024px){.transcription-header h2{font-size:1rem}.view-full-btn{border-radius:20px;font-size:.8em;margin:0;padding:4px 12px}.transcription-header{padding:10px}.transcription-window{border-radius:25px;height:110px;overflow-y:hidden;padding:0 10px 5px}.transcription-window.expanded{overflow-y:auto}.transcription-window p{font-size:.9rem;margin:8px 0;padding:0 10px}.timestamp-button-trans{font-size:.9rem}}.transcription-modal-overlay{align-items:center;animation:fadeIn-transcription .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.transcription-modal-content{background:#fff;border-radius:15px;box-shadow:0 2px 8px #0003;max-height:80%;max-width:500px;overflow-y:auto;padding:20px 15px;position:relative;width:75%}.close-modal-btn{color:#999;z-index:10}.transcription-modal-content h2{color:#333;font-size:1.2rem;margin-top:0;text-align:center}.transcription-modal-content p{border-bottom:1px solid #3333332f;color:#333;font-size:1rem;margin:10px 0;padding-bottom:5px}.timestamp-button-modal{background:none;border:none;color:#007bff;cursor:pointer;font-size:1rem;font-weight:700;padding:8px 8px 0 0}.timestamp-button-modal,.timestamp-button:hover{text-decoration:underline}@keyframes fadeIn-transcription{0%{opacity:0}to{opacity:1}}.process-diagram-container{border-radius:15px;font-family:sans-serif;padding:0 25px 25px}.process-diagram-header{border-radius:5px 5px 0 0;justify-content:space-between;padding:10px 0}.process-diagram-header,.title-with-dot-process{align-items:center;display:flex}.purple-dot{background-color:#5030e5;border-radius:50%;display:inline-block;height:8px;margin-right:8px;width:8px}.process-diagram-header h2{color:#333;font-size:1rem;margin:0}.purple-divider{background-color:#5030e5;border-radius:1px;height:3px}.image-wrapper{display:inline-block;position:relative}.process-diagram{border-radius:10px;width:100%}.tabs-container{display:flex;justify-content:center;margin-bottom:20px;margin-top:10px}.tab-button{background-color:#f0f0f0;border:none;border-radius:5px;color:#333;cursor:pointer;font-size:16px;margin:0 10px;padding:10px 20px;transition:background-color .3s ease}.tab-button.active{background-color:#6a1b9a;color:#fff}@media (max-width:1024px){.process-diagram-container{height:60vh}.process-diagram,.process-illustration-container{height:100%}}.click-here-link{color:#2563eb;font-weight:500;text-decoration:underline;transition:color .2s ease-in-out}.card-header{align-items:center;background:#f7f3ff;border-radius:20px;box-sizing:border-box;color:#3c2d83;display:flex;font-weight:600;justify-content:space-between;padding:14px 18px;-webkit-user-select:none;user-select:none;width:100%}.dropdown-arrow{height:18px;transition:transform .35s ease;width:18px}.card-body{background:#f7f3ff;max-height:0;opacity:0;overflow:hidden;padding:0 18px;transform:translateY(-6px);transition:max-height .45s ease,opacity .35s ease,transform .35s ease}.strategy-card.open .card-body{max-height:10000px;opacity:1;padding:18px;transform:translateY(0)}.strategy-card{background-color:#f7f3ff;border-radius:12px;box-shadow:0 2px 6px #0000000f;cursor:pointer;margin-bottom:14px;transition:box-shadow .25s ease}.card-body:before{background:radial-gradient(ellipse at center,#0000000f 0,#0000 70%);content:"";height:12px;left:0;opacity:.7;pointer-events:none;position:absolute;right:0;top:-1px}.card-body h4,.card-body p{margin-bottom:.85rem}.card-body ol,.card-body ul{margin-bottom:.9rem;margin-left:1.15rem}.card-body li{margin:.25rem 0}.video-wrapper{margin-top:1.25rem}.video-title{color:#4736c8;font-weight:600;margin-bottom:.55rem}.card-body iframe,.card-body video{background:#000;border-radius:10px;box-shadow:0 4px 10px #00000026;max-height:380px;width:100%}.diagram-title{color:#3c2d83;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.diagram-info-container{background-color:#f7f3ff;border-radius:12px;box-shadow:0 2px 6px #0000000a;margin-top:2rem;padding:1px 24px 20px}.diagram-info-container p{color:#333;font-size:.95rem;margin-bottom:.75rem}.process-illustration-container{display:flex;justify-content:center;margin-top:1.5rem}@media (max-width:768px){.card-header{font-size:1rem;padding:12px 16px}.card-body iframe,.card-body video{max-height:240px}.sub-card-body video{max-height:220px}}@keyframes expand{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.sub-card{border-radius:10px;box-shadow:0 1px 4px #0000000d;margin-top:12px;overflow:hidden;transition:box-shadow .3s ease}.sub-card:hover{box-shadow:0 2px 8px #0000001a}.sub-card-header{align-items:center;background:#e9e7ff;color:#3c2d83;cursor:pointer;display:flex;font-weight:600;justify-content:space-between;padding:12px 16px}.sub-card-header img.dropdown-arrow{height:14px;margin-left:8px;transition:transform .3s ease;width:14px}.sub-card-header img.rotated{transform:rotate(-90deg)}.sub-card-body{background:#e9e7ff;max-height:0;opacity:0;overflow:hidden;padding:0 16px;transition:max-height .4s ease,opacity .3s ease,padding .3s ease}.sub-card.open .sub-card-body{max-height:10000px;opacity:1;padding:16px}.prompt-grid{display:grid;grid-template-columns:1fr 1fr}@media (max-width:768px){.prompt-grid{grid-template-columns:1fr}}.ai-analysis-section{background:#0000000d;border-radius:10px;color:#333;font-family:Arial,sans-serif;margin:16px 0 0;padding:0 16px}.ai-header{align-items:center;display:flex;justify-content:space-between}.ai-header h3{color:#333;font-size:1.1rem}.overall-score{color:#333;font-size:1rem;font-weight:700;margin-top:15px}.ai-table-container{max-height:300px;min-height:60px;overflow:auto}.ai-analysis-table{border-collapse:collapse;font-size:.9rem;width:100%}.ai-analysis-table th{color:#333;padding:8px;text-align:left}.ai-analysis-table td{border-bottom:1px solid #ddd;padding:8px}.timestamp-button-analysis{background:none;border:none;color:#007bff;cursor:pointer;font-size:1rem;font-weight:700;padding:8px;text-decoration:underline}.timestamp-button-analysis:hover{color:#0056b3}.ai-table-container::-webkit-scrollbar{background:#0000;width:5px}.ai-table-container::-webkit-scrollbar-track{background:linear-gradient(180deg,#ccc 0,#d6caff 50%);border-radius:6px;margin:15px 0}.ai-table-container::-webkit-scrollbar-thumb{background-color:#fff;border-radius:6px;box-shadow:0 2px 4px #00000026}.ai-table-container::-webkit-scrollbar-thumb:hover{background-color:#f5f5f5}.ai-table-container::-webkit-scrollbar-corner{background:#0000}.fade-in{animation:fadeIn .5s ease-in-out}.read-more-btn{background:none;border:none;color:#007bff;cursor:pointer;font-size:.8rem;margin-left:8px;padding:2px 4px;text-decoration:underline}.score-switch{align-items:center;cursor:pointer;display:flex;gap:6px;margin-left:auto;margin-top:15px;-webkit-user-select:none;user-select:none}.score-switch input{display:none}.score-switch .slider{background:#d1d5db;border-radius:10px;height:20px;position:relative;transition:background .2s;width:36px}.score-switch .slider:before{background:#fff;border-radius:50%;content:"";height:16px;left:2px;position:absolute;top:2px;transition:transform .2s;width:16px}.score-switch input:checked+.slider{background:#4caf50}.score-switch input:checked+.slider:before{transform:translateX(16px)}.switch-label{color:#374151;font-size:.8rem}.analysis-banner{background:#f9f9f9;border-radius:8px;color:#333;font-size:.9rem;margin:12px 0;padding:10px 14px;text-align:center}.video-wrapper{margin-top:1rem}.strategy-video{border-radius:10px;box-shadow:0 4px 10px #00000026;width:100%}.info-btn{all:unset;align-items:center;background:#d7d7d7;border-radius:50%;color:#5e5d5d;cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;line-height:1;transition:background-color .2s;width:28px}.strategy-modal{animation:fadeIn .3s ease-in-out,scaleIn .3s ease-in-out;background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000004d;color:#333;display:flex;flex-direction:column;font-size:.95rem;margin-top:-10px;max-height:78vh;overflow:hidden;width:min(84vw,860px)}.strategy-modal-body{overflow-y:auto;padding:16px 18px 12px}.strategy-modal-footer{background:#fff;border-top:1px solid #ececec;bottom:0;display:flex;justify-content:center;padding:10px 14px calc(10px + env(safe-area-inset-bottom)*.25);position:sticky}@media (min-width:1025px){.strategy-modal{width:min(72vw,820px)}}.strategy-modal h3{color:#312e81;font-size:1.2rem;margin-top:0}.strategy-modal ul{list-style:disc;margin-left:1.1rem}.strategy-modal ol{list-style:decimal;margin-left:1.1rem}.strategy-modal li{margin:.25rem 0}.modal-close{align-items:center;background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;justify-content:center;padding:8px 16px;transition:background .2s}@media (max-width:1024px){.strategy-modal{max-height:82vh;width:min(94vw,560px)}.ai-analysis-section{background:#0000000d;border-radius:25px;color:#333;font-family:Arial,sans-serif;margin:16px 0 0;padding:0 10px}.ai-header{align-items:center;display:flex;justify-content:space-between;padding:0 16px 0 8px}.ai-header h3{color:#333;font-size:.9rem}.overall-score{color:#333;font-size:.85rem;font-weight:700}.ai-table-container.mobile{max-height:3000px;min-height:60px;overflow:hidden;transition:max-height .5s ease-in-out,height .5s ease-in-out}.ai-table-container p{font-size:.9rem;padding:0 16px}.ai-analysis-table{border-collapse:collapse;font-size:.8rem;width:100%}.ai-analysis-table th{color:#333;padding:8px;text-align:left}.ai-analysis-table td{border-bottom:1px solid #ddd;padding:8px}.timestamp-button-analysis{background:none;border:none;color:#007bff;cursor:pointer;font-size:.9rem;font-weight:700;padding:8px;text-decoration:underline}}.reasoning-modal-overlay{align-items:center;animation:fadeIn-transcription .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.reasoning-modal-content{background:#fff;border-radius:10px;box-shadow:0 4px 20px #0000004d;max-height:80%;max-width:500px;overflow-y:auto;padding:20px;position:relative;width:80%}.close-modal-btn{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;position:absolute;right:10px;top:10px}.close-modal-btn:hover{color:#333}.reasoning-modal-content h2{font-size:1.2rem;margin-top:0;text-align:center}.row-detail{color:#333;font-size:.95rem;margin:10px 0}.highlights-timeline-container{border:3px solid #ccc;border-radius:10px;height:50px;margin-top:15px;padding:0 15px;position:relative}.timeline{height:100%;position:relative;width:100%}.timeline-bar{background:#ddd;border-radius:5px;height:3px;width:100%}.timeline-bar,.timeline-marker{position:absolute;top:50%;transform:translateY(-50%)}.timeline-marker{cursor:pointer}.timeline-marker:before{background:#4caf50;border-radius:10px;content:"";display:block;height:25px;transform:translateX(-50%);transition:width .2s;transition:height .2s;width:3px}.timeline-marker:hover:before{background:#45a049;height:40px;width:10px}@media (max-width:1024px){.highlights-timeline-container{border:2px solid #ccc;border-radius:20px;height:40px}.timeline-bar{height:2px}.timeline-marker:before{height:25px;width:2.5px}.timeline-marker.active:before{height:35px;width:4px}}.achievements-container *{box-sizing:border-box}.achievement-ribbon{align-items:center;background:#fff;border:1px solid #6c63ff26;border-radius:9999px;box-shadow:0 3px 12px #6c63ff1f;cursor:pointer;display:flex;gap:8px;margin:4px auto;padding:8px 16px;transition:all .2s ease;width:max-content}.achievement-ribbon:hover{box-shadow:0 6px 20px #6c63ff33;transform:translateY(-2px)}@keyframes rainbowGlow{0%{box-shadow:0 0 8px #ff00cc14,0 0 16px #3333ff0f,0 0 24px #00ffff0a}25%{box-shadow:0 0 8px #00ffff14,0 0 16px #33ff330f,0 0 24px #ffff000a}50%{box-shadow:0 0 8px #ffff0014,0 0 16px #ff66000f,0 0 24px #ff00000a}75%{box-shadow:0 0 8px #ff000014,0 0 16px #ff00cc0f,0 0 24px #3333ff0a}to{box-shadow:0 0 8px #ff00cc14,0 0 16px #3333ff0f,0 0 24px #00ffff0a}}.achievement-ribbon.glow{animation:rainbowGlow 10s ease-in-out infinite;background-clip:padding-box}.badge-emoji-container{position:relative}.badge-emoji{font-size:24px;line-height:1}.badge-indicator{background-color:#22c55e;border:2px solid #fff;border-radius:50%;bottom:-2px;height:10px;position:absolute;right:-2px;width:10px}.badge-info{display:flex;flex-direction:column}.badge-count{color:#6366f1;font-size:.9rem;font-weight:600}.badges-remaining{color:#6b7280;font-size:.75rem}.modal-overlay-rewards{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:#0000004d;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;touch-action:none;z-index:2200}.achievements-modal{background:#fff;border-radius:16px;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column;height:80vh;max-width:420px;overflow:hidden;width:90%}.modal-header{background:linear-gradient(135deg,#6368f1,#8a5cf6c7);border-radius:10px;flex-shrink:0;overflow:hidden;padding:24px;position:relative}.modal-header-light{background:radial-gradient(circle at 50% 0,#fffc 0,#0000 70%);box-shadow:0 1px 4px #0000000d;height:128px;left:0;opacity:.2;pointer-events:none;position:absolute;right:0;top:0}.modal-header-content{align-items:flex-start;display:flex;justify-content:space-between}.modal-title{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 4px}.modal-subtitle{color:#ede9fee6;font-size:.875rem;margin:0}.modal-close-button{align-items:center;background:#fff3;border:none;border-radius:50%;cursor:pointer;display:flex;height:28px;justify-content:center;transition:background .2s ease;width:28px}.modal-close-button:hover{background:#ffffff4d}.modal-close-icon{color:#fff;height:16px;width:16px}.progress-container{align-items:center;display:flex;margin-top:16px}.progress-scale{background:#fff3;border-radius:9999px;flex:1 1;height:8px;overflow:hidden}.progress-fill{background:#fff;height:100%;transition:width 1s ease}.progress-percent{color:#fff;font-size:.75rem;font-weight:500;margin-left:8px}.modal-body{flex:1 1;overflow-y:auto;padding:24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.section-title{color:#1f2937;font-size:1rem;font-weight:700;margin:0}.section-title.mb-4{margin-bottom:10px}.badge-counter{background-color:#dcfce7;border-radius:9999px;color:#166534;font-size:.75rem;font-weight:500;padding:4px 8px}.badge-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:10px;position:relative}.badge-image{height:60px;object-fit:contain;width:60px;z-index:1}.badge{align-items:center;display:flex;flex-direction:column;padding:12px;position:relative;text-align:center}.badge.earned{background:#fff;box-shadow:0 4px 12px #00000014}.badge.locked{background:#f3f4f6}.badge-icon-container{align-items:center;border-radius:50%;display:flex;height:64px;justify-content:center;margin-bottom:8px;overflow:hidden;position:relative;width:64px}.locked .badge-icon-container{background-color:#f0f0f0}.badge-pulse{inset:0;position:absolute}.badge-emoji-large{font-size:28px;z-index:1}.badge-name{color:#111827;font-size:.875rem;font-weight:600;margin-top:4px}.badge-description{color:#6b7280;font-size:.75rem;margin-bottom:0;margin-top:4px}.lock-overlay{background:#ffffffb3;border-radius:12px;inset:0;position:absolute}.lock-icon-container,.lock-overlay{align-items:center;display:flex;justify-content:center;z-index:999}.lock-icon-container{background-color:#e5e7eb;border-radius:50%;height:34px;margin-bottom:30px;width:34px}.lock-icon{color:#6b7280;height:22px;width:22px}.empty-state{background-color:#f9fafb;border-radius:12px;padding:16px;text-align:center}.empty-message{color:#6b7280;font-size:.875rem}.modal-footer{background-color:#f9fafb;border-top:1px solid #f3f4f6;box-shadow:0 -1px 4px #0000000d;flex-shrink:0;padding:16px 24px 24px}.continue-button{background-color:#8b5cf6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 0;transition:background-color .2s ease;width:100%}.continue-button:hover{background-color:#754cd5}.confetti-container{inset:0;overflow:hidden;pointer-events:none;position:absolute}.confetti-piece{border-radius:50%;height:8px;position:absolute;width:8px}@media (max-width:480px){.badge-grid{grid-template-columns:repeat(2,1fr)}.modal-body,.modal-header{padding:20px}}@keyframes badgePulse{0%{opacity:.6;transform:scale(1)}50%{opacity:.2;transform:scale(1.5)}to{opacity:0;transform:scale(1.8)}}@keyframes badgeBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes badgeSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes lockPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.badge-bounce{animation:badgeBounce 2s ease-in-out infinite}.badge-spin{animation:badgeSpin 10s linear infinite}.pulse-animation{animation:badgePulse 1.5s infinite}.lock-pulse{animation:lockPulse 2s ease-in-out infinite}.achievement-ribbon.upgrade{--indigo:#8b5cf6;align-items:center;background:#fff;border:1px solid #6366f126;border-radius:9999px;box-shadow:0 4px 14px #6366f126;cursor:pointer;display:flex;gap:12px;padding:10px 14px;transition:box-shadow .25s,transform .15s}.achievement-ribbon.upgrade .chevron{color:var(--indigo);height:18px;margin-left:4px;width:18px}.ribbon-donut{flex-shrink:0;height:38px;position:relative;width:38px}.ribbon-donut svg{height:100%;transform:rotate(-90deg);width:100%}.ribbon-donut .track{fill:none;stroke:#e5e7eb;stroke-width:4}.ribbon-donut .fill{fill:none;stroke:var(--indigo);stroke-width:4;stroke-linecap:round}.ribbon-donut .donut-text{align-items:center;color:var(--indigo);display:flex;font-size:.75rem;font-weight:600;inset:0;justify-content:center;position:absolute}.ribbon-emojis{display:flex;gap:2px;margin-left:2px}.badge-emoji.ribbon{font-size:20px;line-height:1}.ribbon-copy{display:flex;flex-direction:column;line-height:1}.ribbon-copy strong{color:#111827;font-size:.9rem;font-weight:700}.ribbon-copy .sub{color:#6b7280;font-size:.72rem}.homepage-container{display:flex;flex-direction:column;min-height:calc(100vh - 108px);overflow-x:hidden;overflow-y:auto;padding-bottom:20px}.homepage-resizable-layout{align-items:stretch;display:flex;flex:1 1;min-height:820px}.resizable-column{display:flex;flex-direction:column;min-height:0;min-width:280px}.resizable-column-left{flex:0 0 66%}.resizable-column-right{flex:1 1 auto;gap:14px}.home-panel{background-color:#f5f5f5;border-radius:15px;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:10px 14px}.home-panel-video{overflow:visible}.home-panel-content{flex:1 1;min-height:0;padding-top:0}.home-panel-content-chat{display:flex}.home-panel-content-chat .chat-interface{min-height:0}.home-panel-content-progress{display:flex;overflow-y:auto}.progress-stack{display:flex;flex-direction:column;gap:12px;min-height:0;width:100%}.home-panel-content-progress .my-progress-container,.progress-card-wrapper{flex:1 1;min-height:0}.home-panel-content-video{grid-gap:12px;display:grid;gap:12px;min-height:0;overflow:visible}.home-video-layout-stacked{grid-template-areas:"video" "supplement" "feedback";grid-template-columns:minmax(0,1fr)}.home-video-layout-side{--video-side-gap:12px;--video-side-left-padding:8px;align-content:start;align-items:start;column-gap:var(--video-side-gap);grid-template-areas:"video feedback" "supplement feedback";grid-template-columns:minmax(240px,42%) minmax(360px,58%)}.video-stage{grid-area:video;min-height:0}.home-video-layout-side .video-stage{grid-column:1/-1;grid-row:1}.video-stage .training-video-container{height:auto}.home-video-layout-side .video-stage .training-video-container{grid-column-gap:var(--video-side-gap);column-gap:var(--video-side-gap);display:grid;grid-template-columns:minmax(240px,42%) minmax(360px,58%)}.home-video-layout-side .video-stage .orange-divider,.home-video-layout-side .video-stage .training-video-header{grid-column:1/-1}.home-video-layout-side .video-stage .video-area-container{grid-column:1}.home-video-layout-side .video-side-supplement,.home-video-layout-side .video-stage .video-area-container{box-sizing:border-box;padding-left:var(--video-side-left-padding);padding-right:var(--video-side-left-padding);width:100%}.home-video-layout-side .video-side-supplement .highlights-timeline-container{margin:-16px 0 0}.home-video-layout-side .video-side-supplement .transcription-window{margin-top:10px}.video-stage video{object-fit:contain;width:100%}.video-feedback-stack{grid-area:feedback;max-height:420px;min-height:0;overflow-y:auto;padding-bottom:10px;padding-right:6px}.video-side-supplement{grid-area:supplement;min-height:0}.video-feedback-stack::-webkit-scrollbar{width:6px}.video-feedback-stack::-webkit-scrollbar-thumb{background:#c4c4c4;border-radius:999px}.home-video-layout-side .video-feedback-stack{align-self:start;display:flex;height:auto;height:var(--video-feedback-height,auto);margin-top:0;margin-top:var(--video-feedback-offset,0);max-height:none;max-height:var(--video-feedback-height,none);overflow:hidden}.home-video-layout-side .video-feedback-stack .ai-analysis-section{display:flex;flex-direction:column;height:100%;margin-top:0;width:100%}.home-video-layout-side .video-feedback-stack .ai-table-container{flex:1 1;max-height:none;overflow:auto}.home-panel-content-about{overflow:visible}.home-panel-content-about .process-diagram-container{height:auto;overflow:visible;padding:0 8px 8px}.home-panel-content-about .process-diagram-header{position:static}.panel-splitter{flex:0 0 auto;position:relative;z-index:3}.panel-splitter:before{background:#d2d6db;border-radius:999px;content:"";inset:0;margin:auto;position:absolute;transition:background-color .2s ease}.panel-splitter:hover:before{background:#9aa3af}.panel-splitter-vertical{cursor:col-resize;margin:0 6px;width:14px}.panel-splitter-vertical:before{height:100%;width:4px}.panel-splitter-horizontal{cursor:row-resize;height:14px;margin:6px 0}.panel-splitter-horizontal:before{height:4px;width:100%}body.home-is-resizing{-webkit-user-select:none;user-select:none}body.home-is-resizing-column{cursor:col-resize}body.home-is-resizing-row{cursor:row-resize}.badge{background-color:#4caf50;border-radius:12px;color:#fff;display:inline-block;font-size:14px;font-weight:700;padding:5px 10px}@media (max-width:1024px){.homepage-container{margin:60px 0;min-height:0;padding-bottom:0}.homepage-resizable-layout{display:block;min-height:0}.resizable-column{display:block;min-width:0}.home-panel{margin-bottom:14px}.home-panel-content-video{display:flex;flex-direction:column}.video-feedback-stack{margin-top:0;max-height:none;overflow:visible;padding-right:0}.panel-splitter{display:none}}.training-container{background-color:#f2f2f2;border-radius:25px;display:flex;font-family:Segoe UI,sans-serif;min-height:100vh;padding:20px}.training-sidebar{border-right:1px solid #e0e0e0;flex:1 1;height:100vh;overflow-y:auto;padding-right:20px}.training-sidebar h2{font-size:20px;font-weight:600;margin:12px}.training-sidebar ul{list-style:none}.training-sidebar li{margin-top:10px}.training-sidebar .session-button{background:none;border:none;border-radius:8px;color:#333;cursor:pointer;font-size:16px;padding:10px 12px;text-align:left;transition:background-color .2s;width:100%}.training-sidebar button:focus,.training-sidebar button:hover{background-color:#ececec}.training-sidebar button.active{background-color:#5130e51e;font-weight:600}.analysis-panel{flex:3 1;height:100%;padding-left:20px}.training-underlay-dim{background:#4c4c4c73;inset:0;opacity:0;pointer-events:none;position:absolute;will-change:opacity;z-index:4}.mobile-analysis-panel-enter{animation:mobilePanelSlideIn .32s cubic-bezier(.22,1,.36,1)}.analysis-summary{background-color:#f5f5f5;border-radius:16px;box-shadow:0 4px 10px #0000000f;padding:24px}.analysis-summary h2{color:#333;font-size:1.5rem;margin:0 10px 10px}.date-group-list{list-style:none;padding-left:0}.date-toggle{align-items:center;background:#0000;border:none;color:#333;cursor:pointer;display:flex;font-size:1rem;font-weight:600;padding:16px 0}.dropdown-arrow{height:16px;margin-right:8px;transition:transform .3s ease;width:16px}.dropdown-arrow.rotated{transform:rotate(-90deg)}.session-collapse{opacity:0;overflow:hidden;transition:opacity .7s ease}.session-collapse.expanded{height:auto;opacity:1}.session-list{padding-left:24px}.session-button{background:none;border:none;border-radius:12px;color:#333;cursor:pointer;display:flex;flex-direction:column;font-size:16px;gap:6px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.session-row{align-items:center;display:flex;flex-wrap:nowrap;gap:12px;justify-content:space-between;width:100%}.session-left{flex:1 1;min-width:0;overflow:hidden}.session-actions{flex-shrink:0;gap:8px;justify-content:flex-end}.icon-button,.session-actions{align-items:center;display:flex}.icon-button{background:none;border:none;border-radius:50%;cursor:pointer;justify-content:center;min-height:32px;min-width:32px;padding:6px}.icon-button.delete:hover svg,.icon-button.favorite:hover svg{transform:scale(1.1);transition:transform .2s ease}.modal-overlay-sessions{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;overscroll-behavior:contain;padding:16px;position:fixed;touch-action:none;z-index:2200}.modal-content-sessions{background:#f2f2f2;border-radius:8px;box-shadow:0 8px 20px #00000026;max-height:min(80vh,520px);max-width:400px;overflow-y:auto;padding:10px 20px 20px;width:min(80%,400px)}.modal-actions-sessions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.cancel-delete,.confirm-delete{border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.confirm-delete{background-color:#e74c3c}.cancel-delete{background-color:#9d9d9d}.session-info-row{align-items:center;display:flex;margin-bottom:10px}.session-number{font-weight:600;margin-right:4px}.session-type{font-weight:500}.session-time{color:#666;font-size:.9em;padding-left:18px}.empty-message{color:#888;font-size:1.2rem;font-style:italic;padding:2rem;text-align:center}.summary-section-title{color:#333;font-weight:700;margin-bottom:10px;margin-top:20px}.summary-bullet-list{margin-bottom:16px;margin-left:20px}.summary-paragraph{color:#555;margin-bottom:16px}@media (max-width:1024px){.training-container{border-radius:22px;flex-direction:column;overflow:hidden;padding:12px;position:relative}.training-container.analysis-open{height:100%;min-height:0}.session-button{background-color:#fff;border-radius:12px;box-shadow:0 2px 6px #0000000d;margin-bottom:8px;padding:16px}.training-sidebar{border-bottom:1px solid #e0e0e0;border-right:none;height:auto;margin-bottom:20px;padding-right:0;text-align:center}.training-sidebar h2{font-size:18px;margin:8px 0}.training-sidebar .session-button{font-size:15px;padding:8px 10px}.date-toggle{font-size:1rem;padding:10px 0}.date-group{background-color:#ececec;border-radius:20px;padding:12px}.dropdown-arrow{height:14px;width:14px}.analysis-panel{padding:0}.analysis-panel.mobile-analysis-panel-overlay{background:#f2f2f2;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:8px 0 calc(40px + env(safe-area-inset-bottom)*.35);position:absolute;z-index:5}.analysis-panel.mobile-analysis-panel-overlay .analysis-summary{margin-bottom:calc(16px + env(safe-area-inset-bottom)*.15);padding-bottom:calc(32px + env(safe-area-inset-bottom)*.25)}.analysis-summary{border-radius:22px;padding:16px}.analysis-summary h2{font-size:1.2rem;margin-bottom:8px}.summary-section-title{font-size:1rem;margin-bottom:8px;margin-top:16px}.summary-paragraph{font-size:14px}.summary-bullet-list{font-size:14px;margin-left:16px}.empty-message{font-size:1rem;padding:1.5rem}}.fade-in-training{animation:fadeIn .4s ease-in-out both}.loading-state{align-items:center;animation:fadeIn .3s ease-in-out;display:flex;height:100vh;justify-content:center}.loading-message{color:#555;font-size:1rem;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #ddd;border-top-color:#5030e5;height:32px;margin:0 auto 16px;width:32px}.restore-session-btn{background-color:#ff9c39;border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;margin:10px 0 -40px auto;padding:6px 14px}.main-wrapper{display:flex;margin:0 25px 25px 0;overflow:hidden}.content-container{display:flex;flex:1 1;flex-direction:column;overflow-x:hidden;overflow-y:auto;padding-left:25px}@media (max-width:1024px){.main-wrapper{margin:0}.content-container,.main-wrapper{display:flex;overflow:hidden;width:100%}.content-container{flex:1 1;flex-direction:column;padding:10px}}.mobile-bottom-bar{align-items:center;background:#fff;border-top:1px solid #ddd;bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 5px #0000001a;display:flex;justify-content:space-around;padding:5px 0;position:fixed;width:100%;z-index:999}:root.native-app-shell .mobile-bottom-bar{bottom:8px;padding:3px 0}.mobile-bottom-bar button{background:none;border:none;color:#555;cursor:pointer;flex-grow:1;padding-bottom:5px;text-align:center}.mobile-bottom-bar button.active{border-bottom:3px solid #4e0487ba;border-radius:3px;color:#4e0487ba;font-weight:700}.mobile-bottom-bar button img{display:block;height:24px;margin:0 auto 4px;width:24px}.mobile-bottom-bar .home-img{height:28px;margin-bottom:2px;width:28px}.mobile-bottom-bar .home-inactive{padding-bottom:7px}.mobile-bottom-bar button span{display:block;font-size:12px}.home-mobile-wrapper{background-color:#f9f9f9;display:flex;flex-direction:column;height:100dvh;overflow:hidden;width:100%}.mobile-content{flex-grow:1;margin:10px 10px 70px;overflow-y:auto;transition:margin-top .3s ease-in-out}:root.native-app-shell .mobile-content{margin-bottom:calc(56px + env(safe-area-inset-bottom)*.55)}.chat-container-mobile,.diagram-container-mobile,.review-container-mobile{height:100%}.fade-in{animation:fadeIn .2s ease-in-out}.simple-header{background-color:#fff;border:1px solid #ccc;border-radius:20px;cursor:pointer;justify-content:space-between;margin:10px;padding:16px}.simple-header,.user-greeting{align-items:center;display:flex}.user-greeting{text-align:left}.avatar-container{align-items:center;background-color:#ffe0f0;border-radius:50%;display:flex;height:60px;justify-content:center;margin-right:12px;overflow:hidden;width:60px}.greeting-avatar{height:62px;width:62px}.greeting-heading{color:#333;font-size:18px;font-weight:600;margin:5px 0}.greeting-subtext{color:#888;font-size:14px;margin:5px 0}.menu-button{background:none;border:none;cursor:pointer;padding:8px}.menu-icon{height:28px;width:28px}.settings-page{background-color:#f8f9fd;bottom:0;left:0;overflow-y:auto;position:fixed;right:0;top:0;z-index:1000}.settings-header{align-items:center;background-color:#fff;box-shadow:0 1px 2px #0000000d;display:flex;padding:16px}.settings-title{flex:1 1;font-size:20px;font-weight:600;margin:0;text-align:center}.profile-avatar-section{align-items:center;background:linear-gradient(90deg,#f2e6ff,#e6f2ff);border-radius:30px;display:flex;flex-direction:column;margin:15px;padding:24px 16px}.avatar-circle{align-items:center;background-color:#ffcce6;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;display:flex;height:110px;justify-content:center;margin-bottom:12px;overflow:hidden;width:110px}.settings-avatar{border-radius:50%;height:100%;object-fit:cover;width:100%}.profile-details{align-items:center;display:flex;flex-direction:column;font-family:Inter,sans-serif;gap:6px;padding:8px 0;text-align:center}.user-name{color:#333;font-size:1.5rem;font-weight:600}.user-email{color:#777;font-size:1rem;word-break:break-word}.settings-section{padding:24px 16px}.section-header{color:#6b7280;font-size:16px;font-weight:600;margin:0 0 16px}.settings-item{align-items:center;background-color:#fff;border-radius:16px;cursor:pointer;display:flex;margin-bottom:8px;padding:16px;transition:background-color .2s ease}.settings-item:hover{background-color:#f5f5f5}.item-icon{display:flex;font-size:18px;justify-content:center;margin-right:16px;width:24px}.back-icon,.item-icon svg{color:#673eb0;font-size:1rem;margin-right:8px}.back-button-settings{align-items:center;background:none;border:none;color:#673eb0;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;justify-content:center;left:10px;padding:0;position:fixed;top:22px}.item-text{color:#374151;flex:1 1;font-size:15px;font-weight:500}.item-arrow{color:#9ca3af;font-size:20px}.fade-in-settings{animation:slideInSettings .32s cubic-bezier(.22,1,.36,1)}@keyframes slideInSettings{0%{opacity:.98;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.edit-avatar-btn{background:#e5e7eb;border:none;border-radius:6px;cursor:pointer;font-size:.75rem;margin-top:8px;padding:4px 8px}.avatar-picker{margin-top:1rem}.avatar-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.avatar-choice{border:2px solid #0000;border-radius:50%;cursor:pointer;height:50px;transition:border .2s ease;width:50px}.upload-avatar-tile{background-color:#f9f9f9;position:relative}.avatar-upload-btn,.upload-avatar-tile{align-items:center;display:flex;justify-content:center}.avatar-upload-btn{background:#0000;border:none;border-radius:50%;cursor:pointer;height:100%;width:100%}.camera-icon{color:#555;font-size:20px}.avatar-upload-overlay{align-items:center;background:#fff9;border-radius:16px;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:999}.spinner{animation:spin .8s linear infinite;border:4px solid #ccc;border-radius:50%;border-top-color:#673eb0;height:36px;width:36px}@keyframes spin{to{transform:rotate(1turn)}}.mobile-dashboard-wrapper{background-color:#f8f9fa;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;width:100%}.mobile-underlay{height:100%;position:relative;transform-origin:center center;will-change:transform,filter}.mobile-underlay-dim{background:#4c4c4c73;inset:0;opacity:0;pointer-events:none;position:fixed;will-change:opacity;z-index:50}.mobile-homepage{flex:1 1;padding:16px}.welcome-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000a;margin-bottom:24px;padding:20px;text-align:left}.incomplete-popup-overlay{align-items:center;animation:fadeIn-popup .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0006;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.incomplete-popup{animation:scaleIn .25s ease-out;background-color:#fff;border-radius:16px;box-shadow:0 6px 18px #0003;font-family:Segoe UI,sans-serif;max-width:400px;padding:5px 20px 24px;text-align:center;width:75%}.incomplete-popup p{color:#333;font-size:1rem;margin:8px 0}.popup-buttons{display:flex;gap:14px;justify-content:center;margin-top:20px}.popup-buttons button{border:none;border-radius:20px;color:#fff;cursor:pointer;font-weight:600;padding:10px 18px;transition:background-color .2s ease}.popup-buttons button.resume-btn{background-color:#5a40cf;color:#fff}.popup-buttons button.new-btn{background-color:#ff9c39;color:#fff}.popup-buttons button:hover{background-color:#3f26b1}@keyframes fadeIn-popup{0%{opacity:0}to{opacity:1}}.welcome-heading{color:#1a1a1a;font-size:1.3rem;font-weight:600;margin:0 0 8px}.welcome-tagline{color:#3a3a3a;font-size:1rem;font-weight:500;margin:0 0 8px}.section-description{color:#555;font-size:1rem;line-height:1.5;margin:0}.card{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;margin-bottom:20px;padding:16px}.plot-card{padding:0}.stats-section{display:flex;flex-direction:column;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:24px}.history-card,.stat-card{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;padding:16px}.stat-card{align-items:center}.section-title{color:#4a4a4a;font-size:1.1rem;font-weight:500;margin:0 0 8px}.stat-number{color:#4e0487ba;font-size:1.8rem;font-weight:600;margin:auto 0}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.history-button{align-items:center;background:#fff6e1;border:1px solid #fbac2d;border-radius:26px;box-shadow:0 1px 2px #fbc02d1f;color:#333;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:500;justify-content:center;margin-top:15px;padding:10px 12px;text-align:center;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.history-button:focus,.history-button:hover{background:#ffecb3;box-shadow:0 2px 4px #fbc02d33;transform:translateY(-1px)}.mobile-dashboard-wrapper{padding-bottom:16px}.back-button-training{background:none;border:none;color:#673eb0;cursor:pointer;display:flex;font-size:1rem;font-weight:600;margin:10px;padding:0;z-index:1000}.mobile-overlay-panel{animation:mobilePanelSlideIn .32s cubic-bezier(.22,1,.36,1);background:#f8f9fa;bottom:calc(52px + env(safe-area-inset-bottom)*.55);box-shadow:-8px 0 24px #00000014;left:0;overflow-y:auto;position:fixed;right:0;top:0;will-change:transform;z-index:900}.mobile-overlay-panel.analysis-active{overflow:hidden}@keyframes mobilePanelSlideIn{0%{opacity:.98;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}:root{--primary-color:#5030e5;--secondary-color:#ff9226;--text-color:#333;--light-text:#666;--lighter-text:#999;--background:#fff;--card-shadow:0 10px 30px #5030e51a;--hover-shadow:0 15px 35px #5030e526;--border-radius:16px;--input-radius:12px;--button-radius:12px;--transition:all 0.3s ease;--parent-color:#5030e5;--professional-color:#ff9226}body{background-color:#f9faff;color:#333;color:var(--text-color);font-family:Inter,Segoe UI,system-ui,sans-serif;margin:0}.auth-container{align-items:center;display:flex;justify-content:center;min-height:100%;position:relative}.content-wrapper{max-width:480px;position:relative;width:100%;z-index:1}.wave-background{height:100%;left:0;overflow:hidden;position:fixed;top:0;width:100%;z-index:-1}.wave-background svg{animation:gentle-wave 20s ease-in-out infinite alternate;height:100%;position:absolute;transform-origin:top center;width:100%}@keyframes gentle-wave{0%{transform:translateY(0) scale(1.3)}50%{transform:translateY(-10px) scale(1)}to{transform:translateY(0) scale(1.3)}}.logo-container{left:30px;position:absolute;top:30px;z-index:10}.logo-container img{filter:drop-shadow(0 4px 6px rgba(0,0,0,.1));height:auto;transition:all .3s ease;transition:var(--transition);width:180px}.logo-container img:hover{filter:drop-shadow(0 6px 8px rgba(0,0,0,.15));transform:translateY(-2px)}.auth-card-header{background-color:#fff;background-color:var(--background);background-color:initial;padding:20px}.auth-card,.auth-card-header{animation:fadeInUp .6s ease-out forwards;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff4d;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 10px 30px #5030e51a;box-shadow:var(--card-shadow);margin:30px;max-width:480px;opacity:0;transform:translateY(20px)}.auth-card{background-color:#fff;background-color:var(--background);background-color:#ffffffd9;padding:0 40px 40px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-header{margin-bottom:30px;text-align:center}.auth-header h1{-webkit-text-fill-color:#0000;animation:fadeIn .8s ease-out;background:linear-gradient(135deg,#5030e5,#9b65e4);-webkit-background-clip:text;background-clip:text;color:#5030e5;color:var(--primary-color);font-size:48px;font-weight:700;letter-spacing:-1px;margin:0 0 10px}.auth-header h2{color:#333;color:var(--text-color);font-size:24px;font-weight:600;margin:0 0 5px}.auth-header .subtitle{color:#666;color:var(--light-text);font-size:16px;margin:0}.role-selector{animation-delay:.1s;animation:fadeIn .8s ease-out;margin-bottom:24px}.role-label{color:#666;color:var(--light-text);font-size:14px;font-weight:500;margin-bottom:8px}.role-options{display:flex;gap:10px}.role-options input[type=radio]{display:none}.role-options label{align-items:center;background-color:#f5f7ff;border:2px solid #eaedf7;border-radius:12px;border-radius:var(--input-radius);color:#666;color:var(--light-text);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:20px;font-weight:500;gap:8px;justify-content:center;padding:14px;transition:all .3s ease;transition:var(--transition)}.role-options label .icon{font-size:20px}.role-options input[type=radio]:checked+label{border-color:#0000;box-shadow:0 5px 15px #0000001a;transform:translateY(-2px)}.role-options input[value=parent]:checked+label{background-color:#5030e51a;color:#5030e5;color:var(--parent-color)}.role-options input[value=professional]:checked+label{background-color:#ff92261a;color:#ff9226;color:var(--professional-color)}.auth-form,.form-group{margin-bottom:20px}.form-group label{color:#333;color:var(--text-color);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:#999;color:var(--lighter-text);font-size:16px;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-wrapper input{background-color:#f5f7ff;border:1px solid #e0e5f2;border-radius:12px;border-radius:var(--input-radius);color:#333;color:var(--text-color);font-size:16px;padding:14px 40px;transition:all .3s ease;transition:var(--transition);width:100%}.input-wrapper input:focus{background-color:#fff;border-color:#5030e5;border-color:var(--primary-color);box-shadow:0 0 0 4px #5030e51a;outline:none}.input-wrapper input::placeholder,.toggle-password{color:#999;color:var(--lighter-text)}.toggle-password{background:none;border:none;cursor:pointer;font-size:16px;padding:0;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.alert{animation:fadeIn .3s ease-out;border-radius:12px;border-radius:var(--input-radius);font-size:14px;margin-bottom:20px;padding:12px 16px}.alert-error{background-color:#ff4c4c1a;border-left:4px solid #ff4c4c;color:#d32f2f}.alert-success{background-color:#4caf501a;border-left:4px solid #4caf50;color:#388e3c}.action-buttons{display:flex;flex-direction:column;gap:12px;margin-top:30px}.danger-button,.guest-button,.primary-button,.secondary-button{border:none;border-radius:12px;border-radius:var(--button-radius);cursor:pointer;font-size:16px;font-weight:600;padding:14px;text-align:center;transition:all .3s ease;transition:var(--transition);width:100%}.primary-button{background:linear-gradient(135deg,#5030e5,#7f5cf1);box-shadow:0 4px 10px #5030e54d;color:#fff}.primary-button:hover{box-shadow:0 6px 15px #5030e566;transform:translateY(-2px)}.guest-button{background-color:initial;border:1px solid #e0e5f2;color:#666;color:var(--light-text)}.guest-button:hover{background-color:#f5f7ff;border-color:#dae0f2;color:#5030e5;color:var(--primary-color)}.secondary-button{background-color:#f5f7ff;color:#333;color:var(--text-color)}.danger-button{background:linear-gradient(135deg,#ff5f6d,#ff9f68);box-shadow:0 4px 10px #ff5f6d4d;color:#fff}.danger-button:hover{box-shadow:0 6px 15px #ff5f6d66;transform:translateY(-2px)}.text-button{background:none;border:none;color:#5030e5;color:var(--primary-color);cursor:pointer;font-size:14px;font-weight:500;padding:6px 0;transition:all .3s ease;transition:var(--transition)}.text-button:hover{color:#7f5cf1;text-decoration:underline}.auth-footer{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:20px}.switch-mode{font-weight:600;margin-top:10px}.modal-overlay{animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#00000080;bottom:0;right:0;z-index:100}.modal-content{animation:scaleIn .3s ease-out;background-color:#fff;border-radius:16px;border-radius:var(--border-radius);box-shadow:0 10px 30px #0003;max-width:400px;padding:30px;width:80%}.modal-content h3{align-items:center;color:#ff4c4c;display:flex;font-size:18px;gap:8px;margin-bottom:16px;margin-top:0}.modal-content p{color:#333;color:var(--text-color);margin-bottom:10px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modal-actions button{border-radius:12px;border-radius:var(--button-radius);font-weight:500;padding:10px 20px}@media (max-width:576px){.auth-card-header{margin-top:100px;padding:15px}.auth-card{padding:25px}.auth-header h1{font-size:35px}.auth-header h2{font-size:20px}.logo-container{left:20px;top:20px}.logo-container img{width:140px}.role-options label{font-size:18px;padding:8px 4px}.input-wrapper input{padding:12px 36px}.switch-mode{margin-top:0}.auth-card h2{margin:6px 0;text-align:center}}.modal-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal h2{color:#333;margin-bottom:10px}.modal{animation:fadeIn .3s ease-in-out,scaleIn .3s ease-in-out;background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000004d;padding:20px;text-align:center;width:400px}.modal input{border:1px solid #ccc;border-radius:15px;font-size:16px;margin:10px 0;padding:10px;transition:border-color .2s ease-in-out;width:80%}.modal input:focus{border-color:#4e0487ba;outline:none}.input-group{align-items:center;display:flex;flex-direction:column;margin-bottom:15px}.input-group label{color:#333;font-size:16px;font-weight:600;margin-bottom:5px}.button-container{display:flex;gap:10px;margin-top:10px}.modal-button{background:#4e0487ba;border:none;border-radius:15px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;padding:12px;transition:background-color .2s ease-in-out}.modal-button:hover{background-color:#280245ba}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.9)}to{transform:scale(1)}}@media (max-width:1024px){.modal{max-width:400px;width:70%}}.admin-wrapper{--btn-primary-bg:linear-gradient(135deg,#2563eb,#1d4ed8);--btn-primary-bg-hover:linear-gradient(135deg,#1d4ed8,#1e40af);--btn-primary-border:#1e40af;--btn-secondary-bg:#64748b;--btn-secondary-bg-hover:#475569;--btn-secondary-border:#475569;--btn-shadow:0 2px 8px #1e40af33;background:#f9fafb;color:#222;font-family:system-ui,sans-serif;min-height:95vh;padding:20px}.admin-wrapper h2{color:#111827;font-size:1.5rem;margin-bottom:1.5rem}.admin-table,.session-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 6px #0000000f;font-size:.95rem;overflow:hidden;width:100%}.admin-table td,.admin-table th,.session-table td,.session-table th{padding:.75rem 1rem;text-align:left}.admin-table th,.session-table th{background:#f3f4f6;color:#374151;font-size:.75rem;font-weight:600;text-transform:uppercase}.session-table tbody tr{transition:background-color .16s ease}.session-table tbody tr:hover{background:#eef3ff}.session-table .session-row-clickable{cursor:pointer}.admin-table tr:hover{background:#f8fafc;cursor:default}.admin-table tbody tr{border:4px solid #d1d5db;border-bottom:1px solid #e5e7eb}.admin-table tbody tr.child-row{border-top:1px solid #e5e7eb}.pager{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1rem}.pager button{background:var(--btn-primary-bg);border:1px solid var(--btn-primary-border);border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .9rem;transition:background .2s,transform .12s ease,box-shadow .15s ease}.pager button:hover:not(:disabled){background:var(--btn-primary-bg-hover);box-shadow:var(--btn-shadow);transform:translateY(-1px)}.pager button:disabled{background:#cbd5e1;border-color:#94a3b8;color:#475569;cursor:not-allowed}.back-button{background:none;border:none;border-radius:6px;color:#1d4ed8;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:600;margin-bottom:1.25rem;padding:.2rem .35rem}.back-button:hover{background:#dbeafe;color:#1e40af;text-decoration:none}.video-preview{margin-bottom:0;max-height:70vh;max-width:100%}.video-preview video{max-height:65vh;object-fit:contain;width:100%}.admin-detail-layout{display:flex;flex-direction:column;gap:1.5rem}.admin-detail-layout.horizontal,.admin-detail-layout.vertical{align-items:flex-start;flex-direction:row}.admin-detail-layout .video-column{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px #0000000a;flex:0 0 auto;max-width:100%;padding:1rem}.admin-detail-layout.horizontal .video-column{align-self:flex-start;flex:0 0 38%;max-width:480px;min-width:320px;position:sticky;top:1rem}.admin-detail-layout.vertical .video-column{align-self:flex-start;flex:0 0 42%;max-width:520px;min-width:320px;position:sticky;top:1rem}.admin-detail-layout .table-column{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px #0000000a;flex:1 1;min-width:0;padding:0 1rem 1rem}.admin-detail-layout.horizontal .table-column,.admin-detail-layout.vertical .table-column{max-height:calc(100vh - 22rem);overflow:auto}.table-actions{background:#fff;border-bottom:1px solid #e5e7eb;gap:.75rem;justify-content:space-between;margin-bottom:.75rem;padding:.65rem 0;position:sticky;top:0;z-index:2}.table-actions,.table-actions-group{align-items:center;display:flex;flex-wrap:wrap}.table-actions-group{gap:.6rem}.table-actions-group.right{margin-left:auto}.cell-wrap{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.edit-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:0;transition:color .2s}.edit-btn:hover{color:#111827}.timestamp-link{background:#0000;border:none;color:#0369a1;cursor:pointer;font:inherit;padding:0;text-align:left;text-decoration:underline}.timestamp-link:hover{color:#0c4a6e}.timestamp-link.disabled{color:#6b7280;cursor:default;text-decoration:none}.admin-wrapper textarea{background:#fefefe;border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.5rem;resize:vertical;width:100%}.edit-box{display:flex;flex-direction:column;gap:4px}.save-btn{align-self:flex-start;background:#4caf50;border:none;color:#fff;cursor:pointer;font-size:.9rem;padding:4px 8px}.add-row-btn,.notify-button{background:var(--btn-primary-bg);border:1px solid var(--btn-primary-border);border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;padding:.5rem .85rem;transition:background .2s,transform .12s ease,box-shadow .15s ease,border-color .2s}.add-row-btn:disabled,.notify-button:disabled{background:#cbd5e1;border-color:#94a3b8;box-shadow:none;color:#475569;cursor:not-allowed;transform:none}.add-row-btn:hover:not(:disabled),.notify-button:hover:not(:disabled){background:var(--btn-primary-bg-hover);box-shadow:var(--btn-shadow);transform:translateY(-1px)}.add-row-btn:focus-visible,.notify-button:focus-visible,.pager button:focus-visible,.stats-tab-btn:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}@media (max-width:1024px){.video-preview{max-width:100%}.admin-detail-layout.horizontal,.admin-detail-layout.vertical{flex-direction:column}.admin-detail-layout.horizontal .video-column,.admin-detail-layout.vertical .video-column{max-width:100%;min-width:0;position:static}.admin-detail-layout.horizontal .table-column,.admin-detail-layout.vertical .table-column{max-height:none;overflow:visible}}.admin-actions-bar{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.9rem;padding:.55rem .65rem}.main-admin-toolbar{align-items:flex-start;gap:.75rem;justify-content:space-between}.admin-actions-left{display:flex;flex:1 1 auto;flex-direction:column;gap:.45rem;min-width:0}.admin-actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.grouped-toggle{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:.3rem}.grouped-toggle .notify-button{margin:0}.study-filter-toggle .notify-button{font-size:.84rem;min-width:5.8rem;padding:.35rem .65rem}.admin-actions-right{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto}.notify-button.secondary{background:var(--btn-secondary-bg);border-color:var(--btn-secondary-border)}.notify-button.secondary:hover{background:var(--btn-secondary-bg-hover)}.add-row-btn{background:linear-gradient(135deg,#0f766e,#0d9488);border-color:#115e59}.add-row-btn:hover:not(:disabled){background:linear-gradient(135deg,#0d9488,#0f766e)}.stats-launch-button{align-items:center;background:linear-gradient(135deg,#0f766e,#0d9488);border-color:#115e59;box-shadow:0 1px 3px #0f766e47;display:inline-flex;gap:.45rem}.stats-launch-button:hover:not(:disabled){background:linear-gradient(135deg,#0d9488,#0f766e)}.csv-save-button{align-items:center;background:var(--btn-secondary-bg);border-color:var(--btn-secondary-border);display:inline-flex;gap:.45rem}.csv-save-button:hover:not(:disabled){background:var(--btn-secondary-bg-hover)}.row-stats-button{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe;box-shadow:none;color:#1d4ed8;font-size:.82rem;padding:.38rem .65rem;white-space:nowrap}.row-stats-button:hover:not(:disabled){background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#93c5fd;color:#1e40af}.session-command-bar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;gap:.85rem;justify-content:space-between;margin:.35rem 0 1rem;padding:.65rem}.session-command-actions,.session-command-bar{align-items:center;display:flex;flex-wrap:wrap}.session-command-actions{gap:.6rem}.history-row{background:#f3f4f6;border-left:3px solid #cbd5e1;opacity:.65}.history-row td{box-sizing:border-box;padding-left:3rem}.history-no-indent td{padding-left:1rem}.history-group{border-top:1px dashed #d1d5db}.history-group-start{border-left:none}.history-badge{background:#e5e7eb;border-radius:10px;color:#374151;display:inline-block;font-size:.7rem;margin-left:8px;padding:2px 6px;vertical-align:middle}.history-timestamp{color:#6b7280;display:block;font-size:.7rem;margin-top:4px}.cell-wrap.readonly{gap:.25rem}.child-row td{background:inherit;padding:12px 16px 12px 120px}.child-row-content{display:flex;flex-wrap:wrap;gap:16px}.child-edit,.child-field{align-items:center;display:flex;gap:8px}.row-actions{align-items:center;display:flex;gap:.35rem}.row-actions .icon-button{border-radius:6px;padding:4px 8px}.row-actions .icon-button.save{background:#15803d;color:#fff}.row-actions .icon-button.secondary{background:#cbd5e1;color:#334155}.view-toggle{align-items:center;display:flex;gap:.5rem}.link-button{background:none;border:none;color:#1d4ed8;cursor:pointer;font:inherit;padding:0;text-decoration:underline}.link-button:hover{color:#1e3a8a}.study-summary{color:#374151;display:flex;font-size:.95rem;gap:1rem;margin:.5rem 0 1rem}.study-summary span{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:.25rem .5rem}.study-badge{background:#e0f2fe;border:1px solid #bae6fd;border-radius:999px;color:#0b5ed7;display:inline-block;font-size:.8rem;padding:2px 8px}.email-metrics{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;display:inline-flex;gap:1rem;margin:0;padding:.5rem .75rem}.email-metrics.compact{margin-left:auto}.email-metrics .metric{display:flex;flex-direction:column;min-width:140px}.email-metrics .label{color:#6b7280;font-size:.8rem}.email-metrics .value{color:#111827;font-weight:600}.stats-modal-backdrop{align-items:center;background:#11182759;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1200}.stats-modal{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 30px #0003;max-height:85vh;overflow:auto;padding:1rem;width:min(860px,100%)}.stats-modal-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.stats-modal-header h3{color:#111827;font-size:1.1rem;margin:0}.stats-meta{color:#374151;flex-wrap:wrap;font-size:.9rem;gap:1rem}.stats-meta,.stats-tab-bar{display:flex;margin-bottom:.75rem}.stats-tab-bar{gap:.5rem}.stats-tab-btn{background:#eef2ff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.9rem;padding:.4rem .8rem}.stats-tab-btn.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#1e40af;color:#fff}.stats-table{border-collapse:collapse;width:100%}.stats-table td,.stats-table th{border-bottom:1px solid #e5e7eb;padding:.6rem .5rem;text-align:left;vertical-align:top}.stats-table th{background:#f3f4f6;color:#374151;font-size:.78rem;text-transform:uppercase}.stats-section-row td{border-bottom:1px solid #d1d5db;border-top:2px solid #d1d5db;font-size:.74rem;font-weight:700;letter-spacing:.02em;padding-bottom:.5rem;padding-top:.5rem;text-transform:uppercase}.stats-table tbody .stats-section-row:first-child td{border-top:0}.stats-section-row.fidelity td{background:#eff6ff;color:#1e40af}.stats-section-row.strategy td{background:#ecfdf5;color:#065f46}.stats-section-row.child td{background:#fff7ed;color:#9a3412}.stats-graph-wrap{display:flex;flex-direction:column;gap:.8rem}.stats-legend{display:flex;flex-wrap:wrap;gap:1rem}.legend-item{align-items:center;color:#374151;display:inline-flex;font-size:.88rem;gap:.45rem}.legend-swatch{border-radius:3px;display:inline-block;height:3px;width:16px}.legend-swatch.parent{background:#2563eb}.legend-swatch.child{background:#10b981}.stats-chart{background:#fff;border:1px solid #e5e7eb;border-radius:10px;height:auto;width:100%}.stats-session-table td,.stats-session-table th{font-size:.82rem}.stats-row-active td{background:#fef3c7;border-bottom-color:#f59e0b;font-weight:600}.stats-edits-wrap{overflow-x:auto}.stats-edits-table td,.stats-edits-table th{font-size:.82rem;white-space:nowrap}@media (max-width:768px){.admin-table,.session-table{font-size:.75rem}.session-command-bar{align-items:stretch;flex-direction:column}.admin-actions-left,.grouped-toggle{width:100%}.study-filter-toggle .notify-button{min-width:0}.admin-actions-right,.email-metrics.compact,.table-actions-group.right{margin-left:0}}header{margin-bottom:20px;text-align:center}.app-launch-screen{background:radial-gradient(circle at 20% 20%,#673eb01f,#0000 45%),radial-gradient(circle at 80% 10%,#ff9c391f,#0000 42%),#f7f7fb;display:grid;min-height:100dvh;place-items:center;width:100%}.app-launch-card{grid-gap:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffdb;border-radius:22px;box-shadow:0 14px 42px #1618281f;display:grid;gap:14px;justify-items:center;padding:26px 20px 22px;width:min(320px,88vw)}.app-launch-logo{height:auto;max-width:62%;width:138px}.app-launch-text{color:#4a4f61;font-size:.96rem;font-weight:600;margin:0}.app-launch-spinner{animation:appLaunchSpin .9s linear infinite;border:3px solid #673eb038;border-radius:50%;border-top-color:#673eb0;height:30px;width:30px}@keyframes appLaunchSpin{to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.b336cf76.css.map*/