*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;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}.app{display:flex;flex-direction:column;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 1rem;width:50px}.app-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:3px solid #00a9e0;box-shadow:0 2px 8px #0000001a;color:#1e3a5f;display:flex;justify-content:space-between;padding:1.5rem 0}.header-title{left:calc(280px + 2rem);position:absolute}.logo-button{align-items:center;background:none;border:none;cursor:pointer;display:flex;padding:0 0 0 2rem;transition:transform .2s ease,opacity .2s ease}.logo-button:hover{opacity:.9;transform:scale(1.05)}.logo-button:active{transform:scale(.98)}.app-logo{display:block;height:30px;object-fit:contain;width:auto}.app-header h1{word-wrap:break-word;color:#667eea;font-size:1.4rem;font-weight:600;letter-spacing:.05em;margin:0;max-width:calc(100vw - 730px - 4rem);overflow-wrap:break-word;text-transform:uppercase;white-space:normal}.header-right{gap:1rem;padding-right:2rem}.header-right,.user-info{align-items:center;display:flex}.user-info{background:#1e3a5f0d;border-radius:20px;gap:.5rem;padding:.5rem 1rem}.username{color:#1e3a5f;font-size:.95rem;font-weight:600}.admin-badge{background:#00a9e0;border-radius:10px;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;text-transform:uppercase}.progress-indicator{background:#1e3a5f0d;border-radius:20px;color:#1e3a5f;font-size:.9rem;font-weight:500;padding:.5rem 1rem}.admin-icon-btn,.dashboard-icon-btn,.logout-btn,.settings-icon-btn{align-items:center;background:#1e3a5f1a;border:1px solid #1e3a5f33;border-radius:8px;cursor:pointer;display:flex;justify-content:center;margin-left:.5rem;padding:.5rem;transition:all .2s}.admin-icon-btn:hover,.dashboard-icon-btn:hover,.logout-btn:hover,.settings-icon-btn:hover{background:#00a9e0;border-color:#00a9e0;transform:scale(1.1)}.admin-icon-btn:hover .admin-icon,.dashboard-icon-btn:hover .dashboard-icon,.logout-btn:hover .logout-icon,.settings-icon-btn:hover .settings-icon{stroke:#fff}.admin-icon,.dashboard-icon,.logout-icon,.settings-icon{stroke-linecap:round;stroke-linejoin:round;stroke:#1e3a5f;height:24px;width:24px}.app-container{display:flex;flex:1 1;overflow:hidden}.loading-container{align-items:center;color:#667eea;display:flex;font-size:1.2rem;height:100vh;justify-content:center}@media (max-width:768px){.app-header{align-items:flex-start;gap:1rem}.app-container,.app-header{flex-direction:column}}.sidebar{background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;min-width:60px;overflow-y:auto;position:relative;transition:width .3s ease}.sidebar-header{align-items:center;background:#f9f9f9;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;min-height:60px;padding:1.5rem}.sidebar-header h2{color:#333;font-size:1.2rem;font-weight:600;margin:0}.collapse-btn{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:background .2s ease}.collapse-btn:hover{background:#0000000d}.collapse-btn svg{color:#666;height:20px;width:20px}.resize-handle{background:#0000;bottom:0;cursor:ew-resize;position:absolute;right:0;top:0;transition:background .2s ease;width:5px}.resize-handle:hover{background:#667eea}.sidebar.collapsed{overflow:visible}.collapsed-domains{display:flex;flex-direction:column;gap:.5rem;padding:.5rem}.domain-item-collapsed{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;height:44px;justify-content:center;position:relative;transition:all .2s ease;width:44px}.domain-item-collapsed:hover{background:#f5f5f5;border-color:#667eea}.domain-item-collapsed.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.domain-item-collapsed.complete{border-color:#4caf50}.check-dot{color:#4caf50;font-size:1.5rem;line-height:1;position:absolute;right:2px;top:2px}.domain-item-collapsed.active .check-dot{color:#fff}.sidebar-nav{display:flex;flex-direction:column;padding:.5rem}.domain-item{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;font-size:.95rem;justify-content:space-between;margin-bottom:.5rem;padding:.75rem 1rem;text-align:left;transition:all .2s ease}.domain-item:hover{background:#f5f5f5;border-color:#667eea}.domain-item.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.domain-item.active.complete,.domain-item.complete{border-color:#4caf50}.domain-info{display:flex;flex:1 1;flex-direction:column;gap:.3rem}.domain-name{font-weight:600}.progress-container{align-items:center;display:flex;gap:.5rem}.domain-progress{font-size:.85rem;min-width:45px;opacity:.8}.progress-bar-wrapper{background:#0000001a;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.domain-item.active .progress-bar-wrapper{background:#ffffff4d}.progress-bar-fill{background:#81c78499;border-radius:3px;box-shadow:0 1px 3px #4caf5033;height:100%;transition:width .3s ease}.domain-item.active .progress-bar-fill,.progress-bar-fill{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.domain-item.active .progress-bar-fill{background:#fffc}.domain-item.active .domain-progress{opacity:.9}.check-icon{color:#4caf50;font-size:1.2rem;font-weight:700}.domain-item.active .check-icon{color:#fff}@media (max-width:768px){.sidebar{border-bottom:1px solid #e0e0e0;border-right:none;max-height:200px;width:100%!important}.sidebar-nav{flex-direction:row;overflow-x:auto;padding:.5rem}.domain-item{min-width:150px}.resize-handle{display:none}.sidebar.collapsed{width:100%!important}}.survey-content{background:#f9f9f9;display:flex;flex:1 1;flex-direction:column;overflow-y:auto}.content-header{padding:2rem 2rem 1rem}.content-header h2{color:#333;font-size:2rem;margin-bottom:.5rem}.domain-description{color:#666;font-size:1rem}.questions-container{position:relative}.next-unanswered-btn.floating{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;box-shadow:0 4px 20px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.875rem 1.25rem;position:absolute;right:-220px;top:0;transition:all .3s ease;white-space:nowrap;z-index:10}.next-unanswered-btn.floating:hover{box-shadow:0 8px 30px #667eea80;transform:translateY(-4px) scale(1.05)}.next-unanswered-btn.floating svg{height:20px;width:20px}.highlight-question{animation:highlight-pulse 2s ease-in-out}@keyframes highlight-pulse{0%,to{box-shadow:0 2px 8px #0000001a;transform:scale(1)}50%{box-shadow:0 4px 20px #667eea66;transform:scale(1.02)}}.questions-container{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;max-width:1400px;padding:2rem;width:100%}@media (max-width:1200px){.questions-container{padding:1.5rem}}@media (max-width:768px){.questions-container,.survey-content{padding:1rem}.content-header{padding:1.5rem 1rem .5rem}.content-header h2{font-size:1.5rem}}.question-card{background:#fff;border-left:4px solid #0000;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:1.5rem;position:relative;transition:transform .2s ease,box-shadow .2s ease}.question-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.question-card.unanswered{border-left-color:#ff9800}.question-card.unanswered:before{background:#0000;border-radius:3px;color:#ff9800;content:"Incomplete";font-size:.65rem;font-style:italic;font-weight:700;left:-60px;letter-spacing:1px;padding:.25rem .5rem;position:absolute;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:center;white-space:nowrap}.question-header{align-items:flex-start;display:flex;gap:1rem;margin-bottom:1.5rem}.question-text{color:#1e3a5f;flex:1 1;font-size:1.1rem;font-weight:500;line-height:1.6}.info-icon-btn{align-items:center;background:linear-gradient(135deg,#ff9a3c,#ff6b35);border:none;border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.info-icon-btn:hover{box-shadow:0 4px 12px #ff6b3580;transform:scale(1.1)}.info-icon-btn svg{stroke:#fff;stroke-width:2.5;height:18px;width:18px}.rating-scale{display:flex;flex-wrap:wrap;gap:.75rem}.rating-button{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#f5f5f599;border:1px solid #ffffff4d;border-radius:8px;box-shadow:0 2px 8px #0000000d;color:#555;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;min-width:100px;padding:.875rem 1rem;transition:all .2s ease}.rating-button:hover{background:#ebebeb;border-color:currentColor;transform:translateY(-1px)}.rating-button.selected{color:#fff;font-weight:600;transform:scale(1.05)}.rating-button:first-child.selected{background:linear-gradient(135deg,#757575e6,#616161e6);box-shadow:0 4px 16px #00000026}.rating-button:nth-child(2).selected{background:linear-gradient(135deg,#ef5350e6,#e53935e6);box-shadow:0 4px 16px #ef53504d}.rating-button:nth-child(3).selected{background:linear-gradient(135deg,#ff9800e6,#f57c00e6);box-shadow:0 4px 16px #ff98004d}.rating-button:nth-child(4).selected{background:linear-gradient(135deg,#ffc107e6,#ffa000e6);box-shadow:0 4px 16px #ffc1074d}.rating-button:nth-child(5).selected{background:linear-gradient(135deg,#4caf50e6,#43a047e6);box-shadow:0 4px 16px #4caf504d}.rating-label{display:block;text-align:center}.skip-label{font-style:italic}.comment-section{border-top:1px solid #e0e0e0;margin-top:1.5rem;padding-top:1.5rem}.comment-label{color:#555;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.comment-input{border:2px solid #e0e0e0;border-radius:6px;font-family:inherit;font-size:.95rem;min-height:60px;padding:.75rem;resize:vertical;transition:border-color .2s ease;width:100%}.comment-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.comment-input::placeholder{color:#999;font-style:italic}.insights-overlay{animation:fadeIn .2s ease;background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.insights-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;height:85vh;left:50%;max-height:85vh;max-width:900px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:95%;z-index:1001}.insights-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;justify-content:space-between;padding:.75rem 1.25rem}.insights-header h3{color:#fff;font-size:1.1rem;margin:0;pointer-events:none}.insights-header-actions{align-items:center;display:flex;gap:.5rem}.copy-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:background .2s ease;width:28px}.copy-btn:hover{background:#fff3}.copy-btn svg{height:16px;width:16px}.insights-close{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.75rem;height:28px;justify-content:center;transition:background .2s ease;width:28px}.insights-close:hover{background:#fff3}.insights-content{flex:1 1;overflow-y:auto;padding:2rem}.insights-loading{padding:3rem 1rem;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 1rem;width:50px}.insights-loading p{color:#666;font-size:1rem}.insights-error{padding:2rem 1rem;text-align:center}.insights-error p{color:#d32f2f;font-size:1rem;margin-bottom:1rem}.retry-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s ease}.retry-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.insights-text{color:#333;line-height:1.8}.insights-text p{margin-bottom:1rem}.insights-text b,.insights-text strong{font-size:1.05em}.insights-text * strong,.insights-text b,.insights-text div strong,.insights-text li strong,.insights-text p strong,.insights-text strong{color:#5b6fd8!important;font-weight:700!important}.insights-text em{color:#555;font-style:italic}.insights-text h1,.insights-text h2,.insights-text h3,.insights-text h4{word-wrap:break-word;color:#1e3a5f;font-weight:700;line-height:1.4;margin-bottom:.75rem;margin-top:1.5rem;overflow-wrap:break-word;white-space:normal}.insights-text h1{border-bottom:2px solid #667eea;font-size:1.5rem;padding-bottom:.5rem}.insights-text h2{border-bottom:1px solid #e0e0e0;font-size:1.3rem;padding-bottom:.4rem}.insights-text h3{font-size:1.15rem}.insights-text h4{font-size:1.05rem}.insights-text ol,.insights-text ul{margin-bottom:1rem;padding-left:2rem}.insights-text ul{list-style-type:disc}.insights-text ol{list-style-type:decimal}.insights-text ol>li{line-height:1.6;margin-bottom:2rem}.insights-text ol>li::marker{color:#5b6fd8;font-size:1.05em;font-weight:700}.insights-text li{line-height:1.6;margin-bottom:.5rem}.insights-text li>ol,.insights-text li>ul{margin-bottom:.5rem;margin-top:.5rem}.insights-text code{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:3px;color:#e91e63;font-family:Monaco,Courier New,monospace;font-size:.9em;padding:.2rem .4rem}.insights-text pre{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;margin-bottom:1rem;overflow-x:auto;padding:1rem}.insights-text pre code{background:#0000;border:none;color:#333;font-size:.9rem;padding:0}.insights-text blockquote{background:#f9f9f9;border-left:4px solid #667eea;border-radius:4px;color:#555;font-style:italic;margin:1rem 0;padding:.75rem 1rem}.insights-text a{border-bottom:1px solid #0000;color:#667eea;text-decoration:none;transition:border-color .2s ease}.insights-text a:hover{border-bottom-color:#667eea}.insights-text hr{border:none;border-top:2px solid #e0e0e0;margin:1.5rem 0}.insights-text table{border-collapse:collapse;margin-bottom:1rem;margin-left:2rem;width:calc(100% - 2rem)}.insights-text li table{margin-left:0;margin-top:.5rem;width:100%}.insights-text td,.insights-text th{border:1px solid #e0e0e0;padding:.75rem;text-align:left}.insights-text th{background:#f5f5f5;color:#1e3a5f;font-weight:600}.insights-text tr:nth-child(2n){background:#fafafa}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.question-card{padding:1rem}.rating-scale{flex-direction:column}.rating-button{min-width:auto;width:100%}.comment-section{margin-top:1rem;padding-top:1rem}.insights-modal{max-height:90vh;width:95%}.insights-content{padding:1.5rem}}.subcategory-nav{background:#fff;border-bottom:2px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;padding:1rem 2rem}.subcategory-scroll-container{display:flex;gap:1rem;overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem;scrollbar-color:#667eea #f0f0f0;scrollbar-width:thin}.subcategory-scroll-container::-webkit-scrollbar{height:8px}.subcategory-scroll-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.subcategory-scroll-container::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.subcategory-scroll-container::-webkit-scrollbar-thumb:hover{background:#5568d3}.subcategory-item{align-items:center;background:#f5f5f5;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:.5rem;min-width:140px;padding:.875rem 1.5rem;position:relative;transition:all .2s ease}.subcategory-item:hover{background:#ebebeb;border-color:#667eea;transform:translateY(-2px)}.subcategory-item.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.subcategory-item.active.complete,.subcategory-item.complete{border-color:#4caf50}.subcategory-name{font-size:.95rem;font-weight:600;text-align:center;white-space:nowrap}.subcategory-progress{font-size:.85rem;opacity:.8}.subcategory-item.active .subcategory-progress{opacity:.9}.subcategory-check{color:#4caf50;font-size:1rem;font-weight:700;position:absolute;right:.25rem;top:.25rem}.subcategory-item.active .subcategory-check{color:#fff}@media (max-width:768px){.subcategory-item,.subcategory-nav{padding:.75rem 1rem}.subcategory-item{min-width:120px}.subcategory-name{font-size:.85rem}}.settings-overlay{animation:fadeIn .2s ease;background:#00000080;left:0;z-index:2000}.settings-overlay,.settings-panel{bottom:0;position:fixed;right:0;top:0}.settings-panel{animation:slideInRight .3s ease;background:#fff;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;max-width:90vw;width:450px;z-index:2001}.settings-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #e0e0e0;color:#fff;display:flex;justify-content:space-between;padding:1.5rem 2rem}.settings-header h2{font-size:1.5rem;margin:0}.settings-close{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:2.5rem;height:40px;justify-content:center;line-height:1;padding:0;transition:opacity .2s ease;width:40px}.settings-close:hover{opacity:.8}.settings-content{flex:1 1;overflow-y:auto;padding:2rem}.settings-section{margin-bottom:2rem}.settings-section h3{border-bottom:2px solid #e0e0e0;color:#333;font-size:1.1rem;margin-bottom:1rem;padding-bottom:.5rem}.settings-item{margin-bottom:1.5rem}.settings-item label{color:#555;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.session-id-display{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;color:#666;font-family:monospace;font-size:.85rem;padding:.75rem;word-break:break-all}.title-input{border:2px solid #e0e0e0;border-radius:6px;font-family:inherit;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.title-input:focus{border-color:#00a9e0;outline:none}.api-key-status{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;gap:.75rem;margin-bottom:.75rem;padding:.75rem}.status-badge{border-radius:12px;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.status-badge.configured{background:#e8f5e9;color:#2e7d32}.masked-key{background:#fff;border:1px solid #e0e0e0;border-radius:4px;color:#666;font-family:Courier New,monospace;font-size:.9rem;padding:.25rem .5rem}.settings-description a{color:#667eea;font-weight:500;text-decoration:none}.settings-description a:hover{text-decoration:underline}.prompt-template-input{border:2px solid #e0e0e0;border-radius:6px;font-family:Courier New,monospace;font-size:.95rem;line-height:1.6;min-height:300px;padding:.875rem;resize:vertical;transition:border-color .2s ease;width:100%}.prompt-template-input:focus{border-color:#00a9e0;outline:none}.prompt-template-input::placeholder{color:#999;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.settings-description code{background:#f5f5f5;border-radius:3px;color:#667eea;font-family:Courier New,monospace;font-size:.9em;padding:.2rem .4rem}.settings-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;justify-content:center;padding:.875rem 1.25rem;transition:all .2s ease;width:100%}.settings-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.settings-btn-primary:hover{opacity:.9}.settings-btn-primary:disabled{cursor:not-allowed;opacity:.5}.settings-btn-secondary{background:#f5f5f5;border:2px solid #e0e0e0;color:#555}.settings-btn-secondary:hover{background:#ebebeb;border-color:#667eea}.settings-btn-danger{background:#f44336;color:#fff}.settings-btn-danger:hover{background:#d32f2f}.upload-label{width:100%}.upload-status{border-radius:6px;font-size:.9rem;font-weight:500;margin-top:1rem;padding:.75rem}.upload-status.success{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.upload-status.error{background:#ffebee;border:1px solid #f44336;color:#c62828}.btn-icon{stroke-linecap:round;stroke-linejoin:round;height:20px;width:20px}.settings-description{color:#666;font-size:.85rem;font-style:italic;margin-top:.5rem}.confirm-reset{background:#fff3e0;border:2px solid #ff9800;border-radius:6px;padding:1rem}.warning-text{color:#e65100;font-weight:600;margin:0 0 1rem}.confirm-buttons{display:flex;gap:.75rem}.confirm-buttons .settings-btn{flex:1 1}.about-text{color:#666;font-size:.95rem;line-height:1.6}.about-text strong{color:#333;font-size:1rem}.user-sessions-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.user-session-item{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;padding:1rem;transition:all .2s}.user-session-item:hover{background:#f0f2f5;border-color:#00a9e0;box-shadow:0 2px 4px #00a9e01a}.session-info{display:flex;flex:1 1;flex-direction:column;gap:.5rem}.session-username{align-items:center;color:#1e3a5f;display:flex;font-size:1rem;gap:.5rem}.admin-badge-small{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:.125rem .5rem;text-transform:uppercase}.session-details{color:#666;display:flex;font-size:.85rem;gap:1rem}.session-completion{color:#00a9e0;font-weight:500}.session-date{color:#999}.download-btn-small{font-size:.85rem;padding:.5rem 1rem;white-space:nowrap}.loading-sessions,.no-sessions{background:#f8f9fa;border-radius:8px;color:#666;margin-top:1rem;padding:1.5rem;text-align:center}@media (max-width:768px){.user-session-item{align-items:flex-start;flex-direction:column;gap:1rem}.download-btn-small{justify-content:center;width:100%}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@media (max-width:768px){.settings-panel{max-width:100vw;width:100%}.settings-content{padding:1.5rem}.settings-header{padding:1rem 1.5rem}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-box{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:450px;padding:3rem;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-logo{height:auto;margin-bottom:1.5rem;width:180px}.login-header h1{color:#333;font-size:1.75rem;margin:0 0 .5rem}.login-header p{color:#666;font-size:.95rem;margin:0}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-error{background:#ffebee;border:1px solid #f44336;border-radius:6px;color:#c62828;font-size:.9rem;padding:.875rem;text-align:center}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#333;font-size:.95rem;font-weight:600}.form-group input{border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;padding:.875rem;transition:border-color .2s ease}.form-group input:focus{border-color:#667eea;outline:none}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.login-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:opacity .2s ease}.login-btn:hover:not(:disabled){opacity:.9}.login-btn:disabled{cursor:not-allowed;opacity:.6}.login-footer{border-top:1px solid #e0e0e0;margin-top:2rem;padding-top:1.5rem;text-align:center}.login-footer p{color:#666;font-size:.85rem;margin:0}@media (max-width:768px){.login-box{padding:2rem}.login-header h1{font-size:1.5rem}}.scroll-to-top{align-items:center;animation:fadeIn .3s ease-in-out;background:linear-gradient(135deg,#00a9e0,#0088b8);border:none;border-radius:50%;bottom:2rem;box-shadow:0 4px 12px #00a9e066;cursor:pointer;display:flex;height:50px;justify-content:center;position:fixed;right:2rem;transition:all .3s ease;width:50px;z-index:1000}.scroll-to-top:hover{background:linear-gradient(135deg,#0088b8,#006a91);box-shadow:0 6px 16px #00a9e099;transform:translateY(-5px)}.scroll-to-top:active{transform:translateY(-2px)}.scroll-to-top svg{stroke:#fff;stroke-linecap:round;stroke-linejoin:round;height:24px;width:24px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.scroll-to-top{bottom:1.5rem;height:45px;right:1.5rem;width:45px}.scroll-to-top svg{height:20px;width:20px}}
/*# sourceMappingURL=main.58642ca3.css.map*/