*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa}#root{width:100%;height:100vh}body{background:linear-gradient(135deg,#d4a574,#8b5a3c,peru,#daa520,#b8860b)}.app{min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;max-width:480px;margin:auto;background-color:#fff}.app:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 80%,rgba(255,140,0,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(218,165,32,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(205,133,63,.05) 0%,transparent 50%);pointer-events:none}.itinerary-card{padding:32px;width:100%;max-width:480px;position:relative;overflow:hidden}.header{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:32px;position:relative}.header h1{margin:0;font-size:24px;font-weight:700;background:linear-gradient(135deg,#d2691e,#ff8c00,#daa520);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;letter-spacing:-.5px}.day-navigation{display:flex;gap:8px;align-items:center;position:sticky;top:0;z-index:99;background-color:#fff;box-shadow:0 0 16px #0000000f,0 0 0 1px #fff0;padding:20px}.day-tab{background:transparent;border:none;padding:16px 8px;text-align:center;cursor:pointer;border-radius:12px;flex:1;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.day-tab:hover{background:#fffc;transform:translateY(-2px)}.day-tab.active{background:#ffffffe6;box-shadow:0 8px 20px #d2691e4d;transform:scale(1.05)}.day-tab.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:32px;height:4px;background:linear-gradient(90deg,#ff8c00,#daa520);border-radius:2px}.day-label{font-size:14px;font-weight:700;color:#333;margin-bottom:2px;transition:color .3s}.day-tab.active .day-label{color:#d2691e}.day-date{font-size:12px;color:#666;transition:color .3s}.day-tab.active .day-date{color:peru;font-weight:600}.next-btn{background:#fffc;border:1px solid rgba(255,255,255,.3);font-size:18px;cursor:pointer;padding:12px;border-radius:12px;color:peru;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:44px;height:44px;display:flex;align-items:center;justify-content:center}.next-btn:hover{background:#fff;transform:scale(1.1);box-shadow:0 8px 20px #cd853f66}.timeline{position:relative}.activity-item{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px;position:relative;animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.timeline-connector{display:flex;flex-direction:column;align-items:center;height:100%;width:12px;flex-shrink:0;margin-top:10px}.timeline-dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,#ff8c00,#daa520);z-index:2;box-shadow:0 0 0 4px #ff8c0033;animation:pulse 2s infinite;transition:all .3s ease}.timeline-dot.focused{transform:scale(1.3);box-shadow:0 0 0 6px #ff8c0066;animation:none}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.timeline-line{width:2px;height:40px;background:linear-gradient(to bottom,#cd853f,transparent);margin-top:4px}.activity-time{font-size:12px;color:#666;font-weight:600;width:fit-content;margin-top:2px;padding:4px 8px;border-radius:8px;background:#fff;transition:all .3s ease;margin-bottom:8px}.activity-time.focused{background:linear-gradient(135deg,#ff8c00,#daa520);color:#fff;font-weight:700;box-shadow:0 4px 12px #ff8c004d;transform:scale(1.05)}.activity-content{display:flex;align-items:center;gap:12px;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:16px;border-radius:16px;box-shadow:0 8px 32px #0000001a;flex:1;border:1px solid rgba(255,255,255,.3);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.activity-content:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s}.activity-content:hover:before{left:100%}.activity-content:hover{transform:translateY(-4px);box-shadow:0 12px 40px #00000026}.activity-content.focused{background:linear-gradient(135deg,#ff8c0026,#daa52026);border:2px solid rgba(255,140,0,.4);transform:translateY(-2px) scale(1.02);box-shadow:0 16px 48px #ff8c0033}.activity-content.focused .activity-icon{background:linear-gradient(135deg,#ff8c00,#daa520);transform:scale(1.1)}.activity-content.focused .activity-title{color:#ff8c00;font-weight:700}.activity-content.focused .activity-subtitle{color:peru;font-weight:600}.activity-content.focused .maps-icon{background:linear-gradient(135deg,#ff6b6b,#ff9f40);transform:scale(1.1);box-shadow:0 4px 12px #ff6b6b4d}.activity-icon{font-size:20px;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,#ff8c001a,#daa5201a);border:1px solid rgba(255,140,0,.2);transition:all .3s}.activity-content:hover .activity-icon{transform:rotate(10deg) scale(1.1)}.activity-details{flex:1}.maps-icon{font-size:16px;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,#ff6b6b1a,#ff95001a);border:1px solid rgba(255,107,107,.2);transition:all .3s;cursor:pointer}.activity-content:hover .maps-icon{transform:scale(1.1);background:linear-gradient(135deg,#ff6b6b33,#ff950033);box-shadow:0 4px 12px #ff6b6b4d}.activity-title{font-size:14px;font-weight:600;color:#333;margin-bottom:2px;transition:color .3s}.activity-content:hover .activity-title{color:#ff8c00}.activity-subtitle{font-size:12px;color:#666;transition:color .3s}.activity-content:hover .activity-subtitle{color:peru}@media(max-width:480px){.itinerary-card{padding:24px}.activity-content{padding:12px}.day-tab{padding:12px 6px}.header h1{font-size:20px}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb{background:#667eea4d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#667eea80}
