@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=Orbitron:wght@500;700&display=swap";:root{--bg: #0A0E27;--surface: #141B3D;--primary: #7C9CDB;--primary-dark: #5E80C0;--accent: #FBBF24;--text: #F0F4FF;--text-muted: #A5B4D4;--border: #1E2848;--success: #10B981;--warning: #FBBF24;--danger: #F87171;--radius: 12px;--shadow: 0 12px 36px rgba(0,0,0,.4), 0 0 28px rgba(124, 156, 219, .15)}body{margin:0;padding:0;background:radial-gradient(ellipse at center,var(--surface) 0%,var(--bg) 100%),radial-gradient(circle at 15% 25%,rgba(124,156,219,.07) 1px,transparent 1px),radial-gradient(circle at 65% 85%,rgba(251,191,36,.08) 1px,transparent 1px),var(--bg);background-size:cover,3px 3px,3px 3px;background-attachment:fixed;color:var(--text);font-family:Space Grotesk,Inter,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;justify-content:center;align-items:center;min-height:100vh;overflow:hidden}#root{width:100%;height:100vh;display:flex;justify-content:center;align-items:center}.app-container{position:relative;width:100%;max-width:900px;height:90vh;max-height:800px;background-color:#141b3dd9;border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;overflow:hidden;padding:20px;box-sizing:border-box}.cloud-status{position:absolute;top:15px;right:20px;display:flex;align-items:center;gap:5px;color:var(--text-muted);font-size:.9em;z-index:10}.cloud-icon{font-size:1.2em}.page-title{font-family:Orbitron,sans-serif;font-size:2.2em;color:var(--primary);text-align:center;margin-bottom:30px;text-shadow:0 0 15px rgba(124,156,219,.6);letter-spacing:1px}.start-page{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:20px;text-align:center}.start-header{margin-bottom:40px}.plane-icon{color:var(--accent);margin-bottom:15px;filter:drop-shadow(0 0 15px var(--accent))}.app-title{font-family:Orbitron,sans-serif;font-size:3.5em;margin:0;color:var(--primary);text-shadow:0 0 20px var(--primary);letter-spacing:2px}.app-subtitle{font-size:1.2em;color:var(--text-muted);margin-top:10px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px;width:100%;max-width:600px}.stat-card{background-color:var(--surface);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:0 4px 15px #0003;border:1px solid var(--border)}.stat-card svg{color:var(--accent)}.stat-card span{font-family:Orbitron,sans-serif;font-size:1.8em;color:var(--primary);text-shadow:0 0 10px rgba(124,156,219,.4)}.stat-card p{margin:0;font-size:.9em;color:var(--text-muted)}.start-actions{display:flex;flex-direction:column;gap:15px;width:100%;max-width:300px}.action-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 25px;border-radius:var(--radius);border:none;font-size:1.1em;cursor:pointer;transition:all .3s ease;font-family:Space Grotesk,sans-serif;font-weight:500;box-shadow:0 4px 15px #0003}.action-button.primary{background-color:var(--primary);color:var(--bg);box-shadow:0 0 24px var(--primary)}.action-button.primary:hover{background-color:var(--primary-dark);box-shadow:0 0 30px var(--primary)}.action-button.secondary{background-color:var(--surface);color:var(--text);border:1px solid var(--border)}.action-button.secondary:hover{background-color:#141b3db3;border-color:var(--primary)}.action-button.accent-button{background-color:var(--accent);color:var(--bg);box-shadow:0 0 24px var(--accent)}.action-button.accent-button:hover{background-color:#e0ac1a;box-shadow:0 0 30px var(--accent)}.action-button:not(.primary):not(.secondary):not(.accent-button){background-color:var(--surface);color:var(--text);border:1px solid var(--border)}.action-button:not(.primary):not(.secondary):not(.accent-button):hover{background-color:#141b3db3;border-color:var(--primary)}.action-button svg{stroke-width:2.5}.list-page{display:flex;flex-direction:column;height:100%;padding:0 10px;overflow-y:auto}.list-page .page-title{margin-top:0;margin-bottom:20px}.add-log-button{align-self:flex-end;margin-bottom:20px;background-color:var(--primary);color:var(--bg);padding:8px 15px;border-radius:var(--radius);border:none;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:.95em;font-weight:500;box-shadow:0 0 15px var(--primary);transition:all .3s ease}.add-log-button:hover{background-color:var(--primary-dark);box-shadow:0 0 20px var(--primary)}.log-list{display:flex;flex-direction:column;gap:15px;flex-grow:1;padding-bottom:20px}.log-card{background-color:var(--surface);border-radius:var(--radius);padding:18px 25px;border:1px solid var(--border);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #0003}.log-card:hover{border-color:var(--primary);box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.log-card-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.log-card-header h3{margin:0;font-size:1.3em;color:var(--primary);font-family:Orbitron,sans-serif}.log-card-header .plane-icon{color:var(--accent);filter:drop-shadow(0 0 5px var(--accent))}.log-date{font-size:.85em;color:var(--text-muted);margin-left:auto}.log-route{font-size:1em;color:var(--text);margin:0 0 10px;display:flex;align-items:center;gap:5px}.log-route .arrow{color:var(--accent);font-weight:700}.log-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.9em;color:var(--text-muted)}.meal-rating-display{display:flex;gap:2px}.meal-rating-display svg{color:var(--accent)}.empty-message{text-align:center;color:var(--text-muted);font-size:1.1em;margin-top:50px}.add-edit-page{display:flex;flex-direction:column;height:100%;padding:0 10px;overflow-y:auto}.add-edit-page .page-title{margin-top:0;margin-bottom:20px}.flight-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;flex-grow:1;padding-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:8px;color:var(--text);font-weight:500;font-size:.95em}.form-group input[type=text],.form-group input[type=date],.form-group input[type=number],.form-group textarea{padding:10px 12px;border-radius:8px;border:1px solid var(--border);background-color:#0003;color:var(--text);font-size:1em;font-family:Space Grotesk,sans-serif;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #7c9cdb4d}.form-group textarea{resize:vertical;min-height:80px}.star-rating{display:flex;gap:5px}.star-rating .star-icon{color:var(--accent);cursor:pointer;transition:transform .2s ease}.star-rating .star-icon.clickable:hover{transform:scale(1.2)}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:15px;margin-top:20px}.detail-page{display:flex;flex-direction:column;height:100%;padding:0 10px;overflow-y:auto}.detail-page .page-title{margin-top:0;margin-bottom:20px}.log-detail-card{background-color:var(--surface);border-radius:var(--radius);padding:25px;border:1px solid var(--border);box-shadow:var(--shadow);margin-bottom:30px;flex-grow:1}.detail-item{display:flex;flex-wrap:wrap;align-items:baseline;margin-bottom:12px;font-size:1.05em}.detail-item strong{color:var(--primary);margin-right:10px;min-width:90px}.detail-item span,.detail-item p{color:var(--text);flex:1}.detail-item .meal-rating-display{margin-top:5px}.ai-summary-card{margin-top:20px;padding:15px;background-color:#7c9cdb1a;border-left:4px solid var(--primary);border-radius:8px;font-style:italic;color:var(--text-muted)}.ai-summary-card strong{color:var(--primary);display:block;margin-bottom:8px}.detail-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:20px;padding-bottom:10px}.map-page{display:flex;flex-direction:column;align-items:center;height:100%;padding:0 10px}.map-page .page-title{margin-top:0;margin-bottom:20px}.map-container{width:100%;max-width:800px;aspect-ratio:2 / 1;background-color:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);margin-bottom:20px;overflow:hidden}.flight-map-svg{width:100%;height:100%;background-color:var(--bg)}.flight-path{filter:drop-shadow(0 0 8px rgba(124,156,219,.8))}.map-stats{display:flex;gap:30px;margin-bottom:30px;font-size:1.1em;color:var(--text-muted)}.map-stats .stat-value{font-family:Orbitron,sans-serif;color:var(--primary);font-size:1.2em;margin-left:5px;text-shadow:0 0 10px rgba(124,156,219,.4)}.cloud-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background-color:var(--primary);color:var(--bg);padding:10px 20px;border-radius:var(--radius);box-shadow:var(--shadow);z-index:1000;font-size:.95em;display:flex;align-items:center;gap:8px}.loading-overlay,.saving-indicator{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--text);font-size:1.2em;z-index:2000}.loading-spinner,.saving-spinner{border:4px solid rgba(255,255,255,.3);border-top:4px solid var(--primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:15px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.list-page,.add-edit-page,.detail-page{scrollbar-width:thin;scrollbar-color:var(--primary) var(--surface)}.list-page::-webkit-scrollbar,.add-edit-page::-webkit-scrollbar,.detail-page::-webkit-scrollbar{width:8px}.list-page::-webkit-scrollbar-track,.add-edit-page::-webkit-scrollbar-track,.detail-page::-webkit-scrollbar-track{background:var(--surface);border-radius:10px}.list-page::-webkit-scrollbar-thumb,.add-edit-page::-webkit-scrollbar-thumb,.detail-page::-webkit-scrollbar-thumb{background-color:var(--primary);border-radius:10px;border:2px solid var(--surface)}@media (max-width: 768px){.app-container{width:95%;height:95vh;padding:15px}.app-title{font-size:2.5em}.app-subtitle{font-size:1em}.stats-grid{grid-template-columns:1fr;max-width:300px}.start-actions{max-width:250px}.page-title{font-size:1.8em}.flight-form{grid-template-columns:1fr}.detail-item strong{min-width:70px}.map-stats{flex-direction:column;gap:10px}}@media (max-width: 480px){.app-title{font-size:2em}.plane-icon{size:60px}.start-header{margin-bottom:20px}.start-actions{gap:10px}.action-button{padding:10px 20px;font-size:1em}.log-card-header h3{font-size:1.1em}.log-date{font-size:.8em}.detail-actions{flex-wrap:wrap;justify-content:center}}
