.auth-dialog .MuiDialog-container{padding:16px}.auth-dialog-paper{background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);width:100%;color:var(--text-primary);border:1px solid var(--border-color);margin:16px;transition:background .25s,color .25s,border-color .25s,box-shadow .25s;overflow:hidden;box-shadow:10px 10px 24px #0f172a1a;border-radius:24px!important;max-width:430px!important}.auth-dialog-content{background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);color:var(--text-primary);position:relative;padding:32px!important}.auth-close-button{z-index:2;transition:background .2s,color .2s,box-shadow .2s,transform .2s;top:12px;right:12px;width:36px!important;height:36px!important;color:var(--text-secondary)!important;border-radius:12px!important;position:absolute!important}.auth-close-button:hover{transform:translateY(-1px);box-shadow:3px 3px 7px #0f172a14;color:var(--primary-color)!important;background:var(--bg-primary)!important}.auth-header{text-align:center;padding:4px 20px 20px}.auth-logo{background:var(--bg-primary);width:58px;height:58px;color:var(--primary-color);border:1px solid var(--border-color);border-radius:17px;justify-content:center;align-items:center;margin:0 auto 14px;transition:background .25s,color .25s,box-shadow .25s;display:flex;box-shadow:inset 4px 4px 9px #0f172a14}.auth-logo svg{font-size:32px}.auth-header h2{color:var(--text-primary);margin:0;font-size:25px;font-weight:700;line-height:1.3;transition:color .25s}.auth-header p{color:var(--text-secondary);margin:7px 0 0;font-size:14px;line-height:1.5;transition:color .25s}.login-method-tabs{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:13px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:18px;padding:4px;transition:background .25s,border-color .25s;display:grid;box-shadow:inset 3px 3px 7px #0f172a12}.login-method-tabs button{height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:13px;font-weight:600;transition:background .2s,color .2s,box-shadow .2s,transform .2s}.login-method-tabs button:hover{color:var(--text-primary)}.login-method-tabs button.active{background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);color:var(--primary-color);box-shadow:3px 3px 7px #0f172a14}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-form .MuiTextField-root{width:100%}.auth-form .MuiInputBase-root{color:var(--text-primary);background:var(--input-bg);border:1px solid var(--border-color);border-radius:13px;transition:background .25s,color .25s,box-shadow .2s;box-shadow:inset 3px 3px 7px #0f172a0f}.auth-form .MuiInputBase-input{color:var(--text-primary);font-size:14px}.auth-form .MuiInputBase-input::placeholder{color:var(--text-muted);opacity:1}.auth-form .MuiInputLabel-root{color:var(--text-secondary);font-size:14px}.auth-form .MuiInputLabel-root.Mui-focused{color:var(--primary-color)}.auth-form .MuiOutlinedInput-notchedOutline{border-color:var(--input-border)}.auth-form .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--text-secondary)}.auth-form .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color)}.auth-form .MuiOutlinedInput-root.Mui-focused{box-shadow:inset 2px 2px 5px #0f172a0f,0 0 0 2px #2563eb14}.auth-form .MuiFormHelperText-root{margin-top:4px;margin-left:4px;font-size:11px;line-height:1.3}.otp-info{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:11px;padding:10px 12px;font-size:12px;line-height:1.5;transition:background .25s,color .25s,box-shadow .25s;box-shadow:inset 3px 3px 6px #0f172a0f}.forgot-password{justify-content:flex-end;margin-top:-5px;display:flex}.forgot-password button{color:var(--primary-color);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600;transition:color .2s}.forgot-password button:hover{color:var(--primary-hover);text-decoration:underline}.password-requirements{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-muted);border-radius:10px;flex-wrap:wrap;align-items:center;gap:5px 12px;margin-top:-8px;padding:7px 9px;font-size:11px;line-height:1.3;transition:background .25s,color .25s;display:flex;box-shadow:inset 2px 2px 5px #0f172a0d}.password-requirements span{white-space:nowrap;transition:color .2s}.password-requirements span.valid{color:#16a34a}.auth-submit-button{border:1px solid color-mix(in srgb, var(--primary-color) 70%, transparent);background:linear-gradient(135deg, var(--primary-color) 0%, color-mix(in srgb, var(--primary-color) 82%, #fff) 100%);color:#fff;cursor:pointer;border-radius:13px;width:100%;min-height:46px;margin-top:2px;font-size:15px;font-weight:700;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:5px 5px 10px #0f172a1a}.auth-submit-button:hover{background:linear-gradient(135deg, var(--primary-hover) 0%, color-mix(in srgb, var(--primary-hover) 82%, #fff) 100%);transform:translateY(-1px);box-shadow:6px 6px 12px #0f172a1f}.auth-submit-button:active{transform:translateY(1px);box-shadow:inset 3px 3px 7px #0f172a1f}.auth-switch{color:var(--text-secondary);justify-content:center;align-items:center;gap:5px;margin-top:22px;font-size:13px;display:flex}.auth-switch button{color:var(--primary-color);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:700;transition:color .2s}.auth-switch button:hover{color:var(--primary-hover);text-decoration:underline}@media (width<=600px){.auth-dialog .MuiDialog-container{padding:8px}.auth-dialog-paper{margin:4px;border-radius:21px!important;max-width:100%!important}.auth-dialog-content{padding:24px 20px!important}.auth-header{padding:2px 15px 16px}.auth-logo{width:52px;height:52px;margin-bottom:10px}.auth-logo svg{font-size:28px}.auth-header h2{font-size:22px}.auth-header p{margin-top:5px;font-size:13px}.login-method-tabs{margin-bottom:14px}.auth-form{gap:12px}.auth-submit-button{min-height:44px}.auth-switch{margin-top:15px}}@media (width<=480px){.auth-dialog .MuiDialog-container{padding:4px}.auth-dialog-paper{margin:2px;border-radius:19px!important}.auth-dialog-content{padding:20px 16px 18px!important}.auth-header{padding:0 8px 13px}.auth-logo{border-radius:14px;width:46px;height:46px;margin-bottom:8px}.auth-logo svg{font-size:25px}.auth-header h2{font-size:20px;line-height:1.25}.auth-header p{margin-top:4px;font-size:12px;line-height:1.35}.login-method-tabs{border-radius:10px;margin-bottom:12px;padding:3px}.login-method-tabs button{height:34px;font-size:12px}.auth-form{gap:10px}.auth-form .MuiInputBase-root{border-radius:11px;min-height:46px}.auth-form .MuiInputBase-input{padding-top:11px;padding-bottom:11px;font-size:13px}.auth-form .MuiInputLabel-root{font-size:13px}.auth-form .MuiFormHelperText-root{margin-top:2px;margin-left:3px;font-size:10px;line-height:1.2}.password-requirements{gap:3px 9px;margin-top:-3px;padding:6px 8px;font-size:10px;line-height:1.2}.password-requirements span{white-space:nowrap}.auth-submit-button{border-radius:11px;min-height:43px;margin-top:1px;font-size:14px}.auth-switch{margin-top:12px;font-size:12px}.auth-switch button{font-size:12px}.forgot-password{margin-top:-2px}.forgot-password button{font-size:12px}.otp-info{padding:8px 10px;font-size:11px;line-height:1.4}}@media (width<=360px){.auth-dialog-content{padding:17px 13px 15px!important}.auth-header{padding-bottom:10px}.auth-logo{width:42px;height:42px;margin-bottom:7px}.auth-logo svg{font-size:23px}.auth-header h2{font-size:18px}.auth-header p{font-size:11px}.auth-form{gap:8px}.auth-form .MuiInputBase-root{min-height:43px}.password-requirements{gap:3px 7px;padding:5px 7px;font-size:9px}.auth-submit-button{min-height:41px;font-size:13px}.auth-switch{margin-top:9px;font-size:11px}.auth-switch button{font-size:11px}}.password-field-wrapper{width:100%;position:relative}.password-field-wrapper .MuiInputBase-input{padding-right:52px!important}.password-eye-button{transition:background .2s,box-shadow .2s;cursor:pointer!important;z-index:9999!important;opacity:1!important;visibility:visible!important;appearance:none!important;width:40px!important;height:40px!important;color:var(--text-secondary)!important;background:0 0!important;border:0!important;border-radius:10px!important;outline:none!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;display:flex!important;position:absolute!important;top:50%!important;right:5px!important;transform:translateY(-50%)!important}.password-eye-icon{border:1.8px solid var(--text-secondary);box-sizing:border-box;border-radius:70% 30%;width:20px;height:14px;transition:border-color .15s;display:block;position:relative;transform:rotate(45deg)}.password-eye-pupil{background:var(--text-secondary);border-radius:50%;width:6px;height:6px;transition:background .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.password-eye-slash{background:var(--text-secondary);opacity:0;border-radius:2px;width:25px;height:1.8px;transition:opacity .15s,background .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.password-eye-button:not(.password-eye-visible) .password-eye-slash{opacity:0}.password-eye-visible .password-eye-slash{opacity:1}.password-eye-visible .password-eye-icon{border-color:var(--primary-color)}.password-eye-visible .password-eye-pupil,.password-eye-visible .password-eye-slash{background:var(--primary-color)}.password-eye-button:hover{box-shadow:inset 2px 2px 5px #0f172a0f;background:var(--bg-primary)!important;border-radius:9px!important}.password-eye-button:hover .password-eye-icon{border-color:var(--primary-color)}.password-eye-button:hover .password-eye-pupil,.password-eye-button:hover .password-eye-slash{background:var(--primary-color)}.password-eye-button:focus-visible{border-radius:9px!important;box-shadow:0 0 0 2px #2563eb2e!important}@media (width<=600px){.password-field-wrapper .MuiInputBase-input{padding-right:48px!important}.password-eye-button{width:38px!important;height:38px!important;right:4px!important}.password-eye-icon{width:19px;height:13px}.password-eye-pupil{width:5.5px;height:5.5px}.password-eye-slash{width:24px}}@media (width<=480px){.password-field-wrapper .MuiInputBase-input{padding-right:46px!important}.password-eye-button{width:36px!important;height:36px!important;right:3px!important}.password-eye-icon{width:18px;height:12px}.password-eye-pupil{width:5px;height:5px}.password-eye-slash{width:22px}}@media (width<=360px){.password-field-wrapper .MuiInputBase-input{padding-right:43px!important}.password-eye-button{width:34px!important;height:34px!important;right:2px!important}.password-eye-icon{width:17px;height:11px}.password-eye-pupil{width:5px;height:5px}.password-eye-slash{width:21px}}.app-header{background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);width:100%;height:64px;color:var(--text-primary);border-bottom:1px solid var(--border-color);z-index:1000;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 20px;display:grid;position:sticky;top:0}.header-left{align-items:center;display:flex}.menu-button{border:1px solid var(--border-color);background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);width:40px;height:40px;color:var(--text-primary);cursor:pointer;border-radius:13px;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s;display:flex}.menu-button:hover{color:var(--primary-color);transform:translateY(-1px);box-shadow:5px 5px 10px #0f172a1a}.menu-button:active{transform:translateY(1px);box-shadow:inset 3px 3px 7px #0f172a14}.menu-button svg{font-size:23px}.header-mobile-logo,.header-mobile-logo:hover{color:inherit;text-decoration:none}.header-logo{align-items:center;gap:10px;display:flex}.header-logo-icon{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;overflow:hidden;box-shadow:inset 3px 3px 7px #0f172a12}.header-logo-image{object-fit:contain;width:100%;height:100%;display:block}.header-title{color:var(--text-primary);font-size:18px;font-weight:700}.header-nav{justify-content:center;align-items:center;gap:8px;height:100%;display:flex}.header-nav>button{height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 13px;font-family:inherit;font-size:14px;font-weight:500;transition:color .2s,background .2s}.header-nav>button:hover{color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 7%, transparent)}.header-product{align-items:center;height:100%;display:flex;position:relative}.header-product-button{height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:3px;padding:9px 13px;font-family:inherit;font-size:14px;font-weight:500;transition:color .2s,background .2s;display:flex}.header-product-button:hover,.header-product.is-open .header-product-button{color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 7%, transparent)}.header-product-button svg{width:18px;height:18px;transition:transform .2s}.header-product.is-open .header-product-button svg{transform:rotate(180deg)}.header-product-dropdown{opacity:0;visibility:hidden;pointer-events:none;z-index:2000;background:#123f85;border:1px solid #ffffff1f;border-radius:14px;flex-direction:column;gap:2px;width:380px;padding:12px;transition:opacity .18s,visibility .18s;display:flex;position:absolute;top:calc(100% - 1px);left:0;box-shadow:0 18px 45px #0f172a47,0 4px 12px #0f172a24}.header-product.is-open .header-product-dropdown{opacity:1;visibility:visible;pointer-events:auto}.product-menu-item{color:#fff;border-radius:9px;align-items:center;gap:12px;min-height:64px;padding:10px 12px;text-decoration:none;transition:background .18s;display:flex}.product-menu-item:hover{background:#ffffff17}.product-menu-item>svg{color:#ffffffd1;flex-shrink:0;width:20px;height:20px}.product-menu-item>div{flex-direction:column;gap:3px;min-width:0;display:flex}.product-menu-item strong{color:#fff;font-size:13px;font-weight:600;line-height:1.2}.product-menu-item span{color:#ffffff9e;font-size:11px;line-height:1.35}.header-right{justify-content:flex-end;justify-self:end;align-items:center;width:100%;display:flex}.profile-button{border:1px solid var(--border-color);background:var(--surface);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;border-radius:13px;justify-content:center;align-items:center;padding:0;transition:color .2s,border-color .2s,box-shadow .2s,transform .2s;display:flex}.profile-button:hover{color:var(--primary-color);transform:translateY(-1px);box-shadow:5px 5px 10px #0f172a17}.profile-button:active{transform:translateY(1px);box-shadow:inset 3px 3px 7px #0f172a14}.profile-button svg{font-size:24px}@media (width>=769px){.menu-button{display:none}}@media (width<=768px){.app-header{z-index:1000;justify-content:space-between;align-items:center;width:100%;height:58px;padding:0 12px;display:flex;position:sticky;top:0}.header-left{flex:0 0 36px;align-items:center;min-width:36px;display:flex}.menu-button{border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}.menu-button svg{font-size:22px}.header-mobile-logo{z-index:1;align-items:center;margin:0;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.header-logo{white-space:nowrap;align-items:center;gap:7px;display:flex}.header-logo-icon{border-radius:10px;width:32px;height:30px}.header-title{font-size:15px;font-weight:700}.header-nav{display:none}.header-right{z-index:2;flex:0 0 36px;justify-content:flex-end;align-items:center;width:auto;min-width:36px;margin-left:auto;display:flex;position:relative}.profile-button{border-radius:10px;width:36px;height:36px;padding:0}.profile-button svg{font-size:22px}}@media (width<=480px){.app-header{height:56px;padding:0 8px}.header-left,.header-right{flex-basis:34px;min-width:34px}.menu-button,.profile-button{width:34px;height:34px}.header-logo{gap:6px}.header-logo-icon{width:30px;height:28px}.header-title{font-size:14px}.menu-button svg,.profile-button svg{font-size:21px}}.header-title-wrapper{align-items:center;gap:7px;min-width:0;display:inline-flex}.beta-badge{letter-spacing:.6px;color:#fff;white-space:nowrap;background:#e69b28;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:2px 6px;font-size:9px;font-weight:700;line-height:1.4;display:inline-flex}.app-sidebar{background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);width:280px;height:100vh;color:var(--text-primary);border-right:1px solid var(--border-color);z-index:2000;flex-direction:column;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s;display:flex;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:10px 0 24px #0f172a1a}.app-sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{z-index:1900;background:#0f172a66;animation:.2s overlayFadeIn;position:fixed;inset:0}:root[data-theme=dark] .sidebar-overlay{background:#0009}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;height:64px;min-height:64px;padding:0 16px;display:flex;box-shadow:0 3px 8px #0f172a0a}.sidebar-title{color:var(--text-primary);font-size:14px;font-weight:700}.sidebar-close{border:1px solid var(--border-color);background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;font-size:26px;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s;display:flex;box-shadow:3px 3px 7px #0f172a12}.sidebar-close:hover{background:color-mix(in srgb, var(--primary-color) 8%, var(--surface));color:var(--primary-color);border-color:color-mix(in srgb, var(--primary-color) 35%, var(--border-color));transform:translateY(-1px);box-shadow:4px 4px 8px #0f172a17}.sidebar-close:active{transform:translateY(1px);box-shadow:inset 3px 3px 6px #0f172a14}.sidebar-nav{flex-direction:column;gap:7px;padding:16px 12px;display:flex}.sidebar-menu-group{width:100%}.sidebar-link{min-height:44px;color:var(--text-secondary);background:var(--bg-secondary,var(--surface));border:1px solid #0000;border-radius:13px;align-items:center;gap:12px;padding:0 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s;display:flex}.sidebar-link:hover{background:color-mix(in srgb, var(--primary-color) 8%, var(--surface));color:var(--primary-color);border-color:color-mix(in srgb, var(--primary-color) 20%, var(--border-color));transform:translateY(-1px);box-shadow:3px 3px 7px #0f172a12}.sidebar-link.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 5px 14px color-mix(in srgb, var(--primary-color) 30%, transparent);font-weight:600}.sidebar-menu-button{text-align:left;cursor:pointer;background:var(--bg-secondary,var(--surface));width:100%;font-family:inherit;font-size:14px;font-weight:500}.sidebar-menu-button:hover{background:color-mix(in srgb, var(--primary-color) 8%, var(--surface))}.sidebar-menu-button:has(+.sidebar-submenu-open){background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 4px 12px color-mix(in srgb, var(--primary-color) 28%, transparent)}.sidebar-menu-button:has(+.sidebar-submenu-open):hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.sidebar-menu-button:has(+.sidebar-submenu-open) .sidebar-menu-arrow{color:#fff}.sidebar-section-button{text-align:left;cursor:pointer;width:100%;font-family:inherit;font-size:14px;font-weight:500}.sidebar-icon{flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.sidebar-icon svg{font-size:20px}.sidebar-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar-menu-arrow{margin-left:auto;font-size:20px;transition:transform .2s}.sidebar-menu-arrow.open{transform:rotate(180deg)}.sidebar-submenu{opacity:0;flex-direction:column;gap:3px;max-height:0;margin-left:10px;transition:max-height .25s,opacity .2s,margin-top .25s;display:flex;overflow:hidden}.sidebar-submenu-open{opacity:1;max-height:500px;margin-top:4px}.sidebar-submenu-item{background:var(--bg-secondary,var(--surface));width:calc(100% - 10px);min-height:36px;color:var(--text-secondary);text-align:left;cursor:pointer;box-sizing:border-box;border:1px solid #0000;border-radius:10px;align-items:center;gap:9px;margin:0;padding:0 10px;font-family:inherit;font-size:11px;font-weight:500;text-decoration:none;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s;display:flex}.sidebar-submenu-item:hover{background:color-mix(in srgb, var(--primary-color) 8%, var(--surface));color:var(--primary-color);border-color:color-mix(in srgb, var(--primary-color) 20%, var(--border-color));transform:translate(2px);box-shadow:2px 3px 7px #0f172a0f}.sidebar-submenu-item.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 4px 12px color-mix(in srgb, var(--primary-color) 28%, transparent);font-weight:600;transform:translate(2px)}.sidebar-product-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.sidebar-product-icon svg{font-size:17px}.sidebar-product-content{flex-direction:column;justify-content:center;gap:0;min-width:0;line-height:1;display:flex}.sidebar-product-label{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:14px;overflow:hidden}.sidebar-product-description{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:8px;line-height:10px;overflow:hidden}.sidebar-submenu-item.active .sidebar-product-description{color:#fffc}.sidebar-footer{border-top:1px solid var(--border-color);color:var(--text-muted);margin-top:auto;padding:12px;font-size:11px}.sidebar-bottom{border-top:1px solid var(--border-color);margin-top:auto;padding:8px 12px 5px}.sidebar-bottom-link{background:var(--bg-secondary,var(--surface));width:100%;min-height:42px;color:var(--text-secondary);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:13px;align-items:center;gap:12px;margin-bottom:5px;padding:0 12px;font-family:inherit;font-size:14px;font-weight:500;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s;display:flex}.sidebar-bottom-link:hover{background:color-mix(in srgb, var(--primary-color) 8%, var(--surface));color:var(--primary-color);border-color:color-mix(in srgb, var(--primary-color) 20%, var(--border-color));transform:translateY(-1px);box-shadow:3px 3px 7px #0f172a12}.sidebar-bottom .sidebar-footer{height:8px;min-height:8px;color:var(--text-muted);border:0;justify-content:center;align-items:center;margin:0;padding:3px 0 0;font-size:9px;line-height:12px;display:flex}.sidebar-theme{border-top:1px solid var(--border-color);padding:14px 12px}.sidebar-theme-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px;font-size:11px;font-weight:600}.theme-switch{border:1px solid var(--border-color);background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);width:100%;height:42px;color:var(--text-secondary);cursor:pointer;border-radius:13px;align-items:center;gap:10px;padding:4px 10px 4px 5px;transition:background .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s;display:flex;box-shadow:4px 4px 8px #0f172a12}.theme-switch:hover{border-color:var(--primary-color);color:var(--text-primary);transform:translateY(-1px);box-shadow:5px 5px 10px #0f172a14}.theme-switch:active{transform:translateY(1px);box-shadow:inset 3px 3px 7px #0f172a14}.theme-switch-track{background:var(--bg-primary);width:32px;height:32px;color:var(--primary-color);border:1px solid var(--border-color);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:inset 3px 3px 6px #0f172a12}.theme-switch-icon{justify-content:center;align-items:center;display:flex}.theme-switch-icon svg{font-size:18px}.theme-switch.light .light-icon{display:flex}.theme-switch.light .dark-icon,.theme-switch.dark .light-icon{display:none}.theme-switch.dark .dark-icon{display:flex}.theme-switch-text{text-align:left;color:var(--text-primary);flex:1;font-size:13px;font-weight:600}:root[data-theme=dark] .app-sidebar{box-shadow:10px 0 26px #00000059}.app-sidebar::-webkit-scrollbar{width:6px}.app-sidebar::-webkit-scrollbar-track{background:0 0}.app-sidebar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.app-sidebar::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@media (width<=600px){.app-sidebar{width:280px}.sidebar-header{height:60px;min-height:60px}.sidebar-nav,.sidebar-theme{padding:12px 10px}}.app-footer{background:linear-gradient(180deg, color-mix(in srgb, var(--primary-color) 82%, #000), color-mix(in srgb, var(--primary-color) 76%, #000));color:#ffffffb8;border-top:1px solid #ffffff24;justify-content:space-between;align-items:center;min-height:54px;padding:0 24px;font-size:12px;font-weight:500;transition:background .25s,color .25s,border-color .25s,box-shadow .25s;display:flex;box-shadow:0 -8px 20px #00000029,inset 0 1px 1px #ffffff0d}.app-footer span{line-height:1.4}@media (width<=768px){.app-footer{min-height:48px;padding:0 14px;font-size:11px}}@media (width<=480px){.app-footer{justify-content:center;min-height:44px;padding:0 12px}.app-footer span:last-child{display:none}}.landing-page{--landing-bg:var(--primary-color);--landing-section-bg:radial-gradient(circle at 85% 20%, #ffffff14, transparent 35%), linear-gradient(180deg, color-mix(in srgb, var(--primary-color) 88%, #000), color-mix(in srgb, var(--primary-color) 82%, #000));--landing-card:radial-gradient(circle at 85% 20%, #ffffff14, transparent 35%), linear-gradient(180deg, #123f85 0%, #103a7a 100%);--landing-card-border:#ffffff24;--landing-card-shadow:0 14px 35px #0000002e, 0 5px 12px #0000001a;--landing-surface:color-mix(in srgb, var(--primary-color) 90%, #fff 10%);--landing-surface-2:color-mix(in srgb, var(--primary-color) 86%, #fff 14%);--landing-border:#ffffff24;--landing-text:#fff;--landing-muted:#ffffffc7;--landing-accent:var(--primary-color);--landing-accent-2:color-mix(in srgb, var(--primary-color) 75%, #fff);background:var(--landing-section-bg);color:var(--landing-text);min-height:100vh;overflow:hidden}.landing-header{z-index:20;padding:20px 0;position:absolute;top:0;left:0;right:0}.landing-header-inner{justify-content:space-between;align-items:center;display:flex}.landing-logo{color:#fff;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:19px;font-weight:800;display:inline-flex}.landing-logo-mark{background:#ffffff1a;border:1px solid #fff3;border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;display:flex;overflow:hidden}.landing-logo-image{object-fit:contain;width:100%;height:100%}.landing-nav-links{align-items:center;gap:30px;display:flex}.landing-nav-links a{color:#ffffffb8;font-size:13px;font-weight:600;text-decoration:none;transition:color .2s}.landing-nav-links a:hover{color:#fff}.landing-nav-button,.primary-button{color:var(--primary-color)!important;text-transform:none!important;box-shadow:none!important;background:#fff!important;border-radius:12px!important;font-weight:700!important}.primary-button{transition:transform .25s,box-shadow .25s!important}.primary-button:hover{transform:translateY(-2px);box-shadow:0 12px 30px #00000029!important}.landing-hero{background:var(--landing-section-bg);align-items:center;min-height:720px;padding:120px 0 90px;display:flex;position:relative}.hero-grid{opacity:.16;background:radial-gradient(circle at 85% 20%, #ffffff14, transparent 35%), linear-gradient(180deg, color-mix(in srgb, var(--primary-color) 88%, #000), color-mix(in srgb, var(--primary-color) 82%, #000));background-size:55px 55px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 90%);mask-image:linear-gradient(#000,#0000 90%)}.hero-container{z-index:2;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;position:relative;display:grid!important}.hero-copy{max-width:650px}.hero-chip{letter-spacing:.1em;color:#fff!important;background:#ffffff14!important;border:1px solid #ffffff2e!important;font-size:10px!important;font-weight:800!important}.hero-chip svg{font-size:15px!important}.hero-title{letter-spacing:-.055em;color:#fff!important;margin-top:25px!important;font-size:clamp(48px,6vw,78px)!important;font-weight:800!important;line-height:.98!important}.hero-title span{color:#ffffff94}.hero-description{max-width:570px;color:#ffffffb3!important;margin-top:28px!important;font-size:17px!important;line-height:1.7!important}.hero-actions{gap:12px;margin-top:32px;display:flex}.hero-actions .primary-button{min-height:48px;padding:0 22px!important}.secondary-button{color:#fff!important;text-transform:none!important;background:#ffffff0f!important;border:1px solid #fff3!important;border-radius:12px!important;min-height:48px!important;padding:0 22px!important}.hero-trust{align-items:center;gap:10px;margin-top:26px;display:flex}.hero-trust span{background:#fff;border-radius:50%;width:7px;height:7px;box-shadow:0 0 14px #fff9}.hero-trust p{color:#ffffff75!important;font-size:12px!important}.hero-visual{justify-content:center;align-items:center;min-height:430px;display:flex;position:relative}.orbit{border:1px solid #ffffff1f;border-radius:50%;animation:8s ease-in-out infinite orbit-float;position:absolute}.orbit-one{width:430px;height:430px}.orbit-two{width:330px;height:330px;animation-delay:-3s}.hero-train-card{z-index:2;border:1px solid var(--landing-card-border);background:var(--landing-card);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;width:min(470px,90%);padding:28px;animation:5s ease-in-out infinite hero-card-float;position:relative;box-shadow:0 35px 80px #00000040,0 12px 30px #00000024,inset 0 1px #ffffff1a}.hero-train-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.train-card-top,.train-card-bottom{color:#ffffff73;letter-spacing:.12em;justify-content:space-between;font-size:10px;font-weight:800;display:flex}.live-dot{color:#fff;align-items:center;gap:6px;display:inline-flex}.live-dot:before{content:"";background:#fff;border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite live-pulse;box-shadow:0 0 10px #fffc}.route-line{grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:55px 0;display:grid}.route-line strong{color:#fff;font-size:25px;font-weight:800;display:block}.route-line small{color:#ffffff73;margin-top:4px;font-size:10px;display:block}.route-destination{text-align:right}.route-track{justify-content:center;align-items:center;display:flex}.track-train{padding:0 8px;font-size:20px;animation:2.4s ease-in-out infinite train-move}.track-dot{border:2px solid #ffffffb3;border-radius:50%;width:7px;height:7px}.track-line{background:#fff3;width:45px;height:1px}.pnr-section,.analytics-section,.intelligence-section,.ecosystem-section,.features-section,.cta-section,.faq-section{background:var(--landing-section-bg);padding:120px 0}.section-heading{max-width:650px}.section-heading.centered{text-align:center;margin:0 auto 45px}.eyebrow{letter-spacing:.16em;color:#ffffff73!important;font-size:10px!important;font-weight:800!important}.section-heading h2{letter-spacing:-.04em;color:#fff!important;margin-top:12px!important;font-size:clamp(34px,4vw,54px)!important;font-weight:800!important;line-height:1.05!important}.section-heading>p:last-child{color:#fff9!important;margin-top:18px!important;line-height:1.7!important}.pnr-card{border:1px solid var(--landing-card-border);background:var(--landing-card);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:18px;grid-template-columns:1fr auto;gap:12px;padding:12px;display:grid;position:relative;box-shadow:0 16px 35px #0000002b,inset 0 1px #ffffff12}.pnr-card:before{content:"";background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.pnr-card .MuiTextField-root{margin:0}.pnr-card .MuiInputBase-root{color:#fff;background:color-mix(in srgb, var(--primary-color) 94%, #fff 6%);border-radius:12px;height:54px}.pnr-card .MuiOutlinedInput-notchedOutline{border-color:#ffffff1f}.pnr-card input::placeholder{color:#fff6;opacity:1}.pnr-button{border-radius:12px!important;min-width:145px!important}.pnr-result{border:1px solid var(--landing-card-border);background:var(--landing-card);border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;margin-top:18px;padding:18px 20px;display:grid;position:relative;box-shadow:0 12px 28px #00000024,inset 0 1px #ffffff0f}.pnr-result>svg{color:#fff}.pnr-result-title{color:#fff!important;font-weight:700!important}.pnr-result p{color:#ffffff80!important;margin-top:3px!important;font-size:13px!important}.pnr-result button{color:#fff!important;text-transform:none!important}.analytics-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px;display:flex}.analytics-preview-chip{letter-spacing:.08em;color:#fff9!important;background:#ffffff12!important;border:1px solid #ffffff29!important;font-size:10px!important;font-weight:800!important}.analytics-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.analytics-metric-card{border:1px solid var(--landing-card-border);background:var(--landing-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);min-height:180px;box-shadow:var(--landing-card-shadow);animation:.7s both analytics-card-enter;animation-delay:calc(var(--metric-index) * .1s);border-radius:20px;padding:24px;transition:transform .3s,border-color .3s,box-shadow .3s;position:relative;overflow:hidden}.analytics-metric-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.analytics-metric-card:after{content:"";filter:blur(10px);background:#ffffff12;border-radius:50%;width:130px;height:130px;transition:transform .5s;position:absolute;top:-70px;right:-55px}.analytics-metric-card:hover{border-color:#ffffff40;transform:translateY(-8px);box-shadow:0 24px 55px #00000038,0 8px 18px #0000001f,inset 0 1px #ffffff14}.analytics-metric-card:hover:after{transform:scale(1.5)}.analytics-metric-top{z-index:1;justify-content:space-between;align-items:center;margin-bottom:22px;display:flex;position:relative}.analytics-metric-icon{color:#fff;background:#ffffff14;border:1px solid #ffffff29;border-radius:13px;justify-content:center;align-items:center;width:42px;height:42px;animation:2.8s ease-in-out infinite analytics-icon-pulse;display:flex}.analytics-metric-icon svg{font-size:21px}.analytics-metric-index{color:#ffffff59;letter-spacing:.12em;font-size:11px;font-weight:800}.analytics-metric-value{z-index:1;letter-spacing:-.04em;animation:.8s both analytics-value-enter;animation-delay:calc(var(--metric-index) * .12s + .25s);position:relative;color:#fff!important;margin:0!important;font-size:clamp(30px,3vw,42px)!important;font-weight:800!important;line-height:1!important}.analytics-metric-label{z-index:1;position:relative;color:#ffffffe0!important;margin-top:9px!important;font-size:14px!important;font-weight:700!important}.analytics-metric-note{z-index:1;position:relative;color:#ffffff6b!important;margin-top:4px!important;font-size:11px!important}.analytics-metric-line{background:color-mix(in srgb, var(--primary-color) 92%, #fff 8%);border-radius:10px;height:2px;position:absolute;bottom:20px;left:24px;right:24px;overflow:hidden}.analytics-metric-line span{border-radius:inherit;width:35%;height:100%;animation:2.5s ease-in-out infinite analytics-line-flow;animation-delay:calc(var(--metric-index) * .18s);background:#ffffff8c;display:block}.analytics-dashboard{grid-template-columns:1.55fr .75fr;gap:16px;margin-top:16px;display:grid}.analytics-chart-card,.analytics-side-card{border:1px solid var(--landing-card-border);background:var(--landing-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:20px;position:relative;box-shadow:0 16px 35px #0000002b,inset 0 1px #ffffff12}.analytics-chart-card:before,.analytics-side-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.analytics-chart-card{padding:26px}.chart-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.panel-label{letter-spacing:.15em;color:#fff6!important;font-size:9px!important;font-weight:800!important}.chart-title{color:#fff!important;margin-top:7px!important;font-size:20px!important;font-weight:750!important}.chart-live{color:#ffffff6b;align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.chart-live span{background:#fff;border-radius:50%;width:6px;height:6px;animation:1.7s ease-in-out infinite live-pulse;box-shadow:0 0 12px #ffffffa6}.analytics-chart{grid-template-columns:35px 1fr;height:240px;margin-top:25px;display:grid}.chart-y-axis{color:#ffffff40;text-align:left;flex-direction:column;justify-content:space-between;padding:2px 0 5px;font-size:9px;display:flex}.chart-area{position:relative;overflow:hidden}.chart-grid{flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.chart-grid span{background:color-mix(in srgb, var(--primary-color) 92%, #fff 8%);width:100%;height:1px}.chart-bars{justify-content:space-between;align-items:flex-end;gap:7px;height:100%;padding:8px 4px 0;display:flex;position:absolute;bottom:0;left:0;right:0}.chart-bars span{width:100%;max-width:28px;height:var(--bar-height);transform-origin:bottom;min-height:5px;animation:1.2s cubic-bezier(.22,1,.36,1) both chart-bar-grow;animation-delay:calc(var(--bar-index) * 80ms);background:linear-gradient(#ffffffb8,#ffffff29);border-radius:8px 8px 3px 3px;transition:opacity .25s,transform .25s;position:relative}.chart-bars span:after{content:"";border-radius:inherit;height:35%;animation:2.8s ease-in-out infinite chart-shimmer;animation-delay:calc(var(--bar-index) * .13s);background:#ffffff1f;position:absolute;bottom:0;left:0;right:0}.chart-bars span:hover{opacity:.75;transform:scaleY(1.04)}.chart-axis{color:#ffffff47;justify-content:space-between;margin:8px 0 0 35px;padding:0 4px;font-size:9px;display:flex}.chart-caption{color:#ffffff57!important;margin-top:20px!important;font-size:10px!important;line-height:1.6!important}.analytics-side-card{padding:26px}.analytics-side-title{color:#fff!important;margin-top:8px!important;font-size:20px!important;font-weight:750!important}.signal-list{margin-top:22px}.signal-row{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:16px 0;display:flex}.signal-row:last-child{border-bottom:0}.signal-row>div{align-items:center;gap:11px;display:flex}.signal-row p{color:#ffffffb8!important;font-size:13px!important;font-weight:650!important}.signal-row>svg{color:#ffffff73;font-size:18px}.signal-step{color:#ffffff6b;border:1px solid #ffffff1f;border-radius:8px;justify-content:center;align-items:center;width:27px;height:27px;font-size:9px;font-weight:800;display:flex}.intelligence-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:50px;display:grid}.intelligence-card{border:1px solid var(--landing-card-border);background:var(--landing-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:20px;min-height:245px;padding:24px;transition:transform .3s,border-color .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 16px 35px #0000002b,inset 0 1px #ffffff12}.intelligence-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.intelligence-card:hover{border-color:#ffffff40;transform:translateY(-7px);box-shadow:0 24px 55px #00000038,0 8px 18px #0000001f,inset 0 1px #ffffff14}.intelligence-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.intelligence-number{color:#ffffff52;letter-spacing:.12em;font-size:11px;font-weight:800}.intelligence-card .MuiChip-root{color:#ffffff80;background:#ffffff0f;border:1px solid #ffffff1a;height:24px;font-size:9px}.intelligence-card h3{color:#fff!important;margin-top:42px!important;font-size:19px!important;font-weight:750!important;line-height:1.25!important}.intelligence-card p{color:#ffffff7a!important;margin-top:11px!important;font-size:13px!important;line-height:1.65!important}.intelligence-line{background:color-mix(in srgb, var(--primary-color) 92%, #fff 8%);height:1px;position:absolute;bottom:22px;left:24px;right:24px;overflow:hidden}.intelligence-line span{background:#ffffff7a;width:30%;height:100%;animation:3s ease-in-out infinite intelligence-line-flow;display:block}.ecosystem-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:50px;display:grid}.ecosystem-card{border:1px solid var(--landing-card-border);background:var(--landing-card);color:#fff;text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:20px;flex-direction:column;justify-content:space-between;min-height:250px;padding:24px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 35px #0000002b,inset 0 1px #ffffff12}.ecosystem-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.ecosystem-card:hover{border-color:#ffffff40;transform:translateY(-7px);box-shadow:0 24px 55px #00000038,0 8px 18px #0000001f,inset 0 1px #ffffff14}.ecosystem-card-top{justify-content:space-between;align-items:center;display:flex}.ecosystem-number{color:#ffffff4d;letter-spacing:.1em;font-size:10px;font-weight:800}.ecosystem-card .MuiChip-root{background:color-mix(in srgb, var(--primary-color) 93%, #fff 7%);color:#fff9;border:1px solid #ffffff1f;height:24px;font-size:9px}.ecosystem-card h3{color:#fff!important;margin-top:30px!important;font-size:20px!important;font-weight:750!important}.ecosystem-card p{color:#ffffff7a!important;margin-top:10px!important;font-size:13px!important;line-height:1.65!important}.card-arrow{background:color-mix(in srgb, var(--primary-color) 94%, #fff 6%);border:1px solid #ffffff1f;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;transition:transform .25s,background .25s;display:flex}.ecosystem-card:hover .card-arrow{background:color-mix(in srgb, var(--primary-color) 88%, #fff 12%);transform:translate(4px)}.card-arrow svg{font-size:17px}.ecosystem-card-coming-soon{cursor:pointer}.ecosystem-card-coming-soon:after{content:"";pointer-events:none;background:repeating-linear-gradient(-45deg,#0000,#0000 8px,#ffffff06 8px 9px);position:absolute;inset:0}.ecosystem-card-coming-soon:hover{border-color:#ffffff3d}.ecosystem-card-coming-soon .ecosystem-card-top,.ecosystem-card-coming-soon>div:not(.ecosystem-card-top){z-index:1;position:relative}.coming-soon-chip{opacity:.75}.ecosystem-card-coming-soon .MuiChip-root{background:#ffffff0a;border-color:#ffffff1a}.ecosystem-service-icon{background:color-mix(in srgb, var(--primary-color) 94%, #fff 6%);border:1px solid #ffffff1f;border-radius:11px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:15px;display:flex}.ecosystem-service-icon svg{color:#ffffffb3;font-size:20px}.ecosystem-card-coming-soon:hover .ecosystem-service-icon{transform:translateY(-2px)}.ecosystem-card-footer{align-items:center;gap:9px;display:flex}.ecosystem-card-footer>span{color:#ffffff6b;font-size:11px;font-weight:700}.ecosystem-card-coming-soon .card-arrow{color:#ffffff8c}.feature-layout{grid-template-columns:1fr .75fr;align-items:center;gap:100px;display:grid}.feature-description{max-width:560px;color:#ffffff8f!important;margin-top:22px!important;line-height:1.7!important}.feature-list{gap:15px;margin-top:30px;display:grid}.feature-item{align-items:center;gap:12px;display:flex}.feature-item svg{color:#ffffffbf;font-size:19px}.feature-item p{color:#ffffffb3!important;font-size:14px!important}.feature-panel{border:1px solid var(--landing-card-border);background:var(--landing-card);border-radius:24px;min-height:380px;padding:35px;position:relative;overflow:hidden;box-shadow:0 16px 35px #0000002b,inset 0 1px #ffffff12}.feature-panel:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.feature-panel-glow{filter:blur(40px);background:#ffffff1a;border-radius:50%;width:240px;height:240px;position:absolute;top:-100px;right:-100px}.feature-metric{z-index:1;align-items:center;gap:20px;margin-top:55px;display:flex;position:relative}.feature-metric strong{color:#ffffff40;font-size:12px}.feature-metric span{color:#fff;font-size:22px;font-weight:750}.panel-footer{position:absolute;bottom:30px;left:35px;right:35px;color:#ffffff61!important;font-size:11px!important}.cta-section{text-align:center}.cta-card{border:1px solid var(--landing-card-border);background:var(--landing-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:28px;padding:70px 40px;position:relative;box-shadow:0 22px 50px #0003,inset 0 1px #ffffff14}.cta-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff47,#0000);height:1px;position:absolute;top:0;left:10%;right:10%}.cta-card h2{letter-spacing:-.04em;color:#fff!important;margin-top:14px!important;font-size:clamp(35px,5vw,55px)!important;font-weight:800!important}.cta-card>p:not(.eyebrow){max-width:520px;color:#ffffff8a!important;margin:18px auto 28px!important;line-height:1.7!important}.faq-list{margin-top:45px}.faq-item{border:1px solid var(--landing-card-border);background:var(--landing-card);border-radius:14px;margin-bottom:10px;padding:0 20px;transition:border-color .25s,box-shadow .25s;position:relative;box-shadow:0 10px 25px #00000021,inset 0 1px #ffffff0f}.faq-item:hover{border-color:#ffffff38;box-shadow:0 16px 32px #0000002e,inset 0 1px #ffffff12}.faq-item summary{color:#fff;cursor:pointer;justify-content:space-between;align-items:center;padding:22px 0;font-size:15px;font-weight:650;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{color:#ffffff73;font-size:20px;transition:transform .25s}.faq-item[open] summary span{transform:rotate(45deg)}.faq-item>p{max-width:760px;padding:0 0 22px;color:#ffffff7a!important;font-size:13px!important;line-height:1.7!important}.landing-footer{background:var(--landing-section-bg);border-top:1px solid #ffffff1a;padding:70px 0 25px}.footer-top{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);align-items:start;gap:80px;display:grid}.footer-company{max-width:500px}.footer-logo{margin-bottom:16px}.footer-top p{color:#ffffff8c}.footer-description{max-width:430px;color:#ffffff8c!important;margin-top:15px!important;font-size:14px!important;line-height:1.7!important}.footer-subscribe{margin-top:28px}.footer-subscribe-title{color:#ffffffd1!important;margin-bottom:10px!important;font-size:13px!important;font-weight:700!important}.footer-subscribe-form{gap:10px;max-width:440px;display:flex}.footer-subscribe-form .MuiTextField-root{flex:1}.footer-subscribe-form .MuiInputBase-root{color:#fff;background:color-mix(in srgb, var(--primary-color) 93%, #fff 7%);border-radius:12px;height:46px}.footer-subscribe-form .MuiOutlinedInput-notchedOutline{border-color:#ffffff24}.footer-subscribe-form input::placeholder{color:#ffffff6b;opacity:1}.footer-subscribe-form .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:#ffffff40}.footer-subscribe-form .Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#ffffff59}.footer-subscribe-button{background:linear-gradient(135deg, var(--primary-color) 0%, color-mix(in srgb, var(--primary-color) 82%, #fff) 100%)!important;color:#fff!important;text-transform:none!important;border-radius:12px!important;min-width:115px!important;font-weight:700!important}.footer-subscribe-error,.footer-subscribe-success{margin-top:8px!important;font-size:12px!important}.footer-subscribe-error{color:#ff9b9b!important}.footer-subscribe-success{color:#70ff9d!important}.footer-navigation{grid-template-columns:repeat(3,1fr);gap:45px;padding-top:5px;display:grid}.footer-link-group{flex-direction:column;gap:13px;display:flex}.footer-link-title{letter-spacing:.02em;color:#ffffffe6!important;margin-bottom:5px!important;font-size:13px!important;font-weight:800!important}.footer-link-group button{color:#ffffff85;width:fit-content;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;transition:color .2s,transform .2s}.footer-link-group button:hover{color:#fff;transform:translate(2px)}.footer-bottom{color:#ffffff61;border-top:1px solid #ffffff14;justify-content:space-between;margin-top:60px;padding-top:22px;font-size:12px;display:flex}.notify-dialog .MuiDialog-paper{background:var(--primary-color);color:#fff;border:1px solid #ffffff1f;border-radius:20px}.notify-dialog .MuiDialogTitle-root{color:#fff;font-weight:750}.notify-dialog .MuiDialogContent-root{color:#fff9}.notify-description{color:#ffffff8f!important;line-height:1.6!important}.notify-dialog .MuiInputBase-root{color:#fff}.notify-dialog .MuiInputLabel-root{color:#ffffff80}.notify-dialog .MuiOutlinedInput-notchedOutline{border-color:#ffffff26}.notify-dialog .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:#ffffff47}.notify-dialog .Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#fff6}.notify-dialog .MuiFormHelperText-root{color:#ff9b9b}.notify-dialog .MuiDialogActions-root{padding:15px 24px 22px}.notify-dialog .MuiDialogActions-root>button:first-child{color:#ffffff8c;text-transform:none}.notify-success{text-align:center;flex-direction:column;align-items:center;display:flex;padding:45px 30px!important}.notify-success-icon{background:color-mix(in srgb, var(--primary-color) 92%, #fff 8%);border:1px solid #ffffff29;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;display:flex}.notify-success-icon svg{color:#fff;font-size:28px}.notify-success-title{color:#fff!important;margin-top:18px!important;font-size:22px!important;font-weight:750!important}.notify-success>p{color:#ffffff85!important;margin-top:10px!important;line-height:1.6!important}.notify-success .primary-button{margin-top:25px}@keyframes hero-card-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes orbit-float{0%,to{opacity:.7;transform:scale(1)rotate(0)}50%{opacity:1;transform:scale(1.04)rotate(8deg)}}@keyframes train-move{0%,to{transform:translate(-4px)}50%{transform:translate(4px)}}@keyframes live-pulse{0%,to{box-shadow:0 0 0 4px var(--surface), 0 0 0 7px color-mix(in srgb, var(--primary-color) 16%, transparent)}50%{box-shadow:0 0 0 4px var(--surface), 0 0 0 10px color-mix(in srgb, var(--primary-color) 7%, transparent)}}@keyframes analytics-card-enter{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes analytics-value-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes analytics-icon-pulse{0%,to{transform:translateY(0);box-shadow:0 0 #fff0}50%{transform:translateY(-3px);box-shadow:0 8px 25px #ffffff1a}}@keyframes analytics-line-flow{0%{transform:translate(-120%)}50%{transform:translate(180%)}to{transform:translate(180%)}}@keyframes chart-bar-grow{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes chart-shimmer{0%,to{opacity:0;transform:translateY(100%)}45%{opacity:1;transform:translateY(0)}70%{opacity:0;transform:translateY(-100%)}}@keyframes intelligence-line-flow{0%{transform:translate(-130%)}45%,to{transform:translate(350%)}}@media (width<=1100px){.hero-container{gap:40px}.hero-title{font-size:clamp(46px,6vw,68px)!important}.analytics-grid,.intelligence-grid,.ecosystem-grid{grid-template-columns:repeat(2,1fr)}.analytics-dashboard{grid-template-columns:1fr}.feature-layout{gap:60px}}@media (width<=900px){.hero-container{text-align:center;grid-template-columns:1fr}.hero-copy{max-width:720px;margin:0 auto}.hero-description{margin-left:auto!important;margin-right:auto!important}.hero-actions,.hero-trust{justify-content:center}.hero-visual{min-height:370px}.analytics-header{flex-direction:column;align-items:flex-start}.feature-layout{grid-template-columns:1fr}.feature-panel{min-height:320px}.footer-top{grid-template-columns:1fr;gap:45px}.footer-company{max-width:600px}.footer-navigation{max-width:600px;padding-top:0}}@media (width<=600px){.landing-hero{min-height:680px;padding:100px 0 70px}.hero-title{font-size:44px!important}.hero-description{font-size:15px!important}.hero-actions{flex-direction:column}.hero-actions .MuiButton-root{width:100%}.hero-visual{min-height:300px}.orbit-one{width:300px;height:300px}.orbit-two{width:240px;height:240px}.hero-train-card{padding:22px}.route-line{gap:10px;margin:40px 0}.route-line strong{font-size:20px}.track-line{width:25px}.pnr-section,.analytics-section,.intelligence-section,.ecosystem-section,.features-section,.cta-section,.faq-section{padding:80px 0}.section-heading h2{font-size:36px!important}.pnr-card{grid-template-columns:1fr}.pnr-button{width:100%;min-height:48px!important}.pnr-result{grid-template-columns:auto 1fr}.pnr-result button{grid-column:2;justify-self:start;padding-left:0}.analytics-grid{grid-template-columns:repeat(2,1fr);gap:12px}.analytics-metric-card{min-height:165px;padding:20px}.analytics-metric-value{font-size:32px!important}.analytics-metric-icon{width:38px;height:38px}.analytics-chart-card,.analytics-side-card{padding:20px}.analytics-chart{height:210px}.chart-bars{gap:4px}.chart-bars span{max-width:20px}.intelligence-grid,.ecosystem-grid{grid-template-columns:1fr;margin-top:35px}.intelligence-card,.ecosystem-card{min-height:220px}.feature-layout{gap:45px}.feature-panel{padding:28px}.footer-subscribe-form{flex-direction:column}.footer-subscribe-button{width:100%}.footer-navigation{grid-template-columns:repeat(3,1fr);gap:20px}.footer-link-group{gap:11px}.footer-link-group button{font-size:12px}.footer-bottom{flex-direction:column;gap:10px;margin-top:40px}}@media (width<=400px){.hero-title{font-size:38px!important}.analytics-grid{grid-template-columns:1fr}.footer-navigation{grid-template-columns:1fr;gap:28px}}@media (prefers-reduced-motion:reduce){.landing-page *,.landing-page :before,.landing-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.rs-track-list{width:100%;display:block}.rs-empty{text-align:center;color:var(--text-muted,#64748b);padding:24px 0;font-size:.8rem}.rs-card{border:1px solid var(--border-color,#d6dbe3);background:var(--surface,#fff);border-radius:14px;min-width:0;margin-bottom:12px;padding:10px 12px;box-shadow:5px 5px 10px #0f172a1f,inset 1px 1px 2px #0f172a0a}.rs-row.is-halt .rs-card,.rs-row.is-first .rs-card,.rs-row.is-last .rs-card{border:2px solid var(--primary-color,#1d4ed8);padding:9px 11px;box-shadow:5px 5px 10px #0f172a24,inset 3px 3px 6px #0f172a14}@media (width<=380px){.lr-row{grid-template-columns:24px minmax(0,1fr);column-gap:8px}.lr-name{font-size:.75rem}.lr-row.is-first .lr-name,.lr-row.is-last .lr-name{font-size:.82rem}}.train-card-wrap{width:100%;min-width:0;container:train-card/inline-size}.train-card{box-sizing:border-box;background:var(--input-bg);border:1px solid var(--border-color);width:100%;min-width:0;color:var(--text-primary);border-radius:24px;overflow:hidden;box-shadow:8px 8px 18px #0f172a14}.train-card *,.train-card :before,.train-card :after{box-sizing:border-box}.train-card-header{background:linear-gradient(135deg, var(--primary-color) 0%, color-mix(in srgb, var(--primary-color) 82%, #fff) 100%);border-bottom:none;padding:16px 18px}.train-title-row{align-items:center;gap:8px;min-width:0;display:flex}.train-number{background:var(--input-bg);color:var(--primary-color);border-radius:10px;flex-shrink:0;padding:5px 9px;font-size:.72rem;font-weight:750;box-shadow:inset 2px 2px 4px #0f172a0f}.train-title-row h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:1rem;font-weight:750;line-height:1.3;overflow:hidden}.train-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;display:flex}.train-type,.train-category,.booking-status,.reversal-status,.return-train{background:var(--input-bg);border:1px solid var(--border-color);border-radius:9px;align-items:center;min-height:25px;padding:3px 8px;font-size:.64rem;font-weight:650;display:inline-flex;box-shadow:3px 3px 6px #0f172a0d}.booking-status{gap:5px}.status-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 0 2px #22c55e1a,1px 1px 2px #0f172a1f}.reversal-status{color:var(--text-secondary)}.return-train strong{margin-left:3px}.train-card-body{padding:16px}.journey-section{background:var(--input-bg);border-radius:20px;grid-template-columns:minmax(0,1fr) 180px minmax(0,1fr);align-items:center;gap:12px;padding:16px;display:grid;box-shadow:inset 3px 3px 7px #0f172a0f}.station-destination{text-align:right}.station-label{letter-spacing:.08em;color:var(--text-muted);margin-bottom:4px;font-size:.58rem;font-weight:750;display:block}.station-time{font-size:1.35rem;font-weight:800;line-height:1.1;display:block}.station p{text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);margin:5px 0 3px;font-size:.72rem;font-weight:600;overflow:hidden}.station-platform{font-weight:900}.station-day{opacity:.8;margin-top:2px;font-size:.75rem;display:block}.station-code-large{background:var(--input-bg);text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--primary-color);border-radius:7px;padding:3px 7px;font-size:.62rem;font-weight:750;display:inline-flex;overflow:hidden;box-shadow:inset 2px 2px 4px #0f172a0e}.journey-middle{flex-direction:column;align-items:center;min-width:0;display:flex}.journey-line{align-items:center;width:100%;display:flex}.journey-dot{background:var(--input-bg);border:2px solid var(--primary-color);border-radius:50%;flex-shrink:0;width:9px;height:9px;box-shadow:2px 2px 3px #0f172a14}.destination-dot{background:var(--primary-color)}.line{background:#64748b38;flex:1;height:2px}.train-icon{background:var(--input-bg);width:32px;height:32px;color:var(--primary-color);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin:0 7px;display:flex;box-shadow:3px 3px 7px #0f172a12}.train-icon svg{font-size:17px}.journey-duration{color:var(--text-secondary);margin-top:7px;font-size:.67rem}.train-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;width:100%;margin-top:12px;display:grid}.stat-card{background:var(--input-bg);border:1px solid var(--border-color);border-radius:15px;align-items:center;gap:8px;min-width:0;min-height:58px;padding:9px;display:flex;box-shadow:4px 4px 8px #0f172a0e}.stat-icon{background:var(--input-bg);width:29px;height:29px;color:var(--primary-color);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:inset 2px 2px 4px #0f172a0e}.stat-icon svg{font-size:16px}.stat-content{flex:1;min-width:0}.stat-label{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:.58rem;font-weight:650;display:block;overflow:hidden}.stat-value{overflow-wrap:anywhere;color:var(--text-primary);margin-top:2px;font-size:.68rem;font-weight:750;display:block}.coach-section,.in_route-section{margin-top:12px}.coach-row,.route-button{border:1px solid var(--border-color);background:var(--input-bg);width:100%;color:var(--text-primary);cursor:pointer;appearance:none;align-items:center;transition:box-shadow .15s,transform .15s;display:flex;box-shadow:4px 4px 8px #0f172a0e}.coach-row{text-align:left;border-radius:15px;gap:10px;padding:10px 12px}.coach-row:hover,.route-button:hover{transform:translateY(-1px)}.coach-row:active,.route-button:active,.coach-row.is-open,.route-button.is-open{transform:translateY(0);box-shadow:inset 3px 3px 6px #0f172a0f}.coach-row:focus-visible,.route-button:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.coach-row-icon{width:30px;height:30px;color:var(--primary-color);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:inset 2px 2px 4px #0f172a0d}.coach-row-icon svg{font-size:17px}.coach-row-content{flex-direction:column;flex:1;min-width:0;display:flex}.coach-row-content strong{font-size:.72rem;font-weight:750}.coach-row-content small{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);margin-top:2px;font-size:.62rem;overflow:hidden}.coach-row-chevron,.route-button-chevron{width:24px;height:24px;color:var(--text-muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex}.coach-position{background:var(--input-bg);border-radius:15px;flex-wrap:wrap;gap:7px;margin-top:9px;padding:12px;display:flex;box-shadow:inset 3px 3px 7px #0f172a0f}.coach-position span{background:var(--input-bg);border-radius:8px;justify-content:center;align-items:center;min-width:34px;padding:5px 8px;font-size:.62rem;font-weight:750;display:inline-flex;box-shadow:3px 3px 6px #0f172a0e}.coach-position .muted{color:var(--text-muted)}.route-button{text-align:left;border-radius:15px;justify-content:space-between;gap:10px;padding:11px 13px}.route-button-main{flex:1;align-items:center;gap:9px;min-width:0;display:flex}.route-button-icon{background:var(--input-bg);width:30px;height:30px;color:var(--primary-color);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex;box-shadow:inset 2px 2px 4px #0f172a0d}.route-button-main strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;font-weight:750;overflow:hidden}.route-list{background:var(--input-bg);border-radius:17px;width:100%;margin-top:9px;padding:12px;display:block;box-shadow:inset 3px 3px 7px #0f172a0f}.route-item{width:100%;min-width:0;display:flex}.route-item:last-child .route-content{padding-bottom:0}.route-timeline{flex-shrink:0;width:24px;min-height:32px;position:relative}.route-dot{z-index:2;box-sizing:border-box;border:2px solid var(--text-muted);background:var(--input-bg);border-radius:50%;width:9px;height:9px;position:absolute;top:6px;left:5px;box-shadow:1px 1px 3px #0f172a14}.route-dot.halt-dot{border-color:var(--primary-color);background:var(--primary-color)}.route-vertical-line{background:#64748b38;width:1px;position:absolute;top:14px;bottom:0;left:9px}.route-content{flex:1;min-width:0;padding:0 0 14px}.route-main{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.route-station{flex:1;min-width:0}.station-name{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.station-name strong{text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-size:.68rem;font-weight:700;overflow:hidden}.station-code{background:var(--input-bg);color:var(--primary-color);border-radius:5px;flex-shrink:0;padding:2px 5px;font-size:.55rem;font-weight:750;box-shadow:inset 1px 1px 3px #0f172a0d}.halt-badge{color:#16a34a;background:#22c55e14;border-radius:5px;flex-shrink:0;padding:2px 5px;font-size:.52rem;font-weight:700}.platform{color:var(--text-muted);margin-top:3px;font-size:.55rem;display:block}.route-time{color:var(--text-muted);white-space:nowrap;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;font-size:.57rem;display:flex}.route-time strong{color:var(--text-primary);font-weight:750}.route-meta{color:var(--text-muted);flex-wrap:wrap;gap:10px;margin-top:4px;font-size:.54rem;display:flex}@container train-card (width<=700px){.train-card{border-radius:20px}.train-card-header{padding:13px}.train-card-body{padding:12px}.train-title-row h2{font-size:.88rem}.train-number{font-size:.65rem}.train-badges{gap:5px;margin-top:7px}.train-type,.train-category,.booking-status,.reversal-status,.return-train{min-height:23px;padding:3px 6px;font-size:.56rem}.journey-section{border-radius:17px;grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);gap:7px;padding:12px}.station-time{font-size:1.08rem}.station p{font-size:.63rem}.station-label{font-size:.52rem}.station-code-large{font-size:.55rem}.train-icon{border-radius:8px;width:27px;height:27px;margin:0 4px}.train-icon svg{font-size:14px}.journey-duration{font-size:.58rem}.train-stats{gap:6px}.stat-card{border-radius:11px;gap:4px;min-height:54px;padding:6px}.stat-icon{width:27px;height:27px}.stat-icon svg{font-size:14px}.stat-label{font-size:.52rem}.stat-value{font-size:.61rem}.coach-row,.route-button{border-radius:13px;padding:9px 10px}.coach-row-icon,.route-button-icon{width:27px;height:27px}.coach-row-content strong,.route-button-main strong{font-size:.65rem}.coach-row-content small{font-size:.55rem}.route-list{border-radius:14px;padding:10px}.route-timeline{width:22px}.route-dot{left:4px}.route-vertical-line{left:8px}.station-name strong{max-width:150px}}@container train-card (width<=380px){.journey-section{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr)}.station-time{font-size:1rem}.stat-card{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px}.station-name strong{max-width:125px}}.train-average-delay-results,.train-average-delay-results *,.train-average-delay-results :before,.train-average-delay-results :after{box-sizing:border-box}.train-average-delay-page{border-radius:18px!important}.train-average-delay-results{--tad-text:var(--text-primary,#0f172a);--tad-text-2:var(--text-secondary,#475569);--tad-muted:var(--text-muted,#94a3b8);--tad-surface:var(--surface,#fff);--tad-bg:var(--bg-primary,#f8fafc);--tad-border:var(--border-color,#e2e8f0);--tad-primary:var(--primary-color,#4f46e5);--tad-radius:10px;--tad-good:#16845b;--tad-moderate:#b77916;--tad-high:#d74747;--tad-shadow:0 2px 5px #0f172a09;--tad-shadow-hover:0 7px 16px #0f172a16;--tad-transition:border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;width:100%;min-width:0;max-width:640px;color:var(--tad-text);margin:0 auto;font-family:inherit;display:block}.train-average-delay-results p,.train-average-delay-results h1,.train-average-delay-results h2,.train-average-delay-results h3,.train-average-delay-results h4,.train-average-delay-results h5,.train-average-delay-results h6{margin:0}.train-average-delay-results .train-average-delay-metric,.train-average-delay-results .train-average-delay-record,.train-average-delay-results .train-average-delay-reliability-card,.train-average-delay-results .train-average-delay-exception{transition:var(--tad-transition);position:relative}.train-average-delay-results .train-average-delay-metric:hover,.train-average-delay-results .train-average-delay-record:hover,.train-average-delay-results .train-average-delay-reliability-card:hover,.train-average-delay-results .train-average-delay-exception:hover{z-index:2;border-color:var(--tad-primary);box-shadow:var(--tad-shadow-hover);transform:translateY(-2px)}@media (hover:none){.train-average-delay-results .train-average-delay-metric:hover,.train-average-delay-results .train-average-delay-record:hover,.train-average-delay-results .train-average-delay-reliability-card:hover,.train-average-delay-results .train-average-delay-exception:hover{border-color:var(--tad-border);box-shadow:var(--tad-shadow);transform:none}}.train-average-delay-results .train-average-delay-results-heading{justify-content:space-between;align-items:center;gap:8px;min-width:0;margin-bottom:8px;display:flex}.train-average-delay-results .train-average-delay-heading-copy{flex:auto;min-width:0}.train-average-delay-results .train-average-delay-results-title{color:var(--tad-text);letter-spacing:-.02em;margin:0;font-size:15px;font-weight:800;line-height:1.2}.train-average-delay-results .train-average-delay-results-subtitle{color:var(--tad-text-2);margin:1px 0 0;font-size:11px;font-weight:500;line-height:1.3}.train-average-delay-results .train-average-delay-count-chip{border:1px solid var(--tad-border);background:var(--tad-surface);max-width:45%;height:20px;color:var(--tad-text-2);border-radius:6px;flex:none;font-size:10px;font-weight:700}.train-average-delay-results .train-average-delay-count-chip .MuiChip-label{text-overflow:ellipsis;white-space:nowrap;padding:0 7px;overflow:hidden}.train-average-delay-results .train-average-delay-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;min-width:0;display:grid}.train-average-delay-results .train-average-delay-metric{border:1px solid var(--tad-border);border-radius:var(--tad-radius);background:var(--tad-surface);min-width:0;box-shadow:var(--tad-shadow);align-items:center;gap:7px;padding:7px 8px;display:flex;overflow:hidden}.train-average-delay-results .train-average-delay-metric-icon{border:1px solid var(--tad-border);background:var(--tad-bg);width:24px;height:24px;color:var(--tad-primary);border-radius:7px;flex:0 0 24px;justify-content:center;align-items:center;display:flex}.train-average-delay-results .train-average-delay-metric-icon svg{width:14px;height:14px}.train-average-delay-results .train-average-delay-metric-copy{flex:auto;min-width:0}.train-average-delay-results .train-average-delay-metric-label{color:var(--tad-text-2);overflow-wrap:anywhere;margin:0;font-size:9px;font-weight:700;line-height:1.25}.train-average-delay-results .train-average-delay-metric-value{color:var(--tad-text);letter-spacing:-.02em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:1px 0 0;font-size:14px;font-weight:800;line-height:1.15}.train-average-delay-results .train-average-delay-metric-detail{display:none}.train-average-delay-results .train-average-delay-tabs{border:1px solid var(--tad-border);background:var(--tad-bg);scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:9px;align-items:center;gap:3px;width:100%;min-width:0;margin:8px 0;padding:3px;transition:border-color .18s,box-shadow .18s;display:flex;overflow-x:auto}.train-average-delay-results .train-average-delay-tabs::-webkit-scrollbar{display:none}.train-average-delay-results .train-average-delay-tab{min-width:0;min-height:26px;color:var(--tad-text-2);white-space:nowrap;cursor:pointer;appearance:none;background:0 0;border:1px solid #0000;border-radius:7px;flex:1 0 auto;justify-content:center;align-items:center;gap:5px;margin:0;padding:4px 9px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.2;transition:color .16s,background-color .16s,border-color .16s,box-shadow .16s,transform .16s;display:inline-flex}.train-average-delay-results .train-average-delay-tab>span{min-width:16px;height:16px;color:var(--tad-text-2);font-variant-numeric:tabular-nums;background:#47556917;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0 4px;font-size:9px;font-weight:800;transition:background-color .16s,color .16s;display:inline-flex}.train-average-delay-results .train-average-delay-tab:hover{color:var(--tad-primary);border-color:var(--tad-border);background:var(--tad-surface)}.train-average-delay-results .train-average-delay-tab:active{transform:scale(.98)}.train-average-delay-results .train-average-delay-tab.active{border-color:var(--tad-primary);background:var(--tad-surface);color:var(--tad-primary);box-shadow:var(--tad-shadow)}.train-average-delay-results .train-average-delay-tab.active>span{color:var(--tad-primary);background:#4f46e51f}.train-average-delay-results .train-average-delay-tab:focus-visible{outline:2px solid var(--tad-primary);outline-offset:2px}.train-average-delay-results .train-average-delay-list{flex-direction:column;gap:8px;width:100%;min-width:0;display:flex}.train-average-delay-results .train-average-delay-record{--tad-accent:var(--tad-muted);border:1px solid var(--tad-border);border-radius:var(--tad-radius);background:var(--tad-surface);min-width:0;box-shadow:var(--tad-shadow);flex:none;padding:8px 10px 7px 14px}.train-average-delay-results .train-average-delay-record.good{--tad-accent:var(--tad-good)}.train-average-delay-results .train-average-delay-record.moderate{--tad-accent:var(--tad-moderate)}.train-average-delay-results .train-average-delay-record.high{--tad-accent:var(--tad-high)}.train-average-delay-results .train-average-delay-record:before{border-radius:var(--tad-radius) 0 0 var(--tad-radius);background:var(--tad-accent);content:"";opacity:.9;pointer-events:none;width:4px;position:absolute;top:-1px;bottom:-1px;left:-1px}.train-average-delay-results .train-average-delay-record-top{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.train-average-delay-results .train-average-delay-record-heading{flex:auto;min-width:0}.train-average-delay-results .train-average-delay-station{min-width:0;color:var(--tad-text);flex-wrap:wrap;align-items:baseline;gap:0 7px;margin:0;font-size:13px;font-weight:700;line-height:1.3;display:flex}.train-average-delay-results .train-average-delay-train-tag{color:var(--tad-primary);white-space:nowrap;flex:none;font-size:11px;font-weight:800}.train-average-delay-results .train-average-delay-station-name{overflow-wrap:anywhere;min-width:0}.train-average-delay-results .train-average-delay-status{border:1px solid var(--tad-border);background:var(--tad-bg);min-width:0;max-width:46%;height:20px;color:var(--tad-text-2);border-radius:6px;flex:0 auto;font-size:9px;font-weight:800}.train-average-delay-results .train-average-delay-status .MuiChip-label{text-overflow:ellipsis;white-space:nowrap;padding:0 7px;display:block;overflow:hidden}.train-average-delay-results .train-average-delay-status.good{color:var(--tad-good);background:#16845b17;border-color:#16845b40}.train-average-delay-results .train-average-delay-status.moderate{color:var(--tad-moderate);background:#b779161a;border-color:#b7791647}.train-average-delay-results .train-average-delay-status.high{color:var(--tad-high);background:#d7474717;border-color:#d7474740}.train-average-delay-results .train-average-delay-status.unknown{color:var(--tad-muted)}.train-average-delay-results .train-average-delay-divider{border-color:var(--tad-border);opacity:.8;margin:6px 0}.train-average-delay-results .train-average-delay-record-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;min-width:0;display:grid}.train-average-delay-results .train-average-delay-record-metrics>div,.train-average-delay-results .train-average-delay-reliability-stats>div{min-width:0}.train-average-delay-results .train-average-delay-stat-label{color:var(--tad-muted);overflow-wrap:anywhere;margin:0;font-size:9px;font-weight:600;line-height:1.25}.train-average-delay-results .train-average-delay-stat-value{color:var(--tad-text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:1px 0 0;font-size:11px;font-weight:800;line-height:1.25}.train-average-delay-results .train-average-delay-record-footer{border-top:1px dashed var(--tad-border);min-width:0;color:var(--tad-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2px 8px;margin-top:6px;padding-top:5px;font-size:9px;font-weight:500;line-height:1.25;display:flex}.train-average-delay-results .train-average-delay-record-footer span{overflow-wrap:anywhere;min-width:0}.train-average-delay-results .train-average-delay-reliability-card{--tad-accent:var(--tad-primary);border:1px solid var(--tad-border);border-radius:var(--tad-radius);background:var(--tad-surface);min-width:0;box-shadow:var(--tad-shadow);padding:8px 10px}.train-average-delay-results .train-average-delay-reliability-heading{border-bottom:1px solid var(--tad-border);justify-content:space-between;align-items:center;gap:6px;min-width:0;padding-bottom:5px;display:flex}.train-average-delay-results .train-average-delay-train-number{min-width:0;color:var(--tad-text);overflow-wrap:anywhere;flex:auto;margin:0;font-size:12px;font-weight:800;line-height:1.3}.train-average-delay-results .train-average-delay-sample-chip{border:1px solid var(--tad-border);background:var(--tad-bg);height:20px;color:var(--tad-text-2);border-radius:6px;flex:none;font-size:9px;font-weight:700}.train-average-delay-results .train-average-delay-sample-chip .MuiChip-label{padding:0 7px}.train-average-delay-results .train-average-delay-reliability-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:6px;display:grid}.train-average-delay-results .train-average-delay-exception{--tad-accent:var(--tad-moderate);border:1px solid var(--tad-border);border-radius:var(--tad-radius);background:var(--tad-surface);min-width:0;box-shadow:var(--tad-shadow);align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.train-average-delay-results .train-average-delay-exception>svg{width:16px;height:16px;color:var(--tad-moderate);flex:0 0 16px;margin-top:1px}.train-average-delay-results .train-average-delay-exception-content{flex:auto;min-width:0}.train-average-delay-results .train-average-delay-exception-copy{color:var(--tad-text-2);overflow-wrap:anywhere;margin:1px 0 0;font-size:11px;font-weight:500;line-height:1.4}.train-average-delay-results .train-average-delay-notice{color:var(--tad-text-2);overflow-wrap:anywhere;background:#b7791614;border:1px solid #b7791640;border-radius:8px;padding:6px 10px;font-size:10px;font-weight:600;line-height:1.35}.train-average-delay-results .train-average-delay-empty{border:1px dashed var(--tad-border);border-radius:var(--tad-radius);background:var(--tad-surface);min-width:0;min-height:70px;color:var(--tad-text-2);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:10px;display:flex}.train-average-delay-results .train-average-delay-empty>svg{width:20px;height:20px;color:var(--tad-muted);flex:none}.train-average-delay-results .train-average-delay-empty .MuiTypography-root{max-width:300px;color:var(--tad-text-2);overflow-wrap:anywhere;margin:0;font-size:11px;font-weight:500;line-height:1.35}.train-average-delay-results .train-average-delay-updated{color:var(--tad-muted);overflow-wrap:anywhere;margin-top:6px;font-size:9px;font-weight:500;line-height:1.35}@media (width<=600px){.train-average-delay-results .train-average-delay-metric{flex-direction:column;align-items:flex-start;gap:4px;padding:7px 6px}.train-average-delay-results .train-average-delay-metric-icon{flex-basis:22px;width:22px;height:22px}.train-average-delay-results .train-average-delay-metric-icon svg{width:13px;height:13px}.train-average-delay-results .train-average-delay-metric-value{font-size:13px}.train-average-delay-results .train-average-delay-record{padding:7px 8px 6px 12px}.train-average-delay-results .train-average-delay-record-top{align-items:flex-start}.train-average-delay-results .train-average-delay-station{font-size:12px}.train-average-delay-results .train-average-delay-record-metrics{gap:4px}.train-average-delay-results .train-average-delay-stat-label{font-size:8px}.train-average-delay-results .train-average-delay-stat-value{font-size:10px}}@media (width<=340px){.train-average-delay-results .train-average-delay-record-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.train-average-delay-results .train-average-delay-metric-label{font-size:8px}.train-average-delay-results .train-average-delay-metric-value{font-size:12px}}@media (width<=280px){.train-average-delay-results .train-average-delay-summary-grid{grid-template-columns:1fr}.train-average-delay-results .train-average-delay-metric{flex-direction:row;align-items:center}}@media (prefers-reduced-motion:reduce){.train-average-delay-results .train-average-delay-metric,.train-average-delay-results .train-average-delay-tab,.train-average-delay-results .train-average-delay-record,.train-average-delay-results .train-average-delay-reliability-card,.train-average-delay-results .train-average-delay-exception,.train-average-delay-results .train-average-delay-tabs{transition:none!important}.train-average-delay-results .train-average-delay-metric:hover,.train-average-delay-results .train-average-delay-record:hover,.train-average-delay-results .train-average-delay-reliability-card:hover,.train-average-delay-results .train-average-delay-exception:hover,.train-average-delay-results .train-average-delay-tab:active{transform:none!important}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.rs-paper{flex-direction:column;background:var(--surface)!important;width:min(420px,100vw - 16px)!important;max-height:min(70dvh,560px)!important;color:var(--text-primary)!important;border:2px solid #0a377c!important;border-radius:18px!important;display:flex!important;overflow:hidden!important;box-shadow:8px 8px 18px #0f172a29!important}.rs-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;display:flex}.rs-title-group{min-width:0}.rs-title{color:var(--text-primary)!important;font-size:.95rem!important;font-weight:750!important}.rs-subtitle{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden;color:var(--text-muted)!important;font-size:.7rem!important}.rs-close{flex-shrink:0;width:30px;height:30px;box-shadow:4px 4px 8px #0f172a24,inset 1px 1px 2px #0f172a0d;color:var(--text-secondary)!important;background:var(--surface)!important;border:1px solid var(--border-color)!important;border-radius:10px!important}.rs-toolbar{border-bottom:1px solid var(--border-color);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex}.rs-summary{flex-wrap:wrap;gap:6px;display:flex}.rs-stat{border:1px solid var(--border-color);background:var(--surface);color:var(--text-secondary);border-radius:9px;padding:4px 9px;font-size:.68rem;font-weight:650;box-shadow:3px 3px 6px #0f172a1f,inset 1px 1px 2px #0f172a0d}.rs-filter{gap:6px;display:flex}.rs-filter-btn{appearance:none;border:1px solid var(--border-color);background:var(--surface);color:var(--text-secondary);cursor:pointer;border-radius:10px;padding:5px 12px;font-size:.7rem;font-weight:650;transition:box-shadow .15s,color .15s,border-color .15s;box-shadow:4px 4px 8px #0f172a24}.rs-filter-btn.active{color:var(--primary-color);border:1px solid var(--primary-color);box-shadow:inset 3px 3px 6px #0f172a2e}.rs-filter-btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.rs-body{overscroll-behavior:contain;background:var(--surface);flex:auto;min-height:0;padding:14px 14px 16px;overflow:hidden auto}.rs-empty{text-align:center;padding:24px 0;color:var(--text-muted)!important;font-size:.8rem!important}.rs-row{grid-template-columns:28px minmax(0,1fr);column-gap:10px;display:grid}.rs-track{min-height:100%;position:relative}.rs-rail{background:repeating-linear-gradient(#64748b73 0 2px,#0000 2px 7px);border-left:2px solid #64748b73;border-right:2px solid #64748b73;width:10px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.rs-row.is-first .rs-rail{top:16px}.rs-row.is-last .rs-rail{bottom:calc(100% - 16px)}.rs-node{z-index:2;box-sizing:border-box;border:2px solid var(--text-muted);background:var(--surface);border-radius:50%;width:12px;height:12px;position:absolute;top:16px;left:50%;transform:translate(-50%,-50%);box-shadow:3px 3px 6px #0f172a33,inset 2px 2px 3px #0f172a24}.rs-node.is-halt{border-color:var(--primary-color);background:var(--primary-color);width:16px;height:16px}.rs-node.is-end{border-color:var(--primary-color);background:var(--surface);width:18px;height:18px;box-shadow:4px 4px 8px #0f172a38,inset 2px 2px 4px #0f172a29}.rs-card{border:1px solid var(--border-color);background:var(--surface);border-radius:14px;min-width:0;margin-bottom:12px;padding:10px 12px;transition:border-color .15s;box-shadow:5px 5px 10px #0f172a1f,inset 1px 1px 2px #0f172a0a}.rs-row.is-halt .rs-card{border:1px solid var(--primary-color);box-shadow:5px 5px 10px #0f172a24,inset 3px 3px 6px #0f172a14}.rs-row.is-first .rs-card,.rs-row.is-last .rs-card{border:1px solid var(--primary-color)}.rs-card-top{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.rs-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary);font-size:.8rem;font-weight:700;overflow:hidden}.rs-code{background:var(--surface);border:1px solid var(--border-color);color:var(--primary-color);border-radius:7px;flex-shrink:0;padding:2px 7px;font-size:.66rem;font-weight:750;box-shadow:inset 2px 2px 4px #0f172a1a}.rs-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;font-size:.66rem;display:flex}.rs-tag{border:1px solid var(--border-color);background:var(--surface);color:var(--text-secondary);border-radius:6px;padding:1px 6px;font-size:.6rem;font-weight:700;box-shadow:2px 2px 4px #0f172a1a}.rs-tag-halt{color:var(--primary-color);border-color:var(--primary-color)}.rs-times{color:var(--text-muted);flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:.68rem;display:flex}.rs-times strong{color:var(--text-primary);font-weight:750}@media (width<=380px){.rs-toolbar{padding:8px 10px}.rs-row{grid-template-columns:24px minmax(0,1fr);column-gap:8px}.rs-name{font-size:.75rem}}.availability-result{margin-top:4px}.availability-summary{border:1px solid var(--border-color);color:var(--text-primary);box-shadow:var(--shadow-sm), inset 1px 1px 2px #ffffff0f;margin-bottom:12px;background-color:var(--surface)!important;border-radius:16px!important}.availability-summary-content{padding:14px!important}.summary-info{min-width:0}.summary-label{color:var(--text-secondary);font-size:10px!important;font-weight:600!important}.summary-route{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;overflow:hidden;font-size:17px!important;font-weight:800!important}.summary-codes{color:var(--text-secondary);font-size:11px!important}.train-count{flex-shrink:0;box-shadow:2px 2px 5px #0000001a,inset 1px 1px 2px #ffffff14;border-radius:9px!important;height:25px!important}.train-count .MuiChip-label{padding-left:9px;padding-right:9px;font-size:10px}.train-list{gap:12px!important}.train-card{color:var(--text-primary);box-shadow:var(--shadow-md), inset 1px 1px 2px #ffffff0f;transition:background-color .25s,border-color .2s,box-shadow .2s,transform .2s;overflow:hidden;border:1px solid var(--border-color)!important;background-color:var(--surface)!important;border-radius:18px!important}.train-card:hover{box-shadow:var(--shadow-md), inset 1px 1px 2px #ffffff14;transform:translateY(-1px);border-color:var(--primary-color)!important}.train-card-content{padding:18px!important}.train-heading{min-width:0}.train-icon-box{background-color:var(--bg-tertiary);width:30px;height:30px;color:var(--primary-color);border:1px solid var(--border-color);border-radius:13px;flex-shrink:0;place-items:center;display:grid;box-shadow:3px 3px 7px #0000001a,inset 1px 1px 2px #ffffff14}.train-heading-info{min-width:0}.train-number{color:var(--text-primary);white-space:nowrap;font-size:15px!important;font-weight:800!important}.train-type{max-width:220px;box-shadow:1px 1px 3px #00000012,inset 1px 1px 2px #ffffff0d;border-radius:8px!important;height:23px!important}.train-type .MuiChip-label{text-overflow:ellipsis;padding-left:7px;padding-right:7px;font-size:10px;overflow:hidden}.train-name{white-space:nowrap;text-overflow:ellipsis;max-width:450px;overflow:hidden;color:var(--text-secondary)!important;margin-top:2px!important;font-size:12px!important;font-weight:600!important}.distance-chip{flex-shrink:0;box-shadow:2px 2px 5px #00000014,inset 1px 1px 2px #ffffff0f;border-radius:9px!important;height:25px!important}.distance-chip svg{font-size:16px}.distance-chip .MuiChip-label{padding-left:7px;padding-right:7px;font-size:10px}.train-divider{border-color:var(--border-color)!important;margin-left:0!important;margin-right:0!important}.train-divider.top{margin-top:2px!important;margin-bottom:2px!important}.train-divider.bottom{margin-top:12px!important;margin-bottom:12px!important}.route-section{grid-template-columns:minmax(0,1fr) minmax(0,450px) minmax(0,1fr);align-items:center;gap:16px;display:grid}.station{min-width:0}.station-to{text-align:right}.station-time{color:var(--text-primary);font-size:25px!important;font-weight:800!important;line-height:1!important}.station-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--text-primary)!important;margin-top:6px!important;font-size:13px!important;font-weight:700!important}.station-to .station-time,.station-to .station-name,.station-to .station-details{text-align:right;width:100%;display:block}.station-city{color:var(--text-secondary);font-weight:500}.station-details{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--text-secondary)!important;margin-top:1px!important;font-size:11px!important}.route-duration{flex-direction:column;align-items:center;gap:5px;min-width:0;display:flex}.route-duration .MuiSvgIcon-root{color:var(--text-secondary);font-size:15px}.route-duration>.MuiStack-root{gap:3px}.route-duration>.MuiStack-root .MuiTypography-root{color:var(--text-secondary);white-space:nowrap;font-size:11px;font-weight:700}.route-line{align-items:center;gap:0;width:100%;min-width:0;padding:0;display:flex;overflow:visible;margin:5px 0!important}.route-line>.journey-dot{z-index:2;box-sizing:border-box;width:9px;min-width:9px;height:9px;min-height:9px;box-shadow:none;border-radius:50%;flex:0 0 9px;position:relative;visibility:visible!important;opacity:1!important;background-color:var(--input-bg,var(--surface))!important;border:2px solid var(--primary-color)!important;display:block!important}.route-line>.journey-dot.destination-dot{background-color:var(--primary-color)!important}.route-line>.route-line-middle{background-color:var(--border-color);flex:1 1 0;min-width:0;height:2px;display:block;box-shadow:inset 0 1px 1px #0000000d}.route-line>.train-icon{z-index:1;background-color:var(--surface);width:26px;height:26px;color:var(--primary-color);border-radius:50%;flex:0 0 26px;justify-content:center;align-items:center;margin:0 4px;display:flex;position:relative}.route-line>.train-icon .MuiSvgIcon-root{color:var(--primary-color);font-size:19px;display:block}.halts{white-space:nowrap;color:var(--text-secondary)!important;font-size:10px!important;font-weight:600!important}@media (width<=899px){.route-section{grid-template-columns:minmax(0,1fr) minmax(0,150px) minmax(0,1fr);gap:5px}.station-time{font-size:16px!important}.station-name{margin-top:4px!important;font-size:8.5px!important}.station-details{font-size:7.5px!important}.route-duration{gap:3px}.route-duration .MuiSvgIcon-root{font-size:12px}.route-duration>.MuiStack-root .MuiTypography-root{font-size:7.5px}.route-line>.journey-dot{flex-basis:8px;width:8px;min-width:8px;height:8px;min-height:8px}.route-line>.route-line-middle{height:1.5px}.route-line>.train-icon{flex-basis:22px;width:22px;height:22px;margin:0 2px}.route-line>.train-icon .MuiSvgIcon-root{font-size:16px}.halts{font-size:7.2px!important}}@media (width>=600px) and (width<=899px){.route-section{gap:8px}.station-time{font-size:19px!important}.station-name{font-size:10px!important}.station-details{font-size:9px!important}}.class-section{width:100%}.class-header{justify-content:space-between;align-items:center;gap:12px;width:100%;min-width:0;display:flex}.class-list-wrapper{scrollbar-width:none;flex:1;min-width:0;overflow:hidden}.class-list-wrapper::-webkit-scrollbar{display:none}.class-list{flex-wrap:wrap;align-items:center;gap:9px;width:auto;min-width:0;display:flex}.class-chip-wrapper{flex-shrink:0;display:inline-flex}.class-chip{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .18s;box-shadow:2px 2px 4px #00000014,inset 1px 1px 2px #ffffff0f;min-width:40px!important;height:28px!important;color:var(--text-primary)!important;border-color:var(--border-color)!important;background-color:var(--bg-tertiary)!important;border-radius:9px!important;font-weight:800!important}.class-chip .MuiChip-label{padding-left:7px!important;padding-right:7px!important;font-size:9.5px!important;line-height:1!important}.class-chip.selected{box-shadow:3px 3px 6px #00000024,inset 1px 1px 2px #ffffff1f;background-color:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important}.class-chip:not(.selected):hover{transform:translateY(-1px);box-shadow:3px 3px 6px #0000001a,inset 1px 1px 2px #ffffff14;background-color:var(--bg-tertiary)!important;color:var(--primary-color)!important;border-color:var(--primary-color)!important}.class-chip:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.class-chip.Mui-disabled{opacity:.7!important}.class-chip.Mui-disabled.selected{background-color:var(--primary-color)!important;color:#fff!important;border-color:var(--primary-color)!important}.class-chip.Mui-disabled:not(.selected){background-color:var(--bg-tertiary)!important;color:var(--text-secondary)!important;border-color:var(--border-color)!important}.class-spinner{color:var(--primary-color)}.class-spinner.selected{color:#fff}.classes-not-available{white-space:nowrap;color:var(--text-secondary)!important;font-size:9.5px!important;font-weight:600!important}.running-days{flex-shrink:0;gap:4px!important}.running-day{border:1px solid var(--border-color);background-color:var(--bg-tertiary);width:23px;height:23px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:9px;font-weight:700;transition:all .2s;display:flex;box-shadow:2px 2px 4px #00000014,inset 1px 1px 2px #ffffff0f}.running-day.active{border-color:var(--primary-color);background-color:var(--primary-color);color:var(--primary-color-contrast,#fff);box-shadow:2px 2px 5px #0000001f,inset 1px 1px 2px #ffffff1a}.availability-details{border:1px dashed var(--border-color);background-color:var(--bg-tertiary);border-radius:13px;width:100%;margin-top:10px;padding:10px;box-shadow:inset 2px 2px 5px #0000000f,inset -1px -1px 2px #ffffff0a}.availability-header{margin-bottom:7px}.availability-title{color:var(--text-secondary);text-transform:uppercase;font-size:10px!important;font-weight:800!important}.selected-class-badge{box-shadow:1px 1px 3px #00000012,inset 1px 1px 2px #ffffff0d;border-color:var(--primary-color)!important;background-color:var(--surface)!important;height:21px!important;color:var(--primary-color)!important;border-radius:7px!important;font-weight:800!important}.selected-class-badge .MuiChip-label{padding-left:7px!important;padding-right:7px!important;font-size:8.5px!important}.availability-date{white-space:nowrap;color:var(--text-secondary)!important;font-size:9px!important}.availability-loading{justify-content:center;align-items:center;gap:7px;padding:8px 0;display:flex}.availability-loading .MuiTypography-root{color:var(--text-secondary);font-size:9px}.availability-error{padding:4px 0;color:#d32f2f!important;font-size:9px!important}.no-availability{color:var(--text-secondary)!important;font-size:10px!important}.calendar-scroll{scrollbar-width:none;width:100%;overflow-x:auto}.calendar-scroll::-webkit-scrollbar{display:none}.calendar-list{gap:8px;width:max-content;min-width:100%;display:flex}.calendar-item{border:1px solid var(--border-color);background-color:var(--surface);border-radius:11px;flex-shrink:0;min-width:80px;padding:8px;transition:transform .18s,box-shadow .18s;position:relative;box-shadow:2px 2px 5px #00000014,inset 1px 1px 2px #ffffff0d}.calendar-item.available{background-color:#2e7d3212;border-color:#2e7d3259}.calendar-item.waitlisted{background-color:#ed6c020f;border-color:#ed6c024d}.calendar-item:hover{transform:translateY(-1px);box-shadow:3px 3px 7px #0000001a,inset 1px 1px 2px #ffffff0f}.calendar-weekday{color:var(--text-secondary)!important;font-size:8.5px!important;font-weight:600!important;line-height:1!important}.calendar-date{color:var(--text-primary)!important;margin-top:2px!important;font-size:11px!important;font-weight:800!important;line-height:1.1!important}.calendar-status{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--text-secondary)!important;margin-top:5px!important;font-size:8.5px!important;font-weight:800!important}.calendar-status.available{color:#2e7d32!important}.calendar-status.waitlisted{color:#ed6c02!important}.fare-container{border:1px solid var(--border-color);background-color:var(--surface);border-radius:13px;width:100%;margin-top:15px;padding:11px;box-shadow:3px 3px 7px #00000017,inset 1px 1px 2px #ffffff0f}.fare-content{width:100%;min-width:0}.book-button-wrapper{flex-shrink:0;display:inline-flex}.book-button{flex-shrink:0;text-transform:none!important;border-radius:9px!important;min-width:96px!important;height:32px!important;padding-left:12px!important;padding-right:12px!important;font-size:9.5px!important;font-weight:800!important;box-shadow:3px 3px 6px #0000001f,inset 1px 1px 2px #ffffff1a!important}.fare-info{flex:1;min-width:0}.fare-header{width:100%;min-width:0}.fare-title-wrapper{min-width:0}.fare-title{text-transform:uppercase;white-space:nowrap;color:var(--text-secondary)!important;font-size:10px!important;font-weight:800!important}.fare-info-icon{color:var(--text-secondary);cursor:pointer;border-radius:50%;flex-shrink:0;padding:1px;box-shadow:1px 1px 3px #00000014,inset 1px 1px 2px #ffffff0d;font-size:16px!important}.fare-total{white-space:nowrap;flex-shrink:0;margin-bottom:10px;color:var(--primary-color)!important;font-size:14px!important;font-weight:800!important}.fare-error{white-space:nowrap;text-overflow:ellipsis;text-align:right;overflow:hidden;color:#d32f2f!important;font-size:9px!important}.fare-breakdown{min-width:195px}.fare-row{padding-top:2px;padding-bottom:2px}.fare-label{font-size:10px!important}.fare-value{font-size:10px!important;font-weight:700!important}.fare-divider{border-color:var(--border-color)!important;margin-top:4px!important;margin-bottom:4px!important}.fare-total-label,.fare-total-value{font-size:10px!important;font-weight:800!important}.no-trains-card{text-align:center;color:var(--text-primary);box-shadow:var(--shadow-md), inset 1px 1px 2px #ffffff0f;border:1px solid var(--border-color)!important;background-color:var(--surface)!important;border-radius:15px!important}.no-trains-content{padding-top:40px!important;padding-bottom:40px!important}.no-trains-icon{color:var(--text-secondary);margin-bottom:8px;font-size:38px!important}@media (width<=899px){.availability-result{margin-top:4px}.availability-summary{margin-bottom:8px;border-radius:13px!important}.availability-summary-content{padding:10px!important}.summary-label{font-size:7.5px!important}.summary-route{font-size:12.5px!important}.summary-codes{font-size:8px!important}.train-count{border-radius:8px!important;height:21px!important}.train-count .MuiChip-label{padding-left:7px;padding-right:7px;font-size:7.5px}.train-list{gap:8px!important}.train-card{border-radius:14px!important}.train-card-content{padding:10px!important}.train-icon-box{border-radius:9px;width:30px;height:30px}.train-icon-box svg{font-size:17px}.train-number{font-size:11.5px!important}.train-type{max-width:105px;border-radius:6px!important;height:18px!important}.train-type .MuiChip-label{padding-left:5px;padding-right:5px;font-size:7.2px}.train-name{max-width:190px;margin-top:1px!important;font-size:8.5px!important}.distance-chip{border-radius:7px!important;height:20px!important}.distance-chip svg{font-size:12px}.distance-chip .MuiChip-label{padding-left:5px;padding-right:5px;font-size:7.5px}.train-divider.top,.train-divider.bottom{margin-top:7px!important;margin-bottom:7px!important}.route-section{grid-template-columns:minmax(0,1fr) minmax(0,150px) minmax(0,1fr);gap:5px}.station-time{font-size:16px!important}.station-name{margin-top:4px!important;font-size:8.5px!important}.station-details{font-size:7.5px!important}.route-duration{gap:3px}.route-duration .MuiSvgIcon-root{font-size:12px}.route-duration>.MuiStack-root .MuiTypography-root{font-size:7.5px}.route-line{align-items:center;gap:0;width:100%;min-width:0;padding:0;display:flex;overflow:visible;margin:5px 0!important}.route-line .journey-dot{z-index:2;position:relative;visibility:visible!important;opacity:1!important;box-sizing:border-box!important;border:2px solid var(--primary-color)!important;background-color:var(--surface)!important;border-radius:50%!important;flex:0 0 10px!important;width:10px!important;min-width:10px!important;height:10px!important;min-height:10px!important;display:inline-block!important}.route-line .journey-dot.destination-dot{background-color:var(--primary-color)!important}.route-line .route-line-middle{background-color:var(--border-color);flex:1 1 0;min-width:0;height:2px;box-shadow:inset 0 1px 1px #0000000d}.route-line .train-icon{background-color:var(--surface);z-index:1;border-radius:50%;flex:0 0 26px;justify-content:center;align-items:center;width:26px;height:26px;margin:0 4px;display:flex;position:relative}.route-line .train-icon .MuiSvgIcon-root{color:#123f85;font-size:19px;display:block}@media (width<=899px){.route-line .journey-dot{width:8px!important;min-width:8px!important;height:8px!important;min-height:px!important;flex-basis:8px!important}.route-line .route-line-middle{height:1.5px}.route-line .train-icon{flex-basis:22px;width:22px;height:22px;margin:0 2px}.route-line .train-icon .MuiSvgIcon-root{font-size:16px}}.halts{font-size:7.2px!important}.class-header{gap:7px}.class-list-wrapper{overflow-x:auto}.class-list{flex-wrap:nowrap;gap:7px;width:max-content}.class-chip{border-radius:8px!important;min-width:32px!important;height:24px!important}.class-chip .MuiChip-label{padding-left:5px!important;padding-right:5px!important;font-size:8px!important}.running-days{gap:2px!important}.running-day{width:17px;height:17px;font-size:6.5px}.availability-details{border-radius:10px;margin-top:8px;padding:8px}.availability-header{margin-bottom:6px}.availability-title{font-size:8px!important}.selected-class-badge{border-radius:6px!important;height:18px!important}.selected-class-badge .MuiChip-label{padding-left:6px!important;padding-right:6px!important;font-size:7.5px!important}.availability-date{font-size:7px!important}.availability-loading{padding:8px 0}.availability-loading .MuiTypography-root{font-size:7.5px}.availability-error{font-size:7.5px!important}.calendar-list{gap:6px}.calendar-item{border-radius:9px;min-width:64px;padding:6px 7px}.calendar-weekday{font-size:7px!important}.calendar-date{font-size:9px!important}.calendar-status{font-size:7px!important}.fare-container{border-radius:10px;margin-top:10px;padding:9px}.fare-content{gap:8px!important}.book-button{border-radius:8px!important;min-width:76px!important;height:28px!important;padding-left:8px!important;padding-right:8px!important;font-size:8px!important}.fare-header,.fare-title-wrapper{gap:20px!important}.fare-title{font-size:8px!important}.fare-info-icon{font-size:13px!important}.fare-total{font-size:11px!important}.fare-error{font-size:7px!important}.fare-breakdown{min-width:175px}}@media (width>=600px) and (width<=899px){.availability-summary-content{padding:14px!important}.summary-label{font-size:10px!important}.summary-route{font-size:14px!important}.summary-codes{font-size:11px!important}.train-card-content{padding:14px!important}.train-icon-box{border-radius:11px;width:35px;height:35px}.train-icon-box svg{font-size:20px}.train-number{font-size:13px!important}.train-type{max-width:145px;height:20px!important}.train-type .MuiChip-label{font-size:8.5px}.train-name{max-width:280px;font-size:10px!important}.route-section{gap:8px}.station-time{font-size:19px!important}.station-name{font-size:10px!important}.station-details{font-size:9px!important}.class-list{flex-wrap:wrap;gap:8px;width:auto}.class-chip{min-width:35px!important;height:25px!important}.class-chip .MuiChip-label{padding-left:6px!important;padding-right:6px!important;font-size:8.8px!important}.running-day{width:19px;height:19px;font-size:7.5px}.fare-container{padding:10px}.book-button{min-width:88px!important;height:30px!important;font-size:8.5px!important}.fare-title{font-size:8.5px!important}.fare-total{font-size:12px!important}}@media (width<=599px){.fare-header,.fare-title-wrapper{gap:8px!important}}@media (hover:none){.class-chip:active{opacity:.85}}.schedule-chip .MuiChip-label{display:inline}@media (width<=899px){.schedule-chip{width:28px;padding:0;height:25px!important}.schedule-chip .MuiChip-label{display:none}.schedule-chip .MuiChip-icon{width:18px;height:18px;margin:0!important}}.live-train-map,.live-train-map *{box-sizing:border-box}.live-train-map{--ltm-radius:12px;--ltm-border:var(--border-color,#dbe2ea);--ltm-text:var(--text-primary,#172033);--ltm-muted:var(--text-secondary,#64748b);border:1px solid var(--ltm-border);border-radius:var(--ltm-radius);width:100%;min-width:0;color:var(--ltm-text);background:var(--surface,#f8fafc);padding:0;overflow:hidden}.live-train-map-canvas{width:100%;height:var(--live-train-map-height,460px);border-radius:inherit;isolation:isolate;background:#dbeafe;min-height:300px;position:relative;overflow:hidden}.live-train-map-leaflet{z-index:0;background:#dbeafe;width:100%;height:100%;min-height:300px}.live-train-map-leaflet .leaflet-control-attribution{font-size:9px}.live-train-map-leaflet .leaflet-tooltip{z-index:1200;border:1px solid var(--ltm-border);color:#172033;border-radius:8px;font-size:10px;line-height:1.3;box-shadow:0 2px 8px #0f172a2e}.live-train-map-leaflet .live-train-fixed-tooltip{color:#172033;white-space:normal;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border:1px solid #2563eb59;border-radius:9px;min-width:160px;max-width:min(220px,100vw - 88px);padding:0;box-shadow:0 3px 10px #0f172a38}.live-train-map-leaflet .live-train-fixed-tooltip:before{border-top-color:#fffffff5}.live-train-fixed-tooltip-content{flex-direction:column;gap:5px;padding:7px;display:flex}.live-train-tooltip-heading{border-bottom:1px solid #e2e8f0;align-items:center;gap:6px;padding-bottom:5px;display:flex}.live-train-tooltip-heading>.MuiSvgIcon-root{color:#fff;background:#2563eb;border-radius:7px;flex-shrink:0;width:25px;height:25px;padding:4px}.live-train-tooltip-number{font-size:.7rem!important;font-weight:900!important;line-height:1.2!important}.live-train-tooltip-position{color:#64748b;margin-top:1px!important;font-size:.59rem!important;line-height:1.2!important}.live-train-tooltip-metric,.live-train-tooltip-route{align-items:flex-start;gap:5px;min-width:0;display:flex}.live-train-tooltip-metric>.MuiSvgIcon-root,.live-train-tooltip-route>.MuiSvgIcon-root{color:#2563eb;flex-shrink:0;margin-top:1px;font-size:14px}.live-train-tooltip-label{color:#64748b;font-size:.57rem!important;font-weight:700!important;line-height:1.2!important}.live-train-tooltip-value{overflow-wrap:anywhere;color:#172033;flex-wrap:wrap;align-items:center;gap:2px;display:flex;font-size:.65rem!important;font-weight:900!important;line-height:1.25!important}.live-train-tooltip-value .MuiSvgIcon-root{color:#2563eb;font-size:11px}.live-train-map-vehicle-icon,.live-train-map-station-icon{background:0 0!important;border:0!important}.live-train-vehicle-rotator{transform-origin:50%;filter:drop-shadow(0 2px 3px #0006);place-items:center;width:100%;height:100%;display:grid}.live-train-vehicle-rotator svg{width:100%;height:100%;display:block;overflow:visible}.live-train-station-dot{background:#64748b;border:2px solid #fff;border-radius:50%;width:9px;height:9px;display:block;box-shadow:0 1px 4px #0f172a66}.live-train-station-dot.is-current{background:#16a34a;border-color:#fff;width:12px;height:12px;box-shadow:0 0 0 3px #16a34a33}.live-train-station-dot.is-next{background:#f59e0b;width:11px;height:11px}.live-train-map-controls{z-index:1100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8fafce0;border:1px solid #94a3b866;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:4px;display:flex;position:absolute;top:7px;right:7px;box-shadow:0 2px 8px #0f172a29}.live-train-map-controls .MuiIconButton-root{border-radius:7px;flex-shrink:0;width:30px;height:30px;padding:5px}.live-train-map-controls .MuiIconButton-root.Mui-disabled{opacity:.4}.live-train-map-control-divider{background:#64748b59;width:18px;height:1px;margin:1px 0}.live-train-map-follow-active{color:#2563eb!important;background:#2563eb1f!important}.live-train-map-details-shell{z-index:1050;align-items:flex-start;gap:4px;max-width:calc(100% - 52px);max-height:calc(100% - 14px);display:flex;position:absolute;top:7px;left:7px}.live-train-map-details-toggle.MuiIconButton-root{width:27px;height:29px;color:var(--ltm-text);background:var(--surface,#fffffff5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #94a3b866;border-radius:8px;flex:0 0 27px;padding:4px;box-shadow:0 2px 8px #0f172a2e}.live-train-map-details{overscroll-behavior:contain;width:min(260px,100vw - 100px);max-height:min(340px,100vh - 100px);color:var(--ltm-text);background:var(--surface,#fffffff5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #94a3b866;border-radius:10px;padding:7px;overflow:hidden auto;box-shadow:0 3px 12px #0f172a2e}.live-train-map-details::-webkit-scrollbar{width:4px}.live-train-map-details::-webkit-scrollbar-thumb{background:#64748b73;border-radius:4px}.live-train-map-details-heading{border-bottom:1px solid var(--ltm-border);margin-bottom:5px;padding-bottom:5px}.live-train-map-details-icon{color:#2563eb;background:#2563eb1a;border-radius:7px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.live-train-map-details-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:.7rem!important;font-weight:900!important;line-height:1.2!important}.live-train-map-details-subtitle{color:var(--ltm-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;margin-top:1px!important;font-size:.59rem!important;line-height:1.2!important}.live-train-map-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.live-train-map-detail-item{border:1px solid var(--ltm-border);background:var(--bg-primary,#f1f5f9);border-radius:7px;min-width:0;padding:5px}.live-train-map-detail-label{overflow-wrap:anywhere;color:var(--ltm-muted);font-size:.57rem!important;font-weight:700!important;line-height:1.2!important}.live-train-map-detail-value{overflow-wrap:anywhere;color:var(--ltm-text);font-size:.65rem!important;font-weight:800!important;line-height:1.25!important}.live-train-map-progress{margin-top:5px}.live-train-map-progress>.MuiStack-root{margin-bottom:3px}.live-train-map-progress .MuiTypography-root{font-size:.59rem;font-weight:800}.live-train-map-progress-track{background:var(--bg-primary,#e2e8f0);border-radius:8px;height:4px;overflow:hidden}.live-train-map-progress-value{border-radius:inherit;background:#2563eb;height:100%;transition:width .25s}.live-train-map-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:5px;display:grid}.live-train-map-updated{border-top:1px solid var(--ltm-border);color:var(--ltm-muted);align-items:center;gap:4px;margin-top:5px;padding-top:5px;display:flex}.live-train-map-updated .MuiSvgIcon-root{flex-shrink:0;font-size:12px}.live-train-map-updated .MuiTypography-root{font-size:.57rem;line-height:1.3}.live-train-map-service-updates{background:#d9770617;border:1px solid #d977063d;border-radius:7px;margin-top:5px;padding:5px}.live-train-map-service-updates .MuiSvgIcon-root{color:#d97706;flex-shrink:0;font-size:13px}.live-train-map-service-updates .MuiTypography-root{font-size:.59rem;line-height:1.25}.live-train-map-service-updates>.MuiStack-root:first-child .MuiTypography-root{font-weight:900}.live-train-map-service-message{overflow-wrap:anywhere}.live-train-map-info{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:7px;display:grid}.live-train-map-info-item{border:1px solid var(--ltm-border);background:var(--bg-primary,#f1f5f9);border-radius:8px;min-width:0;padding:6px}.live-train-map-info-label{color:var(--ltm-muted);margin-bottom:2px!important;font-size:.6rem!important;font-weight:600!important;line-height:1.2!important}.live-train-map-info-value{overflow-wrap:anywhere;color:var(--ltm-text);font-size:.69rem!important;font-weight:800!important;line-height:1.25!important}.live-train-map-footer{color:var(--ltm-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;padding:0 7px 7px;font-size:.6rem;display:flex}.live-train-map-footer .MuiTypography-root{font-size:inherit;line-height:1.3}.live-train-map-footer-note{text-align:right}.live-train-map-empty{color:var(--ltm-muted);text-align:center;padding:14px;font-size:.78rem!important}@media (width<=700px){.live-train-map-canvas{height:min(var(--live-train-map-height,460px),70vh);min-height:300px}.live-train-map-details{width:min(230px,100vw - 88px);padding:6px}.live-train-map-details-grid{gap:3px}.live-train-map-detail-item{padding:4px}.live-train-map-detail-label{font-size:.55rem!important}.live-train-map-detail-value{font-size:.62rem!important}.live-train-map-info{grid-template-columns:repeat(2,minmax(0,1fr))}.live-train-map-footer-note{text-align:left}}@media (width<=420px){.live-train-map-canvas{min-height:280px}.live-train-map-controls{gap:3px;padding:3px;top:5px;right:5px}.live-train-map-controls .MuiIconButton-root{width:28px;height:28px}.live-train-map-details-shell{gap:3px;max-height:calc(100% - 10px);top:5px;left:5px}.live-train-map-details{width:min(205px,100vw - 78px);max-height:min(55vh,100vh - 76px)}.live-train-map-details-title{font-size:.65rem!important}.live-train-map-details-subtitle{font-size:.55rem!important}.live-train-map-summary-grid{gap:3px}.live-train-map-summary-grid .live-train-map-detail-item{padding:3px}.live-train-map-leaflet .live-train-fixed-tooltip{min-width:150px;max-width:calc(100vw - 82px)}.live-train-fixed-tooltip-content{gap:4px;padding:6px}}@media (prefers-reduced-motion:reduce){.live-train-map *{scroll-behavior:auto!important;transition-duration:.01ms!important}}.live-train-map{--clay-surface:var(--surface,#eef2f9);--clay-well:#94a3b81f;--clay-text:var(--text-primary,#111827);--clay-muted:var(--text-secondary,#64748b);--clay-blue:#2563eb;--clay-raised:0 8px 18px #0f172a33, 0 2px 5px #0f172a1f;--clay-pressed:inset 0 2px 6px #0f172a24}.live-train-map .live-train-map-controls{box-shadow:none;background:0 0;border:none}.live-train-map .live-train-map-control-divider{box-shadow:none;background:#0f172a24;border:none;border-radius:2px}.live-train-map .live-train-map-details{background:var(--clay-surface);box-shadow:var(--clay-raised);-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--clay-text);border:none;border-radius:24px}.live-train-map .live-train-map-details-toggle{background:var(--clay-surface);color:var(--clay-blue);border:none;transition:transform .15s,box-shadow .15s,background-color .15s;box-shadow:0 4px 10px #0f172a38,0 1px 3px #0f172a24}.live-train-map .live-train-map-details-toggle:hover{background:var(--bg-primary,#e8edf5);transform:translateY(-1px);box-shadow:0 7px 14px #0f172a47,0 2px 4px #0f172a29}.live-train-map .live-train-map-details-toggle:active{transform:none;box-shadow:inset 0 2px 5px #0f172a47}.live-train-map .live-train-map-details-icon{color:#fff;background:linear-gradient(145deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 4px 10px #1d4ed859}.live-train-map .live-train-map-details-title{color:var(--clay-text)}.live-train-map .live-train-map-details-subtitle{color:var(--clay-muted)}.live-train-map .live-train-map-service-updates{box-shadow:var(--clay-pressed);background:#f59e0b1f;border:none;border-radius:14px;padding:6px 8px}.live-train-map .live-train-map-service-updates svg{color:#d97706}.live-train-map .live-train-map-service-message{color:var(--clay-text)}.leaflet-tooltip.live-train-fixed-tooltip{background:var(--clay-surface,var(--surface,#eef2f9));color:var(--clay-text,var(--text-primary,#111827));border:none;border-radius:16px;padding:6px 8px;box-shadow:0 10px 22px #0f172a4d,0 2px 5px #0f172a2e}.leaflet-tooltip-top.live-train-fixed-tooltip:before{border-top-color:var(--surface,#eef2f9)}.live-train-fixed-tooltip .live-train-fixed-tooltip-content{flex-direction:column;gap:4px;min-width:0;display:flex}.live-train-fixed-tooltip .live-train-tooltip-heading{margin:0!important;padding:0!important}.live-train-fixed-tooltip .live-train-tooltip-heading p,.live-train-fixed-tooltip .live-train-tooltip-route p,.live-train-fixed-tooltip .live-train-tooltip-metric p{margin:0!important;line-height:1.2!important}.live-train-fixed-tooltip .live-train-tooltip-number{color:var(--text-primary,#111827)}.live-train-fixed-tooltip .live-train-tooltip-position,.live-train-fixed-tooltip .live-train-tooltip-label{color:var(--text-secondary,#64748b)}.live-train-fixed-tooltip .live-train-tooltip-value{color:var(--text-primary,#111827)}.live-train-fixed-tooltip .live-train-tooltip-metric,.live-train-fixed-tooltip .live-train-tooltip-route{background:#94a3b81f;border-radius:10px;flex-wrap:wrap;align-items:center;gap:3px 10px;box-shadow:inset 0 2px 6px #0f172a24;margin:0!important;padding:3px 7px!important;display:flex!important}.live-train-fixed-tooltip .live-train-tooltip-item{align-items:center;gap:3px;display:inline-flex}.live-train-fixed-tooltip .live-train-tooltip-metric svg,.live-train-fixed-tooltip .live-train-tooltip-route svg{color:#2563eb;width:14px!important;height:14px!important;font-size:14px!important}.live-train-fixed-tooltip .live-train-tooltip-badge svg{color:#fff!important;width:16px!important;height:16px!important;font-size:16px!important}.live-train-map .leaflet-tooltip:not(.live-train-fixed-tooltip){background:var(--surface,#eef2f9);color:var(--text-primary,#111827);border:none;border-radius:12px;box-shadow:0 6px 14px #0f172a47}.live-train-map .leaflet-tooltip-top:not(.live-train-fixed-tooltip):before{border-top-color:var(--surface,#eef2f9)}.live-train-map-station-icon .live-train-station-dot:not(.is-next){background:#2563eb;border:none;box-shadow:0 2px 5px #0f172a73}.live-train-map-station-icon .live-train-station-dot.is-current{background:#16a34a;box-shadow:0 0 0 4px #16a34a4d,0 2px 5px #0f172a73}.live-train-map-station-icon .live-train-station-dot{cursor:pointer;transition:scale .15s,filter .15s}.live-train-map-station-icon:hover .live-train-station-dot{filter:brightness(1.1);scale:1.35}.live-train-map-vehicle-icon svg{transition:scale .15s,filter .15s}.live-train-map-vehicle-icon.leaflet-interactive{cursor:pointer}.live-train-map-vehicle-icon.leaflet-interactive:hover svg{filter:brightness(1.05);scale:1.08}.live-train-map .live-train-map-info{box-shadow:none;background:0 0;border:none}.live-train-map .live-train-map-info-item{background:var(--clay-well);box-shadow:var(--clay-pressed);border:none;border-radius:14px}.live-train-map .live-train-map-info-label{color:var(--clay-muted)}.live-train-map .live-train-map-info-value{color:var(--clay-text)}.live-train-map .live-train-map-footer{box-shadow:none;color:var(--clay-muted);background:0 0;border:none}.live-train-map .live-train-map-empty{color:var(--clay-muted)}.lr-track-list{width:100%;display:block}.lr-row{grid-template-columns:28px minmax(0,1fr);column-gap:10px;display:grid}.lr-track{min-height:100%;position:relative}.lr-rail{background:repeating-linear-gradient(#64748b73 0 2px,#0000 2px 7px);border-left:2px solid #64748b73;border-right:2px solid #64748b73;width:10px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.lr-row.is-done .lr-rail{border-left-color:var(--primary-color,#1d4ed8);border-right-color:var(--primary-color,#1d4ed8);background:repeating-linear-gradient(to bottom, var(--primary-color,#1d4ed8) 0 2px, transparent 2px 7px)}.lr-row.is-first .lr-rail{top:21px}.lr-row.is-last .lr-rail{bottom:calc(100% - 21px)}.lr-node{z-index:2;box-sizing:border-box;border:2px solid var(--text-muted,#64748b);background:var(--surface,#fff);border-radius:50%;width:12px;height:12px;position:absolute;top:21px;left:50%;transform:translate(-50%,-50%);box-shadow:3px 3px 6px #0f172a33,inset 2px 2px 3px #0f172a24}.lr-row.is-done .lr-node{border-color:var(--primary-color,#1d4ed8);background:var(--primary-color,#1d4ed8)}.lr-row.is-next .lr-node{border-color:var(--primary-color,#1d4ed8);width:14px;height:14px}.lr-row.is-current .lr-node{border-color:var(--primary-color,#1d4ed8);background:var(--primary-color,#1d4ed8);width:18px;height:18px;box-shadow:0 0 0 4px #1d4ed82e,4px 4px 8px #0f172a38}.lr-row.is-first .lr-node,.lr-row.is-last .lr-node{border:3px solid var(--primary-color,#1d4ed8);background:var(--primary-color,#1d4ed8);width:22px;height:22px;box-shadow:0 0 0 4px #1d4ed833,5px 5px 10px #0f172a47,inset 2px 2px 4px #0f172a40}.lr-card{border:1px solid var(--border-color,#d6dbe3);background:var(--surface,#fff);border-radius:14px;min-width:0;margin-bottom:12px;padding:10px 12px;box-shadow:5px 5px 10px #0f172a1f,inset 1px 1px 2px #0f172a0a}.lr-row.is-current .lr-card,.lr-row.is-next .lr-card{border:2px solid var(--primary-color,#1d4ed8);padding:9px 11px;box-shadow:5px 5px 10px #0f172a24,inset 3px 3px 6px #0f172a14}.lr-row.is-first .lr-card,.lr-row.is-last .lr-card{border:3px solid var(--primary-color,#1d4ed8);background:var(--surface,#fff);background:color-mix(in srgb, var(--primary-color,#1d4ed8) 10%, var(--surface,#fff));padding:8px 10px;box-shadow:6px 6px 12px #0f172a33,inset 3px 3px 6px #0f172a1a}.lr-card-top{justify-content:space-between;align-items:center;gap:8px;min-width:0;height:20px;display:flex}.lr-title{align-items:center;gap:6px;min-width:0;display:flex}.lr-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-primary,#0f172a);font-size:.8rem;font-weight:700;overflow:hidden}.lr-row.is-first .lr-name,.lr-row.is-last .lr-name{font-size:.9rem;font-weight:800}.lr-code{background:var(--surface,#fff);border:1px solid var(--border-color,#d6dbe3);color:var(--primary-color,#1d4ed8);border-radius:7px;flex-shrink:0;padding:2px 7px;font-size:.66rem;font-weight:750;box-shadow:inset 2px 2px 4px #0f172a1a}.lr-row.is-first .lr-code,.lr-row.is-last .lr-code{border:2px solid var(--primary-color,#1d4ed8);padding:2px 8px;font-size:.74rem;font-weight:800}.lr-status{flex-shrink:0;box-shadow:2px 2px 4px #0f172a1a;background:var(--surface,#fff)!important;border:1px solid var(--border-color,#d6dbe3)!important;height:20px!important;color:var(--text-secondary,#475569)!important;font-size:.6rem!important;font-weight:700!important}.lr-status-departed{color:var(--primary-color,#1d4ed8)!important}.lr-status-arrived{color:#16a34a!important}.lr-meta{color:var(--text-muted,#64748b);flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;font-size:.66rem;display:flex}.lr-tag{border:1px solid var(--border-color,#d6dbe3);background:var(--surface,#fff);border-radius:6px;align-items:center;gap:3px;padding:1px 6px;font-size:.6rem;font-weight:700;display:inline-flex;box-shadow:2px 2px 4px #0f172a1a}.lr-tag-live{color:#dc2626;border-color:#dc2626}.lr-tag-next{color:var(--primary-color,#1d4ed8);border-color:var(--primary-color,#1d4ed8)}.lr-row.is-first .lr-tag,.lr-row.is-last .lr-tag{border-color:var(--primary-color,#1d4ed8);background:var(--primary-color,#1d4ed8);color:#fff;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;font-size:.62rem;font-weight:800;box-shadow:2px 2px 5px #0f172a33}.lr-times{color:var(--text-muted,#64748b);flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:.68rem;display:flex}.lr-times strong{color:var(--text-primary,#0f172a);font-weight:750}.lr-actual.time-delay strong{color:#d97706}.lr-actual.time-on-time strong{color:#16a34a}.lr-actual.time-early strong{color:var(--primary-color,#1d4ed8)}@media (width<=380px){.lr-row{grid-template-columns:24px minmax(0,1fr);column-gap:8px}.lr-name{font-size:.75rem}.lr-row.is-first .lr-name,.lr-row.is-last .lr-name{font-size:.82rem}}.live-train-status{--app-header-height:64px;width:100%;height:calc(100dvh - var(--app-header-height));min-height:0;color:var(--text-primary);background:radial-gradient(circle at 15% 10%, #ffffff1f, transparent 28%), radial-gradient(circle at 90% 20%, #ffffff14, transparent 24%), var(--bg-primary);flex-direction:column;transition:background-color .25s,color .25s;display:flex;overflow:hidden}.live-status-header{z-index:10;background:linear-gradient(135deg, var(--primary-color) 0%, color-mix(in srgb, var(--primary-color) 82%, #fff) 100%);flex:none;width:100%;position:relative;box-shadow:0 14px 30px #0f172a1f}.live-status-header:before{content:"";pointer-events:none;background:#ffffff14;border-radius:50%;width:240px;height:240px;position:absolute;top:-150px;right:-70px}.live-status-form-section{z-index:1;width:100%;position:relative}.live-status-result-section{background:radial-gradient(circle at 80% 0%, #ffffff1a, transparent 28%), var(--bg-primary);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;flex:auto;width:100%;min-height:0;padding-bottom:24px;overflow:hidden auto}.live-status-result-section::-webkit-scrollbar{width:6px}.live-status-result-section::-webkit-scrollbar-track{background:0 0}.live-status-result-section::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.clay-card{background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary,var(--surface)) 100%);border:1px solid var(--border-color);color:var(--text-primary);box-shadow:8px 8px 18px #0f172a1a}.live-status-search{border-radius:22px;padding:16px}.search-heading,.card-heading,.train-header,.position-main,.progress-label-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.search-heading-content{align-items:center;gap:9px;min-width:0;display:flex}.search-icon-box{background:var(--bg-primary);width:40px;min-width:40px;height:40px;color:var(--primary-color);border:1px solid var(--border-color);border-radius:13px;justify-content:center;align-items:center;display:flex;box-shadow:inset 4px 4px 10px #0f172a14}.search-icon-box svg{font-size:20px}.search-title{color:var(--text-primary);line-height:1.15;font-size:.92rem!important;font-weight:800!important}.search-subtitle{color:var(--text-secondary);margin-top:2px!important;font-size:.67rem!important}.refresh-button{flex-shrink:0;width:38px;height:38px;background:var(--surface)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;box-shadow:5px 5px 10px #0f172a1a!important}.refresh-button:hover{background:var(--surface)!important;color:var(--primary-color)!important;box-shadow:7px 7px 13px #0f172a1f!important}.search-form{grid-template-columns:minmax(0,1fr) 190px auto;align-items:start;gap:10px;margin-top:14px;display:grid;position:relative}.search-form .MuiFormControl-root{min-width:0}.search-form .MuiOutlinedInput-root{box-sizing:border-box;background:var(--surface);min-width:0;height:40px;color:var(--text-primary);border-radius:13px}.search-form .MuiOutlinedInput-root:hover{box-shadow:5px 5px 10px #0f172a14}.search-form .MuiOutlinedInput-root.Mui-focused{box-shadow:inset 3px 3px 7px #0f172a12}.search-form .MuiOutlinedInput-notchedOutline,.search-form .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--border-color)}.search-form .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color)}.search-form .MuiInputLabel-root{color:var(--text-secondary)}.search-form .MuiInputLabel-root.Mui-focused{color:var(--primary-color)}.search-form .MuiInputBase-input{color:var(--text-primary)}.search-form .MuiInputBase-input::placeholder{color:var(--text-muted);opacity:1}.input-icon{color:var(--text-secondary);margin-right:8px;font-size:18px}.journey-date-field .MuiOutlinedInput-root{box-sizing:border-box;cursor:pointer;width:100%;min-width:0;height:40px}.journey-date-field .MuiOutlinedInput-input{box-sizing:border-box;width:100%;min-width:0;height:40px;color:var(--text-primary);letter-spacing:.3px;cursor:text;padding:8px 8px 8px 14px}.journey-date-field .MuiOutlinedInput-input::placeholder{color:var(--text-secondary);opacity:1}.journey-date-field .MuiInputLabel-root{color:var(--text-secondary)}.journey-date-field .MuiInputLabel-root.Mui-focused{color:var(--primary-color,#2563eb)}.journey-date-field .MuiOutlinedInput-notchedOutline{border-color:var(--border-color,#94a3b859)}.journey-date-field .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline,.journey-date-field .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color,#2563eb)}.journey-date-field .MuiInputAdornment-root{align-items:center;height:40px;margin:0;display:flex}.calendar-icon-svg{z-index:1;pointer-events:none;display:block;position:relative;color:var(--primary-color,#2563eb)!important;font-size:20px!important}.search-button{align-self:start;text-transform:none!important;background:var(--primary-color)!important;color:#fff!important;border-radius:13px!important;min-width:130px!important;height:40px!important;font-weight:700!important;box-shadow:5px 5px 10px #0f172a1a!important}.search-button:hover{background:var(--primary-color)!important;box-shadow:7px 7px 13px #0f172a1f!important}.search-button:active{box-shadow:inset 3px 3px 7px #0f172a1f!important}.search-button.Mui-disabled{opacity:.55}.status-alert{margin-top:10px;border-radius:12px!important}.loading-card,.empty-state{border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:180px;display:flex}.loading-card .MuiCircularProgress-root{color:var(--primary-color)}.loading-card .MuiTypography-root{color:var(--text-secondary);font-size:.68rem}.train-header{border-radius:22px;padding:16px}.train-header-main{align-items:center;gap:13px;min-width:0;display:flex}.train-icon-box,.position-icon,.warning-icon{background:var(--bg-primary);width:44px;min-width:44px;height:44px;color:var(--primary-color);border:1px solid var(--border-color);border-radius:14px;justify-content:center;align-items:center;display:flex;box-shadow:inset 4px 4px 10px #0f172a14}.train-icon-box svg{font-size:24px}.train-title-area{min-width:0}.train-number{color:var(--text-primary);font-size:.92rem!important;font-weight:800!important}.train-name{color:var(--text-primary);margin-top:2px!important;font-size:.74rem!important;font-weight:700!important}.train-meta{color:var(--text-secondary);margin-top:2px!important;font-size:.6rem!important}.live-chip,.actual-chip,.current-live-chip{background:color-mix(in srgb, var(--primary-color) 10%, var(--surface))!important;color:var(--primary-color)!important;border:1px solid color-mix(in srgb, var(--primary-color) 20%, var(--border-color))!important;font-weight:700!important}.live-chip svg,.actual-chip svg,.current-live-chip svg{font-size:13px!important}.status-chip{background:var(--bg-tertiary)!important;color:var(--text-primary)!important;font-weight:700!important}.delay-box{background:var(--surface);border:1px solid var(--border-color);border-radius:13px;align-items:center;gap:9px;padding:9px 12px;display:flex;box-shadow:5px 5px 10px #0f172a14}.delay-box>svg{color:var(--text-secondary);font-size:19px}.delay-label,.speed-label,.small-label,.stat-label{color:var(--text-secondary);display:block;font-size:.58rem!important}.delay-value,.speed-value,.stat-value{color:var(--text-primary);font-size:.72rem!important;font-weight:800!important}.delay-value.delayed,.delay-value.on-time{color:var(--primary-color)}.route-summary{border-radius:22px;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;padding:16px;display:grid}.route-station{min-width:0}.destination-station{text-align:right}.station-code{color:var(--text-primary);white-space:nowrap;text-align:center;box-shadow:none!important;font-size:.92rem!important;font-weight:800!important}.station-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;text-align:center;overflow:hidden;font-size:.62rem!important}.route-line{text-align:center}.route-line-top{color:var(--text-secondary);font-size:.58rem}.route-line-track{justify-content:center;align-items:center;margin:6px 0;display:flex}.route-dot{background:var(--text-secondary);border-radius:50%;flex-shrink:0;width:8px;height:8px}.route-dot.destination{background:var(--primary-color)}.route-track-line{background:var(--border-color);flex:1;max-width:80px;height:2px}.route-line-track svg{color:var(--primary-color);margin:0 3px;font-size:17px}.route-duration{color:var(--text-secondary);font-size:.58rem!important}.live-position,.exceptions-card,.route-card,.train-stats{border-radius:22px;padding:16px}.section-title{color:var(--text-primary);font-size:.8rem!important;font-weight:800!important}.section-caption{color:var(--text-secondary);margin-top:2px!important;font-size:.58rem!important}.position-main{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:15px;justify-content:flex-start;margin-top:14px;padding:12px;box-shadow:inset 4px 4px 10px #0f172a12}.position-details{min-width:0}.position-station{color:var(--text-primary);font-size:.78rem!important;font-weight:800!important}.position-status{color:var(--text-secondary);font-size:.58rem!important}.speed-box{align-items:center;gap:8px;margin-left:auto;display:flex}.speed-box>svg{color:var(--primary-color);font-size:20px}.progress-wrapper{margin-top:14px}.progress-label-row{color:var(--text-secondary);margin-bottom:6px;font-size:.58rem}.progress-bar{border-radius:10px;background:var(--bg-tertiary)!important;height:7px!important}.progress-bar .MuiLinearProgress-bar{background:var(--primary-color)!important}.position-stations{grid-template-columns:1fr 1fr;gap:20px;margin-top:14px;display:grid}.next-station{text-align:right}.small-value{color:var(--text-primary);margin-top:2px!important;font-size:.62rem!important;font-weight:700!important}.distance-label{color:var(--text-secondary);font-size:.58rem!important}.warning-icon{width:38px;min-width:38px;height:38px}.exception-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:13px;margin-top:14px;padding:12px;box-shadow:5px 5px 10px #0f172a12}.exception-type{color:var(--primary-color);letter-spacing:.5px;font-size:.58rem!important;font-weight:800!important}.exception-message{color:var(--text-primary);margin-top:3px!important;font-size:.66rem!important;font-weight:600!important}.exception-route{color:var(--text-secondary);margin-top:5px!important;font-size:.6rem!important}.route-list{margin-top:16px}.route-item{min-height:92px;display:flex}.timeline{flex-direction:column;align-items:center;width:25px;min-width:25px;display:flex}.timeline-dot{background:var(--border-color);width:9px;height:9px;box-shadow:0 0 0 4px var(--surface), 1px 1px 4px #0f172a14;z-index:1;border-radius:50%;margin-top:5px}.timeline-complete{background:var(--text-secondary)}.timeline-current{background:var(--primary-color);box-shadow:0 0 0 4px var(--surface), 0 0 0 7px color-mix(in srgb, var(--primary-color) 16%, transparent);animation:1.8s ease-in-out infinite live-pulse}.timeline-line{background:var(--border-color);flex:1;width:2px;margin-top:3px}.route-station-info{flex:1;min-width:0;padding:0 0 14px 8px}.route-item-current{background:linear-gradient(145deg, var(--surface) 0%, var(--bg-secondary) 100%);border:1px solid color-mix(in srgb, var(--primary-color) 18%, var(--border-color));box-shadow:6px 6px 14px #0f172a1a, inset 0 0 0 1px color-mix(in srgb, var(--primary-color) 5%, transparent);border-radius:14px;margin:-5px -7px 0;padding:8px 7px 0}.route-station-top{align-items:flex-start}.route-station-title{align-items:center;gap:7px;min-width:0;display:flex}.route-code{color:var(--text-primary);font-size:.62rem!important;font-weight:800!important}.route-name{color:var(--text-secondary);margin-top:1px!important;font-size:.62rem!important}.current-live-chip{letter-spacing:.3px;flex-shrink:0;height:21px!important;font-size:.5rem!important}.station-status{flex-shrink:0;height:22px!important;font-size:.5rem!important;font-weight:700!important}.station-departed{background:var(--bg-tertiary)!important;color:var(--text-primary)!important}.station-arrived{background:color-mix(in srgb, var(--primary-color) 10%, var(--surface))!important;color:var(--primary-color)!important}.station-upcoming{background:var(--bg-secondary)!important;color:var(--text-primary)!important}.route-time-row{gap:25px;margin-top:9px;display:flex}.time-value{color:var(--text-primary);margin-top:2px!important;font-size:.58rem!important;font-weight:700!important}.route-distance{text-align:right;margin-left:auto}.train-stats{justify-content:space-around;align-items:center;gap:15px}.stat-item{text-align:center;flex:1}.empty-state svg{color:var(--primary-color);font-size:42px}.empty-title{color:var(--text-primary);font-size:.8rem!important;font-weight:800!important}.empty-description{color:var(--text-secondary);text-align:center;font-size:.62rem!important}.last-updated{color:var(--text-secondary);justify-content:space-between;gap:10px;padding:0 5px 4px;display:flex}.last-updated p{font-size:.55rem!important}.actual-time{transition:color .2s,background-color .2s;font-weight:800!important}.actual-time.time-delay{background:#d977061a;border-radius:5px;padding:2px 5px;color:var(--warning-color,#d97706)!important}.actual-time.time-on-time{background:#16a34a14;border-radius:5px;padding:2px 5px;color:var(--success-color,#16a34a)!important}.actual-time.time-early{background:#2563eb14;border-radius:5px;padding:2px 5px;color:var(--primary-color)!important}.delay-box-warning{border-color:var(--warning-color,#d97706)!important;background:#d9770614!important}.delay-box-warning .delay-value.delayed{color:var(--warning-color,#d97706)!important;font-weight:800!important}@media (width<=700px){.live-status-search,.train-header,.route-summary,.live-position,.exceptions-card,.route-card,.train-stats{border-radius:16px}.live-train-status{--app-header-height:0px}.live-status-search{padding:14px}.search-title{font-size:.8rem!important}.search-subtitle{font-size:.58rem!important}.search-form{grid-template-columns:1fr}.search-form .MuiOutlinedInput-root,.journey-date-field .MuiOutlinedInput-root{height:40px}.journey-date-field .MuiOutlinedInput-input{height:40px;padding:8px 8px 8px 12px}.journey-date-field .MuiInputAdornment-root{height:40px}.route-line-top>.MuiTypography-root{font-size:.65rem!important}.route-duration.MuiTypography-root{font-size:.85rem!important}.search-button{width:100%;height:40px!important}.train-header{flex-direction:column;align-items:flex-start}.delay-box{box-sizing:border-box;width:100%}.route-summary{grid-template-columns:1fr auto 1fr;gap:8px;padding:14px}.route-station{text-align:center;min-width:0}.destination-station,.route-line{text-align:center}.station-code{white-space:nowrap;text-align:center}.station-name{text-align:center;max-width:100%}.position-main{flex-wrap:wrap;align-items:flex-start}.speed-box{width:100%;margin-left:0;padding-left:56px}.position-stations{gap:10px}.route-time-row{flex-wrap:wrap;gap:15px}.route-distance{text-align:left;margin-left:0}.route-station-top{gap:8px}.route-station-title{flex-wrap:wrap}.train-stats{grid-template-columns:1fr 1fr;display:grid}.train-stats .MuiDivider-root{display:none}.stat-item{padding:5px}.last-updated{flex-direction:column;gap:0}}@media (width<=400px){.search-heading{align-items:flex-start}.refresh-button{width:34px;height:34px}.train-number{font-size:.8rem!important}.train-name{font-size:.68rem!important}.position-icon,.train-icon-box{width:40px;min-width:40px;height:40px}.station-code{font-size:.8rem!important}.current-live-chip{height:20px!important;font-size:.46rem!important}}.journey-date-picker-wrapper{width:100%;min-width:0;position:relative}.journey-date-field{width:100%;min-width:0}.journey-date-field .MuiOutlinedInput-root{box-sizing:border-box;width:100%;min-width:0;height:40px}.journey-date-field .MuiOutlinedInput-input{box-sizing:border-box;height:40px;color:var(--text-primary);cursor:text;padding:8px 8px 8px 14px}.journey-date-field .MuiInputAdornment-root{height:40px;margin:0}.calendar-icon-svg{cursor:pointer;display:block;color:var(--primary-color,#2563eb)!important;font-size:20px!important}.calendar-icon-svg:hover{opacity:.75}.journey-date-field .MuiFormHelperText-root{margin-left:0;margin-right:0;line-height:1.3}.pnr-status{width:100%;height:100dvh;min-height:0;color:var(--text-primary);background:radial-gradient(circle at 15% 10%, #ffffff1f, transparent 28%), radial-gradient(circle at 90% 20%, #ffffff14, transparent 24%), var(--bg-primary);flex-direction:column;transition:background-color .25s,color .25s;display:flex;overflow:hidden}.pnr-status-header{z-index:10;background:linear-gradient(135deg, var(--primary-color) 0%, color-mix(in srgb, var(--primary-color) 82%, #fff) 100%);flex:none;width:100%;position:relative;box-shadow:0 14px 30px #0f172a1f}.pnr-status-header:before{content:"";pointer-events:none;background:#ffffff14;border-radius:50%;width:240px;height:240px;position:absolute;top:-150px;right:-70px}.pnr-status-form-section{z-index:1;width:100%;position:relative}.pnr-status-result-section{background:radial-gradient(circle at 80% 0%, #ffffff1a, transparent 28%), var(--bg-primary);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;flex:auto;width:100%;min-height:0;overflow:hidden auto}.pnr-status-result-section::-webkit-scrollbar{width:6px}.pnr-status-result-section::-webkit-scrollbar-track{background:0 0}.pnr-status-result-section::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.pnr-status-result-section,.pnr-status-form-section{width:100%}.pnr-status-form{border:1px solid var(--border-color);width:100%;padding:18px;background:var(--bg-primary)!important;box-shadow:none!important;border-radius:20px!important}.pnr-status-form-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.pnr-status-form-icon{width:44px;height:44px;color:var(--primary-color);background:var(--bg-primary);border-radius:28%;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 3px 3px 7px #0f172a1a,inset -3px -3px 7px #ffffffb3}.pnr-status-form-icon svg{font-size:22px}.pnr-status-form-title{color:var(--text-primary);font-size:.95rem!important;font-weight:750!important;line-height:1.2!important}.pnr-status-form-subtitle{color:var(--text-secondary);margin-top:3px!important;font-size:.72rem!important;font-weight:500!important}.pnr-status-form-content{width:100%}.pnr-status-loading,.pnr-status-message{border:1px solid var(--border-color);flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:180px;padding:20px;display:flex;background:var(--bg-primary)!important;border-radius:20px!important;box-shadow:7px 7px 16px #0f172a1a,-4px -4px 10px #ffffffb3!important}.pnr-status-loading p,.pnr-status-message p{margin:0}.pnr-status-loading .MuiTypography-root,.pnr-status-message .MuiTypography-root{color:var(--text-secondary);font-size:.78rem;font-weight:600}.pnr-status-result{flex-direction:column;gap:14px;display:flex}.pnr-summary-card,.pnr-passenger-card{border:1px solid var(--border-color);width:100%;padding:16px;background:var(--bg-primary)!important;border-radius:20px!important;box-shadow:7px 7px 16px #0f172a1a,-4px -4px 10px #ffffffb3!important}.pnr-summary-header{align-items:center;gap:10px;display:flex}.pnr-result-icon{width:42px;height:42px;color:var(--primary-color);background:var(--bg-primary);border-radius:28%;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 3px 3px 7px #0f172a1a,inset -3px -3px 7px #ffffffb3}.pnr-result-icon svg{font-size:21px}.pnr-summary-title{flex:1;min-width:0}.pnr-summary-title p{color:var(--text-secondary);margin:0 0 3px;font-size:.65rem;font-weight:600}.pnr-summary-title strong{letter-spacing:.03em;color:var(--text-primary);font-size:.9rem;line-height:1.2;display:block}.pnr-chart-status{color:var(--text-secondary);background:var(--bg-primary);border-radius:10px;flex-shrink:0;padding:6px 9px;font-size:.66rem;font-weight:700;box-shadow:3px 3px 7px #0f172a17,-2px -2px 5px #ffffffb3}.pnr-chart-status.prepared{color:var(--primary-color)}.pnr-train-section{align-items:center;gap:10px;margin-top:18px;display:flex}.pnr-train-icon{background:var(--bg-primary);width:38px;height:38px;color:var(--primary-color);border-radius:25%;flex-shrink:0;place-items:center;display:grid;box-shadow:inset 3px 3px 6px #0f172a17,inset -3px -3px 6px #ffffffb3}.pnr-train-icon svg{font-size:20px}.pnr-train-number{color:var(--text-secondary);font-size:.72rem!important;font-weight:700!important}.pnr-train-name{color:var(--text-primary);margin-top:2px!important;font-size:.88rem!important;font-weight:750!important}.pnr-route{grid-template-columns:1fr 80px 1fr;align-items:center;gap:10px;margin-top:18px;display:grid}.pnr-route-point{min-width:0}.pnr-route-point.destination{text-align:right}.pnr-route-point p{text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);margin:2px 0 0;font-size:.7rem;overflow:hidden}.pnr-route-code{color:var(--text-primary);font-size:.9rem!important;font-weight:750!important}.pnr-route-line{background:var(--border-color);height:2px;position:relative}.pnr-route-line:before,.pnr-route-line:after{content:"";background:var(--primary-color);border-radius:50%;width:7px;height:7px;position:absolute;top:50%;transform:translateY(-50%)}.pnr-route-line:before{left:0}.pnr-route-line:after{right:0}.pnr-info-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px;display:grid}.pnr-info-item{background:var(--bg-primary);border-radius:13px;align-items:center;gap:8px;min-width:0;padding:10px;display:flex;box-shadow:inset 2px 2px 5px #0f172a12,inset -2px -2px 5px #ffffffa6}.pnr-info-item>svg{color:var(--primary-color);flex-shrink:0;font-size:18px}.pnr-info-item span{color:var(--text-secondary);font-size:.62rem;font-weight:550;display:block}.pnr-info-item strong{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);margin-top:2px;font-size:.7rem;font-weight:700;display:block;overflow:hidden}.pnr-info-label{width:18px;height:18px;color:var(--primary-color);border-radius:50%;flex-shrink:0;place-items:center;font-size:.68rem;font-weight:750;display:grid;box-shadow:inset 2px 2px 4px #0f172a14,inset -2px -2px 4px #ffffffb3}.pnr-section-title{align-items:center;gap:9px;display:flex}.pnr-section-icon{width:38px;height:38px;color:var(--primary-color);background:var(--bg-primary);border-radius:25%;place-items:center;display:grid;box-shadow:inset 3px 3px 6px #0f172a17,inset -3px -3px 6px #ffffffb3}.pnr-section-icon svg{font-size:20px}.pnr-section-title p{color:var(--text-primary);margin:0;font-size:.8rem;font-weight:750}.pnr-section-title span{color:var(--text-secondary);margin-top:2px;font-size:.65rem;font-weight:500;display:block}.pnr-passenger-list{flex-direction:column;gap:8px;margin-top:14px;display:flex}.pnr-passenger-row{background:var(--bg-primary);border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex;box-shadow:inset 2px 2px 5px #0f172a12,inset -2px -2px 5px #ffffffa6}.pnr-passenger-number{width:30px;height:30px;color:var(--primary-color);border-radius:10px;flex-shrink:0;place-items:center;font-size:.7rem;font-weight:750;display:grid;box-shadow:3px 3px 6px #0f172a14,-2px -2px 5px #ffffffb3}.pnr-passenger-details{flex:1;min-width:0}.pnr-passenger-details>p{color:var(--text-primary);margin:0 0 7px;font-size:.72rem;font-weight:700}.pnr-status-values{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.pnr-status-values span{color:var(--text-secondary);font-size:.6rem;font-weight:500;display:block}.pnr-status-values strong{color:var(--text-primary);margin-top:2px;font-size:.68rem;font-weight:700;display:block}.pnr-status-values strong.confirmed{color:var(--primary-color)}@media (width<=600px){.pnr-status-form,.pnr-summary-card,.pnr-passenger-card{padding:12px;box-shadow:none!important;border-radius:17px!important}.pnr-status-form-header{margin-bottom:12px}.pnr-status-form-icon{width:38px;height:38px}.pnr-status-form-icon svg{font-size:20px}.pnr-status-form-title{font-size:.86rem!important}.pnr-status-form-subtitle{font-size:.66rem!important}.pnr-chart-status{text-align:center;max-width:105px;font-size:.58rem}.pnr-route{grid-template-columns:1fr 45px 1fr;gap:6px}.pnr-info-grid{grid-template-columns:1fr;gap:7px}.pnr-info-item{padding:8px}.pnr-passenger-row{align-items:flex-start}.pnr-status-values{gap:10px 18px}}.pnr-status-values strong.status-wl{color:var(--warning-color,#f59e0b)}.pnr-status-values strong.status-cnf{color:var(--success-color,#22c55e)}.pnr-status-values strong.status-rac{color:#94a3b8}.pnr-status-values strong.status-highlight{color:var(--primary-color)}.pnr-prediction-header{justify-content:space-between;align-items:center;display:flex}.pnr-prediction-close{width:28px;height:28px;min-width:28px!important;color:inherit!important;padding:0!important}.pnr-prediction-close:hover{background:0 0!important}.prediction-high{color:#2e7d32!important}.prediction-warning{color:#ed6c02!important}.prediction-low{color:#d32f2f!important}.pnr-status-icon{font-size:18px!important}.pnr-number-status{align-items:center;gap:8px;display:flex}.pnr-status-list{align-items:center;gap:4px;display:flex}.pnr-status-list svg{font-size:17px}.status-confirmed{color:#2e7d32}.status-partial,.status-waitlist,.status-rac{color:#ed6c02}.status-cancelled{color:#d32f2f}.status-inactive{color:var(--text-secondary);opacity:.3}.pnr-status-guide{margin-top:24px}.pnr-guide-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:12px;overflow:hidden}.pnr-guide-section.open{border-color:#d9dee7}.pnr-guide-section-header{color:#1f2937;text-align:left;cursor:pointer;width:100%;min-height:58px;font:inherit;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.pnr-guide-section-header:hover{background:#fafbfc}.pnr-guide-section-title{font-size:16px;font-weight:600;line-height:1.45}.pnr-guide-section-icon{color:#6b7280;flex-shrink:0;transition:transform .2s}.pnr-guide-section.open .pnr-guide-section-icon{transform:rotate(180deg)}.pnr-guide-section-content{color:#4b5563;padding:0 18px 20px;font-size:15px;line-height:1.7}.pnr-guide-section-content p{margin:0 0 14px}.pnr-guide-section-content p:last-child{margin-bottom:0}.pnr-guide-section-content h3{color:#1f2937;margin:20px 0 8px;font-size:15px;font-weight:600;line-height:1.5}.pnr-guide-section-content h3:first-child{margin-top:0}.pnr-guide-section-content ul,.pnr-guide-section-content ol{margin:8px 0 14px;padding-left:22px}.pnr-guide-section-content li{margin-bottom:6px}.pnr-guide-section-content strong{color:#1f2937;font-weight:600}.pnr-guide-section-content table{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px}.pnr-guide-section-content th,.pnr-guide-section-content td{text-align:left;vertical-align:top;border:1px solid #e5e7eb;padding:9px 11px}.pnr-guide-section-content th{color:#1f2937;background:#f8fafc;font-weight:600}.pnr-guide-section-content code{color:#374151;background:#f3f4f6;border-radius:4px;padding:2px 5px;font-size:13px}@media (width<=600px){.pnr-guide-section{border-radius:10px;margin-bottom:10px}.pnr-guide-section-header{min-height:54px;padding:14px 15px}.pnr-guide-section-title{font-size:15px}.pnr-guide-section-content{padding:0 15px 18px;font-size:14px;line-height:1.65}.pnr-guide-section-content h3{font-size:14px}.pnr-guide-section-content table{display:block;overflow-x:auto}}.pnr-status{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.pnr-status-header{flex:none;min-height:0}.pnr-status-form-section{flex:none;min-height:0;overflow:hidden}.pnr-status-result-section{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1 1 0;min-height:0;overflow:hidden auto}.pnr-status-form{padding:16px!important}.pnr-status-form-header{margin-bottom:14px}.pnr-status-form-content .MuiFormHelperText-root{margin-bottom:0}.pnr-status-recent-wrap{min-width:0;margin-top:12px}.pnr-status-recent-label{color:var(--text-secondary)!important;margin-bottom:6px!important;font-size:.7rem!important;font-weight:600!important}.pnr-status-recent{scrollbar-width:none;flex-wrap:nowrap;gap:6px;padding-bottom:4px;display:flex;overflow:auto hidden}.pnr-status-recent::-webkit-scrollbar{display:none}.pnr-status-recent .MuiChip-root{flex-shrink:0}@media (width<=600px){.pnr-status-form{padding:12px!important}.pnr-status-form-header{margin-bottom:10px}.pnr-status-recent-wrap{margin-top:10px}}html,body,#root{min-height:100%}.live-board-page{display:flow-root;box-sizing:border-box!important;background:0 0!important;width:100%!important;min-height:100vh!important}.live-board-container{width:78%;min-width:0;max-width:1200px;margin-inline:auto;background:0 0!important}.live-board-results-wrapper{width:100%;min-width:0;background:0 0!important}@media screen and (width>=900px){.live-board-page .live-board-back-button{display:none!important}}.live-board-results-wrapper{background:0 0!important}.live-board-heading{align-items:center;gap:12px;margin-bottom:20px;display:flex}.live-board-back-button,.live-board-refresh-button{flex-shrink:0;color:var(--text-primary,#172b4d)!important;background:var(--surface,#f3f5fa)!important;border:1px solid var(--border-color,#dce2ec)!important;border-radius:12px!important}.live-board-heading-icon{border:1px solid var(--border-color,#dce2ec);background:var(--surface,#f3f5fa);width:46px;height:46px;color:var(--primary-color,#123f85);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.live-board-heading-icon svg{font-size:25px}.live-board-heading-copy{flex:1;min-width:0}.live-board-title{color:var(--text-primary,#172b4d);font-size:clamp(20px,3vw,26px)!important;font-weight:800!important;line-height:1.25!important}.live-board-subtitle{color:var(--text-secondary,#64748b);margin-top:4px!important;font-size:13px!important}.live-board-search{border:1px solid var(--border-color,#dce2ec);background:var(--surface,#f3f5fa);border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;margin-bottom:20px;padding:16px;display:grid;box-shadow:inset 2px 2px 5px #0f172a0a}.live-board-station-field{width:100%}.live-board-station-field .MuiOutlinedInput-root{background:var(--bg-primary,#f3f5fa);min-height:54px;color:var(--text-primary,#172b4d);border-radius:12px}.live-board-station-field .MuiOutlinedInput-notchedOutline{border-color:var(--border-color,#dce2ec)}.live-board-station-field .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color,#123f85)}.live-board-station-field .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color,#123f85);border-width:1px}.live-board-station-field .MuiInputLabel-root{color:var(--text-secondary,#64748b)}.live-board-station-field .MuiInputLabel-root.Mui-focused{color:var(--primary-color,#123f85)}.live-board-station-field .MuiFormHelperText-root{margin-left:2px}.live-board-input-icon{color:var(--text-secondary,#64748b);margin-right:8px}.live-board-search-button{background:var(--primary-color,#123f85)!important;color:#fff!important;text-transform:none!important;min-height:54px!important;box-shadow:none!important;border-radius:12px!important;padding:0 22px!important;font-weight:700!important}.live-board-search-button:hover{filter:brightness(1.08);box-shadow:none!important}.live-board-search-button.Mui-disabled{opacity:.55;color:#fff!important}.live-board-station-option{align-items:center!important;gap:10px!important;padding:10px 14px!important;display:flex!important}.live-board-station-option>svg{color:var(--primary-color,#123f85);flex-shrink:0}.live-board-station-option>div{flex-direction:column;gap:3px;min-width:0;display:flex}.live-board-station-option span{font-size:14px;font-weight:600}.live-board-station-option small{color:var(--text-secondary,#64748b);font-size:12px}.live-board-alert{border-radius:12px;margin-bottom:16px}.live-board-loading,.live-board-empty,.live-board-no-trains{border:1px solid var(--border-color,#dce2ec);background:var(--surface,#f3f5fa);text-align:center;min-height:180px;color:var(--text-secondary,#64748b);border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.live-board-loading .MuiTypography-root,.live-board-empty-copy{color:var(--text-secondary,#64748b);font-size:13px}.live-board-empty>svg,.live-board-no-trains>svg{color:var(--primary-color,#123f85);font-size:32px}.live-board-empty-title{color:var(--text-primary,#172b4d);font-size:17px!important;font-weight:750!important}.live-board-empty-copy{max-width:420px;line-height:1.6!important}.live-board-results{flex-direction:column;gap:16px;display:flex}.live-board-station-summary{border:1px solid var(--border-color,#dce2ec);background:var(--surface,#f3f5fa);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.live-board-station-name{align-items:center;gap:12px;min-width:0;display:flex}.live-board-station-name>svg{color:var(--primary-color,#123f85);flex-shrink:0}.live-board-station-title{color:var(--text-primary,#172b4d);font-size:17px!important;font-weight:800!important}.live-board-station-code{color:var(--text-secondary,#64748b);margin-top:3px!important;font-size:12px!important}.live-board-count-chip{flex-shrink:0;background:var(--bg-primary,#f3f5fa)!important;color:var(--primary-color,#123f85)!important;border:1px solid var(--border-color,#dce2ec)!important;font-weight:700!important}.live-board-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.live-board-stat{border:1px solid var(--border-color,#dce2ec);background:var(--surface,#f3f5fa);border-radius:14px;flex-direction:column;gap:8px;min-width:0;padding:14px 16px;display:flex}.live-board-stat span{color:var(--text-secondary,#64748b);font-size:12px}.live-board-stat strong{color:var(--text-primary,#172b4d);font-size:23px;font-weight:800}.live-board-results-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.live-board-results-heading h2{color:var(--text-primary,#172b4d);font-size:17px;font-weight:800}.live-board-results-heading .MuiTypography-root:last-child{color:var(--text-secondary,#64748b);text-align:right;font-size:12px}.live-board-refreshing{color:var(--text-secondary,#64748b);font-size:12px!important}.live-board-train-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.live-board-train-card{min-width:0;transition:border-color .18s,transform .18s;overflow:hidden;border:1px solid var(--border-color,#dce2ec)!important;background:var(--surface,#f3f5fa)!important;box-shadow:none!important;border-radius:16px!important}.live-board-train-card:hover{transform:translateY(-1px);border-color:var(--primary-color,#123f85)!important}.live-board-train-action{height:100%;color:inherit!important}.live-board-train-content{padding:16px!important}.live-board-train-top,.live-board-train-identity{align-items:center;gap:10px;display:flex}.live-board-train-top{justify-content:space-between}.live-board-train-identity{flex:1;min-width:0}.live-board-train-icon{border:1px solid var(--border-color,#dce2ec);background:var(--bg-primary,#f3f5fa);width:40px;height:40px;color:var(--primary-color,#123f85);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.live-board-train-copy{min-width:0}.live-board-train-name{color:var(--text-primary,#172b4d);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:14px!important;font-weight:800!important}.live-board-train-number{color:var(--text-secondary,#64748b);margin-top:3px!important;font-size:12px!important}.live-board-status{flex-shrink:0;max-width:45%;border-radius:8px!important;height:auto!important;font-size:11px!important;font-weight:700!important}.live-board-status .MuiChip-label{text-overflow:ellipsis;padding:5px 8px;overflow:hidden}.live-board-status-on-time,.live-board-status-arrived{color:#16803d!important;background:#16a34a1f!important}.live-board-status-delayed{color:#b45309!important;background:#d977061f!important}.live-board-status-upcoming{color:#2563eb!important;background:#2563eb1a!important}.live-board-status-departed{color:var(--text-secondary,#64748b)!important;background:#64748b1f!important}.live-board-status-cancelled{color:#dc2626!important;background:#dc26261a!important}.live-board-status-unknown{background:var(--bg-primary,#f3f5fa)!important;color:var(--text-secondary,#64748b)!important}.live-board-divider{border-color:var(--border-color,#dce2ec)!important;margin:14px 0!important}.live-board-times{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.live-board-time-item{min-width:0}.live-board-time-label{color:var(--text-secondary,#64748b);font-size:11px!important}.live-board-time-value{color:var(--text-primary,#172b4d);font-variant-numeric:tabular-nums;margin-top:4px!important;font-size:21px!important;font-weight:800!important}.live-board-time-expected{color:var(--text-secondary,#64748b);overflow-wrap:anywhere;margin-top:4px!important;font-size:11px!important}.live-board-train-footer{border-top:1px solid var(--border-color,#dce2ec);gap:10px;margin-top:14px;padding-top:12px}.live-board-delay{min-width:0;color:var(--text-secondary,#64748b);align-items:center;gap:6px;display:flex}.live-board-delay svg{flex-shrink:0;font-size:16px}.live-board-delay .MuiTypography-root{overflow-wrap:anywhere;font-size:12px}.live-board-platform{border:1px solid var(--border-color,#dce2ec);background:var(--bg-primary,#f3f5fa);color:var(--text-secondary,#64748b);border-radius:8px;flex-shrink:0;padding:5px 9px;font-size:12px!important}.live-board-platform strong{color:var(--primary-color,#123f85)}@media (width<=700px){.live-board-page{padding:12px 10px 24px}.live-board-heading{gap:9px;margin-bottom:14px}.live-board-back-button{width:38px;height:38px}.live-board-heading-icon{border-radius:11px;width:38px;height:38px}.live-board-heading-icon svg{font-size:21px}.live-board-title{font-size:19px!important}.live-board-subtitle{font-size:11px!important}.live-board-refresh-button{width:38px;height:38px}.live-board-search{border-radius:14px;grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:14px;padding:12px}.live-board-station-field .MuiOutlinedInput-root{min-height:48px}.live-board-search-button{width:100%;min-height:44px!important}.live-board-results{gap:12px}.live-board-station-summary{padding:12px}.live-board-station-title{font-size:15px!important}.live-board-stats{gap:8px}.live-board-stat{border-radius:12px;gap:6px;padding:10px}.live-board-stat span{font-size:10px}.live-board-stat strong{font-size:20px}.live-board-results-heading{flex-direction:column;align-items:flex-start;gap:4px}.live-board-results-heading h2{font-size:15px}.live-board-train-list{grid-template-columns:minmax(0,1fr);gap:10px}.live-board-train-content{padding:13px!important}.live-board-train-name{font-size:13px!important}.live-board-time-value{font-size:19px!important}}@media (width<=360px){.live-board-heading-icon{display:none}.live-board-subtitle{max-width:180px}.live-board-status{max-width:42%;font-size:10px!important}.live-board-train-top{gap:6px}.live-board-times{gap:8px}}.lsb-results{width:100%;min-width:0;color:inherit;margin-top:16px}.lsb-results-header{margin-bottom:14px}.lsb-results-title{font-size:18px!important;font-weight:800!important;line-height:1.3!important}.lsb-results-subtitle{opacity:.72;overflow-wrap:anywhere;margin-top:3px!important;font-size:12px!important}.lsb-results-summary{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.lsb-count-chip{font-size:11px!important;font-weight:700!important}.lsb-updated{opacity:.7;font-size:10px!important}.lsb-train-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:12px;display:grid}.lsb-train-card{min-width:0;height:100%;transition:border-color .18s,transform .18s;background:var(--lsb-card-bg,#80808009)!important;border-color:#8080803d!important;border-radius:12px!important}.lsb-train-card:hover{transform:translateY(-2px);border-color:#1976d28c!important}.lsb-train-card-content{flex-direction:column;gap:12px;height:100%;display:flex;padding:13px!important}.lsb-train-heading{min-width:0}.lsb-train-identity{flex:1;min-width:0}.lsb-train-number{letter-spacing:.4px;color:#1976d2;font-size:11px!important;font-weight:800!important}.lsb-train-name{overflow-wrap:anywhere;margin-top:3px!important;font-size:13px!important;font-weight:750!important;line-height:1.4!important}.lsb-train-type{opacity:.68;margin-top:3px!important;font-size:10px!important}.lsb-platform{text-align:center;background:#80808017;border-radius:9px;flex-shrink:0;min-width:48px;padding:7px}.lsb-field-label{opacity:.7;font-size:10px!important;font-weight:650!important}.lsb-platform-value{margin-top:2px!important;font-size:17px!important;font-weight:800!important;line-height:1.2!important}.lsb-terminal-chip{align-self:flex-start;height:22px!important;font-size:10px!important}.lsb-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:auto;display:grid}.lsb-time-cell{background:#80808012;border-radius:9px;min-width:0;padding:10px}.lsb-expected-time{font-variant-numeric:tabular-nums;margin-top:4px!important;font-size:21px!important;font-weight:800!important;line-height:1.25!important}.lsb-scheduled-time{opacity:.6;font-variant-numeric:tabular-nums;text-decoration:line-through;margin-top:2px!important;font-size:10px!important}.lsb-status-chip{max-width:100%;min-height:21px;margin-top:7px;height:auto!important;font-size:10px!important;font-weight:700!important}.lsb-status-chip .MuiChip-label{white-space:normal;overflow-wrap:anywhere;padding:3px 7px}.lsb-status-late{color:#d32f2f!important;background:#d32f2f1f!important}.lsb-status-early,.lsb-status-ontime{color:#2e7d32!important;background:#2e7d321f!important}.lsb-status-neutral{background:#8080801f!important}.lsb-delay-info{opacity:.8;font-size:11px!important}.lsb-empty-card{background:0 0!important;border-color:#80808040!important;border-radius:12px!important}.lsb-empty-title{font-weight:750!important}.lsb-empty-text{opacity:.7;margin-top:4px!important;font-size:12px!important}@media (width<=1100px){.lsb-train-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media (width<=600px){.lsb-results{margin-top:12px}.lsb-results-header{align-items:flex-start;margin-bottom:10px}.lsb-results-title{font-size:16px!important}.lsb-results-summary{justify-content:flex-start;gap:5px}.lsb-updated{width:100%}.lsb-train-grid{grid-template-columns:minmax(0,1fr);gap:9px}.lsb-train-card-content{gap:10px;padding:12px!important}.lsb-train-name{font-size:13px!important}.lsb-expected-time{font-size:20px!important}}@media (prefers-reduced-motion:reduce){.lsb-train-card{transition:none}.lsb-train-card:hover{transform:none}}.live-board-page{background:0 0!important}.live-board-container,.live-board-results-wrapper{width:100%;min-width:0;background:0 0!important}.live-board-container{max-width:1200px;margin-inline:auto}.live-board-header-search{box-sizing:border-box;border:1px solid #ffffff3d;border-radius:18px;width:100%;min-width:0;margin-bottom:16px;display:block;box-shadow:6px 6px 16px #0f172a1f;background:linear-gradient(135deg, var(--primary-color) 0%, color-mix(in srgb, var(--primary-color) 82%, #fff) 100%)!important}.live-board-header-search .live-board-heading{align-items:center;gap:10px;min-width:0;padding:0;display:flex;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;margin:0 0 12px!important}.live-board-header-search .live-board-heading-copy{flex:1;min-width:0}.live-board-header-search .live-board-title{font-size:clamp(17px,2.5vw,23px)!important;font-weight:800!important;line-height:1.25!important}.live-board-header-search .live-board-subtitle{color:#1e51a1!important;margin-top:4px!important;font-size:12px!important;line-height:1.45!important}.live-board-header-search .live-board-heading-icon{border-radius:12px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid;color:#fff!important;background:#ffffff26!important;border:1px solid #ffffff3d!important}.live-board-header-search .live-board-heading-icon svg{font-size:23px}.live-board-header-search .live-board-back-button,.live-board-header-search .live-board-refresh-button{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;color:#fff!important;background:#ffffff21!important;border:1px solid #ffffff45!important;border-radius:11px!important}.live-board-header-search .live-board-back-button:hover,.live-board-header-search .live-board-refresh-button:hover{background:#ffffff3b!important}.live-board-header-search .live-board-refresh-button.Mui-disabled{color:#ffffff7a!important}@media screen and (width>=900px){.live-board-header-search .live-board-back-button{display:none!important}}.live-board-header-search .live-board-search-container{width:100%;min-width:0;margin:0;padding:0;display:block;box-shadow:none!important;background:0 0!important;border:0!important}.live-board-header-search .live-board-search{box-sizing:border-box;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;width:100%;min-width:0;display:grid;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}.live-board-header-search .live-board-station-field{width:100%;min-width:0}.live-board-header-search .live-board-station-field .MuiOutlinedInput-root{border-radius:11px;min-height:48px;background:var(--surface,#f3f5fa)!important}.live-board-header-search .live-board-station-field .MuiOutlinedInput-notchedOutline{border-color:var(--border-color,#dce2ec)}.live-board-header-search .live-board-station-field .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline,.live-board-header-search .live-board-station-field .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--primary-color,#123f85)}.live-board-header-search .live-board-station-field .MuiInputLabel-root{color:var(--text-secondary,#64748b)}.live-board-header-search .live-board-station-field .MuiInputLabel-root.Mui-focused{color:var(--primary-color,#123f85)}.live-board-header-search .live-board-search-button{color:#1e51a1!important;text-transform:none!important;min-height:48px!important;box-shadow:none!important;background:#ffffff30!important;border:1px solid #ffffff4d!important;border-radius:11px!important;padding:0 20px!important;font-weight:700!important}.live-board-header-search .live-board-search-button:hover{box-shadow:none!important;background:#ffffff47!important}.live-board-header-search .live-board-search-button.Mui-disabled{opacity:.7;color:#fff9!important}.live-board-results-wrapper{margin-top:0}@media screen and (width<=700px){.live-board-header-search{border-radius:14px;margin-bottom:13px}.live-board-header-search .live-board-heading{gap:8px;margin-bottom:10px!important}.live-board-header-search .live-board-heading-icon{border-radius:10px;flex-basis:36px;width:36px;height:36px}.live-board-header-search .live-board-heading-icon svg{font-size:20px}.live-board-header-search .live-board-title{font-size:17px!important}.live-board-header-search .live-board-subtitle{margin-top:3px!important;font-size:10px!important}.live-board-header-search .live-board-back-button,.live-board-header-search .live-board-refresh-button{width:36px;height:36px;padding:7px}.live-board-header-search .live-board-search{grid-template-columns:minmax(0,1fr);gap:8px}.live-board-header-search .live-board-station-field .MuiOutlinedInput-root{min-height:46px}.live-board-header-search .live-board-search-button{width:100%;min-height:43px!important;padding:0 14px!important}}@media screen and (width<=360px){.live-board-header-search .live-board-heading-icon{display:none}.live-board-header-search .live-board-heading{gap:7px}.live-board-header-search .live-board-subtitle{max-width:190px}}.live-board-page{height:100dvh!important;min-height:0!important;overflow:hidden!important}.live-board-container{flex-direction:column!important;height:100%!important;min-height:0!important;display:flex!important;overflow:hidden!important}.live-board-header-search{flex:none!important}.live-board-results-wrapper{overscroll-behavior-y:contain;scrollbar-gutter:stable;flex:auto!important;min-height:0!important;overflow:hidden auto!important}#root{min-height:100%}.legal-page{--legal-bg:var(--primary-color);--legal-surface:#ffffff1a;--legal-surface-2:#ffffff24;--legal-border:#ffffff2e;--legal-text:#fff;--legal-muted:#ffffffc7;min-height:100vh;color:var(--legal-text);background:radial-gradient(circle at 85% 20%, #ffffff14, transparent 35%), linear-gradient(180deg, color-mix(in srgb, var(--primary-color) 88%, #000), color-mix(in srgb, var(--primary-color) 82%, #000));overflow:hidden}.legal-page-header{z-index:20;-webkit-backdrop-filter:blur(18px);background:#0000001f;border-bottom:1px solid #ffffff1f;padding:20px 0;position:absolute;top:0;left:0;right:0}.legal-page-header-inner{justify-content:space-between;align-items:center;gap:24px;display:flex}.legal-page-logo{color:#fff;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:19px;font-weight:800;display:inline-flex}.legal-page-logo-mark{background:#ffffff1a;border:1px solid #fff3;border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex;overflow:hidden;box-shadow:0 8px 25px #0000001f}.legal-page-logo-mark img{object-fit:contain;width:100%;height:100%}.legal-page-nav{align-items:center;gap:28px;display:flex}.legal-page-nav>button:not(.legal-page-nav-button){color:#ffffffb8;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600;transition:color .2s}.legal-page-nav>button:not(.legal-page-nav-button):hover{color:#fff}.legal-page-nav-button{min-height:42px!important;color:var(--primary-color)!important;text-transform:none!important;box-shadow:none!important;background:#fff!important;border-radius:12px!important;padding:0 18px!important;font-weight:700!important;transition:transform .25s,box-shadow .25s!important}.legal-page-nav-button:hover{transform:translateY(-2px);box-shadow:0 12px 30px #00000029!important}.legal-page-hero{background:radial-gradient(circle at 80% 32%, #ffffff1f, transparent 30%), radial-gradient(circle at 15% 20%, color-mix(in srgb, var(--primary-color) 22%, transparent), transparent 35%), linear-gradient(135deg, var(--primary-color) 0%, color-mix(in srgb, var(--primary-color) 82%, #fff) 100%);align-items:center;min-height:520px;padding:150px 0 90px;display:flex;position:relative}.legal-page-grid{opacity:.16;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:55px 55px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 90%);mask-image:linear-gradient(#000,#0000 90%)}.legal-page-hero-content{z-index:2;text-align:center;max-width:760px;margin:0 auto;animation:.7s both legal-page-enter;position:relative}.legal-page-eyebrow{color:#ffffff73!important;letter-spacing:.16em!important;margin:0!important;font-size:10px!important;font-weight:800!important;line-height:1.4!important}.legal-page-title{color:#fff!important;letter-spacing:-.055em!important;margin-top:16px!important;font-size:clamp(44px,6vw,70px)!important;font-weight:800!important;line-height:1!important}.legal-page-description{max-width:650px;color:#ffffffb3!important;margin:24px auto 0!important;font-size:17px!important;line-height:1.7!important}.legal-page-content-section{background:#00000014;padding:80px 0 120px;position:relative}.legal-page-content-card{border:1px solid var(--legal-border);-webkit-backdrop-filter:blur(14px);background:linear-gradient(145deg,#ffffff1c,#ffffff0a);border-radius:24px;padding:45px;animation:.7s both legal-page-card-enter;box-shadow:0 30px 80px #00000024}.legal-page-content-card h2{color:#fff;letter-spacing:-.025em;margin:40px 0 14px;font-size:27px;font-weight:800;line-height:1.15}.legal-page-content-card h2:first-child{margin-top:0}.legal-page-content-card h3{color:#fff;margin:30px 0 10px;font-size:19px;font-weight:750;line-height:1.3}.legal-page-content-card p{color:#fff9;margin:0 0 18px;font-size:14px;line-height:1.8}.legal-page-content-card ul,.legal-page-content-card ol{margin:12px 0 24px;padding-left:22px}.legal-page-content-card li{color:#fff9;margin-bottom:10px;font-size:14px;line-height:1.75}.legal-page-content-card strong{color:#fff;font-weight:700}.legal-page-content-card a{color:#ffffffe6;text-underline-offset:3px;text-decoration:underline;transition:color .2s}.legal-page-content-card a:hover{color:#fff}.legal-page-cta-section{background:#00000014;padding:0 0 120px}.legal-page-cta{-webkit-backdrop-filter:blur(16px);text-align:center;background:linear-gradient(145deg,#ffffff1f,#ffffff0a);border:1px solid #ffffff26;border-radius:28px;padding:70px 40px;box-shadow:0 30px 70px #00000026}.legal-page-cta-title{color:#fff!important;letter-spacing:-.04em!important;margin-top:14px!important;font-size:clamp(35px,5vw,55px)!important;font-weight:800!important;line-height:1.05!important}.legal-page-cta-description{max-width:520px;color:#ffffff8a!important;margin:18px auto 28px!important;font-size:15px!important;line-height:1.7!important}.legal-page-button{min-height:48px!important;color:var(--primary-color)!important;text-transform:none!important;box-shadow:none!important;background:#fff!important;border-radius:12px!important;padding:0 22px!important;font-weight:700!important;transition:transform .25s,box-shadow .25s!important}.legal-page-button:hover{transform:translateY(-2px);box-shadow:0 12px 30px #00000029!important}.legal-page-footer{background:linear-gradient(180deg, color-mix(in srgb, var(--primary-color) 82%, #000), color-mix(in srgb, var(--primary-color) 76%, #000));border-top:1px solid #ffffff1a;padding:70px 0 25px}.legal-page-footer-top{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);align-items:start;gap:80px;display:grid}.legal-page-footer-company{max-width:500px}.legal-page-footer-description{max-width:430px;color:#ffffff8c!important;margin-top:15px!important;font-size:14px!important;line-height:1.7!important}.legal-page-footer-navigation{grid-template-columns:repeat(3,1fr);gap:45px;padding-top:5px;display:grid}.legal-page-footer-group{flex-direction:column;gap:13px;display:flex}.legal-page-footer-title{color:#ffffffe6!important;margin-bottom:5px!important;font-size:13px!important;font-weight:800!important}.legal-page-footer-group button{color:#ffffff85;width:fit-content;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;transition:color .2s,transform .2s}.legal-page-footer-group button:hover{color:#fff;transform:translate(2px)}.legal-page-footer-bottom{color:#ffffff61;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-top:60px;padding-top:22px;font-size:12px;display:flex}@keyframes legal-page-enter{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes legal-page-card-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=1100px){.legal-page-footer-top{grid-template-columns:1fr;gap:45px}.legal-page-footer-company{max-width:600px}.legal-page-footer-navigation{max-width:600px;padding-top:0}}@media (width<=900px){.legal-page-nav{gap:18px}.legal-page-nav>button:not(.legal-page-nav-button){display:none}.legal-page-hero{min-height:470px;padding:140px 0 75px}.legal-page-content-section{padding:65px 0 90px}.legal-page-content-card{padding:38px}.legal-page-cta-section{padding-bottom:90px}}@media (width<=600px){.legal-page-header{padding:15px 0}.legal-page-logo{font-size:17px}.legal-page-logo-mark{width:36px;height:36px}.legal-page-nav-button{min-height:40px!important;padding:0 14px!important;font-size:12px!important}.legal-page-hero{min-height:440px;padding:120px 0 65px}.legal-page-title{font-size:44px!important}.legal-page-description{margin-top:20px!important;font-size:15px!important}.legal-page-content-section{padding:55px 0 80px}.legal-page-content-card{border-radius:20px;padding:28px 22px}.legal-page-content-card h2{margin-top:32px;font-size:23px}.legal-page-content-card h3{font-size:18px}.legal-page-content-card p,.legal-page-content-card li{font-size:13px;line-height:1.75}.legal-page-cta-section{padding-bottom:80px}.legal-page-cta{border-radius:24px;padding:55px 22px}.legal-page-cta-title{font-size:36px!important}.legal-page-footer{padding:55px 0 25px}.legal-page-footer-navigation{grid-template-columns:repeat(3,1fr);gap:20px}.legal-page-footer-group{gap:11px}.legal-page-footer-group button{font-size:12px}.legal-page-footer-bottom{flex-direction:column;align-items:flex-start;gap:10px;margin-top:40px}}@media (width<=400px){.legal-page-title{font-size:38px!important}.legal-page-content-card{padding:25px 18px}.legal-page-footer-navigation{grid-template-columns:1fr;gap:28px}}@media (prefers-reduced-motion:reduce){.legal-page *,.legal-page :before,.legal-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.privacy-policy-page,.terms-page,.cookie-policy-page{min-height:100vh}.about-values{grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0 30px;display:grid}.about-value{background:#ffffff0b;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:10px;padding:15px;display:flex}.about-value svg{flex-shrink:0;font-size:19px}.about-value p{color:#ffffffc7;margin:0;font-size:14px}@media (width<=600px){.about-values{grid-template-columns:1fr}}.contact-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:45px;display:grid}.contact-card{background:#ffffff0b;border:1px solid #ffffff1a;border-radius:16px;padding:22px;transition:transform .25s,background .25s,border-color .25s}.contact-card:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-4px)}.contact-icon{background:#ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:18px;display:flex}.contact-icon svg{font-size:21px}.contact-card h3{margin:0 0 8px;font-size:16px}.contact-card p{margin:0;font-size:13px;line-height:1.65}@media (width<=700px){.contact-grid{grid-template-columns:1fr}}.careers-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0 45px;display:grid}.career-card{background:#ffffff0b;border:1px solid #ffffff1a;border-radius:16px;padding:24px;transition:transform .25s,border-color .25s,background .25s;position:relative}.career-card:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-4px)}.career-card h3{margin:0 0 8px;font-size:17px}.career-card p{max-width:400px;padding-right:30px;font-size:13px;line-height:1.65;margin:0!important}.career-card svg{font-size:18px;position:absolute;bottom:22px;right:22px}.careers-button{min-height:46px!important;color:var(--primary-color)!important;text-transform:none!important;background:#fffffff2!important;border-radius:12px!important;font-weight:750!important}@media (width<=600px){.careers-grid{grid-template-columns:1fr}}html{width:100%;min-height:100%;margin:0;padding:0}body{color:#172033;background:#f8fafc;width:100%;min-height:100vh;margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}#root{background:var(--bg-primary);width:100%;max-width:none;min-height:100vh;color:var(--text-primary);margin:0;padding:0}.app{background:var(--bg-primary);width:100%;min-height:100vh;color:var(--text-primary);flex-direction:column;transition:background-color .25s,color .25s;display:flex}.app-main{flex:1;width:100%;min-width:0;min-height:0;margin:0;padding:0;display:flex;position:relative}.page-content{flex:1;width:100%;min-width:0;min-height:0;margin:0;padding:0}@media (width<=768px){.page-content{width:100%;min-width:0;min-height:0}}:root{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--surface:#fff;--surface-hover:#f8fafc;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--border-color:#e2e8f0;--primary-color:#0d47a1;--primary-hover:#0d47a1;--sidebar-bg:#fff;--header-bg:#fff;--input-bg:#fff;--input-border:#cbd5e1;--shadow-sm:0 1px 3px #0f172a14;--shadow-md:0 4px 12px #0f172a1a}:root[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#111827;--bg-tertiary:#1e293b;--surface:#1e293b;--surface-hover:#273449;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border-color:#334155;--primary-color:#0d47a1;--primary-hover:#0d47a1;--sidebar-bg:#111827;--header-bg:#111827;--input-bg:#0f172a;--input-border:#475569;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 16px #00000059}html,body,#root{min-height:100%;margin:0}body{background:var(--bg-primary);color:var(--text-primary);transition:background-color .25s,color .25s}*{box-sizing:border-box}:root[data-theme=dark]{--bg-primary:#0f172a}
