.dashboard-container{flex-direction:column;gap:1.5rem;max-width:600px;margin:0 auto;padding:1.5rem;font-family:inherit;display:flex}.dashboard-header{text-align:center;margin-bottom:.5rem}.dashboard-header h1{background:-webkit-linear-gradient(45deg,var(--accent-color),#a2d2ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;justify-content:center;align-items:center;font-size:2.2rem;font-weight:700;display:flex}.dashboard-header .subtitle{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1.5px;font-size:.95rem}.routes-selector{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.routes-selector label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.9rem;font-weight:600}.route-dropdown{border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;appearance:none;white-space:normal;word-wrap:break-word;background:#ffffff0d;border:1px solid #ffffff1a;outline:none;width:100%;padding:.8rem 1rem;font-size:1rem;font-weight:500;transition:all .2s}.route-dropdown:hover,.route-dropdown:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-glow)}.dashboard-content{flex-direction:column;gap:1rem;display:flex}.action-bar{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.action-bar h2{color:var(--text-primary);font-size:1.3rem}.refresh-btn{color:var(--accent-color);border:1px solid var(--accent-color);border-radius:var(--border-radius-lg);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .3s;display:flex}.refresh-btn:hover:not(:disabled){background:var(--accent-color);color:#fff;box-shadow:0 4px 12px var(--accent-glow)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed;border-color:var(--text-muted);color:var(--text-muted)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.train-list{flex-direction:column;gap:1rem;display:flex}.train-card{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--border-radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;gap:1rem;padding:1.25rem;transition:transform .2s,box-shadow .2s;display:flex}.train-card:hover{box-shadow:var(--shadow-md);border-color:#58a6ff4d;transform:translateY(-2px)}.card-header{border-bottom:1px solid var(--surface-border);justify-content:space-between;align-items:flex-start;padding-bottom:.75rem;display:flex}.destination-group{flex-direction:column;gap:.25rem;display:flex}.destination{color:#fff;font-size:1.25rem;font-weight:700;line-height:1.2}.destination-subtitle{color:var(--text-secondary);font-size:.95rem;font-weight:400}.destination-subtitle strong{color:var(--accent-hover);font-weight:600}.status{border-radius:var(--border-radius-lg);padding:.25rem .75rem;font-size:.85rem;font-weight:600}.status.on-time{color:#4ade80;background:#23863626;border:1px solid #23863666}.status.delayed{color:#fb7185;background:#f8514926;border:1px solid #f8514966}.card-body{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.info-item{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.95rem;display:flex}.info-item strong{color:var(--text-primary);font-weight:600}.card-footer{color:var(--text-secondary);border-top:1px dashed var(--surface-border);justify-content:space-between;align-items:center;padding-top:.75rem;font-size:.85rem;display:flex}.icon{vertical-align:middle;display:inline-flex}.icon.small{width:16px;height:16px}.icon.large{width:48px;height:48px}.text-accent{color:var(--accent-color)}.text-muted{color:var(--text-muted)}.loading-state,.empty-state,.error-message{text-align:center;background:var(--surface-color);border-radius:var(--border-radius-md);border:1px dashed var(--surface-border);color:var(--text-secondary);flex-direction:column;align-items:center;gap:1rem;padding:3rem 1rem;display:flex}.error-message{color:#fb7185;border-color:#f8514980}.loader{border:3px solid #ffffff1a;border-top-color:var(--accent-color);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}
