﻿/* Geometría ajustable; los tokens y componentes siguen siendo los de Stitch. */
.app[data-drawer-state]{height:var(--visible-height,100dvh);position:relative;top:var(--viewport-top,0px);overflow:hidden;padding-bottom:var(--attribution-height,66px)}
.app[data-drawer-state] .map-area{flex:1 1 0;min-height:0}
.app[data-drawer-state] .drawer{position:absolute;left:0;right:0;bottom:var(--attribution-height,66px);height:var(--drawer-height,112px);max-height:none;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:0 12px 12px;margin-top:0;border-radius:24px 24px 0 0;box-shadow:0 -8px 24px -4px rgba(4,47,46,.1);contain:layout paint}
.app[data-drawer-state] .attribution{position:absolute;bottom:0;left:0;width:100%;transform:none}
#drawerHandle{position:relative;z-index:1;width:100%;min-height:44px;flex:0 0 44px;padding:0;align-items:center;justify-content:center;background:white;border-radius:16px;touch-action:none;user-select:none;cursor:ns-resize}
#drawerHandle .drag-handle{width:40px;height:4px;border-radius:9999px;background:rgba(188,201,198,.8)}
#drawerHandle:focus-visible{outline-offset:-3px}
#drawerStateLabel,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#drawerSummary{flex:1;min-width:0;min-height:0;overflow:hidden;font:600 14px/20px Inter,sans-serif;color:var(--on-surface);padding:0 4px 4px}
#drawerSummary p{font:400 12px/17px 'Plus Jakarta Sans',sans-serif;color:var(--on-surface-variant);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.app[data-drawer-state="collapsed"] #drawerContent{display:none!important}
.app[data-drawer-state="collapsed"] .drawer{min-height:0;max-height:var(--drawer-height,112px)}
#drawerContent{position:relative;z-index:0;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scroll-padding-block:8px;padding:3px 3px 12px;touch-action:pan-y}
.app[data-drawer-state] #stopSheet,.app[data-drawer-state] .stop-card,.app[data-drawer-state] #routePanel{display:block;flex:none;min-height:0}
.app[data-drawer-state] .route-stops{height:200px;min-height:120px;max-height:none;flex:none;overflow:auto;overscroll-behavior:contain}
.app[data-drawer-state="expanded"] .route-stops{height:260px}
.app[data-drawer-state] #stopResults{max-height:none;overflow:visible;padding:3px;margin-bottom:8px}
.app[data-drawer-state] .stop-card{padding:16px;border-radius:16px;background:var(--surface-container-low)}
.app[data-drawer-state] .map-controls{gap:8px}
.app.drawer-keyboard .map-controls{flex-direction:row;top:8px;right:8px;gap:4px}
.app.drawer-keyboard .map-pill{top:8px;left:8px;font-size:11px;padding:6px 8px;max-width:calc(100% - 172px)}
.app.drawer-keyboard .attribution{position:absolute;bottom:0}
.app[data-drawer-state] .menu-card{max-height:calc(var(--visible-height,100dvh) - 84px - var(--attribution-height,66px))}
.drawer-dragging{cursor:ns-resize;user-select:none}
.drawer-dragging .drawer{transition:none!important;will-change:height}
.app.drawer-keyboard .drawer{transition:none!important}
@media(prefers-reduced-motion:no-preference){.app.drawer-settling:not(.drawer-dragging) .drawer{transition:height .16s ease-out}}
@media(prefers-reduced-motion:no-preference){#drawerHandle:hover .drag-handle{background:var(--outline-variant)}}

#drawerSummary #drawerSummaryTitle{font:600 14px/20px Inter,sans-serif;color:var(--on-surface);margin:0}
