.sidebar{width:260px;height:100vh;position:fixed;left:0;top:0;background:#0a0e27cc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:100}.sidebar-header{padding:2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.logo-container{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.logo-icon{color:var(--accent)}.logo-container h2{font-size:1.5rem;font-weight:700;background:linear-gradient(to right,#fff,var(--text-muted));-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0}.role-badge{font-size:.75rem;color:var(--primary);text-transform:uppercase;letter-spacing:1px;font-weight:600}.sidebar-links{flex:1;padding:1.5rem 1rem;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto}.nav-link{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;border-radius:8px;color:var(--text-muted);text-decoration:none;font-weight:500;transition:all .2s}.nav-link:hover{background:#ffffff0d;color:#fff}.nav-link.active{background:linear-gradient(135deg,#667eea26,#764ba226);color:#fff;border-left:3px solid var(--primary)}.nav-link.active svg{color:var(--primary)}.sidebar-footer{padding:1.5rem;border-top:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:space-between}.user-info{display:flex;align-items:center;gap:.75rem;overflow:hidden}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.details{display:flex;flex-direction:column;overflow:hidden}.name{font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.logout-btn:hover{background:#ef44441a;color:var(--danger)}.chatbot-container{position:fixed;bottom:30px;right:30px;z-index:1000;font-family:Inter,sans-serif}.chat-toggle-btn{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;border:none;box-shadow:0 4px 15px #0000004d;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.chat-toggle-btn:hover{transform:scale(1.1)}.chat-window{position:absolute;bottom:80px;right:0;width:350px;height:500px;background:#121419f2;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.1);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 30px #00000080;transform-origin:bottom right;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275)}@keyframes popIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.chat-header{background:linear-gradient(135deg,#2563ebcc,#3b82f6cc);padding:15px 20px;display:flex;justify-content:space-between;align-items:center;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.chat-header h3{margin:0;font-size:1.1rem;display:flex;align-items:center;gap:8px}.chat-close-btn{background:none;border:none;color:#fff;cursor:pointer;opacity:.8;transition:opacity .2s}.chat-close-btn:hover{opacity:1}.chat-messages{flex:1;padding:15px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.chat-message{max-width:80%;padding:12px 16px;border-radius:12px;font-size:.95rem;line-height:1.4;word-wrap:break-word}.chat-message.user{align-self:flex-end;background:var(--primary);color:#fff;border-bottom-right-radius:4px}.chat-message.model{align-self:flex-start;background:#ffffff1a;color:#e2e8f0;border-bottom-left-radius:4px}.chat-message.system{align-self:center;background:none;color:var(--text-muted);font-size:.85rem;font-style:italic}.chat-input-container{padding:15px;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:10px;background:#0003}.chat-input{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:10px 15px;color:#fff;outline:none;transition:border-color .2s}.chat-input:focus{border-color:var(--primary)}.chat-send-btn{background:var(--primary);border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:background .2s}.chat-send-btn:hover{background:var(--accent)}.chat-send-btn:disabled{background:#ffffff1a;cursor:not-allowed;color:var(--text-muted)}.typing-indicator{display:flex;gap:4px;padding:4px 8px}.typing-dot{width:6px;height:6px;background:#cbd5e1;border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.login-wrapper{width:100%;max-width:450px;padding:2rem}.login-card{padding:3rem 2.5rem;text-align:center}.login-header{margin-bottom:2.5rem}.logo-circle{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid rgba(102,126,234,.4);color:var(--accent);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;box-shadow:0 0 20px #00d2ff1a}.login-header h1{font-size:2rem;margin-bottom:.5rem}.login-header p{color:var(--text-muted);font-size:.95rem}.login-form{text-align:left}.login-btn{width:100%;padding:.875rem;font-size:1.05rem;margin-top:1rem}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-footer{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:.85rem;color:var(--text-muted)}.login-footer p{margin-bottom:.5rem}.login-footer code{background:#0000004d;padding:.2rem .4rem;border-radius:4px;color:var(--primary);font-family:monospace}.page-header{margin-bottom:2rem}.page-header h1{font-size:2.25rem;margin-bottom:.5rem}.page-header p{color:var(--text-muted)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{padding:1.5rem;display:flex;align-items:center;gap:1.25rem;transition:transform .3s}.stat-card:hover{transform:translateY(-5px)}.stat-icon{width:54px;height:54px;border-radius:12px;display:flex;align-items:center;justify-content:center}.stat-info h3{font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.stat-info p{color:var(--text-muted);font-size:.875rem;font-weight:500}.dashboard-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem}.quick-actions,.recent-activity{padding:1.5rem}.quick-actions h3,.recent-activity h3{margin-bottom:1.5rem;font-size:1.25rem}.action-buttons{display:flex;gap:1rem}.activity-list{list-style:none}.activity-list li{padding:1rem 0;border-bottom:1px solid var(--border);color:var(--text-muted)}.activity-list li:last-child{border-bottom:none}.activity-list.advanced-status li{display:flex;align-items:center;gap:1rem;padding:1.25rem 0;border-bottom:1px solid rgba(255,255,255,.08);color:var(--text-muted);transition:all .3s ease;cursor:default}.activity-list.advanced-status li:hover{color:var(--text-main);transform:translate(6px)}.custom-check{display:flex;align-items:center;justify-content:center;background:#34d399;color:#fff;width:20px;height:20px;border-radius:4px;box-shadow:0 2px 8px #34d3994d;transition:all .3s ease}.activity-list.advanced-status li:hover .custom-check{box-shadow:0 4px 12px #34d39980;transform:scale(1.1)}:root{--bg-dark: #0a0e27;--bg-panel: rgba(20, 25, 55, .6);--bg-card: rgba(30, 35, 70, .7);--primary: #667eea;--secondary: #764ba2;--accent: #00d2ff;--text-main: #f8fafc;--text-muted: #94a3b8;--border: rgba(255, 255, 255, .1);--danger: #ef4444;--success: #10b981;--warning: #f59e0b}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background-color:#0b0f19;color:var(--text-main);min-height:100vh;position:relative;z-index:0;overflow-x:hidden;background-image:radial-gradient(circle at 50% 0%,#172136 0%,transparent 80%)}body:before{content:"";position:fixed;bottom:8%;left:0;width:100%;height:10px;z-index:-2;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 10"><rect x="0" y="2" width="100" height="2" fill="%23475569" opacity="0.6"/><rect x="10" y="0" width="5" height="6" fill="%23475569" opacity="0.6"/><rect x="40" y="0" width="5" height="6" fill="%23475569" opacity="0.6"/><rect x="70" y="0" width="5" height="6" fill="%23475569" opacity="0.6"/></svg>');background-size:100px 10px;background-repeat:repeat-x;animation:trackMove 1s linear infinite}body:after{content:"";position:fixed;bottom:calc(8% + 2px);left:0;width:1000px;height:125px;z-index:-1;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 100"><rect x="10" y="15" width="380" height="65" rx="5" fill="%232563eb" opacity="0.8"/><rect x="30" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="45" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 35,50 C 35,42 55,42 55,50 Z" fill="%231e293b" opacity="0.7"/><rect x="80" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="95" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 85,50 C 85,42 105,42 105,50 Z" fill="%231e293b" opacity="0.7"/><rect x="130" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="145" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 135,50 C 135,42 155,42 155,50 Z" fill="%231e293b" opacity="0.7"/><rect x="180" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="195" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 185,50 C 185,42 205,42 205,50 Z" fill="%231e293b" opacity="0.7"/><rect x="230" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="245" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 235,50 C 235,42 255,42 255,50 Z" fill="%231e293b" opacity="0.7"/><rect x="280" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="295" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 285,50 C 285,42 305,42 305,50 Z" fill="%231e293b" opacity="0.7"/><rect x="330" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="345" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 335,50 C 335,42 355,42 355,50 Z" fill="%231e293b" opacity="0.7"/><circle cx="60" cy="85" r="8" fill="%230f172a" opacity="0.9"/><circle cx="90" cy="85" r="8" fill="%230f172a" opacity="0.9"/><circle cx="310" cy="85" r="8" fill="%230f172a" opacity="0.9"/><circle cx="340" cy="85" r="8" fill="%230f172a" opacity="0.9"/><rect x="390" y="65" width="20" height="5" fill="%23475569" opacity="0.9"/><path d="M 410,80 L 790,80 C 795,80 800,75 800,70 L 800,40 C 800,20 770,15 750,15 L 410,15 Z" fill="%232563eb" opacity="0.8"/><rect x="440" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="455" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 445,50 C 445,42 465,42 465,50 Z" fill="%231e293b" opacity="0.7"/><rect x="490" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="505" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 495,50 C 495,42 515,42 515,50 Z" fill="%231e293b" opacity="0.7"/><rect x="540" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="555" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 545,50 C 545,42 565,42 565,50 Z" fill="%231e293b" opacity="0.7"/><rect x="590" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="605" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 595,50 C 595,42 615,42 615,50 Z" fill="%231e293b" opacity="0.7"/><rect x="640" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="655" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 645,50 C 645,42 665,42 665,50 Z" fill="%231e293b" opacity="0.7"/><rect x="690" y="30" width="30" height="20" rx="5" fill="%2393c5fd" opacity="0.9"/><circle cx="705" cy="38" r="4" fill="%231e293b" opacity="0.7"/><path d="M 695,50 C 695,42 715,42 715,50 Z" fill="%231e293b" opacity="0.7"/><path d="M 740,30 L 770,30 C 785,30 790,35 795,45 L 750,45 Z" fill="%2393c5fd" opacity="0.9"/><circle cx="765" cy="36" r="3" fill="%231e293b" opacity="0.7"/><path d="M 760,45 C 760,40 770,40 770,45 Z" fill="%231e293b" opacity="0.7"/><circle cx="460" cy="85" r="8" fill="%230f172a" opacity="0.9"/><circle cx="490" cy="85" r="8" fill="%230f172a" opacity="0.9"/><circle cx="610" cy="85" r="8" fill="%230f172a" opacity="0.9"/><circle cx="640" cy="85" r="8" fill="%230f172a" opacity="0.9"/><circle cx="750" cy="85" r="8" fill="%230f172a" opacity="0.9"/></svg>');background-size:contain;background-repeat:no-repeat;animation:physicalTrainPass 22s linear infinite,trainBounce .3s linear infinite;opacity:.85}@keyframes trackMove{0%{background-position:0 0}to{background-position:-100px 0}}@keyframes physicalTrainPass{0%{transform:translate(-1000px)}to{transform:translate(100vw)}}@keyframes trainBounce{0%,to{margin-bottom:0}50%{margin-bottom:2px}}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif}.app-container{display:flex;min-height:100vh}.main-content{flex:1;padding:2rem;margin-left:260px;transition:all .3s ease}.main-content.full-width{margin-left:0;padding:0;display:flex;justify-content:center;align-items:center}.glass-panel{background:var(--bg-panel);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 30px #0000001a}.text-gradient{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-family:Inter,sans-serif}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.btn-danger{background:#ef44441a;color:var(--danger);border:1px solid var(--danger);padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s}.btn-danger:hover{background:var(--danger);color:#fff}.btn-clear-advanced{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--text-main);border:1px solid rgba(255,255,255,.2);padding:.6rem 1.2rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.25,.8,.25,1);font-family:Inter,sans-serif;position:relative;overflow:hidden;box-shadow:0 4px 15px #0000001a;display:flex;align-items:center;gap:.5rem}.btn-clear-advanced:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:all .4s ease}.btn-clear-advanced:hover{background:#ffffff1a;border-color:#fff6;transform:translateY(-2px);box-shadow:0 6px 20px #0003,0 0 10px #ffffff1a}.btn-clear-advanced:hover:before{left:100%}.btn-clear-advanced:active{transform:translateY(0)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-muted)}.form-control{width:100%;padding:.75rem 1rem;background:#0003;border:1px solid var(--border);border-radius:8px;color:#fff;font-family:Inter,sans-serif;transition:border-color .3s}.form-control:focus{outline:none;border-color:var(--primary);background:#0000004d}.table-container{overflow-x:auto}table{width:100%;border-collapse:separate;border-spacing:0 8px}th{text-align:left;padding:1rem;color:var(--text-muted);font-weight:500;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}td{padding:1rem;background:var(--bg-card)}tr td:first-child{border-top-left-radius:8px;border-bottom-left-radius:8px}tr td:last-child{border-top-right-radius:8px;border-bottom-right-radius:8px}tr:hover td{background:#282d50cc}.badge{padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.badge.confirmed{background:#10b98133;color:var(--success)}.badge.cancelled{background:#ef444433;color:var(--danger)}.badge.waitlisted{background:#f59e0b33;color:var(--warning)}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh}.spinner{width:40px;height:40px;border:3px solid rgba(102,126,234,.3);border-radius:50%;border-top-color:var(--primary);animation:spin 1s ease-in-out infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s ease forwards}
