@import"https://fonts.googleapis.com/css2?family=Bevan:wght@400&family=Inter:wght@400;700&display=swap";.home-container{min-height:100vh;background-color:#f5f5f5;display:flex;flex-direction:column}.home-header{background-color:#4169e1;color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #00000014}.home-content{flex-grow:1;background-color:#f5f5f5}.hero-section{background:linear-gradient(135deg,#4169e1,#2741a5);color:#fff;padding:80px 40px;text-align:center;display:flex;justify-content:center;align-items:center;min-height:80vh}.hero-content{max-width:800px;background:transparent}.hero-content h1{font-size:48px;font-weight:300;letter-spacing:3px;margin-bottom:40px;background:transparent;text-transform:uppercase;color:#fff}.hero-buttons{display:flex;justify-content:center;background:transparent}.secondary-btn{background-color:transparent;color:#fff;border:2px solid #ffffff;padding:15px 30px;border-radius:8px;font-size:16px;font-weight:400;letter-spacing:1px;cursor:pointer;transition:all .2s ease;text-transform:uppercase}.secondary-btn:hover{background-color:#fff;color:#4169e1;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}@media (max-width: 768px){.home-header{padding:15px 20px;flex-direction:column;gap:15px}.logo img{max-width:150px}.hero-section{padding:60px 20px;min-height:70vh}.hero-content h1{font-size:32px}}.login-container{min-height:100vh;background-color:#f5f5f5;display:flex;flex-direction:column}.login-header{background-color:#4169e1;color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #00000014}.login-content{flex-grow:1;display:flex;justify-content:center;align-items:center;padding:40px;background-color:#f5f5f5}.login-card{background-color:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 12px #00000014;width:100%;max-width:400px;border:1px solid #e0e0e0}.login-title{text-align:center;margin-bottom:30px;background:transparent}.login-title h1{color:#222;font-weight:300;font-size:28px;letter-spacing:2px;margin-bottom:8px;background:transparent}.login-title p{color:#666;font-weight:300;font-size:14px;background:transparent}.login-form{background:transparent}.login-input{width:100%;padding:12px 16px;border:1px solid #e0e0e0;border-radius:6px;font-size:16px;font-weight:300;background-color:#fff!important;color:#000!important;transition:all .2s ease}.login-input:focus{outline:none;border-color:#4169e1;box-shadow:0 0 0 3px #4169e11a;background-color:#fff!important;color:#000!important}.login-input::placeholder{color:#999!important}.login-submit-btn{width:100%;background-color:#4169e1;color:#fff;border:none;padding:14px;border-radius:6px;font-size:16px;font-weight:400;letter-spacing:1px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;margin-top:10px}.login-submit-btn:hover{background-color:#2741a5;transform:translateY(-2px);box-shadow:0 4px 8px #4169e133}.login-submit-btn:active{transform:translateY(0)}.signup-link{text-align:center;margin-top:25px;background:transparent}.signup-link p{color:#666;font-size:14px;background:transparent}@media (max-width: 768px){.login-header{padding:15px 20px;flex-direction:column;gap:15px}.logo img{max-width:150px}.login-content{padding:20px}.login-card{padding:30px 20px}}.signup-container{min-height:100vh;background-color:#f5f5f5;display:flex;flex-direction:column}.signup-header{background-color:#4169e1;color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #00000014}.logo{background:transparent}.logo img{max-width:200px;max-height:60px;height:auto;background:transparent}.header-nav{display:flex;gap:20px;background:transparent}.nav-button{background-color:transparent;border:none;color:#fff;font-weight:300;letter-spacing:2px;font-size:16px;cursor:pointer;padding:10px 20px;border-radius:8px;transition:all .2s ease;text-transform:uppercase}.nav-button:hover{background-color:#2741a5;transform:translateY(-2px)}.nav-button.active{background-color:#2741a5;font-weight:400}.signup-content{flex-grow:1;display:flex;justify-content:center;align-items:center;padding:40px;background-color:#f5f5f5}.signup-card{background-color:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 12px #00000014;width:100%;max-width:400px;border:1px solid #e0e0e0}.signup-title{text-align:center;margin-bottom:30px;background:transparent}.signup-title h1{color:#222;font-weight:300;font-size:28px;letter-spacing:2px;margin-bottom:8px;background:transparent}.signup-title p{color:#666;font-weight:300;font-size:14px;background:transparent}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:20px;font-size:14px;border:1px solid #fcc;text-align:center}.signup-form{background:transparent}.input-group label{display:block;color:#222;font-weight:400;font-size:14px;margin-bottom:8px;background:transparent}.signup-input{width:100%;padding:12px 16px;border:1px solid #e0e0e0;border-radius:6px;font-size:16px;font-weight:300;background-color:#fff!important;color:#000!important;transition:all .2s ease}.signup-input:focus{outline:none;border-color:#4169e1;box-shadow:0 0 0 3px #4169e11a;background-color:#fff!important;color:#000!important}.signup-input::placeholder{color:#999!important}.signup-submit-btn{width:100%;background-color:#4169e1;color:#fff;border:none;padding:14px;border-radius:6px;font-size:16px;font-weight:400;letter-spacing:1px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;margin-top:10px}.signup-submit-btn:hover{background-color:#2741a5;transform:translateY(-2px);box-shadow:0 4px 8px #4169e133}.signup-submit-btn:active{transform:translateY(0)}.login-link{text-align:center;margin-top:25px;background:transparent}.login-link p{color:#666;font-size:14px;background:transparent}.link-button{background:transparent;border:none;color:#4169e1;cursor:pointer;font-weight:400;text-decoration:underline;transition:color .2s ease}.link-button:hover{color:#2741a5}@media (max-width: 768px){.signup-header{padding:15px 20px;flex-direction:column;gap:15px}.logo img{max-width:150px}.signup-content{padding:20px}.signup-card{padding:30px 20px}}*{margin:0;padding:0;box-sizing:border-box}body{background-color:#f5f5f5;color:#222}.dashboard-container{display:flex;min-height:100vh;background-color:#f5f5f5}.sidebar{width:280px;background-color:#4169e1;color:#fff;padding:20px;display:flex;flex-direction:column;position:fixed;height:100vh;box-shadow:2px 0 4px #00000014;overflow-y:auto;max-height:100vh}.logo{background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}.logo h2{color:#fff;background-color:transparent;font-weight:300;letter-spacing:2px;margin-bottom:40px;font-size:20px}.logo img{max-width:200px;max-height:100px;height:auto;margin-bottom:10px;background:transparent!important;box-shadow:none!important;display:block}.nav-menu{flex-grow:1;background-color:transparent}.nav-item{padding:15px;background-color:transparent;color:#fff;font-weight:500;letter-spacing:2px;cursor:pointer;font-size:16px;transition:all .2s ease;border-radius:8px;margin:4px 0;position:relative;z-index:10}.nav-item:hover{background-color:#2741a5;transform:translate(5px);box-shadow:0 2px 4px #4169e114}.nav-item span{background-color:transparent;color:inherit;display:block;transition:all .2s ease}.nav-item.active{background-color:#2741a5;font-weight:400}.nav-item.active span{background-color:transparent}.nav-item.logout{color:#fff;font-weight:500;margin-top:12px;transition:background .2s,color .2s}.nav-item.logout:hover{background-color:#ffeaea;color:#fff}.user-profile{background-color:transparent;padding:20px 0;border-top:1px solid rgba(255,255,255,.15)}.user-email{background-color:transparent;color:#fff;font-weight:500;font-size:14px;letter-spacing:1px}.main-content{flex-grow:1;margin-left:280px;padding:40px;background-color:#f5f5f5;overflow-y:auto;max-height:100vh}.dashboard-home-main-content{background-color:transparent;padding:0;margin:0;max-width:none;min-height:auto;overflow-y:auto}.dashboard-bottom-section{margin-top:32px;background-color:transparent}.recent-sessions-section{background-color:transparent;margin-bottom:32px;max-width:100%}.card{background-color:#fff;color:#222;padding:30px;border-radius:10px;flex:1;cursor:pointer;transition:transform .2s ease,box-shadow .2s;box-shadow:0 2px 4px #0000000f;border:1px solid #e0e0e0;font-size:14px;font-weight:300;letter-spacing:1px}.card:hover{transform:translateY(-5px);box-shadow:0 4px 12px #4169e11a}.card h3{font-weight:300;letter-spacing:2px;margin-bottom:10px;font-size:20px;background-color:transparent;color:#222}.card p{color:#555;font-weight:300;letter-spacing:1px;font-size:14px;background-color:transparent}.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;background-color:transparent}.top-bar h1{font-weight:300;letter-spacing:4px;font-size:32px;background-color:transparent;color:#222}.sign-out{background-color:transparent;border:none;color:#4169e1;cursor:pointer;font-weight:300;letter-spacing:2px;font-size:16px;text-transform:uppercase;padding:10px 20px;transition:all .2s ease;border-radius:8px}.sign-out:hover{background-color:#e3eafe;color:#2741a5;transform:translateY(-2px);box-shadow:0 2px 4px #4169e114}.quick-access{background-color:transparent}.quick-access h2{font-weight:300;letter-spacing:3px;margin-bottom:20px;font-size:24px;background-color:transparent;color:#222}.quick-access-cards{display:flex;gap:30px;background-color:transparent}.session-info{background:none!important;box-shadow:none!important;border:none!important}.topbar{background-color:transparent;height:50px;width:100%;display:flex;justify-content:flex-end;align-items:center}.loginbuttontopright{text-align:right;background-color:transparent;margin-right:20px}.button{font-size:20px;font-family:Montserrat,sans-serif;color:#4169e1;background-color:transparent;border:transparent;position:relative;cursor:pointer;font-weight:300;letter-spacing:2px}.button:after{content:"";position:absolute;bottom:-5px;left:0;height:1px;width:0%;background-color:#4169e1;transition:width .3s ease}.button:hover:after{width:100%}.welcometext{color:#222;margin-top:175px;font-family:Montserrat,sans-serif;font-size:25px;text-align:center;transform:translateY(-75px);animation:slideDown .6s ease-out forwards}.welcometext h1{color:#222;font-family:Montserrat,sans-serif;font-weight:300;font-size:40px;letter-spacing:8px;text-transform:uppercase}@keyframes slideDown{to{opacity:1;transform:translateY(0)}}.dashboard-home-main-content{display:flex;flex-direction:column;min-height:100vh;background:#f7f8fa;position:relative}.dashboard-header{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:32px;margin-top:-20px;position:relative}.dashboard-welcome{font-family:Bevan,serif;font-size:2.5rem;color:#222;margin-bottom:0;letter-spacing:1px}.dashboard-subtitle{font-family:Inter,sans-serif;font-size:1.1rem;color:#444;font-weight:400;margin-bottom:8px}.dashboard-cards-row{display:flex;gap:32px;margin-bottom:0}.dashboard-card{position:relative;width:250px;height:320px;border-radius:18px;overflow:hidden;box-shadow:0 2px 12px #4169e114;background:#fff;cursor:pointer;transition:transform .15s,box-shadow .15s;display:flex;align-items:flex-end;outline:5px solid #ffffff}.dashboard-card:hover{transform:translateY(-6px) scale(1.03);box-shadow:0 8px 24px #4169e121}.dashboard-card-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.92;z-index:1}.dashboard-card-content{position:relative;z-index:2;background:#effbfe;padding:18px 40px 16px 20px;border-bottom-left-radius:18px;border-bottom-right-radius:18px;width:100%}.dashboard-card-title{font-family:Inter,sans-serif;font-weight:700;font-size:1.2rem;color:#1a237e;margin-bottom:4px}.dashboard-card-desc{font-family:Inter,sans-serif;font-size:1rem;color:#444;font-weight:400}.robotman-wrapper{display:flex;justify-content:flex-start;align-items:flex-end;height:100px;margin:24px 0;position:relative;z-index:1}.robotman-img{width:140px;height:auto;display:block;margin-left:-19px;position:relative;z-index:1}.recent-sessions-section{width:260px;background:#fff;border-radius:16px;box-shadow:0 2px 12px #4169e114;padding:24px 24px 18px;font-family:Inter,sans-serif;margin:24px auto 32px;display:block}.recent-sessions-title{font-size:2rem;font-weight:700;color:#222;margin-bottom:6px;font-family:Inter,sans-serif}.recent-sessions-subtitle{color:#555;font-size:1.05rem;margin-bottom:24px;font-family:Inter,sans-serif;font-weight:400}.recent-sessions-list{display:flex;flex-direction:column;gap:18px}.recent-session-item{background:#f7f8fa;border-radius:10px;padding:12px 16px;font-size:1rem;color:#222;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .13s;border:1px solid #e0e0e0}.recent-session-item:hover{background:#e3eafe}.recent-session-name{font-weight:600;color:#1a237e;font-family:Inter,sans-serif}.recent-session-date{font-size:.98rem;color:#888;font-family:Inter,sans-serif}.recent-session-item.no-sessions{color:#b0b0b0;font-style:italic;justify-content:center}.dashboard-welcome span{cursor:pointer;transition:color .2s ease;border-bottom:2px solid transparent;padding:2px 4px;border-radius:4px}.dashboard-welcome span:hover{color:#4169e1;border-bottom-color:#4169e1}.dashboard-welcome input{background:transparent;border:2px solid #4169e1;border-radius:6px;padding:4px 8px;font-family:Bevan,serif;font-size:inherit;font-weight:inherit;color:inherit;outline:none;min-width:120px;transition:all .2s ease}.dashboard-welcome input:focus{box-shadow:0 0 0 3px #4169e11a;background:#ffffffe6}@media (max-width: 1200px){.dashboard-cards-row{flex-direction:column;gap:24px;align-items:flex-start}.recent-sessions-section{position:static;width:100%;margin-top:32px}}@media (max-width: 900px){.dashboard-home-main-content{padding:16px 4px}.recent-sessions-section{padding:16px 8px 12px}}.dashboard-home-main-content .quick-access,.dashboard-home-main-content .quick-access-cards{display:none!important}.recent-session-card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #4169e114;padding:22px 22px 16px;margin-bottom:0;cursor:pointer;transition:box-shadow .13s,transform .13s;border:1px solid #f0f0f0;display:flex;flex-direction:column}.recent-session-card:hover{box-shadow:0 4px 16px #4169e121;transform:translateY(-2px) scale(1.01)}.recent-session-card-main{display:flex;align-items:center;justify-content:space-between;gap:16px}.recent-session-card-info{flex:1;display:flex;flex-direction:column;gap:0}.recent-session-card-title{font-size:1.18rem;font-weight:700;color:#222;margin-bottom:4px;font-family:Inter,sans-serif}.recent-session-card-meta{font-size:1.02rem;color:#888;display:flex;align-items:center;gap:8px;font-family:Inter,sans-serif;font-weight:400;margin-bottom:10px}.dot-separator{font-size:1.2em;color:#b0b0b0;margin:0 2px}.recent-session-progress-bar{width:100%;height:4px;background:#ede7f6;border-radius:2px;margin-top:8px;position:relative;overflow:visible}.recent-session-progress-bar-inner{width:90%;height:100%;background:#b39ddb;border-radius:2px;position:absolute;left:0;top:0;transition:width .3s}.recent-session-progress-dot{position:absolute;right:0;top:50%;transform:translateY(-50%);width:8px;height:8px;background:#b39ddb;border-radius:50%;box-shadow:0 0 0 2px #ede7f6}.recent-session-card-menu{display:flex;align-items:center;justify-content:center;height:100%;padding-left:10px;padding-right:2px}.recent-session-card-menu svg circle{fill:#888}.dashboard-home-widgets-row{display:flex;flex-direction:row;gap:40px;margin-top:36px;align-items:flex-start;justify-content:flex-start}@media (max-width: 1100px){.dashboard-home-widgets-row{flex-direction:column;gap:24px;align-items:stretch}.dashboard-calendar-card,.recent-sessions-section{width:100%!important;min-width:0!important;max-width:100%!important}}.dashboard-calendar-stack{display:flex;flex-direction:column;align-items:center;width:260px;gap:0}.recent-sessions-section{width:260px;background:#fff;border-radius:16px;box-shadow:0 2px 12px #4169e114;padding:24px 24px 18px;font-family:Inter,sans-serif;margin:24px 0 0;display:block}.active-sessions-section{height:auto!important;min-height:0!important;margin-top:0!important}.sidebar,.sidebar *{font-family:Inter,sans-serif!important;font-weight:700!important;font-size:17.5px!important;line-height:1!important;letter-spacing:0!important}.dashboard-card .session-list-item>div:first-child,.dashboard-card .session-list-item:hover>div:first-child{margin-right:0!important;transition:none!important}.dashboard-calendar-card{background:#fff;border-radius:18px;box-shadow:0 2px 12px #4169e114;padding:8px 8px 0;width:260px;display:flex;flex-direction:column;align-items:center;position:relative;min-width:0;max-width:100%}.calendar-header-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:0;margin-bottom:0;overflow:hidden}.calendar-title{font-size:clamp(.7rem,6vw,1.35rem);font-weight:700;color:#222;font-family:Inter,sans-serif;letter-spacing:1px;flex:2 1 0;min-width:140px;display:block;text-align:left;white-space:nowrap;overflow:hidden}.calendar-arrows-group{display:flex;align-items:center;gap:0px;flex-shrink:0}.calendar-arrow{background:none;border:none;color:#222;cursor:pointer;padding:0;margin:0 2px;transition:color .15s;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center}.calendar-arrow svg{width:20px;height:20px}.calendar-arrow:hover{color:#4169e1}.calendar-subtitle{font-size:.85rem;color:#444;font-family:Inter,sans-serif;font-weight:400;margin-bottom:10px;text-align:left;width:100%}.calendar-grid{display:flex;flex-direction:column;gap:4px;width:100%;margin-bottom:18px}.calendar-week{display:flex;flex-direction:row;justify-content:flex-start;gap:4px}.calendar-day{width:32px;height:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.05rem;color:#222;font-family:Inter,sans-serif;font-weight:400;position:relative;background:none;border-radius:50%;transition:background .15s;margin:0;padding:0}.calendar-day-empty{color:#ccc!important;pointer-events:none}.calendar-day-dot .calendar-dot{width:7px;height:7px;background:#e57373;border-radius:50%;position:absolute;left:50%;bottom:7px;transform:translate(-50%);display:block}.calendar-dot{width:7px;height:7px;background:#e57373;border-radius:50%;margin-top:2px;display:block}.calendar-day-dots{display:flex;gap:2px;justify-content:center;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}.calendar-day-dot-past{width:4px;height:4px;background:#4caf50;border-radius:50%}.calendar-day-dot-active{width:4px;height:4px;background:#ffc107;border-radius:50%}.calendar-day-dot-scheduled{width:4px;height:4px;background:#f44336;border-radius:50%}.calendar-tent-img{width:100%;margin-top:-80px;margin-bottom:-60px;align-self:center;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:100%}.calendar-day-outside{color:#ccc!important;font-weight:400}.calendar-day-today{background:#e3eafe!important;border-radius:50%;color:#4169e1!important;font-weight:700;box-shadow:0 2px 8px #4169e114}.sidebar{background:#4169e1;color:#fff;min-width:220px;box-shadow:2px 0 12px #4169e112}.sidebar .nav-item.active,.sidebar .nav-item:hover{background:#fff;color:#4169e1;border-radius:8px;font-weight:700}.sidebar .nav-item{padding:14px 24px;margin:6px 0;border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.card,.session-info,.modal{background:#fff;border-radius:18px;box-shadow:0 4px 24px #4169e114;padding:36px 32px 28px;margin-bottom:32px;border:none}.quick-access-cards,.sessions-content{display:flex;flex-wrap:wrap;gap:32px}.card{transition:box-shadow .2s,border-color .2s;border:1.5px solid #e0e0e0}.card:hover{box-shadow:0 8px 32px #4169e121;border-color:#4169e1}.status-badge.stopped{background:#ff9800;color:#fff}@media (max-width: 900px){.main-content{margin-left:0;padding:16px 4px;max-width:100vw}.card,.session-info,.modal{padding:16px 6px 12px}}.user-profile{background-color:transparent;border-top:1px solid rgba(255,255,255,.15)}.user-email{background-color:transparent;color:#fff}@media (max-width: 1300px){.main-content{max-width:98vw;padding-left:24px;padding-right:24px}}.session-info{background-color:transparent;color:#222;border:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000f;padding:40px 40px 28px;border-radius:16px}.session-info h2{color:#222}.card{background-color:#fff;color:#222;border:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000f;padding:40px 40px 28px;border-radius:16px}.card:hover{box-shadow:0 4px 12px #4169e11a}.active-session{background-color:transparent;border-left:4px solid #4169e1}.quick-access h2,.session-header h2{background-color:transparent;color:#222}.data-container{background-color:transparent;color:#222;border:1px solid #e0e0e0}.data-item{background-color:transparent;color:#222;border-bottom:1px solid #e0e0e0}.data-item .timestamp{background-color:transparent;color:#888}.data-item .data{background-color:transparent;color:#222}.no-data,.no-robots{color:#888;background:transparent;border:2px dashed #e0e0e0}.input-group input,.input-group select{background:#f5f5f5;color:#222;border:1px solid #e0e0e0}.input-group input:focus,.input-group select:focus{background-color:transparent;border-color:#4169e1}.status-badge.active{background-color:#4169e1;color:#fff}.status-badge.stopped{background-color:#ff9800;color:#fff}.session-btn{background-color:transparent;background:#4169e1;color:#fff}.session-btn.delete-btn{background-color:transparent;background:#f44336}.session-btn:disabled{background-color:transparent;background:#b0b0b0;color:#fff}.delete-bar{background:#f44336}.delete-bar img{background:transparent}.top-bar-actions{background-color:transparent;display:flex;gap:20px;align-items:center}.active-session h3{background-color:transparent;margin-bottom:15px}.active-session p{background-color:transparent;margin-bottom:10px}.session-time{background-color:transparent;color:#b0b0b0;font-size:14px}.sessions-content,.session-view-content{background-color:transparent}.view-session-btn{margin-top:15px;background-color:#fff;color:#1a1a1a;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:300;letter-spacing:1px;font-size:14px;transition:all .2s ease}.view-session-btn:hover{transform:translateY(-2px);box-shadow:0 2px 4px #fff3}.session-header{display:flex;align-items:center;gap:50px;background-color:transparent}.back-btn{background-color:transparent;border:none;color:#000;font-size:16px;font-weight:300;letter-spacing:1px;cursor:pointer;padding:8px 0;transition:all .2s ease}.back-btn:hover{transform:translate(-5px)}.session-view-content{margin-top:30px}.connection-status{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #404040;background-color:transparent}.connection-status h2{background-color:transparent}.status-indicator{display:flex;align-items:center;gap:20px;margin:15px 0}.status-indicator span{background-color:transparent;color:#000}.status-dot{width:12px;height:12px;border-radius:50%;background-color:#666;transition:background-color .3s ease}.connection-btn{padding:10px 20px;border-radius:8px;font-size:16px;font-weight:300;letter-spacing:1px;cursor:pointer;transition:all .2s ease;border:none}.connection-btn.connect{background-color:#fff;color:#1a1a1a}.connection-btn.disconnect{background-color:#f44;color:#fff}.connection-btn:hover{transform:translateY(-2px);box-shadow:0 2px 4px #fff3}.data-display{background-color:transparent;margin-top:20px}.data-display h3{background-color:transparent;margin-bottom:15px;font-weight:300;letter-spacing:2px;color:#fff}.data-container{background-color:transparent;border-radius:8px;padding:20px;max-height:400px;overflow-y:auto;border:1px solid #e0e0e0}.data-item{padding:8px;border-bottom:1px solid #e0e0e0;font-family:monospace;white-space:pre-wrap;display:flex;gap:12px;align-items:center}.data-item:last-child{background-color:transparent;border-bottom:none}.data-item .timestamp{background-color:transparent;color:#b0b0b0;font-size:12px;min-width:80px;font-weight:500}.data-item .data{background-color:transparent;flex:1;color:#fff;font-size:14px}.no-data{background-color:transparent;color:#b0b0b0;font-style:italic}.data-container::-webkit-scrollbar{width:8px}.data-container::-webkit-scrollbar-track{background:transparent;border-radius:4px}.data-container::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:4px}.data-container::-webkit-scrollbar-thumb:hover{background:#ccc}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#4169e12e;z-index:1000;display:flex;align-items:center;justify-content:center;transition:background .2s}.modal{background-color:#fff;color:#222;border:1px solid #e0e0e0;box-shadow:0 4px 12px #4169e11a}.modal h2{margin-bottom:20px;font-weight:300;letter-spacing:2px;color:#fff;background-color:transparent}.modal-content,.modal-content label{margin-bottom:30px;background-color:transparent}.input-group{margin-bottom:20px;background:transparent}.input-group label{display:block;margin-bottom:8px;font-weight:300;letter-spacing:1px;color:#fff;background:transparent!important}.input-group input{background:#f5f5f5!important;color:#222}.input-group input,.input-group select{width:100%;padding:10px;border:1px solid #404040;border-radius:12px;font-size:16px;font-family:Montserrat,sans-serif;background:transparent;color:#fff}.input-group input:focus,.input-group select:focus{outline:none;border-color:#fff}.modal-actions{display:flex;justify-content:flex-end;gap:15px;background-color:transparent}.modal-actions button{padding:10px 20px;border-radius:6px;font-size:16px;font-weight:300;letter-spacing:1px;cursor:pointer;transition:all .2s ease}.cancel-btn:hover{background-color:#e0e0e0}.create-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 2px 4px #fff3}.robot-cards-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px;padding-bottom:18px}.robot-header{background-color:transparent;display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #404040}.robot-id{background-color:transparent;display:flex;align-items:center;gap:10px}.device-id{font-family:monospace;font-size:16px;font-weight:600;color:#222;background-color:#f5f5f5;padding:4px 8px;border-radius:4px;border:1px solid #e0e0e0}.status-indicator{width:10px;height:10px;border-radius:50%;background-color:#4caf50;animation:pulse 2s infinite}.status-indicator.inactive{background-color:transparent;animation:none}.robot-stats{background-color:transparent;font-size:12px;color:#b0b0b0;font-weight:300}.robot-info{background-color:transparent;margin-bottom:15px}.info-row{background-color:transparent;display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.info-row .label{background-color:transparent;color:#b0b0b0;font-weight:500}.info-row .value{background-color:transparent;color:#fff;font-family:monospace;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-robots{text-align:center;color:#b0b0b0;font-style:italic;padding:40px 20px;background-color:transparent;border-radius:8px;border:2px dashed #e0e0e0;width:100%}.status-badge{background-color:transparent;font-weight:500;text-transform:uppercase;letter-spacing:1px}.status-badge.active{background-color:#4caf50;color:#fff}.status-badge.paused{background-color:#ff9800;color:#fff}.session-btn{transition:all .2s ease;font-weight:300;letter-spacing:1px}.session-btn:hover{background-color:transparent;transform:translateY(-2px);box-shadow:0 2px 4px #fff3}.connection-btn:disabled{background-color:transparent;opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.delete-bar{position:absolute;top:0;right:0;width:100px;height:100%;background:#f44336;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;cursor:pointer;z-index:2;border-top-right-radius:10px;border-bottom-right-radius:10px}.card:hover .delete-bar{opacity:1}.delete-bar img{width:24px;height:24px;background-color:transparent}.clear-data-btn{background:#f0f0f0;border:1px solid #ddd;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:300;letter-spacing:1px;transition:background .2s,border .2s}.session-name-input{font-size:24px;font-weight:300;border:none;background:transparent;color:#000;padding:8px 0;border-bottom:2px solid transparent;transition:border-color .2s ease}.session-name-input:focus{outline:none;border-bottom-color:#4169e1}.session-view-content{background:#f7f9fb;padding:0 16px;border-radius:18px;box-shadow:0 2px 12px #4169e10a}.session-info{margin-bottom:32px;box-shadow:0 4px 24px #4169e112;border-radius:14px;border:none;background:#fff;padding:32px 32px 24px}@media (max-width: 900px){.session-info{padding:18px 8px 16px}.session-view-content{padding:0 2px}}.session-info h2{font-size:1.5rem;font-weight:700;margin-bottom:18px;color:#222}button,.session-btn,.clear-data-btn,.connection-btn{border-radius:8px;font-size:15px;font-weight:500;letter-spacing:.5px;transition:all .2s;outline:none;border:none;box-shadow:none}button:focus,.session-btn:focus,.clear-data-btn:focus,.connection-btn:focus{box-shadow:0 0 0 2px #4169e1aa}.session-btn,.clear-data-btn,.connection-btn{padding:10px 22px;margin-left:8px;margin-right:8px}.session-btn.stop-btn{background:#ff9800;color:#fff}.session-btn:disabled,.clear-data-btn:disabled,.connection-btn:disabled{opacity:.5;cursor:not-allowed}.clear-data-btn{background:#f0f0f0;color:#222;border:1px solid #ddd}.clear-data-btn:hover{background:#e0e0e0;border-color:#bbb}.connection-btn.connect{background:#4169e1;color:#fff}.connection-btn.disconnect{background:#b0b0b0;color:#fff}.session-name-input{font-size:1.3rem;font-weight:400;border:none;background:transparent;color:#222;padding:8px 0;border-bottom:2px solid #e0e0e0;transition:border-color .2s;min-width:180px}.session-name-input:focus{border-bottom-color:#4169e1;outline:none}.robot-cards-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:28px;padding-bottom:18px}.robot-card{display:flex;flex-direction:column;align-items:center;justify-content:center;width:200px;height:200px;background:#fff;border-radius:12px;box-shadow:0 2px 12px #4169e114;border:2px solid #e0e0e0;padding:20px;transition:box-shadow .2s,border-color .2s,transform .2s;position:relative;cursor:pointer}.robot-card:hover{border-color:#4169e1;box-shadow:0 4px 16px #4169e121;transform:translateY(-2px)}.robot-card.selected{border-color:#4169e1;box-shadow:0 4px 16px #4169e121;border-width:3px}.robot-card-image{width:80px;height:80px;object-fit:contain;margin-bottom:12px}.robot-card-info{text-align:center;width:100%}.robot-card-device-id{font-family:monospace;font-size:14px;font-weight:600;color:#222;margin-bottom:8px;background:#f5f5f5;padding:4px 8px;border-radius:4px;border:1px solid #e0e0e0;display:inline-block}.robot-card-status{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:8px}.robot-card-status-indicator{width:8px;height:8px;border-radius:50%;background-color:#4caf50;animation:pulse 2s infinite}.robot-card-status-indicator.inactive{background-color:#b0b0b0;animation:none}.robot-card-data-count{font-size:12px;color:#888;font-weight:500}@media (max-width: 900px){.robot-cards-container{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}.robot-card{width:150px;height:150px;padding:16px}.robot-card-image{width:60px;height:60px;margin-bottom:8px}.robot-card-device-id{font-size:12px;padding:2px 6px}}.data-container{background:#f7f9fb;border-radius:10px;padding:18px;border:1px solid #e0e0e0;margin-bottom:12px}.data-item{background:#fff;border-radius:6px;margin-bottom:8px;padding:8px 12px;display:flex;align-items:center;gap:16px;font-family:monospace;font-size:.98rem;border-bottom:none;box-shadow:0 1px 2px #4169e108}.data-item .timestamp{color:#888;min-width:80px;font-weight:500}.data-item .data{color:#222;flex:1}.no-data,.no-robots{background:#f7f9fb;color:#b0b0b0;border-radius:10px;border:2px dashed #e0e0e0;padding:32px 12px;text-align:center}.session-view-content{background:#f7f9fb;padding:0;border-radius:0;box-shadow:none;max-height:calc(100vh - 200px);overflow-y:auto}.session-section{background:#fff;border-radius:18px;box-shadow:0 4px 24px #4169e114;border:1.5px solid #e0e0e0;padding:32px 32px 24px;margin-bottom:24px;transition:all .2s ease}.session-section:hover{box-shadow:0 8px 32px #4169e121;border-color:#4169e1}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.section-header h2{font-size:1.5rem;font-weight:700;color:#222;margin:0;background:transparent}.section-header .clear-data-btn{margin:0}@media (max-width: 900px){.session-section{padding:24px 20px 20px;margin-bottom:20px}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.section-header h2{font-size:1.3rem}}.session-info{margin-bottom:24px;box-shadow:0 4px 24px #4169e114;border-radius:18px;border:none;background:#fff;padding:32px 32px 24px;border:1.5px solid #e0e0e0}.session-info:hover{box-shadow:0 8px 32px #4169e121;border-color:#4169e1}@media (max-width: 900px){.session-info{padding:24px 20px 20px;margin-bottom:20px}.session-view-content{padding:0}}.session-info h2{font-size:1.5rem;font-weight:700;margin-bottom:18px;color:#222;background:transparent}.section-divider{height:1px;background:#e0e0e0;margin:24px 0;border-radius:2px}.connection-status{margin-bottom:24px;padding-bottom:0;border-bottom:none;background:transparent}.connection-status h2{background:transparent;margin-bottom:16px}.status-indicator{display:flex;align-items:center;gap:12px;margin:16px 0;background:transparent}.status-indicator span{background:transparent;color:#222;font-weight:500}.status-dot{width:12px;height:12px;border-radius:50%;background-color:#b0b0b0;transition:background-color .3s ease}.status-dot.connected{background-color:#4caf50}.connection-btn{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;border:none;font-family:Montserrat,sans-serif;display:flex;align-items:center;justify-content:center;gap:8px}.connection-btn.connect{background:#4169e1;color:#fff;border:none}.connection-btn.disconnect{background:#fff;color:#4169e1;border:1.5px solid #4169e1}.connection-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4169e133}.connection-btn.connect:hover{background:#274bb5}.connection-btn.disconnect:hover{background:#f7f9fb}.session-name-input{font-size:1.4rem;font-weight:600;border:none;background:transparent;color:#222;padding:8px 0;border-bottom:2px solid transparent;transition:border-color .2s ease;min-width:150px;max-width:300px;font-family:Montserrat,sans-serif;outline:none}.session-name-input:hover{border-bottom-color:#4169e1;cursor:text;outline:none}.session-name-input:focus{border-bottom-color:#4169e1;outline:none;background-color:#4169e10d}.session-name-input:disabled{color:#888;border-bottom-color:transparent;cursor:not-allowed;outline:none}.status-badge{padding:6px 16px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;background:transparent}.status-badge.paused{background:#ff9800;color:#fff;padding:6px 16px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px}.status-badge.ended{background-color:#6c757d;color:#fff}.session-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;border:none;font-family:Montserrat,sans-serif;margin-left:8px;display:flex;align-items:center;gap:8px;min-width:120px;height:40px;justify-content:center;white-space:nowrap}.session-btn svg{width:18px;height:18px;flex-shrink:0}.session-btn.save-btn{background:#4169e1;color:#fff}.session-btn.pause-btn{background:#ff9800;color:#fff}.session-btn.end-btn{background:#dc3545;color:#fff}.session-btn.resume-btn{background:#28a745;color:#fff}.session-btn.delete-btn{background:#f44336;color:#fff}.session-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4169e133}.session-btn.save-btn:hover{background:#274bb5}.session-btn.pause-btn:hover{background:#e68900}.session-btn.end-btn:hover{background:#c82333}.session-btn.resume-btn:hover{background:#218838}.session-btn.delete-btn:hover{background:#d32f2f}.session-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.clear-data-btn{background:#fff;color:#4169e1;border:1.5px solid #4169e1;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.5px;transition:all .2s ease;font-family:Montserrat,sans-serif}.clear-data-btn:hover{background:#f7f9fb;transform:translateY(-1px);box-shadow:0 2px 8px #4169e126}.data-container{background:#fff;border-radius:12px;padding:20px;border:1.5px solid #e0e0e0;margin-bottom:16px;box-shadow:0 2px 8px #4169e10a;max-height:400px;overflow-y:auto}.data-container:hover{border-color:#4169e1;box-shadow:0 4px 16px #4169e114}.data-item{background:#f7f9fb;border-radius:8px;margin-bottom:8px;padding:12px 16px;display:flex;align-items:center;gap:16px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;border:none;box-shadow:0 1px 3px #4169e10d;transition:background .2s ease}.data-item:hover{background:#f0f4ff}.data-item:last-child{margin-bottom:0}.data-item .timestamp{color:#888;min-width:80px;font-weight:600;font-size:12px;background:transparent}.data-item .data{color:#222;flex:1;background:transparent;word-break:break-all}.no-data,.no-robots{background:#f7f9fb;color:#888;border-radius:12px;border:2px dashed #e0e0e0;padding:40px 20px;text-align:center;font-style:italic;font-size:14px}.no-robots{width:100%;margin:20px 0}.top-bar{background:#fff;padding:20px 0;margin-bottom:24px;border-bottom:5px solid #e0e0e0;border-radius:0;min-height:80px;display:flex;align-items:center}.session-header{display:flex;align-items:center;gap:20px;background:transparent;width:100%;min-height:60px}.session-header>div:last-child{min-width:400px;display:flex;gap:12px;justify-content:flex-end}.back-btn{background:transparent;border:none;color:#4169e1;font-size:14px;font-weight:600;letter-spacing:.5px;cursor:pointer;padding:8px 16px;border-radius:6px;transition:all .2s ease;font-family:Montserrat,sans-serif;display:flex;align-items:center;gap:6px}.back-btn:hover{background:#f0f4ff;transform:translate(-2px)}.back-btn:before{content:"←";font-size:16px;font-weight:700}.session-header h1{font-size:1.8rem;font-weight:700;color:#222;margin:0;background:transparent}.session-header .session-name-input,.session-name-input{background:transparent!important;border:none!important;border-bottom:2px solid transparent!important;border-radius:0!important;color:#222!important;font-size:1.4rem!important;font-weight:600!important;padding:8px 0!important;min-width:200px!important;font-family:Montserrat,sans-serif!important;outline:none!important;box-shadow:none!important;transition:border-color .2s!important}.session-header .session-name-input:hover,.session-header .session-name-input:focus,.session-name-input:hover,.session-name-input:focus{border-bottom-color:#4169e1!important;background:transparent!important;outline:none!important;box-shadow:none!important}.session-header .session-name-input:disabled,.session-name-input:disabled{color:#888!important;border-bottom-color:transparent!important;cursor:not-allowed!important;background:transparent!important;box-shadow:none!important}.session-list{display:flex;flex-direction:column;gap:18px;width:100%}.session-list-item .session-btn.delete-btn{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;align-items:center!important;justify-content:center!important;position:relative!important;right:0!important;background:#f44336!important;color:#fff!important;border-radius:6px!important;margin-left:18px!important;z-index:10!important;width:40px!important;height:40px!important;min-width:0!important;min-height:0!important;font-size:18px!important;border:2px solid #000!important;box-shadow:none!important;outline:none!important}.session-list-item{position:relative;overflow:hidden;transition:box-shadow .2s,border-color .2s,transform .2s}.delete-area{position:absolute;top:0;right:0;height:100%;width:0;background:#f44336;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:width .25s cubic-bezier(.4,0,.2,1),background .2s;z-index:2;overflow:hidden}.session-list-item:hover .delete-area{width:64px}.session-list-item .trash-icon{width:28px;height:28px;color:#fff;stroke:#fff;border:none!important}.session-list-item>div:first-child{transition:margin-right .25s cubic-bezier(.4,0,.2,1)}.session-list-item:hover>div:first-child{margin-right:64px}.session-list-item{background:#fff;border-radius:14px;box-shadow:0 1px 6px #4169e10a;border:1px solid #e0e0e0;padding:28px 40px;margin-bottom:12px;transition:box-shadow .18s,border-color .18s,transform .18s;cursor:pointer}.session-list-item:not(.session-card-empty):hover{border-color:#b3c6f7;box-shadow:0 4px 16px #4169e117;transform:translateY(-2px) scale(1.01)}.delete-area{border-top-right-radius:14px;border-bottom-right-radius:14px;background:#f44336;transition:background .18s,width .25s cubic-bezier(.4,0,.2,1)}.delete-area:hover{background:#d32f2f}.trash-icon{width:28px;height:28px;color:#fff;stroke:#fff;border:none!important}.status-badge.active,.status-badge.ended{font-size:13px;padding:6px 18px;border-radius:16px;font-weight:600;letter-spacing:.5px}.session-list-item>div:first-child{gap:24px}.session-list-item .session-time{font-size:13px;color:#b0b0b0;font-weight:400}.session-list-item .status-badge{margin-right:10px}.session-list-item span[style*="font-weight: 600"]{font-size:1.18rem;font-weight:700;color:#222}.quick-access{width:100%;margin:0;padding:0;background:none;box-shadow:none}.quick-access h2{font-size:1.25rem;font-weight:600;color:#222;margin-bottom:18px;margin-top:12px!important}.sessions-content{width:100%;margin:0;background:#fff;border-radius:0;box-shadow:none;padding:20px 0 48px}body,.dashboard-container{background:#f5f7fa!important}.sessions-content{max-width:1400px;margin:0 auto;background:#fff;border-radius:22px;box-shadow:0 8px 32px #4169e112;padding:48px 40px}.session-list-item{position:relative;width:100%;max-width:none;margin:0 0 18px;padding:36px 32px 28px;background:#fff;border-radius:18px;box-shadow:0 2px 12px #4169e114;border:1.5px solid #e0e0e0;transition:box-shadow .18s,border-color .18s,transform .18s;cursor:pointer;overflow:visible!important}.status-badge{position:absolute;top:-45px;left:-45px;transform:rotate(-15deg);z-index:10;padding:8px 48px;border-radius:0 0 16px;box-shadow:0 2px 8px #4169e11a;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;background:#4169e1;color:#fff;border:none}.session-list-item:not(.session-card-empty):hover{border-color:#4169e1;box-shadow:0 8px 32px #4169e121;transform:translateY(-2px) scale(1.01)}.quick-access{margin-bottom:48px}.quick-access h2{font-size:1.35rem;font-weight:700;color:#222;margin-bottom:24px;margin-top:40px;letter-spacing:.5px}.top-bar{background:#fff;border-radius:18px;box-shadow:0 2px 12px #4169e114;padding:32px 40px 24px;margin-bottom:36px;display:flex;align-items:center;justify-content:space-between}.create-session-btn{background:#4169e1;color:#fff;border:none;padding:12px 28px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #4169e112;display:flex;align-items:center;gap:8px}.create-session-btn:hover{background:#274bb5;box-shadow:0 4px 16px #4169e121;transform:translateY(-2px)}@media (max-width: 900px){.sessions-content,.top-bar{padding:12px 4px;border-radius:10px}.session-list-item{padding:14px 8px;border-radius:10px}.quick-access h2{font-size:1.1rem;margin-top:18px;margin-bottom:12px}}.btn-primary,.btn-secondary,.modal-footer button{font-family:Space Mono,monospace!important}.lesson-details-title{font-family:Sniglet,serif!important;font-weight:500!important}body{background:#f7f9fb;color:#222}.main-content{background:#f7f9fb;max-width:1200px;padding:48px 32px;min-height:100vh;margin-left:280px}h1,h2,h3{font-weight:700;color:#222;margin-bottom:18px}h1{font-size:2.2rem}h2{font-size:1.5rem}h3{font-size:1.15rem}.session-info,.modal{background:#fff;border-radius:18px;box-shadow:0 4px 24px #4169e114;padding:36px 32px 28px;margin-bottom:32px;border:none}button,.session-btn,.create-btn,.cancel-btn,.clear-data-btn,.connection-btn{border-radius:8px;font-size:1rem;font-weight:600;letter-spacing:.5px;transition:all .2s;outline:none;border:none;box-shadow:none;padding:12px 28px;margin:0 6px}.create-btn,.session-btn,.connection-btn.connect{background:#4169e1;color:#fff;border:none}.create-btn:disabled,.session-btn:disabled,.connection-btn:disabled{opacity:.5;cursor:not-allowed}.create-btn:hover,.session-btn:hover,.connection-btn.connect:hover{background:#274bb5}.cancel-btn,.clear-data-btn,.connection-btn.disconnect{background:#fff;color:#4169e1;border:1.5px solid #4169e1}.cancel-btn:hover,.clear-data-btn:hover,.connection-btn.disconnect:hover{background:#f7f9fb}input,select,.session-name-input{border-radius:8px;border:1.5px solid #e0e0e0;padding:12px 10px;font-size:1.08rem;background:#fff;color:#222;transition:border-color .2s}input:focus,select:focus,.session-name-input:focus{border-color:#4169e1;outline:none}.input-group label{color:#4169e1;font-weight:600;margin-bottom:8px}.modal{min-width:340px;max-width:98vw;position:relative;border-radius:20px;box-shadow:0 8px 32px #4169e121;padding:36px 32px 28px}.modal h2{color:#222;font-weight:700;text-align:center;margin-bottom:10px}.modal-content{margin-bottom:24px}.modal-actions{display:flex;justify-content:flex-end;gap:12px}.section-divider{height:1px;background:#e0e0e0;margin:32px 0;border-radius:2px}.status-badge.active{background:#4169e1;color:#fff}.status-badge.paused{background:#ff9800;color:#fff}.status-badge.ended{background:#6c757d;color:#fff}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:4px}::-webkit-scrollbar-track{background:#f7f9fb}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.robot-cards-container{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:16px;width:100%}.robot-card{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;background:#fff;border-radius:12px;box-shadow:0 2px 12px #4169e114;border:2px solid #e0e0e0;transition:all .2s ease;cursor:pointer;position:relative;padding:8px 16px;text-align:left;height:auto!important;min-height:unset!important}.robot-card img{margin-right:16px;height:80px;width:54px;object-fit:contain;display:block}.robot-assignment-btn{transition:all .2s ease}.robot-assignment-btn:hover{transform:scale(1.05);box-shadow:0 2px 8px #0003}.robot-card-assignment{transition:all .2s ease}.robot-card-assignment:hover{background:#d1e7ff!important}.robot-card.tag-selected{border-color:#4169e1!important;background:#f8f9ff!important;box-shadow:0 4px 16px #4169e126!important}.robot-card.tag-selected:hover{transform:translateY(-1px);box-shadow:0 6px 20px #4169e133!important}.section-header h2{margin:0;font-size:1.5rem;font-weight:700!important;color:#222}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;font-size:1.25rem;color:#222;font-weight:500}.modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:#666;transition:all .2s ease}.modal-body{margin-bottom:20px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e0e0e0}.btn-primary{background:#4169e1;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s ease}.btn-primary:hover{background:#274bb5}.btn-secondary{background:#f8f9fa;color:#666;border:1px solid #e0e0e0;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s ease}@media (max-width: 900px){.main-content{margin-left:0;padding:16px 4px;max-width:100vw}.session-info,.modal{padding:16px 6px 12px}}.robot-card-device-id{font-family:Fira Mono,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1.08rem;font-weight:600;color:#222;background:#f3f4f6;padding:4px 10px;border-radius:6px;border:1px solid #e0e0e0;display:inline-block;margin-bottom:0;cursor:text}.serial-popup-overlay{opacity:1;transition:opacity .4s cubic-bezier(.4,0,.2,1),background .4s cubic-bezier(.4,0,.2,1)}.serial-popup-overlay.fade-in{opacity:1}.serial-popup-overlay.fade-out{opacity:0;pointer-events:none}@keyframes bounce{0%,to{transform:translateY(0) scale(1)}20%{transform:translateY(-5px) scale(1.01)}40%{transform:translateY(0) scale(1)}60%{transform:translateY(-5px) scale(1.01)}80%{transform:translateY(0) scale(1)}}.connection-bounce{animation:bounce 1.6s infinite cubic-bezier(.4,0,.2,1)}.program-animation-grid{position:relative;width:320px;height:320px;margin:0 auto;background:transparent;display:flex;align-items:center;justify-content:center}.program-animation-robot{position:absolute;width:48px;height:48px;z-index:2;transition:left .7s,top .7s,transform .7s}@media (max-width: 900px){.robot-cards-container{padding-top:12px!important;gap:12px!important}.robot-card{flex-direction:column!important;align-items:flex-start!important;min-height:160px!important;padding:12px 8px 24px!important;gap:10px!important}.robot-card img{width:48px!important;height:56px!important;margin-right:0!important;margin-bottom:8px!important}.robot-card-device-id{font-size:.95rem!important;max-width:120px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.dropdown{right:4px!important;top:8px!important}}@media (max-width: 600px){.robot-cards-container{padding-top:6px!important;gap:8px!important}.robot-card{min-height:120px!important;padding:8px 2px 16px!important;font-size:.95rem!important}.robot-card-device-id{font-size:.85rem!important;max-width:70px!important}.dropdown-menu{min-width:100px!important;font-size:.9rem!important}}.top-bar{background:#fff;border-radius:18px;box-shadow:0 2px 12px #4169e114;padding:32px 40px 24px;margin-bottom:36px;display:flex;align-items:center;justify-content:space-between;max-width:100%}.classrooms-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.classrooms-header h1{font-size:2rem;font-weight:700;color:#222;margin:0}.create-classroom-btn{display:flex;align-items:center;gap:8px;background:#4169e1;color:#fff;border:none;padding:12px 28px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #4169e112}.create-classroom-btn:hover{background:#274bb5;box-shadow:0 4px 16px #4169e121;transform:translateY(-2px)}.classrooms-content{max-width:1400px;margin:0 auto;background:#fff;border-radius:22px;box-shadow:0 8px 32px #4169e112;padding:48px 40px;width:100%}@media (max-width: 900px){.classrooms-content{padding:12px 4px;border-radius:10px}}.empty-state{text-align:center;padding:80px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;border:1px solid #e0e0e0}.empty-state h3{color:#555;font-weight:600;margin:20px 0 12px;font-size:1.5rem}.empty-state p{color:#888;margin-bottom:32px;font-size:1rem}.create-first-btn{background:linear-gradient(135deg,#4169e1,#2741a5);color:#fff;border:none;padding:14px 28px;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #4169e133}.create-first-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4169e14d}.classrooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:32px;margin-top:24px}.classroom-card{background:#fff;border-radius:18px;box-shadow:0 4px 16px #4169e11a;overflow:visible;position:relative;display:flex;flex-direction:column;min-height:240px;transition:box-shadow .2s,border-color .2s,transform .2s;z-index:1;border:1.5px solid transparent}.classroom-card:hover{box-shadow:0 12px 32px #4169e12e;border-color:#4169e1;z-index:10}.classroom-card-header-bar{border-top-left-radius:18px;border-top-right-radius:18px;height:120px;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;z-index:100}.classroom-card-header-bar:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url(/dashboard/assets/whitedesign-DLLZ5Yr3.png);background-size:cover;background-repeat:no-repeat;background-position:center;opacity:.3;pointer-events:none;z-index:3}.classroom-card-avatar{position:absolute;left:50%;top:80px;transform:translate(-50%);width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #4169e126;z-index:9999;border:5px solid #fff;background-clip:padding-box;font-size:32px;pointer-events:auto}.classroom-card-content{background:#fff;border-bottom-left-radius:18px;border-bottom-right-radius:18px;padding:60px 24px 24px;flex:1;display:flex;flex-direction:column;justify-content:space-between;min-height:120px;margin-top:0;position:relative;z-index:0}.classroom-title h3{margin:0 0 8px;font-size:1.25rem;font-weight:700;color:#222;text-align:center}.classroom-info p{margin:0 0 12px;color:#666;font-size:.95rem;text-align:center}.classroom-actions{display:flex;gap:8px;justify-content:center;margin-top:8px}.action-btn{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.edit-btn{color:#4169e1}.edit-btn:hover{background:#e3eafe;color:#2741a5}.delete-btn{color:#dc3545}.delete-btn:hover{background:#ffeaea;color:#c82333}.quick-stats{display:flex;gap:24px}.stat{display:flex;align-items:center;gap:8px;color:#666;font-size:.9rem;font-weight:500}.stat svg{color:#4169e1}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-width:500px;width:100%;max-height:90vh;overflow:hidden;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.create-classroom-modal{max-width:600px}.classroom-detail-modal{max-width:800px;max-height:85vh}.modal-header{padding:24px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.classroom-header-info{display:flex;align-items:center;gap:12px}.modal-header h2{margin:0;font-size:1.5rem;font-weight:500;color:#222}.modal-close{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;color:#666;transition:all .2s ease}.modal-close:hover{background:#f0f0f0;color:#222}.modal-body{padding:24px;max-height:60vh;overflow-y:auto}.modal-footer{padding:24px;border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#222;font-size:.9rem}.form-group input{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#4169e1;box-shadow:0 0 0 3px #4169e11a}.icon-picker{display:flex;gap:8px;overflow-x:auto;padding:8px 0;scrollbar-width:thin;scrollbar-color:#c1c1c1 transparent}.icon-picker::-webkit-scrollbar{height:4px}.icon-picker::-webkit-scrollbar-track{background:transparent}.icon-picker::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:2px}.icon-option{background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:12px;cursor:pointer;transition:all .2s ease;flex-shrink:0;min-width:50px;height:50px;display:flex;align-items:center;justify-content:center}.icon-option:hover{border-color:#4169e1;transform:translateY(-2px);box-shadow:0 4px 8px #4169e11a}.icon-option.selected{border-color:#4169e1;background:#e3eafe;box-shadow:0 0 0 3px #4169e11a}.icon-emoji{font-size:20px;line-height:1}.color-picker{display:flex;gap:8px;flex-wrap:wrap;padding:8px 0}.color-picker-grid{display:flex;flex-wrap:wrap;gap:12px 12px;margin-top:8px;max-width:180px}.color-option{width:28px;height:28px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #00000014;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:transform .12s,box-shadow .12s,border-color .12s;outline:none;padding:0;box-sizing:border-box;background:none;font-size:0;line-height:0}.color-option:hover,.color-option:focus{transform:scale(1.08);box-shadow:0 2px 8px #00000026;border-color:#bbb;z-index:2}.color-option.selected{border:2.5px solid #222;box-shadow:0 0 0 2px #2222;z-index:3}.color-slider{width:100%;height:8px;border-radius:4px;background:linear-gradient(to right,red,#ff8000,#ff0,#80ff00,#0f0,#00ff80,#0ff);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:12px 0;cursor:pointer}.color-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #4169e1;box-shadow:0 2px 8px #0003;cursor:pointer;transition:all .2s ease}.color-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.color-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #4169e1;box-shadow:0 2px 8px #0003;cursor:pointer;transition:all .2s ease}.color-slider::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.color-slider::-moz-range-track{height:8px;border-radius:4px;background:linear-gradient(to right,red,#ff8000,#ff0,#80ff00,#0f0,#00ff80,#0ff);border:none}.theme-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0}.theme-button{width:100%;height:60px;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:none;outline:none;padding:0}.theme-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:#4169e1}.theme-button.selected{border:3px solid #222;box-shadow:0 0 0 2px #2223;transform:translateY(-1px)}.theme-name{color:#fff;font-weight:600;font-size:12px;text-shadow:0 1px 2px rgba(0,0,0,.5);z-index:1;position:relative}.color-preview{width:40px;height:40px;border-radius:8px;border:2px solid #e0e0e0;margin-top:8px;box-shadow:0 2px 4px #0000001a;transition:all .2s ease}.color-preview:hover{transform:scale(1.05);box-shadow:0 4px 8px #00000026}.btn-primary{background:linear-gradient(135deg,#4169e1,#2741a5);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4169e14d}.btn-secondary{background:#f8f9fa;color:#666;border:1px solid #e0e0e0;padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#e9ecef;color:#222}.classroom-detail-tabs{display:flex;flex-direction:column;gap:32px}.section{background:#f8f9fa;border-radius:8px;padding:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3{margin:0;font-size:1.1rem;font-weight:700;color:#222}.add-btn{display:flex;align-items:center;gap:6px;background:#4169e1;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.add-btn:hover{background:#2741a5;transform:translateY(-1px)}.students-list{display:flex;flex-direction:column;gap:12px}.student-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#fff;border-radius:8px;border:1px solid #e0e0e0;transition:all .2s ease}.student-item:hover{border-color:#4169e1;box-shadow:0 2px 8px #4169e11a}.student-info{display:flex;align-items:center;gap:12px}.student-avatar{width:36px;height:36px;background:#e3eafe;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#4169e1}.student-details{display:flex;flex-direction:column}.student-name{font-weight:600;color:#222;font-size:.95rem}.student-email{color:#666;font-size:.85rem}.remove-btn{background:none;border:none;padding:6px;border-radius:4px;cursor:pointer;color:#dc3545;transition:all .2s ease}.remove-btn:hover{background:#ffeaea}.groups-list{display:flex;flex-direction:column;gap:16px}.group-item{background:#fff;border-radius:8px;border:1px solid #e0e0e0;overflow:hidden}.group-header{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.group-header h4{margin:0;font-size:1rem;font-weight:600;color:#222}.group-students{padding:16px;display:flex;flex-direction:column;gap:8px}.group-student{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f8f9fa;border-radius:6px;font-size:.9rem}.remove-student-btn{background:none;border:none;padding:4px;border-radius:4px;cursor:pointer;color:#dc3545;transition:all .2s ease}.remove-student-btn:hover{background:#ffeaea}.add-to-group{padding:16px;border-top:1px solid #e0e0e0}.add-to-group select{width:100%;padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer}.add-to-group select:focus{outline:none;border-color:#4169e1;box-shadow:0 0 0 2px #4169e11a}.lessons-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.lesson-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;transition:all .2s ease}.lesson-item:hover{border-color:#4169e1;box-shadow:0 2px 8px #4169e11a}.lesson-info{display:flex;align-items:center;gap:12px;flex:1}.lesson-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f8f9fa;border-radius:6px;color:#4169e1;flex-shrink:0}.lesson-details{display:flex;flex-direction:column;gap:2px;min-width:0}.lesson-name{font-weight:600;color:#222;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-overview{color:#666;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-age{color:#888;font-size:11px;font-weight:500}.add-to-lessons{margin-top:12px}.add-to-lessons select{width:100%;padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;background:#fff;color:#222;cursor:pointer;transition:all .2s ease}.add-to-lessons select:focus{outline:none;border-color:#4169e1;box-shadow:0 0 0 2px #4169e11a}.no-students{color:#888;font-style:italic;text-align:center;padding:20px}.empty-list{text-align:center;padding:40px 20px;color:#888}.empty-list p{margin:0;font-style:italic}.group-item.drag-over{border:2px dashed #4169e1;background:#e3eafe;box-shadow:0 0 0 2px #4169e1;transition:background .15s,border .15s}@media (max-width: 768px){.classrooms-header{flex-direction:column;gap:16px;align-items:stretch}.create-classroom-btn{justify-content:center}.classrooms-grid{grid-template-columns:1fr;gap:18px}.classroom-card-header-bar{height:100px}.classroom-card-avatar{width:70px;height:70px;bottom:-35px;font-size:28px}.classroom-card-content{padding:50px 12px 16px;margin-top:35px;z-index:1}.classroom-detail-modal{max-width:95vw;margin:10px}.modal-content{max-width:95vw}.quick-stats{flex-direction:column;gap:12px}.section-header{flex-direction:column;gap:12px;align-items:stretch}.add-btn{justify-content:center}.icon-picker{gap:6px}.icon-option{min-width:45px;height:45px;padding:10px}.color-picker{gap:6px}.color-option{width:35px;height:35px}.color-slider{height:10px}.color-slider::-webkit-slider-thumb{width:24px;height:24px}.color-slider::-moz-range-thumb{width:24px;height:24px}.color-preview{width:50px;height:50px}.theme-buttons{grid-template-columns:repeat(2,1fr);gap:8px}.theme-button{height:50px}.theme-name{font-size:11px}}@media (max-width: 480px){.classroom-card-header{flex-direction:column;gap:12px;align-items:stretch}.classroom-actions{justify-content:flex-end}.student-item{flex-direction:column;gap:12px;align-items:stretch}.student-info{justify-content:center}.remove-btn{align-self:flex-end}.classroom-title{flex-direction:column;align-items:flex-start;gap:8px}.classroom-card-header-bar{height:90px}.classroom-card-avatar{width:60px;height:60px;bottom:-30px;font-size:24px}.classroom-card-content{padding:40px 12px 16px;margin-top:30px}.icon-picker{gap:4px}.icon-option{min-width:40px;height:40px;padding:8px}.color-picker{gap:4px}.color-option{width:30px;height:30px}}.classroom-card-menu{z-index:10000!important}.classroom-card-menu-btn{outline:none;box-shadow:none}.classroom-card-menu-btn:focus{outline:none;box-shadow:none}.modal-content .btn-primary{background:#4169e1!important;color:#fff;box-shadow:none}.modal-content .btn-primary:hover{background:#274bb5!important;box-shadow:0 4px 12px #4169e121;transform:translateY(-1px)}.animate-on-mount{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) both}.animate-on-mount-delay-1{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .1s both}.animate-on-mount-delay-2{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .2s both}.animate-on-mount-delay-3{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .3s both}.animate-on-mount-delay-4{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .4s both}.animate-on-mount-delay-5{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .5s both}.animate-on-mount-delay-6{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .6s both}.animate-on-mount-delay-7{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .7s both}.animate-on-mount-delay-8{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .8s both}.animate-on-mount-delay-9{animation:fadeInUp .6s cubic-bezier(.25,.46,.45,.94) .9s both}.slide-in-from-top{animation:slideInFromTop .8s cubic-bezier(.25,.46,.45,.94) both}.slide-in-from-bottom{animation:slideInFromBottom .8s cubic-bezier(.25,.46,.45,.94) both}.slide-in-from-left{animation:slideInFromLeft .8s cubic-bezier(.25,.46,.45,.94) both}.slide-in-from-right{animation:slideInFromRight .6s cubic-bezier(.25,.46,.45,.94) both}.fade-in-scale{animation:fadeInScale .6s cubic-bezier(.25,.46,.45,.94) both}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}button:hover,.nav-button:hover,.secondary-btn:hover,.dashboard-card:hover,.session-list-item:hover{transform:translateY(-2px);transition:transform .2s cubic-bezier(.25,.46,.45,.94)}button,.nav-button,.secondary-btn,.dashboard-card,input,.form-group,.session-list-item{transition:all .2s cubic-bezier(.25,.46,.45,.94)}html{scroll-behavior:smooth}*{will-change:transform,opacity}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.dashboard-card,.session-list-item,.recent-session-card{transition:all .3s cubic-bezier(.25,.46,.45,.94)}.dashboard-card:hover,.session-list-item:hover,.recent-session-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000001a}.status-badge,.nav-item,.nav-button{transition:all .3s cubic-bezier(.25,.46,.45,.94)}:root{--font-title: "Bebas Neue", serif;--font-subtitle: "Open Sans", sans-serif;--font-heading: "Sniglet", serif;--font-subheading: "Bevan", serif;--font-body: "Space Mono", monospace}.sessions-content,.session-view-content,.classrooms-content,.login-content,.signup-content,.home-content{font-family:var(--font-body)!important}.sessions-content h1,.session-view-content h1,.classrooms-content h1,.login-content h1,.signup-content h1,.home-content h1,.session-title,.classroom-title,.login-title h1,.signup-title h1,.home-title h1,.hero-content h1,h1{font-family:Bevan,serif!important;font-weight:400!important}.sessions-content h2,.session-view-content h2,.classrooms-content h2,.login-content h2,.signup-content h2,.home-content h2,.session-subtitle,.classroom-subtitle,.login-title p,.signup-title p,.home-subtitle{font-family:var(--font-subtitle)!important;font-weight:400}.sessions-content h3,.session-view-content h3,.classrooms-content h3,.login-content h3,.signup-content h3,.home-content h3,.section-heading,.card-title,.modal-title{font-family:var(--font-heading)!important;font-weight:400!important}.sessions-content h4,.session-view-content h4,.classrooms-content h4,.login-content h4,.signup-content h4,.home-content h4,.subsection-heading,.card-subtitle{font-family:var(--font-subheading)!important;font-weight:400}.sessions-content p,.session-view-content p,.classrooms-content p,.login-content p,.signup-content p,.home-content p,.session-description,.classroom-description,.card-description,.modal-content p,.form-label,.input-label{font-family:var(--font-body)!important;font-weight:400}.sessions-content button,.session-view-content button,.classrooms-content button,.login-content button,.signup-content button,.home-content button,.create-session-btn,.create-classroom-btn,.login-submit-btn,.signup-submit-btn,.nav-button{font-family:var(--font-body)!important;font-weight:600}.sessions-content input,.session-view-content input,.classrooms-content input,.login-content input,.signup-content input,.home-content input,.form-input,.search-input,.login-input,.signup-input,.code-block,.terminal-output,.data-log,.robot-data,.page-nav,.breadcrumb,.menu-item{font-family:var(--font-body)!important;font-weight:400}.status-badge,.progress-label,.completion-status{font-family:var(--font-body)!important;font-weight:600}.data-table,.session-list,.classroom-list{font-family:var(--font-body)!important;font-weight:400}.modal-header h2,.popup-title{font-family:var(--font-heading)!important;font-weight:500}.modal-body,.popup-content{font-family:var(--font-body)!important;font-weight:400}.form-group label,.field-label{font-family:var(--font-subtitle)!important;font-weight:600}.form-group input,.form-group textarea,.form-group select{font-family:var(--font-body)!important;font-weight:400}.error-message,.success-message,.warning-message{font-family:var(--font-body)!important;font-weight:600}.tooltip,.help-text,.instruction-text{font-family:var(--font-subtitle)!important;font-weight:400}.calendar-header,.date-picker,.time-display{font-family:var(--font-body)!important;font-weight:400}.progress-bar,.progress-text,.completion-percentage,.robot-name,.device-id,.connection-status{font-family:var(--font-body)!important;font-weight:600}.session-card-title,.classroom-card-title{font-family:var(--font-heading)!important;font-weight:700}.session-card-subtitle,.classroom-card-subtitle{font-family:var(--font-subtitle)!important;font-weight:400}.session-card-description,.classroom-card-description{font-family:var(--font-body)!important;font-weight:400}
