/* Airline Platform - Sky Blue Theme */ @layer base { [data-mode="airline"] { --accent-primary: #007aff; --accent-secondary: #4caf50; --accent-warning: #ff3b30; --accent-primary-hover: #0051d5; --accent-primary-light: #e6f2ff; --text-accent: #007aff; --hero-bg: linear-gradient(to bottom, white, #e6f2ff); } } @layer components { [data-mode="airline"] { --primary-color: var(--accent-primary); } [data-mode="airline"] .btn-primary { background-color: var(--accent-primary) !important; color: #ffffff !important; padding: 12px 24px; font-weight: 600; font-size: 1rem; border-radius: var(--border-radius); border: none; cursor: pointer; transition: all 0.2s ease; } [data-mode="airline"] .btn-primary:hover { background-color: var(--accent-primary-hover); transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 122, 255, 0.3); } [data-mode="airline"] .btn-secondary { background-color: transparent; color: var(--accent-primary); border: 2px solid var(--accent-primary); } [data-mode="airline"] .btn-secondary:hover { background-color: var(--accent-primary-light); } [data-mode="airline"] .badge-value { background-color: var(--accent-secondary); color: #ffffff; padding: 4px 8px; border-radius: 4px; font-size: 0.875rem; font-weight: 600; } [data-mode="airline"] .badge-warning { background-color: var(--accent-warning); color: #ffffff; padding: 4px 8px; border-radius: 4px; font-size: 0.875rem; font-weight: 600; } [data-mode="airline"] .search-form { background: var(--bg-primary); padding: var(--spacing-lg); border-radius: var(--border-radius); box-shadow: var(--shadow-card); } [data-mode="airline"] .flight-card { display: grid; grid-template-columns: 2fr 3fr 2fr; gap: var(--spacing-md); padding: var(--spacing-md); background: var(--bg-primary); border-radius: var(--border-radius); box-shadow: var(--shadow-card); margin-bottom: var(--spacing-md); transition: box-shadow 0.2s ease; } [data-mode="airline"] .flight-card:hover { box-shadow: 0 4px 16px rgba(0, 122, 255, 0.15); } [data-mode="airline"] .flight-timing { display: flex; flex-direction: column; justify-content: center; } [data-mode="airline"] .flight-time { font-size: 1.5rem; font-weight: 700; color: var(--text-primary); } [data-mode="airline"] .flight-airport { font-size: 0.875rem; color: var(--text-secondary); font-weight: 500; } [data-mode="airline"] .flight-route { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; } [data-mode="airline"] .flight-duration { font-size: 0.875rem; color: var(--text-secondary); margin-bottom: 4px; } [data-mode="airline"] .flight-stops { font-size: 0.875rem; color: var(--text-secondary); font-weight: 600; } [data-mode="airline"] .flight-pricing { display: flex; flex-direction: column; justify-content: center; gap: var(--spacing-sm); } [data-mode="airline"] .fare-option { display: flex; justify-content: space-between; align-items: center; padding: var(--spacing-sm); border: 1px solid #e0e0e0; border-radius: 6px; transition: all 0.2s ease; } [data-mode="airline"] .fare-option:hover { border-color: var(--accent-primary); background-color: var(--accent-primary-light); } [data-mode="airline"] .fare-class { font-size: 0.875rem; font-weight: 600; color: var(--text-primary); } [data-mode="airline"] .fare-price { font-size: 1.125rem; font-weight: 700; color: var(--accent-primary); } [data-mode="airline"] .date-price-bar { display: flex; overflow-x: auto; gap: var(--spacing-sm); padding: var(--spacing-md) 0; margin-bottom: var(--spacing-lg); } [data-mode="airline"] .date-option { min-width: 100px; padding: var(--spacing-sm); text-align: center; border: 2px solid #e0e0e0; border-radius: 6px; cursor: pointer; transition: all 0.2s ease; } [data-mode="airline"] .date-option:hover { border-color: var(--accent-primary); } [data-mode="airline"] .date-option.active { border-color: var(--accent-primary); background-color: var(--accent-primary-light); } [data-mode="airline"] .date-label { font-size: 0.75rem; color: var(--text-secondary); margin-bottom: 4px; } [data-mode="airline"] .date-price { font-size: 1rem; font-weight: 700; color: var(--accent-primary); } [data-mode="airline"] .progress-wizard { display: flex; justify-content: space-between; align-items: center; max-width: 800px; margin: var(--spacing-lg) auto; padding: 0 var(--spacing-md); } [data-mode="airline"] .wizard-step { display: flex; flex-direction: column; align-items: center; flex: 1; position: relative; } [data-mode="airline"] .wizard-step::after { content: ''; position: absolute; top: 20px; left: 50%; width: 100%; height: 2px; background: #e0e0e0; z-index: -1; } [data-mode="airline"] .wizard-step:last-child::after { display: none; } [data-mode="airline"] .wizard-number { width: 40px; height: 40px; border-radius: 50%; background: #e0e0e0; color: var(--text-secondary); display: flex; align-items: center; justify-content: center; font-weight: 700; margin-bottom: var(--spacing-sm); } [data-mode="airline"] .wizard-step.active .wizard-number { background: var(--accent-primary); color: #ffffff; } [data-mode="airline"] .wizard-step.completed .wizard-number { background: var(--accent-secondary); color: #ffffff; } [data-mode="airline"] .wizard-label { font-size: 0.875rem; color: var(--text-secondary); text-align: center; } [data-mode="airline"] .wizard-step.active .wizard-label { color: var(--accent-primary); font-weight: 600; } [data-mode="airline"] a { color: var(--accent-primary); text-decoration: none; } [data-mode="airline"] a:hover { text-decoration: underline; } [data-mode="airline"] .input-field { border: 2px solid #e0e0e0; border-radius: 6px; padding: 12px; transition: border-color 0.2s ease; width: 100%; } [data-mode="airline"] .input-field:focus { border-color: var(--accent-primary); box-shadow: 0 0 0 3px var(--accent-primary-light); } [data-mode="airline"] .filter-sidebar { background: var(--bg-primary); padding: var(--spacing-md); border-radius: var(--border-radius); box-shadow: var(--shadow-card); } [data-mode="airline"] .filter-section { margin-bottom: var(--spacing-lg); } [data-mode="airline"] .filter-title { font-size: 1rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--spacing-sm); } [data-mode="airline"] .checkbox-label { display: flex; align-items: center; gap: var(--spacing-sm); padding: var(--spacing-sm) 0; cursor: pointer; } [data-mode="airline"] .checkbox-label:hover { color: var(--accent-primary); } [data-mode="airline"] .hero-section { background: var(--hero-bg); } }