.mobile-schedule-view{display:flex;flex-direction:column;gap:16px;padding:0;min-height:100%;width:100%;margin-top:16px}.mobile-schedule-empty{display:flex;align-items:center;justify-content:center;padding:48px 24px;color:var(--color-text-secondary);font-size:.95rem;text-align:center}.schedule-location-section{background:var(--color-surface);margin:0 0 24px;border-radius:20px;border:1px solid var(--color-border);box-shadow:var(--shadow-md);overflow:hidden}.schedule-location-warning{padding:12px 20px;background:var(--color-warning-light, #fff7ed)}.schedule-warning{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--color-warning, #ea580c);font-weight:600}.schedule-warning svg{flex-shrink:0}.schedule-warning-route{color:var(--color-text-secondary);font-weight:500}.schedule-location-header{position:relative;top:0;z-index:10;display:flex;align-items:stretch;padding-left:0;background:var(--color-surface);padding-top:4px;border-bottom:1px solid var(--color-border);-webkit-tap-highlight-color:transparent}.schedule-location-header:active{background:var(--color-background-secondary)}.schedule-location-actions{display:flex;align-items:center;margin-left:auto;flex-shrink:0}.schedule-section-toggle{background:none;border:none;cursor:pointer;padding:4px;margin-right:4px;border-radius:6px;display:flex;align-items:center;flex-shrink:0;color:var(--color-text-tertiary);transition:color .15s,background .15s}.schedule-section-toggle:hover{background:#0000000d;color:var(--color-text-primary)}.schedule-location-header .timeline-segment:before{display:none!important;content:none!important}.schedule-location-content{display:flex;align-items:center;flex:1;min-width:0;padding:18px 8px 18px 16px;gap:16px}.schedule-location-info{display:flex;align-items:flex-start;gap:16px;flex:1;min-width:0;padding:0}.schedule-location-icon{color:var(--color-primary);flex-shrink:0;margin-top:2px}.schedule-location-text{display:flex;flex-direction:column;gap:6px;min-width:0;padding-left:0;flex:1}.schedule-location-name{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.2;letter-spacing:-.01em}.schedule-location-separator{color:var(--color-text-tertiary);font-weight:400}.schedule-location-hotel{font-size:.8rem;font-weight:500;color:var(--color-text-secondary)}.schedule-location-dates{font-size:.9rem;color:var(--color-text-tertiary);font-weight:500}@media(max-width:640px){.schedule-location-name{font-size:1.05rem}.schedule-location-separator{display:none}.schedule-location-hotel{display:block;font-size:.78rem;margin-top:1px}.schedule-location-content{padding:14px 12px;gap:8px}.schedule-location-dates{font-size:.8rem}.schedule-section-toggle{margin-right:0}}.schedule-location-title-row{display:flex;align-items:center;width:100%;flex-wrap:wrap;gap:8px}.schedule-warning-indicator{margin-left:auto}.schedule-location-meta{display:flex;align-items:center;gap:10px;margin-top:4px}.schedule-accommodation{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--color-background-secondary);border-bottom:1px solid rgba(0,0,0,.04);font-size:.9rem;color:var(--color-text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s}.schedule-accommodation:active,.schedule-accommodation:hover{background:var(--color-background-tertiary)}.schedule-accommodation svg{flex-shrink:0;color:var(--color-text-tertiary)}.schedule-accommodation-name{flex:1;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-accommodation-actions{display:flex;gap:4px}.schedule-days{display:flex;flex-direction:column}.schedule-day:last-child{border-bottom:none}.schedule-day-header{display:flex;align-items:stretch;padding:0;background:var( --color-surface );position:sticky;top:0;z-index:5;border-bottom:1px solid var(--color-border);border-top:none;-webkit-tap-highlight-color:transparent}.schedule-day+.schedule-day .schedule-day-header,.schedule-item+.schedule-day-header{border-top:1px solid var(--color-border)}.schedule-day-header .timeline-segment{display:flex;align-items:center;justify-content:center}.schedule-transport-arriving .schedule-day-header .timeline-segment:before{display:none}.schedule-day-header .timeline-segment:after{content:"";position:relative;z-index:1;width:10px;height:10px;border-radius:50%;background:var(--color-surface);border:2px solid var(--color-border);box-shadow:0 0 0 2px var(--color-surface)}.schedule-day-date{flex:1;font-size:.8rem;font-weight:700;color:var(--color-text-secondary);text-transform:capitalize;letter-spacing:.05em;padding:14px 12px 14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.schedule-day-date-main{display:flex;align-items:center;min-width:0}.schedule-today-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);flex-shrink:0}.schedule-day-count-inline{color:var(--color-text-tertiary);font-weight:500;margin-left:6px;opacity:.8}.schedule-day-toggle{color:var(--color-text-tertiary);background:none;border:none;cursor:pointer;padding:4px;margin-right:12px;border-radius:6px;display:flex;align-items:center;flex-shrink:0;transition:color .15s,background .15s;-webkit-tap-highlight-color:transparent}.schedule-day-toggle:active,.schedule-day-toggle:hover{background:#0000000d;color:var(--color-text-primary)}.schedule-day-header:hover .schedule-day-toggle{color:var(--color-text-secondary)}.schedule-day-items{display:flex;flex-direction:column}.schedule-day-empty{padding:20px;font-size:.9rem;color:var(--color-text-tertiary);font-style:italic;text-align:center}.mobile-schedule-view{--timeline-width: 56px;--timeline-line-width: 2px;--timeline-color: var(--color-border)}.timeline-segment{position:relative;width:var(--timeline-width);min-width:var(--timeline-width);flex-shrink:0;display:flex;justify-content:center;align-items:center;z-index:0}.timeline-segment:before{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);width:var(--timeline-line-width);background:var(--timeline-color)}.timeline-segment.timeline-last:before{bottom:50%}.timeline-segment.timeline-header:before{top:50%}.timeline-segment.timeline-header-icon:before{display:none}.timeline-segment.timeline-no-line:before{display:none}.timeline-segment.timeline-no-line-before:before{top:50%}.timeline-icon{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--color-background-tertiary);transition:transform .2s}.timeline-icon:hover{transform:scale(1.05)}.timeline-icon svg{width:20px;height:20px}.timeline-icon-bordered{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);box-shadow:0 2px 4px #00000008}.timeline-icon-bordered.timeline-icon-event{color:#8b5cf6}.timeline-icon-filled{background:var(--color-transport-light);border:1px solid var(--color-transport);color:var(--color-transport)}.timeline-icon-header{width:48px;height:48px;background:var(--color-primary-light);border:1px solid var(--color-primary);color:var(--color-primary);border-radius:14px}.timeline-segment.timeline-header-icon{position:relative}.timeline-segment.timeline-header-icon:after{content:"";position:absolute;top:calc(50% + 20px);bottom:0;left:50%;transform:translate(-50%);width:var(--timeline-line-width);background:var(--timeline-color)}.timeline-segment.timeline-node-secondary:after{content:"";position:relative;z-index:1;width:8px;height:8px;border-radius:50%;background:var(--color-surface);border:2px solid var(--color-text-tertiary);box-shadow:0 0 0 2px var(--color-surface)}.schedule-transport-section{display:flex;flex-direction:column}.schedule-empty-group{display:flex;align-items:stretch;padding:0;min-height:80px;position:relative}.schedule-empty-group--clickable{-webkit-tap-highlight-color:transparent}.schedule-empty-group--clickable:hover .schedule-empty-group-content{background:var(--color-background-secondary);border-radius:8px}.schedule-empty-group--clickable:hover .schedule-empty-label{color:#a855f7}.schedule-empty-group--clickable:active .schedule-empty-group-content{background:#a855f70f;border-radius:8px}.schedule-empty-group-content{display:flex;flex-direction:column;gap:6px;padding:24px 24px 24px 16px;justify-content:center}.schedule-empty-header{display:flex;align-items:center;gap:8px}.schedule-empty-icon{color:#a855f7}.schedule-empty-dates{font-size:.85rem;font-weight:500;color:var(--color-text-tertiary)}.schedule-empty-label{font-size:.95rem;color:var(--color-text-primary);font-weight:600}.timeline-node-empty:before{background:var(--timeline-color)!important}.timeline-node-empty:after{content:"";position:relative;z-index:1;width:10px;height:10px;border-radius:50%;background:var(--color-surface);border:2px solid #e9d5ff;box-shadow:0 0 0 4px var(--color-surface)}.schedule-day-empty-single{display:flex;align-items:stretch;padding:0;font-size:.9rem;color:var(--color-text-tertiary);font-style:normal}.schedule-day-empty-single .schedule-empty-content-single{display:flex;align-items:center;gap:8px;padding:20px 24px 20px 16px;font-weight:500}.schedule-day-empty-single .schedule-empty-icon{color:#a855f7}.schedule-day-items-collapse{display:grid;grid-template-rows:1fr;transition:grid-template-rows .22s ease;overflow:hidden;contain:layout}.schedule-day-items-collapse--collapsed{grid-template-rows:0fr}.schedule-day-items-inner{min-height:0;overflow:hidden}.schedule-item{display:flex;align-items:stretch;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-bottom:1px solid rgba(0,0,0,.03);background:transparent;transition:background .15s}.schedule-item:hover{background:var(--color-background-hover)}.schedule-item:last-child{border-bottom:none}.schedule-item-main{display:flex;align-items:stretch;flex:1;width:100%;min-width:0}.schedule-item.schedule-item-travel{border-bottom:1px solid var(--color-border);padding:0}.schedule-item-content{display:flex;align-items:center;flex:1;min-width:0;padding:18px 20px 18px 16px;gap:16px}.schedule-item-content-wrapper{flex:1;display:flex;flex-direction:column;min-width:0}.schedule-item-content--header{align-items:flex-start}.schedule-map-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--color-background-tertiary);color:var(--color-text-secondary);flex-shrink:0;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.schedule-map-link:hover{background:var(--color-primary-light);color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.schedule-map-link:active{background:var(--color-primary);color:#fff;transform:translateY(0)}.schedule-location-header .schedule-map-link{align-self:center}.schedule-search-wrapper{position:relative;display:flex;align-items:center}.schedule-search-backdrop{position:fixed;inset:0;z-index:100}.schedule-search-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:101;background:var(--color-background);border:1px solid var(--color-border, #e2e8f0);border-radius:14px;box-shadow:0 8px 24px -4px #0000001f,0 2px 8px -2px #0000000f;padding:6px;display:flex;flex-direction:column;min-width:160px;animation:schedule-search-in .18s cubic-bezier(.16,1,.3,1) both}@keyframes schedule-search-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.schedule-search-item{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:9px;font-size:.875rem;font-weight:500;color:var(--color-text-primary);text-decoration:none;transition:background .12s ease;-webkit-tap-highlight-color:transparent}.schedule-search-item:hover{background:var(--color-success-light);color:var(--color-success)}.schedule-search-item svg{color:var(--color-text-tertiary);flex-shrink:0}.schedule-item .schedule-map-link{align-self:center;margin-left:auto}.schedule-item-details{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.schedule-item-title{font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.4;letter-spacing:-.01em}.schedule-item-time{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--color-text-secondary);font-weight:500}.schedule-item-time-allday{color:var(--color-text-tertiary);font-weight:500}.schedule-item-time-unknown{color:var(--color-text-tertiary);font-style:normal;opacity:.8}.schedule-item-time-unknown svg{opacity:.7}.schedule-item-datetime{display:flex;flex-wrap:wrap;align-items:center;gap:0}.schedule-item-date{font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}.schedule-item-date-separator{color:var(--color-text-tertiary);margin:0 4px}.schedule-item-time-value{display:flex;align-items:center;gap:8px;padding-left:0;font-size:.85rem}.schedule-item-company{font-size:.85rem;color:var(--color-text-tertiary);margin-top:2px}@media(max-width:480px){.schedule-item-datetime{flex-direction:column;align-items:flex-start;gap:4px}.schedule-item-date-separator{display:none}.schedule-location-header{padding-left:0}}.schedule-item-notes{font-size:.85rem;color:var(--color-text-tertiary);line-height:1.5;margin-top:4px}.schedule-item-actions{display:flex;gap:8px;flex-shrink:0}.schedule-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:10px;background:var(--color-background-tertiary);color:var(--color-text-tertiary);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all .2s}.schedule-action-btn:hover{background:#0000000d;color:var(--color-text-secondary)}.schedule-action-btn:active{background:var(--color-primary);color:#fff}.schedule-action-btn-danger:active{background:var(--color-danger);color:#fff}.mobile-schedule-view{padding-bottom:2rem}.schedule-item-segments{position:relative;margin-left:0;margin-top:8px}.schedule-item-segments:before{content:"";position:absolute;left:-28px;top:-8px;height:8px;width:2px;background:var(--timeline-color);z-index:0}.schedule-item-with-segments{display:block}.schedule-item-with-segments .schedule-item-main{min-width:0}.schedule-item-with-segments .schedule-item-segments{margin-left:var(--timeline-width)}.schedule-item-segment{position:relative;display:flex;align-items:stretch;padding:0;background:transparent;border-bottom:none}.schedule-item-segment .timeline-segment{position:absolute;top:0;bottom:0;left:calc(-1 * var(--timeline-width));justify-content:center;width:var(--timeline-width);min-width:var(--timeline-width)}.schedule-item-segment .timeline-segment:before{background:var(--timeline-color)}.timeline-icon-small{width:16px;height:16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1;box-shadow:0 1px 2px #0000000d}.timeline-dot{width:6px;height:6px;background:var(--color-text-tertiary);border-radius:50%}.segment-title{font-weight:500;color:var(--color-text-primary)}.schedule-item-segment .schedule-item-content{padding:8px 12px 8px 16px;flex:1;gap:12px;border-bottom:none}.schedule-children{display:flex;flex-direction:column;gap:0}.schedule-location-depth-1{margin:8px 8px 8px 12px;border-radius:14px;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 12px -4px #0000000f,0 1px 4px -1px #00000005;overflow:hidden;border-left:3px solid var(--color-primary);opacity:.97}.schedule-location-depth-1 .schedule-location-name{font-size:1.05rem}.schedule-location-depth-2{margin:6px 6px 6px 10px;border-radius:10px;border:1px solid rgba(0,0,0,.05);box-shadow:0 2px 8px -4px #0000000d;overflow:hidden;border-left:3px solid color-mix(in srgb,var(--color-primary) 50%,transparent)}.schedule-location-depth-2 .schedule-location-name{font-size:.95rem}.schedule-location-depth-3,.schedule-location-depth-4{margin:4px 4px 4px 8px;border-radius:8px;border:1px solid rgba(0,0,0,.04);overflow:hidden;border-left:2px solid color-mix(in srgb,var(--color-primary) 30%,transparent)}.schedule-location-depth-3 .schedule-location-name,.schedule-location-depth-4 .schedule-location-name{font-size:.9rem}@media(max-width:640px){.schedule-location-depth-1{margin:6px 4px 6px 8px}.schedule-location-depth-2{margin:4px 2px 4px 6px}}.smart-filter-footer{display:flex;justify-content:center;padding:24px 16px 40px}.smart-filter-btn{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--color-primary);font-size:.9rem;font-weight:500;cursor:pointer;padding:8px 16px}.smart-filter-btn:hover{color:var(--color-primary-hover)}.sticky-footer-portal{position:fixed;z-index:10000;transition:all .5s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;background-color:color-mix(in srgb,var(--color-surface) 95%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.sticky-footer-portal{bottom:0;left:0;right:0;width:100%;padding:16px;border-top:1px solid rgba(0,0,0,.06);box-shadow:0 -4px 20px #00000014;flex-direction:column;gap:8px}.sticky-footer-portal.visible{transform:translateY(0);opacity:1}.sticky-footer-portal.hidden{transform:translateY(100%);opacity:0}.sticky-footer-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;gap:8px}.sticky-footer-text{font-size:.875rem;font-weight:500;color:var(--color-text-secondary, #4b5563);order:2;white-space:nowrap}.sticky-footer-button{order:1;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px rgba(var(--color-primary-rgb, 59, 130, 246),.3)}.public-breadcrumb{margin-bottom:1rem;margin-top:1rem;font-size:.875rem}.public-breadcrumb ol{display:flex;list-style:none;padding:0;margin:0;gap:.5rem;align-items:center;flex-wrap:wrap}.public-breadcrumb li{display:flex;align-items:center;color:var(--color-text-secondary, #6b7280)}.public-breadcrumb a{color:var(--color-text-secondary, #6b7280);text-decoration:none;transition:color .15s ease}.public-breadcrumb a:hover{color:var(--color-primary, #2563eb);text-decoration:underline}.public-breadcrumb .separator{margin:0 .25rem;color:var(--color-text-tertiary, #9ca3af);opacity:.7}.public-breadcrumb .current{color:var(--color-text-primary, #111827);font-weight:500}@media(min-width:768px){.sticky-footer-portal{bottom:32px;left:50%;right:auto;width:auto;min-width:400px;transform:translate(-50%) translateY(0);border-radius:9999px;border:1px solid rgba(255,255,255,.4);box-shadow:0 10px 40px -10px #00000026,0 0 0 1px #0000000d;padding:12px 24px;flex-direction:row;gap:16px}.sticky-footer-portal.visible{transform:translate(-50%) translateY(0);opacity:1}.sticky-footer-portal.hidden{transform:translate(-50%) translateY(150%);opacity:0}.sticky-footer-content{flex-direction:row;justify-content:space-between;width:100%;gap:16px}.sticky-footer-text{order:1}.sticky-footer-button{order:2;width:auto;min-width:auto;padding:8px 20px}}.public-static-footer{background:var(--color-surface);border-top:1px solid var(--color-border);padding:2rem 0;margin-top:0}.public-bottom-cta{padding:3rem 1rem;text-align:center;background:var(--color-surface);border-top:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;gap:1rem}.public-bottom-cta-title{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.public-bottom-cta-desc{font-size:1rem;color:var(--color-text-secondary);max-width:600px;margin:0;line-height:1.5}.public-static-footer-content{max-width:1200px;margin:0 auto;padding:0 12px;display:flex;align-items:center;justify-content:space-between}.public-static-footer-left{display:flex;align-items:center;gap:16px}.public-static-footer-tagline{font-size:.875rem;color:var(--color-text-secondary)}.public-static-footer-center{display:flex;gap:24px}.public-static-footer-link{font-size:.875rem;color:var(--color-text-secondary);text-decoration:none;background:none;border:none;cursor:pointer;font-family:inherit;padding:0;transition:color .15s ease}.public-static-footer-link:hover{color:var(--color-text-primary)}.public-static-footer-right{font-size:.875rem;color:var(--color-text-tertiary)}@media(max-width:768px){.public-static-footer-content{flex-direction:column;gap:1.5rem;text-align:center}.public-static-footer-left{flex-direction:column;gap:.5rem}.public-static-footer-center{gap:16px}}
