@charset "UTF-8";body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--popover:#020817;--popover-foreground:#f8fafc;--card:#020817;--card-foreground:#f8fafc;--primary:#03335e;--secondary:#fdaf08;--secondary-foreground:#0f172a;--accent:#1e293b;--accent-foreground:#f8fafc;--destructive:#7f1d1d;--destructive-foreground:#f8fafc;--ring:#cbd5e1;--font-family:"Space Mono",monospace}*,:after,:before{border:0 solid #1e293b;border:0 solid var(--border);box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#020817;background-color:var(--background);color:#f8fafc;color:var(--foreground);font-family:Space Mono,monospace;font-family:var(--font-family);height:100vh;line-height:1.5;overflow:hidden;width:100vw}#root,.App{height:100%;width:100%}.App{display:flex}.hidden{display:none!important}button,input,select,textarea{background-color:#0000;border:1px solid #1e293b;border:1px solid var(--input);border-radius:.5rem;border-radius:var(--radius);color:inherit;font-family:inherit;font-size:inherit;line-height:inherit;padding:.5rem .75rem}button{align-items:center;cursor:pointer;display:inline-flex;font-weight:500;justify-content:center;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,opacity .15s ease-in-out;white-space:nowrap}button:focus-visible{box-shadow:0 0 0 2px #020817,0 0 0 4px #cbd5e1;box-shadow:0 0 0 2px var(--background),0 0 0 4px var(--ring);outline:2px solid #0000;outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.5}.button{background-color:#03335e;background-color:var(--primary);color:#f8fafc;color:var(--primary-foreground)}.button:hover{filter:brightness(.9)}.button-secondary{background-color:#fdaf08;background-color:var(--secondary);color:#0f172a;color:var(--secondary-foreground)}.button-secondary:hover{filter:brightness(.9)}.button-outline{background-color:#020817;background-color:var(--background);border-color:#1e293b;border-color:var(--input);color:#f8fafc;color:var(--foreground)}.button-outline:hover{background-color:#1e293b;background-color:var(--accent);color:#f8fafc;color:var(--accent-foreground)}.button-ghost{background-color:#0000;border-color:#0000;color:#f8fafc;color:var(--foreground)}.button-ghost:hover{background-color:#1e293b;background-color:var(--accent);color:#f8fafc;color:var(--accent-foreground)}.button-destructive{background-color:#7f1d1d;background-color:var(--destructive);color:#f8fafc;color:var(--destructive-foreground)}.button-destructive:hover{filter:brightness(.9)}.material-symbols-outlined{font-size:1.25rem;font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 20;vertical-align:middle}.feedback-section{background-color:#020817;background-color:var(--card);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;color:#f8fafc;color:var(--card-foreground);display:flex;flex-direction:column;gap:1rem;left:50%;min-width:350px;padding:1.5rem;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1001}.feedback-section h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.feedback-section label{color:#94a3b8;color:var(--muted-foreground);display:block;font-size:.875rem;margin-bottom:.25rem}.feedback-section input[type=number],.feedback-section textarea{background-color:#1e293b;background-color:var(--input);border-color:#1e293b;border-color:var(--border);color:#f8fafc;color:var(--foreground)}.feedback-section input[type=number]:focus,.feedback-section textarea:focus{border-color:#cbd5e1;border-color:var(--ring);box-shadow:none}.feedback-section .feedback-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.layout-content,.main-app-content{display:flex;flex-direction:column;height:100%}.main-app-content{gap:1rem;padding:1rem;position:relative}.main-app-area,.main-app-content{align-items:center;flex-grow:1;justify-content:center}.main-app-area{display:flex;max-height:calc(100% - 80px);overflow:hidden;width:100%}.stream{background-color:#000;border-radius:.5rem;border-radius:var(--radius);display:block;max-height:100%;max-width:100%;object-fit:contain}.stream.hidden{display:none}.sidebar{border-right:1px solid #2a2f31;border-right:1px solid var(--sidebar-border,#2a2f31);color:#e1e2e3;color:var(--sidebar-text,#e1e2e3);display:flex;flex-direction:column;height:100vh;overflow-x:hidden;position:relative;transition:width .2s ease-in-out;width:260px}.sidebar.collapsed{width:60px}.sidebar .collapse-button-top{align-items:center;background:#0000;border:none;border-radius:4px;color:#b4b8bb;color:var(--icon-color,#b4b8bb);cursor:pointer;display:flex;justify-content:center;padding:8px;position:absolute;right:10px;top:10px;z-index:10}.sidebar .collapse-button-top:hover{background-color:#ffffff1a;background-color:var(--hover-bg,#ffffff1a);color:#fff;color:var(--hover-color,#fff)}.sidebar .collapse-button-top svg{height:16px;width:16px}.sidebar .sidebar-header{align-items:center;display:flex;height:60px;padding:16px}.sidebar .sidebar-header .logo-container{overflow:hidden;padding-right:30px;width:100%}.sidebar .sidebar-header .logo-container .logo-full{word-wrap:break-word;display:block;font-size:16px;font-weight:600;line-height:1.2;white-space:normal}.sidebar.collapsed .sidebar .sidebar-header .logo-container .logo-full{display:none}.sidebar .sidebar-header .logo-container .logo-mini{display:none;font-size:14px;font-weight:600;line-height:1.2}.sidebar.collapsed .sidebar .sidebar-header .logo-container .logo-mini{word-wrap:break-word;display:block;white-space:normal}.sidebar .sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 0}.sidebar .sidebar-nav ul{list-style-type:none;margin:0;padding:0}.sidebar .sidebar-nav ul li{margin-bottom:4px}.sidebar .sidebar-nav ul li .nav-item{align-items:center;border-radius:4px;color:#e1e2e3;color:var(--sidebar-text,#e1e2e3);display:flex;padding:10px 16px;text-decoration:none;transition:background-color .2s}.sidebar .sidebar-nav ul li .nav-item:hover{background-color:#ffffff1a;background-color:var(--item-hover-bg,#ffffff1a)}.sidebar .sidebar-nav ul li .nav-item .nav-icon{align-items:center;display:flex;height:24px;justify-content:center;margin-right:12px;width:24px}.sidebar .sidebar-nav ul li .nav-item .nav-icon svg{height:20px;width:20px}.sidebar .sidebar-nav ul li .nav-item .nav-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar.collapsed .sidebar .sidebar-nav ul li .nav-item .nav-text{display:none}.sidebar .sidebar-footer{border-top:1px solid #2a2f31;border-top:1px solid var(--sidebar-border,#2a2f31);padding:16px}.sidebar.collapsed .collapse-button-top{right:10px}.button-ghost{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;justify-content:center}.nav-item{position:relative}.nav-item.active{background-color:#60a5fa33;font-weight:600}.nav-item.active:before{background-color:#60a5fa;border-radius:0 2px 2px 0;bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.nav-item.active .nav-icon{color:#60a5fa}.nav-item.active .nav-icon svg{stroke:#60a5fa;color:#60a5fa}.nav-item.active .nav-text{color:#e1e2e3;font-weight:600}.top-header{background-color:var(--background);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;min-height:4rem;padding:0 1.5rem;position:relative;width:100%;z-index:100}.top-header,.top-header-left{align-items:center;display:flex}.top-header-left{gap:.75rem}.top-header-right{align-items:center;display:flex;gap:.5rem;padding-right:.5rem}.breadcrumb .breadcrumb-list{align-items:center;color:var(--muted-foreground);display:flex;font-size:.875rem;list-style:none;margin:0;padding:0}.breadcrumb .breadcrumb-item a{color:var(--muted-foreground);font-weight:400;text-decoration:none;transition:color .2s ease-in-out}.breadcrumb .breadcrumb-item a:hover{color:#f4ac04}.breadcrumb .breadcrumb-item.current{color:#f4ac04;font-size:1rem;font-weight:500}.breadcrumb .breadcrumb-separator{color:var(--muted-foreground);margin:0 .75rem;opacity:.6}.header-button{align-items:center;background:#0000;border:1px solid #0000;border-radius:8px;color:var(--muted-foreground);cursor:pointer;display:flex;height:2.5rem;justify-content:center;min-width:2.5rem;padding:.75rem;position:relative;transition:all .2s ease}.header-button:hover{background-color:#f4ac041a;border-color:#f4ac044d;color:#f4ac04}.header-button:hover .header-button-tooltip{opacity:1;transform:translateY(-50%) translateX(-4px)}.header-button:focus{outline:2px solid #f4ac04;outline-offset:2px}.header-button:active{transform:scale(.95)}.header-button svg{stroke-width:2;height:1.25rem;width:1.25rem}.header-button .header-button-tooltip{background:var(--popover);border-radius:6px;box-shadow:0 6px 12px #00000026;color:var(--popover-foreground);font-size:12px;font-weight:500;margin-right:8px;opacity:0;padding:6px 10px;pointer-events:none;position:absolute;right:100%;top:50%;transform:translateY(-50%) translateX(-8px);transition:all .2s ease;white-space:nowrap;z-index:1000}.header-button .header-button-tooltip:after{border:5px solid #0000;border-left:5px solid var(--popover);content:"";left:100%;position:absolute;top:50%;transform:translateY(-50%)}.header-menu-container{position:relative;z-index:2000}.header-dropdown-menu{background-color:var(--popover);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:var(--popover-foreground);display:flex;flex-direction:column;min-width:180px;padding:.5rem 0;position:absolute;right:0;top:calc(100% + .5rem);z-index:2100}.header-dropdown-menu .dropdown-header{border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem;padding:.5rem 1rem}.header-dropdown-menu .dropdown-header .user-name{color:var(--foreground);font-size:.9rem;font-weight:500}.header-dropdown-menu .dropdown-header .user-role{color:#f4ac04;font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:capitalize}.header-menu-item{align-items:center;background:none;border:none;color:var(--popover-foreground);cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;padding:.5rem 1rem;text-align:left;width:100%}.header-menu-item .menu-item-icon{color:var(--muted-foreground);font-size:1rem;height:1rem;width:1rem}.header-menu-item:hover{background-color:var(--accent)}.header-menu-item:hover,.header-menu-item:hover .menu-item-icon{color:var(--accent-foreground)}.toast-container{bottom:20px;z-index:1100}.toast{align-items:center;animation:toast-slide-in .3s ease-out forwards;border-radius:6px;box-shadow:0 4px 12px #00000026;display:flex;justify-content:space-between;max-width:400px;min-width:300px;padding:12px 16px}.toast.toast-success{background-color:#10b981;color:#fff}.toast.toast-error{background-color:#ef4444;color:#fff}.toast.toast-info{background-color:#3b82f6;color:#fff}.toast .toast-content{align-items:center;display:flex;flex:1 1}.toast .toast-content .toast-message{font-size:.875rem;font-weight:500}.toast .toast-close{background:none;border:none;color:#fff;cursor:pointer;margin-left:8px;opacity:.8;padding:4px}.toast .toast-close:hover{opacity:1}@keyframes toast-slide-in{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.feedback-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:9999}.feedback-modal{animation:modalEnter .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}@keyframes modalEnter{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.feedback-header{align-items:center;display:flex;justify-content:space-between;padding:1.5rem 1.5rem 0}.feedback-header h2{color:#1f2937;color:var(--foreground,#1f2937);font-size:1.25rem;font-weight:600;margin:0}.close-button-feedback{background:none;border:none;border-radius:6px;color:#6b7280;color:var(--muted-foreground,#6b7280);cursor:pointer;padding:.5rem;transition:all .2s ease}.close-button-feedback:hover{background:#f3f4f6;background:var(--accent,#f3f4f6);color:#1f2937;color:var(--foreground,#1f2937)}.close-button-feedback:focus{outline:2px solid #f4ac04;outline-offset:2px}.feedback-description{color:#6b7280;color:var(--muted-foreground,#6b7280);font-size:.9rem;line-height:1.5;margin:.75rem 0 0;padding:0 1.5rem}.feedback-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#1f2937;display:block;font-size:.95rem;font-weight:600;letter-spacing:.01em;margin-bottom:.75rem}.dropdown-container{position:relative}.dropdown-trigger{background:#fff;border:2px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 3px #0000000d;color:#1f2937;font-size:.95rem;justify-content:space-between;padding:1rem 1.25rem;transition:all .2s ease;width:100%}.dropdown-trigger:hover{border-color:#f4ac04;box-shadow:0 4px 12px #f4ac0426;transform:translateY(-1px)}.dropdown-trigger:focus{border-color:#f4ac04;outline:2px solid #f4ac04;outline-offset:2px}.dropdown-trigger-content{align-items:center;display:flex;gap:.75rem}.dropdown-trigger-icon{color:#6b7280;flex-shrink:0}.dropdown-arrow{color:#6b7280;transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(180deg)}.dropdown-menu{animation:dropdownEnter .15s ease-out;background:#fff;border:2px solid #e5e7eb;border-radius:10px;box-shadow:0 20px 40px #00000026;left:0;margin-top:8px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}@keyframes dropdownEnter{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-item{align-items:flex-start;background:none;border:none;border-bottom:1px solid #f3f4f6;padding:1rem 1.25rem;text-align:left;transition:all .2s ease;width:100%}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:#f8fafc!important;color:#1f2937!important;transform:translateX(4px)}.dropdown-item:hover .dropdown-item-icon{color:#374151!important}.dropdown-item:hover .item-label{color:#1f2937!important}.dropdown-item:hover .item-description{color:#6b7280!important}.dropdown-item.selected{background:#f4ac041a!important;color:#f4ac04!important}.dropdown-item.selected .dropdown-item-icon,.dropdown-item.selected .item-label{color:#f4ac04!important}.dropdown-item.selected .item-description{color:#e09703!important}.dropdown-item:focus{background:#f8fafc!important;color:#1f2937!important;outline:none}.dropdown-item:focus .dropdown-item-icon{color:#374151!important}.dropdown-item:focus .item-label{color:#1f2937!important}.dropdown-item:focus .item-description{color:#6b7280!important}.dropdown-item-content{align-items:flex-start;display:flex;gap:.75rem;width:100%}.dropdown-item-icon{color:#6b7280;flex-shrink:0;margin-top:.125rem}.dropdown-item-text{flex:1 1}.item-label{color:#1f2937!important;font-size:.9rem;font-weight:500}.item-description{color:#6b7280!important;font-size:.8rem;margin-top:.25rem}.helper-text{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:.85rem;line-height:1.5;margin-top:.5rem;padding:.875rem 1rem}textarea{background:#fff;border:2px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 3px #0000000d;color:#1f2937;font-family:inherit;font-size:.95rem;line-height:1.6;min-height:140px;padding:1rem 1.25rem;resize:vertical;transition:all .2s ease;width:100%}textarea:focus{border-color:#f4ac04;box-shadow:0 4px 12px #f4ac0426;outline:2px solid #f4ac04;outline-offset:2px}textarea::placeholder{color:#9ca3af;font-style:italic}textarea:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.7}div.feedback-modal-overlay div.feedback-modal div.feedback-form div.form-group textarea#feedback-text{background:#fff!important;background-color:#fff!important;border:2px solid #e5e7eb!important;border-radius:10px!important;box-shadow:0 1px 3px #0000000d!important;color:#1f2937!important;font-family:inherit!important;font-size:.95rem!important;line-height:1.6!important;min-height:140px!important;padding:1rem 1.25rem!important;resize:vertical!important;transition:all .2s ease!important;width:100%!important}div.feedback-modal-overlay div.feedback-modal div.feedback-form div.form-group textarea#feedback-text::placeholder{color:#9ca3af!important;font-style:italic!important}div.feedback-modal-overlay div.feedback-modal div.feedback-form div.form-group textarea#feedback-text:focus{background:#fff!important;border-color:#f4ac04!important;box-shadow:0 4px 12px #f4ac0426!important;color:#1f2937!important;outline:2px solid #f4ac04!important;outline-offset:2px!important}div.feedback-modal-overlay div.feedback-modal div.feedback-form div.form-group textarea#feedback-text:hover{background:#fff!important;border-color:#f4ac04!important;color:#1f2937!important}.feedback-modal-overlay .feedback-modal .feedback-form .form-group textarea,textarea[id=feedback-text]{background:#fff!important;background-color:#fff!important;color:#1f2937!important}html body div.feedback-modal-overlay div.feedback-modal form.feedback-form div.form-group textarea#feedback-text{background:#fff!important;background-color:#fff!important;border:2px solid #e5e7eb!important;color:#1f2937!important}.metadata-card{background:#fefefe;border:2px solid #f1f5f9;border-radius:12px;box-shadow:0 1px 3px #0000000d;margin-bottom:1.5rem;overflow:hidden}.metadata-toggle{align-items:center;background:#f8fafc;border:none;color:#475569;cursor:pointer;display:flex;font-size:.9rem;justify-content:space-between;padding:1rem 1.25rem;transition:all .2s ease;width:100%}.metadata-toggle:hover{background:#f1f5f9;color:#334155}.metadata-toggle:focus{outline:2px solid #f4ac04;outline-offset:-2px}.metadata-toggle .metadata-count{background:#e2e8f0;border-radius:6px;color:#64748b;font-size:.8rem;font-weight:500;padding:.25rem .5rem}.toggle-arrow{transition:transform .2s ease}.toggle-arrow.open{transform:rotate(90deg)}.metadata-content{background:#fff;border-top:1px solid #e5e7eb;padding:1rem}.metadata-item{display:flex;font-size:.8rem;gap:.5rem;margin-bottom:.5rem}.metadata-item:last-child{margin-bottom:0}.metadata-item.screenshot-item{align-items:stretch;flex-direction:column}.metadata-label{color:#6b7280;font-weight:500;min-width:100px}.metadata-value{color:#374151;word-break:break-word}.metadata-section-header{border-top:1px solid #e5e7eb;margin:1rem 0 .5rem;padding-top:.75rem}.metadata-section-header:first-child{border-top:none;margin-top:0;padding-top:0}.metadata-section-header strong{color:#1f2937;font-size:.85rem;font-weight:600;letter-spacing:.025em}.feedback-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-bottom:1rem}.cancel-button-feedback{background:#0000;border:2px solid #e5e7eb;border-radius:10px;color:#6b7280;cursor:pointer;font-size:.95rem;font-weight:500;padding:.875rem 1.75rem;transition:all .2s ease}.cancel-button-feedback:hover:not(:disabled){background:#f8fafc;border-color:#d1d5db;color:#374151;transform:translateY(-1px)}.cancel-button-feedback:focus{outline:2px solid #f4ac04;outline-offset:2px}.cancel-button-feedback:disabled{cursor:not-allowed;opacity:.5}.submit-button{align-items:center;background:#f4ac04;border:2px solid #f4ac04;border-radius:10px;box-shadow:0 2px 4px #f4ac0433;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.875rem 1.75rem;transition:all .2s ease}.submit-button:hover:not(:disabled){background:#e09703;border-color:#e09703;box-shadow:0 4px 12px #f4ac044d;transform:translateY(-1px)}.submit-button:focus{outline:2px solid #f4ac04;outline-offset:2px}.submit-button:disabled{box-shadow:none;opacity:.7;transform:none}.keyboard-hint{color:#9ca3af;color:var(--muted-foreground,#9ca3af);font-size:.75rem;text-align:center}.keyboard-hint kbd{background:#f3f4f6;background:var(--accent,#f3f4f6);border:1px solid #d1d5db;border:1px solid var(--border,#d1d5db);border-radius:4px;font-family:monospace;font-size:.7rem;margin:0 .125rem;padding:.125rem .25rem}.feedback-success-text{padding:3rem 2rem;text-align:center}.feedback-success-text .success-icon{align-items:center;background:#10b981;border-radius:50%;color:#fff;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.feedback-success-text .success-icon svg{height:48px;width:48px}.feedback-success-text h2{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .75rem}.feedback-success-text p{color:#6b7280;color:var(--muted-foreground,#6b7280);font-size:.9rem;line-height:1.5;margin:0}@media(max-width:640px){.feedback-modal{border-radius:12px 12px 0 0;margin:0;max-height:95vh}.feedback-actions{flex-direction:column-reverse}.feedback-actions .cancel-button,.feedback-actions .submit-button{width:100%}}.feedback-modal{background:#fff!important}.feedback-modal .feedback-header h2,.feedback-modal .item-label{color:#1f2937}.feedback-modal .metadata-value{color:#374151}.feedback-modal .dropdown-trigger{background:#fff!important;border:1px solid #d1d5db!important;color:#1f2937!important}.feedback-modal .dropdown-menu{background:#fff!important}.feedback-modal .dropdown-item{color:#1f2937!important}.feedback-modal .dropdown-item:hover{background:#f8fafc!important;color:#1f2937!important}.feedback-modal .dropdown-item:hover .dropdown-item-icon{color:#374151!important}.feedback-modal .dropdown-item:hover .item-label{color:#1f2937!important}.feedback-modal .dropdown-item:hover .item-description{color:#6b7280!important}.feedback-modal .dropdown-item:focus{background:#f8fafc!important;color:#1f2937!important}.feedback-modal .dropdown-item:focus .dropdown-item-icon{color:#374151!important}.feedback-modal .dropdown-item:focus .item-label{color:#1f2937!important}.feedback-modal .dropdown-item:focus .item-description{color:#6b7280!important}.feedback-modal .dropdown-item.selected{background:#f4ac041a!important;color:#f4ac04!important}.feedback-modal .dropdown-item.selected .dropdown-item-icon,.feedback-modal .dropdown-item.selected .item-label{color:#f4ac04!important}.feedback-modal .dropdown-item.selected .item-description{color:#e09703!important}.screenshot-container{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.screenshot-preview{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;max-height:200px;object-fit:contain;width:100%}.capture-screenshot,.retake-screenshot{align-items:center;align-self:flex-start;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:.5rem;padding:.5rem .75rem;transition:all .2s}.capture-screenshot:hover,.retake-screenshot:hover{background:#2563eb;box-shadow:0 2px 8px #3b82f64d;transform:translateY(-1px)}.capture-screenshot:active,.retake-screenshot:active{transform:translateY(0)}.capture-screenshot svg,.retake-screenshot svg{flex-shrink:0}.screenshot-error{align-items:flex-start;display:flex;flex-direction:column;gap:.5rem}.screenshot-error .error-text{color:#dc2626;font-size:.75rem;font-style:italic;margin-bottom:.25rem}@media(max-width:640px){.screenshot-preview{max-height:150px}.capture-screenshot,.retake-screenshot{align-self:stretch;justify-content:center}}.layout{--sidebar-width-expanded:260px;--sidebar-width-collapsed:60px;display:flex;height:100vh;overflow:hidden;width:100%}.layout .sidebar{height:100vh;left:0;position:fixed;top:0;transition:width .2s ease-in-out;width:var(--sidebar-width-expanded);z-index:100}.layout .sidebar.collapsed{width:var(--sidebar-width-collapsed)}.layout .layout-main{display:flex;flex:1 1;flex-direction:column;height:100vh;margin-left:var(--sidebar-width-expanded);overflow:hidden;transition:margin-left .2s ease-in-out,width .2s ease-in-out;width:calc(100% - var(--sidebar-width-expanded))}.layout.sidebar-collapsed .layout-main{margin-left:var(--sidebar-width-collapsed);width:calc(100% - var(--sidebar-width-collapsed))}.layout .layout-content{background-color:#fff;box-sizing:border-box;flex:1 1;overflow-y:auto;padding:20px;width:100%}.layout .top-header{align-items:center;background-color:#161718;background-color:var(--header-bg,#161718);border-bottom:1px solid #2a2f31;border-bottom:1px solid var(--header-border,#2a2f31);box-sizing:border-box;display:flex;flex-shrink:0;height:60px;justify-content:space-between;padding:0 20px;width:100%}#root,:root,body{height:100%;margin:0;overflow:hidden;padding:0;width:100%}@media(max-width:768px){.layout .sidebar{box-shadow:2px 0 8px #0003;transform:translateX(-100%)}.layout .sidebar.open{transform:translateX(0)}.layout .layout-main,.layout.sidebar-collapsed .layout-main{margin-left:0;width:100%}}.live-transcript-container{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:15px;position:relative}.live-transcript-container .empty-transcript{align-items:center;background-color:#f9f9f9;border-radius:8px;color:#555;display:flex;flex-direction:column;font-style:italic;height:100%;justify-content:center;margin:10px;padding:30px;text-align:center}.live-transcript-container .empty-transcript p{margin:10px 0}.live-transcript-container .empty-transcript .empty-hint{color:#777;font-size:.85rem;line-height:1.5;margin-top:15px;max-width:80%}.live-transcript-container .empty-transcript .status-indicator{align-items:center;border-radius:4px;display:flex;font-size:.85rem;margin-top:15px;padding:8px 12px}.live-transcript-container .empty-transcript .status-indicator .dot{border-radius:50%;display:inline-block;height:8px;margin-right:8px;width:8px}.live-transcript-container .empty-transcript .status-indicator.connected{background-color:#e8f5e9;color:#2e7d32}.live-transcript-container .empty-transcript .status-indicator.connected .dot{animation:pulse 2s infinite;background-color:#4caf50}.live-transcript-container .empty-transcript .status-indicator.disconnected{background-color:#ffebee;color:#c62828}.live-transcript-container .empty-transcript .status-indicator.disconnected .dot{background-color:#f44336}.live-transcript-container .transcript-controls{border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:15px;padding:0 5px 12px}.live-transcript-container .transcript-controls .timestamp-toggle{align-items:center;color:#555;cursor:pointer;display:flex;font-size:.85rem}.live-transcript-container .transcript-controls .timestamp-toggle input{margin-right:5px}.live-transcript-container .transcript-controls .timestamp-toggle:hover{color:#333}.live-transcript-container .transcript-messages{display:flex;flex-direction:column;gap:15px;margin-bottom:50px}.live-transcript-container .transcript-message{border-radius:10px;box-shadow:0 1px 3px #0000001a;max-width:85%;padding:12px 15px;position:relative;transition:all .3s ease}.live-transcript-container .transcript-message.new-message{animation:highlightMessage 1.2s ease}.live-transcript-container .transcript-message.bot-message{align-self:flex-start;background-color:#f0f0f0;border-left:3px solid #7986cb;color:#333}.live-transcript-container .transcript-message.bot-message .message-header{color:#555}.live-transcript-container .transcript-message.bot-message:before{border-color:#0000 #f0f0f0 #0000 #0000;border-style:solid;border-width:8px 8px 8px 0;content:"";left:-8px;position:absolute;top:10px}.live-transcript-container .transcript-message.user-message{align-self:flex-end;background-color:#0078d7;border-right:3px solid #4db6ac;color:#fff}.live-transcript-container .transcript-message.user-message .message-header{color:#ffffffe6}.live-transcript-container .transcript-message.user-message:after{border-color:#0000 #0000 #0000 #0078d7;border-style:solid;border-width:8px 0 8px 8px;content:"";position:absolute;right:-8px;top:10px}.live-transcript-container .transcript-message .message-header{display:flex;font-size:.75rem;justify-content:space-between;margin-bottom:4px}.live-transcript-container .transcript-message .message-header .speaker-name{font-weight:500}.live-transcript-container .transcript-message .message-header .message-time{opacity:.8}.live-transcript-container .transcript-message .message-content{font-size:.9rem;line-height:1.4;word-break:break-word}.live-transcript-container .speaking-indicator{align-items:center;background-color:#4caf50e6;border-radius:20px;bottom:20px;box-shadow:0 2px 8px #0003;color:#fff;display:flex;font-size:14px;gap:10px;left:50%;padding:8px 16px;position:fixed;transform:translateX(-50%);z-index:10}.live-transcript-container .dot-pulse{align-items:center;display:flex;height:10px;position:relative;width:10px}.live-transcript-container .dot-pulse__dot{background-color:#fff;border-radius:50%;height:8px;position:relative;width:8px}.live-transcript-container .dot-pulse__dot:after,.live-transcript-container .dot-pulse__dot:before{background-color:#fff;border-radius:50%;content:"";height:8px;opacity:.7;position:absolute;top:0;width:8px}.live-transcript-container .dot-pulse__dot:before{animation:pulse 1.2s ease-in-out infinite;animation-delay:0s;left:-12px}.live-transcript-container .dot-pulse__dot:after{animation:pulse 1.2s ease-in-out infinite;animation-delay:.4s;left:12px}@keyframes highlightMessage{0%{transform:scale(1)}50%{box-shadow:0 0 10px #007bff80;transform:scale(1.03)}to{box-shadow:none;transform:scale(1)}}.live-transcript-container::-webkit-scrollbar{width:6px}.live-transcript-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.live-transcript-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.live-transcript-container::-webkit-scrollbar-thumb:hover{background:#aaa}.reusable-side-panel{background:#fff;border:1px solid #e5e7eb;box-shadow:-2px 0 8px #0000001a;display:flex;flex-direction:column;height:100vh;position:fixed;top:0;transition:transform .3s ease-in-out;z-index:2001}.reusable-side-panel.position-right{right:0;transform:translateX(100%)}.reusable-side-panel.position-right.panel-open{transform:translateX(0)}.reusable-side-panel.position-left{left:0;transform:translateX(-100%)}.reusable-side-panel.position-left.panel-open{transform:translateX(0)}.reusable-side-panel .panel-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;min-height:60px;padding:1rem}.reusable-side-panel .panel-header .panel-title{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0}.reusable-side-panel .panel-header .panel-header-actions{align-items:center;display:flex;gap:.5rem}.reusable-side-panel .panel-header .panel-header-actions .close-panel-button{background:none;border:none;border-radius:.25rem;color:#6b7280;cursor:pointer;padding:.25rem;transition:all .2s ease}.reusable-side-panel .panel-header .panel-header-actions .close-panel-button:hover{background:#e5e7eb;color:#374151}.reusable-side-panel .panel-header .panel-header-actions .close-panel-button:focus{outline:2px solid #3b82f6;outline-offset:2px}.reusable-side-panel .panel-content{flex:1 1;overflow-y:auto;padding:1rem}.reusable-side-panel .panel-content::-webkit-scrollbar{width:6px}.reusable-side-panel .panel-content::-webkit-scrollbar-track{background:#f1f5f9}.reusable-side-panel .panel-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.reusable-side-panel .panel-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media(max-width:768px){.reusable-side-panel{max-width:100vw;width:100%!important}}.panel-backdrop{background:#0000004d;bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity .3s ease-in-out;z-index:999}.panel-backdrop.visible{opacity:1;pointer-events:auto}.collapsible-toolbar{display:flex;flex-direction:column;gap:8px;position:absolute;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:50}.collapsible-toolbar.position-top-right{right:20px;top:20px}.collapsible-toolbar.position-top-left{left:20px;top:20px}.collapsible-toolbar.position-bottom-right{bottom:20px;flex-direction:column-reverse;right:20px}.collapsible-toolbar.position-bottom-left{bottom:20px;flex-direction:column-reverse;left:20px}.collapsible-toolbar .toolbar-toggle{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff;background:var(--background,#fff);border:2px solid #e5e7eb;border:2px solid var(--border,#e5e7eb);border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#6b7280;color:var(--muted-foreground,#6b7280);cursor:pointer;display:flex;height:42px;justify-content:center;position:relative;transition:all .2s ease;width:42px;z-index:1001}.collapsible-toolbar .toolbar-toggle:hover{background:#f3f4f6;background:var(--accent,#f3f4f6);border-color:#374151;border-color:var(--accent-foreground,#374151);box-shadow:0 4px 12px #00000026;color:#111827;color:var(--foreground,#111827);transform:translateY(-1px)}.collapsible-toolbar .toolbar-toggle:focus{outline:2px solid #3b82f6;outline:2px solid var(--ring,#3b82f6);outline-offset:2px}.collapsible-toolbar .toolbar-toggle:active{box-shadow:0 2px 6px #0000001a;transform:translateY(0)}.collapsible-toolbar .toolbar-buttons{display:flex;flex-direction:column;gap:8px;opacity:0;pointer-events:none;transform:scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1)}.collapsible-toolbar.expanded .toolbar-buttons{opacity:1;pointer-events:auto;transform:scale(1)}.collapsible-toolbar .toolbar-button{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff;background:var(--background,#fff);border:2px solid #e5e7eb;border:2px solid var(--border,#e5e7eb);border-radius:50%;box-shadow:0 2px 6px #00000014;color:#6b7280;color:var(--muted-foreground,#6b7280);cursor:pointer;display:flex;font-size:14px;font-weight:500;height:42px;justify-content:center;position:relative;transition:all .2s ease;width:42px}.collapsible-toolbar .toolbar-button:hover{background:#f3f4f6;background:var(--accent,#f3f4f6);border-color:#374151;border-color:var(--accent-foreground,#374151);box-shadow:0 4px 10px #0000001f;color:#111827;color:var(--foreground,#111827);transform:translateY(-1px)}.collapsible-toolbar .toolbar-button:hover .button-label{opacity:1;transform:translateY(-50%) translateX(0)}.collapsible-toolbar .toolbar-button:focus{outline:2px solid #3b82f6;outline:2px solid var(--ring,#3b82f6);outline-offset:2px}.collapsible-toolbar .toolbar-button:active{box-shadow:0 2px 4px #00000014;transform:translateY(0)}.collapsible-toolbar .toolbar-button.primary{background:#f4ac04;border-color:#f4ac04;color:#fff}.collapsible-toolbar .toolbar-button.primary:hover{background:#e09703;border-color:#e09703;color:#fff}.collapsible-toolbar .toolbar-button.primary.active{background:#d4940a;border-color:#d4940a}.collapsible-toolbar .toolbar-button.active{background:#3b82f6;background:var(--primary,#3b82f6);border-color:#3b82f6;border-color:var(--primary,#3b82f6);color:#fff}.collapsible-toolbar .toolbar-button.active:hover{background:#2563eb;background:var(--primary-hover,#2563eb);border-color:#2563eb;border-color:var(--primary-hover,#2563eb);color:#fff}.collapsible-toolbar .toolbar-button.focused{outline:2px solid #3b82f6;outline:2px solid var(--ring,#3b82f6);outline-offset:2px;z-index:1}.collapsible-toolbar .toolbar-button .button-label{background:#1f2937;background:var(--popover,#1f2937);border-radius:6px;box-shadow:0 4px 6px #0000001a;color:#fff;color:var(--popover-foreground,#fff);font-size:12px;font-weight:500;margin-right:8px;opacity:0;padding:6px 12px;pointer-events:none;position:absolute;right:100%;top:50%;transform:translateY(-50%) translateX(-8px);transition:all .2s ease;white-space:nowrap;z-index:1000}.collapsible-toolbar .toolbar-button .button-label:after{border:5px solid #0000;border-left:5px solid var(--popover,#1f2937);content:"";left:100%;position:absolute;top:50%;transform:translateY(-50%)}.collapsible-toolbar .toolbar-button .button-badge{align-items:center;background:#dc2626;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;color:#fff;display:flex;font-size:11px;font-weight:600;height:20px;justify-content:center;line-height:1;position:absolute;right:-6px;top:-6px;width:20px;z-index:2}.collapsible-toolbar .toolbar-button:first-child{transition-delay:.05s}.collapsible-toolbar .toolbar-button:nth-child(2){transition-delay:.1s}.collapsible-toolbar .toolbar-button:nth-child(3){transition-delay:.15s}@media(max-width:768px){.collapsible-toolbar.position-top-left,.collapsible-toolbar.position-top-right{top:16px}.collapsible-toolbar.position-bottom-right,.collapsible-toolbar.position-top-right{right:16px}.collapsible-toolbar.position-bottom-left,.collapsible-toolbar.position-top-left{left:16px}.collapsible-toolbar.position-bottom-left,.collapsible-toolbar.position-bottom-right{bottom:16px}.collapsible-toolbar .toolbar-button,.collapsible-toolbar .toolbar-toggle{height:44px;min-width:44px;width:44px}.collapsible-toolbar .toolbar-button:hover{min-width:140px}}@media(prefers-reduced-motion:reduce){.collapsible-toolbar .button-label,.collapsible-toolbar .toolbar-button,.collapsible-toolbar .toolbar-buttons,.collapsible-toolbar .toolbar-toggle{transition:none}}@media(prefers-color-scheme:dark){.collapsible-toolbar .toolbar-button,.collapsible-toolbar .toolbar-toggle{background:#1f2937;background:var(--background,#1f2937);border-color:#374151;border-color:var(--border,#374151);color:#f9fafb;color:var(--foreground,#f9fafb)}.collapsible-toolbar .toolbar-button:hover,.collapsible-toolbar .toolbar-toggle:hover{background:#374151;background:var(--accent,#374151);border-color:#9ca3af;border-color:var(--accent-foreground,#9ca3af)}.collapsible-toolbar .toolbar-button.primary{background:#f4ac04;border-color:#f4ac04;color:#fff}.collapsible-toolbar .toolbar-button.primary:hover{background:#e09703;border-color:#e09703}}@property --volume{syntax:"length";inherit:false;initial-value:0}.disabled .mic-button:before,.mic-button.disabled:before{background:#0000}.mic-button{background-color:#be3b34;background-color:var(--accent-red,#be3b34);color:#fff;position:relative;transition:all .2s ease-in;z-index:1}.mic-button:focus{border:2px solid var(--Neutral-20);outline:2px solid #f44336;outline:2px solid var(--Red-500,#f44336)}.mic-button:hover{background-color:#e63c33;background-color:var(--Red-400,#e63c33)}.mic-button:before{background-color:#f44336;background-color:var(--Red-500,#f44336);border-radius:24px;content:"";display:block;height:calc(100% + var(--volume)*2);left:calc(var(--volume)*-1);opacity:.35;position:absolute;top:calc(var(--volume)*-1);transition:all .02s ease-in-out;width:calc(100% + var(--volume)*2);z-index:-1}.connect-toggle:focus{border:2px solid var(--Neutral-20);outline:2px solid var(--Neutral-80)}.connect-toggle:not(.connected){background-color:#0d9c53;background-color:var(--Blue-500,#0d9c53);color:#111213;color:var(--Neutral-5,#111213)}.control-tray{align-items:center;background:#f5f5f5;background:var(--control-tray-bg,#f5f5f5);border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:1rem;padding:.5rem}.control-tray .actions-nav{align-items:center;display:flex;gap:.5rem}.ptt-button{align-items:center;background-color:#fff;border:2px solid #be3b34;border:2px solid var(--accent-red,#be3b34);border-radius:50%;box-shadow:0 2px 8px #be3b3426;color:#be3b34;color:var(--accent-red,#be3b34);cursor:pointer;display:flex;font-size:1.75rem;height:50px;justify-content:center;position:relative;transition:all .2s ease;width:50px;z-index:1}.ptt-button .material-symbols-outlined{font-size:2rem}.ptt-button:hover:not(:disabled){background-color:#f8f8f8}.ptt-button:focus{box-shadow:0 0 0 4px #f443364d;outline:none}.ptt-button.active{background-color:#2e7d32;background-color:var(--Green-600,#2e7d32);border-color:#2e7d32;border-color:var(--Green-600,#2e7d32);box-shadow:0 0 0 4px #4caf5066;color:#012707}.ptt-button.active:before{animation:pulse 1s infinite;background-color:#4caf504d;border-radius:50%;content:"";inset:0;position:absolute;z-index:-1}@keyframes pulse{0%{opacity:.6;transform:scale(1)}50%{opacity:.4;transform:scale(1.2)}to{opacity:.6;transform:scale(1)}}.ptt-container{display:inline-block;position:relative}.ptt-tooltip{animation:fade-in-out 2.5s ease-in-out forwards;background-color:#333;border-radius:6px;bottom:65px;box-shadow:0 2px 6px #00000026;color:#fff;font-size:.85rem;left:50%;padding:.5rem .75rem;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}@keyframes fade-in-out{0%{opacity:0;transform:translate(-50%,-5px)}10%{opacity:1;transform:translate(-50%)}90%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-5px)}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes opacity-pulse{0%{opacity:.9}50%{opacity:1}to{opacity:.9}}@media(max-width:640px){.control-tray{flex-direction:column;gap:12px;padding-bottom:12px}.control-tray .connection-container{height:auto}.actions-nav{gap:8px;height:auto;padding:8px}.action-button{color:#fff;font-size:1rem;height:40px;width:40px}}.role-play-selector{margin:0 auto;max-width:1200px;position:relative;width:100%}.role-play-selector .close-button-container{background:#0000;position:absolute;right:14px;top:10px;z-index:9999}.role-play-selector .close-selector-button{align-items:center;background:#0000;border:none;cursor:pointer;display:inline-flex;height:20px;justify-content:center;padding:0;position:relative;width:20px}.role-play-selector .close-selector-button svg{stroke:#6b7280;stroke-width:2;fill:none;color:#6b7280;height:20px;width:20px}.role-play-selector .close-selector-button:hover svg{stroke:#2c3e50;color:#2c3e50}.role-play-selector .close-selector-button:after{background:#0000;border-radius:8px;content:"";height:32px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:background-color .12s ease,transform .12s ease;width:32px;z-index:-1}.role-play-selector .close-selector-button:active:after,.role-play-selector .close-selector-button:focus-visible:after,.role-play-selector .close-selector-button:hover:after{background:#1f2937}.role-play-selector .close-selector-button:active svg,.role-play-selector .close-selector-button:focus-visible svg,.role-play-selector .close-selector-button:hover svg{stroke:#fff;color:#fff}.role-play-selector .selector-header{align-items:center;display:flex;justify-content:space-between}.role-play-selector .selector-header .header-content h2{color:#24292e;font-size:1.5rem;margin:0 0 .5rem}.role-play-selector .selector-header .header-content p{color:#586069;font-size:1rem;margin:0}.role-play-selector .selector-header .header-actions{align-items:center;display:flex;gap:.75rem}.role-play-selector .selector-header .feedback-button{align-items:center;background-color:#f0f4f9;border:1px solid #d0d7de;border-radius:6px;color:#24292e;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.role-play-selector .selector-header .feedback-button:hover{background-color:#e1e4e8;border-color:#c6cdd4}.role-play-selector .selector-header .feedback-button svg{color:#586069}.role-play-selector .selector-header .help-button{align-items:center;background-color:#f0f4f9;border:1px solid #d0d7de;border-radius:6px;color:#24292e;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.role-play-selector .selector-header .help-button:hover{background-color:#e1e4e8;border-color:#c6cdd4}.role-play-selector .selector-header .help-button svg{color:#586069}.role-play-selector .progress-bar{display:flex;justify-content:space-between;margin:1rem 1.5rem;position:relative}.role-play-selector .progress-bar:before{background-color:#e1e4e8;content:"";height:2px;left:calc(12.5% + 14px);position:absolute;right:calc(12.5% + 14px);top:14px;z-index:1}.role-play-selector .progress-bar .progress-step{align-items:center;display:flex;flex-direction:column;position:relative;width:25%;z-index:2}.role-play-selector .progress-bar .progress-step .step-indicator{align-items:center;background-color:#fff;border:2px solid #e1e4e8;border-radius:50%;color:#586069;display:flex;font-weight:600;height:28px;justify-content:center;margin-bottom:.5rem;width:28px}.role-play-selector .progress-bar .progress-step .step-label{color:#586069;font-size:.8rem;max-width:100%;text-align:center}.role-play-selector .progress-bar .progress-step.active .step-indicator{border-color:#ffc107;color:#e6ad00}.role-play-selector .progress-bar .progress-step.active .step-label{color:#24292e;font-weight:500}.role-play-selector .progress-bar .progress-step.completed .step-indicator{background-color:#ffc107;border-color:#ffc107;color:#fff}.role-play-selector .selector-actions button.next-button:disabled,.role-play-selector .selector-actions button.next-button:hover{background-color:#ffc107}.role-play-selector .role-play-selector-error p{color:#d73a49}.role-play-selector .role-play-selector-error button:hover{background-color:#ffc107}@media(max-width:768px){.role-play-selector{padding:1rem}.role-play-selector .options-container{grid-template-columns:1fr}.role-play-selector .progress-bar .progress-step .step-label{display:none}}.role-play-selector .role-play-container{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:2rem}.role-play-selector .role-play-header{margin-bottom:2rem;text-align:center}.role-play-selector .role-play-header h2{color:#333;font-size:1.8rem;margin-bottom:.5rem}.role-play-selector .role-play-header p{color:#666;font-size:1.1rem}.role-play-selector .role-play-options{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.role-play-selector .role-play-options.base-config-section,.role-play-selector .role-play-options.behavior-categories-section,.role-play-selector .role-play-options.corrective-steps-section,.role-play-selector .role-play-options.student-profile-section{transition:all .3s ease}.role-play-selector .role-play-card{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:1.5rem;transition:all .2s ease}.role-play-selector .role-play-card:hover{border-color:#007bff;transform:translateY(-2px)}.role-play-selector .role-play-card.selected{background-color:#f8f9ff;border-color:#007bff}.role-play-selector .role-play-card .card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.role-play-selector .role-play-card .card-header h3{color:#333;font-size:1.2rem;margin:0}.role-play-selector .role-play-card .card-header .check-icon{color:#007bff}.role-play-selector .role-play-card .card-detail{margin-bottom:.5rem}.role-play-selector .role-play-card .card-detail .label{color:#666;font-weight:600;margin-right:.5rem}.role-play-selector .role-play-card .card-detail .value{color:#333}.role-play-selector .navigation-buttons{align-items:center;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-top:2rem;padding-top:1rem}.role-play-selector .navigation-buttons .nav-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.role-play-selector .navigation-buttons .nav-button.back{background-color:#f0f0f0;color:#666}.role-play-selector .navigation-buttons .nav-button.back:hover{background-color:#e0e0e0}.role-play-selector .navigation-buttons .nav-button.next{background-color:#007bff;color:#fff}.role-play-selector .navigation-buttons .nav-button.next:hover:not(:disabled){background-color:#0056b3}.role-play-selector .navigation-buttons .nav-button.next:disabled{cursor:not-allowed;opacity:.5}.role-play-selector .tutorial-highlight{border-radius:4px;box-shadow:0 0 0 4px #007bff4d;position:relative;transition:box-shadow .3s ease;z-index:1002}.role-play-selector .preferred-name-input{background-color:#f6f8fa;border-bottom:1px solid #e1e4e8;padding:1rem 1.5rem}.role-play-selector .preferred-name-input label{color:#24292e;display:block;font-weight:500;margin-bottom:.5rem}.role-play-selector .preferred-name-input input{background:#fff;border:1px solid #d0d7de;border-radius:6px;color:#24292e;font-size:1rem;padding:.75rem;transition:border-color .2s ease;width:100%}.role-play-selector .preferred-name-input input:focus{border-color:#ffc107;box-shadow:0 0 0 2px #ffc10733;outline:none}.role-play-selector .preferred-name-input input::placeholder{color:#6e7781}.components-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.components-header h3{margin:0}.components-header .edit-components-button{align-items:center;background-color:#0000;border:1px solid #ffc107;border-radius:4px;color:#000;cursor:pointer;display:flex;font-size:.8rem;gap:5px;padding:.25rem .5rem;transition:all .2s ease}.components-header .edit-components-button:hover{background-color:#ffc107;color:#000}.components-header .edit-components-button span{margin-top:1px}.component-name{color:#000;font-size:.9rem;font-weight:500;margin:0}.notes-input label{color:#000;display:block;font-weight:500;margin-bottom:.5rem}.notes-input textarea{background:#fff;color:#24292e}.personalize-step-fields{padding:2rem}.avatar-selection{margin-top:2rem}.avatar-selection label{display:block;font-weight:500;margin-bottom:1rem}.avatar-selection .avatar-options{display:flex;gap:1.5rem}.avatar-selection .avatar-options .avatar-option{border:2px solid #e1e4e8;border-radius:8px;cursor:pointer;padding:1rem;text-align:center;transition:all .2s ease;width:150px}.avatar-selection .avatar-options .avatar-option img{border-radius:50%;height:100px;margin-bottom:.5rem;width:100px}.avatar-selection .avatar-options .avatar-option span{display:block;font-weight:500}.avatar-selection .avatar-options .avatar-option:hover{background-color:#f0f4f9;border-color:#d0d7de}.avatar-selection .avatar-options .avatar-option.selected{background-color:#f0f7ff;border-color:#ffc107}.role-play-loading{color:#586069;font-size:1.2rem;padding:3rem 0;text-align:center}.loading-state{align-items:center;background-color:#f1f5f9b3;border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#25272b;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:2rem}.loading-state.fullscreen{background:#0009;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.loading-state .loading-icon{stroke-width:3;animation:spin 1s linear infinite;color:#25272b}.loading-state .loading-message{font-size:1rem;font-weight:500;margin:0}.refresh-options-container{align-items:flex-start;display:flex;flex-direction:column}.refresh-options-container .refresh-options-button{align-items:center;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;display:flex;font-size:14px;justify-content:center;padding:6px 12px;transition:all .2s ease}.refresh-options-container .refresh-options-button:hover{background-color:#e5e5e5}.refresh-options-container .refresh-options-button:disabled{cursor:not-allowed;opacity:.6}.refresh-options-container .last-refreshed{color:#666;font-size:12px;margin-top:4px}.refresh-options-container.refresh-button{margin-left:10px}.refresh-options-container.selector-refresh-button .refresh-options-button{background-color:#0000;border:1px solid #0366d6;color:#0366d6;font-size:13px}.refresh-options-container.selector-refresh-button .refresh-options-button:hover{background-color:#0366d61a}.role-play-tutorial{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.role-play-tutorial .tutorial-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;height:100%;left:0;position:absolute;top:0;width:100%}.role-play-tutorial .tutorial-modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;margin:0 auto;max-height:90vh;max-width:900px;overflow-y:auto;padding:1.5rem;position:relative;text-align:center;width:95%;z-index:1001}.role-play-tutorial .tutorial-modal .close-button{background:none;border:none;color:#666;cursor:pointer;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:color .2s}.role-play-tutorial .tutorial-modal .close-button:hover{color:#333}.role-play-tutorial .tutorial-modal .tutorial-content{align-items:center;display:flex;flex:1 1;flex-direction:column;margin:1rem auto;max-width:100%;overflow-y:auto}.role-play-tutorial .tutorial-modal .tutorial-content h2{color:#333;font-size:1.5rem;margin-bottom:1rem;text-align:center}.role-play-tutorial .tutorial-modal .tutorial-content p{color:#666;font-size:1rem;line-height:1.5;margin:0 auto 1rem;max-width:600px;text-align:center}.role-play-tutorial .tutorial-modal .tutorial-content .tutorial-gif{display:block;margin:1rem 0;width:100%}.role-play-tutorial .tutorial-modal .tutorial-content .tutorial-gif .gif-preview{background:none;border:none;border-radius:0;box-shadow:none;display:block;height:auto;max-height:60vh;object-fit:contain;width:100%}.role-play-tutorial .tutorial-modal .tutorial-progress{display:flex;flex-shrink:0;gap:.5rem;justify-content:center;margin:2rem auto;max-width:200px}.role-play-tutorial .tutorial-modal .tutorial-progress .progress-dot{background-color:#ddd;border-radius:50%;height:8px;transition:background-color .3s;width:8px}.role-play-tutorial .tutorial-modal .tutorial-progress .progress-dot.active{background-color:#ffc107}.role-play-tutorial .tutorial-modal .tutorial-navigation{align-items:center;display:flex;flex-shrink:0;gap:1rem;justify-content:center;margin-left:auto;margin-right:auto;margin-top:2rem;max-width:400px}.role-play-tutorial .tutorial-modal .tutorial-navigation .nav-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.role-play-tutorial .tutorial-modal .tutorial-navigation .nav-button.back{background-color:#f0f0f0;color:#666}.role-play-tutorial .tutorial-modal .tutorial-navigation .nav-button.back:hover:not(:disabled){background-color:#e0e0e0}.role-play-tutorial .tutorial-modal .tutorial-navigation .nav-button.back:disabled{cursor:not-allowed;opacity:.5}.role-play-tutorial .tutorial-modal .tutorial-navigation .nav-button.next{background-color:#ffc107;color:#fff}.role-play-tutorial .tutorial-modal .tutorial-navigation .nav-button.next:hover{background-color:#e6ad00}.role-play-tutorial .tutorial-modal .tutorial-navigation .skip-button{background:none;border:none;color:#666;cursor:pointer;font-size:.9rem;padding:.5rem}.role-play-tutorial .tutorial-modal .tutorial-navigation .skip-button:hover{color:#333;text-decoration:underline}.tutorial-highlight{border-radius:4px;box-shadow:0 0 0 4px #ffc1074d;position:relative;z-index:1002}.stream-page-container{background:#f5f5f5;background:var(--page-bg,#f5f5f5);flex-direction:column;height:100vh}.main-content,.stream-page-container{display:flex;overflow:hidden;position:relative}.main-content{flex:1 1}.video-placeholder{align-items:center;background:#ececec;background:var(--video-placeholder-bg,#ececec);display:flex;flex:1 1;justify-content:center;margin-right:0;position:relative;transition:margin-right .3s ease-in-out}.panel-open .video-placeholder{margin-right:400px}.role-play-info{display:flex;flex-direction:column;height:100%;overflow:hidden}.panel-header{align-items:center;background:#f6f8fa;border-bottom:1px solid #e1e4e8;display:flex;gap:1rem;padding:1.5rem}.panel-header h2{color:#24292e;flex-shrink:0;font-size:1.25rem;margin:0}.selected-components{flex:1 1;padding:1rem}.selected-component{border:1px solid #e1e4e8;border-radius:6px;margin-bottom:1rem;overflow:hidden}.selected-component:last-child{margin-bottom:0}.selected-component .component-header{background:#f6f8fa;padding:1rem;transition:background-color .2s}.selected-component .component-header:hover{background:#f0f4f9}.selected-component .component-header h4{color:#24292e;font-size:.9rem;margin:0 0 .5rem}.selected-component .component-header .component-summary{justify-content:space-between}.selected-component .component-header .component-summary .component-name{color:#586069;font-size:.9rem}.selected-component .component-header .component-summary .expand-toggle{align-items:center;background:none;border:none;border-radius:4px;color:#586069;cursor:pointer;display:flex;justify-content:center;padding:.25rem}.selected-component .component-header .component-summary .expand-toggle:hover{background:#0000000d}.selected-component .component-description{background:#fff;border-top:1px solid #e1e4e8;color:#586069;font-size:.9rem;line-height:1.5;margin:0;padding:1rem}.instructions{background:#f6f8fa;border-top:1px solid #e1e4e8;padding:1rem}.instructions h3{color:#24292e;font-size:1rem;margin:0 0 .5rem}.instructions p{color:#586069;font-size:.9rem;line-height:1.5;margin:0}.panel-actions{background:#fff;border-top:1px solid #e1e4e8;padding:1rem}.panel-actions .start-button{background:#ffc107;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem;transition:background-color .2s;width:100%}.panel-actions .start-button:hover{background:#e6ad00}.panel-actions .start-button:focus{outline:2px solid #ffc107;outline-offset:2px}.intro-overlay{align-items:center;background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:absolute;right:0;top:0;z-index:10}.intro-content{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:800px;padding:2rem;width:100%}.intro-content h2{color:#333;color:var(--text-primary,#333);font-size:1.5rem;margin:0 0 1.5rem;text-align:center}.intro-content .role-play-info p{color:#666;color:var(--text-secondary,#666);margin:0 0 1.5rem;text-align:center}.intro-content .scenario{background:#f8f9fa;background:var(--scenario-bg,#f8f9fa);border-radius:8px;margin-bottom:2rem;padding:1.5rem}.intro-content .scenario .components-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.intro-content .scenario .components-header h3{color:#333;color:var(--text-primary,#333);font-size:1.1rem;margin:0}.intro-content .scenario .selected-component{border:1px solid #e0e0e0;border:1px solid var(--component-border,#e0e0e0);border-radius:4px;margin-bottom:1rem;overflow:hidden}.intro-content .scenario .selected-component .component-header{align-items:center;background:#f5f5f5;background:var(--component-header-bg,#f5f5f5);cursor:pointer;display:flex;justify-content:space-between;padding:1rem}.intro-content .scenario .selected-component .component-header:hover{background:#eee;background:var(--component-header-hover-bg,#eee)}.intro-content .scenario .selected-component .component-header:focus{outline:2px solid #1976d2;outline:2px solid var(--primary-color,#1976d2);outline-offset:-2px}.intro-content .scenario .selected-component .component-header h4{color:#333;color:var(--text-primary,#333);font-size:1rem;margin:0}.intro-content .scenario .selected-component .component-header .component-summary{align-items:center;display:flex;gap:1rem}.intro-content .scenario .selected-component .component-header .component-summary .component-name{color:#666;color:var(--text-secondary,#666)}.intro-content .scenario .selected-component .component-header .component-summary .expand-toggle{align-items:center;background:none;border:none;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;justify-content:center;padding:.25rem}.intro-content .scenario .selected-component .component-header .component-summary .expand-toggle:focus{outline:2px solid #1976d2;outline:2px solid var(--primary-color,#1976d2);outline-offset:2px}.intro-content .scenario .selected-component .component-description{background:#fff;color:#666;color:var(--text-secondary,#666);font-size:.9rem;line-height:1.5;margin:0;padding:1rem}.intro-content .start-button{background:#1976d2;background:var(--primary-color,#1976d2);border:none;border-radius:4px;color:#fff;cursor:pointer;display:block;font-size:1.1rem;font-weight:500;padding:1rem;transition:all .2s ease;width:100%}.intro-content .start-button:hover{background:#1565c0;background:var(--primary-color-dark,#1565c0)}.intro-content .start-button:focus{outline:2px solid #1976d2;outline:2px solid var(--primary-color,#1976d2);outline-offset:2px}.intro-content .start-button:disabled{cursor:not-allowed;opacity:.5}.info-button{align-items:center;background:#ffc107;border:none;border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:40px;z-index:10}.info-button:hover{background:#e6ad00;transform:scale(1.05)}.info-button.panel-open{right:420px}.help-button{align-items:center;background:#ffc107;border:none;border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:4rem;top:1rem;transition:all .2s ease;width:40px;z-index:10}.help-button:hover{background:#e6ad00;transform:scale(1.05)}.help-button.panel-open{right:470px}.show-video-button{align-items:center;background-color:#ffc107;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;gap:8px;margin:.5rem 0;padding:.5rem 1rem;transition:background-color .2s}.show-video-button:hover{background-color:#e6ad00}.video-area{border-radius:8px;bottom:100px;box-shadow:0 4px 16px #0003;height:180px;overflow:hidden;position:absolute;right:20px;width:240px;z-index:40}.video-area.hidden{display:none}.video-area.pinned{bottom:100px;right:20px}.video-area .video-controls{display:flex;gap:8px;position:absolute;right:8px;top:8px;z-index:2}.video-area .video-controls button{align-items:center;background-color:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;transition:background-color .2s;width:28px}.video-area .video-controls button:hover{background-color:#000000b3}.video-area .video-drag-handle{height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.video-area .stream-video{height:100%;object-fit:cover;width:100%}.controls-area{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fffc;display:flex;flex-direction:column;padding:1rem;width:100%;z-index:30}.role-play-selector{background-color:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001a;display:flex;flex-direction:column;max-height:80vh;max-width:800px;overflow:hidden;width:90%}.role-play-selector .selector-header{background-color:#f6f8fa;border-bottom:1px solid #e1e4e8;padding:1.5rem}.role-play-selector .selector-header h2{color:#24292e;font-size:1.5rem;margin:0 0 .5rem}.role-play-selector .selector-header p{color:#586069;font-size:1rem;margin:0}.role-play-selector .options-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;max-height:50vh;overflow-y:auto;padding:1rem 1.5rem}.role-play-selector .options-container .option-card{background-color:#f6f8fa;border:2px solid #e1e4e8;border-radius:8px;cursor:pointer;padding:1rem;transition:all .2s ease}.role-play-selector .options-container .option-card:hover{background-color:#f0f4f9;border-color:#d0d7de}.role-play-selector .options-container .option-card.selected{background-color:#f0f7ff;border-color:#ffc107}.role-play-selector .options-container .option-card .card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.role-play-selector .options-container .option-card .card-header h3{color:#24292e;font-size:1.1rem;margin:0}.role-play-selector .options-container .option-card .card-header .selected-indicator{align-items:center;background-color:#ffc107;border-radius:50%;color:#fff;display:flex;height:20px;justify-content:center;width:20px}.role-play-selector .options-container .option-card .card-description{color:#586069;font-size:.9rem;margin-bottom:1rem}.role-play-selector .options-container .option-card .card-details{border-top:1px solid #e1e4e8;padding-top:.75rem}.role-play-selector .options-container .option-card .card-details .card-detail{font-size:.85rem;margin-bottom:.5rem}.role-play-selector .options-container .option-card .card-details .card-detail .label{color:#24292e;font-weight:500;margin-right:.25rem}.role-play-selector .options-container .option-card .card-details .card-detail .value{color:#586069}.role-play-selector .options-container .no-options{background-color:#f6f8fa;border-radius:8px;color:#586069;grid-column:span 2;padding:2rem;text-align:center}.role-play-selector .selector-actions{background-color:#f6f8fa;border-top:1px solid #e1e4e8;display:flex;justify-content:space-between;padding:1rem 1.5rem}.role-play-selector .selector-actions button{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s ease}.role-play-selector .selector-actions button.back-button{background-color:#fff;border:1px solid #d0d7de;color:#24292e}.role-play-selector .selector-actions button.back-button:hover{background-color:#f6f8fa}.role-play-selector .selector-actions button.next-button{background-color:#ffc107;border:none;color:#fff}.role-play-selector .selector-actions button.next-button:hover{background-color:#e6ad00}.role-play-selector .selector-actions button.next-button:disabled{background-color:#ffe082;cursor:not-allowed}.role-play-selector .role-play-selector-error{padding:2rem;text-align:center}.role-play-selector .role-play-selector-error p{color:#ffc107;margin-bottom:1rem}.role-play-selector .role-play-selector-error button{background-color:#ffc107;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.5rem 1rem}.role-play-selector .role-play-selector-error button:hover{background-color:#e6ad00}@media(max-width:768px){.role-play-selector{width:95%}.role-play-selector .options-container{grid-template-columns:1fr}.role-play-selector .progress-bar .progress-step .step-label{display:none}.intro-content{padding:1rem;width:95%}.intro-content .intro-buttons{flex-direction:column}.intro-content .intro-buttons button{width:100%}}.selected-components{max-height:400px;overflow-y:auto;padding-right:5px}.selected-component{border-bottom:1px solid #0000001a;margin-bottom:.75rem;padding-bottom:.75rem}.selected-component:last-child{border-bottom:none;margin-bottom:.5rem}.selected-component .component-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:.35rem 0}.selected-component .component-header:hover{background-color:#00000005}.selected-component .component-header h4{color:#2c3e50;font-size:.95rem;font-weight:600;margin:0}.selected-component .component-header .component-summary{align-items:center;display:flex;gap:.5rem}.selected-component .component-name{color:#ffc107;font-size:.9rem;font-weight:500;margin:0}.selected-component .expand-toggle{align-items:center;background:none;border:none;color:#586069;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;width:24px}.selected-component .expand-toggle:hover{background-color:#0000000d;border-radius:50%;color:#24292e}.selected-component .component-description{border-left:2px solid #e1e4e8;color:#666;font-size:.85rem;line-height:1.4;margin:.25rem 0 .25rem 1rem;padding-left:.5rem}.intro-content{max-height:85vh;overflow-y:auto}.intro-content,.selected-components{scrollbar-color:#bbb #0000;scrollbar-width:thin}.intro-content::-webkit-scrollbar,.selected-components::-webkit-scrollbar{width:6px}.intro-content::-webkit-scrollbar-track,.selected-components::-webkit-scrollbar-track{background:#0000}.intro-content::-webkit-scrollbar-thumb,.selected-components::-webkit-scrollbar-thumb{background-color:#bbb;border:2px solid #0000;border-radius:6px}.timer-container{background:#ffffffe6;border-radius:8px;box-shadow:0 2px 4px #0000001a;left:50%;padding:10px;position:absolute;top:20px;transform:translateX(-50%);width:200px;z-index:10}.timer-progress{background:#e0e0e0;border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden;width:100%}.timer-progress-bar{background:#4caf50;height:100%;transition:width 1s linear}.timer-text{color:#333;font-size:16px;font-weight:500;text-align:center}.tutorial-content{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-height:90vh;max-width:800px;overflow-y:auto;padding:2rem;position:relative;width:90%}.tutorial-content .close-button{background:none;border:none;color:#666;cursor:pointer;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:color .2s;z-index:2}.tutorial-content .close-button:hover{color:#333}.tutorial-content .tutorial-content-inner{padding-top:1rem}.role-play-selector-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.role-play-selector-overlay .role-play-selector{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.scenario-description{background:#f8f9fa;flex:1 1;overflow-y:auto;padding:1.5rem}.scenario-description .scenario-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1.25rem}.scenario-description .scenario-section:last-child{margin-bottom:0}.scenario-description .scenario-section h3{border-bottom:2px solid #ffc107;color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.scenario-description .scenario-section .detail-row{margin-bottom:1rem}.scenario-description .scenario-section .detail-row:last-child{margin-bottom:0}.scenario-description .scenario-section .detail-row .label{color:#4a5568;display:block;font-size:.9rem;font-weight:500;margin-bottom:.25rem}.scenario-description .scenario-section .detail-row .value{color:#2d3748;font-size:.95rem;line-height:1.5}.scenario-description .scenario-section .detail-row p.value{margin:0}.scenario-description .scenario-section .skills-list{list-style:none;margin:0;padding:0}.scenario-description .scenario-section .skills-list li{border-bottom:1px solid #edf2f7;padding:.5rem 0}.scenario-description .scenario-section .skills-list li:last-child{border-bottom:none}.scenario-description .teaching-steps .teaching-step{background:#f8fafc;border-left:4px solid #ffc107;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.scenario-description .teaching-steps .teaching-step:last-child{margin-bottom:0}.scenario-description .teaching-steps .teaching-step .step-header{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.scenario-description .teaching-steps .teaching-step .step-header .step-number{background:#ffc107;border-radius:4px;color:#fff;font-size:.9rem;font-weight:600;padding:.25rem .75rem}.scenario-description .teaching-steps .teaching-step .step-header h4{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0}.scenario-description .teaching-steps .teaching-step .step-description{color:#4a5568;font-size:.95rem;line-height:1.6;margin:0 0 1rem}.scenario-description .teaching-steps .teaching-step .expected-response{background:#fff;border-left:3px solid #4a5568;border-radius:6px;padding:1rem}.scenario-description .teaching-steps .teaching-step .expected-response .label{color:#2c3e50;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.scenario-description .teaching-steps .teaching-step .expected-response p{color:#4a5568;font-size:.95rem;line-height:1.6;margin:0}.scenario-description .behavior-details .examples-list{list-style:none;margin:0;padding:0}.scenario-description .behavior-details .examples-list li{border-bottom:1px solid #edf2f7;color:#4a5568;font-size:.95rem;line-height:1.5;padding:.5rem 0}.scenario-description .behavior-details .examples-list li:last-child{border-bottom:none}.toast-container{align-items:flex-end;display:flex;flex-direction:column;gap:10px;max-width:100%;pointer-events:none;position:fixed;right:20px;top:20px;width:320px;z-index:9999}.toast-container .toast{pointer-events:auto}.action-button{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00e676;background:var(--connect-button-bg,#00e676);border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-family:Space Mono,monospace;font-size:1rem;font-weight:600;gap:.4rem;justify-content:center;left:50%;padding:.5rem 1rem;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s ease;-webkit-user-select:none;user-select:none;z-index:50}.action-button .material-symbols-outlined{align-items:center;color:#fff;display:flex;font-size:1.6rem}.action-button .button-text{color:#fff;display:inline-block;font-size:1rem;font-weight:600}.action-button:hover:not(:disabled){background:#00c853;background:var(--connect-button-hover-bg,#00c853);transform:translate(-50%,-50%) scale(1.03)}.action-button:active:not(:disabled){background:#00b248;transform:translate(-50%,-50%) scale(.97)}.action-button:focus{box-shadow:0 0 0 3px #00e67659;outline:none}.action-button.connected{background:#ff3d00;background:var(--connected-button-bg,#ff3d00);bottom:2rem;color:#fff;top:auto;transform:translateX(-50%)}.action-button.connected:hover:not(:disabled){background:#f44336;background:var(--connected-button-hover-bg,#f44336)}.action-button:active.connected{background:#d32f2f}.action-button.setup-required{background:#ffb74d;background:var(--setup-required-button-bg,#ffb74d);color:#fff}.action-button.setup-required:hover:not(:disabled){background:#ffa726;background:var(--setup-required-button-hover-bg,#ffa726);transform:translate(-50%,-50%) scale(1.03)}.action-button.setup-required:active:not(:disabled){background:#fb8c00;transform:translate(-50%,-50%) scale(.97)}.action-button.setup-required:focus{box-shadow:0 0 0 3px #ffb74d59;outline:none}.action-button.connecting{opacity:.6;pointer-events:none}.action-button.hidden{opacity:0;pointer-events:none;transition:opacity .3s ease}.connection-container{align-items:center;background:#fff;background:var(--connection-container-bg,#fff);border-radius:4px;display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;padding:.5rem 1rem;transition:all .3s ease}.connection-container.connected{background:#e8f5e9;background:var(--connected-container-bg,#e8f5e9)}.edit-components-button{align-items:center;background:#3b82f6;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.25rem;padding:.375rem .75rem;transition:all .2s ease}.edit-components-button:hover{background:#2563eb}.edit-components-button:focus{outline:2px solid #3b82f6;outline-offset:2px}.transcript-actions{display:flex;gap:.5rem}.transcript-actions .clear-transcript-button,.transcript-actions .export-transcript-button{background:#6b7280;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;padding:.375rem .75rem;transition:all .2s ease}.transcript-actions .clear-transcript-button:hover,.transcript-actions .export-transcript-button:hover{background:#4b5563}.transcript-actions .clear-transcript-button:focus,.transcript-actions .export-transcript-button:focus{outline:2px solid #6b7280;outline-offset:2px}.transcript-actions .export-transcript-button{background:#059669}.transcript-actions .export-transcript-button:hover{background:#047857}.transcript-actions .clear-transcript-button{background:#dc2626}.transcript-actions .clear-transcript-button:hover{background:#b91c1c}.login-page{background-color:#fff;background-color:var(--background);color:#04345c;color:var(--foreground);display:grid;min-height:100vh;width:100%}@media(min-width:1024px){.login-page{grid-template-columns:1fr 1fr}}.login-content{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}@media(min-width:768px){.login-content{padding:2.5rem}}.login-form-wrapper{max-width:20rem;width:100%}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-image{background-color:#fff;display:none;position:relative}@media(min-width:1024px){.login-image{display:block}}@media(prefers-color-scheme:dark){:root{--primary:#04345c;--primary-foreground:#fff;--muted:#1f2937;--muted-foreground:#9ca3af;--border:#374151;--background:#111827;--foreground:#f9fafb}.brand-logo{color:#fff}.background-image{filter:brightness(1.2);opacity:.95}.login-image{background-color:#fff}.field-input{background-color:#ffffff0d}.btn-outline{border-color:#e5e7eb;border-color:var(--border)}.btn-outline:hover{background-color:#ffffff0d}.error-message{background-color:#ef44441a;border-color:#ef444433}.field-label,.form-title{color:#f4ac04;color:var(--secondary)}.btn-primary{background-color:#f4ac04;background-color:var(--secondary);color:#fff;color:var(--background)}.btn-primary:hover{background-color:#fff;opacity:.9}.checkbox-label{color:#04345c;color:var(--foreground)}}:root{--primary:#04345c;--primary-foreground:#fff;--secondary:#f4ac04;--muted:#f3f4f6;--muted-foreground:#6b7280;--border:#e5e7eb;--background:#fff;--foreground:#04345c;--radius:0.375rem;--ring:#0000001a;--shadow-sm:0 1px 2px 0 #0000000d;--shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}*{box-sizing:border-box;margin:0;padding:0}.forgot-password-page{background-color:#fff;background-color:var(--background);color:#04345c;color:var(--foreground);display:grid;min-height:100vh;width:100%}@media(min-width:1024px){.forgot-password-page{grid-template-columns:1fr 1fr}}.forgot-password-content{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}@media(min-width:768px){.forgot-password-content{padding:2.5rem}}.header-section{display:flex;justify-content:center}@media(min-width:768px){.header-section{justify-content:flex-start}}.brand-logo{color:#f4ac04;color:var(--secondary);font-weight:500;gap:.5rem;text-decoration:none}.brand-logo,.logo-icon{align-items:center;display:flex}.logo-icon{background-color:#f4ac04;background-color:var(--secondary);border-radius:.375rem;border-radius:var(--radius);color:#fff;color:var(--background);height:1.5rem;justify-content:center;width:1.5rem}.icon{height:1rem;width:1rem}.form-container{align-items:center;display:flex;flex:1 1;justify-content:center}.forgot-password-form-wrapper{max-width:20rem;width:100%}.forgot-password-form{display:flex;flex-direction:column;gap:1.5rem}.form-header{align-items:center;display:flex;flex-direction:column;gap:.5rem;text-align:center}.form-title{color:#f4ac04;color:var(--secondary);font-size:1.5rem;font-weight:700}.form-subtitle{color:#6b7280;color:var(--muted-foreground);font-size:.875rem;max-width:30ch;text-align:center}.form-fields{grid-gap:1.5rem;display:grid;gap:1.5rem}.form-field{grid-gap:.5rem;display:grid;gap:.5rem}.field-label{color:#f4ac04;color:var(--secondary);font-size:.875rem;font-weight:500}.field-label-row{align-items:center;display:flex}.forgot-password{color:#6b7280;color:var(--muted-foreground);font-size:.875rem;margin-left:auto;text-decoration:none}.forgot-password:hover{text-decoration:underline;text-underline-offset:4px}.field-input{background-color:#0000;border:1px solid #e5e7eb;border:1px solid var(--border);border-radius:.375rem;border-radius:var(--radius);color:#04345c;color:var(--foreground);font-size:.875rem;padding:.75rem;width:100%}.field-input:focus{border-color:#f4ac04;border-color:var(--secondary);box-shadow:0 0 0 1px #f4ac04;box-shadow:0 0 0 1px var(--secondary);outline:none}.field-input-error{border-color:#ef4444}.field-error{color:#ef4444;font-size:.75rem;margin-top:.25rem}.btn{align-items:center;border:none;border-radius:.375rem;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem;transition:all .2s ease;width:100%}.btn-primary{background-color:#f4ac04;background-color:var(--secondary);color:#fff;color:var(--background)}.btn-primary:hover{background-color:#fff}.btn-outline{background-color:#0000;border:1px solid #e5e7eb;border:1px solid var(--border);color:#f4ac04;color:var(--secondary)}.btn-outline:hover{background-color:#f3f4f6;background-color:var(--muted)}.provider-icon{height:1rem;width:1rem}.divider{position:relative;text-align:center}.divider:after{align-items:center;border-top:1px solid #e5e7eb;border-top:1px solid var(--border);content:"";display:flex;inset:0;position:absolute;top:50%;z-index:0}.divider-text{background-color:#fff;background-color:var(--background);padding:0 .5rem;position:relative;z-index:10}.divider-text,.signup-prompt{color:#6b7280;color:var(--muted-foreground);font-size:.875rem}.signup-prompt{text-align:center}.signup-link{color:#f4ac04;color:var(--secondary);font-weight:500;text-decoration:none}.signup-link:hover{text-decoration:underline;text-underline-offset:4px}.error-message{background-color:#ef44441a;border:1px solid #ef444433;border-radius:.375rem;border-radius:var(--radius);color:#ef4444;font-size:.875rem;padding:.75rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:1rem;width:1rem}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.checkbox-field{align-items:center;display:flex;margin-bottom:.5rem}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.checkbox-label input{height:1rem;width:1rem}.forgot-password-image{background-color:#fff;display:none;position:relative}@media(min-width:1024px){.forgot-password-image{display:block}}.background-image{height:auto;left:50%;max-height:60%;max-width:60%;object-fit:contain;opacity:1;position:absolute;top:50%;transform:translate(-50%,-50%);width:auto}@media(prefers-color-scheme:dark){:root{--primary:#04345c;--primary-foreground:#fff;--muted:#1f2937;--muted-foreground:#9ca3af;--border:#374151;--background:#111827;--foreground:#f9fafb}.brand-logo{color:#fff}.background-image{filter:brightness(1.2);opacity:.95}.forgot-password-image{background-color:#fff}.field-input{background-color:#ffffff0d}.btn-outline{border-color:#e5e7eb;border-color:var(--border)}.btn-outline:hover{background-color:#ffffff0d}.error-message{background-color:#ef44441a;border-color:#ef444433}.field-label,.form-title{color:#f4ac04;color:var(--secondary)}.btn-primary{background-color:#f4ac04;background-color:var(--secondary);color:#fff;color:var(--background)}.btn-primary:hover{background-color:#fff;opacity:.9}.checkbox-label{color:#04345c;color:var(--foreground)}}:root{--ring:#0284c7;--radius:0.5rem;--background:#020817;--foreground:#f8fafc;--muted:#1e293b;--muted-foreground:#94a3b8;--primary:#0284c7;--primary-foreground:#f8fafc;--border:#1e293b;--input:#1e293b}@media(prefers-color-scheme:dark){:root{--background:#020817;--foreground:#f8fafc;--muted:#1e293b;--muted-foreground:#94a3b8;--primary:#0284c7;--primary-foreground:#f8fafc;--border:#1e293b;--input:#1e293b}}.container{display:flex;flex-direction:column;gap:1rem;margin:0 auto;max-width:1200px;padding:1rem;width:100%}.table-controls{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.search-container{flex:1 1;max-width:300px}.search-input{background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);color:#f8fafc;color:var(--foreground);padding:.5rem;width:100%}.column-visibility,.dropdown{position:relative}.dropdown{display:inline-block}.dropdown-trigger{align-items:center;background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);color:#f8fafc;color:var(--foreground);cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem}.dropdown:hover .dropdown-content{display:block}.dropdown-content{background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);box-shadow:0 2px 10px #0000001a;display:none;min-width:150px;position:absolute;right:0;z-index:10}.dropdown-item{align-items:center;color:#f8fafc;color:var(--foreground);cursor:pointer;display:block;display:flex;gap:.5rem;padding:.5rem 1rem;white-space:nowrap}.dropdown-item:hover{background-color:#1e293b;background-color:var(--muted)}.dropdown-divider{background-color:#1e293b;background-color:var(--border);height:1px;margin:.25rem 0}.table-container{background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);overflow:auto;width:100%}table{border-collapse:collapse;width:100%}td,th{padding:.75rem 1rem;text-align:left}th{background-color:#1e293b;background-color:var(--muted);color:#94a3b8;color:var(--muted-foreground);font-weight:500;position:-webkit-sticky;position:sticky;top:0;z-index:1}tbody tr{border-top:1px solid #1e293b;border-top:1px solid var(--border)}tbody tr:hover{background-color:#1e293b;background-color:var(--muted)}.selected-row{background-color:#0284c71a}.checkbox-cell{text-align:center;width:40px}.checkbox-wrapper{align-items:center;display:flex;justify-content:center}.checkbox{border-radius:4px;cursor:pointer;height:16px;width:16px}.actions-cell{text-align:center;width:40px}.rating-container{display:flex;gap:.25rem}.rating-button{align-items:center;background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.rating-button.selected{background-color:#0284c7;background-color:var(--primary);border-color:#0284c7;border-color:var(--primary);color:#f8fafc;color:var(--primary-foreground)}.feedback-display,.rating-button:hover:not(.selected){background-color:#1e293b;background-color:var(--muted)}.feedback-display{border-radius:.5rem;border-radius:var(--radius);font-size:.875rem;margin-top:.5rem;padding:.5rem}.pagination{margin-top:1rem}.pagination-info{color:#94a3b8;color:var(--muted-foreground);font-size:.875rem}.pagination-controls{align-items:center;display:flex;gap:1rem}.rows-per-page{align-items:center;display:flex;font-size:.875rem;gap:.5rem}.rows-per-page select{background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);color:#f8fafc;color:var(--foreground);padding:.25rem .5rem}.page-info{color:#94a3b8;color:var(--muted-foreground);font-size:.875rem}.page-buttons{display:flex;gap:.25rem}.pagination-button{align-items:center;background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);color:#f8fafc;color:var(--foreground);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-button:hover:not(:disabled){background-color:#1e293b;background-color:var(--muted)}.detail-view{background-color:#020817;background-color:var(--background);border-left:1px solid #1e293b;border-left:1px solid var(--border);box-shadow:-5px 0 15px #0000001a;display:flex;flex-direction:column;gap:1.5rem;height:100vh;max-width:800px;overflow-y:auto;padding:1.5rem;position:fixed;right:0;top:0;width:80%;z-index:1000}.detail-header{align-items:center;display:flex;justify-content:space-between}.close-button{background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);color:#f8fafc;color:var(--foreground);cursor:pointer;padding:.5rem 1rem}.close-button:hover,.transcript-info{background-color:#1e293b;background-color:var(--muted)}.transcript-info{border-radius:.5rem;border-radius:var(--radius);display:flex;flex-direction:column;gap:.5rem;padding:1rem}.modal-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.modal-content{border-radius:.5rem;border-radius:var(--radius);box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;gap:1rem;max-width:500px;padding:1.5rem;width:90%}.feedback-textarea,.modal-content{background-color:#020817;background-color:var(--background)}.feedback-textarea{border:1px solid #1e293b;border:1px solid var(--border);border-radius:.5rem;border-radius:var(--radius);color:#f8fafc;color:var(--foreground);min-height:100px;padding:.5rem;resize:vertical;width:100%}.modal-buttons{display:flex;gap:.5rem;justify-content:flex-end}.cancel-button,.submit-button{border-radius:.5rem;border-radius:var(--radius);cursor:pointer;padding:.5rem 1rem}.submit-button{background-color:#0284c7;background-color:var(--primary);border:none;color:#f8fafc;color:var(--primary-foreground)}.submit-button:disabled{cursor:not-allowed;opacity:.5}.cancel-button{background-color:#020817;background-color:var(--background);border:1px solid #1e293b;border:1px solid var(--border);color:#f8fafc;color:var(--foreground)}@media(max-width:768px){.pagination-controls{flex-wrap:wrap}.detail-view{width:100%}}.role-play-list-container{--up-accent:#ffc107;--up-accent-dark:#e6ad00;--up-background:#fff;--up-foreground:#000;--up-muted:#f4f4f5;--up-muted-foreground:#000;--up-border:#e4e4e7;--up-admin:#8b5cf6;--up-trainer:#3b82f6;--up-trainee:#10b981;margin:0 auto;padding:2rem;position:relative;width:100%}.role-play-list-container .header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.role-play-list-container .header-row h1{font-size:24px;font-weight:600;margin:0}.role-play-list-container .header-row .create-button{padding:8px 16px}.role-play-list-container .error-message{align-items:center;background-color:#ffebee;border-radius:4px;color:#c62828;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px}.role-play-list-container .error-message p{margin:0}.role-play-list-container .empty-state{color:#666;padding:40px 0;text-align:center}.role-play-list-container .empty-state p{font-size:16px;margin:5px 0}.role-play-list-container .empty-state p:first-child{font-size:18px;font-weight:500}.role-play-list-container .role-play-header{margin-bottom:2rem}.role-play-list-container .role-play-header h1{color:var(--up-foreground);font-size:2rem;margin-bottom:.5rem}.role-play-list-container .role-play-header .description{color:#666;font-size:1rem;white-space:pre-wrap}.role-play-list-container .tabs-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;overflow:hidden}.role-play-list-container .tabs-container .tabs-list{-webkit-overflow-scrolling:touch;background-color:#f9f9f9;border-bottom:1px solid #e0e0e0;display:flex;overflow-x:auto;scrollbar-color:#e0e0e0 #f9f9f9;scrollbar-width:thin;white-space:nowrap}.role-play-list-container .tabs-container .tabs-list::-webkit-scrollbar{height:6px}.role-play-list-container .tabs-container .tabs-list::-webkit-scrollbar-track{background:#f9f9f9}.role-play-list-container .tabs-container .tabs-list::-webkit-scrollbar-thumb{background-color:#e0e0e0;border-radius:3px}.role-play-list-container .tabs-container .tabs-list .tab-button{background:none;border:none;color:#666;cursor:pointer;flex-shrink:0;font-size:.95rem;font-weight:500;padding:1rem 1.5rem;position:relative;transition:color .2s}.role-play-list-container .tabs-container .tabs-list .tab-button:hover{color:var(--up-accent)}.role-play-list-container .tabs-container .tabs-list .tab-button.active{color:var(--up-accent);font-weight:600}.role-play-list-container .tabs-container .tabs-list .tab-button.active:after{background-color:var(--up-accent);bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.role-play-list-container .tabs-container .tabs-content{min-height:500px;padding:1.5rem;position:relative}.role-play-list-container .tab-content-container .tab-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.role-play-list-container .tab-content-container .tab-header h2{color:#333;font-size:1.5rem;margin-bottom:.5rem}.role-play-list-container .tab-content-container .tab-header .section-description{color:#666;font-size:.9rem;margin-bottom:.75rem}.role-play-list-container .tab-content-container .tab-header .subcategories{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.role-play-list-container .tab-content-container .tab-header .subcategories .subcategory{background-color:#f0f4f8;border-radius:4px;color:#456;font-size:.8rem;padding:.25rem .5rem}.role-play-list-container .tab-content-container .tab-header .tab-actions{align-items:center;display:flex;gap:.5rem}.role-play-list-container .tab-content-container .tab-header .refresh-button{margin-left:.5rem}.role-play-list-container .tab-content-container .pagination{align-items:center;color:var(--up-foreground);display:flex;justify-content:space-between;margin:1rem;padding:.5rem 0}.role-play-list-container .tab-content-container .pagination .pagination-info{color:var(--up-foreground);font-size:.875rem}.role-play-list-container .tab-content-container .pagination .pagination-controls{align-items:center;display:flex;gap:.5rem}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-button{align-items:center;background-color:#0000;border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);cursor:pointer;display:flex;font-size:.75rem;font-weight:500;height:2rem;justify-content:center;min-width:2.5rem;padding:.375rem .75rem;transition:all .15s}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-button:hover:not(:disabled){background-color:var(--up-muted);border-color:var(--up-accent);color:var(--up-accent-dark)}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-button:disabled{cursor:not-allowed;opacity:.5}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-button.active{background-color:var(--up-accent);border-color:var(--up-accent);color:var(--up-foreground)}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-status{color:var(--up-foreground);font-size:.875rem;margin:0 .5rem;min-width:5rem;text-align:center}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-limit{background-color:#0000;border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);cursor:pointer;font-size:.875rem;margin-left:.5rem;padding:.375rem}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-limit:focus{border-color:var(--up-accent);outline:none}.role-play-list-container .tab-content-container .pagination .pagination-controls .pagination-limit:hover{border-color:var(--up-accent)}.role-play-list-container .create-button{align-items:center;background-color:var(--up-accent);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.role-play-list-container .create-button:hover{background-color:var(--up-accent)}.role-play-list-container .search-container{margin-bottom:1.5rem;position:relative}.role-play-list-container .search-container .search-icon{color:#999;left:10px;position:absolute;top:50%;transform:translateY(-50%)}.role-play-list-container .search-container .search-input{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;font-size:.95rem;padding:.6rem 1rem .6rem 2.5rem;width:100%}.role-play-list-container .search-container .search-input:focus{background-color:#fff;border-color:var(--up-accent);outline:none}.role-play-list-container .role-plays-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:1.5rem;min-height:200px}.role-play-list-container .role-plays-grid .role-play-card{background-color:#f9f9f9;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#222;display:flex;flex-direction:column;padding:1.2rem}.role-play-list-container .role-plays-grid .role-play-card h3{color:#333;font-size:1.2rem;margin-bottom:.75rem}.role-play-list-container .role-plays-grid .role-play-card .description{color:#555;font-size:.9rem;margin-bottom:.75rem;margin-top:.1rem}.role-play-list-container .role-plays-grid .role-play-card .card-details .card-detail-item{color:var(--up-foreground);font-size:.98rem;margin-bottom:.5rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:break-word}.role-play-list-container .role-plays-grid .role-play-card .card-details .steps-list{list-style:disc;margin:.25rem 0 .5rem;padding-left:1.2rem}.role-play-list-container .role-plays-grid .role-play-card .card-details .steps-list li{color:var(--up-foreground);font-size:.95rem;max-width:95%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-play-list-container .role-plays-grid .role-play-card .card-details .module-scenarios-list{color:var(--up-foreground);font-size:.95rem;margin-top:.5rem}.role-play-list-container .role-plays-grid .role-play-card .card-details .module-scenarios-list ul{margin:.2rem 0 0 1.2rem;padding:0}.role-play-list-container .role-plays-grid .role-play-card .card-details .module-scenarios-list ul li{max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-play-list-container .role-plays-grid .role-play-card .actions{display:flex;gap:.5rem;margin-top:auto}.role-play-list-container .role-plays-grid .role-play-card .actions button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.role-play-list-container .role-plays-grid .role-play-card .actions button:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed;opacity:.5;position:relative}.role-play-list-container .role-plays-grid .role-play-card .actions button:disabled:hover{background-color:#f5f5f5;color:#999}.role-play-list-container .role-plays-grid .role-play-card .actions .edit-button{background-color:#f0f0f0;color:#333}.role-play-list-container .role-plays-grid .role-play-card .actions .edit-button:hover:not(:disabled){background-color:#e0e0e0}.role-play-list-container .role-plays-grid .role-play-card .actions .edit-button:disabled{background-color:#f5f5f5;color:#999}.role-play-list-container .role-plays-grid .role-play-card .actions .view-button{background-color:#e3f2fd;color:#1976d2}.role-play-list-container .role-plays-grid .role-play-card .actions .view-button:hover:not(:disabled){background-color:#bbdefb}.role-play-list-container .role-plays-grid .role-play-card .actions .view-button:disabled{background-color:#f5f5f5;color:#999}.role-play-list-container .role-plays-grid .role-play-card .actions .delete-button{background-color:#ffebee;color:#d32f2f}.role-play-list-container .role-plays-grid .role-play-card .actions .delete-button:hover{background-color:#ffcdd2}.role-play-list-container .role-plays-grid .role-play-card .actions .start-button{background-color:#e3f2fd;color:#1976d2;margin-left:auto}.role-play-list-container .role-plays-grid .role-play-card .actions .start-button:hover{background-color:#bbdefb}.role-play-list-container .role-plays-grid .no-results{background-color:#f5f5f5;border-radius:6px;color:#666;grid-column:1/-1;padding:2rem;text-align:center}.role-play-list-container .pagination-wrapper{margin-top:1rem}.role-play-list-container .user-form-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.role-play-list-container .user-form-overlay,.user-form-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-overlay{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;padding:1rem;width:100%;z-index:1000}.role-play-form{--up-accent:#ffc107;--up-accent-dark:#e6ad00;--up-background:#fff;--up-foreground:#000;--up-muted:#f4f4f5;--up-muted-foreground:#000;--up-border:#e4e4e7;--up-admin:#8b5cf6;--up-trainer:#3b82f6;--up-trainee:#10b981;background-color:var(--up-background);border-radius:8px;box-shadow:0 2px 10px #0000000d;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:90%;z-index:1001}.role-play-form .form-header{align-items:center;background-color:var(--up-muted);border-bottom:1px solid var(--up-border);display:flex;justify-content:space-between;padding:1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:1}.role-play-form .form-header h2{color:var(--up-foreground);font-size:1.5rem;font-weight:600;margin:0}.role-play-form .form-header .close-button{align-items:center;background:none;border:none;border-radius:4px;color:var(--up-muted-foreground);cursor:pointer;display:flex;font-size:1.5rem;height:2rem;justify-content:center;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:all .2s;width:2rem}.role-play-form .form-header .close-button:hover{background-color:var(--up-border);color:var(--up-foreground)}.role-play-form form{padding:1.5rem}.role-play-form form .form-group{margin-bottom:1.5rem}.role-play-form form .form-group label{color:var(--up-foreground);display:block;font-size:.95rem;font-weight:500;margin-bottom:.5rem}.role-play-form form .form-group select{color:#030000}.role-play-form form .form-group input,.role-play-form form .form-group textarea{background-color:var(--up-background);border:1px solid var(--up-border);border-radius:4px;color:var(--up-foreground);font-size:.95rem;padding:.75rem;transition:all .15s;width:100%}.role-play-form form .form-group input:focus,.role-play-form form .form-group textarea:focus{border-color:var(--up-accent);box-shadow:0 0 0 2px #ffc1071a;outline:none}.role-play-form form .form-group input:disabled,.role-play-form form .form-group textarea:disabled{background-color:var(--up-muted);cursor:not-allowed;opacity:.7}.role-play-form form .form-group textarea{min-height:100px;resize:vertical}.role-play-form .form-actions{background-color:var(--up-muted);border-top:1px solid var(--up-border);bottom:0;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem;position:-webkit-sticky;position:sticky;z-index:1}.role-play-form .form-actions button{border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:500;min-width:100px;padding:.75rem 1.5rem;transition:all .15s}.role-play-form .form-actions button:disabled{cursor:not-allowed;opacity:.5}.role-play-form .form-actions .cancel-button{background-color:var(--up-muted);border:1px solid var(--up-border);color:var(--up-foreground)}.role-play-form .form-actions .cancel-button:hover:not(:disabled){background-color:var(--up-border);border-color:var(--up-accent);color:var(--up-accent-dark)}.role-play-form .form-actions .save-button{background-color:var(--up-accent);border:none;color:var(--up-foreground)}.role-play-form .form-actions .save-button:hover:not(:disabled){background-color:var(--up-accent-dark)}.role-play-form .scenario-social-skills-select{min-height:100px}.role-play-form .scenario-social-skills-select,.role-play-form .scenario-teaching-method-select{background:#fafbfc;border:1px solid #ccc;border-radius:6px;font-size:1rem;padding:8px;width:100%}.role-play-form .scenario-helper-text{color:#666;display:block;font-size:.92em;margin-top:4px}.role-play-form .helper-text{clear:both!important;display:block!important;margin-top:-.25rem!important;max-width:100%!important;position:static!important}.role-play-form .scenario-social-skills-checkbox-list{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-bottom:.5rem}.role-play-form .scenario-checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:1rem;gap:.5rem;-webkit-user-select:none;user-select:none}.role-play-form .scenario-checkbox-label input[type=checkbox]{accent-color:#ffc107;accent-color:var(--up-accent,#ffc107);height:1.1em;margin-right:.3em;width:1.1em}@media(max-width:768px){.role-play-form{max-height:95vh;max-width:95%}.role-play-form .form-header{padding:1rem}.role-play-form .form-header h2{font-size:1.25rem}.role-play-form .form-actions,.role-play-form form{padding:1rem}.role-play-form .form-actions button{min-width:80px;padding:.5rem 1rem}}.role-play-form input,.role-play-form textarea{color:var(--up-foreground)!important}.up-input{background:var(--up-background);border:1px solid var(--up-border);border-radius:4px;color:var(--up-foreground);font-size:1rem;margin-bottom:.5rem;padding:8px 12px;transition:border-color .2s;width:100%}.up-input:focus{border-color:var(--up-accent-dark);outline:none}.up-textarea{background:var(--up-background);border:1px solid var(--up-border);border-radius:4px;color:var(--up-foreground);font-size:1rem;margin-bottom:0;min-height:60px;padding:8px 12px;resize:vertical;transition:border-color .2s;width:100%}.up-textarea:focus{border-color:var(--up-accent-dark);outline:none}.up-btn{background:var(--up-accent);border:none;border-radius:4px;color:var(--up-foreground);cursor:pointer;font-size:1rem;margin-top:.25rem;padding:6px 16px;transition:background .2s}.up-btn:hover{background:var(--up-accent-dark)}.steps-edit-list{list-style:none;margin:0;padding:0}.step-item{background:#fafafa;border:1px solid var(--up-border);border-radius:8px;margin-bottom:1rem;padding:1rem;position:relative}.step-item .step-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.step-item .step-header .step-index{color:var(--up-foreground);font-size:1.1rem;font-weight:600;margin:0}.step-item .step-header .remove-step-icon{align-items:center;background:none;border:none;cursor:pointer;display:flex;padding:0}.step-item .up-input,.step-item .up-textarea{margin-bottom:.125rem}.pagination{border-top:1px solid #eaeaea;border-top:1px solid var(--border,#eaeaea);margin-top:16px;padding:16px 0}.pagination.single-page{color:#666;color:var(--muted-foreground,#666)}.pagination.single-page .pagination-controls{justify-content:flex-end}.pagination.single-page .items-per-page{margin-left:0}.pagination.single-page .pagination-limit{background-color:#f9f9f9;background-color:var(--muted,#f9f9f9);border:1px solid #e0e0e0;border:1px solid var(--border,#e0e0e0)}.pagination .pagination-info{color:#666;color:var(--muted-foreground,#666);font-size:14px}.pagination .pagination-controls{gap:8px}.pagination .pagination-controls .pagination-button{border:1px solid #e4e4e7;border:1px solid var(--border,#e4e4e7);color:#000;color:var(--foreground,#000)}.pagination .pagination-controls .pagination-button:hover:not(:disabled){background-color:#f5f5f5;background-color:var(--muted,#f5f5f5);border-color:#ccc;border-color:var(--accent,#ccc)}.pagination .pagination-controls .pagination-button:first-child,.pagination .pagination-controls .pagination-button:last-child{background-color:#f4f4f5;background-color:var(--muted,#f4f4f5)}.pagination .pagination-controls .pagination-button:first-child:hover:not(:disabled),.pagination .pagination-controls .pagination-button:last-child:hover:not(:disabled){background-color:#ffc1071a;background-color:var(--accent-muted,#ffc1071a);color:#e6ad00;color:var(--accent-dark,#e6ad00)}.pagination .pagination-controls .pagination-button.active{background-color:#007bff;background-color:var(--accent,#007bff);border-color:#007bff;border-color:var(--accent,#007bff);color:#fff;color:var(--accent-foreground,#fff)}.pagination .pagination-controls .pagination-pages{align-items:center;display:flex;gap:4px}.pagination .pagination-controls .pagination-status{color:#666;color:var(--muted-foreground,#666);font-size:14px;margin:0 8px}.pagination .pagination-controls .pagination-limit{background-color:#fff;background-color:var(--background,#fff);border:1px solid #ddd;border:1px solid var(--border,#ddd);border-radius:4px;font-size:14px;margin-left:12px;min-width:100px;padding:6px 10px}.pagination .pagination-controls .pagination-limit:focus,.pagination .pagination-controls .pagination-limit:hover{border-color:#007bff;border-color:var(--accent,#007bff)}.pagination .pagination-controls .items-per-page{align-items:center;display:flex;margin-left:16px}.pagination .pagination-controls .items-per-page label{color:#666;color:var(--muted-foreground,#666);font-size:14px;margin-right:8px}.pagination-wrapper{border-top:1px solid var(--border,#eaeaea)}.pagination-wrapper .pagination{border-top:none;margin-top:0;padding-top:0}.role-plays-grid,.users-table-container{animation:fadeIn .2s ease-out}@media screen and (max-width:768px){.pagination{flex-direction:column;gap:16px}.pagination .pagination-info{text-align:center}.pagination .pagination-controls{flex-wrap:wrap;justify-content:center}.pagination .pagination-controls .pagination-limit{margin-top:8px}}.loading-container{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:200px}.loading-container .spinner{animation:spin 1s ease-in-out infinite;border:4px solid #0000001a;border-radius:50%;border-top-color:#3498db;height:40px;width:40px}.loading-container .loading-message{color:#666;font-size:16px;margin-top:16px}.confirmation-modal__backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1100}.confirmation-modal{align-items:center;animation:fadeIn .2s;background:#fff;background:var(--up-background,#fff);border-radius:8px;box-shadow:0 2px 10px #00000014;display:flex;flex-direction:column;max-width:90vw;min-width:320px;padding:2rem 2.5rem}.confirmation-modal__title{color:#222;color:var(--up-foreground,#222);font-size:1.3rem;font-weight:600;margin-bottom:1rem}.confirmation-modal__message{color:#444;font-size:1rem;margin-bottom:1.5rem;text-align:center}.confirmation-modal__actions{display:flex;gap:1rem}.confirmation-modal__btn{border:none;border-radius:6px;cursor:pointer;font-size:1rem;padding:.5rem 1.5rem;transition:background .15s,color .15s}.confirmation-modal__btn--cancel{background:#f3f3f3;background:var(--up-muted,#f3f3f3);color:#666}.confirmation-modal__btn--cancel:hover{background:#e0e0e0}.confirmation-modal__btn--confirm{background:#ffc107;background:var(--up-accent,#ffc107);color:#fff;font-weight:500}.confirmation-modal__btn--confirm:hover{background:#e6ad00;background:var(--up-accent-dark,#e6ad00)}.user-form-overlay{--uf-accent:#ffc107;--uf-accent-dark:#e6ad00;--uf-background:#fff;--uf-foreground:#000;--uf-muted:#f4f4f5;--uf-muted-foreground:#000;--uf-border:#e4e4e7;align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.user-form-container{background-color:var(--uf-background);border-radius:.5rem;box-shadow:0 10px 25px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.user-form-container button,.user-form-container h1,.user-form-container h2,.user-form-container h3,.user-form-container input,.user-form-container label,.user-form-container p,.user-form-container select,.user-form-container span,.user-form-container textarea{color:var(--uf-foreground)}.user-form-container .form-header{align-items:center;border-bottom:1px solid var(--uf-border);display:flex;justify-content:space-between;padding:1.5rem}.user-form-container .form-header h2{color:var(--uf-foreground);font-size:1.25rem;font-weight:600;margin:0}.user-form-container .form-header .close-button{align-items:center;background:#0000;border:none;border-radius:.25rem;color:var(--uf-foreground);cursor:pointer;display:flex;height:2rem;justify-content:center;width:2rem}.user-form-container .form-header .close-button:hover{background-color:var(--uf-muted)}.user-form-container form{padding:1.5rem}.user-form-container form .form-group{margin-bottom:1.25rem}.user-form-container form .form-group label{color:var(--uf-foreground);display:block;font-weight:500;margin-bottom:.5rem}.user-form-container form .form-group input,.user-form-container form .form-group select{background-color:var(--uf-background);border:1px solid var(--uf-border);border-radius:.25rem;color:var(--uf-foreground);font-size:1rem;padding:.75rem;width:100%}.user-form-container form .form-group input::placeholder,.user-form-container form .form-group select::placeholder{color:#0009}.user-form-container form .form-group input:focus,.user-form-container form .form-group select:focus{border-color:#0000;outline:2px solid var(--uf-accent)}.user-form-container form .form-group .error{color:#ef4444;display:block;font-size:.875rem;margin-top:.5rem}.user-form-container form .form-actions{border-top:1px solid var(--uf-border);display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem}.user-form-container form .form-actions button{border-radius:.25rem;cursor:pointer;font-weight:500;padding:.75rem 1.5rem}.user-form-container form .form-actions button.cancel-button{background-color:#0000;border:1px solid var(--uf-border);color:var(--uf-foreground)}.user-form-container form .form-actions button.cancel-button:hover{background-color:var(--uf-muted)}.user-form-container form .form-actions button.submit-button{background-color:var(--uf-accent);border:none;color:var(--uf-foreground)}.user-form-container form .form-actions button.submit-button:hover{background-color:var(--uf-accent-dark)}.spinner{animation:spin 1.5s linear infinite;margin-right:8px}.loading{align-items:center;color:var(--up-foreground);display:flex;flex-direction:column;justify-content:center;padding:3rem 0}.loading .spinner{margin-bottom:1rem}button:has(.spinner){align-items:center;display:inline-flex;justify-content:center}.sessions-page{--sp-accent:#ffc107;--sp-accent-dark:#e6ad00;--sp-background:#fff;--sp-foreground:#000;--sp-muted:#f4f4f5;--sp-muted-foreground:#000;--sp-border:#e4e4e7;height:100%;margin:0 auto;padding:2rem;position:relative;width:100%}.sessions-page button,.sessions-page h1,.sessions-page h2,.sessions-page h3,.sessions-page input,.sessions-page label,.sessions-page p,.sessions-page span,.sessions-page td,.sessions-page textarea,.sessions-page th{color:var(--sp-foreground)}.sessions-page .header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.sessions-page .header h1{color:var(--sp-foreground);font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.sessions-page .header .description{color:var(--sp-foreground);font-size:1rem;margin:0 0 1.5rem}.sessions-page .header .create-button{align-items:center;align-self:flex-start;background-color:var(--sp-accent);border:none;border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.sessions-page .header .create-button:hover{background-color:var(--sp-accent-dark)}.sessions-page .search-container{margin-bottom:2rem;position:relative}.sessions-page .search-container .search-icon{color:var(--sp-foreground);left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.sessions-page .search-container .search-input{background-color:var(--sp-background);border:1px solid var(--sp-border);border-radius:.25rem;color:var(--sp-foreground);font-size:1rem;padding:.75rem 1rem .75rem 2.5rem;width:100%}.sessions-page .search-container .search-input::placeholder{color:#0009}.sessions-page .search-container .search-input:focus{border-color:#0000;outline:2px solid var(--sp-accent)}.sessions-page .loading{color:var(--sp-foreground);padding:2rem;text-align:center}.sessions-page .sessions-table-container{border:1px solid var(--sp-border);border-radius:.5rem;overflow:hidden}.sessions-page .sessions-table{background-color:var(--sp-background);border-collapse:collapse;width:100%}.sessions-page .sessions-table td,.sessions-page .sessions-table th{color:var(--sp-foreground);padding:1rem;text-align:left}.sessions-page .sessions-table th{background-color:var(--sp-muted);font-size:.9rem;font-weight:600}.sessions-page .sessions-table tr{border-bottom:1px solid var(--sp-border)}.sessions-page .sessions-table tr:last-child{border-bottom:none}.sessions-page .sessions-table tr:hover{background-color:#00000005}.sessions-page .sessions-table .timestamp-cell,.sessions-page .sessions-table .user-cell{align-items:center;display:flex;gap:.5rem}.sessions-page .sessions-table .module-cell span{color:var(--sp-foreground);font-size:.9rem}.sessions-page .sessions-table .status-cell{display:flex;flex-direction:column;gap:.5rem}.sessions-page .sessions-table .score-badge{align-items:center;background-color:var(--sp-accent);border-radius:.5rem;color:var(--sp-foreground);display:inline-flex;font-weight:600;height:2rem;justify-content:center;width:3rem}.sessions-page .sessions-table .score-badge.processing{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:1rem;color:#6b7280;display:inline-flex;font-size:.75rem;font-weight:500;gap:.5rem;height:auto;padding:.25rem .6rem;width:auto}.sessions-page .sessions-table .score-badge.processing .spin{animation:spin 1s linear infinite}.sessions-page .sessions-table .score-badge.missing{background-color:#0000000d;border:1px solid #e5e7eb;color:#6b7280}.sessions-page .sessions-table .steps-badge{background-color:#f9fafb;border:1px solid #d1d5db;border-radius:6px;color:#374151;display:inline-block;font-family:monospace;font-size:.75rem;font-weight:500;padding:3px 10px}.sessions-page .sessions-table .steps-badge.processing{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:1rem;color:#6b7280;display:inline-flex;font-size:.75rem;font-weight:500;gap:.5rem;padding:.25rem .6rem}.sessions-page .sessions-table .steps-badge.processing .spin{animation:spin 1s linear infinite}.sessions-page .sessions-table .steps-badge.missing{background-color:#0000000d;border:1px solid #e5e7eb;color:#6b7280}.sessions-page .sessions-table .no-score{color:var(--sp-foreground);font-style:italic;opacity:.7}.sessions-page .sessions-table .actions-cell{width:100px}.sessions-page .sessions-table .action-buttons{display:flex;gap:.5rem}.sessions-page .sessions-table .action-buttons button{align-items:center;background:#0000;border:1px solid var(--sp-border);border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;display:flex;height:2rem;justify-content:center;transition:all .15s;width:2rem}.sessions-page .sessions-table .action-buttons button:hover{background-color:var(--sp-muted)}.sessions-page .sessions-table .action-buttons button.view-transcript-button:hover{border-color:#3b82f6;color:#3b82f6}.sessions-page .sessions-table .action-buttons button.grade-button:hover{border-color:var(--sp-accent);color:var(--sp-accent-dark)}.sessions-page .sessions-table .action-buttons button:disabled{cursor:not-allowed;opacity:.5}.sessions-page .sessions-table .empty-state{padding:2rem;text-align:center}.sessions-page .sessions-table .empty-state p{color:var(--sp-foreground);margin:0 0 1rem}.sessions-page .sessions-table .empty-state .clear-search{background-color:#0000;border:1px solid var(--sp-border);border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;padding:.5rem 1rem}.sessions-page .sessions-table .empty-state .clear-search:hover{background-color:var(--sp-muted)}.sessions-page .transcript-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.sessions-page .transcript-modal{background-color:var(--sp-background);border-radius:.5rem;box-shadow:0 10px 25px #0003;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.sessions-page .transcript-modal .transcript-header{align-items:center;border-bottom:1px solid var(--sp-border);display:flex;justify-content:space-between;padding:1.5rem}.sessions-page .transcript-modal .transcript-header h2{color:var(--sp-foreground);font-size:1.25rem;font-weight:600;margin:0}.sessions-page .transcript-modal .transcript-header .close-button{align-items:center;background:#0000;border:none;border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;display:flex;font-size:1.5rem;height:2rem;justify-content:center;width:2rem}.sessions-page .transcript-modal .transcript-header .close-button:hover{background-color:var(--sp-muted)}.sessions-page .transcript-modal .session-info{border-bottom:1px solid var(--sp-border);padding:1rem 1.5rem}.sessions-page .transcript-modal .session-info p{color:var(--sp-foreground);margin:.5rem 0}.sessions-page .transcript-modal .grading-info{background-color:#ffc1070d;border-bottom:1px solid var(--sp-border);padding:1rem 1.5rem}.sessions-page .transcript-modal .grading-info h3{color:var(--sp-foreground);font-size:1.1rem;font-weight:600;margin:0 0 .75rem}.sessions-page .transcript-modal .grading-info h4{font-size:1rem;font-weight:600;margin:1rem 0 .5rem}.sessions-page .transcript-modal .grading-info .score-container{align-items:flex-start;display:flex;gap:1rem}.sessions-page .transcript-modal .grading-info .score-container .score-badge.large{border-radius:.5rem;font-size:1.5rem;height:4rem;width:4rem}.sessions-page .transcript-modal .grading-info .score-container .score-details{flex:1 1}.sessions-page .transcript-modal .grading-info .steps-container{margin-top:1.5rem}.sessions-page .transcript-modal .grading-info .steps-container .steps-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:.5rem}.sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item{border:1px solid var(--sp-border);border-radius:.5rem;padding:1rem}.sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item.step-included{background-color:#10b9810d;border-color:#10b981}.sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item.step-missing{background-color:#ef44440d;border-color:#ef4444}.sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item .step-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item .step-header .step-name{font-weight:600}.sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item .step-header .step-status{border-radius:1rem;font-size:.75rem;padding:.125rem .5rem}.step-included .sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item .step-header .step-status{background-color:#10b9811a;color:#10b981}.step-missing .sessions-page .transcript-modal .grading-info .steps-container .steps-grid .step-item .step-header .step-status{background-color:#ef44441a;color:#ef4444}.sessions-page .transcript-modal .grading-info p{color:var(--sp-foreground);margin:.5rem 0}.sessions-page .transcript-modal .transcript-messages{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.sessions-page .transcript-modal .transcript-messages .message{border-radius:.5rem;max-width:80%;padding:1rem}.sessions-page .transcript-modal .transcript-messages .message .message-sender{color:var(--sp-foreground);font-weight:600;margin-bottom:.5rem}.sessions-page .transcript-modal .transcript-messages .message .message-content{color:var(--sp-foreground)}.sessions-page .transcript-modal .transcript-messages .message .message-feedback{background-color:#3b82f61a;border-radius:.25rem;font-size:.875rem;margin-top:.75rem;padding:.5rem}.sessions-page .transcript-modal .transcript-messages .message.assistant-message{align-self:flex-start;background-color:var(--sp-muted);border-bottom-left-radius:0}.sessions-page .transcript-modal .transcript-messages .message.user-message{align-self:flex-end;background-color:#ffc1071a;border-bottom-right-radius:0}.sessions-page .skeleton-row td{padding:12px 16px;vertical-align:middle}.sessions-page .skeleton-row .skeleton-text{border-radius:4px;height:20px;width:80%}.sessions-page .skeleton-row .skeleton-badge,.sessions-page .skeleton-row .skeleton-text{animation:skeleton-loading 1.5s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%}.sessions-page .skeleton-row .skeleton-badge{border-radius:12px;height:24px;width:100px}.sessions-page .skeleton-row .skeleton-actions{display:flex;gap:8px;justify-content:flex-end}.sessions-page .skeleton-row .skeleton-actions .skeleton-button{animation:skeleton-loading 1.5s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%;border-radius:4px;height:32px;width:32px}.sessions-page .pagination{align-items:center;color:var(--sp-foreground);display:flex;justify-content:space-between;margin:1rem;padding:.5rem 0}.sessions-page .pagination .pagination-info{color:var(--sp-foreground);font-size:.875rem}.sessions-page .pagination .pagination-controls{align-items:center;display:flex;gap:.5rem}.sessions-page .pagination .pagination-controls .pagination-button{align-items:center;background-color:#0000;border:1px solid var(--sp-border);border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;display:flex;font-size:.75rem;font-weight:500;height:2rem;justify-content:center;min-width:2.5rem;padding:.375rem .75rem;transition:all .15s}.sessions-page .pagination .pagination-controls .pagination-button:hover:not(:disabled){background-color:var(--sp-muted);border-color:var(--sp-accent);color:var(--sp-accent-dark)}.sessions-page .pagination .pagination-controls .pagination-button:disabled{cursor:not-allowed;opacity:.5}.sessions-page .pagination .pagination-controls .pagination-button.active{background-color:var(--sp-accent);border-color:var(--sp-accent);color:var(--sp-foreground)}.sessions-page .pagination .pagination-controls .pagination-status{color:var(--sp-foreground);font-size:.875rem;margin:0 .5rem;min-width:5rem;text-align:center}.sessions-page .pagination .pagination-controls .pagination-limit{background-color:#0000;border:1px solid var(--sp-border);border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;font-size:.875rem;margin-left:.5rem;padding:.375rem}.sessions-page .pagination .pagination-controls .pagination-limit:focus{border-color:var(--sp-accent);outline:none}.sessions-page .pagination .pagination-controls .pagination-limit:hover{border-color:var(--sp-accent)}.sessions-page .pagination-wrapper{border-top:1px solid #eaeaea;margin-top:auto;padding-top:20px}.status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.status-badge.transcription-available{background-color:#10b9811a;color:#10b981}.status-badge.transcription-missing{background-color:#ef44441a;color:#ef4444}.status-badge.feedback-available{background-color:#3b82f61a;color:#3b82f6}.status-badge.feedback-missing{background-color:#0000001a;color:#6b7280}.status-badge.processing{background-color:#f59e0b1a;color:#f59e0b}.status-badge.processing .spin{animation:spin 1s linear infinite}.status-badge.failed{background-color:#ef44441a;color:#ef4444}.run-id-cell{font-family:monospace;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-badge.small{background-color:var(--sp-accent);border-radius:50%;color:var(--sp-foreground);font-size:.875rem;font-weight:600;height:2rem;justify-content:center;width:2rem}.score-badge.processing,.score-badge.small{align-items:center;display:inline-flex;margin-left:.5rem}.score-badge.processing{background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:1rem;color:#6b7280;font-size:.75rem;font-weight:500;gap:.5rem;padding:.25rem .6rem}.score-badge.processing .spin{animation:spin 1s linear infinite}.loading-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.loading-overlay .loading-spinner{align-items:center;background-color:#fff;border-radius:0;display:flex;flex-direction:column;gap:1rem;padding:2rem}.loading-overlay .loading-spinner .spinner{animation:spin 1s linear infinite}.loading-overlay .loading-spinner span{color:var(--sp-foreground);font-weight:500}.no-transcript{background-color:var(--sp-muted);border-radius:.5rem;color:var(--sp-foreground);font-style:italic;padding:2rem;text-align:center}.pagination{align-items:center;color:var(--sp-foreground);display:flex;justify-content:space-between;margin:1rem;padding:.5rem 0}.pagination .pagination-info{color:var(--sp-foreground);font-size:.875rem}.pagination .pagination-controls{align-items:center;display:flex;gap:.5rem}.pagination .pagination-controls .pagination-button{align-items:center;background-color:#0000;border:1px solid var(--sp-border);border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;display:flex;font-size:.75rem;font-weight:500;height:2rem;justify-content:center;min-width:2.5rem;padding:.375rem .75rem;transition:all .15s}.pagination .pagination-controls .pagination-button:hover:not(:disabled){background-color:var(--sp-muted);border-color:var(--sp-accent);color:var(--sp-accent-dark)}.pagination .pagination-controls .pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination .pagination-controls .pagination-button.active{background-color:var(--sp-accent);border-color:var(--sp-accent);color:var(--sp-foreground)}.pagination .pagination-controls .pagination-status{color:var(--sp-foreground);font-size:.875rem;margin:0 .5rem;min-width:5rem;text-align:center}.pagination .pagination-controls .pagination-limit{background-color:#0000;border:1px solid var(--sp-border);border-radius:.25rem;color:var(--sp-foreground);cursor:pointer;font-size:.875rem;margin-left:.5rem;padding:.375rem}.pagination .pagination-controls .pagination-limit:focus{border-color:var(--sp-accent);outline:none}.pagination .pagination-controls .pagination-limit:hover{border-color:var(--sp-accent)}.pagination .loading-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:#0000;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.pagination .loader{display:inline-block;height:40px;margin-bottom:16px;position:relative;width:40px}.pagination .loader:after{animation:spin 1.2s linear infinite;border-color:#3b82f6 #0000;border-radius:50%;border-style:solid;border-width:3px;content:" ";display:block;height:32px;width:32px}.pagination .loading-text{color:#333;font-size:14px;font-weight:500}.transcript-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.transcript-overlay .transcript-modal{background-color:#fff;border-radius:8px;box-shadow:0 10px 25px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow-y:auto;width:90%}.transcript-overlay .transcript-modal .transcript-header{align-items:center;background-color:#f8f8f8;border-bottom:1px solid #eaeaea;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:1rem 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.transcript-overlay .transcript-modal .transcript-header h2{color:#111;font-size:1.25rem;margin:0}.transcript-overlay .transcript-modal .transcript-header .header-actions{align-items:center;display:flex;gap:.5rem}.transcript-overlay .transcript-modal .transcript-header .feedback-button{align-items:center;background-color:#f0f4f9;border:1px solid #d0d7de;border-radius:6px;color:#24292e;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.transcript-overlay .transcript-modal .transcript-header .feedback-button:hover{background-color:#e1e4e8;border-color:#c6cdd4}.transcript-overlay .transcript-modal .transcript-header .feedback-button svg{color:#586069}.transcript-overlay .transcript-modal .transcript-header .close-button{align-items:center;background:#0000;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.transcript-overlay .transcript-modal .transcript-header .close-button:hover{background-color:#0000000d;color:#333}.transcript-overlay .transcript-modal .session-info{grid-gap:1rem;background-color:#ffc1070d;border-bottom:1px solid #eaeaea;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:1.5rem}.transcript-overlay .transcript-modal .session-info .info-item{display:flex;flex-direction:column;gap:.25rem}.transcript-overlay .transcript-modal .session-info .info-item.full-width{grid-column:1/-1}.transcript-overlay .transcript-modal .session-info .info-item .info-label{color:#555;font-size:.875rem;font-weight:600}.transcript-overlay .transcript-modal .session-info .info-item .info-value{color:#111;font-size:.95rem}.transcript-overlay .transcript-modal .session-info .info-item .date-display{align-items:center;color:#111;display:flex;gap:.5rem}.transcript-overlay .transcript-modal .config-info-section{background-color:#f8f8f8;border-bottom:1px solid #eaeaea;padding:1.5rem}.transcript-overlay .transcript-modal .config-info-section h3{color:#111;font-size:1.125rem;margin:0 0 1rem}.transcript-overlay .transcript-modal .config-info-section .config-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.transcript-overlay .transcript-modal .config-info-section .config-grid .config-item{display:flex;flex-direction:column;gap:.25rem}.transcript-overlay .transcript-modal .config-info-section .config-grid .config-item .config-label{color:#555;font-size:.875rem;font-weight:600}.transcript-overlay .transcript-modal .config-info-section .config-grid .config-item .config-value{color:#111;font-size:.95rem}.transcript-overlay .transcript-modal .grading-section{background-color:#f9f9f9;border-bottom:1px solid #eaeaea;padding:1.5rem}.transcript-overlay .transcript-modal .grading-section h3{align-items:center;color:#111;display:flex;font-size:1.125rem;gap:.5rem;margin:0 0 1rem}.transcript-overlay .transcript-modal .grading-section h3 svg{color:#ffc107}.transcript-overlay .transcript-modal .grading-section .score-display{align-items:flex-start;display:flex;gap:1.5rem}.transcript-overlay .transcript-modal .grading-section .score-display .score-badge{align-items:center;background-color:#ffc107;border-radius:8px;color:#000;display:flex;flex-direction:column;font-size:2rem;font-weight:700;gap:.25rem;height:5rem;justify-content:center;width:5rem}.transcript-overlay .transcript-modal .grading-section .score-display .score-badge .processing-text{font-size:.75rem;font-weight:500}.transcript-overlay .transcript-modal .grading-section .score-display .score-badge .spin{animation:spin 1s linear infinite}.transcript-overlay .transcript-modal .grading-section .score-display .score-details{flex:1 1}.transcript-overlay .transcript-modal .grading-section .score-display .score-details h4{color:#333;font-size:1rem;margin:0 0 .5rem}.transcript-overlay .transcript-modal .grading-section .score-display .score-details p{color:#444;line-height:1.5;margin:0}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form{background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:.75rem;padding:1rem}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-form-header{margin-bottom:.75rem}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-form-header h4{color:#333;font-size:.95rem;margin:0}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form textarea{border:1px solid #ddd;border-radius:4px;font-size:.875rem;padding:.75rem;resize:vertical;width:100%}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640;outline:none}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form textarea:disabled{background-color:#f9f9f9;cursor:not-allowed}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-controls{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-controls button{border-radius:4px;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-controls button.cancel-btn{background-color:#0000;border:1px solid #ddd;color:#666}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-controls button.cancel-btn:hover:not(:disabled){background-color:#f4f4f4;border-color:#ccc}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-controls button.submit-btn{background-color:#ffc107;border:none;color:#fff}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-controls button.submit-btn:hover:not(:disabled){background-color:#eeba1f}.transcript-overlay .transcript-modal .grading-section .score-display .score-details .feedback-form .feedback-controls button:disabled{cursor:not-allowed;opacity:.6}.transcript-overlay .transcript-modal .grading-section .steps-section{margin-top:1.5rem}.transcript-overlay .transcript-modal .grading-section .steps-section h4{color:#333;font-size:1rem;margin:0 0 1rem}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list{display:flex;flex-direction:column;gap:1rem}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card{background-color:#fff;border:1px solid #eaeaea;border-radius:8px;padding:1rem}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card.included{border-left:4px solid #10b981}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card.missing{border-left:4px solid #ef4444}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-header{align-items:center;display:flex;margin-bottom:.75rem}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-header .step-number{align-items:center;background-color:#f4f4f4;border-radius:50%;color:#666;display:flex;font-size:.875rem;font-weight:600;height:1.75rem;justify-content:center;margin-right:.75rem;width:1.75rem}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-header .step-title{color:#333;flex:1 1;font-weight:600}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-header .step-status .included-tag,.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-header .step-status .missing-tag{align-items:center;border-radius:1rem;display:flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-header .step-status .included-tag{background-color:#10b9811a;color:#10b981}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-header .step-status .missing-tag{background-color:#ef44441a;color:#ef4444}.transcript-overlay .transcript-modal .grading-section .steps-section .steps-list .step-card .step-feedback{color:#555;font-size:.9rem;line-height:1.5}.transcript-overlay .transcript-modal .transcript-section{padding:1.5rem}.transcript-overlay .transcript-modal .transcript-section h3{align-items:center;color:#111;display:flex;font-size:1.125rem;gap:.5rem;margin:0 0 1rem}.transcript-overlay .transcript-modal .transcript-section .conversation{display:flex;flex-direction:column;gap:1.5rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container{max-width:80%}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container.bot-message{align-self:flex-start}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container.bot-message .message{background-color:#f4f4f5;border-bottom-left-radius:0}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container.user-message{align-self:flex-end}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container.user-message .message{background-color:#ffc1071a;border-bottom-right-radius:0}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message{border-radius:8px;padding:1rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .message-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .message-header .message-metadata{display:flex;flex-direction:column;gap:.2rem;margin-top:4px}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .message-header .message-metadata .speaker-name{color:#333;font-weight:600}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .message-header .message-metadata .message-timestamp{align-items:center;color:#888;display:flex;font-size:.75rem;gap:4px}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .message-body{color:#333;line-height:1.5}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .message-feedback{background-color:#3b82f61a;border-radius:4px;color:#333;font-size:.875rem;line-height:1.4;margin-top:1rem;padding:.75rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .message-feedback strong{color:#3b82f6}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge .feedback-stats{align-items:center;color:#666;display:flex;font-size:.875rem;gap:1rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge .feedback-stats .downvote-count,.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge .feedback-stats .upvote-count{align-items:center;display:flex;gap:.25rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge .feedback-stats .upvote-count{color:#28a745}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge .feedback-stats .downvote-count{color:#dc3545}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge .feedback-comments-toggle{align-items:center;color:#3b82f6;cursor:pointer;display:flex;font-size:.875rem;gap:.25rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-badge .feedback-comments-toggle:hover{text-decoration:underline}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list{background-color:#f8f9fa;border-radius:4px;margin-top:.5rem;padding:.5rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item{border-bottom:1px solid #eee;margin-bottom:.75rem;padding-bottom:.75rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-header .user-info{align-items:center;color:#666;display:flex;font-size:.875rem;gap:.5rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-header .user-info .user-name{font-weight:500}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-header .rating-indicator{align-items:center;display:flex;font-size:.75rem;gap:.25rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-header .rating-indicator.true{color:#28a745}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-header .rating-indicator.false{color:#dc3545}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-content{color:#333;font-size:.875rem;line-height:1.4;margin:.25rem 0}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-footer{align-items:center;color:#666;display:flex;font-size:.75rem;gap:.5rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .message .feedback-comments-list .feedback-comment-item .comment-footer .timestamp{align-items:center;display:flex;gap:.25rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form{background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-top:.75rem;padding:1rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-form-header{margin-bottom:.75rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-form-header h4{color:#333;font-size:.95rem;margin:0}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form textarea{border:1px solid #ddd;border-radius:4px;font-size:.875rem;padding:.75rem;resize:vertical;width:100%}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640;outline:none}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form textarea:disabled{background-color:#f9f9f9;cursor:not-allowed}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-controls{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-controls .cancel-btn{background-color:#0000;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-controls .cancel-btn:hover:not(:disabled){background-color:#f4f4f4;border-color:#ccc}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-controls .submit-btn{background-color:#ffc107;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-controls .submit-btn:hover:not(:disabled){background-color:#eeba1f}.transcript-overlay .transcript-modal .transcript-section .conversation .message-container .feedback-form .feedback-controls button:disabled{cursor:not-allowed;opacity:.6}.transcript-overlay .transcript-modal .transcript-section .no-transcript{background-color:#f4f4f4;border-radius:8px;color:#666;font-style:italic;padding:2rem;text-align:center}.transcript-overlay .transcript-modal .transcript-footer{background-color:#f8f8f8;border-radius:0 0 8px 8px;border-top:1px solid #eaeaea;bottom:0;display:flex;justify-content:center;padding:1.5rem;position:-webkit-sticky;position:sticky}.transcript-overlay .transcript-modal .transcript-footer .close-footer-button{background-color:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.transcript-overlay .transcript-modal .transcript-footer .close-footer-button:hover{background-color:#2563eb}.transcript-overlay .transcript-modal .transcript-footer .close-footer-button:focus{box-shadow:0 0 0 3px #3b82f680;outline:none}.transcript-overlay .transcript-modal .error-message{align-items:center;background-color:#fff3f3;border:1px solid #ffcdd2;border-radius:4px;color:#d32f2f;display:flex;gap:.5rem;margin:1rem;padding:1rem}.transcript-overlay .transcript-modal .error-message svg{flex-shrink:0}.transcript-overlay .transcript-modal .error-boundary{padding:2rem;text-align:center}.transcript-overlay .transcript-modal .error-boundary .error-content{background-color:#fff3f3;border:1px solid #ffcdd2;border-radius:8px;margin:0 auto;max-width:500px;padding:2rem}.transcript-overlay .transcript-modal .error-boundary .error-content h3{color:#d32f2f;margin:1rem 0}.transcript-overlay .transcript-modal .error-boundary .error-content p{color:#666;margin-bottom:1.5rem}.transcript-overlay .transcript-modal .error-boundary .error-content button{background-color:#d32f2f;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem;transition:background-color .2s}.transcript-overlay .transcript-modal .error-boundary .error-content button:hover{background-color:#b71c1c}.transcript-overlay .transcript-modal .message-container.error-message{background-color:#fff3f3;border:1px solid #ffcdd2}.transcript-overlay .transcript-modal .message-container.error-message .message-header{line-height:1.4;white-space:pre-wrap;word-break:break-word}.transcript-overlay .transcript-modal .message-container.error-message .message-header .message-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.5rem}.transcript-overlay .transcript-modal .message-container.error-message .message-header .message-metadata{display:flex;flex-direction:column;gap:.2rem;margin-top:4px}.transcript-overlay .transcript-modal .message-container.error-message .message-header .speaker-name{color:#333;font-weight:600}.transcript-overlay .transcript-modal .message-container.error-message .message-header .message-timestamp{align-items:center;color:#888;display:flex;font-size:.75rem;gap:4px}.existing-feedback{background-color:#f8f9fa;border-left:3px solid #ffc107;border-radius:4px;margin-top:.5rem;padding:.75rem}.existing-feedback .feedback-timestamp{color:#666;font-size:.875rem;margin-bottom:.25rem}.existing-feedback .feedback-content{color:#333;line-height:1.4}.existing-feedback .edit-feedback-btn{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:.875rem;margin-top:.5rem;padding:0}.existing-feedback .edit-feedback-btn:hover{text-decoration:underline}.rating-controls{display:flex;gap:.5rem;margin-left:1rem}.rating-btn{align-items:center;background:#0000;border:none;box-shadow:0 1px 3px #0000001a;color:#b0b0b0;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.rating-btn:hover:not(:disabled){border-color:#666;color:#666;transform:scale(1.1)}.rating-btn:disabled{cursor:not-allowed;opacity:.5}.rating-btn.thumbs-up.active{background-color:#10b9811a}.rating-btn.thumbs-up.active,.rating-btn.thumbs-up:hover:not(.active):not(:disabled){border-color:#10b981;color:#10b981}.rating-btn.thumbs-down.active{background-color:#ef44441a}.rating-btn.thumbs-down.active,.rating-btn.thumbs-down:hover:not(.active):not(:disabled){border-color:#ef4444;color:#ef4444}.processing-feedback{align-items:center;color:#6b7280;display:flex;font-style:italic;gap:.5rem;padding:1rem 0}.processing-feedback .spin{animation:spin 1s linear infinite}@media(max-width:768px){.transcript-overlay .transcript-modal{max-height:95vh;width:95%}.transcript-overlay .transcript-modal .session-info{grid-template-columns:1fr}}.dashboard-page{--db-accent:#ffc107;--db-accent-dark:#e6ad00;--db-background:#fff;--db-foreground:#000;--db-muted:#f4f4f5;--db-muted-hover:#e4e4e7;--db-muted-foreground:#000;--db-border:#e4e4e7;--db-user-color:#3b82f6;--db-roleplay-color:#10b981;--db-session-color:#8b5cf6;--db-chart-color:#8b5cf6;margin:0 auto;max-width:1600px;padding:2rem;width:100%}.dashboard-page button,.dashboard-page div,.dashboard-page h1,.dashboard-page h2,.dashboard-page h3,.dashboard-page p,.dashboard-page span{color:var(--db-foreground)}.dashboard-page .header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.dashboard-page .header .header-left h1{font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.dashboard-page .header .header-left .description{font-size:1rem;margin:0}.dashboard-page .header .header-right .refresh-button{align-items:center;background-color:var(--db-accent);border:none;border-radius:.25rem;color:var(--db-foreground);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.dashboard-page .header .header-right .refresh-button:hover:not(:disabled){background-color:var(--db-accent-dark)}.dashboard-page .header .header-right .refresh-button:disabled{cursor:wait;opacity:.7}.dashboard-page .header .header-right .refresh-button .spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media(max-width:640px){.dashboard-page .header{align-items:flex-start;flex-direction:column;gap:1rem}}.dashboard-page .loading{align-items:center;color:var(--db-foreground);display:flex;font-size:1.25rem;height:300px;justify-content:center}.dashboard-page .dashboard-content{display:flex;flex-direction:column;gap:2rem}.dashboard-page .stats-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.dashboard-page .stats-cards .stat-card{align-items:center;background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;display:flex;gap:1.5rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.dashboard-page .stats-cards .stat-card:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.dashboard-page .stats-cards .stat-card .stat-icon{align-items:center;border-radius:50%;display:flex;height:3rem;justify-content:center;width:3rem}.dashboard-page .stats-cards .stat-card .stat-icon svg{color:#fff}.dashboard-page .stats-cards .stat-card .stat-icon.user-icon{background-color:var(--db-user-color)}.dashboard-page .stats-cards .stat-card .stat-icon.roleplay-icon{background-color:var(--db-roleplay-color)}.dashboard-page .stats-cards .stat-card .stat-icon.session-icon{background-color:var(--db-session-color)}.dashboard-page .stats-cards .stat-card .stat-icon.chart-icon{background-color:var(--db-chart-color)}.dashboard-page .stats-cards .stat-card .stat-details{flex:1 1}.dashboard-page .stats-cards .stat-card .stat-details .stat-value{color:var(--db-foreground);font-size:2rem;font-weight:600;line-height:1;margin-bottom:.5rem}.dashboard-page .stats-cards .stat-card .stat-details .stat-label{color:var(--db-foreground);font-size:.9rem}.dashboard-page .dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.dashboard-page .dashboard-grid .grid-item.full-width{grid-column:span 2}@media(max-width:992px){.dashboard-page .dashboard-grid{grid-template-columns:1fr}.dashboard-page .dashboard-grid .grid-item.full-width{grid-column:span 1}}.dashboard-page .recent-sessions-card{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.dashboard-page .recent-sessions-card h2{color:var(--db-foreground);font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.dashboard-page .recent-sessions-card .sessions-list{display:flex;flex-direction:column;gap:1rem}.dashboard-page .recent-sessions-card .sessions-list .session-item{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;padding:1.25rem;transition:transform .2s,box-shadow .2s}.dashboard-page .recent-sessions-card .sessions-list .session-item:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-header .session-title{color:var(--db-foreground);font-size:1.1rem;font-weight:600}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-header .session-date{align-items:center;color:var(--db-foreground);display:flex;font-size:.875rem;gap:.5rem}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-header .session-date svg{color:var(--db-foreground)}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-details{grid-gap:.75rem;display:grid;font-size:.9rem;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-details .session-id,.dashboard-page .recent-sessions-card .sessions-list .session-item .session-details .session-user{color:var(--db-muted-foreground)}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-details .session-id .user-name,.dashboard-page .recent-sessions-card .sessions-list .session-item .session-details .session-id span,.dashboard-page .recent-sessions-card .sessions-list .session-item .session-details .session-user .user-name,.dashboard-page .recent-sessions-card .sessions-list .session-item .session-details .session-user span{color:var(--db-foreground);font-weight:500}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-footer{align-items:center;display:flex;justify-content:space-between}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-footer .session-score{color:var(--db-foreground)}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-footer .session-score .score-value{font-weight:600}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-footer .session-not-graded{color:var(--db-foreground);font-style:italic;opacity:.7}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-footer .view-button{background-color:var(--db-accent);border:none;border-radius:.25rem;color:var(--db-foreground);cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.dashboard-page .recent-sessions-card .sessions-list .session-item .session-footer .view-button:hover{background-color:var(--db-accent-dark)}.dashboard-page .recent-sessions-card .no-sessions{background-color:var(--db-muted);border-radius:.5rem;color:var(--db-foreground);font-style:italic;padding:2rem;text-align:center}.dashboard-page .user-statistics-container{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1.25rem}@media(max-width:640px){.dashboard-page{padding:1rem}.dashboard-page .stats-cards{grid-template-columns:1fr}.dashboard-page .session-details{grid-template-columns:1fr!important}}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{border:0;display:inline-block;padding:0}.react-datepicker{background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;color:#000;display:inline-block;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:normal;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{line-height:0;z-index:1}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative;text-align:center}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__year-dropdown-container--select{display:inline-block;margin:0 15px}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:#000;font-size:.944rem;font-weight:700;margin-top:0}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-datepicker__navigation{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:32px;justify-content:center;overflow:hidden;padding:0;position:absolute;text-align:center;text-indent:-999em;top:2px;width:32px;z-index:1}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{display:block;margin-left:auto;margin-right:auto;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{font-size:20px;position:relative;top:-1px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;margin:2px;width:4rem}.react-datepicker__input-time-container{clear:both;float:left;margin:5px 0 10px 15px;text-align:left;width:100%}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{display:inline-block;margin-left:5px}.react-datepicker__time-container{border-left:1px solid #aeaeae;float:right;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{border-bottom-right-radius:.3rem;margin:0 auto;overflow-x:hidden;text-align:center;width:85px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:initial;height:calc(195px + .85rem);list-style:none;margin:0;overflow-y:scroll;padding-left:0;padding-right:0;width:100%}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{background-color:#f0f0f0;cursor:pointer}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{background-color:initial;cursor:default}.react-datepicker__week-number{color:#ccc;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{margin-bottom:-8px;white-space:nowrap}.react-datepicker__week{white-space:nowrap}.react-datepicker__day,.react-datepicker__day-name,.react-datepicker__time-name{color:#000;display:inline-block;line-height:1.7rem;margin:.166rem;text-align:center;width:1.7rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{background-color:#3dcc4a;border-radius:.3rem;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{background-color:#ff6803;border-radius:.3rem;color:#fff;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{background-color:#333;border-radius:4px;bottom:100%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{opacity:1;visibility:visible}.react-datepicker__day--in-range,.react-datepicker__day--in-selecting-range,.react-datepicker__day--selected,.react-datepicker__month-text--in-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--in-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--in-range,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--selected{background-color:#216ba5;border-radius:.3rem;color:#fff}.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{background-color:#bad9f1;border-radius:.3rem;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{color:#ccc;cursor:default}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{background-color:#333;border-radius:4px;bottom:70%;color:#fff;left:50%;opacity:0;padding:4px;position:absolute;transform:translateX(-50%);transition:visibility 0s,opacity .3s ease-in-out;visibility:hidden;white-space:nowrap}.react-datepicker__input-container{display:inline-block;position:relative;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:initial;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__month-read-view,.react-datepicker__month-year-read-view,.react-datepicker__year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover,.react-datepicker__year-read-view:hover{cursor:pointer}.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__year-read-view--down-arrow{right:-16px;top:0;transform:rotate(135deg)}.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown{background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;left:25%;position:absolute;text-align:center;top:30px;width:50%;z-index:1}.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover,.react-datepicker__year-dropdown:hover{cursor:pointer}.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable,.react-datepicker__year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__month-option,.react-datepicker__month-year-option,.react-datepicker__year-option{display:block;line-height:20px;margin-left:auto;margin-right:auto;width:100%}.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type,.react-datepicker__year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type,.react-datepicker__year-option:last-of-type{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem;-webkit-user-select:none;user-select:none}.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover,.react-datepicker__year-option:hover{background-color:#ccc}.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected,.react-datepicker__year-option--selected{left:15px;position:absolute}.react-datepicker__close-icon{background-color:initial;border:0;cursor:pointer;display:table-cell;height:100%;outline:0;padding:0 6px 0 0;position:absolute;right:0;top:0;vertical-align:middle}.react-datepicker__close-icon:after{background-color:#216ba5;border-radius:50%;color:#fff;content:"×";cursor:pointer;display:table-cell;font-size:12px;height:16px;line-height:1;padding:2px;text-align:center;vertical-align:middle;width:16px}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{background-color:#ccc;cursor:default}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;clear:left;cursor:pointer;font-weight:700;padding:5px 0;text-align:center}.react-datepicker__portal{align-items:center;background-color:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:2147483647}.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:3rem;width:3rem}@media (max-height:550px),(max-width:400px){.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__time-name{line-height:2rem;width:2rem}}.react-datepicker__portal .react-datepicker-time__header,.react-datepicker__portal .react-datepicker__current-month{font-size:1.44rem}.react-datepicker__children-container{height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem;width:13.8rem}.react-datepicker__aria-live{border:0;-webkit-clip-path:circle(0);clip-path:circle(0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.react-datepicker__calendar-icon{height:1em;vertical-align:-.125em;width:1em}.date-range-picker{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1.25rem}.date-range-picker .date-range-title{align-items:center;color:var(--db-foreground);display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.date-range-picker .date-range-title svg{color:var(--db-accent)}.date-range-picker .date-inputs{display:flex;gap:1rem;margin-bottom:1.25rem}@media(max-width:640px){.date-range-picker .date-inputs{flex-direction:column;gap:.75rem}}.date-range-picker .date-inputs .date-input-group{flex:1 1}.date-range-picker .date-inputs .date-input-group label{color:var(--db-foreground);display:block;font-size:.875rem;margin-bottom:.5rem}.date-range-picker .date-inputs .date-input-group .date-input{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.25rem;color:var(--db-foreground);font-size:.875rem;padding:.5rem;width:100%}.date-range-picker .date-inputs .date-input-group .date-input:focus{border-color:var(--db-accent);outline:none}.date-range-picker .date-actions{display:flex;gap:.75rem}.date-range-picker .date-actions button{border:none;border-radius:.25rem;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.date-range-picker .date-actions button:disabled{cursor:not-allowed;opacity:.5}.date-range-picker .date-actions .apply-button{background-color:var(--db-accent);color:var(--db-foreground)}.date-range-picker .date-actions .apply-button:hover:not(:disabled){background-color:var(--db-accent-dark)}.date-range-picker .date-actions .reset-button{background-color:var(--db-muted);color:var(--db-foreground)}.date-range-picker .date-actions .reset-button:hover:not(:disabled){background-color:var(--db-muted-hover)}.user-session-chart{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.25rem}.user-session-chart .chart-container{height:300px;position:relative}.message-rating-chart{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.25rem}.message-rating-chart h2{color:var(--db-foreground);font-size:1.25rem;font-weight:600;margin:0 0 1.25rem;text-align:center}.message-rating-chart .chart-container{align-items:center;display:flex;height:220px;justify-content:center;position:relative}.message-rating-chart .no-data{color:var(--db-foreground);font-style:italic;opacity:.7;text-align:center}.message-rating-chart .rating-stats{display:flex;gap:2rem;justify-content:center;margin-top:1.5rem}.message-rating-chart .rating-stats .rating-stat{align-items:center;display:flex;gap:.5rem}.message-rating-chart .rating-stats .rating-stat svg{height:20px;width:20px}.message-rating-chart .rating-stats .rating-stat .rating-value{font-size:1.125rem;font-weight:600}.message-rating-chart .rating-stats .rating-stat .rating-label{color:var(--db-foreground);font-size:.875rem;opacity:.8}.message-rating-chart .rating-stats .rating-stat .rating-percentage{border-radius:9999px;font-size:.875rem;font-weight:600;margin-left:.25rem;padding:.125rem .5rem}.message-rating-chart .rating-stats .rating-stat.positive svg{color:#10b981}.message-rating-chart .rating-stats .rating-stat.positive .rating-percentage{background-color:#10b9811a;color:#10b981}.message-rating-chart .rating-stats .rating-stat.negative svg{color:#ef4444}.message-rating-chart .rating-stats .rating-stat.negative .rating-percentage{background-color:#ef44441a;color:#ef4444}.step-progress-card{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.25rem}.step-progress-card h2{color:var(--db-foreground);font-size:1.25rem;font-weight:600;margin:0 0 1.25rem}.step-progress-card .step-list{display:flex;flex-direction:column;gap:1rem}.step-progress-card .step-item{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;padding:1rem}.step-progress-card .step-item .step-info{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:.75rem}@media(max-width:640px){.step-progress-card .step-item .step-info{align-items:flex-start;flex-direction:column;gap:.5rem}}.step-progress-card .step-item .step-info .step-name{color:var(--db-foreground);flex:1 1;font-weight:500}.step-progress-card .step-item .step-info .step-counts{align-items:center;color:var(--db-foreground);display:flex;font-size:.875rem;gap:.25rem}.step-progress-card .step-item .step-info .step-counts .icon-included{color:#10b981}.step-progress-card .step-item .step-info .step-counts .icon-missing{color:#ef4444}.step-progress-card .step-item .step-info .step-counts .total-count{color:var(--db-foreground);margin-left:.25rem;opacity:.7}.step-progress-card .step-item .step-progress{align-items:center;display:flex;gap:1rem}.step-progress-card .step-item .step-progress .progress-track{background-color:var(--db-muted);border-radius:9999px;flex:1 1;height:8px;overflow:hidden}.step-progress-card .step-item .step-progress .progress-track .progress-fill{background-color:var(--db-accent);border-radius:9999px;height:100%}.step-progress-card .step-item .step-progress .progress-percentage{color:var(--db-foreground);font-size:.875rem;font-weight:600;min-width:3rem;text-align:right}.step-progress-card .no-data{background-color:var(--db-muted);border-radius:.5rem;color:var(--db-foreground);font-style:italic;padding:2rem;text-align:center}.recent-ratings-card{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.25rem}.recent-ratings-card h2{color:var(--db-foreground);font-size:1.25rem;font-weight:600;margin:0 0 1.25rem}.recent-ratings-card .ratings-list{display:flex;flex-direction:column;gap:1rem}.recent-ratings-card .rating-item{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;padding:1rem}.recent-ratings-card .rating-item .rating-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.recent-ratings-card .rating-item .rating-header .rating-type{align-items:center;border-radius:9999px;display:flex;font-size:.875rem;font-weight:500;gap:.375rem;padding:.25rem .75rem}.recent-ratings-card .rating-item .rating-header .rating-type.up{background-color:#10b9811a;color:#10b981}.recent-ratings-card .rating-item .rating-header .rating-type.down{background-color:#ef44441a;color:#ef4444}.recent-ratings-card .rating-item .rating-header .rating-date{align-items:center;color:var(--db-foreground);display:flex;font-size:.75rem;gap:.375rem;opacity:.8}.recent-ratings-card .rating-item .rating-details{display:flex;flex-wrap:wrap;font-size:.875rem;gap:1rem;margin-bottom:.75rem}.recent-ratings-card .rating-item .rating-details .rating-session,.recent-ratings-card .rating-item .rating-details .rating-user{align-items:center;color:var(--db-foreground);display:flex;gap:.375rem}.recent-ratings-card .rating-item .rating-details .rating-session svg,.recent-ratings-card .rating-item .rating-details .rating-user svg{color:var(--db-accent)}.recent-ratings-card .rating-item .rating-comment{background-color:var(--db-muted);border-radius:.375rem;margin-top:.5rem;padding:.75rem}.recent-ratings-card .rating-item .rating-comment p{color:var(--db-foreground);font-size:.875rem;font-style:italic;line-height:1.4;margin:0}.recent-ratings-card .no-data{background-color:var(--db-muted);border-radius:.5rem;color:var(--db-foreground);font-style:italic;padding:2rem;text-align:center}.user-selector{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.user-selector label{color:var(--db-foreground);font-size:.875rem;font-weight:500}.user-selector .user-select-dropdown{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.25rem;color:var(--db-foreground);flex:1 1;font-size:.875rem;padding:.5rem}.user-selector .user-select-dropdown:focus{border-color:var(--db-accent);box-shadow:0 0 0 2px #ffc10733;outline:none}.user-step-statistics-chart{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;height:100%;padding:1.25rem}.user-step-statistics-chart h2{color:var(--db-foreground);font-size:1.25rem;font-weight:600;margin-bottom:1.25rem;margin-top:0}.user-step-statistics-chart .chart-container{height:300px;position:relative}.user-step-statistics-chart .loading,.user-step-statistics-chart .no-data{align-items:center;color:var(--db-muted-foreground);display:flex;font-size:.875rem;height:300px;justify-content:center}.user-step-statistics-chart .user-select{background-color:var(--db-background);border:1px solid var(--db-border);border-radius:.25rem;color:var(--db-foreground);margin-bottom:1rem;padding:.5rem;width:100%}.users-page .header .create-button{align-items:center;align-self:flex-start;background-color:var(--up-accent);border:none;border-radius:.25rem;color:var(--up-foreground);cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:background-color .2s}.users-page .header .create-button:hover{background-color:var(--up-accent-dark)}.users-page .search-container{margin-bottom:2rem;position:relative}.users-page .search-container .search-icon{color:var(--up-foreground);left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.users-page .search-container .search-input{background-color:var(--up-background);border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);font-size:1rem;padding:.75rem 1rem .75rem 2.5rem;width:100%}.users-page .search-container .search-input::placeholder{color:#0009}.users-page .search-container .search-input:focus{border-color:#0000;outline:2px solid var(--up-accent)}.users-page .users-table .user-name-cell{font-weight:500}.users-page .users-table .role-badge.badge-admin{background-color:#8b5cf61a;color:var(--up-admin)}.users-page .users-table .role-badge.badge-trainer{background-color:#3b82f61a;color:var(--up-trainer)}.users-page .users-table .role-badge.badge-trainee{background-color:#10b9811a;color:var(--up-trainee)}.users-page .users-table .role-badge.badge-default{background-color:#0000001a;color:var(--up-foreground)}.users-page .delete-confirmation-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.users-page .delete-confirmation{background-color:var(--up-background);border-radius:.5rem;box-shadow:0 10px 25px #0003;max-width:400px;padding:1.5rem;width:90%}.users-page .delete-confirmation h2{color:var(--up-foreground);font-size:1.25rem;margin-bottom:1rem;margin-top:0}.users-page .delete-confirmation p{color:var(--up-foreground);margin-bottom:1.5rem}.users-page .delete-confirmation .confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.users-page .delete-confirmation .confirm-actions button{border-radius:.25rem;cursor:pointer;font-weight:500;padding:.5rem 1rem}.users-page .delete-confirmation .confirm-actions button.cancel-button{background-color:#0000;border:1px solid var(--up-border);color:var(--up-foreground)}.users-page .delete-confirmation .confirm-actions button.cancel-button:hover{background-color:var(--up-muted)}.users-page .delete-confirmation .confirm-actions button.confirm-button{background-color:#ef4444;border:none;color:#fff}.users-page .delete-confirmation .confirm-actions button.confirm-button:hover{background-color:#dc2626}.delete-confirmation-overlay,.user-form-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.action-buttons button{padding:8px!important}.action-buttons button svg{height:20px!important;width:20px!important}.skeleton-row td{padding:12px 16px;vertical-align:middle}.skeleton-row .skeleton-text{border-radius:4px;height:20px;width:80%}.skeleton-row .skeleton-badge,.skeleton-row .skeleton-text{animation:skeleton-loading 1.5s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%}.skeleton-row .skeleton-badge{border-radius:12px;height:24px;width:100px}.skeleton-row .skeleton-actions{display:flex;gap:8px;justify-content:flex-end}.skeleton-row .skeleton-actions .skeleton-button{animation:skeleton-loading 1.5s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%;border-radius:4px;height:32px;width:32px}.pagination-wrapper{border-top:1px solid #eaeaea;margin-top:auto;padding-top:20px}.organization-form{margin-bottom:24px;padding:16px}.form-group{margin-bottom:16px}.form-label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.form-input,.form-textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#1f2937;font-size:14px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;width:100%}.form-input:focus,.form-textarea:focus{border-color:#ffc107;box-shadow:0 0 0 4px #ffc10714;outline:none}.form-textarea{min-height:120px;resize:vertical}.form-submit-button{background:#ffc107;border:none;border-radius:8px;color:#1f2937;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;padding:12px 16px;transition:transform .12s ease,box-shadow .12s ease;width:100%}.form-submit-button:hover{box-shadow:0 6px 14px #ffc1072e;transform:translateY(-1px)}.close-modal-button{background:#2496ed;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-weight:600;margin:16px auto 0;max-width:420px;padding:10px 14px;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease;width:100%}.close-modal-button:hover{background:#1b78c9;box-shadow:0 8px 18px #2496ed2e;transform:translateY(-2px)}.close-modal-button:focus{outline:3px solid #2496ed1f;outline-offset:2px}.users-page{--up-accent:#ffc107;--up-accent-dark:#e6ad00;--up-background:#fff;--up-foreground:#000;--up-muted:#f4f4f5;--up-muted-foreground:#000;--up-border:#e4e4e7;--up-admin:#8b5cf6;--up-trainer:#3b82f6;--up-trainee:#10b981;--accent:var(--up-accent);--accent-dark:var(--up-accent-dark);--background:var(--up-background);--foreground:var(--up-foreground);--muted:var(--up-muted);--muted-foreground:var(--up-muted-foreground);--border:var(--up-border);height:100%;padding:2rem;position:relative;width:100%}.users-page button,.users-page h1,.users-page h2,.users-page h3,.users-page input,.users-page label,.users-page p,.users-page span,.users-page td,.users-page textarea,.users-page th{color:var(--up-foreground)}.users-page .header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.users-page .header h1{color:var(--up-foreground);font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.users-page .header .description{color:var(--up-foreground);font-size:1rem;margin:0 0 1.5rem}.users-page .header .stat-item{background:var(--up-muted);border:1px solid var(--up-border);border-radius:8px;padding:16px 24px;text-align:center}.users-page .header .stat-item .stat-value{color:var(--up-accent-dark);display:block;font-size:24px;font-weight:600;margin-bottom:4px}.users-page .header .stat-item .stat-label{color:var(--up-foreground);font-size:14px}.users-page .filters-section{background:var(--up-muted);border:1px solid var(--up-border);border-radius:8px;margin-bottom:24px;padding:20px}.users-page .filters-section .filters-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:20px}.users-page .filters-section .filters-row .filter-group{display:flex;flex-direction:column;gap:8px}.users-page .filters-section .filters-row .filter-group label{align-items:center;color:var(--up-foreground);display:flex;font-size:14px;font-weight:500;gap:6px}.users-page .filters-section .filters-row .filter-group .filter-select{background:var(--up-background);border:1px solid var(--up-border);border-radius:6px;color:var(--up-foreground);font-size:14px;min-width:140px;padding:8px 12px}.users-page .filters-section .filters-row .filter-group .filter-select:focus{border-color:#0000;outline:2px solid var(--up-accent)}.users-page .filters-section .filters-row .filter-group .filter-select option{background:var(--up-background);color:var(--up-foreground)}.users-page .filters-section .filters-row .clear-search{background-color:#0000;border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);cursor:pointer;padding:.5rem 1rem}.users-page .filters-section .filters-row .clear-search:hover{background-color:var(--up-muted)}.users-page .loading{color:var(--up-foreground);padding:2rem;text-align:center}.users-page .users-table-container{border:1px solid var(--up-border);border-radius:.5rem;opacity:1;overflow:hidden;transition:opacity .2s ease-in-out}.users-page .users-table-container.loading{opacity:.7}.users-page .users-table{background-color:var(--up-background);border-collapse:collapse;width:100%}.users-page .users-table td,.users-page .users-table th{color:var(--up-foreground);padding:1rem;text-align:left}.users-page .users-table th{background-color:var(--up-muted);font-size:.9rem;font-weight:600}.users-page .users-table tr{border-bottom:1px solid var(--up-border)}.users-page .users-table tr:last-child{border-bottom:none}.users-page .users-table tr:hover{background-color:#00000005}.users-page .users-table .type-indicator{align-items:center;color:var(--up-foreground);display:flex;font-weight:500;gap:8px}.users-page .users-table .type-indicator svg{flex-shrink:0}.users-page .users-table .message-preview{color:var(--up-foreground);line-height:1.4;margin:0 0 8px}.users-page .users-table .message-meta{color:#0009;display:flex;font-size:12px;gap:16px}.users-page .users-table .message-meta .page-info,.users-page .users-table .message-meta .user-info{align-items:center;display:flex;gap:4px}.users-page .users-table .role-badge{border-radius:9999px;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.users-page .users-table .date-info{align-items:center;color:#0009;display:flex;font-size:13px;gap:6px}.users-page .users-table .date-info svg{flex-shrink:0}.users-page .users-table .actions-cell{text-align:right;width:120px}.users-page .users-table .action-buttons{display:flex;gap:.5rem;justify-content:flex-end}.users-page .users-table .action-buttons button{align-items:center;background:#0000;border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .15s}.users-page .users-table .action-buttons button svg{height:20px;width:20px}.users-page .users-table .action-buttons button:hover{background-color:var(--up-muted)}.users-page .users-table .action-buttons button.edit-button:hover{border-color:var(--up-trainer);color:var(--up-trainer)}.users-page .users-table .action-buttons button.delete-button:hover{border-color:#ef4444;color:#ef4444}.users-page .users-table .empty-state{padding:2rem;text-align:center}.users-page .users-table .empty-state p{color:var(--up-foreground);margin:0 0 1rem}.users-page .users-table .empty-state .clear-search{background-color:#0000;border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);cursor:pointer;padding:.5rem 1rem}.users-page .users-table .empty-state .clear-search:hover{background-color:var(--up-muted)}.users-page .pagination-wrapper{border-top:1px solid var(--up-border);margin-top:auto;padding-top:20px}.users-page .pagination{align-items:center;color:var(--up-foreground);display:flex;justify-content:space-between;margin:1rem;padding:.5rem 0}.users-page .pagination .pagination-info{color:var(--up-foreground);font-size:.875rem}.users-page .pagination .pagination-controls{align-items:center;display:flex;gap:.5rem}.users-page .pagination .pagination-controls .pagination-button{align-items:center;background-color:#0000;border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);cursor:pointer;display:flex;font-size:.75rem;font-weight:500;height:2rem;justify-content:center;min-width:2.5rem;padding:.375rem .75rem;transition:all .15s}.users-page .pagination .pagination-controls .pagination-button:hover:not(:disabled){background-color:var(--up-muted);border-color:var(--up-accent);color:var(--up-accent-dark)}.users-page .pagination .pagination-controls .pagination-button:disabled{cursor:not-allowed;opacity:.5}.users-page .pagination .pagination-controls .pagination-button.active{background-color:var(--up-accent);border-color:var(--up-accent);color:var(--up-foreground)}.users-page .pagination .pagination-controls .pagination-status{color:var(--up-foreground);font-size:.875rem;margin:0 .5rem;min-width:5rem;text-align:center}.users-page .pagination .pagination-controls .pagination-limit{background-color:#0000;border:1px solid var(--up-border);border-radius:.25rem;color:var(--up-foreground);cursor:pointer;font-size:.875rem;margin-left:.5rem;padding:.375rem}.users-page .pagination .pagination-controls .pagination-limit:focus{border-color:var(--up-accent);outline:none}.users-page .pagination .pagination-controls .pagination-limit:hover{border-color:var(--up-accent)}.users-page .modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.users-page .modal-overlay .modal-content{background:var(--up-background);border:1px solid var(--up-border);border-radius:12px;box-shadow:0 25px 50px #00000040;max-height:90vh;overflow-y:auto;padding:0}.users-page .modal-overlay .modal-content.details-modal{max-width:800px;width:90%}.users-page .modal-overlay .modal-content.edit-modal{max-width:500px;width:90%}.users-page .modal-overlay .modal-content .modal-header{align-items:flex-start;background:linear-gradient(135deg,var(--up-muted) 0,#ffffff80 100%);border-bottom:1px solid var(--up-border);display:flex;justify-content:space-between;padding:20px 24px 16px}.users-page .modal-overlay .modal-content .modal-header .modal-title{flex:1 1}.users-page .modal-overlay .modal-content .modal-header .modal-title h2{color:var(--up-foreground);font-size:24px;font-weight:700;line-height:1.2;margin:0 0 8px}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .type-badge{align-items:center;background:#3b82f61a;border:1px solid #3b82f633;border-radius:20px;color:#3b82f6;display:flex;font-size:13px;font-weight:500;gap:6px;padding:4px 10px}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .type-badge svg{flex-shrink:0}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .date-pill,.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .status-pill{align-items:center;border-radius:16px;display:flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .date-pill{background:#6b72801a;border:1px solid #6b728033;color:#6b7280}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .date-pill svg{flex-shrink:0}.users-page .modal-overlay .modal-content .modal-header .close-btn{background:none;border:none;border-radius:6px;color:#00000080;cursor:pointer;line-height:1;padding:8px;transition:all .2s}.users-page .modal-overlay .modal-content .modal-header .close-btn:hover{background:#0000000d;color:var(--up-foreground)}.users-page .modal-overlay .modal-content .modal-body{max-height:calc(90vh - 120px);overflow-y:auto;padding:0}.users-page .modal-overlay .modal-content .modal-body .accordion-section{border-bottom:1px solid var(--up-border)}.users-page .modal-overlay .modal-content .modal-body .accordion-section:last-child{border-bottom:none}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-header{align-items:center;background:none;border:none;color:var(--up-foreground);cursor:pointer;display:flex;justify-content:space-between;padding:16px 24px;transition:all .2s;width:100%}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-header:hover{background:#00000005}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-header .section-title{align-items:center;display:flex;font-size:16px;font-weight:600;gap:12px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-header .section-title svg{color:var(--up-accent-dark);flex-shrink:0}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-header svg:last-child{color:#0006;transition:transform .2s}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content{border-top:1px solid #0000000d;padding:0 24px 20px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .two-column-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .two-column-grid:last-child{margin-bottom:0}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group.full-width{grid-column:1/-1}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-label{color:#00000080;display:block;font-size:11px;font-weight:600;letter-spacing:.8px;margin-bottom:6px;text-transform:uppercase}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value{color:var(--up-foreground);font-size:14px;font-weight:500;line-height:1.4}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.type-indicator{align-items:center;display:flex;font-weight:600;gap:8px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.type-indicator svg{flex-shrink:0}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.role-pill,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px;text-transform:capitalize}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.age-pill,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.duration-pill{align-items:center;background:#10b9811a;border:1px solid #10b98133;border-radius:10px;color:#10b981;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:3px 8px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.age-pill svg,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.duration-pill svg{flex-shrink:0}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .field-value.path-text{background:#0000000d;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;padding:4px 8px;word-break:break-all}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .email-field,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .id-field{align-items:center;background:#00000005;border:1px solid #0000001a;border-radius:8px;display:flex;gap:8px;padding:8px 12px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .email-field svg:first-child,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .id-field svg:first-child{color:#0006;flex-shrink:0}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .email-field .id-text,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .id-field .id-text{color:#000000b3;flex:1 1;font-family:SF Mono,Monaco,Consolas,monospace;font-size:11px;word-break:break-all}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .email-field .copy-btn,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .id-field .copy-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--up-accent-dark);cursor:pointer;display:flex;padding:4px;transition:all .2s}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .email-field .copy-btn:hover,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .id-field .copy-btn:hover{background:var(--up-accent);color:var(--up-foreground)}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .email-field .copy-btn svg,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .field-group .id-field .copy-btn svg{flex-shrink:0}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .message-section,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .notes-section{margin-top:20px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .message-section .field-label,.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .notes-section .field-label{color:#00000080;display:block;font-size:11px;font-weight:600;letter-spacing:.8px;margin-bottom:8px;text-transform:uppercase}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content{word-wrap:break-word;background:linear-gradient(135deg,#3b82f608,#93c5fd0f);border:2px solid #3b82f61f;border-radius:12px;box-shadow:0 2px 8px #3b82f614;color:var(--up-foreground);font-size:15px;font-weight:400;line-height:1.7;max-height:200px;overflow-y:auto;padding:20px 24px;position:relative;white-space:pre-wrap}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content:before{background:linear-gradient(180deg,#3b82f6,#60a5fa);border-radius:0 0 0 10px;content:"";height:100%;left:0;position:absolute;top:0;width:4px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content.notes{background:linear-gradient(135deg,#3b82f60d,#93c5fd0d);border-color:#3b82f61a;font-style:italic}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content.scenario{background:linear-gradient(135deg,#10b9810d,#a7f3d00d);border-color:#10b9811a}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content.technical{background:linear-gradient(135deg,#6b72800d,#9ca3af0d);border-color:#6b72801a;color:#000000b3;font-family:SF Mono,Monaco,Consolas,monospace;font-size:11px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content::-webkit-scrollbar{width:6px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.users-page .modal-overlay .modal-content .modal-body .accordion-section .section-content .scrollable-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.users-page .modal-overlay .modal-content .modal-body .form-group{margin-bottom:20px}.users-page .modal-overlay .modal-content .modal-body .form-group label{color:var(--up-foreground);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.users-page .modal-overlay .modal-content .modal-body .form-group select,.users-page .modal-overlay .modal-content .modal-body .form-group textarea{background:var(--up-background);border:1px solid var(--up-border);border-radius:6px;color:var(--up-foreground);font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.users-page .modal-overlay .modal-content .modal-body .form-group select:focus,.users-page .modal-overlay .modal-content .modal-body .form-group textarea:focus{border-color:#0000;outline:2px solid var(--up-accent)}.users-page .modal-overlay .modal-content .modal-body .form-group select option{background:var(--up-background);color:var(--up-foreground)}.users-page .modal-overlay .modal-content .modal-body .form-group textarea{min-height:80px;resize:vertical}.users-page .modal-overlay .modal-content .modal-footer{border-top:1px solid var(--up-border);display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.users-page .modal-overlay .modal-content .modal-footer .cancel-btn,.users-page .modal-overlay .modal-content .modal-footer .save-btn{border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.users-page .modal-overlay .modal-content .modal-footer .cancel-btn{background:#0000;border:1px solid var(--up-border);color:var(--up-foreground)}.users-page .modal-overlay .modal-content .modal-footer .cancel-btn:hover{background-color:var(--up-muted)}.users-page .modal-overlay .modal-content .modal-footer .save-btn{background:var(--up-accent);border:1px solid var(--up-accent);color:var(--up-foreground)}.users-page .modal-overlay .modal-content .modal-footer .save-btn:hover{background:var(--up-accent-dark)}.users-page .toast-container{display:flex;flex-direction:column;gap:8px;position:fixed;right:20px;top:20px;z-index:1100}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.users-page .skeleton-row td{height:72px;padding:1rem;vertical-align:middle}.users-page .skeleton-row .skeleton-text{border-radius:4px;height:20px;width:80%}.users-page .skeleton-row .skeleton-text,.users-page .skeleton-row .skeleton-text-small{animation:skeleton-loading 2s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%}.users-page .skeleton-row .skeleton-text-small{border-radius:3px;height:14px;margin-bottom:6px;width:60%}.users-page .skeleton-row .skeleton-badge{border-radius:12px;height:24px;width:100px}.users-page .skeleton-row .skeleton-badge,.users-page .skeleton-row .skeleton-icon{animation:skeleton-loading 2s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%}.users-page .skeleton-row .skeleton-icon{border-radius:3px;height:16px;width:16px}.users-page .skeleton-row .skeleton-icon-small{animation:skeleton-loading 2s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%;border-radius:2px;height:12px;width:12px}.users-page .skeleton-row .skeleton-type{align-items:center;display:flex;gap:8px}.users-page .skeleton-row .skeleton-message .skeleton-meta{display:flex;gap:16px;margin-top:8px}.users-page .skeleton-row .skeleton-date{align-items:center;display:flex;gap:6px}.users-page .skeleton-row .skeleton-actions{display:flex;gap:8px;justify-content:flex-end}.users-page .skeleton-row .skeleton-actions .skeleton-button{animation:skeleton-loading 2s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%;border-radius:4px;height:32px;width:32px}@media(max-width:1024px){.users-page .users-table-container .users-table td,.users-page .users-table-container .users-table th{padding:12px 16px}.users-page .header{align-items:flex-start;flex-direction:column;gap:16px}}@media(max-width:768px){.users-page{padding:16px}.users-page .users-table-container .users-table thead{display:none}.users-page .users-table-container .users-table tbody tr{border:1px solid var(--up-border);border-radius:8px;display:flex;flex-direction:column;gap:12px;margin-bottom:12px;padding:16px}.users-page .users-table-container .users-table tbody tr td{padding:0}.users-page .users-table-container .users-table tbody tr td.actions-cell{display:flex;justify-content:flex-end}.users-page .filters-section .filters-row{align-items:stretch;flex-direction:column}.users-page .filters-section .filters-row .filter-group,.users-page .filters-section .filters-row .filter-group .filter-select{width:100%}.users-page .modal-overlay .modal-content.details-modal,.users-page .modal-overlay .modal-content.edit-modal{margin:20px;width:95%}.users-page .modal-overlay .modal-content .modal-header{padding:16px 20px}.users-page .modal-overlay .modal-content .modal-header .modal-title h2{font-size:20px}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle{gap:8px;margin-top:6px}.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .date-pill,.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .status-pill,.users-page .modal-overlay .modal-content .modal-header .modal-title .modal-subtitle .type-badge{font-size:11px;padding:3px 8px}.users-page .modal-overlay .modal-content .accordion-section .section-header{padding:16px 20px}.users-page .modal-overlay .modal-content .accordion-section .section-header .section-title{font-size:14px;gap:8px}.users-page .modal-overlay .modal-content .accordion-section .section-content{padding:0 20px 16px}.users-page .modal-overlay .modal-content .accordion-section .section-content .two-column-grid{gap:16px;grid-template-columns:1fr}.users-page .modal-overlay .modal-content .accordion-section .section-content .field-group .field-label{font-size:10px}.users-page .modal-overlay .modal-content .accordion-section .section-content .field-group .field-value{font-size:13px}.users-page .modal-overlay .modal-content .accordion-section .section-content .field-group .email-field,.users-page .modal-overlay .modal-content .accordion-section .section-content .field-group .id-field{padding:6px 10px}.users-page .modal-overlay .modal-content .accordion-section .section-content .field-group .email-field .id-text,.users-page .modal-overlay .modal-content .accordion-section .section-content .field-group .id-field .id-text{font-size:10px}.users-page .modal-overlay .modal-content .accordion-section .section-content .scrollable-content{font-size:13px;max-height:150px;padding:12px 16px}}.minimal-loading{align-items:center;animation:fadeIn .2s ease-in-out forwards;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#fffc;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;z-index:1000}.minimal-loading .loading-indicator{background-color:#ffffffe6;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1rem 2rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
/*# sourceMappingURL=main.73b68c4d.css.map*/