.rotas-page,.rotas-page body{height:100%}.rotas-page body{overscroll-behavior:none;flex-direction:column;display:flex;overflow:hidden}.rotas{flex:1;min-height:0;position:relative}.rotas .rotas__map{background:var(--c-surface-2);position:absolute;inset:0}.rotas__map-loading{text-align:center;width:100%;color:var(--c-text-3);position:absolute;top:40%}.rotas [hidden],.rotas__dialog [hidden]{display:none!important}.rotas__panel{z-index:2;background:var(--c-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-direction:column;height:55%;transition:height .22s;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -6px 24px #0f172a24}.rotas__panel[data-sheet=peek]{height:148px}.rotas__panel[data-sheet=full]{height:calc(100% - var(--sp-3))}.rotas__panel:not(.has-result)[data-sheet=peek]{height:55%}.rotas__handle{cursor:grab;touch-action:none;background:0 0;border:0;flex:none;place-items:center;width:100%;height:28px;display:grid}.rotas__handle-bar{border-radius:var(--radius-full);background:var(--c-border-strong);width:44px;height:5px}.rotas__collapse{display:none}.rotas__body{overscroll-behavior:contain;min-height:0;padding:0 var(--gutter) calc(var(--sp-6) + env(safe-area-inset-bottom));gap:var(--sp-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.rotas__header h1{font-size:var(--fs-lg);margin:0}.rotas__header p{margin:var(--sp-1) 0 0;font-size:var(--fs-sm)}.rotas__panel.has-result .rotas__result{order:-1}.rotas__panel.has-result .rotas__header,.rotas__edit-summary{display:none}.rotas__panel.has-result .rotas__edit-summary{min-height:var(--tap);color:var(--c-brand-700);cursor:pointer;align-items:center;font-weight:600;display:flex}.rotas__form{gap:var(--sp-4);display:grid}.rotas__trip{gap:var(--sp-3);border:0;margin:0;padding:0;display:grid}.rotas__stops{gap:var(--sp-3);display:grid}.rotas__stops:empty{display:none}.rotas__place{gap:var(--sp-2);display:grid;position:relative}.rotas__combo input{font-size:var(--fs-base)}.rotas__remove{width:var(--tap);color:var(--c-text-3);cursor:pointer;background:0 0;border:0;font-size:1.5rem}.rotas__options{z-index:5;margin:var(--sp-1) 0 0;padding:var(--sp-1);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-height:280px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.rotas__options li{padding:var(--sp-3);border-radius:var(--radius-sm);cursor:pointer}.rotas__options li[aria-selected=true],.rotas__options li:hover{background:var(--c-brand-50)}.rotas__trip-actions{justify-content:space-between;gap:var(--sp-2);display:flex}.rotas__row{gap:var(--sp-4);grid-template-columns:1fr;display:grid}@media (width>=420px){.rotas__row{grid-template-columns:1fr 1fr}.rotas__row:has([data-preference]){grid-template-columns:1fr}}.rotas__vehicle>summary,.rotas__tolls>summary{min-height:var(--tap);cursor:pointer;align-items:center;font-weight:600;display:flex}.rotas__vehicle-fields{gap:var(--sp-4);padding-top:var(--sp-2);display:grid}.rotas__check{align-items:center;gap:var(--sp-3);min-height:var(--tap);font-weight:600;display:flex}.rotas__check input{width:22px;height:22px;accent-color:var(--c-brand-600)}.rotas__status:empty{display:none}.rotas__status{color:var(--c-text-2);margin:0;font-weight:600}.rotas__result{gap:var(--sp-4);display:grid}.rotas__total{gap:var(--sp-1);display:grid}.rotas__total p{margin:0}.rotas__total-label{font-size:var(--fs-sm);color:var(--c-text-2);font-weight:600}.rotas__total-value{font-size:var(--fs-2xl);color:var(--c-brand-800);font-variant-numeric:tabular-nums;font-weight:800;line-height:var(--lh-tight)}.rotas__total-person:empty{display:none}.rotas__total-person{font-weight:600}.rotas__breakdown{gap:var(--sp-3);grid-template-columns:1fr 1fr;margin:0;display:grid}.rotas__breakdown div{padding:var(--sp-3);background:var(--c-surface-2);border-radius:var(--radius)}.rotas__breakdown dt{font-size:var(--fs-xs);color:var(--c-text-3);font-weight:600}.rotas__breakdown dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.rotas__warning{padding:var(--sp-3);border-radius:var(--radius);background:var(--c-accent-100);color:var(--c-accent-700);font-size:var(--fs-sm);grid-column:1/-1;margin:0;font-weight:600}.rotas__alternatives h3{font-size:var(--fs-sm);margin:0 0 var(--sp-2)}.rotas__share{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.rotas__share .btn{white-space:nowrap;padding-inline:var(--sp-3)}.rotas__toll-list{gap:var(--sp-2);margin:0;padding:0;list-style:none;display:grid}.rotas__toll{padding:var(--sp-3);border:1px solid var(--c-border);border-left:4px solid var(--c-accent-500);border-radius:var(--radius-sm)}.rotas__toll--ff{border-left-color:#7c3aed}.rotas__toll-head{justify-content:space-between;gap:var(--sp-3);display:flex}.rotas__toll-value{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}.rotas__toll p{margin:var(--sp-1) 0 0}.rotas__ff{font-size:var(--fs-sm);color:#5b21b6}.rotas__link{padding:var(--sp-2) 0 0;min-height:32px;color:var(--c-brand-700);cursor:pointer;background:0 0;border:0;text-decoration:underline}.rotas__about{border-top:1px solid var(--c-border);padding-top:var(--sp-4)}.rotas__about h2{font-size:var(--fs-md)}.rotas__about h3{font-size:var(--fs-base)}.rotas__dialog{width:min(440px, calc(100% - 2 * var(--gutter)));border-radius:var(--radius-lg);padding:var(--sp-6);box-shadow:var(--shadow-lg);border:0}.rotas__dialog::backdrop{background:#0f172a73}.rotas__dialog form{gap:var(--sp-4);display:grid}.rotas__dialog h2{font-size:var(--fs-lg);margin:0}.rotas__dialog textarea{padding:var(--sp-3) var(--sp-4);font:inherit;resize:vertical;background:0 0;border:0;flex:1}.rotas__dialog-actions{justify-content:flex-end;gap:var(--sp-3);display:flex}.rotas .maplibregl-ctrl-bottom-right,.rotas .maplibregl-ctrl-bottom-left{bottom:56%}@media (width>=900px){.rotas__panel,.rotas__panel[data-sheet]{top:var(--sp-4);left:var(--sp-4);right:auto;bottom:var(--sp-4);border-radius:var(--radius-lg);width:400px;height:auto;box-shadow:var(--shadow-lg)}.rotas__handle{display:none}.rotas__collapse{margin:var(--sp-2) var(--sp-2) 0;align-self:flex-end;display:inline-flex}.rotas__body{padding-top:0}.rotas__panel.is-collapsed{width:auto;bottom:auto}.rotas__panel.is-collapsed .rotas__body{display:none}.rotas__panel.is-collapsed .rotas__collapse{margin:var(--sp-2)}.rotas .maplibregl-ctrl-bottom-right,.rotas .maplibregl-ctrl-bottom-left{bottom:0}}
