@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200%0}to{background-position:200%0}}@keyframes pulse-notification{0%,to{box-shadow:0 0 0 0 rgba(239,68,68,.7);transform:scale(1)}50%{box-shadow:0 0 0 10px transparent;transform:scale(1.05)}}@keyframes rotatePhone{0%,to{transform:rotate(0deg)}25%,50%,75%{transform:rotate(-90deg)}}#loading-screen,#splash-screen{display:none!important}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{height:100%}.container,body,html{transform:none!important}body,html{width:100%;margin:0;padding:0;overflow:hidden;overscroll-behavior:none}body{height:100svh;min-height:100%;font-family:Arial,sans-serif;background:radial-gradient(ellipse at center,#1a1a1a 0,#0c0c0c 100%);display:flex;justify-content:center;align-items:center;flex-direction:column}.container{transition:opacity .3s ease-in,transform .3s ease-out}#back-to-index-button,.container,.menu-button{visibility:hidden;opacity:0}.container{width:100%;max-width:1000px;margin:20px auto;padding:10px;background:#111;border-radius:15px;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;border:1px solid rgba(0,168,255,.2);box-shadow:0 0 15px 4px rgba(0,168,255,.25),0 8px 25px rgba(0,0,0,.5);height:100svh;padding-top:env(safe-area-inset-top,20px);padding-bottom:env(safe-area-inset-bottom,20px)}.panel-title{font-size:22px;font-weight:700;background:0 0;color:#00d4ff;text-shadow:0 0 8px rgba(0,212,255,.7);padding:12px 10px;margin-bottom:10px;border-radius:8px;flex-shrink:0;text-align:center;border-bottom:2px solid rgba(0,168,255,.3);position:relative}.panel{flex:1;display:grid;gap:5px;overflow-y:auto;min-height:0;padding:5px;grid-template-columns:1fr 1fr 1fr 1fr 1fr;grid-template-rows:repeat(4,1fr)}.menu-button,.status{background:#0d1b2a;border:1px solid #00a8ff;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.status{padding:5px;font-size:13px;font-weight:700;text-align:center;color:#e0fbfc;transition:transform .25s ease-out,background-color .3s ease,box-shadow .25s ease-out,border-color .25s ease;overflow:hidden;word-break:break-word;box-shadow:0 3px 6px rgba(0,0,0,.5),inset 0 0 5px rgba(0,168,255,.2);min-height:50px;min-width:0;text-shadow:0 0 3px rgba(224,251,252,.5)}.status span,body{color:#fff}.status:hover{background:#1b2f4a;border-color:#50c8ff;transform:scale(1.05);box-shadow:0 0 12px rgba(0,168,255,.5),inset 0 0 8px rgba(0,168,255,.3)}.status.empty,.status.empty:hover{background:rgba(10,20,30,.5);border-color:rgba(255,255,255,.08)}.status.empty{cursor:default}.status.empty:hover{transform:none;box-shadow:none}.menu-button{position:fixed;top:15px;color:#00d4ff;padding:10px;font-size:20px;z-index:1002;box-shadow:0 0 8px rgba(0,168,255,.4),0 3px 8px rgba(0,0,0,.3);width:44px;height:44px;transition:all .3s ease}.menu-button:hover{background:#1b2f4a;box-shadow:0 0 12px rgba(0,168,255,.6),0 3px 8px rgba(0,0,0,.3)}.menu-button-left{left:15px}.menu-button-right{right:15px}.menu{position:fixed;background:rgba(18,21,25,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow-x:auto;overflow-y:hidden;transition:transform .35s cubic-bezier(.25,.8,.25,1);box-shadow:0 0 15px rgba(0,0,0,.5);z-index:1001;display:flex;flex-direction:column}.menu-left,.menu-right{width:auto;max-width:90vw;top:15px}.menu-left{left:0;transform:translateX(-100%);height:calc(100svh - 30px);border-radius:0 12px 12px 0}.menu-left.open,.menu-right.open{transform:translateX(0)}.menu-right{right:0;transform:translateX(100%);border-radius:12px;max-height:calc(100svh - 30px)}.menu-content-wrapper{display:flex;flex-direction:row;flex-grow:1;min-height:0;height:100%;padding:10px 5px 20px}.didactic-column,.train-column{flex:0 0 250px;display:flex;flex-direction:column;margin:0 5px;height:100%}.didactic-header,.train-header{font-size:18px;font-weight:700;color:#e0fbfc;padding:12px;margin-bottom:10px;border-radius:8px;text-align:center;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:8px;background:#2a2f36;border:1px solid rgba(255,255,255,.1);text-shadow:0 0 3px rgba(224,251,252,.5)}.menu-content{overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;padding-right:5px}.menu-content::-webkit-scrollbar{width:5px}.menu-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);border-radius:10px}#back-to-index-button,.status-menu{border:1px solid #00a8ff;cursor:pointer;font-size:16px;font-weight:700}.status-menu{margin:10px 0;padding:18px;border-radius:8px;color:#e0fbfc;transition:transform .25s ease-out,background-color .3s ease,box-shadow .25s ease-out,border-color .25s ease;text-align:center;background:#0d1b2a;box-shadow:0 3px 6px rgba(0,0,0,.5),inset 0 0 5px rgba(0,168,255,.2);text-shadow:0 0 3px rgba(224,251,252,.5)}.status-menu:hover{background:#1b2f4a;border-color:#50c8ff;transform:scale(1.03);box-shadow:0 0 12px rgba(0,168,255,.5),inset 0 0 8px rgba(0,168,255,.3)}.didactic-item{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:16px;background:#2a2f36;border:1px solid rgba(255,255,255,.1)}.didactic-item:hover{background:#3b424d;border-color:rgba(255,255,255,.2)}.item-icon{font-size:20px}.coming-soon{opacity:.6}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.8);z-index:10000;justify-content:center;align-items:center;opacity:0;transition:opacity .3s ease}.modal.show,.train-card-modern:hover::after{opacity:1}.modal-content{background:#333;padding:30px;border-radius:15px;text-align:center;max-width:400px;width:90%}.modal.show .modal-content{transform:scale(1)}.modal-icon{font-size:60px;margin-bottom:20px}.modal h2{color:#ff9800;margin-bottom:15px}.modal p{color:#ccc;margin-bottom:25px}.modal-button{background:#ff9800;color:#fff;border:0;padding:12px 30px;border-radius:8px;cursor:pointer}#back-to-index-button{position:fixed;bottom:20px;right:20px;background-color:#0d1b2a;color:#00d4ff;padding:12px 20px;border-radius:10px;z-index:1000;box-shadow:0 0 12px rgba(0,168,255,.5);transition:all .2s ease-out}#back-to-index-button:hover{background-color:#1b2f4a;transform:translateY(-2px);box-shadow:0 0 18px rgba(0,168,255,.7)}.update-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);z-index:10000;justify-content:center;align-items:center}.update-modal-content{background:#2a2a2a;color:#f1f1f1;padding:30px;border-radius:12px;text-align:center;max-width:450px;animation:fadeInScale .3s ease-out}.update-modal-title{font-size:28px;font-weight:700;color:#ff3b3b;margin-bottom:15px}.update-modal-text{font-size:16px;line-height:1.5;margin-bottom:25px}.button-group{display:flex;justify-content:center;gap:15px}.update-button{font-size:16px;font-weight:700;padding:12px 25px;border-radius:8px;cursor:pointer;border:0}.update-button-primary{background:linear-gradient(to bottom,#ff3b3b,#d90000);color:#fff}.update-button-secondary{background:#555;color:#f1f1f1}@media (max-width:600px){.container{width:calc(100% - 20px);padding:8px;height:calc(100svh - 85px);margin:70px 10px 0}.panel{gap:4px;grid-template-columns:1fr 1fr 1fr;grid-template-rows:repeat(7,1fr);padding:4px}.status{font-size:10px;padding:3px}.panel-title{font-size:18px;padding:10px 8px;margin-bottom:8px}.menu-button{font-size:18px;padding:8px;width:40px;height:40px;top:10px}.menu-button-left{left:10px}.menu-button-right{right:10px}.menu-left,.menu-right{max-width:95vw;top:10px}.menu-left{height:calc(100svh - 20px)}.didactic-column,.train-column{flex:0 0 230px}.didactic-header,.train-header{font-size:16px}.status-menu{font-size:15px;padding:15px}.didactic-item{padding:14px;gap:10px}.item-icon{font-size:18px}#back-to-index-button{font-size:14px;padding:10px 15px;bottom:15px;right:15px}.update-modal-content{padding:20px}.update-modal-title{font-size:22px}.update-modal-text{font-size:14px}.update-button{font-size:14px;padding:10px 20px}}:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-card:rgba(30, 41, 59, 0.6);--accent-primary:#06b6d4;--accent-glow:rgba(6, 182, 212, 0.4);--accent-soft:rgba(6, 182, 212, 0.15);--text-primary:#f1f5f9;--text-secondary:#94a3b8;--border-subtle:rgba(255, 255, 255, 0.08);--border-accent:rgba(6, 182, 212, 0.4)}.modern-header{background:rgba(10,20,38,.85)!important;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,255,255,.08)!important;box-shadow:0 4px 30px rgba(0,0,0,.25)}.section-card{background:var(--bg-card)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle)!important;border-radius:20px!important;box-shadow:0 4px 6px -1px rgba(0,0,0,.2),0 0 0 1px rgba(255,255,255,.03) inset;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.section-card::before,.train-card-modern::before{content:"";position:absolute;top:0;left:0;right:0;height:1px}.section-card::before{background:linear-gradient(90deg,transparent 0,rgba(255,255,255,.15) 50%,transparent 100%);z-index:1}.section-card:hover{transform:translateY(-6px);box-shadow:0 25px 50px -12px rgba(0,0,0,.5),0 0 40px rgba(6,182,212,.12);border-color:var(--border-accent)!important}.section-title{background:linear-gradient(135deg,#22d3ee 0,#06b6d4 50%,#0891b2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.train-card-modern{position:relative;overflow:hidden;border-radius:16px!important;background:linear-gradient(145deg,#1e293b 0,#0f172a 100%)!important;transition:all .4s cubic-bezier(.4,0,.2,1)}.train-card-modern::before{background:linear-gradient(90deg,transparent 0,rgba(255,255,255,.25) 50%,transparent 100%);z-index:2}.train-card-modern::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0,rgba(6,182,212,.1) 100%);opacity:0;transition:opacity .4s ease;z-index:1}.train-card-modern:hover{transform:translateY(-4px) scale(1.02);border-color:var(--border-accent)!important;box-shadow:0 0 35px rgba(6,182,212,.25)}.action-btn,.notification-fab-modern,.train-card-modern{border:1px solid rgba(255,255,255,.1)!important}.action-btn{background:rgba(30,41,59,.8)!important;border-radius:14px!important;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.action-btn::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(6,182,212,.1),transparent);transition:left .5s ease}.action-btn:hover{background:rgba(6,182,212,.15)!important;border-color:var(--border-accent)!important;box-shadow:0 0 25px rgba(6,182,212,.25);color:#22d3ee!important}.action-btn:hover::before{left:100%}.notification-fab-modern{background:rgba(30,41,59,.9)!important;backdrop-filter:blur(12px);box-shadow:0 8px 32px rgba(0,0,0,.4);transition:all .3s ease}.notification-fab-modern:hover{transform:scale(1.1);box-shadow:0 12px 40px rgba(6,182,212,.3);border-color:var(--border-accent)!important}.notification-pulse{animation:pulse-notification 1.5s ease-in-out infinite;background-color:#ef4444!important;border-color:#dc2626!important}.notification-pulse svg{color:#fff!important}.notification-panel-modern{background:rgba(30,41,59,.95)!important;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1)!important}.modern-scrollbar::-webkit-scrollbar{width:6px}.modern-scrollbar::-webkit-scrollbar-track{background:rgba(15,23,42,.5)}.modern-scrollbar::-webkit-scrollbar-thumb{background:rgba(6,182,212,.3);border-radius:3px}.modern-scrollbar::-webkit-scrollbar-thumb:hover{background:rgba(6,182,212,.5)}@media (max-width:640px){.section-card{border-radius:16px!important}.train-card-modern{border-radius:12px!important}.notification-fab-modern{width:48px!important;height:48px!important}}#rotate-overlay{display:none;position:fixed;inset:0;z-index:99999;background:#0f172a;color:#e2e8f0;flex-direction:column;align-items:center;justify-content:center;gap:20px;font-family:"Inter",Arial,sans-serif;text-align:center;padding:30px}#rotate-overlay .rotate-icon{font-size:64px;animation:rotatePhone 2s ease-in-out infinite}#rotate-overlay .rotate-title{font-size:1.3rem;font-weight:700;color:#22d3ee}#rotate-overlay .rotate-text{font-size:.95rem;color:#94a3b8;max-width:280px;line-height:1.5}@media (display-mode:standalone) and (orientation:portrait){#rotate-overlay{display:flex!important}}.firebase-img-container img{height:auto;width:100%;object-fit:cover}.train-card-modern .firebase-img-container img{height:112px}.modern-header .firebase-img-container img{height:40px;width:40px;object-fit:contain}