@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{font-family:Outfit,Inter,system-ui,sans-serif;line-height:1.6;font-weight:400;--bg-dark: #090b0e;--bg-card: #12161f;--bg-card-hover: #191f2c;--primary: #ff4500;--primary-hover: #e03d00;--primary-glow: rgba(255, 69, 0, .15);--secondary: #ffb7c5;--accent: #ffd700;--accent-glow: rgba(255, 215, 0, .15);--success: #00cc66;--danger: #ff3333;--text-main: #f3f5f7;--text-muted: #8c9ba5;--border-color: rgba(140, 155, 165, .12);--glass-border: rgba(255, 255, 255, .05);--glass-shadow: rgba(0, 0, 0, .4);color-scheme:dark;color:var(--text-main);background-color:var(--bg-dark);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-dark);color:var(--text-main);overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-container{max-width:1400px;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:2rem}.glass-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 32px 0 var(--glass-shadow);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.25,.8,.25,1)}.hero-banner{position:relative;height:380px;border-radius:20px;overflow:hidden;display:flex;align-items:flex-end;padding:3rem;box-shadow:inset 0 0 100px #000c}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:1;transition:transform 10s ease-out}.hero-banner:hover .hero-bg{transform:scale(1.05)}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(0deg,#090b0ef2,#090b0e66,#0003);z-index:2}.hero-content{position:relative;z-index:3;display:flex;flex-direction:column;gap:.5rem;max-width:800px}.hero-badge{align-self:flex-start;background:var(--primary);color:#fff;font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:2px;padding:.4rem 1rem;border-radius:50px;box-shadow:0 0 15px var(--primary-glow)}.hero-title{font-size:3rem;font-weight:800;line-height:1.1;letter-spacing:-.5px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5)}.hero-subtitle{font-size:1.1rem;color:var(--text-muted)}.hero-details{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1rem;font-size:.9rem}.hero-detail-item{display:flex;align-items:center;gap:.5rem;background:#ffffff0d;padding:.5rem 1rem;border-radius:8px;border:1px solid var(--glass-border)}.hero-detail-item svg{color:var(--primary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.stat-card{padding:1.5rem;display:flex;align-items:center;gap:1.25rem}.stat-icon{width:50px;height:50px;border-radius:12px;background:#ff45001a;border:1px solid rgba(255,69,0,.2);display:flex;align-items:center;justify-content:center;color:var(--primary)}.stat-card:nth-child(2) .stat-icon{background:#ffd7001a;border:1px solid rgba(255,215,0,.2);color:var(--accent)}.stat-card:nth-child(3) .stat-icon{background:#ffb7c51a;border:1px solid rgba(255,183,197,.2);color:var(--secondary)}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:1.6rem;font-weight:700;line-height:1.2}.stat-label{font-size:.85rem;color:var(--text-muted)}.day-selector-container{display:flex;flex-direction:column;gap:.75rem}.day-selector-header{display:flex;justify-content:space-between;align-items:center}.day-selector-title{font-size:1.25rem;font-weight:700}.day-selector{display:flex;gap:.75rem;overflow-x:auto;padding:.5rem .25rem;scroll-behavior:smooth;scrollbar-width:thin}.day-tab{flex:0 0 140px;padding:1rem .75rem;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.day-tab:hover{background:#ff45000d;border-color:#ff45004d;transform:translateY(-2px)}.day-tab.active{background:#ff45001a;border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow)}.day-tab-number{font-size:1.4rem;font-weight:800;line-height:1.1;color:#fff}.day-tab-date{font-size:.75rem;font-weight:600;color:var(--text-muted);margin-top:.1rem}.day-tab-destination{font-size:.8rem;font-weight:500;margin-top:.25rem;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.day-tab.active .day-tab-destination{color:var(--primary)}.day-detail{display:grid;grid-template-columns:1fr 380px;gap:2rem}@media (max-width: 1024px){.day-detail{grid-template-columns:1fr}}.timeline-section{display:flex;flex-direction:column;gap:1.5rem}.section-title{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:.75rem}.section-title svg{color:var(--primary)}.timeline{display:flex;flex-direction:column;position:relative;padding-left:2rem;gap:1.5rem}.timeline:before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:2px;background:var(--border-color)}.timeline-item{position:relative}.timeline-marker{position:absolute;left:-2rem;top:8px;width:16px;height:16px;border-radius:50%;background:var(--bg-dark);border:3px solid var(--border-color);z-index:2;transition:all .3s ease}.timeline-item:hover .timeline-marker{border-color:var(--primary);box-shadow:0 0 8px var(--primary);background:var(--primary)}.timeline-time{font-size:.85rem;font-weight:700;color:var(--primary);margin-bottom:.25rem;display:flex;align-items:center;gap:.25rem}.activity-card{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.activity-card:hover{background:var(--bg-card-hover);border-color:#ff450033}.activity-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.activity-title{font-size:1.25rem;font-weight:700;color:#fff}.activity-type-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;padding:.25rem .75rem;border-radius:50px;letter-spacing:.5px}.badge-sight{background:#ffb7c526;color:var(--secondary);border:1px solid rgba(255,183,197,.3)}.badge-event{background:#ff450026;color:var(--primary);border:1px solid rgba(255,69,0,.3)}.badge-shopping{background:#ffd70026;color:var(--accent);border:1px solid rgba(255,215,0,.3)}.badge-transit{background:#8c9ba526;color:var(--text-muted);border:1px solid rgba(140,155,165,.3)}.badge-food{background:#00cc6626;color:var(--success);border:1px solid rgba(0,204,102,.3)}.activity-desc{font-size:.95rem;color:var(--text-main)}.activity-details-list{list-style-type:none;padding-left:.5rem;display:flex;flex-direction:column;gap:.4rem;border-left:2px solid var(--border-color);margin:.5rem 0}.activity-details-list li{font-size:.9rem;color:var(--text-muted);position:relative;padding-left:1rem}.activity-details-list li:before{content:"•";position:absolute;left:0;color:var(--primary)}.activity-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:.5rem}.meta-box{background:#ffffff05;border:1px solid var(--border-color);padding:.75rem 1rem;border-radius:8px;font-size:.85rem;display:flex;flex-direction:column;gap:.25rem}.meta-label{font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:.25rem}.meta-box.importance .meta-label{color:var(--secondary)}.meta-box.history .meta-label{color:var(--accent)}.meta-box.logistics .meta-label{color:var(--primary)}.meta-val{color:var(--text-main);line-height:1.4}.sidebar{display:flex;flex-direction:column;gap:1.5rem}.sidebar-panel{padding:1.5rem}.panel-header{font-size:1.1rem;font-weight:700;border-bottom:1px solid var(--border-color);padding-bottom:.75rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.panel-header svg{color:var(--primary)}.hotel-card{display:flex;align-items:center;gap:1rem}.hotel-icon{width:44px;height:44px;border-radius:8px;background:#ffb7c51a;color:var(--secondary);display:flex;align-items:center;justify-content:center}.hotel-info{display:flex;flex-direction:column}.hotel-name{font-weight:700;font-size:.95rem}.hotel-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;font-weight:600}.transport-list{display:flex;flex-direction:column;gap:1rem}.transport-item{border-left:3px solid var(--primary);padding-left:.75rem;display:flex;flex-direction:column;gap:.25rem}.transport-route{font-weight:700;font-size:.9rem}.transport-meta{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-muted)}.transport-mode{display:flex;align-items:center;gap:.25rem}.alert-list{display:flex;flex-direction:column;gap:.75rem}.alert-item{background:#ff45000a;border:1px solid rgba(255,69,0,.15);border-radius:8px;padding:.75rem 1rem;font-size:.85rem;line-height:1.4;color:var(--text-main);display:flex;gap:.5rem}.alert-item svg{color:var(--primary);flex-shrink:0;margin-top:2px}.backend-mock-panel{padding:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:1rem}.backend-mock-title{font-size:1.25rem;font-weight:700;color:var(--secondary)}.backend-mock-desc{font-size:.9rem;color:var(--text-muted);max-width:600px}.backend-mock-actions{display:flex;gap:1rem;margin-top:.5rem}.btn{background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-main);padding:.6rem 1.2rem;font-size:.85rem;font-weight:600;border-radius:8px;cursor:not-allowed;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.btn:hover{background:#ffffff14}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff;cursor:pointer}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 0 10px var(--primary-glow)}.btn-primary.active-btn{cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#090b0ed9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{max-width:500px;width:90%;padding:2rem;display:flex;flex-direction:column;gap:1.25rem}.modal-title{font-size:1.4rem;font-weight:800;color:var(--primary)}.modal-input{width:100%;background:#ffffff08;border:1px solid var(--border-color);color:var(--text-main);padding:.75rem 1rem;border-radius:8px;font-family:inherit}.modal-input:focus{outline:none;border-color:var(--primary)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}@media (max-width: 768px){.hero-banner{height:300px;padding:1.5rem}.hero-title{font-size:2.2rem}.hero-details{gap:.75rem}.app-container{padding:1rem}}
