@charset "UTF-8";.login-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-landing{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;overflow:hidden}.login-landing__scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(to left,var(--login-scrim),transparent 58%);pointer-events:none}.login-landing__panel{position:absolute;inset:0 0 0 auto;z-index:2;display:flex;flex-direction:column;align-items:stretch;gap:1.25rem;width:25%;min-width:22rem;height:100%;padding:1.75rem 1.5rem 1.15rem;overflow:auto;background:var(--login-column);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow)}.login-landing__hero{position:absolute;z-index:2;left:0;bottom:0;top:0;width:calc(100% - max(25%,22rem));display:flex;flex-direction:column;justify-content:flex-end;gap:.7rem;padding:3rem 3.25rem 3.25rem;color:var(--login-on-media);pointer-events:none}.login-landing__info{display:flex;flex-direction:column;gap:.7rem;max-width:100%;padding:1.25rem 1.4rem 1.3rem;border:1px solid color-mix(in srgb,var(--login-on-media) 22%,transparent);border-radius:18px;background:var(--login-info);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.login-landing__info .brand-mark{margin-bottom:.1rem}.login-landing__lead{margin:0;color:var(--login-on-media-muted);font-size:1.05rem;line-height:1.45;text-shadow:none}.login-landing__points{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.login-landing__points li{display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .75rem .32rem .55rem;border:1px solid color-mix(in srgb,var(--login-on-media) 28%,transparent);border-radius:999px;background:color-mix(in srgb,#041018 38%,transparent);color:var(--login-on-media);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-shadow:none}.login-landing__build{margin:.1rem 0 0;color:var(--login-on-media-muted);font-size:.85rem;font-weight:650}.login-landing__lede{display:none;margin:0;color:var(--login-on-media-muted);font-size:.88rem;line-height:1.4;text-align:center}.login-landing__brands{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%}.login-landing__brands .brand-mark{filter:drop-shadow(0 2px 6px color-mix(in srgb,var(--login-on-media) 55%,transparent))}.login-landing__logo{display:block;width:100%;object-fit:contain}.login-landing__logo--station{height:3.9rem}.login-landing__logo--etra{width:auto;height:2.4rem;margin-inline:auto}.login-landing .login-card{width:100%;flex:0 1 auto;display:flex;flex-direction:column;justify-content:flex-start;padding:1.2rem 1.15rem 1.15rem;border:1px solid color-mix(in srgb,var(--login-on-media) 16%,transparent);border-radius:.95rem;background:var(--login-card);box-shadow:var(--shadow);color:var(--login-on-media)}.login-landing .login-card h1{margin:0 0 .35rem;font-size:1.35rem;font-weight:650;letter-spacing:.04em}.login-landing .login-card__hint{margin:0 0 1.1rem;color:var(--login-on-media-muted);font-size:.9rem}.login-landing .field{color:var(--login-on-media)}.login-landing .field__control{display:flex;align-items:center;gap:.45rem;padding:0 .7rem;border:1px solid color-mix(in srgb,var(--login-on-media) 22%,transparent);border-radius:.7rem;background:var(--bg-card);color:var(--text-muted)}.login-landing .field__control input{flex:1;min-width:0;padding:.65rem 0;border:0;background:transparent}.login-landing .field__control input:focus{outline:none}.login-landing .field__control:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.login-landing .field__reveal{display:inline-grid;place-items:center;flex:0 0 auto;width:2rem;height:2rem;margin-right:-.25rem;padding:0;border:0;border-radius:.45rem;background:transparent;color:inherit;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.login-landing .field__reveal:hover,.login-landing .field__reveal:focus-visible,.login-landing .field__reveal.is-on{color:var(--accent)}.login-landing .field__reveal:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-dim)}.login-landing .login-card__error{display:flex;align-items:flex-start;gap:.4rem;margin:0 0 .75rem;padding:.55rem .7rem;border:1px solid color-mix(in srgb,var(--danger) 72%,#fff);border-radius:.55rem;background:color-mix(in srgb,var(--danger) 28%,transparent);color:color-mix(in srgb,var(--danger) 42%,#fff);font-size:.9rem;font-weight:700;line-height:1.35}.login-landing .login-card__error svg{flex:0 0 auto;margin-top:.1rem}.login-landing .ui-toggle{margin:.1rem 0 .85rem;color:var(--login-on-media)}.login-landing .ui-toggle__track{border-color:color-mix(in srgb,var(--login-on-media) 28%,transparent);background:color-mix(in srgb,var(--login-on-media) 22%,transparent)}.login-landing .ui-toggle__thumb{background:var(--login-on-media)}.login-landing .ui-toggle:has(input:checked) .ui-toggle__track{border-color:var(--accent);background:var(--accent)}.login-landing .login-card__submit{width:100%;justify-content:center;min-height:2.75rem;margin-top:.35rem}.login-landing__legal{display:flex;flex-direction:column;align-items:center;gap:.45rem;margin-top:auto;padding-top:1rem;border-top:1px solid color-mix(in srgb,var(--login-on-media) 16%,transparent)}.login-landing__etra{display:flex;justify-content:center}.login-landing__copy{margin:0;color:var(--login-on-media);font-size:.92rem;font-weight:750;letter-spacing:.03em}.login-landing__copy a{color:inherit}.login-landing__version{display:inline-flex;align-items:baseline;gap:.4rem;margin:0;padding:.2rem .55rem;border:1px solid transparent;border-radius:.7rem;background:transparent;color:var(--login-on-media-muted)}.login-landing__version strong{color:var(--login-on-media);font-size:.82rem;font-weight:800;white-space:nowrap}.login-landing__version-date{font-size:.75rem;font-weight:650;white-space:nowrap}.login-card{width:min(24rem,100%);padding:1.5rem;border:1px solid var(--border);border-radius:1.1rem;background:var(--bg-panel);box-shadow:var(--shadow)}.login-card__eyebrow{margin:0;color:var(--accent);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.login-card h1{margin:.35rem 0 .5rem}.login-card__hint{color:var(--text-secondary)}.login-card__error{margin:0 0 .75rem;color:var(--danger);font-weight:700}@media(max-width:1100px){.login-landing__hero{display:none}.login-landing__scrim{background:radial-gradient(ellipse at center,transparent 18%,var(--login-scrim) 100%)}.login-landing__panel{top:0;right:0;bottom:0;left:0;width:min(24.5rem,100% - 2rem);min-width:0;height:fit-content;max-height:calc(100dvh - 2rem);margin:auto;padding:1.25rem 1.15rem 1rem;border-radius:18px;justify-content:safe center}.login-landing__legal{margin-top:0}}[data-device=desktop-portrait] .login-landing__hero{display:flex}[data-device=desktop-portrait] .login-landing__scrim{background:linear-gradient(to left,var(--login-scrim),transparent 58%)}[data-device=desktop-portrait] .login-landing__panel{inset:0 0 0 auto;width:25%;min-width:22rem;height:100%;max-height:none;margin:0;padding:1.75rem 1.5rem 1.15rem;border-radius:0;justify-content:safe center}[data-device=desktop-portrait] .login-landing__legal{margin-top:0}@media(max-width:480px){.login-landing__panel{width:100%;height:100%;max-height:none;margin:0;padding:5.6rem 1rem 1rem;border-radius:0;justify-content:safe center}.login-landing__legal{margin-top:0}.login-landing__logo--station{height:3.25rem}}.toast-error-content{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;min-width:0}.toast-error-content__message{margin:0;overflow-wrap:anywhere}.toast-error-content__detail{margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:.16em;cursor:pointer}.toast-error-content__detail:hover,.toast-error-content__detail:focus-visible{opacity:.82}.toast-timeline-note{display:grid;gap:.2rem;max-width:18rem;text-align:left}.toast-timeline-note__title{font-size:.78rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.toast-timeline-note__time{font-size:.92rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--accent)}.toast-timeline-note__text{margin:0;font-size:.82rem;line-height:1.35;white-space:pre-wrap}.toast-timeline-note__author{font-size:.72rem;color:var(--text-muted)}.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border-radius:999px;background:var(--accent-dim);color:var(--accent-secondary);font-size:.85rem;font-weight:700}[data-theme=dark] .pill:not([class*=pill--]){color:var(--accent)}.pill--ok{background:var(--ok-soft);color:var(--ok)}.pill--fail{background:var(--danger-soft);color:var(--danger);font-weight:800}.pill--buses{background:var(--accent-dim);color:var(--accent)}.pill--urban{background:var(--ok-soft);color:var(--ok)}.pill--other{background:var(--bg-hover);color:var(--text-secondary)}.pill--muted{background:var(--bg-hover);color:var(--text-muted)}.pill--local{background:var(--festivo-local-soft);color:var(--festivo-local)}.pill--regional{background:var(--festivo-regional-soft);color:var(--festivo-regional)}.pill--nacional{background:var(--festivo-nacional-soft);color:var(--festivo-nacional)}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.when-stamp{display:inline-flex;align-items:center;gap:.35rem;padding:.12rem .45rem .12rem .32rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-elevated);color:var(--text-muted);font-variant-numeric:tabular-nums}.when-stamp__date{color:var(--text-secondary);font-size:.78rem;font-weight:650}.when-stamp__time{color:var(--text-primary);font-size:.8rem;font-weight:800;padding-left:.4rem;border-left:1px solid var(--border)}.when-stamp--compact{padding:.12rem .4rem}.when-stamp--compact .when-stamp__time{padding-left:0;border-left:none}.login-carousel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none;background:var(--bg-primary)}.login-carousel__slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1);transition:opacity var(--login-carousel-fade, 1s) ease-in-out,transform 0s var(--login-carousel-fade, 1s)}.login-carousel__slide.is-active{opacity:1;transform:scale(1.06);transition:opacity var(--login-carousel-fade, 1s) ease-in-out,transform var(--login-carousel-hold, 8s) ease-out}@media(prefers-reduced-motion:reduce){.login-carousel__slide,.login-carousel__slide.is-active{transform:none;transition:none}}.login-station{position:absolute;z-index:3;top:1.35rem;left:1.5rem;margin:0;max-width:calc(100% - max(25%,22rem) - 3rem);pointer-events:none;display:flex;flex-direction:column;align-items:flex-start;gap:.12em;font-family:Arial Black,Impact,Segoe UI,sans-serif;font-size:clamp(1.05rem,1.8vw,1.55rem);font-weight:900;line-height:1.05;letter-spacing:.015em}.login-station__line{display:block}.login-station__line--place{font-size:1.85em}.login-station__letter{--letter-index: 0;display:inline-block;animation:login-station-fall .85s cubic-bezier(.18,.85,.28,1) both;animation-delay:calc(var(--letter-index) * 70ms)}.login-station__glyph{display:inline-block;color:#fff6;-webkit-text-stroke:2.5px #000;paint-order:stroke fill;animation:login-station-shine 6s ease-in-out infinite;animation-delay:calc(3.15s + var(--letter-index) * 45ms)}@keyframes login-station-fall{0%{opacity:0;transform:translateY(-1.7em) rotate(-10deg)}68%{opacity:1;transform:translateY(.14em) rotate(1.5deg)}to{opacity:1;transform:none}}@keyframes login-station-shine{0%{color:#fff6;text-shadow:none;transform:none}4%{color:#fffffff5;text-shadow:0 0 .22em rgba(255,255,255,.75),0 0 .7em rgba(150,210,255,.55);transform:translateY(-.14em)}11%,to{color:#fff6;text-shadow:none;transform:none}}@media(prefers-reduced-motion:reduce){.login-station__letter,.login-station__glyph{animation:none;opacity:1;transform:none}}@media(max-width:480px){.login-station{z-index:4;top:.7rem;left:.85rem;max-width:calc(100% - 1.7rem);font-size:.92rem}}.ui-toggle{position:relative;display:inline-flex;align-items:center;gap:.65rem;min-height:2.25rem;margin:0;color:inherit;font-size:.85rem;font-weight:650;cursor:pointer;-webkit-user-select:none;user-select:none}.ui-toggle input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;margin:0;padding:0;border:0;opacity:0;cursor:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ui-toggle__label{flex:0 1 auto;min-width:0;white-space:nowrap}.ui-toggle__track{position:relative;flex:0 0 auto;width:2.4rem;height:1.35rem;border:1px solid var(--border);border-radius:999px;background:var(--border);transition:background-color .2s ease,border-color .2s ease,box-shadow .15s ease}.ui-toggle__thumb{position:absolute;top:.12rem;left:.12rem;width:1.05rem;height:1.05rem;border-radius:999px;background:var(--bg-elevated);box-shadow:var(--shadow);transition:transform .2s ease}.ui-toggle:hover:not(.is-disabled) .ui-toggle__track{border-color:var(--accent)}.ui-toggle:has(input:checked) .ui-toggle__track{border-color:var(--accent);background:var(--accent)}.ui-toggle:has(input:checked) .ui-toggle__thumb{transform:translate(1.05rem)}.ui-toggle:has(input:focus-visible) .ui-toggle__track{box-shadow:0 0 0 3px var(--accent-dim)}.ui-toggle.is-disabled{opacity:.55;cursor:not-allowed}.ui-toggle--button{box-sizing:border-box;display:inline-flex;min-width:11rem;min-height:2.55rem;padding:.45rem .9rem .45rem .7rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-secondary);font-weight:700;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .15s ease}.ui-toggle--button:hover:not(.is-disabled){background:var(--bg-hover);color:var(--text-primary);transform:translateY(-1px)}.ui-toggle--button:has(input:checked){border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--text-primary)}.ui-toggle--button:has(input:focus-visible){box-shadow:0 0 0 3px var(--accent-dim)}.ui-toggle-panel{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem .45rem;padding:.35rem .45rem;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-radius:.7rem;background:var(--bg-form-panel-secondary)}.ui-toggle-panel .ui-toggle--button{min-width:0;min-height:2.15rem;padding:.32rem .72rem .32rem .55rem;font-size:.78rem}@media(prefers-reduced-motion:reduce){.ui-toggle__track,.ui-toggle__thumb,.ui-toggle--button{transition:none}.ui-toggle--button:hover:not(.is-disabled){transform:none}}:root{--rt-color-white:#fff;--rt-color-dark:#222;--rt-color-success:#8dc572;--rt-color-error:#be6464;--rt-color-warning:#f0ad4e;--rt-color-info:#337ab7;--rt-opacity:.9;--rt-transition-show-delay:.15s;--rt-transition-closing-delay:.15s;--rt-arrow-size:8px}.core-styles-module_tooltip__3vRRp{left:0;opacity:0;pointer-events:none;position:absolute;top:0}.core-styles-module_fixed__pcSol{position:fixed}.core-styles-module_arrow__cvMwQ{-webkit-backface-visibility:hidden;backface-visibility:hidden;background:inherit;position:absolute;z-index:-1}.core-styles-module_content__BRKdB{position:relative;z-index:1}.core-styles-module_noArrow__xock6{display:none}.core-styles-module_clickable__ZuTTB{pointer-events:auto}.core-styles-module_show__Nt9eE{opacity:var(--rt-opacity);transition:opacity var(--rt-transition-show-delay) ease-out;will-change:opacity}.core-styles-module_closing__sGnxF{opacity:0;transition:opacity var(--rt-transition-closing-delay) ease-in;will-change:opacity}.styles-module_tooltip__mnnfp{border-radius:3px;font-size:90%;width:max-content}.styles-module_content__ydYdI{background:inherit;border-radius:inherit;padding:8px 16px}.styles-module_arrow__K0L3T{height:var(--rt-arrow-size);width:var(--rt-arrow-size)}[class*=react-tooltip__place-top]>.styles-module_arrow__K0L3T{transform:rotate(45deg)}[class*=react-tooltip__place-right]>.styles-module_arrow__K0L3T{transform:rotate(135deg)}[class*=react-tooltip__place-bottom]>.styles-module_arrow__K0L3T{transform:rotate(225deg)}[class*=react-tooltip__place-left]>.styles-module_arrow__K0L3T{transform:rotate(315deg)}.styles-module_dark__xNqje{background:var(--rt-color-dark);color:var(--rt-color-white)}.styles-module_light__Z6W-X{background-color:var(--rt-color-white);color:var(--rt-color-dark)}.styles-module_success__A2AKt{background-color:var(--rt-color-success);color:var(--rt-color-white)}.styles-module_warning__SCK0X{background-color:var(--rt-color-warning);color:var(--rt-color-white)}.styles-module_error__JvumD{background-color:var(--rt-color-error);color:var(--rt-color-white)}.styles-module_info__BWdHW{background-color:var(--rt-color-info);color:var(--rt-color-white)}.ui-tooltip-anchor{display:inline-flex;align-items:center}.ui-tooltip__bubble.react-tooltip{--rt-color-dark: var(--bg-elevated);--rt-color-white: var(--text-primary);--rt-opacity: 1;--rt-transition-show-delay: .16s;--rt-transition-closing-delay: .14s;z-index:2400;padding:0;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow);font-family:Segoe UI,Trebuchet MS,sans-serif;font-size:.75rem;font-weight:600;line-height:1.35;letter-spacing:.01em;max-width:min(22rem,100vw - 1.25rem)}.ui-tooltip__bubble.react-tooltip[class*=place-top]{transform:translateY(.28rem) scale(.96)}.ui-tooltip__bubble.react-tooltip[class*=place-bottom]{transform:translateY(-.28rem) scale(.96)}.ui-tooltip__bubble.react-tooltip.react-tooltip__show{transform:translateY(0) scale(1);transition:opacity var(--rt-transition-show-delay) ease-out,transform var(--rt-transition-show-delay) ease-out}.ui-tooltip__bubble.react-tooltip.react-tooltip__closing{opacity:0;transform:translateY(.16rem) scale(.97);transition:opacity var(--rt-transition-closing-delay) ease-in,transform var(--rt-transition-closing-delay) ease-in}.ui-tooltip__bubble.react-tooltip.react-tooltip__place-bottom.react-tooltip__closing{transform:translateY(-.16rem) scale(.97)}@media(prefers-reduced-motion:reduce){.ui-tooltip__bubble.react-tooltip{--rt-transition-show-delay: .01s;--rt-transition-closing-delay: .01s;transform:none}}.ui-tooltip__bubble .react-tooltip-content-wrapper{padding:.35rem .65rem;background:inherit;color:inherit;border-radius:inherit}.ui-tooltip__bubble .react-tooltip-arrow{background:var(--bg-elevated);border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.ui-tooltip__rows{display:flex;flex-direction:column;gap:.22rem;min-width:9rem}.ui-tooltip__heading{margin:0;color:var(--text-muted);font-size:.68rem;font-weight:700}.ui-tooltip__rows ul{display:flex;flex-direction:column;gap:.18rem;margin:0;padding:0;list-style:none}.ui-tooltip__rows li{display:flex;align-items:stretch;gap:.4rem;min-width:0}.ui-tooltip__label{display:flex;flex-direction:column;gap:.02rem;min-width:0;padding-block:.04rem}.ui-tooltip__title{display:inline-flex;align-items:center;gap:.28rem;min-width:0}.ui-tooltip__clock{font-variant-numeric:tabular-nums;font-weight:800}.ui-tooltip__sep{color:var(--text-muted);font-weight:600}.ui-tooltip__detail{color:var(--text-muted);font-size:.68rem;font-weight:500}.ui-tooltip__mark{flex:0 0 .28rem;width:.28rem;border-radius:.08rem;background:var(--border)}.ui-tooltip__mark.is-empty{box-shadow:inset 0 0 0 1px var(--border);background:transparent}.route-kind-mark{flex:0 0 auto;display:inline-flex;align-items:center;line-height:0}.route-kind-mark--entrada{color:var(--route-in)}.route-kind-mark--salida{color:var(--route-out)}.route-kind-mark--pareado{color:var(--route-pair)}.route-kind-mark__arrows{display:inline-flex;align-items:center;margin-right:-.12rem}.route-kind-mark__arrows svg+svg{margin-left:-.28rem}.route-kind-mark svg{width:1rem;height:1rem}.route-kind-mark--sm svg{width:.82rem;height:.82rem}.brand-mark{--brand-logo-aspect: 4.774;display:inline-block;width:calc(1em * var(--brand-logo-aspect));max-width:100%;line-height:0}.brand-mark--tagline{--brand-logo-aspect: 3.628}.brand-mark__logo{display:block;width:100%;height:auto;aspect-ratio:var(--brand-logo-aspect);object-fit:cover;object-position:top center;pointer-events:none;filter:drop-shadow(0 1px 0 var(--login-on-media)) drop-shadow(0 8px 18px color-mix(in srgb,#041018 48%,transparent))}.brand-mark--sm{font-size:2.15rem}.brand-mark--md{font-size:2.35rem}.brand-mark--lg{font-size:clamp(3.1rem,6.2vw,5.1rem)}.brand-mark--md.brand-mark--tagline{font-size:3.45rem}.brand-mark--lg.brand-mark--tagline{font-size:clamp(4.2rem,8.2vw,6.9rem)}.brand-mark--on-media{filter:drop-shadow(0 1px 0 var(--login-on-media)) drop-shadow(0 8px 18px color-mix(in srgb,#041018 48%,transparent))}.brand-mark--glow{position:relative;width:auto;height:1em}.brand-mark--glow .brand-mark__logo,.brand-mark--glow .brand-mark__corona{width:auto;height:100%;aspect-ratio:auto;object-fit:contain}.brand-mark--glow .brand-mark__logo{position:relative;z-index:1;filter:none}.brand-mark--glow .brand-mark__corona{position:absolute;left:50%;top:50%;z-index:0;transform:translate(-50%,-50%);filter:brightness(0) invert(1) blur(.5px);opacity:.9}.brand-mark--drive{--brand-drive-mask: linear-gradient(to right, transparent 0, #000 5%, #000 95%, transparent 100%);display:block;position:relative;width:100%;padding-block:.05em;container-type:inline-size;-webkit-mask-image:var(--brand-drive-mask);mask-image:var(--brand-drive-mask)}.brand-mark__runner{display:block;position:relative;width:calc(1em * var(--brand-logo-aspect));max-width:100%;animation:brand-drive 10s linear infinite;will-change:transform}.brand-mark--drive .brand-mark__logo{position:relative;z-index:1;aspect-ratio:auto;object-fit:contain}.brand-mark__trail{position:absolute;top:16%;right:48%;z-index:0;width:145%;height:56%;border-radius:999px;background:linear-gradient(to right,transparent,color-mix(in srgb,var(--accent) 45%,transparent) 55%,color-mix(in srgb,#fff 75%,transparent));filter:blur(12px);opacity:0;transform-origin:right center;pointer-events:none;animation:brand-drive-trail 10s linear infinite}@keyframes brand-drive{0%,45%{transform:none;animation-timing-function:cubic-bezier(.62,0,.95,.4)}51.5%{transform:translate3d(calc(100cqw + 15%),0,0) scaleX(1.16);animation-timing-function:steps(1,jump-end)}88%{transform:translate3d(-115%,0,0) scaleX(1.14);animation-timing-function:cubic-bezier(.1,.72,.24,1)}93%{transform:translate3d(3.5%,0,0) scaleX(1.03);animation-timing-function:cubic-bezier(.32,0,.2,1)}95%,to{transform:none}}@keyframes brand-drive-trail{0%,45%{opacity:0;transform:scaleX(.3)}49%{opacity:.9;transform:scaleX(1.08)}52%,88%{opacity:0;transform:scaleX(.3)}90.5%{opacity:.85;transform:scaleX(1)}94.5%,to{opacity:0;transform:scaleX(.3)}}@media(prefers-reduced-motion:reduce){.brand-mark__runner{animation:none}.brand-mark__trail{display:none}}.app-shell{--sidebar-rail: 4.2rem;--sidebar-expanded: 16.5rem;--sidebar-current: var(--sidebar-expanded);display:flex;flex-direction:column;min-height:100vh;height:100vh;min-width:0;max-width:100%;overflow:hidden}.app-shell:has(.sidebar-slot.is-collapsed){--sidebar-current: var(--sidebar-rail)}.app-shell:has(.sidebar.is-hover-open){--sidebar-current: var(--sidebar-expanded)}.app-shell:has(.sidebar-slot.is-drawer){--sidebar-current: 0rem}html[data-dashboard-maximized] .app-shell:has(.sidebar-slot){--sidebar-current: 0rem}html[data-dashboard-maximized] .app-shell .sidebar-slot{flex-basis:0;width:0;overflow:hidden;pointer-events:none}.app-shell.is-view-only .catalog-page>.catalog-page__toolbar,.app-shell.is-view-only .rutas-page__toolbar{display:none}.app-shell.is-view-only .table-row-actions{display:none}.app-shell__body{position:relative;display:flex;flex:1;min-height:0;overflow:hidden}.app-shell__column{display:flex;flex:1;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.app-shell__workspace{position:relative;display:flex;flex:1;min-height:0;overflow:hidden}.app-shell__maximize{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none}.app-shell__maximize:has(*){pointer-events:auto}.app-shell__content{--dock-toggle-width: 1.55rem;--dock-hint-label-collapsed: 2.15rem;--dock-handle-gutter: calc(var(--dock-toggle-width) + var(--dock-hint-label-collapsed) + .75rem);--footer-handle-gutter: calc(2.55rem + .4rem);--shell-pad-x: 1rem;--shell-pad-top: 1.25rem;--shell-pad-bottom: 1rem;position:relative;z-index:0;display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;padding-right:var(--dock-handle-gutter);overflow:hidden}.app-shell__main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;padding:var(--shell-pad-top) 0 0 var(--shell-pad-x);overflow:hidden}.app-shell__view{flex:1 1 auto;min-width:0;min-height:0;padding:0 var(--shell-pad-x) var(--shell-pad-bottom) 0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.app-shell__view:has(.timeline-page),.app-shell__view:has(.servicios-dia-page),.app-shell__view:has(.dashboard-page),.app-shell__view:has(.issues-page),.app-shell__view:has(.rutas-page),.app-shell__view:has(.darsenas-page),.app-shell__view:has(.catalog-page),.app-shell__view:has(.futuro-page),.app-shell__view:has(.plate-photos-page){overflow:hidden;display:flex;flex-direction:column;scrollbar-gutter:auto;padding-bottom:var(--footer-handle-gutter)}.app-shell__main .workspace-tabs-bar{padding-right:var(--shell-pad-x)}@media(max-width:1100px){.app-shell__content{--shell-pad-x: 1rem;--shell-pad-top: 1rem;--shell-pad-bottom: .85rem}}@media(max-width:480px){.app-shell__content{--shell-pad-x: .75rem;--shell-pad-top: .85rem;--shell-pad-bottom: .75rem}}.app-topbar{container:topbar/inline-size;display:flex;flex:0 0 auto;align-items:center;gap:.75rem;min-width:0;min-height:4.5rem;padding:.5rem 1rem;border-bottom:1px solid var(--border);background:var(--bg-panel)}[data-device=mobile] .app-topbar,[data-device=tablet] .app-topbar,html[data-size=s] .app-topbar,html[data-size=m] .app-topbar{flex-wrap:wrap;row-gap:.45rem}html[data-size=l] .app-topbar,html[data-size=xl] .app-topbar{flex-wrap:nowrap}html[data-size=m] .app-topbar__start,html[data-size=s] .app-topbar__start{flex-wrap:wrap;row-gap:.4rem}@container topbar (max-width: 68rem){.app-topbar__user-btn .user-mark__name,.app-topbar__user-chevron{display:none}.app-topbar__user-btn{padding:.22rem}}.app-topbar__start,.app-topbar__end{display:flex;align-items:center;gap:.65rem}.app-topbar__start{flex:0 1 auto;min-width:0}.app-topbar__end{flex-shrink:0;margin-left:auto}.app-topbar__theme{display:inline-flex}.app-topbar__logo-effect{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:fit-content;max-width:100%;padding:.28rem .7rem;border:1px var(--border) solid;border-radius:.85rem;background:var(--brand-halo);color:inherit;text-decoration:none;cursor:pointer}.app-topbar__logo-effect:before{position:absolute;z-index:1;top:-50%;bottom:-50%;left:-45%;width:32%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 65%,var(--bg-elevated)),transparent);filter:blur(1px);opacity:.8;pointer-events:none;content:"";transform:skew(-18deg)}.app-topbar__logo-effect .brand-mark{position:relative;z-index:2;filter:none}.app-topbar__logo-effect .brand-mark__logo{filter:none}[data-theme=dark] .app-topbar__logo-effect{background:transparent;border-color:transparent;padding-inline:.15rem}[data-theme=dark] .app-topbar__logo-effect:before{opacity:0}.app-topbar__company-logo{display:inline-flex;flex:0 0 auto;align-items:center;height:2.2rem;margin-left:.25rem}.app-topbar__company-logo .company-mark{max-width:7.5rem}.app-topbar__company-logo .company-mark__logo{max-height:2.2rem}.app-topbar__new-issue{display:inline-flex;align-items:center;gap:.28rem;height:2.25rem;padding:.16rem .62rem .16rem .16rem;border:1px solid color-mix(in srgb,var(--issues-ticket-fg) 48%,var(--border));border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--issues-ticket-fg) 18%,var(--bg-elevated)),color-mix(in srgb,var(--issues-ticket-fg) 10%,var(--bg-card)));color:var(--issues-ticket-fg);cursor:pointer;box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent);transition:background-color .2s ease,border-color .2s ease,transform .15s ease}.app-topbar__new-issue-plus{display:inline-grid;place-items:center;width:1.78rem;height:1.78rem;border-radius:50%;background:var(--issues-ticket-fg);color:var(--darsena-fg);box-shadow:0 0 0 1px color-mix(in srgb,var(--issues-ticket-fg) 35%,transparent)}.app-topbar__new-issue-mark{display:inline-grid;place-items:center;line-height:0}.app-topbar__new-issue:hover{border-color:color-mix(in srgb,var(--issues-ticket-fg) 72%,var(--border));background:linear-gradient(180deg,color-mix(in srgb,var(--issues-ticket-fg) 28%,var(--bg-elevated)),color-mix(in srgb,var(--issues-ticket-fg) 16%,var(--bg-card)));transform:translateY(-1px)}.app-topbar__new-issue:focus-visible{outline:2px solid var(--issues-ticket-fg);outline-offset:2px}.app-topbar__new-issue:disabled{opacity:.45;cursor:not-allowed;transform:none}.app-topbar__bell{position:relative}.app-topbar__bell-icon{display:inline-grid;place-items:center;transform-origin:top center}.app-topbar__bell.is-active .app-topbar__bell-icon{animation:app-topbar-bell-ring 1.25s ease-in-out infinite;color:var(--danger)}.app-topbar__badge{--badge-pulse: var(--danger);position:absolute;top:-.15rem;right:-.15rem;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:1.15rem;height:1.15rem;padding:0 .28rem;border:2px solid var(--bg-panel);border-radius:999px;background:var(--danger);color:#fff;font-size:.62rem;font-weight:800;line-height:1;box-shadow:0 0 0 3px color-mix(in srgb,var(--badge-pulse) 22%,transparent);animation:app-topbar-badge-pulse 1.6s ease-in-out infinite}.app-topbar__plates{position:relative}.app-topbar__plates-icon{display:inline-grid;place-items:center}.app-topbar__plates.is-active .app-topbar__plates-icon{color:var(--warning)}.app-topbar__badge--plates{--badge-pulse: var(--warning);background:var(--warning);color:var(--refuerzo-rail-fg)}.app-topbar__new-refuerzo{display:inline-flex;align-items:center;gap:.28rem;height:2.25rem;padding:.16rem .7rem .16rem .16rem;border:1px solid color-mix(in srgb,var(--refuerzo-rail-bg) 48%,var(--border));border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--refuerzo-rail-bg) 22%,var(--bg-elevated)),color-mix(in srgb,var(--refuerzo-rail-bg) 12%,var(--bg-card)));color:color-mix(in srgb,var(--refuerzo-rail-bg) 72%,var(--text-primary));cursor:pointer;box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent);transition:background-color .2s ease,border-color .2s ease,transform .15s ease}.app-topbar__new-refuerzo-plus{display:inline-grid;place-items:center;width:1.78rem;height:1.78rem;border-radius:50%;background:var(--refuerzo-rail-bg);color:var(--refuerzo-rail-fg);box-shadow:0 0 0 1px color-mix(in srgb,var(--refuerzo-rail-bg) 35%,transparent)}.app-topbar__new-refuerzo-mark{display:inline-grid;place-items:center;line-height:0}.app-topbar__new-refuerzo-label{font-size:.78rem;font-weight:800;white-space:nowrap;padding-right:.12rem}.app-topbar__new-refuerzo:hover{border-color:color-mix(in srgb,var(--refuerzo-rail-bg) 72%,var(--border));background:linear-gradient(180deg,color-mix(in srgb,var(--refuerzo-rail-bg) 32%,var(--bg-elevated)),color-mix(in srgb,var(--refuerzo-rail-bg) 18%,var(--bg-card)));transform:translateY(-1px)}.app-topbar__new-refuerzo:focus-visible{outline:2px solid var(--refuerzo-rail-bg);outline-offset:2px}[data-device=mobile] .app-topbar__new-refuerzo-label,[data-device=tablet] .app-topbar__new-refuerzo-label,html[data-size=s] .app-topbar__new-refuerzo-label,html[data-size=m] .app-topbar__new-refuerzo-label{display:none}[data-device=mobile] .app-topbar__new-refuerzo,[data-device=tablet] .app-topbar__new-refuerzo,html[data-size=s] .app-topbar__new-refuerzo,html[data-size=m] .app-topbar__new-refuerzo{padding-right:.16rem}.app-topbar__refuerzos{position:relative}.app-topbar__refuerzos-icon{display:inline-grid;place-items:center}.app-topbar__refuerzos.is-active .app-topbar__refuerzos-icon{color:color-mix(in srgb,var(--refuerzo-rail-bg) 72%,var(--text-primary))}.app-topbar__badge--refuerzos{--badge-pulse: var(--refuerzo-rail-bg);background:var(--refuerzo-rail-bg);color:var(--refuerzo-rail-fg)}.app-topbar__ok{position:absolute;top:-.08rem;right:-.08rem;display:inline-grid;place-items:center;width:.95rem;height:.95rem;border:2px solid var(--bg-panel);border-radius:999px;background:var(--ok);color:var(--bg-elevated);line-height:1}.app-topbar__user{position:relative}.app-topbar__user.is-open:after{content:"";position:absolute;inset:100% 0 auto;height:.4rem}.app-topbar__user-btn{gap:.5rem;padding:.28rem .65rem .28rem .28rem}.app-topbar__user-btn .user-mark__name{max-width:10rem}.app-topbar__user-chevron{flex:0 0 auto;color:var(--text-muted);transition:transform .28s ease}.app-topbar__user.is-open .app-topbar__user-chevron{transform:rotate(180deg)}@keyframes app-topbar-logo-shine{0%,58%{left:-45%}82%,to{left:115%}}@keyframes app-topbar-logo-glow{0%,52%,to{border-color:transparent;box-shadow:none}66%{border-color:color-mix(in srgb,var(--accent) 75%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}}@keyframes app-topbar-badge-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--badge-pulse) 18%,transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--badge-pulse) 32%,transparent)}}.user-menu{position:absolute;right:0;top:calc(100% + .4rem);z-index:40;display:grid;grid-template-rows:0fr;min-width:16rem;overflow:hidden;pointer-events:none;transition:grid-template-rows .28s ease}.app-topbar__user.is-open .user-menu{grid-template-rows:1fr;pointer-events:auto;overflow:visible}.app-topbar__user.is-open .user-menu__fold{overflow:visible}.user-menu__fold{min-height:0;overflow:hidden}.user-menu__inner{display:flex;flex-direction:column;padding:.4rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-elevated);box-shadow:var(--shadow)}.user-menu button,.user-menu__variant{display:flex;align-items:center;gap:.45rem;width:100%;padding:.5rem .65rem;border:none;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.user-menu button:hover{background:var(--bg-hover)}.user-menu button:disabled{cursor:default;opacity:.55}.user-menu__sep{height:1px;margin:.28rem .45rem;background:var(--border)}.user-menu__heading{padding:.28rem .65rem .12rem;color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.user-menu__icon{flex:0 0 auto;opacity:.85}.user-menu__flyout{position:relative}.user-menu__caret{margin-left:auto}.user-menu__check-spacer{width:.75rem;height:.75rem;flex:0 0 auto}.user-menu__submenu{display:none;position:absolute;right:calc(100% + .25rem);top:0;min-width:11rem;flex-direction:column;padding:.35rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-elevated);box-shadow:var(--shadow);z-index:21}.user-menu__flyout.is-open .user-menu__submenu{display:flex}.user-menu__submenu button[aria-checked=true]{font-weight:700}@media(max-width:720px){.user-menu__submenu{right:0;top:100%}}.user-menu__variant select{margin-left:auto}[data-device=mobile] .app-topbar__user-btn .user-mark__name,[data-device=mobile] .app-topbar__user-chevron,html[data-size=s] .app-topbar__user-btn .user-mark__name,html[data-size=s] .app-topbar__user-chevron,html[data-size=m] .app-topbar__user-btn .user-mark__name,html[data-size=m] .app-topbar__user-chevron{display:none}[data-device=mobile] .app-topbar__user-btn,html[data-size=s] .app-topbar__user-btn,html[data-size=m] .app-topbar__user-btn{padding:.22rem}@media(prefers-reduced-motion:reduce){.app-topbar__logo-effect,.app-topbar__logo-effect:before,.app-topbar__bell.is-active .app-topbar__bell-icon,.app-topbar__emission.is-active .app-topbar__emission-icon,.app-topbar__plates.is-active .app-topbar__plates-icon,.app-topbar__refuerzos.is-active .app-topbar__refuerzos-icon,.app-topbar__badge,.app-topbar__user-chevron,.user-menu{animation:none;transition:none}}.dock-unit[data-panel=refuerzos].is-open{--dock-face: color-mix(in srgb, var(--refuerzo-rail-bg) 10%, var(--bg-panel))}.refuerzos-dock__list{gap:.55rem}.refuerzos-dock__card{position:relative;isolation:isolate;overflow:hidden;flex:0 0 auto;display:flex;flex-direction:column;gap:.45rem;padding:.65rem .7rem .65rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--bg-card);width:100%;margin:0;text-align:left;font:inherit;color:inherit;cursor:pointer}.refuerzos-dock__card:hover,.refuerzos-dock__card:focus-visible{border-color:color-mix(in srgb,var(--refuerzo-rail-bg) 62%,var(--border))}.refuerzos-dock__card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.refuerzos-dock__stripe{display:block;position:absolute;left:0;top:0;bottom:0;width:.38rem;border-radius:14px 0 0 14px;background:var(--refuerzo-rail-bg)}.refuerzos-dock__top{display:flex;align-items:center;gap:.45rem;min-width:0}.refuerzos-dock__top .service-time{margin-left:auto}.refuerzos-dock__meta{display:flex;align-items:center;justify-content:space-between;gap:.45rem;min-width:0}.refuerzos-dock__when{flex:0 0 auto;margin-left:auto;color:var(--text-secondary);font-size:.72rem;font-weight:700;white-space:nowrap}.company-mark{display:inline-flex;align-items:center;justify-content:flex-end;min-width:0;max-width:9rem}.company-mark__logo{max-width:7.5rem;max-height:2.5rem;width:auto;height:auto;object-fit:contain}.company-mark__name{overflow:hidden;color:var(--text-secondary);font-size:.82rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.company-mark--sm{max-width:7rem}.company-mark--sm .company-mark__logo{max-width:6rem;max-height:1.35rem}.company-mark--named{justify-content:flex-start;gap:.5rem;max-width:none}.company-mark--named .company-mark__name{color:var(--text-primary)}.company-mark--text{max-width:14rem}.company-mark--text .company-mark__name{display:inline-block;max-width:100%;padding:.32rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg-panel) 65%,var(--bg-card));color:var(--text-primary);font-size:.72rem;font-weight:800;letter-spacing:.03em;line-height:1.25}.company-mark--sm.company-mark--text .company-mark__name{padding:.16rem .48rem;border-radius:.4rem;font-size:.66rem}.company-mark--named.company-mark--text{max-width:none}.loading-spinner{--loading-overlay-enter-ms: .28s;--loading-overlay-leave-ms: .22s;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:12rem}.loading-spinner__body{display:flex;flex-direction:column;align-items:center;gap:.65rem}.loading-spinner__ring{width:2.4rem;height:2.4rem;border:3px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-top-color:var(--accent);border-radius:50%;animation:loading-spin .7s linear infinite}.loading-spinner--inline{display:inline-flex;width:auto;min-height:0;flex:0 0 auto}.loading-spinner--inline .loading-spinner__ring{width:.85rem;height:.85rem;border-width:2px}.loading-spinner--blocking{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;min-height:0;background:color-mix(in srgb,var(--bg-primary) 72%,transparent);cursor:wait;pointer-events:auto;-webkit-user-select:none;user-select:none}.loading-spinner--blocking.is-entering{animation:loading-overlay-in var(--loading-overlay-enter-ms) ease-out both}.loading-spinner--blocking.is-leaving{pointer-events:none;animation:loading-overlay-out var(--loading-overlay-leave-ms) ease-in both}.loading-spinner--blocking.is-entering .loading-spinner__body{animation:loading-overlay-content-in var(--loading-overlay-enter-ms) cubic-bezier(.22,1,.36,1) both}.loading-spinner--blocking.is-leaving .loading-spinner__body{animation:loading-overlay-content-out var(--loading-overlay-leave-ms) ease-in both}.loading-spinner__label{color:var(--text-secondary);font-size:.88rem;font-weight:700}@keyframes loading-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes loading-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes loading-overlay-content-in{0%{opacity:0;transform:translateY(.4rem) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes loading-overlay-content-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(.25rem) scale(.98)}}@media(prefers-reduced-motion:reduce){.loading-spinner--blocking.is-entering,.loading-spinner--blocking.is-leaving,.loading-spinner--blocking.is-entering .loading-spinner__body,.loading-spinner--blocking.is-leaving .loading-spinner__body{animation:none}}.refuerzo-mark{--mark-size: 1.7rem;--mark-num: .95rem;position:relative;overflow:hidden;display:inline-grid;place-items:center;flex:0 0 auto;width:var(--mark-size);height:var(--mark-size);border-radius:.35rem;border:1.5px solid color-mix(in srgb,var(--col-wrn) 55%,var(--border));background:color-mix(in srgb,var(--col-wrn) 28%,var(--bg-card));color:var(--col-wrn)}.refuerzo-mark--sm{--mark-size: 1.22rem;--mark-num: .72rem;border-radius:.28rem}.refuerzo-mark--lg{--mark-size: 3.55rem;--mark-num: 2.55rem;border-radius:.55rem}.refuerzo-mark--picker{border-color:var(--chip-select-border);background:var(--chip-select-bg);color:var(--chip-select-text)}.refuerzo-mark--plain{border-color:transparent;background:transparent;color:var(--text-primary)}.refuerzo-mark--plain .refuerzo-mark__bus{opacity:.28;color:var(--text-muted)}.refuerzo-mark--plain .refuerzo-mark__num{text-shadow:none}.refuerzo-mark--picker.is-active,.add-refuerzo__count.is-active .refuerzo-mark--picker{border-color:var(--chip-select-border-active);background:var(--chip-select-bg-active);color:var(--chip-select-text-active)}.refuerzo-mark__bus{position:absolute;top:0;left:50%;width:calc(var(--mark-size) * 1.1);transform:translate(-50%);opacity:.38;fill:currentColor;pointer-events:none}.refuerzo-mark__num{position:relative;font-size:var(--mark-num);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;text-shadow:0 2px 4px color-mix(in srgb,var(--bg-primary) 45%,transparent)}.route-label{display:inline-flex;align-items:center;gap:.35rem;min-width:0;color:var(--accent);border-radius:var(--radius-sm);padding:.25rem .5rem;background-color:var(--bg-card);border:1px solid var(--border)}.route-label__name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;letter-spacing:.02em}.route-label--sm .route-label__name{font-size:.88rem}.report-data-table .route-label{max-width:100%;gap:.2rem;padding:.04rem .28rem}.report-data-table .route-label__name{font-size:.62rem}.service-time{display:inline-flex;align-items:stretch;flex:0 0 auto;height:1.55rem;overflow:hidden;border:1px solid var(--service-time-border);border-radius:999px;background:var(--service-time-bg);color:var(--service-time-fg);font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;vertical-align:middle}.service-time__icon{display:inline-flex;align-items:center;justify-content:center;padding:0 .38rem;border-right:1px solid var(--service-time-border);color:var(--service-time-muted)}.service-time__value{display:inline-flex;align-items:center;padding:0 .5rem 0 .42rem;font-size:.78rem;font-weight:800;letter-spacing:.02em}.service-time--sm{height:1.22rem}.service-time--sm .service-time__icon{padding:0 .28rem}.service-time--sm .service-time__value{padding:0 .38rem 0 .3rem;font-size:.66rem}.service-time--plain .service-time__value{padding-inline:.42rem}.report-data-table .service-time{height:1.12rem}.report-data-table .service-time__icon{padding:0 .22rem}.report-data-table .service-time__icon svg{width:.62rem;height:.62rem}.report-data-table .service-time__value{padding:0 .32rem 0 .24rem;font-size:.62rem}.dock-rail{--dock-panel-width: 22.5rem;--dock-open: 0;--dock-grip-count: 6;--dock-face: var(--bg-panel);--dock-grip-start: .85rem;--dock-grip-size: 2.55rem;--dock-grip-gap: .55rem;--dock-grip-step: calc(var(--dock-grip-size) + var(--dock-grip-gap));position:absolute;top:0;right:0;bottom:0;display:block;flex:none;width:0;min-width:0;height:100%;overflow:visible;z-index:10;pointer-events:none}.dock-rail--left{right:auto;left:0}.dock-unit{--dock-slot: 0;--grip-index: 0;--grip-stack: 0;position:absolute;top:0;bottom:0;width:0;overflow:visible;pointer-events:none;z-index:calc(8 + var(--grip-index));transition:right .28s ease,left .28s ease,width .28s ease,top .28s ease}.dock-rail--right .dock-unit{right:calc(var(--dock-slot) * var(--dock-panel-width))}.dock-rail--left .dock-unit{left:calc(var(--dock-slot) * var(--dock-panel-width))}.dock-unit.is-open{--dock-face: var(--bg-panel-open);--dock-stack-in: -.45rem .1rem .75rem var(--dock-shadow);--dock-stack-back: .22rem .28rem .55rem color-mix(in srgb, var(--dock-shadow) 70%, transparent);width:var(--dock-panel-width);pointer-events:auto;z-index:calc(4 + var(--dock-slot))}.dock-rail--left .dock-unit.is-open{--dock-stack-in: .45rem .1rem .75rem var(--dock-shadow);--dock-stack-back: -.22rem .28rem .55rem color-mix(in srgb, var(--dock-shadow) 70%, transparent)}.dock-unit.is-open[data-slot="0"]{top:0}.dock-unit.is-open:not([data-slot="0"]){top:calc(var(--dock-grip-start) + var(--dock-slot) * var(--dock-grip-step))}.dock-rail__scrim{display:none}.dock-rail__grip{position:absolute;z-index:7;top:calc(var(--dock-grip-start) + var(--grip-stack) * var(--dock-grip-step));pointer-events:auto;transition:top .28s ease}.dock-rail .panel-hint{height:var(--dock-grip-size)}.dock-rail--right .dock-rail__grip{left:1px}.dock-rail--left .dock-rail__grip{right:1px}.dock-rail--right .dock-unit.is-open .dock-rail__grip,.dock-rail--right.is-open .dock-unit:not(.is-open) .dock-rail__grip{left:auto;right:100%;margin-right:-1px}.dock-rail--left .dock-unit.is-open .dock-rail__grip,.dock-rail--left.is-open .dock-unit:not(.is-open) .dock-rail__grip{right:auto;left:100%;margin-left:-1px}.dock-unit.is-open .dock-rail__grip .panel-hint,.dock-rail.is-open .dock-unit:not(.is-open) .dock-rail__grip .panel-hint{transform:none}.dock-rail.is-open .dock-unit:not(.is-open) .panel-hint,.dock-rail.is-open .dock-unit:not(.is-open) .panel-hint__label,.dock-rail.is-open .dock-unit:not(.is-open) .dock-panel__toggle{background-color:var(--bg-secondary)}.dock-rail.is-open .dock-unit:not(.is-open) .panel-hint{box-shadow:-.18rem .12rem .35rem color-mix(in srgb,var(--dock-shadow) 55%,transparent)}.dock-rail--left.is-open .dock-unit:not(.is-open) .panel-hint{box-shadow:.18rem .12rem .35rem color-mix(in srgb,var(--dock-shadow) 55%,transparent)}.dock-unit.is-open .panel-hint{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background-color:var(--accent-dim);color:var(--accent-secondary)}.dock-unit.is-open .panel-hint__label{background:color-mix(in srgb,var(--accent) 16%,var(--bg-card))}.dock-unit.is-open .dock-panel__toggle{background-color:color-mix(in srgb,var(--accent) 22%,var(--bg-panel));background-image:repeating-linear-gradient(-45deg,transparent,transparent 3px,color-mix(in srgb,var(--accent) 42%,transparent) 3px,color-mix(in srgb,var(--accent) 42%,transparent) 6px);color:var(--accent)}[data-theme=dark] .dock-unit.is-open .panel-hint{color:var(--accent)}.dock-rail--right .dock-unit.is-open .dock-rail__grip:after,.dock-rail--left .dock-unit.is-open .dock-rail__grip:after{content:"";position:absolute;top:1px;bottom:1px;z-index:2;width:2px;background:var(--dock-face);pointer-events:none}.dock-rail--right .dock-unit.is-open .dock-rail__grip:after{right:0;left:auto}.dock-rail--left .dock-unit.is-open .dock-rail__grip:after{left:0;right:auto}.dock-unit.is-open[data-slot="0"] .dock-rail__grip{top:var(--dock-grip-start)}.dock-unit.is-open:not([data-slot="0"]) .dock-rail__grip{top:0}.dock-sheet{display:none;flex-direction:column;width:100%;height:100%;min-height:0;overflow:hidden;background:var(--dock-face);pointer-events:auto}.dock-unit.is-open .dock-sheet{box-shadow:var(--dock-stack-back),var(--dock-stack-in)}.dock-rail--right .dock-sheet{border-left:1px solid var(--border)}.dock-rail--left .dock-sheet{border-right:1px solid var(--border)}.dock-sheet.is-open{display:flex}.dock-unit.is-open:not([data-slot="0"]) .dock-sheet{border-top:1px solid var(--border)}@media(prefers-reduced-motion:reduce){.dock-unit,.dock-sheet,.dock-rail__grip{transition:none}}html[data-size=s] .dock-rail.is-open,html[data-size=m] .dock-rail.is-open{--dock-panel-width: min(22.5rem, 92vw)}html[data-size=xl] .dock-rail{--dock-panel-width: 26rem}html[data-size=s] .dock-rail.is-open .dock-rail__scrim,html[data-size=m] .dock-rail.is-open .dock-rail__scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;border:0;padding:0;background:color-mix(in srgb,#001018 42%,transparent);cursor:pointer;pointer-events:auto}html[data-size=s] .dock-rail.is-open .dock-unit.is-open,html[data-size=m] .dock-rail.is-open .dock-unit.is-open{--dock-stack-in: -.55rem .12rem .95rem var(--dock-shadow);--dock-stack-back: .28rem .4rem .8rem color-mix(in srgb, var(--dock-shadow) 75%, transparent)}html[data-size=s] .dock-rail--left.is-open .dock-unit.is-open,html[data-size=m] .dock-rail--left.is-open .dock-unit.is-open{--dock-stack-in: .55rem .12rem .95rem var(--dock-shadow);--dock-stack-back: -.28rem .4rem .8rem color-mix(in srgb, var(--dock-shadow) 75%, transparent)}html[data-dashboard-maximized][data-size=s] .dock-rail,html[data-dashboard-maximized][data-size=m] .dock-rail{visibility:hidden;pointer-events:none}@media(max-height:800px){.dock-rail{--dock-grip-start: .35rem;--dock-grip-gap: .2rem;--dock-grip-size: min(2.15rem, calc((100% - var(--dock-grip-start) - .35rem) / max(var(--dock-grip-count), 1)));--dock-grip-step: min( calc(var(--dock-grip-size) + var(--dock-grip-gap)), calc((100% - var(--dock-grip-start) - var(--dock-grip-size)) / max(var(--dock-grip-count) - 1, 1)) )}}.panel-hint{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch;height:2.55rem;overflow:hidden;border:1px solid var(--border);border-right:0;border-radius:5px 0 0 5px;background-color:var(--bg-panel);color:var(--text-secondary);transform:translate(-100%);cursor:pointer;transition:filter .2s ease,color .2s ease}.panel-hint--left{border-right:1px solid var(--border);border-left:0;border-radius:0 5px 5px 0;transform:translate(100%)}.panel-hint:hover,.panel-hint:focus-within{color:var(--text-primary);filter:brightness(1.06)}.panel-hint__label{display:flex;align-items:center;gap:.4rem;flex:0 0 auto;min-width:0;max-width:2.15rem;margin:0;padding:0 .42rem;overflow:hidden;border:0;background:var(--bg-card);color:var(--text-primary);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;transition:max-width .28s ease,padding .28s ease}.panel-hint__label:has(.panel-hint__badge){max-width:4.65rem;gap:.28rem;padding:0 .5rem}.panel-hint.is-visible .panel-hint__label:has(.panel-hint__badge){max-width:15.25rem}.panel-hint.is-visible .panel-hint__label{max-width:13.5rem;padding:0 .75rem 0 .42rem}.panel-hint--right.is-visible .panel-hint__label{padding:0 .42rem 0 .75rem}.panel-hint--left.is-visible .panel-hint__label{padding:0 .75rem 0 .42rem}.panel-hint--bottom{width:max-content;border-right:1px solid var(--border);border-bottom:0;border-radius:5px 5px 0 0;transform:none}.panel-hint.is-expanded{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background-color:var(--accent-dim);color:var(--accent-secondary)}.panel-hint.is-expanded .panel-hint__label{background:color-mix(in srgb,var(--accent) 16%,var(--bg-card))}.panel-hint.is-expanded .panel-hint__title{color:var(--accent-secondary)}.panel-hint.is-expanded .dock-panel__toggle{background-color:color-mix(in srgb,var(--accent) 22%,var(--bg-panel));background-image:repeating-linear-gradient(-45deg,transparent,transparent 3px,color-mix(in srgb,var(--accent) 42%,transparent) 3px,color-mix(in srgb,var(--accent) 42%,transparent) 6px);color:var(--accent)}[data-theme=dark] .panel-hint.is-expanded .panel-hint__title,[data-theme=dark] .panel-hint.is-expanded{color:var(--accent)}.panel-hint__label:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.panel-hint__icon{display:inline-grid;place-items:center;flex:0 0 auto;color:var(--accent);transform-origin:top center}.panel-hint__badge{display:inline-grid;place-items:center;flex:0 0 auto;min-width:1.15rem;height:1.15rem;padding:0 .22rem;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));border-radius:999px;background:var(--accent-dim);color:var(--accent-secondary);font-size:.62rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.panel-hint.is-attention .panel-hint__icon{color:var(--danger);animation:app-topbar-bell-ring 1.25s ease-in-out infinite}.panel-hint__copy{display:flex;flex-direction:column;min-width:0;gap:.05rem;overflow:hidden;opacity:0;transition:opacity .28s ease}.panel-hint.is-visible .panel-hint__copy{opacity:1}.panel-hint__title{color:var(--text-primary);font-size:.78rem;font-weight:800;line-height:1.15}.panel-hint__subtitle{color:var(--text-secondary);font-size:.68rem;font-weight:600}@media(prefers-reduced-motion:reduce){.panel-hint__label,.panel-hint__copy{transition:none}.panel-hint.is-attention{outline:2px solid var(--accent);outline-offset:1px}.panel-hint.is-attention .panel-hint__icon{animation:none}}@keyframes app-topbar-bell-ring{0%,to{transform:rotate(0)}12%{transform:rotate(14deg)}24%{transform:rotate(-12deg)}36%{transform:rotate(8deg)}48%{transform:rotate(-6deg)}60%{transform:rotate(3deg)}72%{transform:rotate(0)}}.user-mark{display:inline-flex;align-items:center;gap:.5rem;min-width:0;max-width:100%}.user-mark__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.ui-avatar{display:inline-grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--accent);color:var(--bg-elevated);font-weight:800;letter-spacing:.02em;line-height:1}.ui-avatar svg{display:block}.ui-avatar--sm{width:1.7rem;height:1.7rem;font-size:.62rem}.ui-avatar--md{width:2.15rem;height:2.15rem;font-size:.78rem}.ui-avatar--administrador{background:var(--col-ftl);color:var(--bg-elevated)}.ui-avatar--operador{background:var(--accent);color:var(--bg-elevated)}.ui-avatar--direccion{background:var(--warning);color:var(--bg-elevated)}.ui-avatar--sistema{background:var(--col-dbg);color:var(--bg-elevated)}.ui-avatar--acceso{background:var(--ok);color:var(--bg-elevated)}.ui-avatar--companias{background:var(--col-inf);color:var(--bg-elevated)}.ui-avatar--informacion{background:var(--issues-info-fg);color:var(--bg-elevated)}.ui-avatar--externo,.ui-avatar--unknown{background:var(--text-secondary);color:var(--bg-elevated)}.theme-toggle{position:relative;display:inline-flex;align-items:center;justify-content:space-between;width:3.6rem;height:2.5rem;padding:0 .35rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);cursor:pointer;flex-shrink:0}.theme-toggle__thumb{position:absolute;top:.45rem;left:.2rem;width:1.5rem;height:1.5rem;border-radius:999px;background:var(--accent);transition:transform .25s ease}.theme-toggle.is-dark .theme-toggle__thumb{transform:translate(1.55rem)}.theme-toggle__icon{position:relative;z-index:1;display:inline-grid;place-items:center;color:var(--text-secondary)}.theme-toggle.is-dark .theme-toggle__icon--moon,.theme-toggle:not(.is-dark) .theme-toggle__icon--sun{color:var(--bg-elevated)}@media(prefers-reduced-motion:reduce){.theme-toggle__thumb{animation:none;transition:none}}.confirm-dialog{z-index:2480}.confirm-dialog .app-modal__eyebrow{color:var(--danger)}.confirm-dialog__question{margin:0;line-height:1.65;text-wrap:pretty}.confirm-dialog .app-modal__title-text{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.35rem;width:auto}.confirm-dialog__description{line-height:1.65}.confirm-dialog__issue-title{font-weight:650}.confirm-dialog__question .route-info__platform,.confirm-dialog .app-modal__title-text .route-info__platform,.confirm-dialog__description .issue-ticket{vertical-align:middle;margin-inline:.2rem}.app-modal{--app-modal-enter-ms: .32s;--app-modal-leave-ms: .24s;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2420;display:grid;place-items:center;padding:1rem;background:#0a0e1480;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.app-modal.is-entering{animation:app-modal-fade-in var(--app-modal-enter-ms) ease-out both}.app-modal.is-leaving{pointer-events:none;animation:app-modal-fade-out var(--app-modal-leave-ms) ease-in both}.app-modal.is-entering .app-modal__panel{animation:app-modal-slide-in var(--app-modal-enter-ms) cubic-bezier(.22,1,.36,1) both}.app-modal.is-leaving .app-modal__panel{animation:app-modal-slide-out var(--app-modal-leave-ms) ease-in both}.app-modal__panel{position:relative;display:flex;flex-direction:column;width:min(40rem,100%);max-height:min(96vh,100%);overflow:hidden;min-height:0;border:1px solid var(--border);border-radius:1.1rem;background:var(--bg-panel);box-shadow:var(--shadow)}@media(max-width:480px){.app-modal__panel{width:100%;max-height:100%;border-radius:.85rem}}@keyframes app-modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes app-modal-fade-out{0%{opacity:1}to{opacity:0}}@keyframes app-modal-slide-in{0%{opacity:0;transform:translateY(2.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes app-modal-slide-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(2.25rem)}}@media(prefers-reduced-motion:reduce){.app-modal.is-entering,.app-modal.is-leaving,.app-modal.is-entering .app-modal__panel,.app-modal.is-leaving .app-modal__panel{animation:none}}.app-modal--sm .app-modal__panel{width:min(30rem,100%)}.app-modal--lg .app-modal__panel{width:min(56rem,100%)}.app-modal--xl .app-modal__panel{width:min(74rem,100vw - 2rem)}.app-modal--full{padding:.65rem}.app-modal--full .app-modal__panel{width:100%;height:100%;max-height:none}.app-modal--stacked{z-index:2440}.app-modal .app-modal__close{position:absolute;top:.22rem;right:.22rem;z-index:2;border:0;color:var(--text-muted)}.app-modal .app-modal__close:hover:not(:disabled){transform:none;background:var(--danger-soft);color:var(--danger)}.app-modal__head{flex:0 0 auto;display:flex;align-items:flex-start;gap:.75rem;padding:1.05rem 3rem .9rem 1.2rem;border-bottom:1px solid var(--border);background:var(--bg-form-header)}.app-modal__title-block{display:flex;align-items:flex-start;gap:.75rem;min-width:0;width:100%}.app-modal__icon{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:.85rem;background:color-mix(in srgb,var(--accent) 14%,var(--bg-form-header));color:var(--accent)}.app-modal__icon--danger{background:var(--danger-soft);color:var(--danger)}.app-modal__eyebrow{display:inline-flex;align-items:center;gap:.35rem;margin:0 0 .25rem;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.app-modal__titles{min-width:0;flex:1 1 auto}.app-modal__title{display:flex;align-items:flex-start;flex-wrap:wrap;min-width:0;margin:0;font-size:1.2rem}.app-modal__title-text{display:block;min-width:0;width:100%}.app-modal__body{overflow:auto;margin:.7rem .85rem;padding:1rem 1.05rem 1.1rem;display:flex;flex-direction:column;gap:1rem;flex:1 1 auto;min-height:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}@media(max-width:480px){.app-modal__body{margin:.5rem .6rem;padding:.85rem .8rem .95rem}}.app-modal__panel:has(.form-tabset),.app-modal__panel:has(.calendar-search){height:min(96vh,100%)}.app-modal__body:has(.form-tabset),.app-modal__body:has(.calendar-search),.app-modal__body:has(.help-page){overflow:hidden}.app-modal__actions{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:.65rem;padding:.85rem 1.2rem 1rem;border-top:1px solid var(--border);background:var(--bg-form-footer)}@media(max-width:480px){.app-modal__actions{align-items:stretch;flex-direction:column}}.app-modal__actions .btn--ghost{border-color:color-mix(in srgb,var(--text-primary) 58%,var(--text-secondary))}.app-modal.is-view-only .app-modal__body input:not([type=hidden]),.app-modal.is-view-only .app-modal__body select,.app-modal.is-view-only .app-modal__body textarea,.app-modal.is-view-only .app-modal__body .chip-select,.app-modal.is-view-only .app-modal__body .toggle,.app-modal.is-view-only .app-modal__body .ui-select,.app-modal.is-view-only .app-modal__body .field-control,.app-modal.is-view-only .app-modal__body .masked-input{pointer-events:none}.form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;width:100%}.form-actions__secondary,.form-actions__primary{display:flex;flex-wrap:wrap;gap:.45rem}.form-actions__primary{margin-left:auto}.help-page{display:grid;grid-template-columns:18rem minmax(0,1fr);gap:1.25rem;flex:1 1 auto;min-height:0}.help-page__nav,.help-page__article{min-height:0;overflow:auto}.help-page__nav{display:flex;flex-direction:column;gap:.85rem;padding-right:.25rem}.help-page__search{width:100%}.help-page__label--toggle{display:flex;align-items:center;gap:.2rem;width:100%;margin:0;padding:.35rem .2rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font:inherit;font-size:.72rem;font-weight:650;letter-spacing:.04em;text-align:left;text-transform:uppercase;cursor:pointer}.help-page__label--toggle:hover,.help-page__label--toggle:focus-visible{background:var(--bg-hover);color:var(--text-primary)}.help-page__group ul,.help-page__sub{display:flex;flex-direction:column;gap:.1rem;margin:0;padding:0;list-style:none}.help-page__group>ul{margin:.15rem 0 .35rem;padding-left:.35rem}.help-page__sub{margin:.05rem 0 .2rem 1.15rem;padding-left:.35rem;border-left:1px solid var(--border-light)}.help-page__row{display:flex;align-items:stretch;gap:.05rem;min-width:0}.help-page__twist{display:inline-flex;flex:0 0 1.35rem;align-items:center;justify-content:center;margin:0;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer}.help-page__twist:hover,.help-page__twist:focus-visible{background:var(--bg-hover);color:var(--text-primary)}.help-page__twist--leaf{cursor:default;visibility:hidden}.help-page__row>button:not(.help-page__twist),.help-page__direct button{flex:1 1 auto;min-width:0;width:100%;padding:.35rem .45rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.help-page__row>button:not(.help-page__twist):hover,.help-page__row>button:not(.help-page__twist):focus-visible,.help-page__direct button:hover,.help-page__direct button:focus-visible{background:var(--bg-hover)}.help-page__row>button.is-current,.help-page__direct button.is-current{background:var(--accent-dim);color:var(--accent);font-weight:650}.help-page__branch{flex:1 1 auto;padding:.35rem .45rem;color:var(--text-muted);font-size:.92rem}.help-page__article{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0;color:var(--text-primary)}.help-page__crumb{flex:0 0 auto;z-index:2;margin:0 0 .15rem;padding:.15rem .15rem .55rem;border-bottom:1px solid var(--border-light);background:var(--bg-card)}.help-page__crumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem 0;margin:0;padding:0;list-style:none}.help-page__crumb li{display:inline-flex;align-items:center;min-width:0;color:var(--text-secondary);font-size:.84rem}.help-page__crumb-sep{margin:0 .4rem;color:var(--text-muted)}.help-page__crumb button,.help-page__crumb [aria-current=page]{margin:0;padding:.15rem .2rem;border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;font:inherit}.help-page__crumb li>button{cursor:pointer}.help-page__crumb li>button:hover,.help-page__crumb li>button:focus-visible{background:var(--bg-hover);color:var(--accent)}.help-page__crumb [aria-current=page]{color:var(--text-primary);font-weight:650}.help-page__crumb-menu{position:relative;display:inline-flex}.help-page__crumb .help-page__crumb-more{display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;margin:0;padding:0;color:var(--text-muted);cursor:pointer}.help-page__crumb-more:hover,.help-page__crumb-more:focus-visible,.help-page__crumb-more[aria-expanded=true]{background:var(--bg-hover);color:var(--text-primary)}.help-page__crumb-list{position:absolute;top:calc(100% + .2rem);left:0;z-index:3;display:flex;flex-direction:column;gap:.1rem;min-width:12rem;max-width:18rem;margin:0;padding:.3rem;list-style:none;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-panel);box-shadow:var(--shadow)}.help-page__crumb-list button{width:100%;padding:.35rem .5rem;text-align:left;cursor:pointer}.help-page__crumb-list button:hover,.help-page__crumb-list button:focus-visible{background:var(--bg-hover)}.help-page__crumb-list button.is-current{background:var(--accent-dim);color:var(--accent);font-weight:650}.help-page__reading{flex:1 1 auto;min-height:0;overflow:auto;padding:.85rem .15rem 1.5rem 0}.help-page__header h2{margin:0 0 .35rem;font-size:1.45rem}.help-page__header p,.help-page__article p,.help-page__article li{color:var(--text-secondary);line-height:1.5}.help-page__article h3,.help-page__article h4{margin:1.15rem 0 .35rem;color:var(--text-primary);font-size:1rem}.help-page__article ul{margin:.35rem 0 .75rem;padding-left:1.15rem}.help-page__article a{color:var(--accent)}.help-page__action{margin-top:.85rem}.help-page__action .btn{display:inline-flex;align-items:center;gap:.4rem}.help-page__preview,.help-page__shot{margin:.85rem 0 0;padding:.85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel)}.help-page__preview{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.help-page__shot figcaption,.help-page__shot--pending p,.help-page__shot--pending li{margin-top:.45rem;color:var(--text-muted);font-size:.82rem}.help-page__shot-title{margin-top:0;color:var(--text-primary);font-weight:650}.help-page__shot-file{color:var(--text-secondary)}.help-page__shot--pending ol{margin:.35rem 0 .15rem;padding-left:1.15rem}.help-page__shot--pending li{margin-top:.2rem}.help-page__empty,.help-page__broken{margin:0;color:var(--text-muted)}@media(max-width:720px){.help-page{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}}.search-mark{padding:0 .08em;border-radius:.15em;background:color-mix(in srgb,var(--accent) 38%,transparent);color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone}.magnifier{--magnifier-lens: 10.5rem;position:relative;display:block;max-width:100%;min-width:0;touch-action:none;cursor:zoom-in}.magnifier.is-active{cursor:none}.magnifier__image{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.magnifier__lens{position:absolute;z-index:2;top:0;left:0;width:var(--magnifier-lens);height:var(--magnifier-lens);overflow:hidden;border:3px solid color-mix(in srgb,var(--bg-elevated) 72%,var(--text-primary));border-radius:50%;background:var(--bg-primary);box-shadow:var(--shadow),inset 0 0 0 1px color-mix(in srgb,var(--bg-elevated) 55%,transparent),0 0 0 6px color-mix(in srgb,var(--accent) 16%,transparent);opacity:0;pointer-events:none;transform:translate(-50%,-50%);visibility:hidden}.magnifier__lens.is-on{opacity:1;visibility:visible}.magnifier__lens:after{position:absolute;top:.35rem;right:.35rem;bottom:.35rem;left:.35rem;z-index:1;border-radius:50%;pointer-events:none;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-elevated) 38%,transparent),transparent 42%);content:""}.magnifier__zoom{position:absolute;max-width:none;-webkit-user-select:none;user-select:none;pointer-events:none}@media(prefers-reduced-motion:reduce){.magnifier.is-active{cursor:zoom-in}.magnifier__lens{display:none}}.issue-ticket{display:inline-flex;padding:.12rem .5rem;border:1px solid color-mix(in srgb,var(--issues-ticket-fg) 32%,var(--border));border-radius:.4rem;background:var(--issues-ticket-bg);color:var(--issues-ticket-fg);font-family:ui-monospace,Consolas,monospace;font-size:.78rem;font-variant-numeric:tabular-nums;font-weight:800}.kpi-card{position:relative;display:flex;align-items:flex-start;gap:.75rem;flex:1 1 12.5rem;min-width:12.5rem;max-width:18rem;padding:.8rem .9rem .7rem;overflow:hidden;border:1px solid var(--kpi-border);border-radius:18px;background:var(--kpi-face-bg);box-shadow:var(--shadow);transition:border-color .25s ease,box-shadow .25s ease}.kpi-card--action{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.kpi-card--action:hover,.kpi-card--action:focus-visible,.kpi-card.is-active{border-color:var(--accent);box-shadow:var(--shadow),0 0 0 2px color-mix(in srgb,var(--accent) 24%,transparent)}.kpi-card--action:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.kpi-card--action:disabled{cursor:wait}.kpi-card--up{--kpi-attention: var(--ok);--kpi-attention-soft: var(--ok-soft)}.kpi-card--down{--kpi-attention: var(--danger);--kpi-attention-soft: var(--danger-soft)}.kpi-card--attention{border-color:var(--kpi-attention);box-shadow:var(--shadow),0 0 0 2px color-mix(in srgb,var(--kpi-attention) 32%,transparent)}.kpi-card__watermark{position:absolute;right:-.55rem;top:50%;z-index:0;display:grid;place-items:center;pointer-events:none;color:var(--kpi-icon-fg);opacity:.14;transform:translateY(-50%)}.kpi-card--attention .kpi-card__watermark{color:var(--kpi-attention);opacity:.22}.kpi-card__flash{position:absolute;top:0;right:-30%;bottom:0;left:-30%;z-index:2;pointer-events:none;background:linear-gradient(100deg,transparent 22%,var(--kpi-attention-soft) 50%,transparent 78%);animation:kpi-card-flash 1.1s ease-out both}@keyframes kpi-card-flash{0%{opacity:0;transform:translate(-22%)}22%{opacity:1}to{opacity:0;transform:translate(22%)}}.kpi-card__icon{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 auto;width:2.4rem;height:2.4rem;border-radius:.85rem;background:var(--kpi-icon-bg);color:var(--kpi-icon-fg);transition:background-color .25s ease,color .25s ease,transform .25s ease}.kpi-card--attention .kpi-card__icon{background-color:color-mix(in srgb,var(--kpi-attention) 20%,var(--kpi-icon-bg));color:var(--kpi-attention);transform:scale(1.07)}.kpi-card__icon--empty{background:var(--bg-hover)}.kpi-card__body{position:relative;z-index:1;display:flex;min-width:0;flex:1 1 auto;flex-direction:column;gap:.12rem}.kpi-card__label{margin:0;color:var(--text-secondary);font-size:.75rem;font-weight:650;line-height:1.25}.kpi-card__value{position:relative;display:flex;align-items:center;gap:.3rem;margin:0;color:var(--kpi-face-fg);font-size:1.7rem;font-weight:800;line-height:1;transition:color .25s ease}.kpi-card--attention .kpi-card__value{color:var(--kpi-attention)}.kpi-card__unit{font-size:.8rem;font-weight:700;color:var(--text-secondary)}.kpi-card__hint{margin:.18rem 0 0;color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.02em;line-height:1.2}.kpi-card__hint--today{color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.06em}.kpi-card__series{display:flex;gap:.9rem;margin:.15rem 0 0}.kpi-card__series-point{display:flex;flex-direction:column;gap:.05rem;margin:0}.kpi-card__series-label{color:var(--text-muted);font-size:.65rem;font-weight:700;line-height:1.1}.kpi-card__series-value{display:flex;align-items:center;gap:.2rem;color:var(--kpi-face-fg);font-size:1.25rem;font-weight:800;line-height:1.05}.kpi-card__series-unit{font-size:.65rem;font-weight:700;color:var(--text-secondary)}.kpi-card__updated{display:inline-flex;align-items:center;gap:.28rem;margin-top:.2rem;color:var(--text-muted);font-size:.7rem;font-weight:600;line-height:1.2}.kpi-card__updated--empty{min-height:1rem}.kpi-card[aria-busy=true] .kpi-card__value{color:var(--text-muted);animation:kpi-card-pulse 1s ease-in-out infinite}@keyframes kpi-card-pulse{50%{opacity:.45}}@media(max-width:1100px){.kpi-card{flex-basis:11rem;min-width:11rem;padding:.7rem .75rem}.kpi-card__value{font-size:1.45rem}.kpi-card__series-value{font-size:1.1rem}}@media(max-width:480px){.kpi-card{flex:1 1 calc(50% - .5rem);max-width:none}}.kpi-dash .kpi-card{container:kpi-card/size;flex:none;align-self:stretch;justify-self:stretch;width:100%;height:100%;min-width:0;min-height:0;max-width:none}@media(prefers-reduced-motion:reduce){.kpi-card[aria-busy=true] .kpi-card__value{animation:none}.kpi-card__flash{animation:none;opacity:1;top:0;right:0;bottom:0;left:0;background:var(--kpi-attention-soft)}.kpi-card--attention .kpi-card__icon{transform:none}}.flip-num{display:inline-flex;align-items:baseline;font-variant-numeric:tabular-nums}.flip-num__slot{display:inline-block;height:1em;overflow:hidden;line-height:1}.flip-num__reel{display:flex;flex-direction:column;will-change:transform;transition:transform .55s cubic-bezier(.22,1,.36,1)}.flip-num__face{display:flex;align-items:center;justify-content:center;height:1em;line-height:1}.flip-num__char{display:inline-block;line-height:1}@media(prefers-reduced-motion:reduce){.flip-num__reel{transition:none}}.app-modal__body.parameters-modal__body{position:relative;overflow:hidden}.parameters-modal__scroll{display:flex;flex:1 1 auto;flex-direction:column;gap:.85rem;min-height:0;overflow:auto}.parameters-modal__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.parameters-modal__search{display:flex;flex:1 1 16rem;align-items:center;gap:.45rem;min-width:0;color:var(--text-muted)}.parameters-modal__search .field-control{flex:1 1 auto}.parameters-modal__count{margin:0;color:var(--text-muted);font-size:.8rem;font-weight:650;white-space:nowrap}.parameters-modal__scopes{display:flex;flex-direction:column;gap:.4rem}.parameters-modal__scopes-label{margin:0;color:var(--text-secondary);font-size:.8rem;font-weight:650;display:flex;flex-direction:column;gap:.7rem}.parameters-modal__groups{display:flex;flex-direction:column;gap:.85rem}.parameters-modal__list{display:flex;flex-direction:column;gap:.7rem}.parameters-modal__state,.parameters-modal__empty{margin:0;padding:.85rem .2rem;color:var(--text-muted)}.form-header{display:flex;align-items:stretch;gap:.7rem;min-width:0;width:100%}.form-header__copy{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;min-width:0;flex:1 1 auto}.form-header__color{flex:0 0 .32rem;width:.32rem;min-height:2.35rem;border-radius:999px;background:var(--border)}.form-header__lead{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;min-width:0}.form-header__purpose{font-weight:800}.form-header__id{margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font:inherit;color:inherit}.form-header__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .6rem;min-width:0;max-width:100%}.form-header__name,.form-header__route,.form-header .route-label{max-width:100%}.form-header__meta .route-label,.form-header__meta .form-header__route{min-width:0}.form-header__name,.form-header__route{color:var(--accent);font-size:.92rem;font-weight:800;letter-spacing:.01em}.form-header__detail{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-secondary);font-size:.85rem;font-weight:600}.form-header__name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-header__name--node{display:inline-flex;align-items:center;overflow:visible;white-space:normal;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit}.chip-select{display:flex;flex-wrap:wrap;gap:.4rem}.chip-select__chip{display:inline-flex;align-items:center;gap:.32rem;padding:.28rem .7rem;border-radius:999px;border:1px solid var(--chip-select-border);background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.8rem;font-weight:700;cursor:pointer;transition:border-color .22s ease,border-width .18s ease,background-color .22s ease,color .22s ease,box-shadow .22s ease,transform .22s ease,opacity .22s ease}.chip-select__chip:hover:not(.is-disabled):not(:disabled){transform:translateY(-.5px)}.chip-select__chip:active:not(.is-disabled):not(:disabled){transform:scale(.97)}.chip-select__chip.is-active{border-color:var(--chip-select-border-active);background:var(--chip-select-bg-active);color:var(--chip-select-text-active);animation:chip-select-activate .32s cubic-bezier(.34,1.2,.64,1)}@keyframes chip-select-activate{0%{transform:scale(.94)}55%{transform:scale(1.045)}to{transform:scale(1)}}.chip-select__icon{display:inline-flex;flex:0 0 auto;align-items:center;line-height:0;transition:color .22s ease,transform .22s ease}.chip-select__chip.is-active .chip-select__icon{transform:scale(1.08)}.chip-select__body{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.08rem;min-width:0;text-align:left}.chip-select__desc{color:inherit;font-size:.68rem;font-weight:600;line-height:1.25;opacity:.78;text-wrap:pretty}.chip-select__badge{display:inline-flex;min-width:1.15rem;align-items:center;justify-content:center;padding:.05rem .32rem;border-radius:999px;background:color-mix(in srgb,currentColor 16%,transparent);font-size:.68rem;font-weight:800;line-height:1.2}.chip-select__chip.is-disabled{opacity:.45;cursor:default;pointer-events:none}.chip-select--range .chip-select__chip{align-items:flex-start;max-width:16rem;border-radius:.75rem;padding:.42rem .72rem}.chip-select.is-readonly{opacity:.45;pointer-events:none}.chip-select.is-readonly .chip-select__chip{cursor:default}.chip-select--route-kind .chip-select__chip--salida.is-active{border-color:color-mix(in srgb,var(--route-out) 55%,var(--border));background:var(--route-out-soft);color:var(--route-out)}.chip-select--route-kind .chip-select__chip--entrada.is-active{border-color:color-mix(in srgb,var(--route-in) 45%,var(--border));background:var(--route-in-soft);color:var(--route-in)}.chip-select--route-kind .chip-select__chip--pareado.is-active{border-color:color-mix(in srgb,var(--route-pair) 48%,var(--border));background:var(--route-pair-soft);color:var(--route-pair)}.chip-select--service-kind .chip-select__chip{padding-inline:.82rem .95rem}.chip-select--service-kind .chip-select__chip--regular:not(.is-active){border-color:color-mix(in srgb,var(--accent) 42%,var(--border));color:color-mix(in srgb,var(--accent) 62%,var(--text-secondary))}.chip-select--service-kind .chip-select__chip--regular.is-active{border-width:1.5px;border-color:color-mix(in srgb,var(--accent-secondary) 22%,var(--accent));background:var(--accent);color:#fff;font-weight:800;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent),inset 0 -.14rem color-mix(in srgb,var(--accent-secondary) 35%,transparent)}.chip-select--service-kind .chip-select__chip--regular.is-active .chip-select__icon{color:#fff}.chip-select--service-kind .chip-select__chip--refuerzo:not(.is-active){border-color:color-mix(in srgb,var(--refuerzo-rail-bg) 42%,var(--border));color:color-mix(in srgb,var(--refuerzo-rail-bg) 62%,var(--text-secondary))}.chip-select--service-kind .chip-select__chip--refuerzo.is-active{border-width:1.5px;border-color:color-mix(in srgb,var(--refuerzo-rail-fg) 22%,var(--refuerzo-rail-bg));background:var(--refuerzo-rail-bg);color:var(--refuerzo-rail-fg);font-weight:800;box-shadow:0 0 0 1px color-mix(in srgb,var(--refuerzo-rail-bg) 45%,transparent),inset 0 -.14rem color-mix(in srgb,var(--refuerzo-rail-fg) 14%,transparent)}.chip-select--service-kind .chip-select__chip--refuerzo.is-active .chip-select__icon{color:var(--refuerzo-rail-fg)}.chip-select--clase .chip-select__chip.is-active{border-width:1.5px;font-weight:800}.chip-select--clase .chip-select__chip[data-value="0"].is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--clase .chip-select__chip[data-value="3"].is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--clase .chip-select__chip[data-value="5"].is-active{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-card));color:var(--text-primary)}.chip-select--operation .chip-select__chip{min-width:2.6rem;justify-content:center;font-variant:small-caps;letter-spacing:.04em}.chip-select--festivo .chip-select__chip--local.is-active{border-color:color-mix(in srgb,var(--festivo-local) 55%,var(--border));background:var(--festivo-local-soft);color:var(--festivo-local)}.chip-select--festivo .chip-select__chip--regional.is-active{border-color:color-mix(in srgb,var(--festivo-regional) 55%,var(--border));background:var(--festivo-regional-soft);color:var(--festivo-regional)}.chip-select--festivo .chip-select__chip--nacional.is-active{border-color:color-mix(in srgb,var(--festivo-nacional) 55%,var(--border));background:var(--festivo-nacional-soft);color:var(--festivo-nacional)}.chip-select--festivo .chip-select__chip--ok.is-active{border-color:color-mix(in srgb,var(--ok) 55%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--severity .chip-select__chip--info.is-active{border-color:color-mix(in srgb,var(--issues-info-fg) 55%,var(--border));background:var(--issues-info-bg);color:var(--issues-info-fg)}.chip-select--severity .chip-select__chip--warning.is-active{border-color:color-mix(in srgb,var(--issues-warning-fg) 55%,var(--border));background:var(--issues-warning-bg);color:var(--issues-warning-fg)}.chip-select--severity .chip-select__chip--error.is-active{border-color:color-mix(in srgb,var(--issues-error-fg) 55%,var(--border));background:var(--issues-error-bg);color:var(--issues-error-fg)}.chip-select--severity .chip-select__chip--ticket.is-active{border-color:color-mix(in srgb,var(--issues-ticket-fg) 55%,var(--border));background:var(--issues-ticket-bg);color:var(--issues-ticket-fg)}.chip-select--company-category .chip-select__chip{padding-inline:.62rem .78rem}.chip-select--company-category .chip-select__chip--buses.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--company-category .chip-select__chip--urban.is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--company-category .chip-select__chip--other.is-active{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-primary)}.chip-select--vehicle .chip-select__chip--autobus.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--vehicle .chip-select__chip--microbus.is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--vehicle .chip-select__chip--turismo.is-active{border-color:color-mix(in srgb,var(--col-inf) 48%,var(--border));background:color-mix(in srgb,var(--col-inf) 16%,transparent);color:var(--col-inf)}.chip-select--vehicle .chip-select__chip--oficina.is-active{border-color:color-mix(in srgb,var(--cmd-pax) 48%,var(--border));background:var(--cmd-pax-soft);color:var(--cmd-pax)}.chip-select--vehicle .chip-select__chip--mantenimiento.is-active{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.chip-select--vehicle .chip-select__chip--invitados.is-active{border-color:color-mix(in srgb,var(--darsena-bg) 50%,var(--border));background:var(--issues-ticket-bg);color:var(--darsena-bg)}.chip-select--vehicle .chip-select__chip--otros.is-active{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-secondary)}.chip-select--token-type .chip-select__chip--plate.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--token-type .chip-select__chip--card.is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--token-type .chip-select__chip--qr.is-active{border-color:color-mix(in srgb,var(--col-ftl) 48%,var(--border));background:color-mix(in srgb,var(--col-ftl) 16%,transparent);color:var(--col-ftl)}.chip-select--access-type .chip-select__chip--auto.is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--access-type .chip-select__chip--manual.is-active{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.chip-select--access-type .chip-select__chip--none.is-active{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-secondary)}.chip-select--docks{gap:.38rem}.chip-select--docks .chip-select__chip{min-width:2.35rem;height:2.35rem;padding:0 .28rem;justify-content:center;border-radius:.5rem;border-width:1.5px;font-size:.92rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.02em}.chip-select--message-type .chip-select__chip{min-height:2.05rem;padding:.32rem .85rem;gap:.42rem}.chip-select--message-type .chip-select__chip--texto.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--message-type .chip-select__chip--audio.is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--gender .chip-select__chip[data-value="1"].is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--gender .chip-select__chip[data-value="2"].is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--icons .chip-select__chip{position:relative;min-width:2.05rem;height:2.05rem;padding:0;justify-content:center}.chip-select--icons .chip-select__body{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.chip-select--whitelist{width:100%}.chip-select--whitelist .chip-select__chip{flex:1 1 auto;justify-content:center}.chip-select--whitelist .chip-select__label{white-space:nowrap}.chip-select--whitelist .chip-select__chip--pulse.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--whitelist .chip-select__chip--open.is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--whitelist .chip-select__chip--close.is-active{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--bg-card));color:var(--danger)}.chip-select--whitelist .chip-select__chip--swap.is-active{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.chip-select--whitelist .chip-select__chip--hold.is-active{border-color:color-mix(in srgb,var(--accent-secondary) 50%,var(--border));background:color-mix(in srgb,var(--accent-secondary) 14%,var(--bg-card));color:var(--accent-secondary)}.chip-select--docks .chip-select__chip.is-active{border-color:color-mix(in srgb,var(--darsena-bg) 55%,var(--border));background-image:linear-gradient(315deg,var(--darsena-bg) 20%,color-mix(in srgb,var(--darsena-bg) 52%,var(--text-primary)) 74%);background-color:var(--darsena-bg);color:var(--darsena-fg);text-shadow:0 1px 2px rgba(0,0,0,.35)}.chip-select--panel{padding:.4rem .5rem;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-radius:.7rem;background:var(--bg-form-panel-secondary)}.chip-select--service-status .chip-select__chip--estado-cancelado{border-color:color-mix(in srgb,var(--estado-cancelado-bg) 55%,var(--border));background:var(--estado-cancelado-bg);color:var(--estado-cancelado-fg)}.chip-select--service-status .chip-select__chip--estado-cancelado.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--estado-espera{border-color:color-mix(in srgb,var(--estado-espera-bg) 55%,var(--border));background:var(--estado-espera-bg);color:var(--estado-espera-fg)}.chip-select--service-status .chip-select__chip--estado-espera.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--estado-parking{border-color:color-mix(in srgb,var(--estado-parking-bg) 55%,var(--border));background:var(--estado-parking-bg);color:var(--estado-parking-fg)}.chip-select--service-status .chip-select__chip--estado-parking.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--estado-entrando{border-color:color-mix(in srgb,var(--estado-entrando-bg) 55%,var(--border));background:var(--estado-entrando-bg);color:var(--estado-entrando-fg)}.chip-select--service-status .chip-select__chip--estado-entrando.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--estado-darsena{border-color:color-mix(in srgb,var(--estado-darsena-bg) 55%,var(--border));background:var(--estado-darsena-bg);color:var(--estado-darsena-fg)}.chip-select--service-status .chip-select__chip--estado-darsena.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--estado-saliendo{border-color:color-mix(in srgb,var(--estado-saliendo-bg) 55%,var(--border));background:var(--estado-saliendo-bg);color:var(--estado-saliendo-fg)}.chip-select--service-status .chip-select__chip--estado-saliendo.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--estado-finalizado{border-color:color-mix(in srgb,var(--estado-finalizado-bg) 55%,var(--border));background:var(--estado-finalizado-bg);color:var(--estado-finalizado-fg)}.chip-select--service-status .chip-select__chip--estado-finalizado.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--estado-retrasado{border-color:color-mix(in srgb,var(--estado-retrasado-bg) 55%,var(--border));background:var(--estado-retrasado-bg);color:var(--estado-retrasado-fg)}.chip-select--service-status .chip-select__chip--estado-retrasado.is-active{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.chip-select--service-status .chip-select__chip--servicio-activo{border-color:color-mix(in srgb,var(--estado-entrando-bg) 40%,var(--border));background:color-mix(in srgb,var(--estado-entrando-bg) 22%,var(--bg-card));color:var(--estado-entrando-fg)}.chip-select--service-status .chip-select__chip--servicio-activo.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent);outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}@media(prefers-reduced-motion:reduce){.chip-select__chip{transition:none}.chip-select__chip.is-active{animation:none}.chip-select__chip:hover:not(.is-disabled):not(:disabled),.chip-select__chip:active:not(.is-disabled):not(:disabled){transform:none}.chip-select__icon,.chip-select__chip.is-active .chip-select__icon{transition:none;transform:none}}.fold-panel{position:relative;border:1px solid var(--border);border-radius:1rem;background:var(--bg-panel);box-shadow:var(--shadow);overflow:hidden}.fold-panel.is-dragging{border-style:dashed;border-color:color-mix(in srgb,var(--border) 70%,var(--text-muted));background:color-mix(in srgb,var(--bg-panel) 55%,transparent)}.fold-panel.is-dragging .fold-panel__bar,.fold-panel.is-dragging .fold-panel__collapse{opacity:.22}.fold-panel.is-drop-target{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 42%,transparent)}.fold-panel__drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;border:2px dashed var(--accent);border-radius:inherit;background:color-mix(in srgb,var(--accent) 12%,transparent)}.fold-panel.is-open{overflow:visible;position:relative;z-index:4}.fold-panel.is-open .fold-panel__collapse-inner{overflow:visible}.fold-panel__bar{display:flex;align-items:stretch;min-width:0;overflow:hidden;background:var(--bg-form-header);border-start-start-radius:inherit;border-start-end-radius:inherit}.fold-panel:not(.is-open) .fold-panel__bar{border-end-start-radius:inherit;border-end-end-radius:inherit}.fold-panel__head{display:flex;align-items:center;gap:.55rem;flex:1 1 auto;min-width:0;padding:.7rem .95rem;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer}.fold-panel:has(.fold-panel__grip) .fold-panel__head{padding-left:.4rem}.fold-panel__actions{display:flex;align-items:center;flex:0 0 auto;gap:.35rem;padding:.35rem .65rem .35rem 0}.fold-panel__actions--end{padding:.2rem .45rem .2rem 0}.fold-panel__grip,.fold-panel__hide{display:grid;flex:0 0 auto;place-items:center;width:1.7rem;height:1.7rem;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--text-muted);box-shadow:none}.fold-panel__grip{align-self:center;margin-left:.28rem;cursor:grab;touch-action:none}.fold-panel.is-dragging .fold-panel__grip{cursor:grabbing}.fold-panel__hide{align-self:center;color:var(--text-secondary);cursor:pointer}.fold-panel__grip:hover,.fold-panel__hide:hover,.fold-panel__grip:focus-visible,.fold-panel__hide:focus-visible{color:var(--text-primary);background:transparent;transform:none}.fold-panel__head:hover{background:color-mix(in srgb,var(--bg-hover) 70%,transparent)}.fold-panel__title{display:inline-flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:.35rem .45rem;min-width:0;color:var(--text-primary);font-size:.92rem;font-weight:750}.fold-panel__badge{min-width:0;padding:.12rem .55rem;border-radius:999px;background:var(--accent-dim);color:var(--accent-secondary);font-size:.75rem;font-weight:700}.fold-panel__chevron{margin-left:auto;flex:0 0 auto;color:var(--text-secondary);transition:transform .28s ease}.fold-panel.is-open .fold-panel__chevron{transform:rotate(180deg)}.fold-panel__collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.fold-panel.is-open .fold-panel__collapse{grid-template-rows:1fr}.fold-panel__collapse-inner{overflow:hidden;min-width:0;min-height:0}.fold-panel__body{padding:.85rem .95rem .95rem;border-top:1px solid var(--border);opacity:0;transform:translateY(-.4rem);transition:opacity .28s ease,transform .28s ease}.fold-panel.is-open .fold-panel__body{opacity:1;transform:none}.fold-panel.is-maximized{overflow:hidden}.app-shell__maximize .fold-panel.is-maximized{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;border-radius:0;box-shadow:none}.app-shell__maximize .fold-panel.is-maximized .fold-panel__bar{flex:0 0 auto}.app-shell__maximize .fold-panel.is-maximized .fold-panel__collapse{flex:1 1 auto;min-height:0;grid-template-rows:1fr}.app-shell__maximize .fold-panel.is-maximized .fold-panel__collapse-inner{height:100%;overflow:hidden;display:flex;flex-direction:column}.app-shell__maximize .fold-panel.is-maximized .fold-panel__body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}@media(prefers-reduced-motion:reduce){.fold-panel__collapse,.fold-panel__body,.fold-panel__chevron{transition:none}}.parameter-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(8.5rem,16rem);gap:.75rem 1rem;align-items:start;padding-bottom:.7rem;border-bottom:1px solid var(--border)}.parameter-row.is-pulse{margin:-.35rem -.45rem 0;padding:.35rem .45rem .7rem;border-radius:.65rem;border-bottom-color:transparent;outline:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--bg-panel));animation:parameter-row-pulse .9s ease-in-out 3}.parameter-row:last-child{padding-bottom:0;border-bottom:0}@keyframes parameter-row-pulse{0%,to{background:color-mix(in srgb,var(--accent) 10%,var(--bg-panel))}50%{background:color-mix(in srgb,var(--accent) 28%,var(--bg-panel))}}.parameter-row--wide,.parameter-row--inline{grid-template-columns:1fr}.parameter-row__heading{display:flex;align-items:center;justify-content:space-between;gap:.85rem;min-width:0}.parameter-row__heading .parameter-row__title,.parameter-row__heading .parameter-row__name{flex:1 1 auto;min-width:0;margin:0}.parameter-row__heading .parameter-row__control{flex:0 0 auto;margin-left:auto}.parameter-row__heading .ui-toggle{min-height:0}.parameter-row__heading .chip-select{flex-wrap:nowrap}.parameter-row__title{margin:0;color:var(--text-primary);font-size:.88rem;font-weight:700;line-height:1.35}.parameter-row__name{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem;margin:0;color:var(--text-primary);font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,monospace;font-size:.82rem;font-weight:650;word-break:break-word}.parameter-row__title+.parameter-row__name,.parameter-row__heading+.parameter-row__name{margin-top:.22rem;color:var(--text-muted);font-size:.72rem;font-weight:550}.parameter-row__id{color:var(--text-muted);font-variant-numeric:tabular-nums}.parameter-row__id:after{content:"·";margin-left:.35rem;font-weight:500}.parameter-row__hint,.parameter-row__error{margin:.28rem 0 0;font-size:.75rem;font-weight:550;line-height:1.4}.parameter-row__hint{color:var(--text-muted)}.parameter-row__error{color:var(--danger)}.parameter-row__control{min-width:0}.parameter-row__control textarea{width:100%;min-height:4.8rem;resize:vertical}@media(max-width:1100px){.parameter-row{grid-template-columns:1fr}}.time-picker{width:100%}.time-picker.is-embedded{width:auto;flex:0 0 auto}.time-picker.is-embedded .time-picker__trigger{flex:0 0 auto}.time-picker.is-embedded .time-picker__value{flex:none;white-space:nowrap}.time-picker.is-embedded .time-picker__control{padding:0;border:0;background:transparent;min-height:0}.time-picker.is-embedded.is-disabled .time-picker__control{background:transparent}.time-picker__control{display:flex;align-items:center;gap:.35rem;padding:.2rem .4rem .2rem .65rem}.time-picker__control.is-open{border-color:var(--accent)}.time-picker__trigger{display:inline-flex;align-items:center;gap:.5rem;flex:1 1 auto;min-width:0;margin:0;padding:.35rem .2rem;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.time-picker__trigger:disabled{cursor:not-allowed}.time-picker.is-disabled .time-picker__control{background:var(--bg-elevated);color:var(--text-muted)}.time-picker__value{font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.04em}.time-picker__value.is-empty{color:var(--text-muted);font-weight:650}.time-picker__clear{display:inline-grid;place-items:center;flex:0 0 auto;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-muted);cursor:pointer}.time-picker__clear:hover{background:var(--bg-hover);color:var(--text-primary)}.time-picker-panel{--picker-mode-color: var(--accent);position:fixed;z-index:2460;display:flex;flex-direction:column;align-items:center;width:max-content;padding:.9rem 1rem 1rem;border:1px solid var(--border);border-radius:1rem;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 68%),var(--bg-elevated);box-shadow:var(--shadow)}.time-picker-panel.is-selecting-minutes{--picker-mode-color: var(--accent-secondary)}.time-picker-panel__steps{display:flex;align-items:center;justify-content:center;gap:.35rem;margin-bottom:.65rem}.time-picker-panel__step{--step-color: var(--accent);padding:.32rem .55rem;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-muted);font:inherit;font-size:.7rem;font-weight:800;cursor:pointer}.time-picker-panel__step.is-minutes{--step-color: var(--accent-secondary)}.time-picker-panel__step.is-active{border-color:color-mix(in srgb,var(--step-color) 42%,var(--border));background:color-mix(in srgb,var(--step-color) 12%,transparent);color:var(--step-color)}.time-picker-panel__step.is-complete,.time-picker-panel__step.is-muted{opacity:.4}.time-picker-panel__step:hover,.time-picker-panel__step:focus-visible{opacity:1;color:var(--step-color);outline:none}.time-picker-panel__step-arrow{color:var(--text-muted);font-size:.7rem}.time-picker-panel__readout{display:flex;align-items:center;justify-content:center;gap:.12rem;width:fit-content;min-width:6.5rem;margin:0 auto .45rem;padding:.4rem .7rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-primary);color:var(--text-muted);font-size:1.7rem;font-weight:700;font-variant-numeric:tabular-nums}.time-picker-panel__readout-value{--value-color: var(--accent);min-width:2.15rem;padding:0;border:0;background:transparent;color:var(--text-muted);font:inherit;text-align:center;cursor:pointer}.time-picker-panel__readout-value.is-minutes{--value-color: var(--accent-secondary)}.time-picker-panel__readout-value.is-active,.time-picker-panel__readout-value.is-muted{color:var(--value-color)}.time-picker-panel__readout-value:hover,.time-picker-panel__readout-value:focus-visible{color:var(--value-color);outline:none}.time-picker-panel__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2450;margin:0;padding:0;border:0;background:color-mix(in srgb,#0b1220 52%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer}.time-picker-panel.is-centered{top:50%;left:50%;right:auto;bottom:auto;z-index:2460;max-width:min(18.5rem,100vw - 2.25rem);max-height:calc(100dvh - 2rem);overflow:auto;transform:translate(-50%,-50%)}@media(prefers-reduced-motion:reduce){.time-picker-panel__backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}.time-picker-clock__period{display:flex;justify-content:center;gap:.3rem;margin:0 0 .55rem}.time-picker-clock__period button{padding:.28rem .6rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-muted);font:inherit;font-size:.68rem;font-weight:700;cursor:pointer}.time-picker-clock__period button.is-active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.time-picker-clock{--clock-color: var(--accent);position:relative;width:16.5rem;height:16.5rem;border:1px solid color-mix(in srgb,var(--clock-color) 30%,var(--border));border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--clock-color) 7%,transparent) 0 53%,transparent 54%),color-mix(in srgb,var(--bg-primary) 88%,transparent);box-shadow:inset 0 0 0 7px color-mix(in srgb,var(--clock-color) 3%,transparent),var(--shadow);cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;outline:none;transition:border-color .18s ease,background .18s ease}.time-picker-clock:focus-visible{box-shadow:inset 0 0 0 7px color-mix(in srgb,var(--clock-color) 3%,transparent),0 0 0 3px color-mix(in srgb,var(--clock-color) 28%,transparent),var(--shadow)}.time-picker-clock.is-minutes{--clock-color: var(--accent-secondary)}.time-picker-clock__tick{position:absolute;bottom:50%;left:50%;z-index:0;width:1px;height:46%;transform-origin:50% 100%;background:linear-gradient(to top,transparent 0,transparent calc(100% - 5px),color-mix(in srgb,var(--text-muted) 45%,transparent) calc(100% - 5px));pointer-events:none}.time-picker-clock__tick.is-major{width:2px;background:linear-gradient(to top,transparent 0,transparent calc(100% - 8px),color-mix(in srgb,var(--clock-color) 55%,var(--text-muted)) calc(100% - 8px))}.time-picker-clock__tick.is-active{background:linear-gradient(to top,transparent 0,transparent calc(100% - 8px),var(--clock-color) calc(100% - 8px))}.time-picker-clock__group{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease,filter .18s ease}.time-picker-clock__group.is-active{z-index:2;opacity:1;transform:scale(1)}.time-picker-clock__group.is-muted{z-index:1;opacity:.08;filter:saturate(0);transform:scale(.95);pointer-events:none}.time-picker-clock__group.is-hidden{visibility:hidden;opacity:0;transform:scale(.95);pointer-events:none}.time-picker-clock__number{position:absolute;display:grid;width:2.15rem;height:2.15rem;padding:0;place-items:center;border:1px solid color-mix(in srgb,var(--clock-color) 20%,transparent);border-radius:50%;background:color-mix(in srgb,var(--clock-color) 14%,var(--bg-primary));color:var(--text-primary);font:inherit;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;transform:translate(-50%,-50%);pointer-events:none;transition:color .12s ease,background .12s ease,box-shadow .12s ease}.time-picker-clock__number.is-selected{border-color:var(--clock-color);background:var(--clock-color);color:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--clock-color) 18%,transparent),0 3px 10px color-mix(in srgb,var(--clock-color) 30%,transparent)}[data-theme=dark] .time-picker-clock__number.is-selected{color:#0b1a24}.time-picker-clock__hand{position:absolute;bottom:50%;left:50%;z-index:1;width:3px;height:39%;border-radius:999px;background:color-mix(in srgb,var(--clock-color) 65%,transparent);transform-origin:50% 100%;pointer-events:none;transition:transform .1s linear,background .18s ease}.time-picker-clock.is-dragging .time-picker-clock__hand{transition:background .18s ease}.time-picker-clock__knob{position:absolute;top:-.35rem;left:50%;width:.85rem;height:.85rem;border:2px solid var(--bg-primary);border-radius:50%;background:var(--clock-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--clock-color) 22%,transparent);transform:translate(-50%)}.time-picker-clock__center{position:absolute;top:50%;left:50%;z-index:3;width:.7rem;height:.7rem;border:2px solid var(--bg-primary);border-radius:50%;background:var(--clock-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--clock-color) 25%,transparent);transform:translate(-50%,-50%);pointer-events:none}@media(max-width:480px){.time-picker-clock{width:min(15.5rem,100vw - 4.5rem);height:min(15.5rem,100vw - 4.5rem);margin-inline:auto}.time-picker-clock__number{width:1.9rem;height:1.9rem;font-size:.78rem}}@media(prefers-reduced-motion:reduce){.time-picker-clock,.time-picker-clock__group,.time-picker-clock__number,.time-picker-clock__hand{transition:none}}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.date-picker{width:100%}.date-picker.is-embedded{width:auto;flex:1 1 auto;min-width:0}.date-picker.is-embedded .date-picker__value{white-space:nowrap}.date-picker__control,.date-picker__control.field-control{display:flex;align-items:center;gap:.35rem;min-height:2.55rem;padding:.28rem .55rem .28rem .7rem}.date-picker.is-embedded .date-picker__control{padding:0;border:0;background:transparent;min-height:0}.date-picker__control.is-open{border-color:var(--accent)}.date-picker__trigger{display:inline-flex;align-items:center;gap:.5rem;flex:1 1 auto;min-width:0;height:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.date-picker__trigger:disabled{cursor:not-allowed}.date-picker.is-disabled .date-picker__control{background:var(--bg-elevated);color:var(--text-muted)}.date-picker.is-embedded.is-disabled .date-picker__control{background:transparent}.date-picker__value{font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.02em}.date-picker__value.is-empty{color:var(--text-muted);font-weight:650}.date-picker__clear{display:inline-grid;place-items:center;flex:0 0 auto;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-muted);cursor:pointer}.date-picker__clear:hover{background:var(--bg-hover);color:var(--text-primary)}.date-picker-panel{position:fixed;z-index:2460;padding:.65rem;border:1px solid var(--border);border-radius:1rem;background:var(--bg-elevated);box-shadow:var(--shadow)}.date-picker-panel__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2450;margin:0;padding:0;border:0;background:color-mix(in srgb,#0b1220 52%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer}.date-picker-panel.is-centered{top:50%;left:50%;z-index:2460;max-width:min(22rem,100vw - 2.25rem);max-height:calc(100dvh - 2rem);overflow:auto;transform:translate(-50%,-50%)}.date-picker-panel .react-calendar{width:17.5rem;max-width:100%;border:0;background:transparent;color:var(--text-primary);font-family:inherit;font-weight:650}.date-picker-panel .react-calendar__navigation button,.date-picker-panel .react-calendar__tile{color:var(--text-primary);border-radius:.55rem}.date-picker-panel .react-calendar__navigation button:enabled:hover,.date-picker-panel .react-calendar__tile:enabled:hover{background:var(--bg-hover)}.date-picker-panel .react-calendar__tile--now{background:color-mix(in srgb,var(--accent) 18%,transparent)}.date-picker-panel .react-calendar__tile--active{background:var(--accent);color:var(--bg-card)}.date-picker-panel .react-calendar__month-view__weekdays{color:var(--text-secondary);font-size:.72rem;font-weight:800;text-transform:uppercase}.date-picker-panel .react-calendar__month-view__weekdays__weekday abbr{text-decoration:none}@media(prefers-reduced-motion:reduce){.date-picker-panel__backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}.system-jobs-modal__body{display:flex;flex-direction:column;gap:.85rem;min-height:18rem}.system-jobs-modal__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.system-jobs-modal__search{display:flex;flex:1 1 16rem;align-items:center;gap:.45rem;min-width:0;color:var(--text-muted)}.system-jobs-modal__search .field-control{flex:1 1 auto}.system-jobs-modal__count{margin:0;color:var(--text-muted);font-size:.8rem;font-weight:650;white-space:nowrap}.system-jobs-modal__name{font-weight:650}.system-jobs-modal__error{display:inline-flex}.system-jobs-modal__num{text-align:right;font-variant-numeric:tabular-nums}.system-jobs-modal__body .data-table-wrap{flex:1 1 auto;min-height:14rem}.system-jobs-modal__life-heart{position:relative;display:inline-flex;flex-shrink:0;transform-origin:center;z-index:0}.route-table td.system-jobs-modal__state,.system-jobs-modal__life.is-beating{overflow:visible}.system-jobs-modal__life.is-beating .system-jobs-modal__life-heart{color:var(--danger);animation:system-jobs-life-beat 1.15s ease-in-out infinite}.system-jobs-modal__life.is-beating .system-jobs-modal__life-heart:after{content:"";position:absolute;top:50%;right:50%;bottom:50%;left:50%;width:.85rem;height:.85rem;margin:-.425rem 0 0 -.425rem;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--danger) 75%,transparent) 0%,transparent 72%);pointer-events:none;z-index:-1;animation:system-jobs-life-trail 1.15s ease-out infinite}@keyframes system-jobs-life-beat{0%,to{transform:scale(1);filter:drop-shadow(0 0 0 transparent)}14%{transform:scale(1.32);filter:drop-shadow(0 0 .28rem var(--danger))}28%{transform:scale(1);filter:drop-shadow(0 0 .42rem color-mix(in srgb,var(--danger) 70%,transparent))}42%{transform:scale(1.2);filter:drop-shadow(0 0 .22rem var(--danger))}58%{transform:scale(1);filter:drop-shadow(0 0 .5rem color-mix(in srgb,var(--danger) 45%,transparent))}}@keyframes system-jobs-life-trail{0%,8%{transform:scale(.7);opacity:0}14%{transform:scale(1);opacity:.95}42%{transform:scale(2.4);opacity:.35}68%{transform:scale(3.1);opacity:0}to{transform:scale(3.1);opacity:0}}@media(prefers-reduced-motion:reduce){.system-jobs-modal__life.is-beating .system-jobs-modal__life-heart,.system-jobs-modal__life.is-beating .system-jobs-modal__life-heart:after{animation:none;filter:none}.system-jobs-modal__life.is-beating .system-jobs-modal__life-heart{color:var(--danger)}}.route-table-wrap,.data-table-wrap{--data-table-pager-h: 0px;position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-primary);overflow:hidden;isolation:isolate;clip-path:inset(0 round var(--radius))}.route-table-wrap:after,.data-table-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;border:1px solid var(--border);border-radius:inherit;pointer-events:none}.data-table__scroll{position:relative;flex:1 1 auto;min-width:0;min-height:0;overflow:auto;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.data-table__loading{top:var(--data-table-head-h, 2rem);z-index:1;justify-content:flex-start;padding-top:1.15rem;background:color-mix(in srgb,var(--bg-primary) 68%,transparent)}.route-table,.data-table,.log-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:.82rem}.route-table th,.log-table th{position:sticky;top:0;z-index:2;padding:.4rem .55rem;min-width:0;overflow:hidden;text-align:left;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-panel);border-bottom:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap}.route-table td,.log-table td{padding:.45rem .55rem;min-width:0;min-height:2.75rem;overflow:hidden;border-bottom:1px solid var(--border);vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;background:var(--bg-primary);transition:background-color .28s ease,box-shadow .28s ease}.data-table__col--actions{position:sticky;right:0;isolation:isolate;text-align:right;overflow:hidden;text-overflow:unset;background:var(--bg-primary);background-clip:padding-box}.route-table thead th.data-table__col--actions{z-index:4;background:var(--bg-panel);box-shadow:-1px 0 0 var(--border),-.45rem 0 .55rem -.28rem color-mix(in srgb,var(--text-primary) 18%,transparent)}.route-table tbody td.data-table__col--actions{z-index:3;box-shadow:-1px 0 0 var(--border),-.45rem 0 .55rem -.28rem color-mix(in srgb,var(--text-primary) 18%,transparent)}.route-table tbody tr:nth-child(2n):not(:hover):not(.is-active):not(.is-group) td{background:color-mix(in srgb,var(--text-primary) 3%,var(--bg-primary))}.route-table tbody tr.data-table__status-row td,.route-table tbody tr.data-table__status-row:nth-child(2n) td{background:transparent;box-shadow:none;transition:none}.route-table tbody tr:not(.data-table__status-row):not(.is-group):hover td,.route-table tbody tr:not(.data-table__status-row):not(.is-group).is-active td{background:color-mix(in srgb,var(--accent) 12%,var(--bg-primary))}.route-table tbody tr.log-row--clickable{cursor:pointer}.route-table tbody tr:not(.data-table__status-row):not(.is-group):hover td:first-child,.route-table tbody tr:not(.data-table__status-row):not(.is-group).is-active td:first-child{box-shadow:inset .18rem 0 0 var(--accent)}.data-table__status-cell{padding:1.1rem .55rem;overflow:visible;text-align:center;text-overflow:unset;white-space:normal;vertical-align:middle}.data-table__status-cell .loading-spinner{min-height:8.5rem}.data-table__status-cell .data-table__empty{margin:0}.data-table__skeleton-row td{vertical-align:middle}.data-table__skeleton-cell{display:block;height:.7rem;width:72%;max-width:14rem}.data-table__skeleton-row:nth-child(2n) .data-table__skeleton-cell{width:58%}.data-table__skeleton-row td:last-child .data-table__skeleton-cell{width:38%;margin-left:auto}.table-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:.4rem}.table-action-btn{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:.45rem;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer}.table-action-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.table-action-btn:disabled{opacity:.45;cursor:not-allowed}.table-action-btn--accent{color:var(--accent-secondary);border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}.table-action-btn--accent:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 12%,var(--bg-card))}.table-action-btn--ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 42%,var(--border))}.table-action-btn--ok:hover:not(:disabled){background:color-mix(in srgb,var(--ok) 12%,var(--bg-card))}.table-action-btn--danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.table-action-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 12%,var(--bg-card))}.data-table__empty,.data-table__error{margin:.75rem 1rem}.data-table__error{color:var(--danger)}.data-table__sort{display:inline-flex;align-items:center;gap:.28rem;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.data-table__sort.is-active{color:var(--text-primary)}.data-table__sort-icon{font-size:.72rem;font-weight:700;opacity:.4}.data-table__sort.is-active .data-table__sort-icon{opacity:1}.data-table__pager{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:.55rem .75rem;padding:.65rem .85rem;border-bottom:1px solid var(--border);background:var(--bg-panel)}.data-table__pager-main{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;min-width:0}.data-table__pager--top,.data-table__toolbar{position:sticky;top:0;z-index:3;border-start-start-radius:calc(var(--radius) - 1px);border-start-end-radius:calc(var(--radius) - 1px)}.data-table__pager+.data-table__scroll+.data-table__pager,.data-table__scroll+.data-table__pager{border-bottom:0;border-top:1px solid var(--border);border-end-start-radius:calc(var(--radius) - 1px);border-end-end-radius:calc(var(--radius) - 1px)}.data-table__pager-size{display:inline-flex;align-items:center;gap:.4rem}.data-table__pager-size select,.data-table__pager-page input{padding:.25rem .45rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-card);color:var(--text-primary)}.data-table__pager-page{display:inline-flex;align-items:center;gap:.4rem}.data-table__pager-page input{width:3.6rem;text-align:center;font-variant-numeric:tabular-nums}.data-table__pager-nav{display:inline-flex;align-items:center;gap:.45rem;margin-left:auto}.data-table__toolbar{display:flex;flex:0 0 auto;align-items:center;gap:.65rem;justify-content:flex-end;padding:.45rem .7rem;border-bottom:1px solid var(--border);background:var(--bg-panel)}.data-table__title{display:inline-flex;align-items:center;gap:.35rem;margin:0;flex:1 1 auto;min-width:0;color:var(--text-primary);font-size:.88rem;font-weight:750;letter-spacing:0;text-transform:none}.data-table__grip,.data-table__hide{display:grid;flex:0 0 auto;place-items:center;width:1.7rem;height:1.7rem;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--text-muted);box-shadow:none}.data-table__grip{cursor:grab;touch-action:none}.data-table-wrap.is-dragging .data-table__grip{cursor:grabbing}.data-table__hide{color:var(--text-secondary);cursor:pointer}.data-table__grip:hover,.data-table__hide:hover,.data-table__grip:focus-visible,.data-table__hide:focus-visible{color:var(--text-primary);background:transparent;transform:none}.data-table-wrap.is-dragging{border-style:dashed;border-color:color-mix(in srgb,var(--border) 70%,var(--text-muted))}.data-table-wrap.is-dragging>:not(.data-table__drop-overlay){opacity:.22}.data-table-wrap.is-drop-target{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 42%,transparent)}.data-table__drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;border:2px dashed var(--accent);border-radius:inherit;background:color-mix(in srgb,var(--accent) 12%,transparent)}.data-table__toolbar-actions{display:inline-flex;flex:0 0 auto;align-items:center;gap:.65rem;margin-left:auto}.data-table__toolbar-sep{align-self:stretch;width:1px;min-height:1.45rem;margin-block:.12rem;background:var(--border)}.data-table__report-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.15rem;padding-inline:.4rem}@media(prefers-reduced-motion:reduce){.route-table td,.log-table td{transition:none}}.context-menu{position:fixed;z-index:2100;min-width:12.5rem;max-width:min(22rem,100vw - 1rem);padding:.28rem 0;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-elevated);box-shadow:var(--shadow);color:var(--text-primary)}.context-menu__group{display:flex;flex-direction:column}.context-menu__sep{height:1px;margin:.28rem .55rem;background:var(--border)}.context-menu__item{display:flex;align-items:center;gap:.55rem;width:100%;margin:0;padding:.42rem .75rem;border:0;background:transparent;color:inherit;font:inherit;font-size:.82rem;font-weight:650;text-align:left;cursor:pointer}.context-menu__item:hover:not(:disabled),.context-menu__item:focus-visible{background:color-mix(in srgb,var(--accent) 12%,var(--bg-hover));outline:none}.context-menu__item:disabled{opacity:.45;cursor:not-allowed}.context-menu__item--accent{color:var(--accent-secondary)}.context-menu__item--danger{color:var(--danger)}.context-menu__item svg{flex:0 0 auto;color:var(--text-muted)}.context-menu__item--accent svg,.context-menu__item--danger svg{color:inherit}.context-menu__icon-gap{flex:0 0 1.05rem}.context-menu__label{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.context-menu__item .route-id{padding:.08rem .38rem;font-size:.68rem}.report-viewer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2600;display:flex;align-items:center;justify-content:center;padding:.85rem;box-sizing:border-box;background:color-mix(in srgb,var(--text-primary) 52%,transparent);-webkit-backdrop-filter:blur(8px) saturate(1.08);backdrop-filter:blur(8px) saturate(1.08);overscroll-behavior:contain}.report-viewer{display:grid;grid-template-rows:auto minmax(0,210mm);flex:0 1 auto;min-width:0;min-height:0;width:100%;max-width:min(1180px,100vw - 1.7rem);height:fit-content;max-height:calc(100dvh - 1.7rem);overflow:hidden;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--text-primary)}.report-viewer__toolbar{display:flex;flex-direction:column;align-items:stretch;gap:.52rem;min-width:0;padding:.7rem .9rem;overflow:visible;border-bottom:1px solid var(--border);background:var(--bg-panel);border-radius:var(--radius) var(--radius) 0 0}.report-viewer__toolbar-title-row{display:flex;align-items:center;justify-content:space-between;min-height:1.9rem}.report-viewer__toolbar-title{font-size:1rem;font-weight:700}.report-viewer__toolbar-sep{height:1px;background:var(--border)}.report-viewer__toolbar-main-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem}.report-viewer__toolbar-presentation{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem 1rem}.report-viewer__toolbar-presentation-leading,.report-viewer__toolbar-presentation-trailing{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.report-viewer__toolbar-presentation-trailing{margin-left:auto}.report-viewer__icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;padding-inline:.45rem}.report-viewer__icon-btn.is-on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}.report-viewer__pagination{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.3rem}.report-viewer__detail-toggle{white-space:nowrap}.report-viewer__page-indicator{min-width:4.2rem;text-align:center;font-variant-numeric:tabular-nums;font-weight:700;font-size:.88rem}.report-viewer__stage{display:flex;align-items:center;justify-content:center;min-height:0;max-height:210mm;padding:.75rem;overflow:hidden;overscroll-behavior:contain}.report-viewer__loading,.report-viewer__message{margin:auto;max-width:28rem;text-align:center}.report-viewer__message--error{color:var(--danger)}.report-viewer__loading-progress{height:.45rem;margin:.85rem 0 .55rem;overflow:hidden;border-radius:999px;background:var(--bg-hover)}.report-viewer__loading-progress-fill{height:100%;background:var(--accent)}.report-viewer__loading-meta{margin:0 0 .85rem;color:var(--text-muted);font-size:.82rem}.report-viewer__sheet-host{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-height:0}.report-viewer__sheet-host-screen{--report-preview-scale-base: 1;display:flex;justify-content:center;width:100%;zoom:var(--report-preview-scale-base)}.report-viewer__print-target{position:absolute;left:-99999px;top:0;display:flex;flex-direction:column;width:297mm;visibility:hidden;pointer-events:none}@media(max-width:1100px){.report-viewer{max-width:none}.report-viewer__toolbar-main-actions,.report-viewer__toolbar-presentation{width:100%}}.report-sheet{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:297mm;height:210mm;max-width:297mm;max-height:210mm;min-height:210mm;padding:10mm 8mm 8mm;box-sizing:border-box;overflow:hidden;background:#fff;color:var(--text-primary);box-shadow:0 2px 12px color-mix(in srgb,var(--text-primary) 18%,transparent);print-color-adjust:exact;-webkit-print-color-adjust:exact}.report-sheet--measure{height:auto;min-height:0;max-height:none;overflow:visible;grid-template-rows:auto auto auto;box-shadow:none}.report-sheet--measure .report-sheet__body,.report-sheet--measure .report-sheet__table-wrap{flex:0 0 auto;min-height:0;overflow:visible}.report-sheet__header{display:flex;gap:1rem;align-items:flex-start;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.report-sheet__header--compact{padding-bottom:.35rem}.report-sheet__header--compact .report-sheet__title{font-size:.95rem}.report-sheet__logo-slot{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:.28rem;min-width:7.5rem}.report-sheet__logo{display:block;height:2.4rem;width:auto;max-width:9rem;object-fit:contain}.report-sheet__station{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:center;color:var(--text-primary)}.report-sheet__user{display:flex;flex:0 0 auto;align-items:center;gap:.45rem;max-width:14rem;margin-left:auto;padding:.2rem .45rem .2rem .25rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-panel)}.report-sheet__user-text{display:flex;min-width:0;flex-direction:column;line-height:1.15}.report-sheet__user-label{font-size:.55rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.report-sheet__user-name{overflow:hidden;font-size:.72rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.report-sheet__user-login{overflow:hidden;font-size:.62rem;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.report-sheet__header--compact .report-sheet__user{padding:.12rem .35rem .12rem .2rem}.report-sheet__titles{min-width:0;flex:1}.report-sheet__title{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem 1rem;margin:0 0 .2rem;font-size:1.15rem;line-height:1.2}.report-sheet__title-text{min-width:0}.report-sheet__title-extra{display:inline-flex;align-items:center;gap:.4rem;min-width:0;margin-left:auto;color:var(--text-secondary);font-size:.92rem;font-weight:750;text-align:right}.report-sheet__title-extra .route-id{flex:0 0 auto}.report-sheet__title-extra .route-label,.report-sheet__title-extra .line-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-sheet__title-extra .line-label{color:var(--text-primary)}.report-sheet__meta{margin:0;font-size:.72rem;color:var(--text-secondary)}.report-sheet__meta--secondary{color:var(--text-muted)}.report-sheet__body{display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden;padding:.45rem 0}.report-sheet__body>.form-section--panel{flex:0 0 auto;margin:0 0 .4rem;padding:.35rem .55rem .4rem;border-radius:var(--radius-sm)}.report-sheet__body>.form-section--panel .form-section__head{margin-bottom:.28rem}.report-sheet__body>.form-section--panel .form-section__title{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.report-sheet__body>.form-section--panel .report-sheet__preamble,.report-sheet__body>.form-section--panel .report-sheet__extra,.report-sheet__body>.form-section--panel .report-sheet__summary{margin:0;padding:0;border:0}.report-sheet__summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem .65rem;margin:0 0 .45rem;padding:.4rem .15rem .5rem;border-bottom:1px solid var(--border)}.report-sheet__summary-item{display:flex;flex-direction:column;gap:.08rem;min-width:0}.report-sheet__summary dt{color:var(--text-muted);font-size:.58rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.report-sheet__summary dd{margin:0;overflow:hidden;color:var(--text-primary);font-size:.72rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.report-sheet__preamble,.report-sheet__extra{flex:0 0 auto;min-width:0;margin:0 0 .35rem;overflow:hidden}.report-sheet__preamble .flow-timeline{padding:.2rem 0 .35rem;overflow:hidden;border:0;background:transparent}.report-sheet__preamble .flow-timeline__event{min-width:0}.report-sheet__preamble .flow-timeline__time{min-height:1.15rem;margin-bottom:.35rem}.report-sheet__preamble .flow-timeline__stamp{padding:.08rem .32rem .06rem}.report-sheet__preamble .flow-timeline__photo{width:min(4.4rem,100%);height:2.55rem}.report-sheet__preamble .flow-timeline__event.is-done .flow-timeline__marker{animation:none}.report-sheet__table-caption{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:0 0 .28rem;color:var(--text-secondary);font-size:.68rem;font-weight:650}.report-sheet__table-caption span{letter-spacing:.06em;text-transform:uppercase}.report-sheet__table-caption strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.report-sheet__table-wrap{flex:1 1 auto;min-height:0;overflow:hidden}.report-data-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.68rem}.report-data-table thead{display:table-header-group}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--id{width:5.6rem}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--leg{width:5.4rem}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--when{width:9.2rem}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--status{width:8.4rem}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--platform{width:4.4rem}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--plate{width:8.2rem}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--pax,.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--counted{width:5.6rem}.report-sheet[data-report-kind=movimientos] .report-data-table col.report-data-table__col--validation{width:6.6rem}.report-sheet[data-report-kind=movimientos] .report-data-table th.report-data-table__col--platform,.report-sheet[data-report-kind=movimientos] .report-data-table td.report-data-table__col--platform,.report-sheet[data-report-kind=movimientos] .report-data-table th.report-data-table__col--pax,.report-sheet[data-report-kind=movimientos] .report-data-table td.report-data-table__col--pax,.report-sheet[data-report-kind=movimientos] .report-data-table th.report-data-table__col--counted,.report-sheet[data-report-kind=movimientos] .report-data-table td.report-data-table__col--counted{text-align:center}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--idRoute{width:5.5%}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--platform{width:6.5%}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--time{width:6%}.report-sheet[data-report-kind=servicios-dia] .report-data-table tr.is-group td{padding-top:.55rem;padding-bottom:.35rem;border-top:1px solid color-mix(in srgb,var(--text-primary) 14%,transparent)}.report-sheet[data-report-kind=servicios-dia] .report-data-table tr.is-group:first-child td{border-top:0;padding-top:.35rem}.report-sheet[data-report-kind=servicios-dia] .report-data-table tr.is-group .servicios-dia__date-group-label{font-weight:700;color:var(--text-primary)}.report-sheet[data-report-kind=servicios-dia] .report-data-table tr.is-group .servicios-dia__date-group-head{display:inline-flex;align-items:center;gap:.45rem}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--id{width:6.5%}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--company{width:9%}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--status{width:11%}.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--company{overflow:visible;white-space:normal}.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--company .company-mark__name{white-space:normal;overflow:visible;text-overflow:unset;word-break:break-word;line-height:1.15}.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--company .company-mark--sm .company-mark__logo{max-width:3.6rem;max-height:.9rem}.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--company .company-mark__name{font-size:.62rem}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--route{width:24%}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--paired{width:2.4rem}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--refuerzos{width:5.5%}.report-sheet[data-report-kind=servicios-dia] .report-data-table th.report-data-table__col--refuerzos,.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--refuerzos{text-align:center}.report-sheet[data-report-kind=servicios-dia] .report-data-table col.report-data-table__col--comments{width:15%}.report-sheet[data-report-kind=servicios-dia] .report-data-table th.report-data-table__col--idRoute,.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--idRoute{text-align:center;vertical-align:middle}.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--idRoute .route-id{max-width:none;display:inline-block}.report-sheet[data-report-kind=servicios-dia] .report-data-table th.report-data-table__col--status,.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--status,.report-sheet[data-report-kind=servicios-dia] .report-data-table th.report-data-table__col--platform,.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--platform{text-align:center}.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--route .route-info{width:100%}.report-sheet[data-report-kind=servicios-dia] .report-data-table td.report-data-table__col--route .route-info__name{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-sheet[data-report-kind=historico-ruta] .report-data-table col.report-data-table__col--when{width:9.4rem}.report-sheet[data-report-kind=historico-ruta] .report-data-table col.report-data-table__col--plate{width:8.4rem}.report-sheet[data-report-kind=historico-ruta] .report-data-table col.report-data-table__col--status{width:8.2rem}.report-sheet[data-report-kind=historico-ruta] .report-data-table col.report-data-table__col--platform{width:4.4rem}.report-sheet[data-report-kind=historico-ruta] .report-data-table col.report-data-table__col--pax,.report-sheet[data-report-kind=historico-ruta] .report-data-table col.report-data-table__col--counted{width:5.8rem}.report-sheet[data-report-kind=historico-ruta] .report-data-table col.report-data-table__col--late{width:5.4rem}.report-sheet[data-report-kind=historico-ruta] .report-data-table th.report-data-table__col--platform,.report-sheet[data-report-kind=historico-ruta] .report-data-table td.report-data-table__col--platform,.report-sheet[data-report-kind=historico-ruta] .report-data-table th.report-data-table__col--pax,.report-sheet[data-report-kind=historico-ruta] .report-data-table td.report-data-table__col--pax,.report-sheet[data-report-kind=historico-ruta] .report-data-table th.report-data-table__col--counted,.report-sheet[data-report-kind=historico-ruta] .report-data-table td.report-data-table__col--counted,.report-sheet[data-report-kind=historico-ruta] .report-data-table th.report-data-table__col--late,.report-sheet[data-report-kind=historico-ruta] .report-data-table td.report-data-table__col--late{text-align:center}.report-data-table .servicios-dia__tipo.route-type-chip--entrada,.report-data-table .servicios-dia__tipo.route-type-chip--salida{box-sizing:border-box;min-width:4.9rem;justify-content:center}.report-data-table th,.report-data-table td{padding:.12rem .24rem;border-bottom:1px solid var(--border-light);text-align:left;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-data-table th{font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-panel)}.report-data-table tbody tr:nth-child(2n) td{background:var(--row-even)}.report-sheet .servicios-dia__pair-connector{display:none}.report-data-table .route-id{letter-spacing:0;max-width:5.5rem}.report-data-table .company-mark--sm .company-mark__logo{max-width:4.8rem;max-height:1.05rem}.report-data-table .company-mark--named{max-width:100%}.report-data-table .company-mark__name{font-size:.68rem}.report-data-table .pill{padding:.04rem .35rem;font-size:.58rem}.report-data-table .ui-toggle{min-height:0;gap:0}.report-data-table .ui-toggle__label{display:none}.report-data-table .ui-toggle__track{width:1.85rem;height:1.05rem}.report-data-table .ui-toggle__thumb{top:.08rem;left:.1rem;width:.78rem;height:.78rem}.report-data-table .ui-toggle:has(input:checked) .ui-toggle__thumb{transform:translate(.78rem)}.report-data-table .ui-toggle.is-disabled{opacity:1}.report-sheet[data-report-kind=lineas] .report-data-table col.report-data-table__col--id{width:4%}.report-sheet[data-report-kind=lineas] .report-data-table col.report-data-table__col--description{width:42%}.report-sheet[data-report-kind=lineas] .report-data-table col.report-data-table__col--company{width:16%}.report-sheet[data-report-kind=lineas] .report-data-table col.report-data-table__col--fromDate,.report-sheet[data-report-kind=lineas] .report-data-table col.report-data-table__col--toDate{width:10%}.report-sheet[data-report-kind=lineas] .report-data-table col.report-data-table__col--routes{width:6%}.report-sheet[data-report-kind=lineas] .report-data-table col.report-data-table__col--enabled{width:7%}.report-sheet[data-report-kind=lineas] .report-data-table th.report-data-table__col--id,.report-sheet[data-report-kind=lineas] .report-data-table td.report-data-table__col--id,.report-sheet[data-report-kind=lineas] .report-data-table th.report-data-table__col--routes,.report-sheet[data-report-kind=lineas] .report-data-table td.report-data-table__col--routes,.report-sheet[data-report-kind=lineas] .report-data-table th.report-data-table__col--enabled,.report-sheet[data-report-kind=lineas] .report-data-table td.report-data-table__col--enabled{text-align:center}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table col.report-data-table__col--description{width:50%}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table col.report-data-table__col--dateFrom,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table col.report-data-table__col--dateTo{width:10%}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table col.report-data-table__col--flags{width:22%}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table col.report-data-table__col--enable{width:8%}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table th.report-data-table__col--dateFrom,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--dateFrom,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table th.report-data-table__col--dateTo,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--dateTo,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table th.report-data-table__col--flags,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--flags,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table th.report-data-table__col--enable,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--enable{text-align:center}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--description{white-space:normal;overflow:visible;vertical-align:top}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--dateFrom,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--dateTo,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--flags,.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--enable{vertical-align:top}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__range-table th,.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__range-table td{background:transparent;border-bottom:1px solid var(--border-light)}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__range-table tbody tr:last-child td{border-bottom:0}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__name{margin-block:0;min-height:0;width:100%}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__mark{border-radius:.12rem}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__label{padding:.08rem .4rem}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__label-text{overflow:visible;text-overflow:unset;white-space:normal;font-weight:700;line-height:1.25}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__warn{animation:none}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__date{padding:.04rem .38rem .04rem .22rem;font-size:.62rem}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__date svg{width:.7rem;height:.7rem}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__chips{justify-content:center;flex-wrap:wrap;gap:.12rem}.report-sheet[data-report-kind=calendarios-operacion] .calendar-catalog__chips .pill{padding:.04rem .32rem;font-size:.58rem}.report-sheet[data-report-kind=calendarios-operacion] .report-data-table td.report-data-table__col--enable .ui-toggle{justify-content:center}.report-sheet[data-report-kind=calendarios-operacion][data-report-detailed=false] .calendar-catalog__ranges{margin-left:0;padding:.12rem 0 0;border-left:0;border-radius:0;background:none}.report-sheet[data-report-kind=calendarios-operacion][data-report-detailed=false] .calendar-catalog__mark{filter:grayscale(1)}.report-sheet[data-report-kind=calendarios-operacion][data-report-detailed=false] .calendar-catalog__date{padding:0;border:0;background:none;border-radius:0}.report-sheet[data-report-kind=calendarios-operacion][data-report-detailed=false] .calendar-catalog__date svg{display:none}.report-sheet[data-report-kind=calendarios-operacion][data-report-detailed=false] .pill{display:inline;padding:0;border:0;border-radius:0;background:none;color:inherit;font-size:inherit;font-weight:650}.report-sheet[data-report-kind=calendarios-operacion][data-report-detailed=false] tbody tr.calendar-catalog__row--no-ranges td{background:#f2f2f2}.report-sheet[data-report-kind=calendarios-operacion][data-report-detailed=false] tbody tr.calendar-catalog__row--no-ranges td:first-child{box-shadow:inset .28rem 0 #7a7a7a}.report-sheet[data-report-kind=companias] .report-data-table col.report-data-table__col--id{width:6%}.report-sheet[data-report-kind=companias] .report-data-table col.report-data-table__col--name{width:22%}.report-sheet[data-report-kind=companias] .report-data-table col.report-data-table__col--category{width:10%}.report-sheet[data-report-kind=companias] .report-data-table col.report-data-table__col--enabled{width:7%}.report-sheet[data-report-kind=companias] .report-data-table th.report-data-table__col--id,.report-sheet[data-report-kind=companias] .report-data-table td.report-data-table__col--id,.report-sheet[data-report-kind=companias] .report-data-table th.report-data-table__col--enabled,.report-sheet[data-report-kind=companias] .report-data-table td.report-data-table__col--enabled,.report-sheet[data-report-kind=companias] .report-data-table th.report-data-table__col--category,.report-sheet[data-report-kind=companias] .report-data-table td.report-data-table__col--category{text-align:center}.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--id{width:4.6rem}.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--company{width:7.2rem}.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--departureTime,.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--arrivalTime{width:5.5rem}.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--calendar{width:8.8rem}.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--busLine{width:7rem}.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--lastPlatform{width:4.6rem}.report-sheet[data-report-kind=rutas] .report-data-table col.report-data-table__col--active{width:4.4rem}.report-sheet[data-report-kind=rutas] .report-data-table th.report-data-table__col--id,.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--id,.report-sheet[data-report-kind=rutas] .report-data-table th.report-data-table__col--departureTime,.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--departureTime,.report-sheet[data-report-kind=rutas] .report-data-table th.report-data-table__col--arrivalTime,.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--arrivalTime,.report-sheet[data-report-kind=rutas] .report-data-table th.report-data-table__col--calendar,.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--calendar,.report-sheet[data-report-kind=rutas] .report-data-table th.report-data-table__col--lastPlatform,.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--lastPlatform,.report-sheet[data-report-kind=rutas] .report-data-table th.report-data-table__col--active,.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--active{text-align:center}.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--company .company-mark{justify-content:flex-start}.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--route .rutas-page__route{display:inline-flex;align-items:center;max-width:100%;min-width:0}.report-sheet[data-report-kind=rutas] .report-data-table td.report-data-table__col--route .route-label__name{overflow:hidden;text-overflow:ellipsis}.report-sheet[data-report-kind=rutas] .report-data-table .rutas-page__days{justify-content:center;gap:.1rem}.report-sheet[data-report-kind=rutas] .report-data-table .rutas-page__day{width:.95rem;height:.95rem;font-size:.58rem}.report-data-table .when-stamp{gap:.22rem;padding:.04rem .28rem .04rem .22rem}.report-data-table .when-stamp svg{width:.7rem;height:.7rem}.report-data-table .when-stamp__date,.report-data-table .when-stamp__time{font-size:.62rem}.report-data-table .route-type-chip,.report-data-table .estado-servicio{font-size:.58rem;padding:.04rem .35rem}.report-data-table .servicios-dia__tipo,.report-data-table .servicios-dia__estado{min-width:0}.report-data-table .servicios-dia__darsena-mark{min-width:1.35rem;height:1.35rem;font-size:.68rem}.report-data-table .servicios-dia__darsenas{gap:.18rem;justify-content:center}.report-data-table .servicios-dia__pair-mark{color:var(--route-pair)}.report-sheet__footer{display:flex;justify-content:space-between;gap:1rem;padding-top:.4rem;border-top:1px solid var(--border);font-size:.68rem;color:var(--text-secondary)}.report-sheet[data-report-detailed=false]{box-shadow:none}.report-sheet[data-report-detailed=false] .report-sheet__header,.report-sheet[data-report-detailed=false] .report-sheet__footer{border-color:color-mix(in srgb,var(--text-primary) 24%,#fff)}.report-sheet[data-report-detailed=false] .report-sheet__logo{filter:grayscale(1)}.report-sheet[data-report-detailed=false] .report-data-table .servicios-dia__tipo .route-kind-mark,.report-sheet[data-report-detailed=false] .report-data-table .route-label .route-kind-mark{display:none}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table .report-data-table__col--route .route-label .route-kind-mark,.report-sheet[data-report-kind=servicios-dia][data-report-detailed=false] .report-data-table .report-data-table__col--route .route-label .route-kind-mark{display:inline-flex;color:#5f5f5f}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table .report-data-table__col--route .route-label,.report-sheet[data-report-kind=servicios-dia][data-report-detailed=false] .report-data-table .report-data-table__col--route .route-label{gap:.28rem;padding:0;border:0;background:transparent;color:#2e2e2e}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table .report-data-table__col--route .route-label__name,.report-sheet[data-report-kind=servicios-dia][data-report-detailed=false] .report-data-table .report-data-table__col--route .route-label__name{font-weight:600}.report-sheet[data-report-kind=servicios-dia][data-report-detailed=false] .report-data-table tr.is-group .service-count{color:#2e2e2e;background:transparent;border-color:#b8b8b8;font-weight:700}.report-sheet[data-report-kind=servicios-dia][data-report-detailed=false] .report-data-table tr.is-group .service-count svg{color:#5f5f5f}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table col.report-data-table__col--time{width:3.65rem}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table col.report-data-table__col--line{width:11.5rem}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table col.report-data-table__col--route{width:auto}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table th.report-data-table__col--time,.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table td.report-data-table__col--time{white-space:nowrap}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .report-data-table td.report-data-table__col--line{overflow:visible;white-space:normal;word-break:break-word}.report-sheet[data-report-detailed=false] .report-data-table .company-mark__logo{display:none}.report-sheet[data-report-detailed=false] .report-data-table .company-mark{gap:0}.report-sheet[data-report-detailed=false] .report-data-table .company-mark__name{display:inline}.report-sheet[data-report-detailed=false] .report-sheet__user,.report-sheet[data-report-detailed=false] .form-section--panel{background:#f7f7f7}.report-sheet[data-report-detailed=false] .report-data-table th{background:#f3f3f3;color:#4f4f4f}.report-sheet[data-report-detailed=false] .report-data-table tbody tr:nth-child(2n) td{background:#f9f9f9}.report-sheet[data-report-detailed=false] .report-data-table .route-id{padding:0;border:0;background:transparent;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:normal;max-width:none;border-radius:0}.report-sheet[data-report-detailed=false] .report-data-table .route-type-chip,.report-sheet[data-report-detailed=false] .report-data-table .estado-servicio,.report-sheet[data-report-detailed=false] .report-data-table .service-time,.report-sheet[data-report-detailed=false] .report-data-table .route-label{border-color:#9a9a9a;background:#efefef;color:#2e2e2e}.report-sheet[data-report-detailed=false] .report-data-table .route-kind-mark,.report-sheet[data-report-detailed=false] .report-data-table .servicios-dia__pair-mark,.report-sheet[data-report-detailed=false] .report-data-table .servicios-dia__darsenas-arrow,.report-sheet[data-report-detailed=false] .report-data-table .when-stamp svg,.report-sheet[data-report-detailed=false] .report-data-table .service-time__icon{color:#5f5f5f}.report-sheet[data-report-detailed=false] .report-data-table .servicios-dia__darsena-mark,.report-sheet[data-report-detailed=false] .report-data-table .route-info__platform{border-color:#cfcfcf;background:#e9e9e9;background-image:none;color:#2f2f2f;text-shadow:none}.report-sheet[data-report-detailed=false] .report-data-table tbody tr.servicios-dia__row--entrada td:first-child,.report-sheet[data-report-detailed=false] .report-data-table tbody tr.servicios-dia__row--salida td:first-child,.report-sheet[data-report-detailed=false] .report-data-table tbody tr.servicios-dia__row--pareado td:first-child{box-shadow:none}.report-sheet[data-report-detailed=false] .report-data-table tbody tr.servicios-dia__row--pair-parent td,.report-sheet[data-report-detailed=false] .report-data-table tbody tr.servicios-dia__row--pair-child td{background:#f2f2f2;border-color:#b8b8b8}.report-sheet[data-report-detailed=false] .report-data-table tbody tr.servicios-dia__row--pair-child td:first-child:before{border-left-color:#7a7a7a;border-bottom-color:#7a7a7a}.report-sheet[data-report-detailed=false] .report-data-table tbody tr.servicios-dia__row--pair-child td:first-child:after{border-left-color:#7a7a7a}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .es-plate{display:inline;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none;height:auto;max-width:none}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .es-plate__eu{display:none}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .es-plate__text{display:inline;padding:0;color:inherit;font-family:inherit;font-size:inherit;font-weight:650;letter-spacing:.02em}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .pill{display:inline;gap:0;padding:0;border:0;border-radius:0;background:none;color:inherit;font-size:inherit;font-weight:650}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .pax-badge{display:inline-flex;padding:0;border:0;border-radius:0;background:none;color:inherit;font-size:inherit;font-weight:650;gap:.2rem}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .pax-badge svg{display:none}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .pax-badge__delta{margin:0;padding:0;border-radius:0;background:none;color:inherit;font-weight:700}.report-sheet[data-report-kind=historico-ruta][data-report-detailed=false] .route-history__late{min-width:0}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--id{width:4%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--created{width:9%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--company{width:10%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--type{width:8%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--time{width:6%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--range{width:16%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--buses{width:6%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--days{width:8%}.report-sheet[data-report-kind=refuerzos] .report-data-table col.report-data-table__col--state{width:5%}.report-sheet[data-report-kind=refuerzos] .report-data-table th.report-data-table__col--id,.report-sheet[data-report-kind=refuerzos] .report-data-table td.report-data-table__col--id,.report-sheet[data-report-kind=refuerzos] .report-data-table th.report-data-table__col--buses,.report-sheet[data-report-kind=refuerzos] .report-data-table td.report-data-table__col--buses,.report-sheet[data-report-kind=refuerzos] .report-data-table th.report-data-table__col--time,.report-sheet[data-report-kind=refuerzos] .report-data-table td.report-data-table__col--time,.report-sheet[data-report-kind=refuerzos] .report-data-table th.report-data-table__col--state,.report-sheet[data-report-kind=refuerzos] .report-data-table td.report-data-table__col--state{text-align:center}.report-sheet[data-report-kind=refuerzos] .calendar-catalog__date{padding:.08rem .38rem .08rem .24rem;font-size:.72rem}.report-sheet[data-report-kind=refuerzos] .calendar-catalog__date svg{width:.72rem;height:.72rem}.report-sheet[data-report-kind=refuerzos] .refuerzos-page__status{width:1.45rem;height:1.45rem}.report-sheet[data-report-kind=matriculas] .report-data-table col.report-data-table__col--when{width:16%}.report-sheet[data-report-kind=matriculas] .report-data-table col.report-data-table__col--type{width:10%}.report-sheet[data-report-kind=matriculas] .report-data-table col.report-data-table__col--plate{width:13%}.report-sheet[data-report-kind=matriculas] .report-data-table col.report-data-table__col--company{width:12%}.report-sheet[data-report-kind=matriculas] .report-data-table col.report-data-table__col--vehicle{width:11%}.report-sheet[data-report-kind=matriculas] .report-data-table col.report-data-table__col--photo,.report-sheet[data-report-kind=matriculas] .report-data-table col.report-data-table__col--state{width:10%}.report-sheet[data-report-kind=matriculas] .report-data-table th.report-data-table__col--when,.report-sheet[data-report-kind=matriculas] .report-data-table td.report-data-table__col--when,.report-sheet[data-report-kind=matriculas] .report-data-table th.report-data-table__col--type,.report-sheet[data-report-kind=matriculas] .report-data-table td.report-data-table__col--type,.report-sheet[data-report-kind=matriculas] .report-data-table th.report-data-table__col--company,.report-sheet[data-report-kind=matriculas] .report-data-table td.report-data-table__col--company,.report-sheet[data-report-kind=matriculas] .report-data-table th.report-data-table__col--photo,.report-sheet[data-report-kind=matriculas] .report-data-table td.report-data-table__col--photo,.report-sheet[data-report-kind=matriculas] .report-data-table th.report-data-table__col--state,.report-sheet[data-report-kind=matriculas] .report-data-table td.report-data-table__col--state{text-align:center}.report-sheet[data-report-kind=matriculas] .report-data-table td{vertical-align:middle}.report-sheet[data-report-kind=matriculas] .es-plate{transform:scale(.82);transform-origin:center center}.report-sheet[data-report-kind=matriculas] .report-plate-thumb{display:block;width:4.6rem;height:2.6rem;margin-inline:auto;object-fit:cover;border-radius:.28rem;background:var(--bg-panel)}.report-sheet[data-report-kind=matriculas] .company-mark{justify-content:center;max-width:none}.report-sheet[data-report-kind=matriculas] .company-mark:has(.company-mark__logo) .company-mark__name{display:none}.report-sheet[data-report-kind=matriculas][data-report-detailed=false] .report-plate-thumb{width:3.2rem;height:1.8rem;filter:grayscale(1)}.report-sheet[data-report-kind=matriculas][data-report-detailed=false] .es-plate{transform:none}.report-sheet[data-report-kind=mensajes-programados] .report-data-table col.report-data-table__col--id{width:5%}.report-sheet[data-report-kind=mensajes-programados] .report-data-table col.report-data-table__col--description{width:42%}.report-sheet[data-report-kind=mensajes-programados] .report-data-table col.report-data-table__col--validFromDate,.report-sheet[data-report-kind=mensajes-programados] .report-data-table col.report-data-table__col--validToDate{width:9%}.report-sheet[data-report-kind=mensajes-programados] .calendar-catalog__date{padding:.08rem .38rem .08rem .24rem;font-size:.72rem}.report-sheet[data-report-kind=mensajes-programados] .calendar-catalog__date svg{width:.72rem;height:.72rem}.report-sheet[data-report-kind=mensajes-programados] .report-data-table col.report-data-table__col--type{width:7%}.report-sheet[data-report-kind=mensajes-programados] .report-data-table col.report-data-table__col--languages{width:9%}.report-sheet[data-report-kind=mensajes-programados] .report-data-table col.report-data-table__col--enabled{width:8%}.report-sheet[data-report-kind=mensajes-programados] .report-data-table th.report-data-table__col--id,.report-sheet[data-report-kind=mensajes-programados] .report-data-table td.report-data-table__col--id,.report-sheet[data-report-kind=mensajes-programados] .report-data-table th.report-data-table__col--type,.report-sheet[data-report-kind=mensajes-programados] .report-data-table td.report-data-table__col--type,.report-sheet[data-report-kind=mensajes-programados] .report-data-table th.report-data-table__col--languages,.report-sheet[data-report-kind=mensajes-programados] .report-data-table td.report-data-table__col--languages,.report-sheet[data-report-kind=mensajes-programados] .report-data-table th.report-data-table__col--enabled,.report-sheet[data-report-kind=mensajes-programados] .report-data-table td.report-data-table__col--enabled,.report-sheet[data-report-kind=mensajes-programados] .report-data-table th.report-data-table__col--validFromDate,.report-sheet[data-report-kind=mensajes-programados] .report-data-table td.report-data-table__col--validFromDate,.report-sheet[data-report-kind=mensajes-programados] .report-data-table th.report-data-table__col--validToDate,.report-sheet[data-report-kind=mensajes-programados] .report-data-table td.report-data-table__col--validToDate{text-align:center}.report-sheet[data-report-kind=mensajes-programados] .megafonia-report-desc{display:flex;flex-direction:column;align-items:flex-start;gap:.18rem;min-width:0}.report-sheet[data-report-kind=mensajes-programados] .megafonia-report-desc__line{display:flex;align-items:flex-start;gap:.32rem;color:var(--text-secondary);font-size:.78rem;font-weight:500;line-height:1.25}.report-sheet[data-report-kind=mensajes-programados] .megafonia-report-desc__line .megafonia-lang-flag{flex:none;margin-top:.12rem}.report-sheet[data-report-kind=mensajes-programados] .megafonia-type{color:var(--text-primary)}.report-sheet[data-report-kind=programacion-megafonia] .report-data-table col.report-data-table__col--id{width:7%}.report-sheet[data-report-kind=programacion-megafonia] .report-data-table col.report-data-table__col--kind{width:14%}.report-sheet[data-report-kind=programacion-megafonia] .report-data-table col.report-data-table__col--time{width:18%}.report-sheet[data-report-kind=programacion-megafonia] .report-data-table col.report-data-table__col--days{width:32%}.report-sheet[data-report-kind=programacion-megafonia] .report-data-table col.report-data-table__col--validFromDate,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table col.report-data-table__col--validToDate{width:8%}.report-sheet[data-report-kind=programacion-megafonia] .report-data-table col.report-data-table__col--enable{width:7%}.report-sheet[data-report-kind=programacion-megafonia] .calendar-catalog__date{padding:.08rem .38rem .08rem .24rem;font-size:.72rem}.report-sheet[data-report-kind=programacion-megafonia] .calendar-catalog__date svg{width:.72rem;height:.72rem}.report-sheet[data-report-kind=programacion-megafonia] .report-data-table th.report-data-table__col--id,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table td.report-data-table__col--id,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table th.report-data-table__col--kind,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table td.report-data-table__col--kind,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table th.report-data-table__col--time,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table td.report-data-table__col--time,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table th.report-data-table__col--days,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table td.report-data-table__col--days,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table th.report-data-table__col--enable,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table td.report-data-table__col--enable,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table th.report-data-table__col--validFromDate,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table td.report-data-table__col--validFromDate,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table th.report-data-table__col--validToDate,.report-sheet[data-report-kind=programacion-megafonia] .report-data-table td.report-data-table__col--validToDate{text-align:center}.report-sheet[data-report-kind=programacion-megafonia] .programacion-megafonia__window{justify-content:center}.report-sheet[data-report-kind=programacion-megafonia] .programacion-megafonia__freq{font-size:.62rem;padding:.06rem .28rem}.report-sheet[data-report-kind=programacion-megafonia] .programacion-megafonia__day{font-size:.68rem;padding:.08rem .32rem}.report-sheet[data-report-kind=programacion-megafonia] .programacion-kind{padding:.08rem .42rem .08rem .32rem;font-size:.68rem}.report-sheet[data-report-kind=programacion-megafonia] .programacion-kind svg{width:.62rem;height:.62rem}.report-sheet[data-report-kind=programacion-megafonia] tbody tr.programacion-megafonia__row--puntual{--programacion-kind: var(--accent)}.report-sheet[data-report-kind=programacion-megafonia] tbody tr.programacion-megafonia__row--ciclica{--programacion-kind: var(--ok)}.report-sheet[data-report-kind=programacion-megafonia] tbody tr.programacion-megafonia__row--emision{--programacion-kind: var(--col-ftl)}.report-sheet[data-report-kind=programacion-megafonia] tbody tr.programacion-megafonia__row--silencio{--programacion-kind: var(--danger)}.report-sheet[data-report-kind=programacion-megafonia] tbody tr[class*=programacion-megafonia__row--] td:first-child{box-shadow:inset .28rem 0 0 var(--programacion-kind);padding-left:.62rem}.report-sheet[data-report-kind=programacion-megafonia] .programacion-megafonia__report-id{display:flex;flex-direction:column;gap:.12rem;align-items:flex-start}.report-sheet[data-report-kind=programacion-megafonia] .programacion-megafonia__report-desc{font-size:.72rem;font-weight:600;line-height:1.2;white-space:normal}.report-sheet[data-report-kind=lista-blanca] .report-data-table col.report-data-table__col--code{width:16%}.report-sheet[data-report-kind=lista-blanca] .report-data-table col.report-data-table__col--hexcode{width:12%}.report-sheet[data-report-kind=lista-blanca] .report-data-table col.report-data-table__col--operation{width:18%}.report-sheet[data-report-kind=lista-blanca] .report-data-table col.report-data-table__col--allowAll{width:10%}.report-sheet[data-report-kind=lista-blanca] .report-data-table col.report-data-table__col--doors{width:16%}.report-sheet[data-report-kind=lista-blanca] .whitelist-mono{font-family:ui-monospace,Consolas,monospace}.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--reference{width:9%}.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--gatetype{width:16%}.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--direction{width:17%}.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--placement,.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--platforms{width:11%}.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--groups{width:6.5%}.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--readers,.report-sheet[data-report-kind=puertas-acceso] .report-data-table col.report-data-table__col--enable{width:7%}.report-sheet[data-report-kind=puertas-acceso] .report-data-table td.report-data-table__col--description{white-space:normal;overflow:visible}.report-sheet[data-report-kind=grupos-acceso] .report-data-table col.report-data-table__col--reference{width:10%}.report-sheet[data-report-kind=grupos-acceso] .report-data-table col.report-data-table__col--type{width:24%}.report-sheet[data-report-kind=grupos-acceso] .report-data-table col.report-data-table__col--validfrom{width:26%}.report-sheet[data-report-kind=grupos-acceso] .report-data-table col.report-data-table__col--usercount{width:8%}.report-sheet[data-report-kind=grupos-acceso] .report-data-table col.report-data-table__col--enable,.report-sheet[data-report-kind=usuario-acceso-tokens] .report-data-table col.report-data-table__col--type{width:12%}.report-sheet[data-report-kind=usuario-acceso-tokens] .report-data-table col.report-data-table__col--code{width:18%}.report-sheet[data-report-kind=usuario-acceso-tokens] .report-data-table col.report-data-table__col--access{width:12%}.report-sheet[data-report-kind=usuario-acceso-tokens] .report-data-table col.report-data-table__col--validity{width:18%}.report-sheet[data-report-kind=usuario-acceso-tokens] .report-data-table col.report-data-table__col--status{width:14%}.report-sheet[data-report-kind=usuario-acceso-tokens] tbody tr.is-expired td{opacity:.62}.report-sheet[data-report-kind=inicios-sesion] .report-data-table col.report-data-table__col--timeStampOn{width:22%}.report-sheet[data-report-kind=inicios-sesion] .report-data-table col.report-data-table__col--ip{width:14%}.report-sheet[data-report-kind=inicios-sesion] .report-data-table col.report-data-table__col--roles{width:22%}.report-sheet[data-report-kind=inicios-sesion] .report-data-table col.report-data-table__col--comments{width:42%}.report-sheet[data-report-kind=informe-energia]:not(:has(.report-data-table)) .report-sheet__body>.form-section--panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.report-sheet[data-report-kind=informe-energia] .report-sheet__preamble{flex:1 1 auto;display:flex;flex-direction:column;min-height:118mm;height:100%;margin:0}.report-sheet[data-report-kind=informe-energia] .report-sheet__extra{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;height:100%;margin:0}.report-sheet[data-report-kind=servicios-futuro]:not(:has(.report-data-table)) .report-sheet__body{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.report-sheet[data-report-kind=servicios-futuro]:not(:has(.report-data-table)) .report-sheet__body>.form-section--panel{flex:0 0 auto}.report-sheet[data-report-kind=servicios-futuro] .report-sheet__preamble{flex:0 0 auto;display:block;min-height:0;height:auto;margin:0}.report-sheet[data-report-kind=servicios-futuro] .futuro-report-intro{min-height:0}.report-sheet[data-report-kind=servicios-futuro] .futuro-report-intro .report-sheet__summary{align-items:start}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .futuro-report-intro .day-type-marks__mark,.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .futuro-report-intro .day-type-marks__mark:is(.pill,[class*=pill--]){border:0;background:transparent;color:#757575;box-shadow:none;font-weight:600}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .futuro-report-intro .day-type-marks__mark.is-active{border:0;background:transparent;color:#1a1a1a;box-shadow:none;font-weight:800}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .futuro-report-intro .day-type-marks.is-missing-school .day-type-marks__panel{color:#2e2e2e;border:0;background:transparent;box-shadow:none;animation:none}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .futuro-report-intro .day-type-marks.is-missing-school .day-type-marks__mark:is([data-mark=lectivo],[data-mark=noLectivo]){border:0;color:#757575;background:transparent;font-weight:600}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .futuro-report-intro .day-type-marks.is-missing-school .day-type-marks__mark:is([data-mark=lectivo],[data-mark=noLectivo]).is-active{color:#1a1a1a;font-weight:800}.report-sheet[data-report-kind=servicios-futuro][data-report-detailed=false] .futuro-report-mini-cal__day.is-selected{color:#1a1a1a;background:#e4e4e4;box-shadow:inset 0 0 0 1px #5f5f5f}.report-sheet[data-report-kind=informe-energia] .energy-report-intro,.report-sheet[data-report-kind=informe-energia] .energy-cost-share{flex:1 1 auto;min-height:0}.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--name{width:13%}.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--description{width:26%}.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--kwh{width:6%}.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--p1,.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--p2,.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--p3,.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--p4,.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--p5,.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--p6{width:5.1%}.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--powerMax,.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--powerMin{width:5.4%}.report-sheet[data-report-kind=informe-energia] .report-data-table col.report-data-table__col--share{width:5.2%}.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--kwh,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--kwh,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--p1,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--p1,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--p2,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--p2,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--p3,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--p3,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--p4,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--p4,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--p5,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--p5,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--p6,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--p6,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--powerMax,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--powerMax,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--powerMin,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--powerMin,.report-sheet[data-report-kind=informe-energia] .report-data-table th.report-data-table__col--share,.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--share{text-align:right;font-variant-numeric:tabular-nums;padding-inline:.12rem}.report-sheet[data-report-kind=informe-energia] .report-data-table td.report-data-table__col--description{white-space:normal;overflow:hidden;text-overflow:clip;line-height:1.25}.report-sheet[data-report-kind=informe-clima] .report-data-table th.informe-page__num,.report-sheet[data-report-kind=informe-clima] .report-data-table td.informe-page__num,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table th.report-data-table__col--services,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table td.report-data-table__col--services,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table th.report-data-table__col--declared,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table td.report-data-table__col--declared,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table th.report-data-table__col--counted,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table td.report-data-table__col--counted,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table th.report-data-table__col--delta,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table td.report-data-table__col--delta,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table th.informe-page__num,.report-sheet[data-report-kind=informe-pasajeros] .report-data-table td.informe-page__num,.report-sheet[data-report-kind=informe-servicios] .report-data-table th.informe-page__num,.report-sheet[data-report-kind=informe-servicios] .report-data-table td.informe-page__num{text-align:right;font-variant-numeric:tabular-nums}.report-sheet .report-data-table tr.is-group td{font-weight:700;background:var(--bg-panel)}.report-sheet .report-data-table tr.is-group--line td{font-weight:600;padding-left:1.1rem}.report-sheet .report-data-table tr.is-child td:first-child{padding-left:.8rem}.report-sheet[data-report-kind=informe-historial] .report-data-table col.report-data-table__col--createdAt{width:16%}.report-sheet[data-report-kind=informe-historial] .report-data-table col.report-data-table__col--kind,.report-sheet[data-report-kind=informe-historial] .report-data-table col.report-data-table__col--status,.report-sheet[data-report-kind=informe-historial] .report-data-table col.report-data-table__col--userName,.report-sheet[data-report-kind=informe-historial] .report-data-table col.report-data-table__col--files{width:12%}.form-section{margin:.85rem 0 1.1rem}.form-section__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .65rem}.form-section__title{display:flex;align-items:center;gap:.45rem;margin:0;min-width:0;font-size:.95rem}.form-section__title svg{flex:0 0 auto;color:var(--text-muted)}.form-section--panel{margin:0;padding:.9rem 1rem 1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--bg-form-header)}.form-section--panel .form-section__head{margin-bottom:.75rem}.form-section--panel.form-section--secondary{background:var(--bg-form-panel-secondary);border-color:color-mix(in srgb,var(--accent) 16%,var(--border))}.commands-bar{display:flex;align-items:center;gap:.28rem;flex:0 0 auto;height:2.75rem;padding:.18rem;border:1px solid var(--border);border-radius:.85rem;background:color-mix(in srgb,var(--bg-elevated) 88%,transparent)}.commands-bar__btn{flex:0 0 auto}.commands-bar__btn--unlock{color:var(--accent)}.commands-bar__btn--lock{color:var(--text-secondary)}.commands-bar__barrier{position:relative;display:inline-flex;line-height:0}.commands-bar__barrier-arrow{position:absolute;top:0;left:0;pointer-events:none}.commands-bar__btn--entrada .commands-bar__barrier-arrow{color:var(--route-in)}.commands-bar__btn--salida .commands-bar__barrier-arrow{color:var(--route-out)}.commands-bar__btn:hover:not(:disabled){transform:scale(1.08)}@media(prefers-reduced-motion:reduce){.commands-bar__btn:hover:not(:disabled){transform:none}}.day-type-marks{position:relative;display:flex;align-items:center;flex:1 1 auto;min-width:0;max-width:100%}.day-type-marks__panel{display:flex;align-items:center;flex:1 1 auto;gap:.4rem;min-width:0;max-width:100%;height:2.75rem;padding:.18rem .4rem .18rem .18rem;overflow:hidden;border:1px solid var(--border);border-radius:.85rem;background:color-mix(in srgb,var(--bg-elevated) 88%,transparent);transition:max-width .2s ease-out}.day-type-marks.is-collapsed .day-type-marks__panel{max-width:2.75rem;padding:.18rem}.day-type-marks__toggle{flex:0 0 auto}.day-type-marks__toggle:hover{transform:scale(1.08)}.day-type-marks__list{display:flex;align-items:center;gap:.35rem;min-width:0;height:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.day-type-marks__list::-webkit-scrollbar{display:none}.day-type-marks.is-plain .day-type-marks__panel,.day-type-marks.is-active-only .day-type-marks__panel{flex:1 1 auto;max-width:100%;height:auto;min-height:2.4rem;padding:0;border:0;border-radius:0;background:transparent}.day-type-marks.is-plain .day-type-marks__list{flex-wrap:wrap;height:auto;overflow:visible}.day-type-marks__empty{color:var(--text-muted);font-size:.78rem;font-weight:650}.day-type-marks.is-collapsed .day-type-marks__list{width:0;min-width:0;overflow:hidden;pointer-events:none;visibility:hidden}.day-type-marks__mark--short{min-width:1.7rem;justify-content:center;padding:.22rem .28rem}.day-type-marks__mark{border:1px solid var(--border);font-size:.78rem;font-weight:650;line-height:1.2;text-align:center;white-space:nowrap;cursor:default}.day-type-marks__mark.is-active{border-color:color-mix(in srgb,currentColor 55%,var(--border));font-size:.82rem;font-weight:800;box-shadow:0 0 0 2px color-mix(in srgb,currentColor 28%,transparent);transition:transform .2s ease-out,background .2s ease-out,box-shadow .2s ease-out}.day-type-marks__mark.is-active:hover{transform:scale(1.06)}.day-type-marks.is-compact{flex:0 0 auto;width:auto;max-width:100%}.day-type-marks.is-compact .day-type-marks__panel{flex:0 0 auto;width:auto;max-width:100%;overflow:hidden}.day-type-marks.is-compact .day-type-marks__list{position:static;width:auto;max-width:none;height:100%;flex-wrap:nowrap;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.day-type-marks.is-missing-school .day-type-marks__panel{overflow:hidden;color:var(--danger);border-color:color-mix(in srgb,var(--danger) 55%,transparent);background:var(--danger-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent);animation:day-type-marks-heartbeat 1.35s ease-in-out infinite}.day-type-marks.is-missing-school .day-type-marks__toggle{color:var(--danger)}.day-type-marks.is-missing-school .day-type-marks__toggle :is(svg){animation:day-type-marks-heartbeat-icon 1.35s ease-in-out infinite}.day-type-marks.is-missing-school.is-plain .day-type-marks__panel,.day-type-marks.is-missing-school.is-active-only .day-type-marks__panel{color:inherit;border:0;background:transparent;box-shadow:none;animation:none}.day-type-marks.is-missing-school .day-type-marks__mark:is([data-mark=lectivo],[data-mark=noLectivo]){border-color:color-mix(in srgb,var(--danger) 55%,transparent);color:var(--danger);background:var(--danger-soft)}.day-type-marks__live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes day-type-marks-heartbeat{0%,to{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent)}14%{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 40%,transparent),0 0 0 .18rem color-mix(in srgb,var(--danger) 35%,transparent)}28%{opacity:.72;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent)}42%{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 40%,transparent),0 0 0 .12rem color-mix(in srgb,var(--danger) 28%,transparent)}58%,to{opacity:.78;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent)}}@keyframes day-type-marks-heartbeat-icon{0%,to{transform:scale(1)}14%{transform:scale(1.18)}28%{transform:scale(1)}42%{transform:scale(1.12)}58%,to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.day-type-marks__panel,.day-type-marks__toggle,.day-type-marks__mark.is-active{transition:none;transform:none}.day-type-marks.is-missing-school .day-type-marks__panel,.day-type-marks.is-missing-school .day-type-marks__toggle :is(svg){animation:none;opacity:1}}.app-topbar__emission{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;cursor:default;color:var(--col-ftl)}.app-topbar__emission.is-active{color:var(--col-ftl);background:color-mix(in srgb,var(--col-ftl) 16%,transparent)}.app-topbar__emission.is-off{color:var(--text-muted);opacity:.72}.app-topbar__emission.is-offline{color:var(--danger);opacity:1}.app-topbar__emission.is-offline.is-active{background:color-mix(in srgb,var(--danger) 16%,transparent);animation:none}.app-topbar__emission.is-silence{color:var(--danger);background:color-mix(in srgb,var(--danger) 16%,transparent)}.app-topbar__emission-icon{display:inline-grid;place-items:center;line-height:0}.app-topbar__emission-off{position:absolute;top:-.08rem;right:-.08rem;display:inline-grid;place-items:center;width:.95rem;height:.95rem;border:2px solid var(--bg-panel);border-radius:999px;background:var(--text-muted);color:var(--bg-panel);line-height:1}.app-topbar__emission-off.is-fail{background:var(--danger);color:var(--bg-elevated)}.app-topbar__emission.is-active:not(.is-offline) .app-topbar__emission-icon{animation:app-topbar-emission-pulse 1.8s ease-in-out infinite}@keyframes app-topbar-emission-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.82}}@media(prefers-reduced-motion:reduce){.app-topbar__emission.is-active:not(.is-offline) .app-topbar__emission-icon{animation:none}}.app-modal.add-refuerzo-modal .app-modal__panel:has(.form-tabset){height:auto;max-height:min(96vh,100%)}.app-modal.add-refuerzo-modal .app-modal__body:has(.form-tabset){flex:1 1 auto;min-height:0;overflow:hidden}.add-refuerzo-modal__body{display:flex;flex-direction:column;min-height:0}.add-refuerzo{display:flex;flex-direction:column;gap:.85rem;min-height:0;flex:1 1 auto}.add-refuerzo .form-tabset,.add-refuerzo .form-tabset__body{flex:1 1 auto;min-height:0}.add-refuerzo .form-tabset__body{overflow:auto}.add-refuerzo__grid{margin:0}.add-refuerzo-modal .form-section{margin-top:0}.add-refuerzo__days-hint{margin:0 0 .7rem;margin-bottom:.5rem!important}.add-refuerzo__base{display:flex;align-items:center;gap:.55rem}.add-refuerzo__slots{display:flex;flex-direction:column;gap:.55rem}.add-refuerzo__counts{display:flex;flex-wrap:wrap;gap:.38rem}.add-refuerzo__count{padding:0;border:0;background:transparent;cursor:pointer}.add-refuerzo__bus{display:grid;grid-template-columns:3.55rem minmax(6.8rem,8.2rem) minmax(11rem,1fr) 2.2rem;gap:.55rem .7rem;align-items:center;padding:.7rem .75rem;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-radius:.9rem;background:var(--bg-form-panel-secondary)}.add-refuerzo__bus-index{display:grid;place-items:center}.add-refuerzo__bus-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.add-refuerzo__bus-label{color:var(--text-secondary);font-size:.72rem;font-weight:750}.add-refuerzo__bus-remove{display:inline-grid;place-items:center;width:2.1rem;height:2.1rem;margin:0;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-muted);cursor:pointer}.add-refuerzo__bus-remove:hover{border-color:var(--danger);color:var(--danger)}.add-refuerzo__bus .dock-drag__sink{width:100%}@media(max-width:480px){.add-refuerzo__bus{grid-template-columns:3.55rem 1fr 2.2rem}.add-refuerzo__bus-field{grid-column:1/-1}}.calendar-catalog__name{display:flex;align-items:center;min-width:0;margin-block:-.45rem;min-height:2.15rem}.calendar-catalog__mark{flex:0 0 .28rem;width:.28rem;align-self:stretch;background:var(--border)}.calendar-catalog__label{display:flex;align-items:center;gap:.3rem;flex:1 1 auto;min-width:0;padding:.45rem .55rem .45rem .5rem}.calendar-catalog__label-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.calendar-catalog__warn{flex:0 0 auto;display:inline-flex;align-items:center;color:var(--col-wrn);animation:calendar-catalog-warn-pulse 1.4s ease-in-out infinite}@keyframes calendar-catalog-warn-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.18);opacity:.72}}.calendar-catalog__date{display:inline-flex;align-items:center;gap:.32rem;padding:.14rem .5rem .14rem .32rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-elevated);color:var(--text-primary);font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.calendar-catalog__date svg{color:var(--text-muted)}.calendar-catalog__date.is-past{background:color-mix(in srgb,var(--danger) 8%,var(--bg-elevated));border-color:color-mix(in srgb,var(--danger) 28%,var(--border));color:var(--text-secondary)}.calendar-catalog__chips{display:inline-flex;flex-wrap:nowrap;gap:.18rem}.calendar-catalog__chips .pill{padding:.12rem .38rem;font-size:.72rem}.catalog-page .filter-actions__extra{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.catalog-page__toolbar .btn{display:inline-flex;align-items:center;gap:.5rem}.calendar-catalog__hint{margin:0 0 .45rem;color:var(--text-secondary);font-size:.88rem}.calendar-catalog__year-panel .fold-panel__body{padding:.55rem .7rem .65rem}.catalog-page--calendars{overflow:auto}.catalog-page--calendars>.data-table-wrap,.catalog-page--calendars>.route-table-wrap{min-height:18rem}.catalog-page--calendars .route-table tbody tr.calendar-catalog__row--no-ranges td{background:color-mix(in srgb,var(--col-wrn) 20%,var(--bg-primary))}.catalog-page--calendars .route-table tbody tr.calendar-catalog__row--no-ranges:nth-child(2n) td,.catalog-page--calendars .route-table tbody tr.calendar-catalog__row--no-ranges:hover td,.catalog-page--calendars .route-table tbody tr.calendar-catalog__row--no-ranges.is-active td{background:color-mix(in srgb,var(--col-wrn) 28%,var(--bg-primary))}.catalog-page--calendars .route-table tbody tr.calendar-catalog__row--no-ranges td:first-child,.catalog-page--calendars .route-table tbody tr.calendar-catalog__row--no-ranges:hover td:first-child,.catalog-page--calendars .route-table tbody tr.calendar-catalog__row--no-ranges.is-active td:first-child{box-shadow:inset .32rem 0 0 var(--col-wrn);padding-left:.82rem}.calendar-catalog__report-block{display:flex;flex-direction:column;align-items:stretch;min-width:0;gap:.22rem}.calendar-catalog__ranges{margin:.08rem 0 .04rem .85rem;padding:.18rem .35rem .16rem .5rem;border-left:2px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:0 .28rem .28rem 0;background:color-mix(in srgb,var(--bg-panel) 88%,#fff)}.calendar-catalog__range-table{width:100%;border-collapse:collapse;table-layout:fixed}.calendar-catalog__range-col--description{width:52%}.calendar-catalog__range-col--from,.calendar-catalog__range-col--to{width:24%}.calendar-catalog__range-table th,.calendar-catalog__range-table td{padding:.08rem .22rem;text-align:left;vertical-align:middle}.calendar-catalog__range-table th{font-size:.52rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.calendar-catalog__range-table th:not(:first-child),.calendar-catalog__range-table td:not(:first-child){text-align:center}.calendar-catalog__range-desc{overflow:hidden;font-size:.62rem;font-weight:650;line-height:1.25;white-space:normal}.report-sheet .report-data-table tbody tr.calendar-catalog__row--no-ranges td{background:color-mix(in srgb,var(--col-wrn) 18%,var(--bg-card))}.report-sheet .report-data-table tbody tr.calendar-catalog__row--no-ranges td:first-child{box-shadow:inset .28rem 0 0 var(--col-wrn)}.create-refuerzo-wizard__search{max-width:24rem}.create-refuerzo-wizard__empty{margin:0;color:var(--text-muted)}.create-refuerzo-wizard__companies{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr))}.create-refuerzo-wizard__companies .wizard-shell__card-head{justify-content:center;min-height:2.6rem;padding-right:0}.create-refuerzo-wizard__companies .company-mark{justify-content:center;max-width:100%}.create-refuerzo-wizard__filters{display:flex;flex-direction:column;gap:.55rem}.create-refuerzo-wizard__filters .chip-select{flex-wrap:nowrap;min-height:2.2rem;align-items:center}.create-refuerzo-wizard__filters .chip-select__chip{flex:0 0 auto}.create-refuerzo-wizard__filters .chip-select--weekdays .chip-select__chip.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.create-refuerzo-wizard__filters .chip-select--weekdays .chip-select__chip[data-value="5"].is-active,.create-refuerzo-wizard__filters .chip-select--weekdays .chip-select__chip[data-value="6"].is-active{border-color:color-mix(in srgb,var(--text-secondary) 40%,var(--border));background:var(--bg-hover);color:var(--text-primary)}.create-refuerzo-wizard__buses{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .75rem;padding:.5rem .75rem;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-radius:.9rem;background:var(--bg-form-panel-secondary)}.create-refuerzo-wizard__buses .form-row__label{flex:0 0 auto;width:max-content}.create-refuerzo-wizard__route{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.create-refuerzo-wizard__docks{display:flex;flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none}.create-refuerzo-wizard__docks li{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .7rem}.form-grid{display:grid;grid-template-columns:minmax(8rem,35%) 1fr;gap:.55rem 1rem;align-items:center;margin:.75rem 0}.form-grid__full{grid-column:1/-1;min-width:0}.form-row__label{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-secondary);font-size:.85rem;font-weight:650}.form-row__label-main{display:inline-flex;align-items:center;gap:.4rem}.form-row__qty{display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;padding:.06rem .4rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));color:var(--accent-secondary);font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2}[data-theme=dark] .form-row__qty{color:var(--accent)}.form-row__qty.is-muted{background:var(--bg-hover);border-color:var(--border);color:var(--text-muted)}.form-row__label.is-required .form-row__label-main:after{content:" *";color:var(--danger)}.form-row__control{min-width:0}.form-row__label:has(+.form-row__control .form-row__hint){align-self:start;padding-top:.45rem}.form-row__hint{margin:.32rem 0 0;color:var(--text-muted);font-size:.75rem;font-weight:550;line-height:1.35}.form-row__label--full,.form-row__control--full{grid-column:1/-1}.form-row__label--full{width:100%;margin-bottom:-.2rem}.form-row__label--full:has(.char-count){justify-content:space-between}.form-row__label .char-count{margin:0}.form-row__label--start{align-self:start;padding-top:.85rem}.form-row__control.is-ok :is(.field-control,.time-picker__control,.form-select__trigger,.masked-input__field):not(.is-invalid){border-color:var(--ok);box-shadow:0 0 0 1px color-mix(in srgb,var(--ok) 35%,transparent)}.form-row__control.is-error :is(.field-control,.time-picker__control,.form-select__trigger,.masked-input__field):not(.is-invalid){border-color:var(--danger);box-shadow:0 0 0 1px color-mix(in srgb,var(--danger) 45%,transparent)}.form-row__meta{display:flex;justify-content:flex-end;align-items:flex-start;gap:.5rem;margin-top:.28rem}.form-row__error{margin:.28rem 0 0;color:var(--danger);font-size:.75rem;font-weight:650}.form-row__meta .form-row__error{margin:0 auto 0 0}.form-row__meta .char-count{margin:0}.char-count{margin:.28rem 0 0;color:var(--text-secondary);font-size:.75rem;font-weight:650;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.char-count.is-low{color:var(--accent)}.char-count.is-limit{color:var(--danger)}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.date-range-picker{width:100%}.filter-grid .date-range-picker,.calendar-search__filters .date-range-picker{width:max-content;max-width:100%}.filter-grid .date-range-picker .date-picker__control,.calendar-search__filters .date-range-picker .date-picker__control{width:max-content;min-width:16.5rem}.filter-grid .date-range-picker .date-picker__value,.calendar-search__filters .date-range-picker .date-picker__value{white-space:nowrap}.date-range-picker__panel{display:flex;align-items:stretch;gap:.45rem;padding:.45rem}.date-range-picker__panel.has-presets:not(.is-centered){display:grid;grid-template-columns:max-content auto;align-items:stretch;padding-left:.35rem}.date-range-picker__panel.has-presets:not(.is-centered) .date-range-presets{height:0;min-height:100%;max-height:none;overflow:auto;overscroll-behavior:contain;border-right:1px solid var(--border)}.date-range-picker__panel .date-range-presets{flex:0 0 auto;min-height:0;border-right:1px solid var(--border)}.date-range-picker__body{display:flex;flex-direction:column;min-width:0;height:max-content;flex:1 1 auto}.date-range-picker__panel.is-centered{max-width:min(22rem,100vw - 2.25rem);flex-direction:column}.date-range-picker__panel.is-centered .date-range-presets{max-width:none;min-width:0;max-height:9.5rem;overflow:auto;overscroll-behavior:contain;padding:0 0 .4rem;border-right:0;border-bottom:1px solid var(--border)}.date-range-picker__panel.is-centered .date-range-presets__sep{margin-inline:.45rem}.date-range-picker__panel .rdp-root{--rdp-accent-color: var(--accent);--rdp-accent-background-color: color-mix(in srgb, var(--accent) 18%, transparent);--rdp-day-height: 1.7rem;--rdp-day-width: 1.7rem;--rdp-day_button-height: 1.45rem;--rdp-day_button-width: 1.45rem;--rdp-day_button-border-radius: 999px;--rdp-day_button-border: 0;--rdp-selected-border: 0;--rdp-months-gap: .55rem;--rdp-nav-height: 1.7rem;--rdp-nav_button-height: 1.5rem;--rdp-nav_button-width: 1.5rem;--rdp-weekday-padding: .05rem 0 .2rem;--rdp-today-color: var(--accent);--rdp-range_middle-background-color: color-mix(in srgb, var(--accent) 16%, transparent);--rdp-range_middle-color: var(--text-primary);--rdp-range_start-color: var(--bg-card);--rdp-range_end-color: var(--bg-card);--rdp-range_start-date-background-color: var(--accent);--rdp-range_end-date-background-color: var(--accent);--rdp-animation_duration: 0s;color:var(--text-primary);font-family:inherit}.date-range-picker__panel .rdp-months{flex-wrap:nowrap}.date-range-picker__panel .rdp-month{overflow:hidden;padding:.15rem .2rem .25rem;border:1px solid var(--border);border-radius:.65rem;background:var(--bg-card)}.date-range-picker__panel .rdp-month_caption{height:var(--rdp-nav-height);font-size:.78rem;font-weight:800;text-transform:capitalize}.date-range-picker__panel .rdp-caption_label{font-size:inherit}.date-range-picker__panel .rdp-weekday{font-size:.62rem;font-weight:800;text-transform:uppercase;color:var(--text-secondary);opacity:1}.date-range-picker__panel .rdp-day_button{font-size:.72rem;font-weight:700}.date-range-picker__panel .rdp-selected{font-size:inherit}.date-range-picker__panel .rdp-chevron{fill:var(--text-secondary)}.date-range-picker__panel .rdp-button_previous:hover,.date-range-picker__panel .rdp-button_next:hover,.date-range-picker__panel .rdp-day_button:hover{background:var(--bg-hover)}.date-range-picker__panel .rdp-range_start,.date-range-picker__panel .rdp-range_end,.date-range-picker__panel .rdp-range_middle{background-color:transparent}.date-range-picker__panel .rdp-range_start{background:linear-gradient(var(--rdp-gradient-direction),transparent 50%,var(--rdp-range_middle-background-color) 50%)}.date-range-picker__panel .rdp-range_end{background:linear-gradient(var(--rdp-gradient-direction),var(--rdp-range_middle-background-color) 50%,transparent 50%)}.date-range-picker__panel .rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.date-range-picker__panel .rdp-range_start.rdp-range_end{background:transparent}.date-range-picker__panel .rdp-range_start .rdp-day_button,.date-range-picker__panel .rdp-range_end .rdp-day_button{position:relative;z-index:1;background-color:var(--accent);color:var(--bg-card)}.date-range-picker__panel .rdp-range_middle .rdp-day_button{background:transparent;color:var(--text-primary)}.date-range-picker__panel .date-range-picker__month-edge .rdp-day_button{box-shadow:inset 0 -2px 0 var(--accent)}.date-range-picker__panel .rdp-range_start.date-range-picker__month-edge .rdp-day_button,.date-range-picker__panel .rdp-range_end.date-range-picker__month-edge .rdp-day_button{box-shadow:none}.date-range-presets{display:flex;flex-direction:column;gap:.12rem;min-width:9.4rem;max-width:12rem;padding:.1rem .35rem .1rem 0;overflow:auto;overscroll-behavior:contain}.date-range-presets__option{display:flex;align-items:center;width:100%;margin:0;padding:.38rem .65rem;border:0;border-radius:.5rem;background:transparent;color:var(--text-primary);font:inherit;font-size:.8rem;font-weight:750;text-align:left;text-transform:none;cursor:pointer}.date-range-presets__option:hover,.date-range-presets__option:focus-visible{background:var(--bg-hover)}.date-range-presets__option.is-selected{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-secondary)}.date-range-presets__sep{flex:0 0 auto;height:1px;margin:.28rem .45rem;background:var(--border)}.app-modal:has(.wizard-shell) .app-modal__panel{width:min(var(--wizard-width, 52rem),100vw - 2rem);height:var(--wizard-height, 52vh);max-height:min(var(--wizard-height, 52vh),100dvh - 2rem);min-height:0}.app-modal:has(.wizard-shell--w-sm) .app-modal__panel{--wizard-width: 40rem}.app-modal:has(.wizard-shell--w-md) .app-modal__panel{--wizard-width: 52rem}.app-modal:has(.wizard-shell--w-lg) .app-modal__panel{--wizard-width: 74rem}.app-modal:has(.wizard-shell--h-sm) .app-modal__panel{--wizard-height: 38vh}.app-modal:has(.wizard-shell--h-md) .app-modal__panel{--wizard-height: 52vh}.app-modal:has(.wizard-shell--h-lg) .app-modal__panel{--wizard-height: 78vh}@media(orientation:landscape)and (min-width:481px){.app-modal:has(.wizard-shell--h-sm) .app-modal__panel{--wizard-height: 58vh}.app-modal:has(.wizard-shell--h-md) .app-modal__panel{--wizard-height: 78vh}.app-modal:has(.wizard-shell--h-lg) .app-modal__panel{--wizard-height: 90vh}}@media(max-width:480px){.app-modal:has(.wizard-shell) .app-modal__panel{width:100%;height:min(var(--wizard-height, 52vh),100dvh - 1rem);max-height:calc(100dvh - 1rem)}}.app-modal__body:has(.wizard-shell){padding:0;overflow:hidden}.wizard-shell{display:flex;flex:1 1 auto;height:100%;min-height:0;overflow:hidden}.wizard-shell__sidebar{flex:0 0 15rem;padding:.85rem .75rem;border-right:1px solid var(--border);background:var(--bg-form-panel-secondary);overflow-y:auto}.wizard-shell__steps{display:flex;flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none}.wizard-shell__step{display:flex;align-items:center;gap:.6rem;width:100%;padding:.5rem .55rem;border:1px solid transparent;border-radius:.65rem;background:none;color:var(--text-muted);font:inherit;text-align:left;cursor:default}.wizard-shell__step--clickable{cursor:pointer}.wizard-shell__step--clickable:hover{border-color:color-mix(in srgb,var(--accent) 38%,var(--border))}.wizard-shell__step--active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--bg-card));color:var(--text-primary)}.wizard-shell__step--done{border-color:color-mix(in srgb,var(--ok) 28%,var(--border));background:var(--ok-soft);color:var(--text-secondary)}.wizard-shell__step--celebrate{animation:wizard-shell-step-glow .58s ease-out both}.wizard-shell__step-num{display:inline-grid;place-items:center;flex:0 0 auto;width:1.6rem;height:1.6rem;border-radius:999px;background:var(--bg-hover);font-size:.8rem;font-weight:800;font-variant-numeric:tabular-nums}.wizard-shell__step--active .wizard-shell__step-num{background:var(--accent);color:#fff}.wizard-shell__step-num--done{background:var(--ok);color:#fff}[data-theme=dark] .wizard-shell__step--active .wizard-shell__step-num,[data-theme=dark] .wizard-shell__step-num--done,[data-theme=dark] .wizard-shell__card-check{color:#0b1a24}.wizard-shell__step-num--celebrate{animation:wizard-shell-step-pop .72s cubic-bezier(.34,1.28,.52,1) both}.wizard-shell__step-text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.wizard-shell__step-label{font-size:.86rem;font-weight:750;line-height:1.2}.wizard-shell__step-desc{color:var(--text-muted);font-size:.72rem;line-height:1.25}@keyframes wizard-shell-step-glow{0%{border-color:color-mix(in srgb,var(--ok) 70%,var(--border));background:color-mix(in srgb,var(--ok) 22%,var(--bg-card))}to{border-color:color-mix(in srgb,var(--ok) 28%,var(--border));background:var(--ok-soft)}}@keyframes wizard-shell-step-pop{0%{transform:scale(.82)}40%{transform:scale(1.14)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.wizard-shell__step--celebrate,.wizard-shell__step-num--celebrate{animation:none}}.wizard-shell__main{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0}.wizard-shell__body{flex:1 1 auto;min-height:0;padding:.95rem 1.1rem 1.05rem;overflow:auto}.wizard-shell__panel{display:flex;flex-direction:column;gap:.7rem;min-height:0;height:100%}.wizard-shell__panel-body{display:flex;flex-direction:column;flex:1 1 auto;gap:.75rem;min-height:0;padding:.9rem 1rem 1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--bg-form-header)}.wizard-shell__panel--fill .wizard-shell__panel-body{overflow:auto}.wizard-shell__panel--fill .wizard-shell__panel-body:has(.schedule-message-picker){overflow:hidden}.wizard-shell__search{flex:0 0 auto;max-width:24rem}.wizard-shell__search .field-control{-webkit-appearance:none;-moz-appearance:none;appearance:none}.wizard-shell__panel--fill .data-table-wrap{flex:1 1 auto;min-height:8rem}.wizard-shell__hint{margin:0;color:var(--text-secondary);font-size:.82rem;line-height:1.4}.wizard-shell__cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(14.5rem,1fr));gap:.7rem;padding:.12rem}.wizard-shell__card{--wizard-card-kind: var(--accent);position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;overflow:hidden;padding:.8rem .9rem .75rem 1rem;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-card);color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.wizard-shell__card:hover{border-color:color-mix(in srgb,var(--wizard-card-kind) 50%,var(--border));transform:translateY(-1px)}.wizard-shell__card--selected{border-color:var(--wizard-card-kind);background:color-mix(in srgb,var(--wizard-card-kind) 16%,var(--bg-card));box-shadow:0 0 0 1px color-mix(in srgb,var(--wizard-card-kind) 55%,transparent),0 10px 22px color-mix(in srgb,var(--wizard-card-kind) 16%,transparent)}.wizard-shell__card--selected:before{content:"";position:absolute;inset:0 auto 0 0;width:.28rem;background:var(--wizard-card-kind)}.wizard-shell__card--badged.wizard-shell__card--selected:before{display:none}.wizard-shell__card--badged{padding-top:2rem}.wizard-shell__card-badge{position:absolute;top:0;left:0;z-index:1;padding:.1rem .42rem;border-width:0 1px 1px 0;border-radius:.74rem 0 .45rem;font-size:.7rem}.wizard-shell__card--selected .wizard-shell__card-badge{border-color:color-mix(in srgb,var(--accent) 48%,var(--border));background:color-mix(in srgb,var(--accent) 22%,var(--bg-elevated))}.wizard-shell__card-check{position:absolute;top:.5rem;right:.5rem;display:inline-grid;place-items:center;width:1.3rem;height:1.3rem;border-radius:999px;background:var(--wizard-card-kind);color:#fff}.wizard-shell__card-head{display:flex;align-items:center;gap:.5rem;min-width:0;width:100%;padding-right:1.5rem}.wizard-shell__card-icon{display:inline-grid;place-items:center;flex:0 0 auto;color:var(--wizard-card-kind);line-height:0}.wizard-shell__card-meta{color:var(--text-muted);font-size:.72rem;font-variant-numeric:tabular-nums}.wizard-shell__summary{display:grid;gap:.5rem;margin:0}.wizard-shell__summary-row{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:.5rem;align-items:start}.wizard-shell__summary-row dt{margin:0;color:var(--text-muted);font-size:.78rem;font-weight:750}.wizard-shell__summary-row dd{margin:0;min-width:0;font-weight:650}.wizard-shell__summary-chips{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;margin:0;padding:0;list-style:none}.wizard-shell__summary-chips .pill{max-width:100%;min-width:0;white-space:normal;text-align:left;line-height:1.25}.wizard-shell__summary-chip-ord{flex:0 0 auto;font-variant-numeric:tabular-nums;opacity:.72}@media(max-width:1100px){.wizard-shell{flex-direction:column}.wizard-shell__sidebar{flex:0 0 auto;border-right:0;border-bottom:1px solid var(--border);overflow-x:auto}.wizard-shell__steps{flex-direction:row;gap:.4rem}.wizard-shell__step-text{display:none}.wizard-shell__cards,.wizard-shell__summary-row{grid-template-columns:1fr}}.servicios-dia__route-id-cell{display:inline-flex;align-items:center;vertical-align:middle}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child .servicios-dia__route-id-cell--pair-child{margin-left:1.1rem}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child .servicios-dia__pair-connector{position:absolute;left:.55rem;color:var(--route-pair);overflow:visible;pointer-events:none}.dock-drag{display:flex;flex-direction:column;gap:.85rem}.dock-drag__palette{display:flex;flex-wrap:wrap;gap:.4rem}.dock-drag__hint{margin:0;color:var(--text-secondary);font-size:.78rem;font-weight:650}.dock-drag__sink{display:flex;flex-direction:column;align-items:center;gap:.4rem;min-height:5.1rem;padding:.5rem .4rem .55rem;border:1px dashed var(--border);border-radius:.7rem;background:var(--bg-primary)}.dock-drag__sink.is-over{border-style:solid;border-color:var(--accent);background:var(--accent-dim)}.dock-drag__sink--all{border-style:solid;border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--bg-form-panel-secondary)}.dock-drag__sink--all .dock-drag__sink-label{color:var(--accent)}.dock-drag__sink--all.is-over{border-color:var(--accent);background:var(--accent-dim)}.dock-drag__sink--compact{min-height:4.4rem;min-width:6.6rem}.dock-drag__sink-label{color:var(--text-secondary);font-size:.68rem;font-weight:800;letter-spacing:.04em}.dock-drag__placeholder{display:grid;place-items:center;min-width:1.85rem;height:1.85rem;color:var(--text-muted);font-size:.72rem}.dock-drag__chip{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}.dock-drag__chip .route-info__platform{display:inline-flex;align-items:center;justify-content:center}.dock-drag__chip.is-parking .route-info__platform{--darsena-bg: var(--estado-parking-bg);--darsena-fg: var(--estado-parking-fg)}.dock-drag__chip.is-source{cursor:grab}.dock-drag__chip.is-dragging{opacity:.45}.dock-drag__chip-clear{position:absolute;top:-.32rem;right:-.32rem;display:inline-grid;place-items:center;width:1.05rem;height:1.05rem;margin:0;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-muted);cursor:pointer}.dock-pmr{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:calc(var(--dock-size) * var(--pmr-scale, 1.35));height:calc(var(--dock-size) * var(--pmr-scale, 1.35));opacity:.45;fill:currentColor;pointer-events:none}.dock-pmr+*{position:relative;line-height:1}.sidebar-slot{position:relative;flex:0 0 var(--sidebar-expanded);width:var(--sidebar-expanded);min-width:0;align-self:stretch;overflow:visible;transition:width .28s ease,flex-basis .28s ease}.sidebar-slot.is-collapsed{flex-basis:var(--sidebar-rail);width:var(--sidebar-rail)}.sidebar{display:flex;flex-direction:column;width:100%;height:100%;border-right:1px solid var(--border);background:var(--bg-secondary);overflow:hidden;box-shadow:none;transition:width .28s ease,box-shadow .28s ease}.sidebar.is-hover-open{position:absolute;inset:0 auto 0 0;z-index:10;width:var(--sidebar-expanded);box-shadow:.2rem 0 .45rem color-mix(in srgb,#000 28%,transparent),.7rem 0 1.6rem color-mix(in srgb,#000 34%,transparent)}.sidebar__head{display:flex;align-items:center;gap:.65rem;min-height:4.4rem;padding:.65rem .55rem;border-bottom:1px solid var(--border)}.sidebar.is-collapsed:not(.is-hover-open) .sidebar__head{justify-content:center;padding-inline:.35rem}.sidebar__toggler{flex:0 0 auto}.sidebar__station{display:flex;min-width:0;flex:1;flex-direction:column;gap:.05rem}.sidebar__station-kicker{color:var(--text-muted);font-size:.68rem;font-weight:600;line-height:1.2}.sidebar__station-name{overflow:hidden;color:var(--text-primary);font-size:.95rem;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.sidebar__nav{display:flex;flex:1;flex-direction:column;min-height:0;padding:.45rem;overflow-x:hidden;overflow-y:auto}.sidebar__items{display:flex;flex:0 0 auto;flex-direction:column;gap:.15rem}.sidebar__group{display:flex;flex-direction:column}.sidebar__children{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.sidebar__group.is-open>.sidebar__children{grid-template-rows:1fr}.sidebar__children-inner{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:.1rem 0 .25rem .2rem;gap:.1rem}.sidebar__children .sidebar__link{opacity:0;transform:translateY(-.4rem);transition:opacity .28s ease,transform .28s ease}.sidebar__group.is-open>.sidebar__children .sidebar__link{opacity:1;transform:none}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(1){transition-delay:0s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(2){transition-delay:35ms}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(3){transition-delay:.07s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(4){transition-delay:.105s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(5){transition-delay:.14s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(6){transition-delay:.175s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(7){transition-delay:.21s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(8){transition-delay:.245s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(9){transition-delay:.28s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(10){transition-delay:.315s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(11){transition-delay:.35s}.sidebar__group.is-open>.sidebar__children .sidebar__link:nth-child(12){transition-delay:.385s}.sidebar__link{display:flex;align-items:center;gap:.55rem;width:100%;min-height:2.75rem;padding:.4rem .65rem;border:none;border-radius:.7rem;background:transparent;color:var(--text-secondary);text-align:left;cursor:pointer}.sidebar__link--group{font:inherit}.sidebar__link--skeleton{pointer-events:none;cursor:default}.sidebar__skel-icon{flex:0 0 1.35rem;width:1.35rem;height:1.35rem;border-radius:.45rem}.sidebar__skel-label{flex:1;max-width:9.5rem;height:.75rem}.sidebar__link--skeleton:nth-child(2) .sidebar__skel-label,.sidebar__link--skeleton:nth-child(5) .sidebar__skel-label{max-width:6.5rem}.sidebar__link--skeleton:nth-child(3) .sidebar__skel-label,.sidebar__link--skeleton:nth-child(7) .sidebar__skel-label{max-width:8rem}.sidebar__skel-kicker{width:8.2rem;height:.55rem}.sidebar__skel-name{width:7.4rem;height:.85rem}.sidebar.is-collapsed:not(.is-hover-open) .sidebar__link{justify-content:center;padding-inline:.35rem}.sidebar__link.is-active,.sidebar__link:hover,.sidebar__group.is-current>.sidebar__link--group{background:var(--bg-hover);color:var(--text-primary)}.sidebar__link--skeleton:hover{background:transparent;color:var(--text-secondary)}.sidebar__icon{display:inline-flex;flex:0 0 1.35rem;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;color:inherit}.sidebar__link.is-active .menu-icon--img,.sidebar__link:hover .menu-icon--img,.sidebar__group.is-current>.sidebar__link--group .menu-icon--img{opacity:1}.sidebar__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__chevron{flex:0 0 auto;margin-left:auto;color:var(--text-muted);transition:transform .28s ease}.sidebar__group.is-open>.sidebar__link--group .sidebar__chevron{transform:rotate(-180deg)}.sidebar__children .sidebar__link{min-height:2.35rem;padding-left:1.85rem;font-size:.92rem}.sidebar__brand{position:relative;display:flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:3.6rem;padding:.65rem .7rem .85rem;overflow:hidden;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 58%,var(--bg-secondary));pointer-events:none}.sidebar__brand .brand-mark--sm{font-size:1.85rem}.sidebar__brand.is-in .sidebar__brand-mark{animation:sidebar-brand-in .84s cubic-bezier(.05,.78,.12,1.04) both}.sidebar__brand.is-out .sidebar__brand-mark{animation:sidebar-brand-out .5s cubic-bezier(.62,0,.98,.18) both}@keyframes sidebar-brand-in{0%{transform:translate(calc(-1 * var(--sidebar-expanded)))}to{transform:translate(0)}}@keyframes sidebar-brand-out{0%{transform:translate(0)}to{transform:translate(var(--sidebar-expanded))}}.sidebar-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;border:none;background:#080c1273}[data-device=mobile] .sidebar-slot.is-drawer,[data-device=tablet] .sidebar-slot.is-drawer{position:absolute;z-index:9;height:100%;width:var(--sidebar-expanded);flex-basis:var(--sidebar-expanded);transform:translate(-105%);transition:transform .28s ease}[data-device=mobile] .sidebar-slot.is-drawer.is-open,[data-device=tablet] .sidebar-slot.is-drawer.is-open{transform:translate(0)}[data-device=mobile] .sidebar-slot.is-drawer.is-open .sidebar,[data-device=tablet] .sidebar-slot.is-drawer.is-open .sidebar{box-shadow:.25rem 0 .55rem color-mix(in srgb,#000 32%,transparent),.85rem 0 1.9rem color-mix(in srgb,#000 38%,transparent)}@media(prefers-reduced-motion:reduce){.sidebar-slot,.sidebar,.sidebar__chevron,.sidebar__children,.sidebar__children .sidebar__link,[data-device=mobile] .sidebar-slot.is-drawer,[data-device=tablet] .sidebar-slot.is-drawer{transition:none}.sidebar__children .sidebar__link{opacity:1;transform:none}.sidebar__brand.is-in .sidebar__brand-mark,.sidebar__brand.is-out .sidebar__brand-mark{animation:none}.sidebar__brand.is-out{opacity:0}}.menu-icon{display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;color:inherit}.menu-icon svg{display:block;width:1.2rem;height:1.2rem}.menu-icon--img{object-fit:contain;filter:grayscale(1);opacity:.78}.menu-icon--svg svg,.menu-icon--svg svg *{fill:currentColor!important;stroke:currentColor!important}.occupancy-filter{display:inline-flex;align-items:center;flex:0 0 auto;padding:0;border:0;background:transparent;cursor:pointer}.occupancy-filter__switch{position:relative;display:block;width:1.85rem;height:1rem;border-radius:999px;background:var(--border);transition:background-color .2s ease}.occupancy-filter.is-on .occupancy-filter__switch{background:var(--accent)}.occupancy-filter__thumb{position:absolute;top:.12rem;left:.12rem;width:.76rem;height:.76rem;border-radius:999px;background:#fff;box-shadow:0 1px 2px #0000002e;transition:transform .2s ease}.occupancy-filter.is-on .occupancy-filter__thumb{transform:translate(.85rem)}.occupancy-filter:focus-visible .occupancy-filter__switch{outline:2px solid var(--accent);outline-offset:2px}.occupancy-panel__reload{width:1.85rem;height:1.85rem;min-height:0;border-radius:.4rem}.occupancy-panel__reload.is-busy svg{animation:loading-spin .85s linear infinite}.occupancy-card__icon{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:999px;background:var(--bg-hover);color:var(--text-secondary)}.occupancy-card__icon--door.is-open{background:color-mix(in srgb,var(--estado-entrando-bg) 28%,transparent);color:var(--estado-entrando-bg)}button.occupancy-card__icon--door{border:0;padding:0;cursor:pointer}button.occupancy-card__icon--door:hover:not(:disabled){background:var(--bg-selected)}button.occupancy-card__icon--door:disabled{cursor:default;opacity:.65}button.occupancy-card__icon--door:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.occupancy-card__icon--door.is-pending{outline:2px dashed color-mix(in srgb,var(--cmd-expect) 70%,transparent);outline-offset:1px}.occupancy-card__icon--parking{color:var(--text-primary)}.occupancy-card__reserved{margin-left:auto;color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.occupancy-card__battery{display:inline-flex;align-items:center;gap:.12rem;margin-left:auto;height:1.7rem;padding:0 .4rem 0 .22rem;border-radius:999px;background:var(--bg-hover);color:var(--text-secondary);font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap}.occupancy-card__reserved+.occupancy-card__battery{margin-left:0}.occupancy-card__battery--low{color:var(--danger);background:var(--danger-soft)}.occupancy-card__battery--mid{color:var(--col-wrn);background:color-mix(in srgb,var(--col-wrn) 16%,var(--bg-hover))}.occupancy-card__battery--ok{color:var(--ok)}.occupancy-card__battery-value{line-height:1}@media(prefers-reduced-motion:reduce){.occupancy-panel__reload.is-busy svg{animation:none}}.occupancy-card{position:relative;isolation:isolate;overflow:hidden;flex:0 0 auto;display:flex;flex-direction:column;gap:.45rem;padding:.65rem .7rem .65rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--bg-card)}.occupancy-card--skeleton{pointer-events:none}.occupancy-card.is-occupied{border-color:color-mix(in srgb,var(--estado-darsena-bg) 45%,var(--border))}.occupancy-card.is-actionable{cursor:pointer;-webkit-user-select:none;user-select:none}.occupancy-card.is-actionable:hover,.occupancy-card.is-menu-open{border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}.occupancy-card.is-attention{border-color:color-mix(in srgb,var(--accent) 70%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent),0 0 16px color-mix(in srgb,var(--accent) 32%,transparent)}.occupancy-card__stripe{display:block;position:absolute;left:0;top:0;bottom:0;width:.38rem;border-radius:14px 0 0 14px;background:color-mix(in srgb,var(--text-muted) 35%,transparent)}.occupancy-card.is-occupied .occupancy-card__stripe{background:var(--estado-darsena-bg)}.occupancy-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;min-width:0}.occupancy-card__service{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:.4rem .5rem .45rem;border-radius:10px}.occupancy-card__foot{display:flex;align-items:baseline;justify-content:space-between;gap:.4rem;min-width:0}.occupancy-card__status{font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;opacity:.88}.occupancy-card__eta{margin-left:auto;color:inherit;font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em;opacity:.78;white-space:nowrap}.occupancy-card__eta.is-late{color:var(--col-wrn);opacity:1}.occupancy-card__empty{margin:0;padding:.15rem .1rem .05rem;font-size:.8rem}.occupancy-card__peer{opacity:.82;font-size:.78rem}.occupancy-card__flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;border-radius:inherit;pointer-events:none;background:color-mix(in srgb,var(--accent) 35%,#fff);box-shadow:inset 0 0 0 2px var(--accent);animation:occupancy-flash .65s ease-out forwards}.occupancy-card__flash:after{content:"";position:absolute;top:-25%;right:-45%;bottom:-25%;left:-45%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.9) 50%,transparent 62%);animation:occupancy-flash-sheen .55s ease-out forwards}[data-theme=dark] .occupancy-card__flash{background:color-mix(in srgb,var(--accent) 48%,transparent)}@media(prefers-reduced-motion:reduce){.occupancy-card.is-attention{outline:2px solid var(--accent);outline-offset:1px}.occupancy-card__flash{animation:none;opacity:0}}.service-status-menu{position:fixed;z-index:1200;display:grid;grid-template-rows:0fr;min-width:16.5rem;overflow:hidden;pointer-events:none;transition:grid-template-rows .28s ease}.service-status-menu.is-open{grid-template-rows:1fr;pointer-events:auto}.service-status-menu__fold{min-height:0;overflow:hidden}.service-status-menu__inner{display:flex;flex-direction:column;gap:.12rem;min-width:16.5rem;max-height:calc(100vh - 1rem);overflow:auto;padding:.35rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-panel);box-shadow:var(--shadow);opacity:0;transform:translateY(-.35rem);transition:opacity .28s ease,transform .28s ease}.service-status-menu.is-open .service-status-menu__inner{opacity:1;transform:none}.service-status-menu__item{display:flex;align-items:center;gap:.55rem;width:100%;padding:.5rem .65rem;border:none;border-radius:.6rem;background:transparent;color:var(--text-primary);font-weight:700;font-size:.82rem;text-align:left;cursor:pointer}.service-status-menu__item:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 12%,var(--bg-hover))}.service-status-menu__item.is-danger{color:var(--danger)}.service-status-menu__item:disabled{opacity:.45;cursor:not-allowed}.service-status-menu__sep{height:1px;margin:.28rem .35rem;background:var(--border)}@media(prefers-reduced-motion:reduce){.service-status-menu,.service-status-menu__inner{transition:none}}.status-action-question{margin:0;line-height:1.65;text-wrap:pretty}.status-action-question .route-label,.status-action-question .estado-servicio,.status-action-question .route-info__platform{vertical-align:middle}.status-action-question .route-label{display:inline-flex;margin:0 .15rem}.toast-route-message{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.4rem .55rem;min-width:0}.toast-route-message__action{font-weight:650}.toast-route-message .route-label{max-width:16rem}.assign-platform{display:flex;flex-direction:column;gap:.9rem}.assign-platform__time{display:flex;align-items:center;gap:.5rem;margin:0}.assign-platform__time .service-time{height:1.85rem;box-shadow:0 1px 3px color-mix(in srgb,#000 18%,transparent)}.assign-platform__time .service-time__icon{padding:0 .45rem}.assign-platform__time .service-time__value{padding:0 .62rem 0 .5rem;font-size:.98rem;letter-spacing:.04em}.assign-platform__panel{--dock-size: 5.2rem;display:grid;grid-template-columns:auto 1px minmax(0,1fr);gap:1rem;align-items:start;padding:.8rem .9rem;border:1px solid var(--border);border-radius:.7rem;background:color-mix(in srgb,var(--bg-elevated) 60%,transparent)}.assign-platform__divider{align-self:stretch;width:1px;background:var(--border)}.assign-platform__change{display:grid;grid-template-areas:"origin-label .     pick-label" "origin-dock  arrow pick-dock" "origin-foot  .     pick-foot";grid-template-columns:auto auto auto;grid-template-rows:auto var(--dock-size) auto;column-gap:.7rem;row-gap:.4rem;place-items:center}.assign-platform__dest{--dock-size: 3.4rem;display:flex;flex-direction:column;gap:.55rem}.assign-platform__label{color:var(--text-secondary);font-size:.78rem;font-weight:750}.assign-platform__label--origin,.assign-platform__label--pick{white-space:nowrap}.assign-platform__label--origin{grid-area:origin-label}.assign-platform__label--pick{grid-area:pick-label}.assign-platform__arrow{grid-area:arrow;display:grid;place-items:center;color:var(--text-secondary)}.route-info__platform.assign-platform__dock{position:relative;overflow:hidden;box-sizing:border-box;width:var(--dock-size);height:var(--dock-size);min-width:var(--dock-size);aspect-ratio:1;padding:0;font-size:calc(var(--dock-size) * .48)}.assign-platform__dock--origin{grid-area:origin-dock}.assign-platform__dock--pick{grid-area:pick-dock}.assign-platform__dock.is-empty{border-style:dashed;border-color:var(--border);background-image:none;background-color:color-mix(in srgb,var(--bg-card) 70%,transparent);color:var(--text-muted);text-shadow:none}.assign-platform__pick-hint{grid-area:pick-foot;max-width:calc(var(--dock-size) + 2rem);font-size:.74rem;font-weight:650;line-height:1.15;text-align:center}.assign-platform__opts{display:grid;grid-template-columns:repeat(auto-fill,var(--dock-size));gap:.45rem}.route-info__platform.assign-platform__opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;overflow:hidden;box-sizing:border-box;margin:0;font:inherit;display:inline-flex;align-items:center;justify-content:center;width:var(--dock-size);min-width:var(--dock-size);height:var(--dock-size);aspect-ratio:1;padding:0;font-size:calc(var(--dock-size) * .44);font-weight:800;cursor:pointer}.assign-platform__dock-num{position:relative;line-height:1}.assign-platform__opt.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}.assign-platform__opt.is-disabled{opacity:.45;cursor:not-allowed}.assign-platform-modal .form-section{margin-top:0}@media(max-width:480px){.assign-platform__panel{--dock-size: 4.2rem;grid-template-columns:minmax(0,1fr);gap:.75rem}.assign-platform__divider{width:auto;height:1px}}.occupied-dock{display:flex;flex-direction:column;gap:.7rem}.occupied-dock p{margin:0}.occupied-dock__label{color:var(--text-secondary);font-size:.72rem;font-weight:750;letter-spacing:.03em;text-transform:uppercase}.occupied-dock__services{display:flex;flex-direction:column;gap:.45rem}.occupied-dock__services .service-info-row{padding:.45rem .55rem;background:color-mix(in srgb,var(--bg-card) 78%,transparent)}.occupied-dock__note{padding:.55rem .65rem;border:1px dashed var(--border);border-radius:.5rem;font-size:.78rem}.service-info-row{display:flex;flex-direction:column;justify-content:flex-start;gap:.2rem;min-width:0;min-height:0;padding:.08rem .35rem .22rem .28rem;border-radius:10px;border:1px solid color-mix(in srgb,currentColor 22%,var(--border))}.service-info-row__top{display:flex;align-items:center;gap:.35rem;min-width:0}.service-info-row__top .route-info__platform,.service-info-row__top .service-time{flex:0 0 auto}.service-info-row__company{display:inline-flex;align-items:center;justify-content:flex-end;margin-left:auto;min-width:0;max-width:4.6rem}.service-info-row__company .company-mark__logo{max-height:1.05rem;max-width:4.4rem}.service-info-row__route{display:flex;align-items:center;gap:.22rem;min-width:0;margin:0;padding:.06rem .42rem .06rem .16rem;border-radius:8px;border:1px solid color-mix(in srgb,currentColor 24%,var(--border));background:color-mix(in srgb,var(--bg-card) 68%,transparent)}.service-info-row .route-info__name{letter-spacing:.03em}.service-info-row__ops{display:flex;align-items:center;gap:.28rem;min-width:0}.service-info-row__plate{height:1rem;max-width:7.2rem}.service-info-row__plate .es-plate__eu{width:.52rem;gap:0;padding:.02rem 0 .04rem;font-size:.3rem}.service-info-row__plate .es-plate__stars{font-size:.2rem}.service-info-row__plate .es-plate__text{padding:0 .22rem;font-size:.5rem}.service-info-row__eta{flex:0 0 auto;font-size:.66rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em;opacity:.82;white-space:nowrap}.service-info-row__eta.is-late{opacity:1;font-weight:800;color:var(--col-wrn)}.service-info-row--skeleton{pointer-events:none;background:var(--bg-card);border-color:var(--border);gap:.5rem}.service-info-row .service-time{background:color-mix(in srgb,var(--bg-card) 55%,transparent);border-color:color-mix(in srgb,currentColor 28%,var(--border));color:inherit}.service-info-row .service-time__icon{border-color:color-mix(in srgb,currentColor 28%,var(--border));color:inherit;opacity:.78}.pax-badge{display:inline-flex;align-items:center;align-self:stretch;box-sizing:border-box;flex:0 0 auto;gap:.3rem;padding:.18rem .5rem;border-radius:999px;background:var(--bg-hover);color:var(--text-secondary);font-size:.8rem;font-weight:750;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.pax-badge--entrada{background:color-mix(in srgb,var(--route-in) 20%,var(--bg-panel));color:var(--route-in)}.pax-badge--salida{background:color-mix(in srgb,var(--route-out) 20%,var(--bg-panel));color:var(--route-out)}.pax-badge--declared{background:color-mix(in srgb,var(--pax-declared) 20%,var(--bg-panel));color:var(--pax-declared)}.pax-badge--counted{background:color-mix(in srgb,var(--pax-counted) 22%,var(--bg-panel));color:var(--pax-counted)}.pax-badge--sm{gap:.12rem;padding:.06rem .32rem .06rem .26rem;font-size:.68rem}.pax-badge--pair{gap:.28rem;padding:.16rem .38rem .16rem .42rem;background:var(--bg-hover);color:var(--text-secondary)}.pax-badge--pair .pax-badge__side--declared{color:var(--pax-declared)}.pax-badge--pair.pax-badge--sm{gap:.2rem;padding:.06rem .28rem .06rem .3rem}.pax-badge__side{display:inline-flex;align-items:center;gap:inherit}.pax-badge__side--counted{padding-left:.32rem;border-left:1px solid color-mix(in srgb,currentColor 28%,transparent);color:var(--pax-counted)}.pax-badge__delta{display:inline-flex;align-items:center;justify-content:center;margin-left:.04rem;padding:.02rem .22rem;border-radius:999px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.pax-badge__delta--up{color:var(--ok);background:var(--ok-soft)}.pax-badge__delta--down{color:var(--danger);background:var(--danger-soft)}.route-strip{--route-strip-via-angle: 30deg;position:relative;display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0;padding:2.55rem 1rem 1rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-card);box-sizing:border-box}.route-strip--branded{padding-top:2.9rem}.route-strip__extend{position:absolute;top:.4rem;left:.65rem;z-index:3;display:flex;align-items:center;max-width:48%}.route-strip__extend .ui-toggle{min-height:1.55rem;gap:.4rem;color:var(--text-muted);font-size:.72rem;font-weight:750;letter-spacing:.01em}.route-strip__extend .ui-toggle:has(input:checked){color:var(--text-primary)}.route-strip__extend .ui-toggle__track{width:1.85rem;height:1.05rem}.route-strip__extend .ui-toggle__thumb{top:.09rem;left:.09rem;width:.8rem;height:.8rem}.route-strip__extend .ui-toggle:has(input:checked) .ui-toggle__thumb{transform:translate(.8rem)}.route-strip__brand{position:absolute;top:.55rem;right:.75rem;z-index:2;display:flex;justify-content:flex-end;align-items:center;max-width:42%;pointer-events:none}.route-strip__brand>*{pointer-events:auto}@property --route-strip-p{syntax: "<number>"; inherits: true; initial-value: 0;}.route-strip__diagram{--route-strip-cycle: 7.5s;--route-strip-p: 0;--route-strip-place-h: 2.45rem;--route-strip-label-gap: .55rem;--route-strip-dot-h: .7rem;--route-strip-time-gap: .58rem;--route-strip-time-rows: 0;--route-strip-time-step: 2.05rem;width:100%;min-width:0;min-height:5.2rem}.route-strip--via .route-strip__diagram{--route-strip-place-h: 5.4rem;--route-strip-label-gap: .7rem}.route-strip__diagram--animated{animation:route-strip-progress var(--route-strip-cycle) linear infinite}.route-strip__canvas{position:relative;min-height:calc(var(--route-strip-place-h) + var(--route-strip-dot-h) + var(--route-strip-time-gap) + 1.85rem + var(--route-strip-time-rows) * var(--route-strip-time-step));margin-inline:3.25rem;overflow:visible}.route-strip__stop{position:absolute;top:0;z-index:1;display:grid;grid-template-rows:var(--route-strip-place-h) var(--route-strip-dot-h) auto;justify-items:center;width:6.5rem;max-width:42vw;transform:translate(-50%);pointer-events:none;overflow:visible}.route-strip__stop--angled{width:auto;max-width:none;z-index:2}.route-strip__place{display:flex;align-items:flex-end;justify-content:center;align-self:stretch;height:100%;max-width:100%;padding-bottom:var(--route-strip-label-gap);overflow:hidden;font-size:.92rem;font-weight:800;line-height:1.15;text-align:center;text-overflow:ellipsis;white-space:nowrap}.route-strip__place-text{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-strip__stop--angled .route-strip__place{position:relative;max-width:none;overflow:visible;text-overflow:clip}.route-strip__stop--angled .route-strip__place-text,.route-strip__station-span--angled .route-strip__place-text{position:absolute;left:50%;bottom:var(--route-strip-label-gap);max-width:none;overflow:visible;text-overflow:clip;transform:rotate(calc(-1 * var(--route-strip-via-angle)));transform-origin:0 100%}.route-strip__station-span--angled .route-strip__place-text{left:0}.route-strip__stop--via .route-strip__place{font-size:.78rem;font-weight:700}.route-strip__place--in,.route-strip__dot--in{color:var(--route-in)}.route-strip__place--out,.route-strip__dot--out{color:var(--route-out)}.route-strip__place--station,.route-strip__dot--station{color:var(--text-primary)}.route-strip__place--via,.route-strip__dot--via{color:var(--text-muted)}.route-strip__dot{--route-strip-dot-base: var(--text-muted);--route-strip-dot-t: 0;grid-row:2;z-index:1;width:var(--route-strip-dot-h);height:var(--route-strip-dot-h);border-radius:999px;background:var(--route-strip-dot-base);box-shadow:0 0 0 .25rem color-mix(in srgb,var(--route-strip-dot-base) 18%,transparent)}.route-strip__diagram--animated .route-strip__dot{--route-strip-ahead: calc(var(--route-strip-p) - var(--route-strip-dot-t));--route-strip-on: clamp(0, calc(var(--route-strip-ahead) * 200 + 1), 1);--route-strip-flash: clamp(0, calc(var(--route-strip-on) * (1 - var(--route-strip-ahead) * 9)), 1);background:color-mix(in srgb,var(--accent) calc(var(--route-strip-on) * 100%),var(--route-strip-dot-base));box-shadow:0 0 0 calc(.25rem + var(--route-strip-flash) * .45rem) color-mix(in srgb,var(--accent) calc(18% + var(--route-strip-flash) * 50%),transparent),0 0 calc(var(--route-strip-flash) * 1.15rem) color-mix(in srgb,var(--accent) calc(var(--route-strip-flash) * 85%),transparent);transform:scale(calc(1 + var(--route-strip-flash) * .7))}.route-strip__dot--in{--route-strip-dot-base: var(--route-in)}.route-strip__dot--out{--route-strip-dot-base: var(--route-out)}.route-strip__dot--station{--route-strip-dot-base: var(--text-primary)}.route-strip__dot--via{--route-strip-dot-base: var(--text-muted)}.route-strip__time,.route-strip__time-gap{grid-row:3;margin-top:var(--route-strip-time-gap)}.route-strip__time{position:relative;z-index:4;display:flex;flex-direction:column;align-items:center}.route-strip__time .service-time{position:relative;z-index:2}.route-strip__time-stem{position:relative;z-index:0;width:1px;height:calc(var(--route-strip-time-row, 1) * var(--route-strip-time-step) + var(--route-strip-time-gap));margin-top:calc(-1 * var(--route-strip-time-gap));margin-bottom:-.4rem;background:color-mix(in srgb,var(--text-muted) 55%,var(--border))}.route-strip__time-gap{height:1.22rem}.route-strip__track{position:absolute;top:var(--route-strip-place-h);right:0;left:0;height:var(--route-strip-dot-h);pointer-events:none}.route-strip__rail,.route-strip__rail-lit{position:absolute;top:50%;left:0;right:0;height:3px;border-radius:999px;transform:translateY(-50%)}.route-strip__rail{background:color-mix(in srgb,var(--text-muted) 55%,var(--border));opacity:.55}.route-strip__rail-wait{position:absolute;top:50%;z-index:2;height:5px;transform:translateY(-50%);background-color:var(--bg-card);background-image:repeating-linear-gradient(90deg,color-mix(in srgb,var(--text-primary) 72%,var(--border)) 0,color-mix(in srgb,var(--text-primary) 72%,var(--border)) .42rem,transparent .42rem,transparent .78rem);background-repeat:repeat-x;background-position:center;background-size:auto 3px}.route-strip__station-span{position:absolute;top:0;z-index:3;display:flex;align-items:flex-end;justify-content:center;height:var(--route-strip-place-h);padding-bottom:calc(.12rem + var(--route-strip-label-gap));color:var(--text-primary);font-size:.92rem;font-weight:800;line-height:1.15;text-align:center;white-space:nowrap;transform:translate(-50%);pointer-events:none}.route-strip__station-span--angled{z-index:4;width:0;padding-bottom:var(--route-strip-label-gap);overflow:visible}.route-strip__wait-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.route-strip--times-hover .route-strip__diagram{--route-strip-time-gap: 0;--route-strip-time-rows: 0;min-height:0}.route-strip--times-hover .route-strip__canvas{min-height:calc(var(--route-strip-place-h) + var(--route-strip-dot-h) + .4rem)}.route-strip--times-hover .route-strip__stop,.route-strip--times-hover .route-strip__station-span{pointer-events:auto;cursor:default}.route-strip__rail-lit,.route-strip__pulse{display:none}.route-strip__diagram--animated .route-strip__rail-lit,.route-strip__diagram--animated .route-strip__pulse{display:block}.route-strip__rail-lit{transform-origin:left center;background:var(--accent);box-shadow:0 0 .55rem color-mix(in srgb,var(--accent) 65%,transparent);animation:route-strip-lit var(--route-strip-cycle) linear infinite}.route-strip__pulse{position:absolute;top:50%;left:0;width:.62rem;height:.62rem;border-radius:999px;background:var(--accent);box-shadow:0 0 .55rem var(--accent);transform:translate(-50%,-50%);animation:route-strip-pulse var(--route-strip-cycle) linear infinite}@keyframes route-strip-pulse{0%{left:0%}33.333%{left:100%}to{left:100%}}@keyframes route-strip-lit{0%{transform:translateY(-50%) scaleX(0)}33.333%{transform:translateY(-50%) scaleX(1)}to{transform:translateY(-50%) scaleX(1)}}@keyframes route-strip-progress{0%{--route-strip-p: 0}33.333%{--route-strip-p: 1}42%{--route-strip-p: 1.15}to{--route-strip-p: 1.15}}@media(prefers-reduced-motion:reduce){.route-strip__diagram--animated,.route-strip__diagram--animated .route-strip__pulse,.route-strip__diagram--animated .route-strip__rail-lit{animation:none}.route-strip__diagram--animated .route-strip__pulse{left:50%;opacity:.4}.route-strip__diagram--animated .route-strip__rail-lit{transform:translateY(-50%) scaleX(.45);opacity:.5}}@media(max-width:480px){.route-strip__canvas{margin-inline:2.4rem}}.service-movements{display:flex;flex-direction:column;gap:.9rem}.service-movements__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.4rem,1fr));gap:.65rem}.service-movements__card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;min-height:4.6rem;padding:.7rem .55rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-card);text-align:center}.service-movements__card>span:first-child{color:var(--text-secondary);font-size:.72rem;font-weight:750;line-height:1.2}.service-movements__card strong{font-size:.95rem}.service-movements__pax-pair{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem}.service-movements__plate{height:1.7rem;max-width:9rem}.service-movements__plate .es-plate__eu{width:.82rem;font-size:.44rem}.service-movements__plate .es-plate__text{padding:0 .42rem;font-size:.74rem}.service-movements-modal .flow-timeline{border:1px solid var(--border);border-radius:.85rem;background:var(--bg-card)}.service-movements-modal .pax-badge{justify-content:center}@media(max-width:480px){.service-movements__cards{grid-template-columns:1fr 1fr}}.stay-time{display:inline-flex;align-items:stretch;flex:0 0 auto;height:1.55rem;overflow:hidden;border:1px solid var(--border);border-radius:999px;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;vertical-align:middle}.stay-time__icon{display:inline-flex;align-items:center;justify-content:center;padding:0 .38rem;border-right:1px solid color-mix(in srgb,currentColor 28%,transparent)}.stay-time__value{display:inline-flex;flex:1 1 auto;align-items:center;justify-content:flex-end;min-width:4.5ch;padding:0 .18rem 0 .42rem;font-size:.82rem;font-weight:800;letter-spacing:.02em}.stay-time__unit{display:inline-flex;align-items:center;padding:0 .48rem 0 .12rem;font-size:.62rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;opacity:.82}.stay-time--station{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));color:var(--accent-secondary)}[data-theme=dark] .stay-time--station{color:var(--accent)}.stay-time--platform{border-color:color-mix(in srgb,var(--darsena-bg) 55%,var(--border));background:color-mix(in srgb,var(--darsena-bg) 22%,var(--bg-elevated));color:var(--darsena-bg)}[data-theme=dark] .stay-time--platform{color:color-mix(in srgb,var(--darsena-fg) 70%,var(--darsena-bg))}.stay-time--parking{border-color:color-mix(in srgb,var(--warning) 48%,var(--border));background:color-mix(in srgb,var(--warning) 16%,var(--bg-elevated));color:var(--warning)}.stay-time--sm{height:1.22rem}.stay-time--sm .stay-time__icon{padding:0 .28rem}.stay-time--sm .stay-time__value{padding:0 .12rem 0 .3rem;font-size:.7rem}.stay-time--sm .stay-time__unit{padding:0 .36rem 0 .08rem;font-size:.54rem}@keyframes flow-marker-in{0%{transform:scale(.82)}to{transform:scale(1)}}.flow-timeline__content{display:flex;flex-direction:column;align-items:center;align-self:start;gap:.35rem;padding:.5rem .35rem 0}.flow-timeline__caption{display:flex;flex-direction:column;align-items:center;gap:.2rem;width:100%}.flow-timeline__label{min-height:1.2em;font-weight:650;font-size:.92rem;line-height:1.2}.flow-timeline__kind{font-size:.72rem;color:var(--text-muted)}.flow-timeline__event--entrada .flow-timeline__kind{color:var(--route-in)}.flow-timeline__event--salida .flow-timeline__kind{color:var(--route-out)}.flow-timeline__photo-frame{position:relative;display:inline-block;max-width:100%}.flow-timeline__photo-link{display:block;margin:0;padding:0;border:0;background:transparent;cursor:zoom-in}.flow-timeline__photo-actions{position:absolute;right:.8rem;bottom:.5rem;display:flex;align-items:center;gap:.2rem;pointer-events:none}.flow-timeline__photo-actions--full{right:.65rem;bottom:.65rem}.flow-timeline__photo{width:min(8rem,100%);height:5rem;object-fit:cover;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);box-shadow:0 4px 10px #0000001f}.flow-timeline__photo.is-valid{border-color:var(--ok)}.flow-timeline__photo.is-pending{display:flex;align-items:center;justify-content:center;padding:.35rem;color:var(--text-muted);font-size:.68rem;font-weight:650;text-align:center;line-height:1.25;border-style:dashed;box-shadow:none}.flow-timeline__photo-zoom,.flow-timeline__photo-download{display:flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;margin:0;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,var(--bg-elevated) 82%,transparent);color:var(--text-primary);box-shadow:0 1px 4px color-mix(in srgb,var(--text-primary) 18%,transparent)}.flow-timeline__photo-zoom{pointer-events:none}.flow-timeline__photo-download{pointer-events:auto;cursor:pointer}.flow-timeline__photo-download:hover,.flow-timeline__photo-download:focus-visible{background:color-mix(in srgb,var(--bg-elevated) 94%,transparent);outline:none}.flow-timeline__photo-actions .ui-tooltip-anchor{display:flex}.flow-timeline__photo-full-wrap{position:relative}.flow-timeline__photo-full-wrap .flow-timeline__photo-download{width:2.1rem;height:2.1rem}.flow-timeline__photo-full{display:block;width:100%;max-height:min(70vh,36rem);object-fit:contain;border-radius:.65rem;background:var(--bg-elevated)}@media(prefers-reduced-motion:reduce){.flow-timeline__separator:before,.flow-timeline__separator:after{transition:none}.flow-timeline__event.is-done .flow-timeline__marker{animation:none}}.flow-timeline__event{flex:1 1 0;min-width:7.5rem;display:grid;grid-template-rows:auto var(--timeline-marker) auto;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:start;align-content:start;text-align:center}.flow-timeline__time,.flow-timeline__separator,.flow-timeline__content{width:100%;min-width:0}.flow-timeline__time{display:flex;justify-content:center;min-height:1.55rem;margin-bottom:.8rem}.flow-timeline__stamp{display:inline-flex;align-items:baseline;gap:.18rem;padding:.16rem .48rem .14rem;border-radius:.45rem;background:color-mix(in srgb,var(--text-muted) 10%,var(--bg-elevated));border:1px solid var(--border);color:var(--text-secondary);font-family:ui-monospace,Consolas,monospace;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:.04em;line-height:1.15}.flow-timeline__stamp.is-empty{color:var(--text-muted);font-weight:650;opacity:.55}.flow-timeline__stamp-hm{font-size:.78rem}.flow-timeline__stamp-sec{font-size:.64rem;font-weight:700;letter-spacing:.02em;color:var(--text-muted)}.flow-timeline__event.is-done .flow-timeline__stamp{background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 40%,var(--border));color:var(--ok)}.flow-timeline__event.is-done .flow-timeline__stamp-sec{color:color-mix(in srgb,var(--ok) 78%,var(--text-muted))}.flow-timeline__event.is-current .flow-timeline__stamp{background:color-mix(in srgb,var(--accent) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent) 38%,var(--border));color:var(--accent-secondary)}[data-theme=dark] .flow-timeline__event.is-current .flow-timeline__stamp{color:var(--accent)}.flow-timeline__event.is-current .flow-timeline__stamp-sec{color:color-mix(in srgb,var(--accent) 70%,var(--text-muted))}.flow-timeline__separator{display:grid;grid-template-columns:minmax(0,1fr) var(--timeline-marker) minmax(0,1fr);align-items:center;height:var(--timeline-marker)}.flow-timeline__separator:before,.flow-timeline__separator:after{content:"";height:2px;background-color:var(--border);background-image:linear-gradient(var(--ok),var(--ok));background-repeat:no-repeat;background-position:left center;background-size:0 100%;transition:background-size .45s ease}.flow-timeline__event:first-child .flow-timeline__separator:before,.flow-timeline__event:last-child .flow-timeline__separator:after{visibility:hidden}.flow-timeline__event.is-done .flow-timeline__separator:after,.flow-timeline__event.is-done .flow-timeline__separator:before{background-size:100% 100%}.flow-timeline__marker{position:relative;z-index:1;width:var(--timeline-marker);height:var(--timeline-marker);border-radius:50%;border:2px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;box-shadow:0 0 0 3px var(--bg-panel);transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease}.flow-timeline__event.is-expect .flow-timeline__marker{border-radius:.28rem}.flow-timeline__event.is-done .flow-timeline__marker{background:var(--ok-soft);border-color:var(--ok);color:var(--ok);animation:flow-marker-in .32s ease}.flow-timeline__event.is-current .flow-timeline__marker{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px var(--bg-panel),0 0 0 6px var(--accent-dim)}.flow-timeline{--timeline-marker: 1.75rem;display:flex;align-items:flex-start;width:100%;margin:0;padding:.65rem .35rem .75rem;box-sizing:border-box;overflow-x:auto}.flow-timeline-photo__nav{display:flex;justify-content:space-between;gap:.65rem;margin-top:.75rem}.flow-timeline--static{overflow:hidden}.flow-timeline__marker-glyph{display:flex;align-items:center;justify-content:center;width:100%;height:100%}@media(max-width:480px){.flow-timeline__event{min-width:6.4rem}}.route-history-modal .app-modal__body{min-height:22rem}.route-history-modal__body{display:flex;flex-direction:column;gap:.85rem;min-height:0;height:100%}.route-history-modal__body>.route-history{flex:1 1 auto;min-height:0}.route-history{display:flex;flex-direction:column;gap:.85rem;min-height:0;height:100%}.route-history>.fold-panel{flex:0 0 auto}.route-history__kpi{flex:0 0 auto;margin-bottom:0;gap:.65rem}.route-history .kpi-card{min-width:9rem;padding:.55rem .7rem .5rem}.route-history .kpi-card__value{font-size:1.35rem}.route-history .data-table-wrap{flex:1 1 auto;min-height:14rem}.route-history .route-table{font-size:.82rem}.route-history .route-table th,.route-history .route-table td{padding:.35rem .5rem;vertical-align:middle}.route-history .pill{padding:.15rem .45rem;font-size:.72rem}.route-history__plate{height:1.55rem;max-width:8.25rem}.route-history__plate .es-plate__eu{width:.78rem;font-size:.42rem}.route-history__plate .es-plate__text{padding:0 .4rem;font-size:.72rem}.route-history .pax-badge{justify-content:center}.route-history__late{justify-content:center;min-width:4.4rem;font-variant-numeric:tabular-nums}.route-history-detail-modal .app-modal__panel{width:min(72rem,100vw - 2rem)}@media(max-width:480px){.route-history .filter-actions{justify-content:stretch}}.company-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(12.5rem,14.5rem);gap:.85rem 1.15rem;align-items:start}.company-form .form-grid{margin:0}.company-form__docks{grid-column:1/-1}.company-form__docks .form-section{margin:0}.company-form__logo{display:flex;align-items:flex-start;justify-content:center;min-width:0}.company-form__preview{position:relative;display:flex;align-items:center;justify-content:center;width:11.5rem;height:11.5rem;padding:.7rem;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-card)}.company-form__preview img{max-width:100%;max-height:100%;object-fit:contain}.company-form__preview--empty{padding:0;border-style:dashed}.company-form__logo-actions{position:absolute;top:.4rem;right:.4rem;display:flex;gap:.28rem}.company-form__logo-btn{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--bg-elevated) 88%,var(--bg-card));color:var(--text-secondary);cursor:pointer}.company-form__logo-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.company-form__logo-btn--danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.company-form__logo-btn--danger:hover{background:color-mix(in srgb,var(--danger) 12%,var(--bg-card))}.company-form__logo-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;width:100%;height:100%;padding:.75rem;border:0;background:transparent;color:var(--text-muted);cursor:pointer;font-size:.78rem;font-weight:650;line-height:1.3;text-align:center}.company-form__logo-empty:hover{color:var(--text-secondary);background:color-mix(in srgb,var(--accent) 6%,var(--bg-card))}.company-form__logo-plus{display:inline-flex;align-items:center;justify-content:center;width:2.45rem;height:2.45rem;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-card))}.company-form .form-section--panel{margin:0}.company-edit-modal--routes{overflow:hidden}.app-modal.company-edit-modal:not(.company-edit-modal--routes) .app-modal__panel:has(.form-tabset){height:auto;max-height:min(70vh,40rem)}.app-modal.company-edit-modal:not(.company-edit-modal--routes) .app-modal__body:has(.form-tabset){flex:1 1 auto;min-height:0;overflow:hidden}.app-modal.company-edit-modal--routes .app-modal__panel:has(.form-tabset){height:min(70vh,40rem);max-height:min(70vh,40rem)}@media(max-width:1100px){.company-form{grid-template-columns:1fr}.company-form__logo{justify-self:center;width:100%}}.form-select{position:relative;width:100%;min-width:0}.form-select__trigger{display:flex;align-items:center;gap:.45rem;min-height:2.55rem;padding:.28rem .55rem .28rem .7rem;text-align:left;cursor:pointer}.form-select__trigger.is-open{border-color:var(--accent)}.form-select.is-disabled .form-select__trigger{background:var(--bg-elevated);color:var(--text-muted);cursor:not-allowed}.form-select__value{display:flex;align-items:center;flex:1 1 auto;min-width:0;font-weight:700}.form-select__value.is-empty{color:var(--text-muted);font-weight:650}.form-select__chevron{flex:0 0 auto;color:var(--text-muted)}.form-select.is-open .form-select__chevron{transform:rotate(180deg)}.form-select.has-clear .form-select__trigger{padding-right:3.45rem}.form-select__clear{position:absolute;top:50%;right:2.05rem;display:inline-grid;place-items:center;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-muted);transform:translateY(-50%);cursor:pointer}.form-select__clear:hover{background:var(--bg-hover);color:var(--text-primary)}.form-select__list{position:fixed;z-index:2460;display:flex;flex-direction:column;gap:.4rem;max-height:min(18rem,100dvh - 2rem);margin:0;padding:.5rem;overflow:auto;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-elevated);box-shadow:var(--shadow)}.form-select__option{display:flex;align-items:center;justify-content:flex-start;width:100%;margin:0;padding:.2rem .25rem;border:0;border-radius:.55rem;background:transparent;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.form-select__option.is-active,.form-select__option:hover{background:var(--bg-hover)}.form-select__option.is-selected{background:color-mix(in srgb,var(--accent) 12%,transparent)}.form-select__option.is-disabled{opacity:.5;cursor:not-allowed}.form-select__sep{display:flex;align-items:center;gap:.55rem;margin:.15rem .2rem;color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;pointer-events:none}.form-select__sep:before,.form-select__sep:after{content:"";flex:1 1 auto;height:1px;background:var(--border)}.form-select__sep:empty:after{display:none}.form-select__item{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;padding:.28rem .7rem;border-radius:999px;font-size:.8rem;font-weight:800;line-height:1.2}.form-select__item--company{gap:.55rem;padding:.22rem .45rem .22rem .2rem;border-radius:.55rem;font-size:.85rem;font-weight:700}.form-select__item--line{gap:.45rem;min-width:0;padding:.22rem .45rem .22rem .2rem;border-radius:.55rem;font-size:.85rem;font-weight:700}.form-select__item--line .line-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-navigation{position:relative;display:inline-flex;align-items:center;gap:.1rem;min-width:0;width:fit-content;padding:.25rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-panel)}.app-navigation__chip{position:absolute;top:.25rem;bottom:.25rem;left:0;width:2.45rem;border-radius:999px;background:var(--accent-dim);pointer-events:none;z-index:0;transition:transform .28s cubic-bezier(.22,1,.36,1),width .28s cubic-bezier(.22,1,.36,1)}.app-navigation__tab{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:2.45rem;height:2.45rem;border:none;border-radius:999px;padding:0 .85rem;background:transparent;color:var(--text-secondary);cursor:pointer}.app-navigation__tab.is-active{color:var(--accent)}.app-navigation__icon{display:inline-flex;flex:0 0 1rem;align-items:center;justify-content:center;width:1rem;height:1rem}.app-navigation__icon .menu-icon,.app-navigation__icon .menu-icon svg{width:1rem;height:1rem}.app-navigation__tab.is-active .menu-icon--img{opacity:1}.app-navigation__label{font-size:.8rem;font-weight:750;white-space:nowrap}.app-navigation__label-text{white-space:nowrap}.app-navigation__tab-error{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1rem;height:1rem;margin-inline-start:.25rem;border-radius:999px;background:var(--danger);color:var(--danger-fg);font-size:.7rem;font-weight:800;line-height:1}.app-navigation__tab--icon{gap:0;padding-inline:.72rem;transition:color .2s ease,padding .28s cubic-bezier(.22,1,.36,1)}.app-navigation__tab--icon .app-navigation__label{display:grid;grid-template-columns:0fr;margin-inline-start:0;opacity:0;overflow:hidden;transition:grid-template-columns .28s cubic-bezier(.22,1,.36,1),margin .28s cubic-bezier(.22,1,.36,1),opacity .18s ease}.app-navigation__tab--icon .app-navigation__label-text{min-width:0;overflow:hidden}.app-navigation__tab--icon.is-active,.app-navigation__tab--icon:focus-visible{padding-inline:.9rem}.app-navigation__tab--icon.is-active .app-navigation__label,.app-navigation__tab--icon:focus-visible .app-navigation__label{grid-template-columns:1fr;margin-inline-start:.4rem;opacity:1}@media(hover:hover)and (pointer:fine){.workspace-tabs__item:hover .app-navigation__tab--icon{padding-inline:.9rem}.workspace-tabs__item:hover .app-navigation__tab--icon .app-navigation__label{grid-template-columns:1fr;margin-inline-start:.4rem;opacity:1}}@media(prefers-reduced-motion:reduce){.app-navigation__chip,.app-navigation__tab--icon,.app-navigation__tab--icon .app-navigation__label{transition:none}}.workspace-tabs{max-width:100%}.workspace-tabs:not(.app-navigation--underline){overflow-x:auto}.workspace-tabs__item{display:inline-flex;align-items:center}.app-navigation__tab.is-disabled,.app-navigation__tab:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.55}.workspace-tabs__close{border:none;background:transparent;color:var(--text-muted);cursor:pointer}.app-navigation--underline{display:inline-flex;flex:0 0 auto;align-self:flex-start;width:fit-content;max-width:100%;overflow:hidden;margin:.4rem .4rem 0;padding:.12rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-form-header)}.app-navigation--underline .app-navigation__chip{top:auto;bottom:0;height:2px;border-radius:0;background:var(--accent)}.app-navigation--underline .app-navigation__tab{height:2.35rem;border-radius:calc(var(--radius) - .12rem)}.app-navigation--underline .app-navigation__tab--icon,.app-navigation--underline .app-navigation__tab--labeled{gap:.4rem;padding-inline:.9rem}.app-navigation--underline .app-navigation__tab--icon .app-navigation__label,.app-navigation--underline .app-navigation__tab--labeled .app-navigation__label{display:block;grid-template-columns:none;margin-inline-start:0;opacity:1;overflow:visible}.form-tabset{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel)}.form-tabset__body{flex:1 1 auto;min-height:0;padding:.95rem 1rem 1.05rem;overflow:auto}.masked-input{--masked-pad-y: .55rem;--masked-pad-x: .75rem;position:relative;border-radius:.7rem;background:var(--bg-card);font-family:ui-monospace,Cascadia Mono,Consolas,Segoe UI Mono,monospace;font-size:1rem;font-weight:650;letter-spacing:.08em;line-height:1.35}.masked-input__face,.masked-input__field.field-control{font:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;padding:var(--masked-pad-y) var(--masked-pad-x)}.masked-input__face{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;color:var(--text-primary);pointer-events:none;white-space:pre}.masked-input__face:after{content:attr(data-rest);color:var(--text-muted)}.masked-input__field.field-control{position:relative;z-index:1;background:transparent;color:transparent;caret-color:var(--text-primary);-webkit-text-fill-color:transparent}.masked-input__field::selection{color:transparent;background:color-mix(in srgb,var(--accent) 32%,transparent)}.filter-panel-actions{display:flex;align-items:center;gap:.35rem}.filter-panel-actions .btn{min-height:2rem;padding:.25rem .65rem;gap:.35rem}.filter-panel-actions .btn svg{flex:0 0 auto}.filter-panel-actions .btn.is-busy svg{animation:loading-spin .85s linear infinite}.filter-panel-title__hint{display:inline-flex;flex:0 0 auto;align-items:center;gap:.35rem;color:var(--col-wrn);font-size:.82rem;font-weight:800;letter-spacing:.01em}.filter-panel-title__count{display:inline-grid;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:999px;background:var(--col-wrn);color:var(--bg-card);font-size:.72rem;font-weight:800;line-height:1}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/quicksand-latin-700-normal-Dpk7G9Y6.woff2) format("woff2"),url(/assets/quicksand-latin-700-normal-HjJN-aaT.woff) format("woff")}.line-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Quicksand,Segoe UI,Trebuchet MS,sans-serif;font-size:1.2em;font-weight:700;letter-spacing:.015em;line-height:1.25;color:var(--text-primary)}.form-select__item--line .line-label,.form-select__value .line-label,.app-modal__title .line-label,.report-sheet__title-extra .line-label{display:inline-block;max-width:100%}.route-edit-modal{gap:.85rem}.route-edit-modal.is-readonly .form-tabset,.route-edit-modal.is-readonly .route-edit-options-panel{pointer-events:none}.route-edit-modal .route-strip,.route-edit-modal .form-section--panel,.route-edit-itinerary{flex:0 0 auto}.route-edit-modal .form-section--panel{background:var(--bg-card)}.route-edit-options-panel{flex:0 0 auto;margin-top:auto}.route-edit-options-panel.fold-panel{box-shadow:none;background:var(--bg-card)}.route-edit-options-panel.fold-panel.is-open{overflow:hidden;z-index:3}.route-edit-options-panel .fold-panel__head{padding-block:.55rem}.route-edit-itinerary{display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0}.route-edit-itinerary .route-strip{width:100%;min-width:0}.form-select__item--range{display:block;width:100%}.form-select--range .form-select__trigger{min-height:4.1rem;align-items:stretch}.form-select--range .form-select__value{align-items:stretch}.route-edit-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.35rem 1rem}.route-edit-options__festivo{margin:.85rem 0 0;padding:.7rem .85rem .75rem;border:1px solid var(--border);border-radius:.9rem;background:var(--bg-form-header)}.form-tabset__body--board{display:flex;flex-direction:column;overflow:hidden;padding:.7rem .8rem .85rem}.form-tabset__body--stops{display:flex;flex-direction:column;overflow:hidden}.form-tabset__body--stops>.route-stops-editor{flex:1 1 auto;min-height:0}.route-edit-history{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%}.route-edit-history .route-history{flex:1 1 auto;min-height:0}.range-window{display:flex;flex-direction:column;gap:.18rem;width:100%;min-width:14rem}.range-window__axis{display:grid;grid-template-columns:1fr .16rem 1fr;align-items:stretch;gap:.12rem}.range-window__axis--labels{align-items:start;min-height:1.05rem}.range-window__side{position:relative;min-height:.72rem}.range-window__rail{display:flex;height:.48rem;margin-top:.12rem;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--border) 70%,var(--bg-card))}.range-window__side--before .range-window__rail{justify-content:flex-end}.range-window__side--after .range-window__rail{justify-content:flex-start}.range-window__fill{width:var(--range-fill, 0%);height:100%;border-radius:inherit}.range-window__side--before .range-window__fill{background:var(--route-in)}.range-window__side--after .range-window__fill{background:var(--route-out)}.range-window__ticks{position:absolute;top:.08rem;right:0;bottom:.12rem;left:0;pointer-events:none}.range-window__tick{position:absolute;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--text-primary) 28%,transparent);transform:translate(-50%)}.range-window__tick.is-end{background:color-mix(in srgb,var(--text-primary) 55%,transparent)}.range-window__zero{width:.16rem;margin-top:.02rem;border-radius:999px;background:var(--text-primary)}.range-window__now{justify-self:center;color:var(--text-muted);font-size:.62rem;font-weight:800;font-variant-numeric:tabular-nums}.range-window__marks{position:relative;min-height:1.05rem}.range-window__mark{position:absolute;top:0;color:var(--text-secondary);font-size:.62rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1;white-space:nowrap;transform:translate(-50%)}.range-window__mark.is-start{transform:translate(0)}.range-window__mark.is-end{transform:translate(-100%)}.range-window__mark--extreme{color:var(--text-muted);font-weight:650}.range-window__mark--value{color:var(--text-primary)}.route-kind-chip{display:inline-flex;align-items:center;gap:.32rem;padding:.28rem .7rem;border:1px solid var(--chip-select-border);border-radius:999px;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.8rem;font-weight:700}.route-kind-chip--salida{border-color:color-mix(in srgb,var(--route-out) 55%,var(--border));background:var(--route-out-soft);color:var(--route-out)}.route-kind-chip--entrada{border-color:color-mix(in srgb,var(--route-in) 45%,var(--border));background:var(--route-in-soft);color:var(--route-in)}.route-kind-chip--pareado{border-color:color-mix(in srgb,var(--route-pair) 48%,var(--border));background:var(--route-pair-soft);color:var(--route-pair)}.route-kind-chip__icon{display:inline-flex;align-items:center;line-height:0}.route-kind-chip--sm{padding:.2rem .55rem;font-size:.75rem}.route-kind-chip--icon{justify-content:center;width:1.85rem;height:1.85rem;padding:0}.route-kind-chip--icon.route-kind-chip--sm{width:1.5rem;height:1.5rem}.route-calendar-panel .form-section--panel{padding:.7rem .85rem .8rem}.route-calendar-row{display:flex;flex-wrap:nowrap;align-items:center;gap:.4rem}.route-calendar-row>.form-select{flex:1 1 10rem;min-width:0}.route-calendar-row .form-select__value{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:500}.route-calendar-row .form-select__value.is-empty{font-weight:500}.route-calendar-row .form-select__trigger{height:2.55rem;min-height:2.55rem;max-height:2.55rem;font-weight:500}.route-calendar-row .chip-select--operation,.route-calendar-row .btn--icon{flex:0 0 auto}.calendar-eval-wrap{width:100%;margin:.75rem 0 0;padding:.55rem .65rem .6rem;border:1px solid var(--border);border-radius:.8rem;background:color-mix(in srgb,var(--bg-elevated) 72%,var(--bg-card))}.calendar-eval{width:100%;margin:0;table-layout:fixed;border-collapse:separate;border-spacing:.18rem .12rem}.calendar-eval__caption{caption-side:top;margin:0 0 .45rem;padding:0 .15rem .4rem;border-bottom:1px solid color-mix(in srgb,var(--border) 80%,transparent);color:var(--text-secondary);font-size:.72rem;font-weight:750;letter-spacing:.04em;text-align:left;text-transform:uppercase}.calendar-eval th,.calendar-eval td{padding:0;text-align:center;vertical-align:middle}.calendar-eval thead th{color:var(--text-muted);padding-bottom:.15rem}.calendar-eval tbody td{padding-top:.4rem}.calendar-eval__head{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:1.35rem;padding:.12rem .1rem;overflow:hidden;border-radius:.45rem;background:color-mix(in srgb,var(--bg-hover) 70%,transparent);color:var(--text-muted);font-size:.66rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;text-overflow:ellipsis}.calendar-eval__col--local .calendar-eval__head{background:var(--festivo-local-soft);color:var(--festivo-local)}.calendar-eval__col--regional .calendar-eval__head{background:var(--festivo-regional-soft);color:var(--festivo-regional)}.calendar-eval__col--nacional .calendar-eval__head{background:var(--festivo-nacional-soft);color:var(--festivo-nacional)}.calendar-eval__col--school .calendar-eval__head{background:color-mix(in srgb,var(--accent) 12%,var(--bg-card));color:var(--accent)}.calendar-eval__state{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-card)}.calendar-eval__state--ok{border-color:color-mix(in srgb,var(--ok) 38%,var(--border));background:var(--ok-soft);color:var(--ok)}.calendar-eval__state--fail{border-color:color-mix(in srgb,var(--danger) 38%,var(--border));background:var(--danger-soft);color:var(--danger)}.calendar-eval__state--muted{border-color:var(--border);background:color-mix(in srgb,var(--bg-hover) 80%,var(--bg-card));color:var(--text-muted)}.calendar-search{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%;gap:.85rem}.calendar-search>.fold-panel{flex:0 0 auto}.calendar-search__board{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.calendar-search__count{flex:0 0 auto;margin:0 0 .35rem;color:var(--text-secondary);font-size:.78rem;font-weight:700;text-align:right}.calendar-search__board .data-table-wrap{flex:1 1 auto;min-height:12rem}.calendar-search .filter-actions{width:100%}.calendar-search__filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem 1rem;align-items:end}.calendar-search__weekdays{grid-column:1/-1}.calendar-search__weekdays .chip-select{flex-wrap:nowrap;align-items:stretch}.calendar-search__weekdays .chip-select__chip{flex:1 1 0;justify-content:center;min-height:2.55rem;box-sizing:border-box}.calendar-search__full{grid-column:1/-1}.calendar-search__filters .field>input{height:2.55rem;min-height:2.55rem;box-sizing:border-box}.calendar-search__filters .date-picker__control{min-height:2.55rem;box-sizing:border-box}.calendar-search__days{display:inline-flex;flex-wrap:nowrap;gap:.18rem}.calendar-search__days .pill{padding:.12rem .38rem;font-size:.72rem}.calendar-search .route-table td.calendar-search__days-col{overflow:visible}.calendar-search .route-table td.calendar-search__desc{position:relative;padding-left:0;overflow:hidden}.calendar-search__name{display:flex;align-items:center;min-width:0;margin-block:-.45rem;min-height:2.15rem}.calendar-search__mark{flex:0 0 .28rem;width:.28rem;align-self:stretch}.calendar-search__label{flex:1 1 auto;min-width:0;padding:.45rem .55rem .45rem .5rem;overflow:hidden;text-overflow:ellipsis}.calendar-search .route-table tbody tr:not(.data-table__status-row):hover td:first-child,.calendar-search .route-table tbody tr:not(.data-table__status-row).is-active td:first-child{box-shadow:none}.calendar-search .route-table tbody tr.calendar-search__row--expired td{background:var(--danger-soft);color:var(--danger);cursor:not-allowed}.calendar-search .route-table tbody tr.calendar-search__row--expired:nth-child(2n) td,.calendar-search .route-table tbody tr.calendar-search__row--expired:hover td,.calendar-search .route-table tbody tr.calendar-search__row--expired.is-active td{background:var(--danger-soft)}.form-autocomplete{width:100%;min-width:0}.form-autocomplete__input.is-open{border-color:var(--accent)}.form-autocomplete.is-disabled .form-autocomplete__input{background:var(--bg-elevated);color:var(--text-muted)}.form-autocomplete__list{position:fixed;z-index:2460;margin:0;padding:.35rem;list-style:none;overflow:auto;max-height:min(18rem,100dvh - 2rem);border:1px solid var(--border);border-radius:.85rem;background:var(--bg-elevated);box-shadow:var(--shadow)}.form-autocomplete__option{display:flex;align-items:center;width:100%;margin:0;padding:.42rem .55rem;border:0;border-radius:.55rem;background:transparent;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.form-autocomplete__option.is-active,.form-autocomplete__option:hover{background:var(--bg-hover)}.form-autocomplete__empty{padding:.55rem .65rem;color:var(--text-muted);font-size:.82rem}.form-autocomplete__route{display:flex;align-items:center;gap:.45rem;min-width:0}.form-autocomplete__route-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.route-mpa{display:flex;flex-direction:column;gap:.85rem}.route-mpa__days{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.4rem,1fr));gap:.45rem}.route-stops-editor{display:flex;flex-direction:column;gap:1rem;min-width:0;min-height:0}.route-stops-block{display:flex;flex:1 1 auto;flex-direction:column;gap:.7rem;min-width:0;min-height:0;overflow:hidden}.route-stops-block__scroll{flex:1 1 auto;min-height:0;overflow:auto}.route-stops-block__actions{display:flex;flex-wrap:wrap;gap:.45rem}.route-stops-block__list{display:flex;flex-direction:column;gap:.2rem;margin:.15rem 0 0 .45rem;padding:.15rem 0 .15rem .95rem;list-style:none;border-left:2px solid var(--border)}.route-stops-block__item{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.45rem .7rem;padding:.45rem .55rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-card)}.route-stops-block__item:before{content:"";position:absolute;left:calc(-.95rem - 1px);top:50%;width:.58rem;height:.58rem;border:2px solid var(--accent);border-radius:50%;background:var(--bg-card);transform:translate(-50%,-50%)}.route-stops-block__item.is-editing{border-color:var(--accent)}.route-stops-block__item-actions{display:flex;align-items:center;gap:.45rem}.route-stops-block__place{min-width:0;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-stops-block__body{display:flex;min-width:0;flex-direction:column;gap:.1rem}.route-stops-block__comment{min-width:0;color:var(--text-secondary);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-stops-picker__hint{margin:0 0 .75rem;color:var(--text-secondary);font-size:.86rem}.route-stops-picker{display:flex;flex-direction:column;gap:.65rem;max-height:min(68vh,38rem);margin:0;padding:0;overflow:auto;list-style:none}.route-stops-picker__item{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;width:100%;margin:0;padding:.75rem .85rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-card);color:inherit;font:inherit;text-align:left;cursor:pointer}.route-stops-picker__item:hover,.route-stops-picker__item:focus-visible{border-color:var(--accent)}.route-stops-picker__head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .55rem}.route-stops-picker__times{display:inline-flex;align-items:center;gap:.35rem}.route-stops-picker__arrow{color:var(--text-secondary);font-weight:700}.route-stops-picker__route{color:var(--text-secondary);font-size:.86rem;font-weight:650}.route-stops-picker__strip{display:block;min-width:0}.route-stops-picker__strip .route-strip{padding:.55rem .65rem .7rem}.route-stops-picker__via{display:flex;flex-wrap:wrap;gap:.4rem}.route-stops-picker__stop{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;padding:.2rem .45rem .2rem .2rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-panel)}.route-stops-picker__stop-name{min-width:0;overflow:hidden;font-size:.78rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.route-comment-field{display:flex;align-items:center;gap:.35rem;min-width:0}.route-comment-field .form-autocomplete{flex:1 1 auto}.route-comment-field .btn{flex:0 0 auto}.app-modal__panel:has(.route-pair-select-modal){display:flex;flex-direction:column;height:min(88vh,46rem);min-height:min(88vh,46rem);max-height:min(88vh,46rem)}.app-modal__panel:has(.route-pair-select-modal) .app-modal__body{flex:1 1 auto;min-height:0}.app-modal__body.route-pair-select-modal{display:flex;flex-direction:column;min-height:0;overflow:hidden}.route-pair-select-modal{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;gap:.75rem}.route-pair-select-modal__itinerary{display:flex;flex:0 0 13.5rem;height:13.5rem;min-height:13.5rem;max-height:13.5rem;flex-direction:column;align-items:stretch;width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain}.route-pair-select-modal__itinerary .route-strip{display:flex;flex-direction:column;flex:1 1 auto;width:100%;min-width:0;height:100%;min-height:100%;max-height:100%;overflow:visible;padding:2.15rem 1rem .55rem;box-sizing:border-box}.route-pair-select-modal__itinerary .route-strip--branded{padding-top:2.15rem}.route-pair-select-modal__itinerary .route-strip__extend{display:none}.route-pair-select-modal__itinerary .route-strip__diagram,.route-pair-select-modal__itinerary .route-strip.route-strip--via .route-strip__diagram{--route-strip-place-h: 2.55rem;--route-strip-label-gap: .45rem;--route-strip-time-gap: .5rem;--route-strip-time-step: 2.05rem;flex:1 1 auto;min-height:8.25rem;height:auto;max-height:none;margin:0}.route-pair-select-modal__itinerary .route-strip__canvas{min-height:calc(var(--route-strip-place-h) + var(--route-strip-dot-h) + var(--route-strip-time-gap) + 1.85rem + var(--route-strip-time-rows) * var(--route-strip-time-step));height:auto;max-height:none;margin-inline:4.25rem;overflow:visible}.route-pair-select-modal__itinerary .route-strip__place-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;white-space:normal;line-height:1.15;max-height:calc(var(--route-strip-place-h) - .35rem)}.route-pair-select-modal__itinerary .route-strip__stop--angled .route-strip__place,.route-pair-select-modal__itinerary .route-strip__station-span--angled .route-strip__place-text{transform:none;position:static;width:auto;max-width:5.5rem}.route-pair-select-modal__itinerary .route-strip__station-span{z-index:4;max-width:min(42vw,9rem);white-space:normal}.route-pair-select-modal__itinerary .route-strip__station-span .route-strip__place-text{display:block;overflow:visible;white-space:normal;line-height:1.15;max-height:none;-webkit-line-clamp:unset;color:var(--text-primary);font-weight:800}.route-pair-select-modal__criteria.form-section--panel{flex:0 0 auto;margin:0}.route-pair-select-modal__criteria .form-section__head{flex-wrap:wrap;align-items:center}.route-pair-select-modal__filter{display:flex;align-items:center;gap:.5rem;margin-left:auto}.route-pair-select-modal__search-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.85fr) minmax(0,.85fr);gap:.65rem .75rem}.route-pair-select-modal__field{margin-bottom:0;min-width:0}.route-pair-select-modal__field input,.route-pair-select-modal__field .time-picker__control{width:100%;min-width:0}@media(max-width:480px){.route-pair-select-modal__search-grid{grid-template-columns:minmax(0,1fr)}.app-modal__panel:has(.route-pair-select-modal){height:min(92vh,46rem);min-height:min(92vh,46rem);max-height:min(92vh,46rem)}.route-pair-select-modal__itinerary{flex-basis:12.5rem;height:12.5rem;min-height:12.5rem;max-height:12.5rem}}.route-pair-select-modal__filter-label{color:var(--text-muted);font-size:.88rem}.route-pair-select-modal__filter-kind{display:inline-flex;align-items:center;gap:.35rem;font-weight:600}.route-pair-select-modal__table{flex:0 0 14rem;height:14rem;min-height:14rem;max-height:14rem;overflow:hidden}.route-pair-select-modal__table .data-table-wrap{height:100%;min-height:0;max-height:none}.route-pair-select-modal__table .data-table__scroll{height:100%;min-height:0;max-height:none;overflow:auto}.route-pair-select-modal .route-table tbody tr.log-row--clickable:hover:not(.is-active) td{background:color-mix(in srgb,var(--accent) 9%,var(--bg-primary))}.route-pair-select-modal .route-table tbody tr.log-row--clickable.is-active td{background:color-mix(in srgb,var(--accent) 26%,var(--bg-primary));box-shadow:inset 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.route-pair-select-modal .route-table tbody tr.log-row--clickable.is-active:nth-child(2n) td{background:color-mix(in srgb,var(--accent) 26%,var(--bg-primary))}.route-pair-select-modal .route-table tbody tr.log-row--clickable.is-active td:first-child{box-shadow:inset .32rem 0 0 var(--accent),inset 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.route-pair-select-modal .data-table{min-height:0}.route-stops-hover{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}.route-stops-hover__mark{position:relative;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:.2rem .42rem .08rem .08rem;border:0;background:transparent;color:inherit;cursor:help}.route-stops-hover__badge{position:absolute;top:-.12rem;right:-.08rem;display:inline-flex;align-items:center;justify-content:center;min-width:1rem;height:1rem;padding:0 .22rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:999px;background:var(--accent-dim);color:var(--accent-secondary);font-size:.58rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.route-stops-hover__panel{--route-stops-glass: color-mix(in srgb, var(--bg-elevated) 88%, transparent);--route-stops-curtain-ms: .42s;--route-stops-roll-ms: .34s;position:fixed;z-index:2460;width:min(64rem,100%);max-width:calc(100vw - 1.25rem);box-sizing:border-box;pointer-events:auto;transform-origin:top center;will-change:transform,clip-path,opacity}.route-stops-hover__panel.is-above{transform-origin:bottom center}.route-stops-hover__panel.is-entering.is-below{animation:route-stops-unroll-below var(--route-stops-curtain-ms) cubic-bezier(.22,1,.36,1) both}.route-stops-hover__panel.is-entering.is-above{animation:route-stops-unroll-above var(--route-stops-curtain-ms) cubic-bezier(.22,1,.36,1) both}.route-stops-hover__panel.is-leaving.is-below{animation:route-stops-roll-below var(--route-stops-roll-ms) cubic-bezier(.4,0,.2,1) both}.route-stops-hover__panel.is-leaving.is-above{animation:route-stops-roll-above var(--route-stops-roll-ms) cubic-bezier(.4,0,.2,1) both}.route-stops-hover__panel .route-strip,.route-stops-hover__loading{background:var(--route-stops-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.route-stops-hover__panel .route-strip{box-shadow:var(--shadow)}.route-stops-hover__panel .route-strip__rail-wait{background-color:var(--route-stops-glass)}.route-stops-hover__loading{display:flex;align-items:center;justify-content:center;min-height:6.4rem;padding:1rem;border:1px solid var(--border);border-radius:.85rem;box-shadow:var(--shadow)}@keyframes route-stops-unroll-below{0%{clip-path:inset(0 0 100% 0 round .85rem);transform:translateY(-.4rem) scaleY(.18);opacity:0}58%{opacity:1}78%{transform:translateY(.08rem) scaleY(1.03)}to{clip-path:inset(0 round .85rem);transform:translateY(0) scaleY(1);opacity:1}}@keyframes route-stops-unroll-above{0%{clip-path:inset(100% 0 0 0 round .85rem);transform:translateY(.4rem) scaleY(.18);opacity:0}58%{opacity:1}78%{transform:translateY(-.08rem) scaleY(1.03)}to{clip-path:inset(0 round .85rem);transform:translateY(0) scaleY(1);opacity:1}}@keyframes route-stops-roll-below{0%{clip-path:inset(0 round .85rem);transform:translateY(0) scaleY(1);opacity:1}to{clip-path:inset(0 0 100% 0 round .85rem);transform:translateY(-.28rem) scaleY(.16);opacity:0}}@keyframes route-stops-roll-above{0%{clip-path:inset(0 round .85rem);transform:translateY(0) scaleY(1);opacity:1}to{clip-path:inset(100% 0 0 0 round .85rem);transform:translateY(.28rem) scaleY(.16);opacity:0}}@media(prefers-reduced-motion:reduce){.route-stops-hover__panel.is-entering.is-below,.route-stops-hover__panel.is-entering.is-above,.route-stops-hover__panel.is-leaving.is-below,.route-stops-hover__panel.is-leaving.is-above{animation:none}}@media(max-width:480px){.route-stops-hover__panel{width:100%}}.rutas-al-vuelo__itinerary{display:flex;flex:0 0 auto;flex-direction:column;align-items:stretch;width:100%;min-width:0;margin-bottom:.85rem}.rutas-al-vuelo__itinerary .route-strip{width:100%;min-width:0}.rutas-al-vuelo__panel.form-section--panel{margin:0}.rutas-al-vuelo__options{display:flex;flex-wrap:wrap;gap:1rem 1.25rem;align-items:center}.rutas-al-vuelo__platforms-panel.form-section{width:100%;min-width:0;margin:0;padding:.65rem .75rem}.rutas-al-vuelo__platforms{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;width:100%;min-width:0}.rutas-al-vuelo__platforms-empty{margin:0;font-size:.82rem}.rutas-al-vuelo__platform{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;overflow:hidden;box-sizing:border-box;margin:0;padding:0;font:inherit;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .16s ease,filter .16s ease,transform .16s ease,box-shadow .16s ease,border-color .16s ease}.rutas-al-vuelo__platform-num{position:relative;line-height:1}.rutas-al-vuelo__platforms--has-selection .rutas-al-vuelo__platform:not(.is-selected):not(:disabled){opacity:.38;filter:saturate(.5) brightness(.92)}.rutas-al-vuelo__platform.is-selected{z-index:1;opacity:1;filter:none;transform:scale(1.08);border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 50%,transparent),0 4px 14px color-mix(in srgb,var(--accent) 32%,transparent)}.rutas-al-vuelo__platform:not(.is-disabled):hover{opacity:1;filter:none}.rutas-al-vuelo__platform.is-disabled{cursor:not-allowed;opacity:.45}.rutas-al-vuelo__platform:disabled{pointer-events:none}@media(prefers-reduced-motion:reduce){.rutas-al-vuelo__platform{transition:none}.rutas-al-vuelo__platform.is-selected{transform:none}}.rutas-page{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden;overscroll-behavior:contain;gap:1.25rem}.rutas-page>.fold-panel,.rutas-page__board>.fold-panel,.rutas-page--embedded>.fold-panel,.rutas-page__kpis,.rutas-page__toolbar{flex:0 0 auto}.rutas-page .kpi-board{margin-bottom:0}.rutas-page__board,.rutas-page--embedded{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;gap:1.25rem}.rutas-page--embedded{height:100%}.rutas-page__search{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem 1rem;flex:0 0 auto}.rutas-page__search>.field:first-child{flex:1 1 14rem;max-width:22rem}.rutas-page__search>.field:last-child{flex:0 1 auto;min-width:0}.rutas-page__toolbar{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:.55rem}.rutas-page__days{display:inline-flex;gap:.18rem}.rutas-page__day{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;border-radius:.28rem;background:color-mix(in srgb,var(--bg-hover) 80%,var(--bg-card));color:var(--text-muted);font-size:.68rem;font-weight:800}.rutas-page__day.is-on{background:color-mix(in srgb,var(--accent) 18%,var(--bg-card));color:var(--accent)}.rutas-page .filter-grid{--filter-slots: 12;--filter-span: 3;grid-template-columns:repeat(var(--filter-slots),minmax(0,1fr))}.rutas-page .filter-grid>.field{grid-column:span var(--filter-span)}.rutas-page .chip-select--route-kind{flex-wrap:nowrap}.rutas-page .filter-grid>.field--dias{grid-column:span 6}.rutas-page .chip-select--weekdays{flex-wrap:nowrap}.rutas-page .chip-select--weekdays .chip-select__chip{min-width:2.1rem;justify-content:center;padding-inline:.5rem}.rutas-page .chip-select--weekdays .chip-select__chip[data-value="5"].is-active,.rutas-page .chip-select--weekdays .chip-select__chip[data-value="6"].is-active{border-color:color-mix(in srgb,var(--text-secondary) 40%,var(--border));background:var(--bg-hover);color:var(--text-primary)}.rutas-page .filter-grid>.field--wide{grid-column:1/-1}.rutas-page .route-table th.servicios-dia__col-platform,.rutas-page .route-table td.servicios-dia__col-platform{text-align:center}.rutas-page .route-table td.servicios-dia__col-route .rutas-page__route,.rutas-page .route-table td.servicios-dia__col-route .route-label{max-width:100%}.rutas-page__route{display:inline-flex;align-items:center;gap:.35rem;min-width:0;max-width:100%}.rutas-page__route .route-label{min-width:0}.rutas-page__stops-mark,.rutas-page__pair-mark{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}.rutas-page__stops-mark{color:var(--text-muted)}.rutas-page__stops-mark:hover,.rutas-page__stops-mark:focus-visible{color:var(--accent)}.rutas-page__stops-mark:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:.28rem}.rutas-page__pair-mark{color:var(--route-pair);padding:0;border:0;background:transparent;cursor:default;line-height:0}button.rutas-page__pair-mark{cursor:pointer}button.rutas-page__pair-mark:hover,button.rutas-page__pair-mark:focus-visible{color:color-mix(in srgb,var(--route-pair) 72%,var(--accent))}button.rutas-page__pair-mark:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:.28rem}.rutas-page .route-table th.rutas-page__col-line,.rutas-page .route-table td.rutas-page__col-line{white-space:normal}.rutas-page .table-row-actions{gap:.45rem}@media(max-width:1100px){.rutas-page .filter-grid{--filter-span: 6}.rutas-page .filter-grid>.field--dias{grid-column:span 12}}@media(max-width:480px){.rutas-page .filter-grid{--filter-span: 12}.rutas-page .chip-select--weekdays{flex-wrap:wrap}}.rutas-page .route-table tbody tr.servicios-dia__row--entrada{--servicios-dia-kind: var(--route-in)}.rutas-page .route-table tbody tr.servicios-dia__row--salida{--servicios-dia-kind: var(--route-out)}.rutas-page .route-table tbody tr.servicios-dia__row--pareado{--servicios-dia-kind: var(--route-pair)}.rutas-page .route-table tbody tr.servicios-dia__row--entrada:not(.data-table__status-row) td:first-child,.rutas-page .route-table tbody tr.servicios-dia__row--salida:not(.data-table__status-row) td:first-child,.rutas-page .route-table tbody tr.servicios-dia__row--pareado:not(.data-table__status-row) td:first-child{box-shadow:inset .32rem 0 0 var(--servicios-dia-kind);padding-left:.82rem}.rutas-page .route-table tbody tr.servicios-dia__row--pair-parent:not(:hover):not(.is-active) td,.rutas-page .route-table tbody tr.servicios-dia__row--pair-child:not(:hover):not(.is-active) td{background:color-mix(in srgb,var(--route-pair) 10%,var(--bg-primary))}.rutas-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child{position:relative;overflow:visible}.rutas-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child .servicios-dia__route-id-cell--pair-child{margin-left:1.1rem}.rutas-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child .servicios-dia__pair-connector{position:absolute;left:.55rem;color:var(--route-pair);overflow:visible;pointer-events:none}.kpi-board{display:flex;flex-direction:column;align-self:flex-start;width:max-content;max-width:100%;min-width:0;margin-bottom:1.25rem;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-panel);overflow:hidden}.kpi-board__head{display:flex;align-items:center;gap:.65rem;padding:.55rem .85rem 0}.kpi-board__title{margin:0;font-size:.82rem;font-weight:800}.kpi-board__body{padding:.45rem .85rem .7rem}.kpi-board .kpi-strip{width:max-content;max-width:100%;margin-bottom:0}.kpi-strip{display:flex;flex-wrap:wrap;gap:1rem;width:100%;margin-bottom:1.25rem}@media(max-width:1100px){.kpi-strip{gap:.75rem}}@media(max-width:480px){.kpi-strip{gap:.5rem}.kpi-board,.kpi-board .kpi-strip{width:100%}}.hs-record{display:flex;flex-direction:column;gap:.85rem}.hs-record__head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.hs-record__id{margin-left:auto;color:var(--text-muted);font-size:.78rem;font-weight:750;font-variant-numeric:tabular-nums}.hs-record__body{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:1100px){.hs-record__body{grid-template-columns:1fr}}.hs-record__group{display:flex;flex-direction:column;gap:.7rem;min-width:0;padding:.75rem .85rem .85rem;border:1px solid var(--border);border-radius:.8rem;background:var(--bg-panel)}.hs-record__group-title{display:inline-flex;align-items:center;gap:.38rem;margin:0;color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.hs-record__identity{display:flex;flex-direction:column;gap:.45rem;min-width:0;padding:.7rem .8rem;border-radius:.65rem;background:var(--bg-elevated)}.hs-record__identity-route{display:flex;align-items:center;gap:.4rem;min-width:0;flex-wrap:wrap}.hs-record__identity-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.hs-record__service{display:flex;flex-direction:column;gap:.7rem;min-width:0}.hs-record__identity-row{display:flex;align-items:stretch;gap:.65rem;min-width:0}.hs-record__identity-row .hs-record__identity{flex:1 1 auto}.hs-record__service-dock{display:flex;flex:0 0 auto;align-items:stretch;min-width:4.25rem}.hs-record__company{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.hs-record__field--company{grid-column:span 2;min-width:0}.hs-record__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.65rem .9rem}.hs-record__field{display:flex;flex-direction:column;gap:.22rem;min-width:0}.hs-record__label{color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.hs-record__value{color:var(--text-primary);font-size:.84rem;font-weight:650;word-break:break-word}.hs-record__times{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.65rem .9rem}.hs-record__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.8rem,1fr));gap:.5rem}.hs-record__stat{display:flex;flex-direction:column;gap:.12rem;padding:.55rem .7rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-elevated)}.hs-record__stat-value{color:var(--text-primary);font-size:1.05rem;font-weight:800;font-variant-numeric:tabular-nums}.hs-record__stat-label{color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.hs-record__group--photos,.hs-record__group--comments{grid-column:1/-1}.hs-record__comments{margin:0;color:var(--text-secondary);font-size:.86rem;line-height:1.45}.hs-record__comments--empty{color:var(--text-muted);font-style:italic}.missing-info{display:inline-flex;align-items:center;gap:.28rem;padding:.22rem .55rem .22rem .42rem;border:1px dashed color-mix(in srgb,var(--text-muted) 42%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--bg-hover) 78%,transparent);color:var(--text-muted);font-size:.72rem;font-weight:750;letter-spacing:.02em;line-height:1.2;white-space:nowrap}.missing-info--sm{gap:.18rem;padding:.1rem .4rem .1rem .28rem;font-size:.64rem}.hs-record__photos{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.7rem 1rem}@media(max-width:480px){.hs-record__photos{grid-template-columns:1fr}.hs-record__photo-bridge-arrow{transform:rotate(90deg);width:7.25rem;min-width:0}}.hs-record__photo{display:flex;flex-direction:column;gap:.45rem;min-width:0}.hs-record__photo-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .7rem}.hs-record__photo-bridge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;min-width:8.25rem}.hs-record__photo-bridge-times{display:flex;flex-direction:column;align-items:center;gap:.35rem}.hs-record__photo-bridge-item{display:flex;flex-direction:column;align-items:center;gap:.08rem}.hs-record__photo-bridge-value{color:var(--text-primary);font-size:.92rem;font-weight:800;font-variant-numeric:tabular-nums;text-align:center}.hs-record__photo-bridge-arrow{position:relative;display:block;width:100%;min-width:6.5rem;height:1.75rem;overflow:visible;color:var(--accent-secondary);line-height:0}[data-theme=dark] .hs-record__photo-bridge-arrow{color:var(--accent)}.hs-record__photo-bridge-track{display:block;width:100%;height:100%}.hs-record__photo-bridge-rail{fill:none;stroke:color-mix(in srgb,var(--accent) 48%,var(--border));stroke-width:2.2;stroke-linecap:butt;stroke-dasharray:3.6 4.4}.hs-record__photo-bridge-wake{fill:none;stroke:currentColor;stroke-width:5.5;stroke-linecap:butt}.hs-record__photo-bridge-tip{position:absolute;top:50%;left:100%;width:.78rem;height:.78rem;background:currentColor;clip-path:polygon(0 8%,100% 50%,0 92%);transform:translate(-12%,-50%)}.hs-record__photo-link,.hs-record__photo-empty{display:block;width:100%;aspect-ratio:16/9;border-radius:.55rem;border:1px solid var(--border);background:var(--bg-elevated);overflow:hidden}button.hs-record__photo-link{position:relative;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;font:inherit;text-align:left;cursor:zoom-in}.hs-record__photo-zoom{position:absolute;inset:auto .45rem .45rem auto;display:inline-grid;place-items:center;width:1.85rem;height:1.85rem;border-radius:999px;background:color-mix(in srgb,var(--bg-panel) 82%,transparent);color:var(--text-primary);opacity:0;transition:opacity .18s ease}button.hs-record__photo-link:hover .hs-record__photo-zoom,button.hs-record__photo-link:focus-visible .hs-record__photo-zoom{opacity:1}.hs-record__photo-img{display:block;width:100%;height:100%;object-fit:cover}.hs-photo-viewer{display:flex;flex-direction:column;gap:.75rem}.hs-photo-viewer__stage{position:relative;display:grid;place-items:center;min-height:16rem;border-radius:.7rem;background:var(--bg-primary);overflow:hidden}.hs-photo-viewer__img{display:block;max-width:100%;max-height:min(72vh,42rem);object-fit:contain}.hs-photo-viewer__nav{position:absolute;top:50%;transform:translateY(-50%);background:color-mix(in srgb,var(--bg-panel) 78%,transparent)}.hs-photo-viewer__nav--prev{left:.5rem}.hs-photo-viewer__nav--next{right:.5rem}.hs-photo-viewer__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem 1rem}.hs-photo-viewer__file{color:var(--text-secondary);font-size:.82rem;word-break:break-all}.dock-unit[data-panel=alertas].is-open{--dock-face: var(--issues-panel-bg)}.alerts-panel__search{position:relative;display:flex;flex:0 0 auto;align-items:center;gap:.45rem;padding:.55rem 1rem .35rem}.alerts-panel__search-icon{flex:0 0 auto;color:var(--text-secondary)}.alerts-panel__search-input{flex:1;min-width:0;padding:.28rem .6rem;border:1px solid var(--border);border-radius:.4rem;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:.8rem}.alerts-panel__search-input::placeholder{color:var(--text-muted)}.alerts-panel__search-input:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 2px var(--accent-dim)}.alerts-panel__search-input:disabled{cursor:not-allowed;opacity:.55}.alerts-panel__search-input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.alerts-panel__search-clear{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;padding:0;border:0;border-radius:.35rem;background:transparent;color:var(--text-secondary);cursor:pointer}.alerts-panel__search-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.alerts-panel__filters{position:relative;display:flex;flex:0 0 auto;padding:0 1rem .35rem}.alerts-panel__filters-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.alerts-panel__filters .chip-select{width:100%}.issue-card{display:flex;flex-direction:column;gap:.55rem;padding:.85rem;border:1px solid var(--issues-card-border);border-radius:.85rem;background:var(--issues-card-bg)}.issue-card--info{border-color:var(--issues-info-fg);background:var(--issues-info-bg)}.issue-card--warning{border-color:var(--issues-warning-fg);background:var(--issues-warning-bg)}.issue-card--error{border-color:var(--issues-error-fg);background:var(--issues-error-bg)}.issue-card--ticket{overflow:hidden;padding-bottom:0;border-color:var(--issues-ticket-fg);background:var(--issues-ticket-bg)}.issue-card__head{display:flex;align-items:center;gap:.45rem;min-width:0}.issue-card__severity{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;color:var(--issues-info-fg)}.issue-card--warning .issue-card__severity{color:var(--issues-warning-fg)}.issue-card--error .issue-card__severity{color:var(--issues-error-fg)}.issue-card--ticket .issue-card__severity{color:var(--issues-ticket-fg)}.issue-card__origin{margin:0;min-width:0;color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.04em;line-height:1.3;overflow-wrap:anywhere;text-transform:uppercase}.issue-card__title{margin:0;min-width:0;font-size:.95rem;font-weight:800;line-height:1.35;overflow-wrap:anywhere;text-wrap:pretty}.issue-card__head .when-stamp{flex:0 0 auto;margin-left:auto}.issue-card__toolbar{position:relative;display:flex;justify-content:center;align-items:center;isolation:isolate;margin:auto -.85rem 0;padding:.28rem 2.35rem;overflow:hidden;border-top:1px solid color-mix(in srgb,var(--issues-ticket-fg) 38%,var(--border));background:color-mix(in srgb,var(--bg-elevated) 78%,var(--issues-ticket-bg))}.issue-card__toolbar:before,.issue-card__toolbar:after{position:absolute;top:0;bottom:0;z-index:0;width:1.7rem;pointer-events:none;background-image:repeating-linear-gradient(-45deg,transparent,transparent 3px,color-mix(in srgb,var(--issues-ticket-fg) 32%,transparent) 3px,color-mix(in srgb,var(--issues-ticket-fg) 32%,transparent) 6px);content:""}.issue-card__toolbar:before{left:0;border-right:1px solid color-mix(in srgb,var(--issues-ticket-fg) 24%,transparent)}.issue-card__toolbar:after{right:0;border-left:1px solid color-mix(in srgb,var(--issues-ticket-fg) 24%,transparent)}.issue-card__tools{position:relative;z-index:1;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:.2rem}.issue-card__tool{width:2rem;height:2rem;color:var(--issues-ticket-fg)}.issue-card>.form-section--panel{padding:.55rem .7rem .65rem;border-color:color-mix(in srgb,var(--border) 72%,var(--issues-card-border));background:color-mix(in srgb,var(--bg-elevated) 78%,transparent)}.issue-card>.form-section--panel .form-section__head{margin-bottom:.4rem}.issue-card>.form-section--panel .form-section__title{color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.issue-card__description{margin:0;font-size:.86rem;line-height:1.5;overflow-wrap:anywhere;text-wrap:pretty}.issue-card__description .service-time,.issue-card__description .when-stamp,.issue-card__description .route-label{display:inline-flex;vertical-align:middle;margin:0 .12rem}.issue-card__date{font-weight:800;font-variant-numeric:tabular-nums}.issue-card__route{display:inline-flex;align-items:center;gap:.2rem;font-weight:700}.issue-card__emphasis,.issue-card__ref,.issue-card__platform,.issue-card__percent,.issue-card__code{font-weight:800;color:var(--text-primary)}.issue-card__code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem}.issue-card__tags{margin-top:auto;padding-top:.15rem}.issue-card--ticket .issue-card__tags{margin-top:0}.issue-card__tag{font-size:.72rem;padding:.18rem .5rem}.issue-card__action{margin:0;color:var(--text-secondary);font-size:.78rem;line-height:1.4}.issue-card__action-link{display:inline;padding:0;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:.12em;cursor:pointer}.issue-card__action-link:hover{color:var(--text-primary)}.issue-card__actions{display:flex;flex-wrap:wrap;gap:.35rem}.dock-unit[data-panel=chat].is-open{--dock-face: var(--issues-panel-bg)}.dock-unit[data-panel=chat] .dock-sheet.is-open{--issue-chat-paper: color-mix(in srgb, var(--bg-secondary) 82%, var(--accent));--issue-chat-out: color-mix(in srgb, var(--accent) 22%, var(--bg-card));--issue-chat-in: var(--bg-card);--issue-chat-ink: var(--text-primary);--issue-chat-muted: var(--text-secondary);--issue-chat-time: var(--text-muted);--issue-chat-composer: var(--bg-panel);--issue-chat-rec: color-mix(in srgb, var(--col-wrn) 16%, var(--bg-card));--issue-chat-rec-ink: var(--col-wrn);--issue-chat-ask: var(--issues-info-bg);--issue-chat-ask-ink: var(--issues-info-fg)}.issue-chat__chips{display:flex;flex-wrap:wrap;gap:.3rem;flex:0 0 auto;padding:.45rem .85rem .2rem}.issue-chat__chip{min-height:1.7rem;padding:.2rem .65rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);color:var(--text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:.72rem;font-weight:800;cursor:pointer}.issue-chat__chip.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--bg-card));color:var(--accent)}.issue-chat__summary{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;flex:0 0 auto;margin:0;padding:.35rem .95rem .55rem;border-bottom:1px solid var(--border)}.issue-chat__summary-title{min-width:0;flex:1 1 8rem;color:var(--text-primary);font-size:.86rem;font-weight:750;overflow-wrap:anywhere}.issue-chat__ticket,.issue-chat__date{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-secondary);font-size:.78rem;font-weight:650}.issue-chat__messages{display:flex;flex:1;flex-direction:column;gap:.75rem;min-height:0;overflow:auto;padding:.85rem .9rem 1.1rem;background-color:var(--issue-chat-paper);background-image:radial-gradient(color-mix(in srgb,var(--issue-chat-ink) 6%,transparent) 1px,transparent 1px),radial-gradient(color-mix(in srgb,var(--issue-chat-ink) 4%,transparent) 1px,transparent 1px);background-size:28px 28px,48px 48px;background-position:0 0,14px 18px}.issue-chat__day{align-self:center;margin:.45rem 0 .55rem;padding:.22rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--bg-card) 92%,transparent);color:var(--issue-chat-muted);font-size:.72rem;font-weight:700}.issue-chat__row{display:flex;width:100%}.issue-chat__row--in{justify-content:flex-start}.issue-chat__row--out{justify-content:flex-end}.issue-chat__row--sys{justify-content:center;margin:.3rem 0}.issue-chat__bubble{position:relative;max-width:78%;min-width:4.5rem;padding:.4rem .6rem .32rem;border-radius:.5rem;color:var(--issue-chat-ink);box-shadow:0 1px .5px color-mix(in srgb,var(--issue-chat-ink) 13%,transparent);overflow-wrap:anywhere}.issue-chat__bubble--in{background:var(--issue-chat-in);border-bottom-left-radius:.12rem}.issue-chat__bubble--out{margin-right:.3rem;background:var(--issue-chat-out);border-bottom-right-radius:.12rem}.issue-chat__bubble--recommendation{background:var(--issue-chat-rec);border:1px solid color-mix(in srgb,var(--issue-chat-rec-ink) 35%,transparent)}.issue-chat__bubble--recommendation .issue-chat__author{color:var(--issue-chat-rec-ink);text-transform:uppercase;letter-spacing:.03em;font-size:.68rem}.issue-chat__bubble--clarification{background:var(--issue-chat-ask);border:1px solid color-mix(in srgb,var(--issue-chat-ask-ink) 28%,transparent)}.issue-chat__bubble--clarification .issue-chat__author{color:var(--issue-chat-ask-ink);text-transform:uppercase;letter-spacing:.03em;font-size:.68rem}.issue-chat__bubble--sys{max-width:92%;padding:.35rem .75rem;border-radius:999px;background:color-mix(in srgb,var(--bg-card) 92%,transparent);color:var(--issue-chat-muted);font-size:.78rem;text-align:center}.issue-chat__author{display:block;margin-bottom:.12rem;color:var(--accent-secondary);font-size:.75rem;font-weight:800}.issue-chat__body{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.3rem .55rem}.issue-chat__text{flex:1 1 auto;min-width:0;font-size:.92rem;line-height:1.4;white-space:pre-wrap}.issue-chat__meta-line{display:inline-flex;align-items:center;gap:.2rem;flex:0 0 auto;margin-left:auto}.issue-chat__time{color:var(--issue-chat-time);font-size:.68rem;white-space:nowrap}.issue-chat__ticks{display:inline-flex;color:var(--issue-chat-time);line-height:0}.issue-chat__ticks--read{color:var(--accent)}.issue-chat__ticks--failed{color:var(--danger)}.issue-chat__bubble--sys .issue-chat__time{display:none}.issue-chat__empty{margin:auto;padding:1rem;border-radius:.75rem;background:color-mix(in srgb,var(--bg-card) 75%,transparent);color:var(--issue-chat-muted);text-align:center}.issue-chat__error,.issue-chat__closed{display:flex;align-items:flex-start;gap:.5rem;flex:0 0 auto;margin:0;padding:.65rem .85rem;font-size:.82rem;line-height:1.35}.issue-chat__error{background:var(--danger-soft);color:var(--danger);border-top:1px solid color-mix(in srgb,var(--danger) 35%,transparent)}.issue-chat__closed{background:var(--bg-secondary);color:var(--issue-chat-muted);font-weight:700;border-top:1px solid var(--border)}.issue-chat__composer{display:grid;grid-template-columns:minmax(0,1fr) 3.1rem;align-items:stretch;gap:.5rem;flex:0 0 auto;padding:.55rem .7rem;background:var(--issue-chat-composer);border-top:1px solid var(--border)}.issue-chat__composer-field{min-width:0}.issue-chat__composer textarea{width:100%;min-height:3.1rem;max-height:7.5rem;margin:0;padding:.7rem .9rem;border:1px solid var(--border);border-radius:1.35rem;background:var(--bg-card);color:var(--issue-chat-ink);font:inherit;line-height:1.4;resize:none}.issue-chat__composer textarea:focus{outline:none;border-color:var(--accent)}.issue-chat__composer .char-count{margin:.2rem .4rem 0;font-size:.68rem}.issue-chat__send{display:flex;align-items:center;justify-content:center;width:3.1rem;min-height:3.1rem;border:none;border-radius:1.35rem;background:var(--accent);color:#fff;cursor:pointer}.issue-chat__send:hover,.issue-chat__send:focus-visible{background:var(--accent-secondary);outline:none}.issue-chat__send:disabled{opacity:.5;cursor:not-allowed}@media(max-width:480px){.issue-chat__bubble{max-width:90%}}.dock-unit[data-panel=matriculas].is-open{--dock-face: color-mix(in srgb, var(--bg-panel) 88%, var(--warning))}.pending-plates-panel__search{display:flex;flex:0 0 auto;align-items:center;gap:.45rem;padding:.55rem .85rem .4rem}.pending-plates-panel__search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.pending-plates-panel__search-icon{flex:0 0 auto;color:var(--text-secondary)}.pending-plates-panel__autocomplete{flex:1 1 auto;min-width:0}.pending-plates-panel__search-clear{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:.4rem;background:transparent;color:var(--text-secondary);cursor:pointer}.pending-plates-panel__search-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.pending-plates-panel__kinds{display:flex;flex:0 0 auto;padding:0 .85rem .5rem}.pending-plates-panel__kinds .chip-select{width:100%}.pending-plates-panel__list .pending-plate-card{flex:0 0 auto;min-height:min-content}.pending-plates-panel__more{display:flex;flex:0 0 auto;align-items:center;justify-content:center;width:calc(100% - 1.7rem);margin:0 .85rem .75rem;padding:.45rem .7rem;border:1px solid var(--border);border-radius:.65rem;background:var(--bg-card);color:var(--text-secondary);font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.pending-plates-panel__more:hover{background:var(--bg-hover);color:var(--text-primary)}.pending-plates-panel__more:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.pending-plate-card{position:relative;display:flex;flex:0 0 auto;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-left:.32rem solid var(--warning);border-radius:.85rem;background:var(--bg-card)}.pending-plate-card__open{display:flex;flex-direction:row;align-items:stretch;gap:.65rem;width:100%;padding:.55rem .55rem .5rem .75rem;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:transparent}.pending-plate-card__open:disabled{cursor:wait}.pending-plate-card__open:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.pending-plate-card__body{display:flex;flex:1 1 auto;flex-direction:column;gap:.4rem;min-width:0;justify-content:center}.pending-plate-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;min-width:0}.pending-plate-card__head .es-plate--static{height:1.55rem;max-width:100%}.pending-plate-card__head .route-kind-chip{flex:0 0 auto}.pending-plate-card__meta{display:flex;align-items:center;min-width:0;color:var(--text-secondary)}.pending-plate-card__thumb{flex:0 0 5.6rem;width:5.6rem;height:3.75rem;align-self:center;overflow:hidden;border-radius:.55rem;background:var(--bg-primary)}.pending-plate-card__thumb img{display:block;width:100%;height:100%;object-fit:cover}.pending-plate-card__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.45rem;min-height:2.35rem;padding:.2rem .55rem .3rem .35rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 78%,var(--bg-card))}.pending-plate-card__brand{margin-left:auto}.pending-plate-card__tools{display:inline-flex;gap:.1rem}.pending-plate-card__tool{width:2rem;height:2rem}.pending-plate-card__tool--danger{color:var(--danger)}.pending-plate-card.is-attention{border-color:var(--accent)}.pending-plate-card__flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;border-radius:inherit;pointer-events:none;background:color-mix(in srgb,var(--accent) 35%,#fff);box-shadow:inset 0 0 0 2px var(--accent);animation:occupancy-flash .65s ease-out forwards}.pending-plate-card__flash:after{content:"";position:absolute;top:-25%;right:-45%;bottom:-25%;left:-45%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.9) 50%,transparent 62%);animation:occupancy-flash-sheen .55s ease-out forwards}[data-theme=dark] .pending-plate-card__flash{background:color-mix(in srgb,var(--accent) 48%,transparent)}@media(prefers-reduced-motion:reduce){.pending-plate-card.is-attention{outline:2px solid var(--accent);outline-offset:1px}.pending-plate-card__flash{animation:none;opacity:0}}.plate-validation-modal .modal__body{padding-bottom:0}.plate-validation-modal .form-header__name--node{gap:.55rem}.plate-validation-modal .form-header__name--node .es-plate--static{height:1.75rem;max-width:11rem}.plate-validation{display:flex;flex-direction:column;gap:1rem;min-height:0}.plate-validation__image-stage{position:relative;display:grid;place-items:center;min-height:16rem;overflow:hidden;border:1px solid var(--border);border-radius:1rem;background:var(--bg-primary)}.plate-validation__image-stage .magnifier{width:100%}.plate-validation__image-stage .magnifier__image{max-height:min(42vh,28rem)}.plate-validation__image-tools{position:absolute;top:.7rem;right:.7rem;z-index:3;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}.plate-validation__image-tools .btn{background:color-mix(in srgb,var(--bg-card) 88%,transparent);box-shadow:var(--shadow)}.plate-validation__form{padding:1rem;border:1px solid var(--border);border-radius:1rem;background:var(--bg-elevated)}.plate-validation__form .chip-select{width:100%}.plate-validation-modal .form-actions{margin-top:1.25rem}.plate-validation-modal .form-actions__secondary{display:flex;gap:.65rem}@media(max-width:1100px){.plate-validation__image-stage{min-height:14rem}.plate-validation__image-stage .magnifier__image{max-height:min(36vh,22rem)}}@media(max-width:480px){.plate-validation__image-stage{min-height:11rem}.plate-validation__image-tools{left:.55rem;right:.55rem}.plate-validation__image-tools .btn{flex:1 1 auto}.plate-validation-modal .form-actions,.plate-validation-modal .form-actions__secondary{align-items:stretch}.plate-validation-modal .form-actions__secondary{flex-direction:column}}.vehicle-type-chip{display:inline-flex;align-items:center;gap:.32rem;padding:.28rem .7rem;border:1px solid var(--chip-select-border);border-radius:999px;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.8rem;font-weight:700;line-height:1}.vehicle-type-chip__icon{display:inline-flex;align-items:center;line-height:0}.vehicle-type-chip--autobus{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.vehicle-type-chip--microbus{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.vehicle-type-chip--turismo{border-color:color-mix(in srgb,var(--col-inf) 48%,var(--border));background:color-mix(in srgb,var(--col-inf) 16%,transparent);color:var(--col-inf)}.vehicle-type-chip--oficina{border-color:color-mix(in srgb,var(--cmd-pax) 48%,var(--border));background:var(--cmd-pax-soft);color:var(--cmd-pax)}.vehicle-type-chip--mantenimiento{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.vehicle-type-chip--invitados{border-color:color-mix(in srgb,var(--darsena-bg) 50%,var(--border));background:var(--issues-ticket-bg);color:var(--darsena-bg)}.vehicle-type-chip--otros{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-secondary)}.vehicle-type-chip--sm{padding:.2rem .55rem;font-size:.75rem}.vehicle-type-chip--icon{justify-content:center;width:1.85rem;height:1.85rem;padding:0}.vehicle-type-chip--icon.vehicle-type-chip--sm{width:1.5rem;height:1.5rem}.plate-autocomplete{position:relative;min-width:0}.plate-autocomplete__control{position:relative;display:flex;align-items:center;gap:.4rem;min-height:2.55rem;padding:.22rem .45rem .22rem .5rem;cursor:text}.plate-autocomplete__control.is-open{border-color:var(--accent)}.plate-autocomplete.is-disabled .plate-autocomplete__control{background:var(--bg-elevated);color:var(--text-muted);cursor:not-allowed}.plate-autocomplete__item{display:inline-flex;align-items:center;min-width:0;padding:.08rem;border-radius:.55rem}.plate-autocomplete__input{flex:1 1 auto;width:100%;min-width:0;margin:0;padding:0 .15rem;border:0;background:transparent;color:var(--text-primary);font:inherit;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.plate-autocomplete__input:focus{outline:none}.plate-autocomplete__input.is-ghost{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.plate-autocomplete.has-clear .plate-autocomplete__control{padding-right:2.2rem}.plate-autocomplete__clear{position:absolute;top:50%;right:.4rem;display:inline-grid;place-items:center;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-muted);transform:translateY(-50%);cursor:pointer}.plate-autocomplete__clear:hover{background:var(--bg-hover);color:var(--text-primary)}.plate-autocomplete__list{position:fixed;z-index:2500;margin:0;padding:.28rem;list-style:none;overflow:auto;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-elevated);box-shadow:var(--shadow)}.plate-autocomplete__option{display:flex;align-items:center;gap:.55rem;width:100%;margin:0;padding:.32rem .45rem;border:0;border-radius:.5rem;background:transparent;color:var(--text-primary);cursor:pointer;text-align:left}.plate-autocomplete__option.is-active,.plate-autocomplete__option:hover{background:var(--bg-hover)}.plate-autocomplete__option-plate{flex:0 0 auto}.plate-autocomplete__company{margin-left:auto;color:var(--text-secondary);font-size:.75rem}.megafonia-panel__head{align-items:center;flex-wrap:wrap;gap:.55rem}.megafonia-panel__controls{display:flex;flex-direction:column;gap:.4rem;flex:0 0 auto;padding:.65rem .85rem;border-bottom:1px solid var(--border)}.megafonia-panel__list{display:flex;flex-direction:column;gap:.5rem}.megafonia-card{position:relative;isolation:isolate;overflow:hidden;flex:0 0 auto;display:flex;flex-direction:column;gap:.45rem;padding:.65rem .7rem .65rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--bg-card);display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"id title play stop" "meta meta play stop";align-items:center;column-gap:.4rem;row-gap:.22rem;padding:.5rem 0 .35rem .7rem}.megafonia-card__actions{display:contents}.megafonia-card__id{grid-area:id;padding:.06rem .28rem;font-size:.64rem;letter-spacing:0}.megafonia-card__title{grid-area:title;display:block;min-width:0;overflow:hidden;margin:0;font-size:.86rem;font-weight:700;line-height:1.25;white-space:nowrap;text-overflow:ellipsis}.megafonia-card__meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;color:var(--text-secondary);font-size:.72rem;font-weight:650}.megafonia-card__play.table-action-btn--ok{grid-area:play;align-self:stretch;justify-self:stretch;width:auto;height:auto;min-width:2.6rem;aspect-ratio:1/1;margin:0;padding:0;border:none;border-left:1px solid color-mix(in srgb,var(--ok) 28%,var(--border));border-radius:0;background:color-mix(in srgb,var(--ok) 10%,var(--bg-card));color:var(--ok)}.megafonia-card__stop.table-action-btn--danger{grid-area:stop;align-self:stretch;justify-self:stretch;width:auto;height:auto;min-width:2.6rem;aspect-ratio:1/1;margin:0;padding:0;border:none;border-left:1px solid color-mix(in srgb,var(--danger) 28%,var(--border));border-radius:0;background:color-mix(in srgb,var(--danger) 10%,var(--bg-card));color:var(--danger)}.megafonia-card__play.table-action-btn--ok:hover:not(:disabled),.megafonia-card__play.table-action-btn--ok:focus-visible{background:color-mix(in srgb,var(--ok) 18%,var(--bg-card));color:var(--ok)}.megafonia-card__stop.table-action-btn--danger:hover:not(:disabled),.megafonia-card__stop.table-action-btn--danger:focus-visible{background:color-mix(in srgb,var(--danger) 18%,var(--bg-card));color:var(--danger)}.megafonia-volume{--megafonia-volume-thumb: 1rem;display:flex;align-items:flex-start;gap:.55rem;min-width:0;width:100%}.megafonia-volume.is-busy{opacity:.82}.megafonia-volume__actions{display:flex;flex:0 0 auto;align-items:flex-start;gap:.35rem}.megafonia-volume__toggle{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:2.15rem;height:2.15rem;margin:0;padding:0;border:1px solid color-mix(in srgb,var(--ok) 42%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--ok) 12%,var(--bg-card));color:var(--ok);cursor:pointer}.megafonia-volume__toggle:hover:not(:disabled),.megafonia-volume__toggle:focus-visible{background:color-mix(in srgb,var(--ok) 20%,var(--bg-card))}.megafonia-volume__toggle.is-on{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-card));color:var(--accent)}.megafonia-volume__toggle.is-on:hover:not(:disabled),.megafonia-volume__toggle.is-on:focus-visible{background:color-mix(in srgb,var(--accent) 24%,var(--bg-card))}.megafonia-volume__toggle:disabled{opacity:.55;cursor:default}.megafonia-volume__stop{border-color:color-mix(in srgb,var(--danger) 42%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--bg-card));color:var(--danger)}.megafonia-volume__stop:hover:not(:disabled),.megafonia-volume__stop:focus-visible{border-color:var(--danger);background:color-mix(in srgb,var(--danger) 20%,var(--bg-card));color:var(--danger)}.megafonia-volume__slider{display:flex;flex:1;align-items:flex-start;gap:.4rem;min-width:0;color:var(--text-secondary)}.megafonia-volume__icon{display:inline-flex;flex:0 0 auto;align-items:center;height:var(--megafonia-volume-thumb);margin-top:.08rem}.megafonia-volume__scale{display:flex;flex:1;align-items:flex-start;min-width:0}.megafonia-volume--compact .ui-slider__scale{min-width:8.25rem}.megafonia-volume--compact .ui-slider__label{font-size:.58rem}.ui-slider{--ui-slider-thumb: 1rem;display:flex;align-items:flex-start;gap:.4rem;min-width:0;width:100%;color:var(--text-secondary)}.ui-slider.is-disabled{opacity:.55}.ui-slider__scale{display:flex;flex:1;flex-direction:column;min-width:9.5rem;padding-inline:calc(var(--ui-slider-thumb) / 2)}.ui-slider__scale input[type=range]{width:calc(100% + var(--ui-slider-thumb));margin:0 calc(var(--ui-slider-thumb) / -2);height:var(--ui-slider-thumb);accent-color:var(--accent)}.ui-slider__ticks{position:relative;height:.52rem;margin-top:.06rem;pointer-events:none}.ui-slider__tick{position:absolute;top:0;left:var(--tick);width:1px;height:.28rem;background:color-mix(in srgb,var(--text-primary) 28%,transparent);transform:translate(-50%)}.ui-slider__tick--major{width:1.5px;height:.5rem;background:color-mix(in srgb,var(--text-primary) 58%,transparent)}.ui-slider__labels{position:relative;height:1.15rem;margin-top:.04rem}.ui-slider__label{position:absolute;top:0;left:var(--tick);margin:0;padding:.12rem .18rem;border:0;background:transparent;color:var(--text-muted);font-size:.62rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1;transform:translate(-50%);cursor:pointer}.ui-slider__label.is-start{transform:translate(0)}.ui-slider__label.is-end{transform:translate(-100%)}.ui-slider__label:hover:not(:disabled),.ui-slider__label:focus-visible{color:var(--accent)}.ui-slider__label.is-current{color:var(--text-primary)}.ui-slider__label:disabled{cursor:default}.ui-slider__value{flex:0 0 auto;min-width:2.6rem;margin-top:.08rem;color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:700}.ui-slider--range .ui-slider__value{min-width:4.4rem}.ui-slider__bounds{position:relative;height:var(--ui-slider-thumb)}.ui-slider__track,.ui-slider__fill{position:absolute;top:50%;height:.28rem;transform:translateY(-50%);border-radius:999px;pointer-events:none}.ui-slider__track{left:0;right:0;background:color-mix(in srgb,var(--text-primary) 18%,var(--border))}.ui-slider__fill{left:var(--from);right:calc(100% - var(--to));background:var(--accent)}.ui-slider__bound{position:absolute;top:0;left:0;width:calc(100% + var(--ui-slider-thumb));height:var(--ui-slider-thumb);margin:0 calc(var(--ui-slider-thumb) / -2);background:transparent;pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ui-slider__bound--from{z-index:2}.ui-slider__bound--to{z-index:3}.ui-slider__bound.is-active{z-index:4}.ui-slider__bound::-webkit-slider-runnable-track{height:.28rem;background:transparent;border:0}.ui-slider__bound::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:auto;width:var(--ui-slider-thumb);height:var(--ui-slider-thumb);margin-top:-.36rem;border:2px solid var(--bg-card);border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 55%,var(--border));cursor:grab}.ui-slider__bound::-moz-range-track{height:.28rem;background:transparent;border:0}.ui-slider__bound::-moz-range-thumb{pointer-events:auto;width:var(--ui-slider-thumb);height:var(--ui-slider-thumb);border:2px solid var(--bg-card);border-radius:50%;background:var(--accent);cursor:grab}.megafonia-live{display:flex;align-items:center;gap:.3rem;min-width:0;width:100%}.megafonia-live__input{flex:1 1 auto;min-width:0;height:2.15rem;padding:.35rem .65rem}.megafonia-live__actions{display:flex;flex:0 0 auto;align-items:center;gap:.3rem}.megafonia-live__play,.megafonia-live__translate{flex:0 0 auto;width:2.15rem;height:2.15rem}.megafonia-live__play:disabled,.megafonia-live__translate:disabled{opacity:.45;cursor:default}.megafonia-live__translate .megafonia-lang-flag__svg{width:1.05rem;height:.75rem}.megafonia-live-confirm{display:flex;flex-direction:column;gap:.55rem}.megafonia-live-confirm__lead{margin:0;font-size:.84rem}.megafonia-live-confirm__text{margin:0;padding:.65rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm, .35rem);background:var(--bg-elevated);font-size:.92rem;font-weight:700;line-height:1.35;word-break:break-word}.megafonia-live-confirm__origin{margin:0;font-size:.78rem;line-height:1.35;word-break:break-word}.megafonia-live-confirm__origin-label{display:block;margin-bottom:.12rem;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.megafonia-live-confirm__hint{margin:0;font-size:.78rem;line-height:1.35}.megafonia-live--compact .megafonia-live__input{height:2rem;font-size:.8rem}.megafonia-live--compact .megafonia-live__play,.megafonia-live--compact .megafonia-live__translate{width:2rem;height:2rem}.megafonia-langs{display:inline-flex;align-items:center;gap:.28rem}.megafonia-lang-flag{display:inline-flex;align-items:center;line-height:0}.megafonia-lang-flag__svg{display:block;width:1.15rem;height:.82rem;border-radius:2px;box-shadow:0 0 0 1px var(--border)}.megafonia-type{display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);line-height:0}.app-footer-dock{--footer-tab-start: calc(var(--sidebar-current, 0rem) + .85rem);--footer-tab-gap: .55rem;--footer-tab-slot: 3.7rem;--footer-sheet-height: min(32vh, 22rem);position:relative;flex:0 0 auto;z-index:8;overflow:visible}.footer-log-tabs{position:absolute;left:var(--footer-tab-start);bottom:100%;z-index:9;display:flex;flex-flow:row nowrap;align-items:flex-end;gap:var(--footer-tab-gap);width:max-content;max-width:calc(100% - var(--footer-tab-start) - .75rem);overflow-x:auto;overflow-y:hidden;pointer-events:auto;scrollbar-width:thin;transition:bottom .28s ease,left .28s ease}.footer-log-tabs>*{pointer-events:auto}.app-footer-dock:has(.hub-log.is-open,.seq-log.is-open) .footer-log-tabs{bottom:calc(100% + var(--footer-sheet-height) - 1px)}.app-footer-dock:has(.seq-log.is-expanded){z-index:40}.app-footer{display:flex;flex:0 0 auto;flex-flow:row nowrap;align-items:center;gap:.55rem;margin-top:auto;min-height:2.15rem;padding:.2rem .5rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg-panel) 90%,transparent);color:var(--text-secondary);font-size:.75rem;font-weight:650}.app-footer__slot{display:flex;align-items:center;min-width:0;flex:1 1 0}.app-footer__slot--start{justify-content:flex-start}.app-footer__live{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0}.app-footer__slot--end{justify-content:flex-end}.app-footer__copy{display:inline-flex;align-items:center;gap:.35rem;min-width:0;color:var(--text-secondary);font-size:.72rem;font-weight:650;text-decoration:none;white-space:nowrap}.app-footer__copy-mark{color:var(--text-muted);font-size:.65rem;font-weight:500}.app-footer__copy-brand{overflow:hidden;font-weight:750;letter-spacing:.04em;text-overflow:ellipsis}.app-footer__copy-year{display:inline-flex;align-items:center;padding:0 .38rem;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--bg-hover) 70%,var(--bg-panel));color:var(--text-primary);font-size:.65rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.08em}.app-footer__copy:hover,.app-footer__copy:focus-visible{color:var(--text-primary);outline:none}.app-footer__copy:hover .app-footer__copy-year,.app-footer__copy:focus-visible .app-footer__copy-year{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--accent-dim);color:var(--accent-secondary)}.app-footer__brand{display:inline-flex;flex:0 0 auto;align-items:center;gap:.4rem;min-width:0}.app-footer__version{display:inline-flex;flex:0 0 auto;align-items:baseline;gap:.3rem;margin:0;padding:.05rem .45rem;border:1px solid transparent;border-radius:.45rem;background:transparent;color:var(--text-secondary);cursor:pointer}.app-footer__version strong{color:var(--text-primary);font-size:.78rem;font-weight:800;white-space:nowrap}.app-footer__version-date{font-size:.7rem;font-weight:650;white-space:nowrap}.app-footer__demo{color:var(--warning);font-size:.72rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}.app-footer__version:hover,.app-footer__version:focus-visible{border-color:var(--border);background:var(--bg-hover);outline:none}@media(prefers-reduced-motion:reduce){.footer-log-tabs{transition:none}}@media(max-width:1100px){.app-footer-dock{--footer-sheet-height: min(42vh, 24rem)}}html[data-size=m] .app-footer,html[data-size=l] .app-footer,html[data-size=xl] .app-footer{flex-wrap:nowrap}html[data-size=m] .app-footer__slot--start,html[data-size=m] .app-footer__live{min-width:0;overflow:hidden}html[data-size=m] .app-footer__live{flex-wrap:nowrap}html[data-size=m] .app-footer__brand,html[data-size=m] .app-footer__version,html[data-size=m] .app-footer__slot--end{flex-shrink:0}@media(max-width:480px){.app-footer{flex-wrap:wrap;gap:.55rem .75rem}.app-footer__brand{order:3;flex:1 1 100%;justify-content:center}}.signalr-status{display:inline-flex;align-items:center;justify-content:center;width:1.45rem;height:1.45rem;padding:0;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);line-height:1}button.signalr-status{font:inherit;cursor:pointer}.signalr-status--action:hover,.signalr-status--action:focus-visible{outline:none;box-shadow:0 0 0 .12rem color-mix(in srgb,var(--accent) 40%,transparent)}.signalr-status--caption{width:auto;min-width:1.45rem;height:1.5rem;padding:0 .45rem 0 .28rem;gap:.28rem}.signalr-status__caption{font-size:.58rem;font-weight:800;letter-spacing:.07em;line-height:1;white-space:nowrap}.signalr-status.is-connected{color:var(--ok);background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.signalr-status.is-connecting{color:var(--accent);background:var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.signalr-status.is-connecting .signalr-status__icon{animation:signalr-pulse 1.15s ease-in-out infinite}.signalr-status.is-error{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.signalr-status.is-disconnected,.signalr-status.is-idle{color:var(--text-muted);background:color-mix(in srgb,var(--text-muted) 10%,var(--bg-elevated))}.signalr-status.signalr-status--caption.is-connected{color:var(--ok);background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 55%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ok) 18%,transparent)}.signalr-status.signalr-status--caption.is-disconnected,.signalr-status.signalr-status--caption.is-idle,.signalr-status.signalr-status--caption.is-error{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 55%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent);animation:signalr-heartbeat 1.35s ease-in-out infinite}.signalr-status.signalr-status--caption.is-disconnected .signalr-status__icon,.signalr-status.signalr-status--caption.is-idle .signalr-status__icon,.signalr-status.signalr-status--caption.is-error .signalr-status__icon{animation:signalr-heartbeat-icon 1.35s ease-in-out infinite}@keyframes signalr-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.86)}}@keyframes signalr-heartbeat{0%,to{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent)}14%{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 40%,transparent),0 0 0 .18rem color-mix(in srgb,var(--danger) 35%,transparent)}28%{opacity:.72;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent)}42%{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 40%,transparent),0 0 0 .12rem color-mix(in srgb,var(--danger) 28%,transparent)}58%,to{opacity:.78;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--danger) 18%,transparent)}}@keyframes signalr-heartbeat-icon{0%,to{transform:scale(1)}14%{transform:scale(1.18)}28%{transform:scale(1)}42%{transform:scale(1.12)}58%,to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.signalr-status.is-connecting .signalr-status__icon,.signalr-status.signalr-status--caption.is-disconnected,.signalr-status.signalr-status--caption.is-idle,.signalr-status.signalr-status--caption.is-error,.signalr-status.signalr-status--caption.is-disconnected .signalr-status__icon,.signalr-status.signalr-status--caption.is-idle .signalr-status__icon,.signalr-status.signalr-status--caption.is-error .signalr-status__icon{animation:none;transition:none}}.changelog-modal__intro{margin:0;color:var(--text-secondary)}.changelog-modal.app-modal .app-modal__panel{height:min(90vh,44rem);max-height:min(90vh,44rem)}@media(min-width:2560px){.changelog-modal.app-modal .app-modal__panel{width:min(68rem,86vw);height:min(72vh,52rem);max-height:min(72vh,52rem)}}html[data-device=desktop-portrait] .changelog-modal.app-modal .app-modal__panel{height:min(92dvh,100%);max-height:min(92dvh,100%)}@media(orientation:portrait){html[data-device=tablet] .changelog-modal.app-modal .app-modal__panel,html[data-device=mobile] .changelog-modal.app-modal .app-modal__panel{height:min(92dvh,100%);max-height:min(92dvh,100%)}}@media(max-height:800px){.changelog-modal.app-modal .app-modal__panel{height:min(92dvh,100%);max-height:min(92dvh,100%)}}@media(max-width:480px){html[data-device=mobile] .changelog-modal.app-modal .app-modal__panel{height:100%;max-height:100%}}.app-modal__body.changelog-modal__body{overflow:hidden}.changelog-modal__body .changelog-cal{flex:0 0 auto;overflow:visible}@media(max-width:720px){.changelog-modal__body .changelog-cal:not(.changelog-cal--collapsed){max-height:min(16rem,42vh);overflow:auto}}.changelog-modal__days{display:flex;flex-direction:column;gap:.75rem;flex:1 1 auto;min-height:0;overflow:auto}.changelog-modal__day-date{flex:0 0 auto}.changelog-modal__day-versions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.3rem}.changelog-modal__version-chip.pill{padding:.12rem .5rem;font-size:.72rem;font-weight:800}.changelog-modal__version{padding:.75rem;border:1px solid var(--border);border-radius:.85rem}.changelog-modal__badge{display:inline-flex;padding:.15rem .55rem;border-radius:999px;background:var(--accent-dim);font-weight:800}.changelog-modal__version header{margin-bottom:.55rem}.changelog-modal__version ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.changelog-modal__version li{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.changelog-modal__item-title{font-weight:750;line-height:1.35}.changelog-modal__item-desc{color:var(--text-secondary);line-height:1.4}.changelog-cal{padding:.7rem .8rem;border:1px solid var(--border);border-radius:.95rem}.changelog-cal__toolbar{display:flex;align-items:center;gap:.55rem;margin-bottom:.65rem}.changelog-cal__toolbar>.btn{flex:0 0 auto}.changelog-cal__toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:2.25rem;height:2.25rem;padding:0;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,var(--bg-panel));color:var(--accent);cursor:pointer}.changelog-cal__toggle:hover{background:color-mix(in srgb,var(--accent) 32%,var(--bg-panel));color:var(--accent)}.changelog-cal__chevron{transition:transform .2s ease}@media(prefers-reduced-motion:reduce){.changelog-cal__chevron{transition:none}}.changelog-cal:not(.changelog-cal--collapsed) .changelog-cal__chevron{transform:rotate(180deg)}.changelog-cal--collapsed .changelog-cal__toolbar{margin-bottom:0}.changelog-cal__resume{display:flex;align-items:center;gap:.45rem .65rem;flex:1 1 auto;min-width:0}.changelog-cal__resume-month{flex:0 0 auto;font-weight:750}.changelog-cal__resume-meta{display:inline-flex;align-items:center;gap:.4rem;flex:0 1 auto;min-width:0}.changelog-cal__resume-date{color:var(--text-secondary);white-space:nowrap}.changelog-cal__resume-count.pill{flex:0 0 auto;padding:.12rem .5rem;font-size:.72rem;font-weight:800}.changelog-cal__resume-strip{position:relative;display:flex;align-items:center;gap:.2rem;flex:1 1 auto;min-width:0;overflow:hidden;padding:.15rem 2px}.changelog-cal__resume-probe{position:absolute;visibility:hidden;pointer-events:none}.changelog-cal__resume-strip .changelog-cal__day{flex:0 0 auto}.changelog-cal__range{flex:1;margin:0;text-align:center;font-weight:750;text-transform:capitalize}.changelog-cal__months{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}.changelog-cal__month-title{margin:0 0 .45rem;text-align:center;font-size:.78rem}.changelog-cal__weekdays,.changelog-cal__grid{display:grid;grid-template-columns:repeat(7,1.7rem);justify-content:center;gap:.2rem}.changelog-cal__weekdays{margin-bottom:.28rem;color:var(--text-muted);font-size:.68rem;text-align:center}.changelog-cal__day,.changelog-cal__swatch{display:grid;place-items:center;width:1.7rem;height:1.7rem;border:1px solid transparent;border-radius:.28rem;background:color-mix(in srgb,var(--border) 55%,var(--bg-panel));font-size:.68rem;font-weight:700}.changelog-cal__day:not(:disabled){cursor:pointer}.changelog-cal__day--l1{background:color-mix(in srgb,var(--ok) 28%,var(--bg-panel))}.changelog-cal__day--l2{background:color-mix(in srgb,var(--ok) 48%,var(--bg-panel))}.changelog-cal__day--l3{background:color-mix(in srgb,var(--ok) 72%,var(--bg-panel));color:#fff}.changelog-cal__day--l4{background:var(--ok);color:#fff}.changelog-cal__day.is-selected{outline:2px solid var(--accent)}.changelog-cal__legend{display:flex;justify-content:flex-end;gap:.28rem;margin-top:.65rem;font-size:.7rem}.changelog-cal__swatch{width:.72rem;height:.72rem;aspect-ratio:auto}@media(max-width:720px){.changelog-cal__months{grid-template-columns:1fr}.changelog-cal__resume{flex-wrap:wrap}.changelog-cal__resume-strip{flex:1 0 100%}}@media(min-width:2560px){.changelog-cal__weekdays,.changelog-cal__grid{grid-template-columns:repeat(7,2rem);gap:.28rem}.changelog-cal__day{width:2rem;height:2rem;font-size:.78rem}}.signalr-clients-modal__body{display:flex;flex-direction:column;gap:.85rem;min-height:18rem}.signalr-clients-modal__summary{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.signalr-clients-modal__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.signalr-clients-modal__search{display:flex;flex:1 1 16rem;align-items:center;gap:.45rem;min-width:0;color:var(--text-muted)}.signalr-clients-modal__search .field-control{flex:1 1 auto}.signalr-clients-modal__count{margin:0;color:var(--text-muted);font-size:.8rem;font-weight:650;white-space:nowrap}.signalr-clients-modal__id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;font-weight:650}.signalr-clients-modal__body .data-table-wrap{flex:1 1 auto;min-height:14rem}.hub-log{--hub-log-height: var(--footer-sheet-height, min(32vh, 22rem));position:absolute;left:0;right:0;top:0;bottom:0;overflow:visible;pointer-events:none}.hub-log__scrim{display:none}.hub-log__grip{position:relative;flex:0 0 auto;z-index:9;pointer-events:auto}.hub-log__grip.is-open:after{content:"";position:absolute;left:1px;right:1px;bottom:0;z-index:2;height:2px;background:var(--bg-panel);pointer-events:none}.hub-log__sheet{position:absolute;left:var(--sidebar-current, 0rem);right:0;bottom:100%;z-index:1;display:flex;flex-direction:column;width:auto;height:var(--hub-log-height);overflow:hidden;border:1px solid var(--border);border-bottom:0;background:var(--bg-panel);box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(100%);transition:transform .28s ease,opacity .28s ease,left .28s ease}.hub-log .dock-sheet__head{justify-content:flex-start}.hub-log.is-open .hub-log__sheet{opacity:1;pointer-events:auto;transform:none}.hub-log__scroller{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}.signalr-log__clear{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .8rem;font-size:.8rem}.signalr-log__empty{margin:0;padding:.7rem .95rem}.signalr-log__list{display:flex;flex-direction:column;list-style:none;margin:0;padding:0}.signalr-log__row{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:.45rem .65rem;align-items:center;padding:.38rem .95rem;border-bottom:1px solid var(--border);border-left:3px solid transparent;background:var(--bg-primary)}.signalr-log__row:last-child{border-bottom:none}.signalr-log__row:nth-child(2n){background:var(--row-even)}.signalr-log__row.is-service{border-left-color:var(--cmd-202)}.signalr-log__row.is-platform{border-left-color:var(--cmd-200)}.signalr-log__row.is-door{border-left-color:var(--cmd-110)}.signalr-log__row.is-doorOperation,.signalr-log__row.is-currentService{border-left-color:var(--cmd-expect)}.signalr-log__row.is-passengers{border-left-color:var(--cmd-pax)}.signalr-log__row.is-photo{border-left-color:var(--cmd-204)}.signalr-log__row.is-connection{border-left-color:var(--text-muted)}.signalr-log__row.is-other{border-left-color:var(--cmd-command)}.signalr-log__row:first-child{animation:signalr-log-in .32s ease}.signalr-log__when,.signalr-log__method{flex:0 0 auto;justify-self:start;white-space:nowrap}.signalr-log__method .when-stamp__time{font-family:ui-monospace,Consolas,monospace;font-size:.72rem;font-weight:700;letter-spacing:0}.signalr-log__method.is-service .when-stamp__time{color:var(--cmd-202)}.signalr-log__method.is-platform .when-stamp__time{color:var(--cmd-200)}.signalr-log__method.is-door .when-stamp__time{color:var(--cmd-110)}.signalr-log__method.is-doorOperation .when-stamp__time,.signalr-log__method.is-currentService .when-stamp__time{color:var(--cmd-expect)}.signalr-log__method.is-passengers .when-stamp__time{color:var(--cmd-pax)}.signalr-log__method.is-photo .when-stamp__time{color:var(--cmd-204)}.signalr-log__method.is-connection .when-stamp__time{color:var(--text-secondary)}.signalr-log__message{min-width:0}.signalr-log__message p{display:flex;flex-wrap:wrap;align-items:center;gap:.28rem .4rem;margin:0;font-size:.84rem;line-height:1.35;color:var(--text-primary)}.signalr-log__message .route-info__platform,.signalr-log__message .route-id,.signalr-log__message .service-id{margin:0;flex:0 0 auto}.signalr-log__message .route-info__name{margin:0;flex:1 1 auto;max-width:18rem}.signalr-log__photo{display:inline-flex;flex:0 0 auto;width:4.4rem;height:2.35rem;overflow:hidden;border-radius:.35rem;border:1px solid var(--border);background:var(--bg-elevated);box-shadow:0 1px 2px color-mix(in srgb,#000 12%,transparent)}.signalr-log__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.signalr-log__photo:hover{border-color:var(--cmd-204)}.signalr-log__message .es-plate--static{height:1.45rem;max-width:8.2rem}.signalr-log__subject{font-weight:750}.signalr-log__route{display:inline-flex;align-items:center;gap:.22rem;min-width:0;max-width:20rem}.signalr-log__route-kind{flex:0 0 auto;display:inline-flex;align-items:center;line-height:0}.signalr-log__route-kind svg{width:1.12rem;height:1.12rem}.signalr-log__route-kind.is-entrada{color:var(--route-in)}.signalr-log__route-kind.is-salida{color:var(--route-out)}.signalr-log__verb{color:var(--text-muted);font-weight:500}.signalr-log__value{font-weight:800}.signalr-log__value:not(.estado-servicio):not(.pax-count){color:var(--accent-secondary)}[data-theme=dark] .signalr-log__value:not(.estado-servicio):not(.pax-count){color:var(--accent)}.signalr-log__detail{display:inline;color:var(--text-secondary)}.signalr-log__detail:before{content:"· ";color:var(--text-muted)}@keyframes signalr-log-in{0%{box-shadow:inset 0 0 0 999px color-mix(in srgb,var(--accent) 16%,transparent)}to{box-shadow:none}}@media(prefers-reduced-motion:reduce){.hub-log,.hub-log__sheet,.hub-log__grip{transition:none}.signalr-log__row:first-child{animation:none}}@media(max-width:1100px){.hub-log.is-open .hub-log__scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:7;border:0;padding:0;background:color-mix(in srgb,#001018 42%,transparent);pointer-events:auto;cursor:pointer}.signalr-log__row{grid-template-columns:auto minmax(0,1fr)}.signalr-log__method{grid-column:1/-1}}.seq-log-panel__level-chips{display:flex;flex:0 0 auto;flex-wrap:nowrap;align-items:center;gap:.35rem}.seq-log-panel__level-chip{padding:.12rem .55rem;border:1px solid var(--chip-select-border);border-radius:999px;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.68rem;font-weight:700;opacity:.55;cursor:pointer}.seq-log-panel__level-chip:hover:not(:disabled){opacity:.85}.seq-log-panel__level-chip.is-active{opacity:1}.seq-log-panel__level-chip:disabled{cursor:wait}.seq-log-panel__level-chip--verbose.is-active,.seq-log-panel__level-chip--debug.is-active{border-color:color-mix(in srgb,var(--col-dbg) 55%,var(--border));background:color-mix(in srgb,var(--col-dbg) 22%,transparent);color:var(--col-dbg)}.seq-log-panel__level-chip--information.is-active{border-color:color-mix(in srgb,var(--col-inf) 55%,var(--border));background:color-mix(in srgb,var(--col-inf) 18%,transparent);color:var(--col-inf)}.seq-log-panel__level-chip--warning.is-active{border-color:color-mix(in srgb,var(--col-wrn) 55%,var(--border));background:var(--issues-warning-bg);color:var(--issues-warning-fg)}.seq-log-panel__level-chip--error.is-active{border-color:color-mix(in srgb,var(--col-err) 55%,var(--border));background:var(--danger-soft);color:var(--col-err)}.seq-log-panel__level-chip--fatal.is-active{border-color:color-mix(in srgb,var(--col-ftl) 55%,var(--border));background:color-mix(in srgb,var(--col-ftl) 18%,transparent);color:var(--col-ftl)}@keyframes seq-log-line-fresh{0%{background-color:color-mix(in srgb,var(--accent) 28%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}to{background-color:transparent;box-shadow:none}}.seq-log-line{--seq-log-level-col: 7.5rem;display:grid;grid-template-columns:auto var(--seq-log-level-col) 1fr auto;gap:.35rem .6rem;align-items:baseline;padding:.18rem .75rem;border-left:3px solid transparent}.seq-log-line:not(:last-child){border-bottom:1px solid var(--border)}.seq-log-line__exception-toggle-placeholder{width:0;min-width:0;padding:0;overflow:hidden}.seq-log-line__exception-toggle{display:inline-flex;flex:0 0 auto;align-items:center;gap:.2rem;margin:0;padding:.1rem .4rem;border:1px solid color-mix(in srgb,var(--danger) 45%,var(--border));border-radius:.3rem;background:var(--danger-soft);color:var(--danger);font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.seq-log-line__exception-toggle:hover{border-color:var(--danger);color:var(--text-primary)}.seq-log-line__exception-toggle:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.seq-log-line--exception-expanded{align-items:start}.seq-log-line--fresh{animation:seq-log-line-fresh 2s ease-out forwards}.seq-log-line__time{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.seq-log-line__level{justify-self:stretch;display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;padding:.05rem .35rem;border-radius:.25rem;font-size:.68rem;font-weight:700;letter-spacing:.03em;text-align:center;text-transform:uppercase;white-space:nowrap}.seq-log-line__message{min-width:0;color:var(--text-primary);word-break:break-word}.seq-log-line__search-hit{padding:0 1px;border-radius:2px;color:inherit;background:color-mix(in srgb,var(--col-wrn) 42%,transparent)}.seq-log-line__exception-panel{grid-column:1/-1;margin:.1rem 0 0;max-height:min(240px,40vh);overflow:auto;padding:.5rem .6rem;border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border));border-radius:.4rem;background:var(--danger-soft);color:var(--text-primary);font-family:inherit;font-size:.75rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.seq-log-line__source-hit{padding:0 2px;border-radius:3px;background:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--text-primary);font-weight:700;text-decoration:underline;text-underline-offset:2px}.seq-log-line--verbose,.seq-log-line--debug{opacity:.78}.seq-log-line--verbose .seq-log-line__level,.seq-log-line--debug .seq-log-line__level{color:var(--col-dbg);background:color-mix(in srgb,var(--col-dbg) 16%,transparent)}.seq-log-line--information{border-left-color:color-mix(in srgb,var(--col-inf) 45%,transparent)}.seq-log-line--information .seq-log-line__level{color:var(--col-inf);background:color-mix(in srgb,var(--col-inf) 16%,transparent)}.seq-log-line--warning{border-left-color:var(--col-wrn);background:var(--row-wrn)}.seq-log-line--warning .seq-log-line__level{color:var(--col-wrn);background:var(--issues-warning-bg)}.seq-log-line--error,.seq-log-line--fatal{border-left-color:var(--col-err);background:var(--row-err)}.seq-log-line--error .seq-log-line__level{color:var(--col-err);background:var(--danger-soft)}.seq-log-line--fatal{background:var(--row-ftl, var(--row-err))}.seq-log-line--fatal .seq-log-line__level{color:var(--col-ftl);background:color-mix(in srgb,var(--col-ftl) 18%,transparent)}@media(prefers-reduced-motion:reduce){.seq-log-line--fresh{animation:none}}@media(max-width:480px){.seq-log-line{grid-template-columns:auto 1fr auto}.seq-log-line__level{grid-column:1/-1;justify-content:flex-start;width:auto}}.seq-log-panel__text-filter{display:flex;flex:1 1 10rem;align-items:center;gap:.45rem;min-width:8rem}.seq-log-panel__text-filter-icon{flex:0 0 auto;color:var(--text-secondary)}.seq-log-panel__text-filter-input{flex:1;min-width:0;padding:.28rem .6rem;border:1px solid var(--border);border-radius:.4rem;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;font-size:.8rem}.seq-log-panel__text-filter-input::placeholder{color:var(--text-muted)}.seq-log-panel__text-filter-input:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 2px var(--accent-dim)}.seq-log-panel__text-filter-input:disabled{cursor:not-allowed;opacity:.55}.seq-log-panel__text-filter-clear{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;padding:0;border:0;border-radius:.35rem;background:transparent;color:var(--text-secondary);cursor:pointer}.seq-log-panel__text-filter-clear:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}body.seq-log-panel-body-lock{overflow:hidden}.seq-log{--seq-log-line-height: 22px;--seq-log-font: ui-monospace, "Cascadia Code", Consolas, monospace;position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none}.seq-log__scrim{display:none}.seq-log__grip{position:relative;flex:0 0 auto;z-index:9;pointer-events:auto}.seq-log__grip.is-expanded{display:none}.seq-log__grip.is-open:after{content:"";position:absolute;left:1px;right:1px;bottom:0;z-index:2;height:2px;background:var(--bg-panel);pointer-events:none}.seq-log__sheet{position:absolute;left:var(--sidebar-current, 0rem);right:0;bottom:100%;z-index:1;display:flex;flex-direction:column;width:auto;height:var(--footer-sheet-height, min(32vh, 22rem));overflow:hidden;border:1px solid var(--border);border-bottom:0;background:var(--bg-panel);box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(100%);transition:transform .28s ease,opacity .28s ease,left .28s ease}.seq-log .dock-sheet__head{justify-content:flex-start;flex-wrap:nowrap}.seq-log .dock-sheet__actions{flex:1 1 auto;justify-content:flex-end}.seq-log .dock-sheet__count{flex:0 0 18ch;width:18ch;overflow:hidden;font-variant-numeric:tabular-nums;text-overflow:ellipsis}.seq-log__spinner-slot{display:inline-flex;flex:0 0 1.75rem;align-items:center;justify-content:center;width:1.75rem;height:1.75rem}.seq-log__btns{display:flex;flex:0 0 auto;align-items:center;gap:.45rem}.seq-log.is-open .seq-log__sheet{opacity:1;pointer-events:auto;transform:none}.seq-log.is-expanded .seq-log__sheet{position:fixed;top:0;z-index:40;height:100%;left:0;right:0;bottom:0;border:0;opacity:1;pointer-events:auto;transform:none}.seq-log__spinner{margin:0}.seq-log__icon-btn{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;margin:0;padding:0;border:1px solid var(--border);border-radius:.4rem;background:var(--bg-hover);color:var(--text-secondary);cursor:pointer}.seq-log__icon-btn:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--accent-dim);color:var(--text-primary)}.seq-log__icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.seq-log__filters{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;min-width:0;padding:.45rem .85rem .35rem}.seq-log__body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:0 .85rem .55rem}.seq-log-panel__list{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0;border:1px solid var(--border);border-radius:.4rem;background:var(--bg-primary);font-family:var(--seq-log-font);font-size:.8rem;line-height:var(--seq-log-line-height)}.seq-log-panel__empty{margin:0;padding:.55rem .75rem;color:var(--text-secondary);font-style:italic}.seq-log-panel__filter-foot{display:flex;flex:0 0 auto;flex-direction:column;gap:.25rem;margin-top:.4rem;padding:.35rem .5rem;border:1px solid var(--border);border-radius:.4rem;background:var(--bg-secondary)}.seq-log-panel__filter-row{display:flex;align-items:flex-start;gap:.5rem;min-width:0}.seq-log-panel__filter-label{flex:0 0 auto;padding-top:.1rem;color:var(--text-secondary);font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.seq-log-panel__filter-row--local .seq-log-panel__filter-label{color:var(--ok)}.seq-log-panel__filter-value{flex:1;min-width:0;margin:0;color:var(--text-primary);font-family:var(--seq-log-font);font-size:.68rem;line-height:1.35;white-space:pre-wrap;word-break:break-word}@media(prefers-reduced-motion:reduce){.seq-log__sheet,.seq-log__grip{transition:none}}@media(max-width:1100px){.seq-log.is-open:not(.is-expanded) .seq-log__scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:7;border:0;padding:0;background:color-mix(in srgb,var(--bg-primary) 42%,transparent);pointer-events:auto;cursor:pointer}}.hub-banner{display:flex;align-items:center;gap:.65rem;padding:.55rem 1rem;background:var(--danger-soft);color:var(--danger);font-weight:750;transform-origin:top center;transition:background .45s ease,color .45s ease}.hub-banner.is-restored{background:var(--ok-soft);color:var(--ok)}.hub-banner.is-hiding{animation:hub-banner-exit .28s ease forwards}.hub-banner__icon{display:grid;place-items:center;flex:0 0 auto;perspective:28rem}.hub-banner__spin{display:grid;place-items:center}.hub-banner.is-restored .hub-banner__spin{animation:hub-banner-icon-turn .7s ease-in-out forwards}.hub-banner__glyph{grid-area:1/1;display:grid;place-items:center;line-height:0}.hub-banner__glyph--ok{opacity:0}.hub-banner.is-restored .hub-banner__glyph--lost{animation:hub-banner-glyph-lost .7s linear forwards}.hub-banner.is-restored .hub-banner__glyph--ok{animation:hub-banner-glyph-ok .7s linear forwards}.hub-banner__text{min-width:0}@keyframes hub-banner-icon-turn{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}@keyframes hub-banner-glyph-lost{0%,49.9%{opacity:1}50%,to{opacity:0}}@keyframes hub-banner-glyph-ok{0%,49.9%{opacity:0}50%,to{opacity:1}}@keyframes hub-banner-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-.45rem)}}@media(prefers-reduced-motion:reduce){.hub-banner,.hub-banner.is-hiding,.hub-banner.is-restored .hub-banner__spin,.hub-banner.is-restored .hub-banner__glyph--lost,.hub-banner.is-restored .hub-banner__glyph--ok{animation:none;transition:none}.hub-banner.is-restored .hub-banner__glyph--lost{opacity:0}.hub-banner.is-restored .hub-banner__glyph--ok{opacity:1}.hub-banner.is-hiding{opacity:0}}.workspace-tabs-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:.65rem 1rem;flex:0 0 auto;min-width:0;margin-bottom:.85rem}.workspace-tabs-bar .workspace-tabs{flex:1 1 auto;min-width:0}@media(max-width:480px){.workspace-tabs-bar{flex-wrap:wrap}}.view-widget-toggles{display:flex;flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;min-width:0}.view-widget-toggles__btn{min-height:2.25rem;padding:.35rem .75rem;font-size:.78rem}.view-widget-toggles__btn.is-on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:var(--accent-dim)}@media(max-width:480px){.view-widget-toggles{justify-content:flex-start;width:100%}}.demo-speaker{position:fixed;z-index:40;right:1rem;bottom:2.6rem;max-width:min(28rem,100vw - 2rem);margin:0;padding:.45rem .75rem;border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow);font-size:.85rem}.change-password-modal__lead{margin:0 0 .35rem;color:var(--text-muted);font-size:.85rem;line-height:1.4}.change-password-modal .form-section--panel .form-grid{margin-top:.35rem}.dashboard-page{display:flex;flex-direction:column;height:100%;min-height:0;min-width:0;padding:.35rem .6rem .6rem}html[data-size=xl] .dashboard-page{padding:.55rem .85rem .85rem}.dashboard-page--loading,.dashboard-page__empty{display:grid;place-items:center;height:100%;color:var(--text-muted)}.dashboard-page__grid{--dash-cols: 2;--dash-rows: 2;--dash-cap: var(--dash-cols);--dash-min-col: 18rem;--dash-gap: .55rem;--dash-fit: min(var(--dash-cols), var(--dash-cap));--dash-track: max( var(--dash-min-col), calc((100% - (var(--dash-fit) - 1) * var(--dash-gap)) / var(--dash-fit)) );flex:1;min-height:0;display:grid;gap:var(--dash-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--dash-track)),1fr));grid-auto-rows:minmax(14rem,1fr);overflow:auto}html[data-size=s] .dashboard-page__grid{--dash-cap: 1;--dash-min-col: 100%}html[data-size=m] .dashboard-page__grid{--dash-cap: 2;--dash-min-col: 16rem}html[data-size=xl] .dashboard-page__grid{--dash-gap: .8rem;grid-template-columns:repeat(var(--dash-cols),minmax(0,1fr));grid-template-rows:repeat(var(--dash-rows),minmax(0,1fr));grid-auto-rows:minmax(0,1fr);overflow:hidden}@media(orientation:portrait){html[data-device=mobile] .dashboard-page__grid,html[data-device=tablet] .dashboard-page__grid{display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}html[data-device=mobile] .dashboard-page__grid>.dashboard-panel,html[data-device=mobile] .dashboard-page__grid>.dashboard-panel-skel,html[data-device=tablet] .dashboard-page__grid>.dashboard-panel,html[data-device=tablet] .dashboard-page__grid>.dashboard-panel-skel{height:auto;min-height:18rem;flex:0 0 auto}}html[data-device=desktop-portrait][data-size=m] .dashboard-page__grid,html[data-device=desktop-portrait][data-size=l] .dashboard-page__grid{display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}html[data-device=desktop-portrait][data-size=m] .dashboard-page__grid>.dashboard-panel,html[data-device=desktop-portrait][data-size=m] .dashboard-page__grid>.dashboard-panel-skel,html[data-device=desktop-portrait][data-size=l] .dashboard-page__grid>.dashboard-panel,html[data-device=desktop-portrait][data-size=l] .dashboard-page__grid>.dashboard-panel-skel{height:auto;min-height:18rem;flex:0 0 auto}.dashboard-page__chrome-skel{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.35rem 0 .55rem}.dashboard-page__chrome-skel-tabs{display:flex;flex:1;min-width:0;gap:.35rem;align-items:center}.dashboard-page__tab-skel{width:8.2rem;height:2.15rem;border-radius:999px}.dashboard-page__tab-skel--short{width:6.1rem}.dashboard-chrome{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.35rem 0 .55rem}.dashboard-chrome__tabs{display:flex;flex:1;min-width:0;gap:.35rem;overflow-x:auto;align-items:center}.dashboard-chrome__tab{display:flex;align-items:center;gap:.05rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-card);flex-shrink:0;padding-right:.28rem}.dashboard-chrome__tab.is-active{border-color:var(--tab-accent);box-shadow:inset 0 -2px 0 var(--tab-accent)}.dashboard-chrome__tab-main{display:flex;align-items:center;gap:.4rem;border:0;background:transparent;color:inherit;padding:.32rem .15rem .32rem .55rem;cursor:pointer}.dashboard-chrome__swatch{width:.7rem;height:.7rem;border-radius:999px;background:var(--tab-accent)}.dashboard-chrome__name{font-size:.86rem;font-weight:600}.dashboard-chrome__action{display:inline-flex;align-items:center;justify-content:center;width:1.45rem;height:1.45rem;padding:0;border:0;border-radius:0;background:transparent;color:var(--text-muted);cursor:pointer}.dashboard-chrome__action:hover,.dashboard-chrome__action:focus-visible{color:var(--accent)}.dashboard-chrome__action--danger:hover,.dashboard-chrome__action--danger:focus-visible{color:var(--danger)}.dashboard-chrome__add{flex-shrink:0}.dashboard-chrome__carousel{display:flex;align-items:center;gap:.55rem;margin-left:auto;flex-shrink:0}html[data-size=s] .dashboard-chrome,html[data-size=m] .dashboard-chrome{flex-wrap:wrap;row-gap:.45rem}html[data-size=s] .dashboard-chrome__carousel,html[data-size=m] .dashboard-chrome__carousel{flex:1 0 100%;margin-left:0}.dashboard-chrome__seconds{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-muted)}.dashboard-chrome__seconds input{width:7rem}.dashboard-wizard__grids{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.dashboard-wizard__grid{display:flex;flex-direction:column;gap:.4rem;align-items:center;padding:.55rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text-primary);cursor:pointer}.dashboard-wizard__grid.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.dashboard-wizard__preview{display:grid;width:100%;aspect-ratio:4/3;gap:3px}@media(orientation:landscape)and (max-height:900px){.dashboard-wizard__grids{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-wizard__preview{aspect-ratio:16/9}}.dashboard-wizard__preview span{background:var(--muted-bg, color-mix(in srgb, var(--accent) 18%, transparent));border-radius:2px}.dashboard-wizard__colors{display:flex;flex-wrap:wrap;gap:.4rem}.dashboard-wizard__swatch{width:1.55rem;height:1.55rem;border-radius:999px;border:2px solid transparent;background:var(--tab-accent);cursor:pointer}.dashboard-wizard__swatch.is-active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-card),0 0 0 4px var(--tab-accent)}.dashboard-type{display:flex;flex-direction:column;gap:1rem}.dashboard-type__catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.dashboard-type__card{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.7rem .4rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text-primary);cursor:pointer;text-align:center;font-size:.82rem}.dashboard-type__card.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.dashboard-type__checks{display:flex;flex-wrap:wrap;gap:.75rem}.dashboard-type__langs{display:flex;align-items:center;gap:.55rem}.dashboard-type__flag-btn{display:inline-flex;padding:.12rem;border:0;border-radius:4px;background:transparent;cursor:pointer;opacity:.28;transition:opacity .15s ease}.dashboard-type__flag-btn.is-active{opacity:1}.dashboard-type__flag-btn:hover,.dashboard-type__flag-btn:focus-visible{opacity:.75}.dashboard-type__flag-btn.is-active:hover,.dashboard-type__flag-btn.is-active:focus-visible{opacity:1}@media(prefers-reduced-motion:reduce){.dashboard-type__flag-btn{transition:none}}.dashboard-type__flag-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dashboard-type__flag{display:block;width:2rem;height:1.4rem;border-radius:3px;box-shadow:0 0 0 1px var(--border);pointer-events:none}.dashboard-type__door-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.55rem}.dashboard-type__door-actions .btn.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.dashboard-type .form-grid{margin:0}.dashboard-type__slider{width:100%}.dashboard-type__slider input[type=range]{display:block;width:100%;height:1.35rem;margin:0;accent-color:var(--accent);cursor:pointer}.dashboard-type__scale{position:relative;height:1.35rem;margin-top:.15rem}.dashboard-type__tick{position:absolute;top:0;transform:translate(-50%);font-size:.68rem;color:var(--text-muted);white-space:nowrap}.dashboard-type__tick:first-child{transform:translate(0)}.dashboard-type__tick:last-child{transform:translate(-100%)}.ui-checkbox{position:relative;display:inline-flex;align-items:center;gap:.55rem;min-height:2.25rem;margin:0;color:inherit;font-size:.85rem;font-weight:650;cursor:pointer;-webkit-user-select:none;user-select:none}.ui-checkbox--sm{min-height:1.7rem;gap:.4rem;font-size:.82rem;font-weight:600}.ui-checkbox input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;margin:0;padding:0;border:0;opacity:0;cursor:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ui-checkbox__box{display:grid;flex:0 0 auto;place-items:center;width:1.2rem;height:1.2rem;border:1.5px solid var(--border);border-radius:.35rem;background:var(--bg-card);color:var(--bg-elevated);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.ui-checkbox--sm .ui-checkbox__box{width:1.05rem;height:1.05rem;border-radius:.3rem}.ui-checkbox__icon{opacity:0;transform:scale(.65);transition:opacity .15s ease,transform .15s ease}.ui-checkbox:hover:not(.is-disabled) .ui-checkbox__box{border-color:var(--checkbox-accent, var(--accent));background:var(--bg-hover)}.ui-checkbox:has(input:checked) .ui-checkbox__box,.ui-checkbox.is-indeterminate .ui-checkbox__box{border-color:var(--checkbox-accent, var(--accent));background:var(--checkbox-accent, var(--accent))}.ui-checkbox:has(input:checked) .ui-checkbox__icon,.ui-checkbox.is-indeterminate .ui-checkbox__icon{opacity:1;transform:scale(1)}.ui-checkbox:has(input:focus-visible) .ui-checkbox__box{box-shadow:0 0 0 3px var(--checkbox-accent-dim, var(--accent-dim))}.ui-checkbox.is-disabled{opacity:.55;cursor:not-allowed}@media(prefers-reduced-motion:reduce){.ui-checkbox__box,.ui-checkbox__icon{transition:none}}.dashboard-panel{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:opacity .16s ease}.dashboard-page__grid:has(.dashboard-panel.is-dragging) .dashboard-panel:not(.is-drop-target){opacity:.38}.dashboard-panel.is-dragging{border-style:dashed;border-color:color-mix(in srgb,var(--border) 70%,var(--text-muted));background:color-mix(in srgb,var(--bg-card) 55%,transparent)}.dashboard-panel.is-dragging .dashboard-panel__header,.dashboard-panel.is-dragging .dashboard-panel__body,.dashboard-panel.is-dragging .dashboard-panel__add{opacity:.22}.dashboard-panel.is-drop-target{opacity:1;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 42%,transparent)}.dashboard-panel__drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;border:2px dashed var(--accent);border-radius:inherit;background:color-mix(in srgb,var(--accent) 12%,transparent)}.dashboard-panel__header{position:relative;display:flex;align-items:center;gap:.2rem;padding:.15rem .25rem .15rem .1rem;border-bottom:1px solid var(--border);flex-shrink:0;overflow:hidden}html[data-size=xl] .dashboard-panel__header{padding:.35rem .5rem .35rem .2rem}.dashboard-panel__rotation{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:color-mix(in srgb,var(--accent) 14%,var(--bg-card));opacity:.55;transform-origin:left;animation:dashboard-panel-rotation linear infinite;animation-duration:var(--rotation-duration, 0s);pointer-events:none}@keyframes dashboard-panel-rotation{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.dashboard-panel__grip,.dashboard-panel__grip-spacer,.dashboard-panel__title,.dashboard-panel__header .btn{position:relative;z-index:1}.dashboard-panel__grip,.dashboard-panel__grip-spacer{width:1.6rem;height:1.6rem;display:grid;place-items:center;border:0;background:transparent;color:var(--text-muted);cursor:grab}.dashboard-panel.is-dragging .dashboard-panel__grip{cursor:grabbing}.dashboard-panel__title{flex:1;margin:0;font-size:.82rem;font-weight:650;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-panel__title-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-panel.is-maximized .dashboard-panel__title-text{visibility:hidden}.dashboard-panel__esc-hint{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;font-size:.78rem;font-weight:600;color:var(--text-muted);background:color-mix(in srgb,var(--bg-card) 88%,transparent)}.dashboard-panel__body{flex:1;min-height:0;display:flex;overflow:hidden}.dashboard-panel__body>*{flex:1;min-width:0;min-height:0;width:100%}.dashboard-panel--empty{transition:opacity .16s ease,border-color .28s ease,background-color .28s ease,box-shadow .28s ease}.dashboard-page__grid:has(.dashboard-panel.is-dragging) .dashboard-panel--empty:hover:not(.is-drop-target),.dashboard-page__grid:has(.dashboard-panel.is-dragging) .dashboard-panel--empty:focus-within:not(.is-drop-target){border-color:var(--border);background:var(--bg-card);box-shadow:none}.dashboard-panel--empty:hover:not(.is-drop-target),.dashboard-panel--empty:focus-within:not(.is-drop-target){border-color:color-mix(in srgb,var(--accent) 52%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--bg-card));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 24%,transparent)}.dashboard-panel__add{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;border:0;background:transparent;color:var(--text-muted);cursor:pointer;font:inherit;font-size:.88rem;font-weight:600;transition:color .28s ease}.dashboard-panel__add:focus-visible{outline:none}.dashboard-panel--empty:hover .dashboard-panel__add,.dashboard-panel--empty:focus-within .dashboard-panel__add{color:var(--accent)}.dashboard-panel__add svg{transition:transform .28s ease}.dashboard-panel--empty:hover .dashboard-panel__add svg,.dashboard-panel--empty:focus-within .dashboard-panel__add svg{transform:scale(1.14)}@media(prefers-reduced-motion:reduce){.dashboard-panel,.dashboard-panel--empty,.dashboard-panel__add,.dashboard-panel__add svg{transition:none}.dashboard-panel--empty:hover .dashboard-panel__add svg,.dashboard-panel--empty:focus-within .dashboard-panel__add svg{transform:none}}.dashboard-panel-silhouette{display:flex;flex-direction:column;border:2px dashed var(--accent);border-radius:12px;background:color-mix(in srgb,var(--bg-card) 78%,transparent);box-shadow:0 16px 32px color-mix(in srgb,#000 32%,transparent);cursor:grabbing;overflow:hidden}.dashboard-panel-silhouette__header{flex-shrink:0;padding:.35rem .7rem;border-bottom:1px dashed color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--bg-card))}.dashboard-panel-silhouette__title{font-size:.82rem;font-weight:650;color:var(--text)}.dashboard-panel-silhouette__body{flex:1;background:color-mix(in srgb,var(--accent) 6%,transparent)}.dashboard-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:0}.app-shell__maximize .dashboard-panel-overlay{position:absolute;z-index:1}.dashboard-panel-overlay .dashboard-panel{position:relative;z-index:1;width:100%;height:100%;max-width:none;max-height:none;border-radius:0}.dashboard-panel-overlay__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:color-mix(in srgb,var(--bg-panel) 35%,#000 55%);cursor:pointer}.dashboard-panel-skel{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden}.dashboard-panel-skel--body{border:0;border-radius:0;background:transparent}.dashboard-panel-skel__header{display:flex;align-items:center;gap:.45rem;flex-shrink:0;padding:.35rem .45rem;border-bottom:1px solid var(--border)}.dashboard-panel-skel__title{flex:1;height:.72rem;max-width:7.5rem}.dashboard-panel-skel__body{display:flex;flex:1;flex-direction:column;gap:.55rem;min-height:0;padding:.75rem .85rem}.dashboard-panel-skel__block{flex:1 1 auto;min-height:3.2rem;border-radius:.7rem}.dashboard-panel-skel__line{flex:0 0 auto;width:72%;height:.7rem}.dashboard-panel-skel__line--short{width:44%}@media(prefers-reduced-motion:reduce){.dashboard-panel-skel .dock-skeleton{animation:none}}.dashboard-empty{margin:auto;padding:.75rem;color:var(--text-muted);text-align:center}.darsena-dash{box-sizing:border-box;container-type:size;display:grid;place-items:center;width:100%;height:100%;min-width:0;min-height:0;padding-block:.45rem;overflow:hidden}.darsena-dash__stage{position:relative;aspect-ratio:16/9;width:min(100cqw,177.7777777778cqh);height:auto;border-radius:var(--radius);overflow:hidden;background:transparent}.darsena-dash .darsena-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:transparent}.darsena-dash .darsena-info--embed{position:absolute;left:50%;top:50%;width:1920px;height:1080px;--kiosk-vw: 19.2px;--kiosk-vh: 10.8px;--kiosk-u: 1px;transform:translate(-50%,-50%) scale(var(--darsena-scale, 1));transform-origin:center center}.darsena-info{--kiosk-w: 1920;--kiosk-h: 1080;--kiosk-vw: 1vw;--kiosk-vh: 1vh;--kiosk-u: min(100vw / 1920, 100vh / 1080);--color-primary-1: #7e2760;--color-primary-2: #27477e;--color-dest: #f3eee7;--color-service-time: #e2ddd8;--color-platform-label: #d8c8cf;--color-platform-num: #cec6cd;--color-next-departure: #e5d3dc;--color-door-time: #f4d35e;--color-access-bar-text: #fff8f2;--color-brand-kicker: #29445d;--color-brand-city: #7c334d;--color-legal-text: #d6ced0;--shadow-burgundy: #3a1e2b;--shadow-text: 2px 2px 5px rgba(58, 30, 43, .72), 0 2px 10px rgba(58, 30, 43, .45);--shadow-text-ui: 2px 2px 5px rgba(58, 30, 43, .68), 0 1px 8px rgba(58, 30, 43, .42);--shadow-text-hero: 3px 3px 8px rgba(58, 30, 43, .78), 0 4px 16px rgba(58, 30, 43, .5);--color-text-darsena: var(--color-platform-label);--color-text: var(--color-dest);--color-comment: #d1de23;--color-access-ok: rgb(0 150 0 / 70%);--color-access-deny: rgb(255 25 25 / 70%);--color-legal-bg: rgb(58 30 43 / 55%);--color-blur: rgb(243 238 231 / 8%);--color-info-bg: rgb(243 238 231 / 14%);--font-ui: Calibri, "Segoe UI", sans-serif;--font-display: Verdana, Geneva, sans-serif;--letter-spacing: .08em}.darsena-info[data-kiosk-variant="2"]{--color-navy: #1a365d;--color-maroon: #8a1e32;--color-maroon-bright: #a31f38;--color-bar-mid: #cfd3d8;--color-card: #fff;--color-text: #1a365d;--color-text-darsena: #fff;--color-ink: #1a365d;--color-access-ok: #148a3a;--color-access-deny: #8a1e32;--color-legal-bg: transparent;--color-blur: transparent;--color-info-bg: transparent;--color-comment: #8a1e32;--color-door-time: #f2d25b;--color-dest: var(--color-primary-1);--color-service-time: color-mix(in srgb, var(--color-primary-1) 76%, #fff);--letter-spacing: .04em;color:var(--color-ink);background-color:#d7e4ee;background-image:var(--kiosk-fondo);background-position:top center;background-size:cover;background-repeat:no-repeat;overflow:visible;isolation:isolate}.darsena-info[data-kiosk-variant="2"]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background-image:var(--kiosk-fondo);background-position:top center;background-size:cover;background-repeat:no-repeat}.darsena-info[data-kiosk-variant="2"] .darsena-info__brand,.darsena-info[data-kiosk-variant="2"] .darsena-info__bar,.darsena-info[data-kiosk-variant="2"] .darsena-info__bar-left,.darsena-info[data-kiosk-variant="2"] .darsena-info__bar-mid,.darsena-info[data-kiosk-variant="2"] .darsena-info__bar-right,.darsena-info[data-kiosk-variant="2"] .darsena-info__card{display:flex}.darsena-info[data-kiosk-variant="2"] .darsena-info__top{flex:0 0 auto;min-height:0;display:flex;flex-direction:column}.darsena-info[data-kiosk-variant="2"] .darsena-info__brand{position:relative;top:auto;left:auto;right:auto;flex-direction:row;align-items:center;justify-content:space-between;min-height:calc(16 * var(--kiosk-vh));text-align:center}.darsena-info[data-kiosk-variant="2"] .darsena-info__bar{position:relative;width:100%;height:calc(13 * var(--kiosk-vh));min-height:calc(13 * var(--kiosk-vh));margin-top:calc(2.2 * var(--kiosk-vh));overflow:hidden;box-shadow:0 8px 22px #1a365d47}.darsena-info[data-kiosk-variant="2"] .darsena-info__bar-left{flex:0 0 15%;min-width:0;flex-direction:column;justify-content:center;gap:calc(.4 * var(--kiosk-vh));padding:calc(.8 * var(--kiosk-vh)) calc(1.1 * var(--kiosk-vw))}.darsena-info[data-kiosk-variant="2"] .darsena-info__bar-mid{flex:1 1 auto;align-items:center;justify-content:center;z-index:2;overflow:visible}.darsena-info[data-kiosk-variant="2"] .darsena-info__bar-right{flex:0 0 22%;align-items:center;justify-content:center;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%);padding-left:calc(8 * var(--kiosk-vw))}.darsena-info[data-kiosk-variant="2"] .darsena-info__next,.darsena-info[data-kiosk-variant="2"] .darsena-info__logo-slot,.darsena-info[data-kiosk-variant="2"] .darsena-info__platform-label,.darsena-info[data-kiosk-variant="2"] .darsena-info__platform-num{position:static;left:auto;right:auto;top:auto;z-index:1}.darsena-info[data-kiosk-variant="2"] .darsena-info__next{font-size:calc(2.1 * var(--kiosk-vh));font-weight:600;color:#fff;letter-spacing:.03em;max-width:100%;overflow:hidden;text-overflow:ellipsis}.darsena-info[data-kiosk-variant="2"] .darsena-info__logo-slot{height:auto;flex:1 1 auto;min-width:0;min-height:0;max-width:100%;filter:none}.darsena-info[data-kiosk-variant="2"] .darsena-info__logo-text{font-size:calc(3.6 * var(--kiosk-vh));line-height:1.05;color:#fff;white-space:wrap;overflow:hidden}.darsena-info[data-kiosk-variant="2"] .darsena-info__platform-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;width:max-content;max-width:calc(52 * var(--kiosk-vw));margin:0;font-size:calc(5 * var(--kiosk-vh));font-weight:500;line-height:1;text-align:center;text-transform:uppercase;white-space:nowrap;color:color-mix(in srgb,var(--color-navy) 88%,transparent);letter-spacing:.06em;padding:0 0 calc(.55 * var(--kiosk-vh)) .06em}.darsena-info[data-kiosk-variant="2"] .darsena-info__platform-label:after{content:"";position:absolute;left:50%;right:auto;bottom:0;width:calc(75 * var(--kiosk-vw));height:calc(.35 * var(--kiosk-vh));border-radius:999px;background:#ffffffac;transform:translate(-50%);pointer-events:none}.darsena-info[data-kiosk-variant="2"] .darsena-info__platform-num{font-size:calc(14.2 * var(--kiosk-vh));line-height:1;color:#fff;font-weight:800}.darsena-info[data-kiosk-variant="2"] .darsena-info__stage{overflow:visible}.darsena-info[data-kiosk-variant="2"] .darsena-info__mid{padding:calc(1 * var(--kiosk-vh)) calc(2 * var(--kiosk-vw)) 0;flex:0 0 auto}.darsena-info[data-kiosk-variant="2"] .darsena-info__card{position:relative;flex:1 1 auto;flex-direction:column;align-items:center;justify-content:center;width:95%;min-height:calc(34 * var(--kiosk-vh));padding:calc(1.2 * var(--kiosk-vh)) calc(2 * var(--kiosk-vw));gap:calc(.35 * var(--kiosk-vh));overflow:hidden;background:color-mix(in srgb,var(--color-card) 115%,transparent);backdrop-filter:blur(10px) saturate(1.4);-webkit-backdrop-filter:blur(22px) saturate(1.4);border:1px solid color-mix(in srgb,var(--color-card) 42%,transparent);border-radius:1.35rem;box-shadow:0 10px 28px color-mix(in srgb,var(--color-navy) 18%,transparent),inset 0 1px color-mix(in srgb,var(--color-card) 72%,transparent)}.darsena-info[data-kiosk-variant="2"] .darsena-info__marquee,.darsena-info[data-kiosk-variant="2"] .darsena-info__dest-wrap,.darsena-info[data-kiosk-variant="2"] .darsena-info__dest,.darsena-info[data-kiosk-variant="2"] .darsena-info__time{position:relative;z-index:1}.darsena-info[data-kiosk-variant="2"] .darsena-info__marquee{width:auto;height:auto;overflow:visible;justify-content:center;margin:calc(1.2 * var(--kiosk-vh)) 0 0;background:transparent}.darsena-info[data-kiosk-variant="2"] .darsena-info__marquee-text{animation:none;transform:none;white-space:normal;text-align:center;color:var(--color-maroon);font-size:calc(3 * var(--kiosk-vh));letter-spacing:.12em;border-bottom:calc(.25 * var(--kiosk-vh)) solid var(--color-maroon);padding:0 calc(1.2 * var(--kiosk-vw)) calc(.5 * var(--kiosk-vh))}.darsena-info[data-kiosk-variant="2"] .darsena-info__dest-wrap{width:100%;min-height:0;flex:0 0 auto}.darsena-info[data-kiosk-variant="2"] .darsena-info__dest-blur{display:none}.darsena-info[data-kiosk-variant="2"] .darsena-info__dest{color:var(--color-dest);font-size:clamp(56 * var(--kiosk-u),8.4 * var(--kiosk-vw),128 * var(--kiosk-u));font-weight:800}.darsena-info[data-kiosk-variant="2"] .darsena-info__time{color:var(--color-service-time);font-size:clamp(48 * var(--kiosk-u),6.4 * var(--kiosk-vw),96 * var(--kiosk-u));margin:calc(.15 * var(--kiosk-vh)) 0 calc(1.2 * var(--kiosk-vh));padding:0}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-row{position:relative;display:grid;grid-template-areas:"access-stack";place-items:center stretch;overflow:visible;z-index:2;width:auto;margin:calc(2.4 * var(--kiosk-vh)) calc(5 * var(--kiosk-vw)) calc(9.6 * var(--kiosk-vh));padding:calc(1.1 * var(--kiosk-vh)) calc(11 * var(--kiosk-vh));gap:0;background:var(--color-access-deny);border-radius:5rem}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-row--ok{background:var(--color-access-ok)}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-icon{grid-area:access-stack;position:relative;z-index:3;width:auto;height:calc(14 * var(--kiosk-vh));max-width:none;object-fit:contain;filter:none;pointer-events:none;align-self:center}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-icon.left{justify-self:start;transform:translate(38%)}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-icon.right{justify-self:end;transform:translate(-38%) scaleX(-1)}.darsena-info[data-kiosk-variant="2"] .darsena-info__access,.darsena-info[data-kiosk-variant="2"] .darsena-info__access--ok{grid-area:access-stack;z-index:1;width:100%;height:auto;min-height:calc(6 * var(--kiosk-vh));padding:0 calc(2 * var(--kiosk-vh));border:none;box-shadow:none;border-radius:0;background:transparent;box-sizing:border-box}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-text{color:#fff;font-size:clamp(28 * var(--kiosk-u),3.5 * var(--kiosk-vw),54 * var(--kiosk-u))}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-time{color:var(--color-door-time);font-weight:800;font-size:1.32em}.darsena-info[data-kiosk-variant="2"] .darsena-info__foot{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:center;justify-content:flex-end;min-height:calc(5.6 * var(--kiosk-vh));width:auto;padding:0;gap:0;overflow:hidden;background:transparent;color:var(--color-navy)}.darsena-info[data-kiosk-variant="2"] .kiosk-powered{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;transform:none}.darsena-info[data-kiosk-variant="2"] .darsena-info__legal{position:absolute;left:50%;top:50%;z-index:0;display:block;flex:none;width:70%;max-width:calc(72 * var(--kiosk-vw));margin:0;transform:translate(-50%,-50%);text-align:center;font-size:clamp(14 * var(--kiosk-u),1.2 * var(--kiosk-vw),22 * var(--kiosk-u));font-weight:600;line-height:1.3;color:var(--color-navy)}.darsena-info[data-kiosk-variant="2"] .darsena-info__skeleton-bar{background:linear-gradient(90deg,#1a365d 0,#1a365d 28%,#cfd3d8 28%,#cfd3d8 78%,#8a1e32 78%,#8a1e32)}@media(max-width:900px),(orientation:portrait){.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__top{display:flex;padding:1.2rem .8rem 0}.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__bar{height:auto;min-height:calc(14 * var(--kiosk-vh));flex-wrap:wrap;clip-path:none;border-radius:.6rem}.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__bar-left,.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__bar-right{flex:1 1 40%;clip-path:none}.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__bar-mid{flex:1 1 100%;order:-1;min-height:calc(5 * var(--kiosk-vh));position:relative}.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__platform-label{position:relative;left:auto;top:auto;transform:none;width:100%;max-width:100%;text-align:center}.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__foot{position:relative;left:auto;right:auto;bottom:auto;justify-content:center}.darsena-info:not(.darsena-info--embed)[data-kiosk-variant="2"] .darsena-info__access-row{flex-wrap:nowrap}}.darsena-info{position:relative;width:calc(100 * var(--kiosk-vw));height:calc(100 * var(--kiosk-vh));overflow:hidden;margin:0;color:var(--color-text);font-family:var(--font-ui);font-weight:700;letter-spacing:var(--letter-spacing);text-shadow:var(--shadow-text);background:#111 center/cover no-repeat;display:flex;flex-direction:column;--bg-primary: #111;--accent: #fff;--text-secondary: #eee;--border: #444}.darsena-info__stage{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}.darsena-info__top{position:relative;flex:0 0 calc(32 * var(--kiosk-vh));min-height:calc(32 * var(--kiosk-vh));overflow:visible}.darsena-info__bar,.darsena-info__bar-left,.darsena-info__bar-mid,.darsena-info__bar-right{display:contents}.darsena-info__brand{position:absolute;top:calc(.8 * var(--kiosk-vh));left:calc(1.2 * var(--kiosk-vw));right:calc(1.2 * var(--kiosk-vw));display:flex;align-items:flex-start;pointer-events:none}.darsena-info__card{display:contents}.darsena-info__next{position:absolute;top:calc(15 * var(--kiosk-vh));left:calc(.5 * var(--kiosk-vw));z-index:2;font-size:calc(4.44 * var(--kiosk-vh));color:var(--color-next-departure);text-shadow:var(--shadow-text-ui);white-space:nowrap}.darsena-info__logo-slot{position:absolute;top:calc(20.2 * var(--kiosk-vh));left:calc(.5 * var(--kiosk-vw));height:calc(10 * var(--kiosk-vh));max-width:calc(40 * var(--kiosk-vw));z-index:2;display:flex;align-items:center;text-align:left;filter:drop-shadow(2px 2px 1px white)}.darsena-info__logo{height:100%;width:auto;max-width:100%;object-fit:contain;object-position:left center}.darsena-info__logo-text{font-family:var(--font-display);font-size:calc(6 * var(--kiosk-vh));line-height:calc(8 * var(--kiosk-vh));text-transform:uppercase;text-wrap:wrap;text-align:center;color:var(--color-dest);text-shadow:var(--shadow-text)}.darsena-info__platform-label{position:absolute;top:calc(16 * var(--kiosk-vh));right:calc(35.1 * var(--kiosk-vw));z-index:2;font-size:calc(9 * var(--kiosk-vh));line-height:1;text-transform:uppercase;text-align:right;color:var(--color-platform-label);text-shadow:var(--shadow-text-ui);white-space:wrap}.darsena-info__platform-num{position:absolute;top:calc(13 * var(--kiosk-vh));left:calc(84 * var(--kiosk-vw));z-index:2;font-family:var(--font-display);font-size:calc(20 * var(--kiosk-vh));line-height:1;text-transform:uppercase;color:var(--color-platform-num);text-shadow:var(--shadow-text-ui)}.darsena-info__mid{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:0;position:relative;padding-top:0}.darsena-info__dest-wrap{position:relative;width:100%;text-align:center;min-height:calc(28 * var(--kiosk-vh));display:flex;align-items:center;justify-content:center}.darsena-info__dest-blur{position:absolute;top:10%;right:0;bottom:10%;left:0;background:var(--color-blur);filter:blur(10px);pointer-events:none}.darsena-info__dest{position:relative;font-family:var(--font-display);font-size:clamp(48 * var(--kiosk-u),12 * var(--kiosk-vw),140 * var(--kiosk-u));text-transform:uppercase;line-height:1.1;padding:calc(8 * var(--kiosk-u)) calc(16 * var(--kiosk-u));color:var(--color-dest);text-shadow:var(--shadow-text-hero)}.darsena-info__time{font-family:var(--font-display);font-size:calc(96 * var(--kiosk-u));line-height:1;margin-top:calc(12 * var(--kiosk-u));color:var(--color-service-time);text-shadow:var(--shadow-text-hero)}.darsena-info__marquee{overflow:hidden;width:100%;background:var(--color-info-bg);height:calc(72 * var(--kiosk-u));display:flex;align-items:center;margin-bottom:calc(8 * var(--kiosk-u))}.darsena-info__marquee-text{font-family:var(--font-display);color:var(--color-comment);font-size:calc(56 * var(--kiosk-u));text-transform:uppercase;white-space:nowrap;animation:darsena-marquee linear infinite;text-shadow:var(--shadow-text)}.darsena-info__access-row{position:relative;display:grid;grid-template-areas:"access-stack";place-items:center stretch;width:100%;box-sizing:border-box;padding:0 calc(.5 * var(--kiosk-vw));margin-top:auto;margin-bottom:calc(56 * var(--kiosk-u));overflow:visible}.darsena-info__access-icon{grid-area:access-stack;position:relative;z-index:3;width:calc(148 * var(--kiosk-u));height:calc(148 * var(--kiosk-u));object-fit:contain;filter:drop-shadow(-3px -3px 4px rgba(58,30,43,.45)) drop-shadow(3px 3px 4px rgba(58,30,43,.45));pointer-events:none;align-self:center}.darsena-info__access-icon.left{justify-self:start;transform:translate(36%)}.darsena-info__access-icon.right{justify-self:end;transform:translate(-36%) scaleX(-1)}.darsena-info__access-icon--alert{animation:darsena-access-alert 5.2s ease-in-out infinite}.darsena-info__access-icon--alert.right{animation-delay:.18s}.darsena-info__access{grid-area:access-stack;position:relative;z-index:1;width:100%;min-height:calc(80 * var(--kiosk-u));height:calc(80 * var(--kiosk-u));display:flex;align-items:center;justify-content:center;text-align:center;padding:0 calc(172 * var(--kiosk-u));box-sizing:border-box;border:2px solid var(--shadow-burgundy);box-shadow:0 0 6px 1px #3a1e2b80;background:var(--color-access-deny);border-radius:10px}.darsena-info__access--ok{background:var(--color-access-ok)}.darsena-info__access-text{font-family:var(--font-display);font-size:clamp(26 * var(--kiosk-u),4.2 * var(--kiosk-vw),64 * var(--kiosk-u));text-transform:uppercase;color:var(--color-access-bar-text);text-shadow:1px 1px 4px rgba(58,30,43,.4)}.darsena-info__access-time{margin-left:calc(24 * var(--kiosk-u));color:var(--color-door-time);font-size:1.28em;text-shadow:var(--shadow-text)}.darsena-info__foot{display:flex;align-items:center;justify-content:center;gap:calc(16 * var(--kiosk-u));background:var(--color-legal-bg);min-height:calc(40 * var(--kiosk-u));padding:calc(4 * var(--kiosk-u)) calc(16 * var(--kiosk-u));font-family:var(--font-display);font-size:calc(22 * var(--kiosk-u));font-weight:400;letter-spacing:.04em}.darsena-info__legal{flex:1 1 auto;text-align:center;overflow:hidden;color:var(--color-legal-text);text-shadow:1px 1px 4px rgba(58,30,43,.35)}.darsena-info[data-kiosk-variant="1"] .kiosk-cyl-brand{--kiosk-brand-kicker: var(--color-brand-kicker);--kiosk-brand-city: var(--color-brand-city)}.darsena-info[data-kiosk-variant="1"] .kiosk-cyl-brand__kicker,.darsena-info[data-kiosk-variant="2"] .kiosk-cyl-brand__kicker{text-shadow:0 1px 1px #fff,0 -1px 1px #fff,1px 0 1px #fff,-1px 0 1px #fff,0 2px 6px rgba(58,30,43,.42)}.darsena-info[data-kiosk-variant="1"] .kiosk-cyl-brand__city{-webkit-text-stroke:1px var(--color-brand-city);text-shadow:0 2px 2px #fff,0 -2px 2px #fff,2px 0 2px #fff,-2px 0 2px #fff,0 4px 10px rgba(58,30,43,.45)}.darsena-info[data-kiosk-variant="2"] .kiosk-cyl-brand__city{text-shadow:0 2px 2px #fff,0 -2px 2px #fff,2px 0 2px #fff,-2px 0 2px #fff,0 4px 10px rgba(58,30,43,.45)}.darsena-info[data-kiosk-variant="1"] .darsena-info__next,.darsena-info[data-kiosk-variant="1"] .darsena-info__platform-label,.darsena-info[data-kiosk-variant="1"] .darsena-info__platform-num{text-shadow:2px 2px 5px rgba(58,30,43,.68),0 1px 8px rgba(58,30,43,.42)}.darsena-info[data-kiosk-variant="1"] .darsena-info__dest,.darsena-info[data-kiosk-variant="1"] .darsena-info__time{text-shadow:3px 3px 8px rgba(58,30,43,.78),0 4px 16px rgba(58,30,43,.5)}.darsena-info[data-kiosk-variant="2"] .darsena-info__next,.darsena-info[data-kiosk-variant="2"] .darsena-info__logo-text{text-shadow:1px 1px 4px rgba(58,30,43,.38),0 1px 6px rgba(58,30,43,.24)}.darsena-info[data-kiosk-variant="2"] .darsena-info__platform-label{text-shadow:1px 1px 2px rgba(58,30,43,.2)}.darsena-info[data-kiosk-variant="2"] .darsena-info__platform-num{text-shadow:2px 2px 5px rgba(58,30,43,.55),0 1px 7px rgba(58,30,43,.32)}.darsena-info[data-kiosk-variant="2"] .darsena-info__dest,.darsena-info[data-kiosk-variant="2"] .darsena-info__time{text-shadow:1px 2px 4px rgba(58,30,43,.3),0 1px 5px rgba(58,30,43,.18)}.darsena-info[data-kiosk-variant="2"] .darsena-info__marquee-text{text-shadow:var(--shadow-text)}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-text{text-shadow:1px 1px 4px rgba(58,30,43,.4)}.darsena-info[data-kiosk-variant="2"] .darsena-info__access-time{text-shadow:1px 1px 3px rgba(58,30,43,.35)}.darsena-info[data-kiosk-variant="2"] .darsena-info__legal{text-shadow:1px 1px 4px rgba(58,30,43,.35)}.darsena-info__legal--en{font-size:.9em;opacity:.92}.darsena-info__legal.is-in{animation:darsena-legal-in .5s ease-in}@keyframes darsena-legal-in{0%{opacity:0;margin-top:.5rem}to{opacity:1;margin-top:0}}.darsena-info__media{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;width:100%;height:100%;object-fit:cover;background:#000}@keyframes darsena-marquee{0%{transform:translate(100%)}to{transform:translate(-100%)}}@keyframes darsena-access-alert{0%,12%,to{scale:1}3%{scale:1.16}6%{scale:1}9%{scale:1.1}}@media(max-width:900px),(orientation:portrait){.darsena-info:not(.darsena-info--embed) .darsena-info__top{flex:0 0 auto;min-height:0;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:.4rem .8rem;padding:calc(12 * var(--kiosk-vh)) .8rem 0;position:relative}.darsena-info:not(.darsena-info--embed) .darsena-info__brand{left:.8rem;right:.8rem}.darsena-info:not(.darsena-info--embed) .darsena-info__next,.darsena-info:not(.darsena-info--embed) .darsena-info__logo-slot,.darsena-info:not(.darsena-info--embed) .darsena-info__platform-label,.darsena-info:not(.darsena-info--embed) .darsena-info__platform-num{position:static;left:auto;right:auto;top:auto}.darsena-info:not(.darsena-info--embed) .darsena-info__next{grid-column:1;grid-row:1;font-size:calc(3.2 * var(--kiosk-vh))}.darsena-info:not(.darsena-info--embed) .darsena-info__logo-slot{grid-column:1;grid-row:2;height:calc(7 * var(--kiosk-vh));max-width:100%}.darsena-info:not(.darsena-info--embed) .darsena-info__platform-label{grid-column:2;grid-row:1;font-size:calc(3.2 * var(--kiosk-vh));text-align:right}.darsena-info:not(.darsena-info--embed) .darsena-info__platform-num{grid-column:2;grid-row:2;font-size:calc(10 * var(--kiosk-vh));line-height:.9;justify-self:end}.darsena-info:not(.darsena-info--embed) .darsena-info__access{padding-inline:calc(120 * var(--kiosk-u))}}.darsena-info__skel{pointer-events:none}.darsena-info__skel-block{display:block;border-radius:.4rem;background:linear-gradient(90deg,#ffffff1f,#ffffff47,#ffffff1f);background-size:200% 100%;animation:darsena-skel 1.2s ease-in-out infinite}.darsena-info__skel-next{width:calc(28 * var(--kiosk-vw));height:calc(3.6 * var(--kiosk-vh))}.darsena-info__skel-logo{width:calc(22 * var(--kiosk-vw));height:calc(6 * var(--kiosk-vh));margin-top:calc(1 * var(--kiosk-vh))}.darsena-info__skel-label{width:calc(22 * var(--kiosk-vw));height:calc(6 * var(--kiosk-vh))}.darsena-info__skel-num{width:calc(12 * var(--kiosk-vw));height:calc(12 * var(--kiosk-vh))}.darsena-info__skel-card{width:min(88 * var(--kiosk-vw),1600px);height:calc(28 * var(--kiosk-vh));margin:calc(4 * var(--kiosk-vh)) auto 0;border-radius:1.1rem}.darsena-info__skel-access{width:70%;height:calc(8 * var(--kiosk-vh));margin:calc(3 * var(--kiosk-vh)) auto 0}@keyframes darsena-skel{0%{background-position:100% 0}to{background-position:-100% 0}}.darsena-info--no-wait .darsena-info__skel-block,.darsena-info--no-wait .darsena-info__access-icon--alert{animation:none}@media(prefers-reduced-motion:reduce){.darsena-info__skel-block,.darsena-info__access-icon--alert{animation:none}}.darsena-kiosk-viewport{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden;background:#000}.darsena-kiosk-viewport .darsena-info{width:1920px;height:1080px;--kiosk-vw: 19.2px;--kiosk-vh: 10.8px;--kiosk-u: 1px;transform:scale(var(--darsena-scale, 1));transform-origin:center center}.darsena-embed-viewport{position:relative;width:100%;height:100%;overflow:hidden;background:transparent}.darsena-info--embed .darsena-info__media{position:absolute}.darsena-info--no-header .darsena-info__top{padding-top:calc(1.2 * var(--kiosk-vh))}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/quicksand-latin-600-normal-DTBPeRoM.woff2) format("woff2"),url(/assets/quicksand-latin-600-normal-CkxN0sDw.woff) format("woff")}.kiosk-cyl-brand{--kiosk-brand-kicker: #1a365d;--kiosk-brand-city: #8a1e32;--kiosk-brand-display: Quicksand, "Segoe UI", "Trebuchet MS", sans-serif;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;flex:0 0 auto;width:100%;min-height:0;padding:calc(1.4 * var(--kiosk-vh, 1vh)) calc(2 * var(--kiosk-vw, 1vw)) calc(.8 * var(--kiosk-vh, 1vh));gap:calc(1.2 * var(--kiosk-vw, 1vw));pointer-events:none;text-shadow:none}.kiosk-cyl-brand__logo{flex:0 0 auto;width:auto;object-fit:contain}.kiosk-cyl-brand__logo--transporte{height:calc(10 * var(--kiosk-vh, 1vh));max-width:calc(30 * var(--kiosk-vw, 1vw))}.kiosk-cyl-brand:not(.kiosk-cyl-brand--v2){grid-template-columns:1fr}.kiosk-cyl-brand:not(.kiosk-cyl-brand--v2) .kiosk-cyl-brand__titles,.kiosk-cyl-brand:not(.kiosk-cyl-brand--v2) .kiosk-cyl-brand__logo--transporte{grid-column:1;grid-row:1}.kiosk-cyl-brand:not(.kiosk-cyl-brand--v2) .kiosk-cyl-brand__titles{justify-self:center;z-index:1}.kiosk-cyl-brand:not(.kiosk-cyl-brand--v2) .kiosk-cyl-brand__logo--transporte{justify-self:end;align-self:center;z-index:0}.kiosk-cyl-brand--v2 .kiosk-cyl-brand__logo--transporte{grid-column:1;grid-row:1;justify-self:start;align-self:center;height:calc(13 * var(--kiosk-vh, 1vh));max-width:calc(44 * var(--kiosk-vw, 1vw))}.kiosk-cyl-brand--v2 .kiosk-cyl-brand__titles{grid-column:2;grid-row:1}.kiosk-cyl-brand__titles{grid-column:2;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-transform:uppercase;font-family:var(--kiosk-brand-display)}.kiosk-cyl-brand__kicker{font-size:calc(2.85 * var(--kiosk-vh, 1vh));font-weight:700;letter-spacing:1.2em;line-height:1.5;color:var(--kiosk-brand-kicker);text-shadow:0 1px 1px white,0 -1px 1px white,1px 0 1px white,-1px 0 1px white,0 2px 2px rgba(0,0,0,.1)}.kiosk-cyl-brand__city{margin-top:calc(.15 * var(--kiosk-vh, 1vh));font-size:calc(5.8 * var(--kiosk-vh, 1vh));font-weight:800;letter-spacing:.25em;line-height:1.05;color:var(--kiosk-brand-city);-webkit-text-stroke:1px var(--kiosk-brand-city);text-shadow:0 2px 2px white,0 -2px 2px white,2px 0 2px white,-2px 0 2px white,0 4px 4px rgba(0,0,0,.1)}.kiosk-updating{--kiosk-update-bg: #0f1729;--kiosk-update-header: #d6d0c6;--kiosk-update-ball: #ffd54f;--kiosk-update-trail-from: #fffde7;--kiosk-update-trail-to: #ff6d00;--kiosk-update-text: #f4f1ea;--kiosk-update-copy-bg: color-mix(in srgb, #0f1729 62%, transparent);--carousel-overlay: color-mix(in srgb, var(--kiosk-update-bg) 40%, transparent);position:relative;width:100vw;height:100vh;overflow:hidden;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--kiosk-update-bg);color:var(--kiosk-update-text);font-family:Calibri,Segoe UI,sans-serif}.kiosk-updating__canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;display:block;pointer-events:none}.kiosk-updating__brand{position:absolute;top:0;left:0;right:0;z-index:1;pointer-events:none;background:var(--kiosk-update-header);border-bottom:2px solid color-mix(in srgb,#8a1e32 42%,#1a365d);box-shadow:0 10px 24px color-mix(in srgb,#1a2740 35%,transparent)}.kiosk-updating__copy-wrap{position:relative;z-index:2;width:100%;max-width:min(42rem,86vw);overflow:visible}.kiosk-updating__copy{position:relative;z-index:2;width:100%;max-width:none;padding:2.4rem 3rem;text-align:center;border-radius:1.25rem;overflow:hidden;cursor:pointer;background:linear-gradient(135deg,color-mix(in srgb,var(--kiosk-card-tint, transparent) 22%,var(--kiosk-update-copy-bg)),var(--kiosk-update-copy-bg));box-shadow:0 18px 48px color-mix(in srgb,var(--kiosk-update-text) 16%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background .55s ease,box-shadow .16s ease,transform .16s ease}.kiosk-updating__copy.is-hit{transform:translate(var(--kiosk-copy-nudge-x, 0),var(--kiosk-copy-nudge-y, 0)) scale(1.015);box-shadow:0 0 0 3px color-mix(in srgb,var(--kiosk-card-hit-color, var(--kiosk-update-ball)) 70%,transparent),0 0 48px color-mix(in srgb,var(--kiosk-card-hit-color, var(--kiosk-update-ball)) 40%,transparent),0 18px 48px color-mix(in srgb,var(--kiosk-update-text) 16%,transparent)}.kiosk-updating__paint{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;display:block;pointer-events:none;border-radius:1.25rem;overflow:hidden}.kiosk-updating.is-game .kiosk-updating__copy-wrap,.kiosk-updating.is-demo-break .kiosk-updating__copy-wrap{perspective:560px}.kiosk-updating__shards{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;overflow:visible;perspective:480px;transform-style:preserve-3d}.kiosk-updating__shard{position:absolute;min-width:0;min-height:0;transform-origin:center;transform-style:preserve-3d;border-radius:1px;pointer-events:none}.kiosk-updating__shard.is-intact{background:transparent;box-shadow:none}.kiosk-updating__shard.is-cracked{z-index:1}.kiosk-updating__shard.is-broken{z-index:4;background:color-mix(in srgb,var(--kiosk-update-copy-bg) 82%,#1a2740);box-shadow:0 3px 8px color-mix(in srgb,#000 42%,transparent),inset 0 1px color-mix(in srgb,var(--kiosk-update-text) 14%,transparent)}.kiosk-updating__shard.is-falling{z-index:6;will-change:transform}.kiosk-updating__title{position:relative;z-index:1;margin:0;font-size:clamp(1.6rem,3.4vw,2.6rem);font-weight:800;letter-spacing:.04em;line-height:1.2}.kiosk-updating__sub{position:relative;z-index:1;margin:.85rem 0 0;font-size:clamp(1.05rem,2vw,1.45rem);font-weight:600;letter-spacing:.03em;line-height:1.35;opacity:.92}.kiosk-updating__reason{position:absolute;right:2vw;bottom:2.2vh;z-index:2;padding:.35rem .65rem;border-radius:999px;background:color-mix(in srgb,var(--kiosk-update-bg) 75%,#000);color:var(--kiosk-update-text);font-size:.85rem;font-weight:600;opacity:.82;pointer-events:none}.kiosk-updating__powered{--kiosk-logo-hue: 0deg;--kiosk-logo-sat: 1;--kiosk-logo-bright: 1;--kiosk-logo-glow: transparent;position:absolute;left:2vw;bottom:2.2vh;z-index:2;margin:0;padding:0;border:0;background:transparent;cursor:pointer;pointer-events:auto;will-change:transform;filter:hue-rotate(var(--kiosk-logo-hue)) saturate(var(--kiosk-logo-sat)) brightness(var(--kiosk-logo-bright)) drop-shadow(0 0 18px var(--kiosk-logo-glow));transition:transform .42s cubic-bezier(.22,1,.32,1),filter .8s ease}.kiosk-updating__powered.is-tinted{transition:transform .42s cubic-bezier(.22,1,.32,1),filter .2s ease}.kiosk-updating__powered.is-snap,.kiosk-updating__powered.is-play{transition:none}.kiosk-updating__powered.is-play.is-tinted{transition:filter .2s ease}.kiosk-updating__powered .kiosk-powered{transform-origin:center bottom;transition:transform .14s cubic-bezier(.22,1,.32,1)}.kiosk-updating__powered.is-hit .kiosk-powered{transform:translateY(3px) scale(1.04,.9)}.kiosk-updating__powered.is-hit .kiosk-powered__mark{filter:brightness(1.55) drop-shadow(0 0 16px color-mix(in srgb,var(--kiosk-update-ball) 80%,transparent)) drop-shadow(0 2px 10px color-mix(in srgb,#000 55%,transparent))}.kiosk-updating__powered .kiosk-powered__mark{font-size:clamp(2.2rem,4.6vh,3.4rem);filter:brightness(1.45) drop-shadow(0 2px 10px color-mix(in srgb,#000 55%,transparent))}.kiosk-updating__score{position:absolute;top:14vh;right:2vw;z-index:3;display:none;flex-direction:column;align-items:flex-end;gap:.2rem;pointer-events:none;font-weight:800;letter-spacing:.04em;color:var(--kiosk-update-text);text-shadow:0 2px 12px color-mix(in srgb,#000 55%,transparent)}.kiosk-updating.is-game .kiosk-updating__score:not([hidden]){display:flex}.kiosk-updating__level{font-size:clamp(.85rem,1.8vh,1.15rem);letter-spacing:.12em;text-transform:uppercase;opacity:.88}.kiosk-updating__score-row{display:flex;align-items:flex-start;gap:.45rem}.kiosk-updating__score-value{font-size:clamp(1.8rem,4.2vh,3rem);line-height:1}.kiosk-updating__score-pop{font-size:clamp(1.05rem,2.4vh,1.6rem);line-height:1;opacity:0;transform:translateY(8px) scale(.7)}.kiosk-updating__score-pop.is-on{animation:kiosk-score-pop .7s cubic-bezier(.22,1,.32,1) forwards}.kiosk-updating__score-pop.is-down.is-on{color:color-mix(in srgb,#ff8a80 78%,var(--kiosk-update-text))}@keyframes kiosk-score-pop{0%{opacity:0;transform:translateY(10px) scale(.6)}18%{opacity:1;transform:translateY(-4px) scale(1.28)}to{opacity:0;transform:translateY(-22px) scale(1)}}.kiosk-powered{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.kiosk-powered__mark{font-size:calc(22 * var(--kiosk-u, 1px))}.kiosk-powered--v2 .kiosk-powered__mark{font-size:calc(3.5 * var(--kiosk-vh, 1vh))}.kiosk-powered--glide{container-type:inline-size;pointer-events:none;clip-path:polygon(evenodd,0 0,100% 0,100% 100%,0 100%,0 0,12.53% 0,87.2% 0,84.32% 100%,15.21% 100%,12.53% 0)}.kiosk-powered--glide .kiosk-powered__mark{position:absolute;top:60%;left:0;animation:kiosk-powered-glide 20s infinite;will-change:transform}@keyframes kiosk-powered-glide{0%{transform:translate3d(-100%,-50%,0);animation-timing-function:cubic-bezier(.16,1,.3,1)}8%{transform:translate3d(calc(6.94cqi - 50%),-50%,0);animation-timing-function:linear}26%{transform:translate3d(calc(6.94cqi - 50%),-50%,0);animation-timing-function:cubic-bezier(.55,0,1,1)}36%{transform:translate3d(15.3cqi,-50%,0);animation-timing-function:linear}46%{transform:translate3d(calc(84.3cqi - 100%),-50%,0);animation-timing-function:cubic-bezier(.16,1,.3,1)}54%{transform:translate3d(calc(92.88cqi - 50%),-50%,0);animation-timing-function:linear}72%{transform:translate3d(calc(92.88cqi - 50%),-50%,0);animation-timing-function:cubic-bezier(.55,0,1,1)}84%{transform:translate3d(100cqi,-50%,0);animation-timing-function:linear}to{transform:translate3d(100cqi,-50%,0)}}@media(prefers-reduced-motion:reduce){.kiosk-powered--glide .kiosk-powered__mark{animation:none;transform:translate3d(calc(92.88cqi - 50%),-50%,0)}}.background-carousel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:var(--carousel-fallback-bg, #000);pointer-events:none}.background-carousel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:var(--carousel-overlay, transparent);pointer-events:none}.background-carousel__slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1);transition:opacity var(--carousel-crossfade, 1.5s) ease-in-out,transform var(--carousel-interval, 7s) linear;will-change:transform,opacity;pointer-events:none}.background-carousel__slide.is-active{opacity:1;transform:scale(var(--carousel-zoom, 1.08))}@media(prefers-reduced-motion:reduce){.background-carousel__slide{transition:opacity .2s ease;transform:scale(1)!important}}.darsena-dock-slide{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.darsena-dock-slide__layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;will-change:transform,opacity;transition:transform .48s cubic-bezier(.22,1,.36,1),opacity .42s ease}.darsena-dock-slide__layer--in,.darsena-dock-slide__layer--shown{z-index:1}.darsena-dock-slide__layer--out{z-index:0;pointer-events:none;transform:translate(-100%);opacity:0}.darsena-dock-slide__layer--in{transform:translate(100%);opacity:0}.darsena-dock-slide__layer--shown{transform:translate(0);opacity:1}@media(prefers-reduced-motion:reduce){.darsena-dock-slide__layer{transition:none}.darsena-dock-slide__layer--in,.darsena-dock-slide__layer--out{transform:none;opacity:1}}.videowall-dash{box-sizing:border-box;container-type:size;display:grid;place-items:center;width:100%;height:100%;min-width:0;min-height:0;padding-block:.45rem;overflow:hidden}.videowall-dash__stage{position:relative;aspect-ratio:16/9;width:min(100cqw,177.7777777778cqh);height:auto;border-radius:var(--radius);overflow:hidden;background:transparent}.videowall-dash .videowall-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent}.videowall{--kiosk-w: 1920;--kiosk-h: 1080;--kiosk-u: min(100vw / 1920, 100vh / 1080);--kiosk-zoom: 1;--color-primary1: #27477e;--color-primary2: #7e2760;--color-etrabus: #012b7f;--color-primary: var(--color-primary1);--color_service_odd: #e9e3d5;--color_service_even: #1558cb;--color-logo1: hsla(218, 53%, 53%, 1);--color-logo2: hsla(321, 53%, 53%, 1);--color-logo: var(--color-logo1);--tick-color-flip-panel1: #2d4876;--tick-color-flip-panel2: #ce1141;--tick-color-flip-panel: var(--tick-color-flip-panel1);--color-english: #bc9292;--color-row-time-stroke: var(--color-primary);--color-row-time-fill: color-mix(in srgb, var(--color-primary) 84%, #ffffff);--row-time-stroke-width: calc(2.6 * var(--kiosk-u));--row-time-stroke-width-sm: calc(1.75 * var(--kiosk-u));--width_col_hora: 10%;--width_col_destino: 48%;--width_col_operador: 14%;--width_col_darsena: 12%;--width_col_observaciones: 18%;--height-encabezado: calc(88 * var(--kiosk-u) * var(--kiosk-zoom));--height-footer: calc(42 * var(--kiosk-u) * var(--kiosk-zoom));--height-row: calc(72 * var(--kiosk-u) * var(--kiosk-zoom));--logo-max-height: calc(68 * var(--kiosk-u) * var(--kiosk-zoom));--font-size-time: calc(66 * var(--kiosk-u) * var(--kiosk-zoom));--font-size-title: calc(64 * var(--kiosk-u) * var(--kiosk-zoom));--font-size-encabezado: calc(28 * var(--kiosk-u) * var(--kiosk-zoom));--font-size-servicios: calc(36 * var(--kiosk-u) * var(--kiosk-zoom));--font-size-tick: calc(58 * var(--kiosk-u) * var(--kiosk-zoom));--logo-shadow: 0 5px 3px darkgray;--anim-color: background-color 2s ease-out, color 2s ease-out;--font-ui: Roboto, "Segoe UI", sans-serif}@property --videowall-header-mask{syntax: "<color>"; inherits: true; initial-value: #27477e;}.videowall[data-kiosk-variant="2"].videowall--stage-photo{--videowall-stage-header-height: calc(7.35vh * var(--kiosk-zoom, 1));background-color:transparent}.videowall[data-kiosk-variant="2"].videowall--stage-photo:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:var(--videowall-stage);background-position:center top;background-size:cover;background-repeat:no-repeat}.videowall[data-kiosk-variant="2"].videowall--stage-photo:after{content:"";position:absolute;top:0;left:0;right:0;height:var(--videowall-stage-header-height);z-index:0;pointer-events:none;background-color:var(--videowall-header-mask, var(--color-primary));opacity:.78;transition:background-color 2s ease-out;mask-image:linear-gradient(90deg,#000 0%,#000 24%,rgba(0,0,0,.58) 48%,transparent 80%);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 24%,rgba(0,0,0,.58) 48%,transparent 80%);mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}.videowall[data-kiosk-variant="2"].videowall--stage-photo>*{position:relative;z-index:1}.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__header{flex:0 0 var(--videowall-stage-header-height);height:var(--videowall-stage-header-height);min-height:0;max-height:var(--videowall-stage-header-height);background-color:transparent}.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__header:before,.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__title-fade{display:none}.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__header:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,var(--videowall-header-mask, var(--color-primary)) 0%,rgb(from var(--videowall-header-mask, var(--color-primary)) r g b/.88) 28%,rgb(from var(--videowall-header-mask, var(--color-primary)) r g b/.52) 52%,rgb(from var(--videowall-header-mask, var(--color-primary)) r g b/.2) 76%,transparent 100%);transition:background 2s ease-out}.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__clock{background:transparent}.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__cols{background:var(--videowall-header-mask, var(--color-primary));color:#fff;box-shadow:none;transition:background-color 2s ease-out}.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__list{background:transparent;box-shadow:none}.videowall[data-kiosk-variant="2"].videowall--stage-photo .videowall__footer{background:var(--videowall-header-mask, var(--color-primary));color:#fff;box-shadow:none;transition:background-color 2s ease-out}.videowall[data-kiosk-variant="2"]{--color-navy: #1a2b4b;--color-maroon: #8b1e32;--color-maroon-bright: #c00030;--color-row-odd: #ffffff;--color-row-even: #e6f2f8;--color-primary1: #27477e;--color-primary2: #7e2760;--color-primary: var(--color-primary1);--color_service_odd: var(--color-row-odd);--color_service_even: var(--color-row-even);--color-english: rgba(255, 255, 255, .72);--color-time: var(--color-primary);background-color:#0b1a33;color:var(--color-primary)}.videowall[data-kiosk-variant="2"] .videowall__header{background-color:var(--videowall-header-mask, var(--color-primary));background-image:none;height:auto;min-height:var(--height-encabezado)}.videowall[data-kiosk-variant="2"] .videowall__header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:var(--videowall-header);background-size:cover;background-position:top right;background-repeat:no-repeat;pointer-events:none}.videowall[data-kiosk-variant="2"] .videowall__clock{position:relative;z-index:1;width:12vw;background:var(--color-primary);border-bottom:none}.videowall--embed[data-kiosk-variant="2"] .videowall__clock{width:16%}.videowall[data-kiosk-variant="2"] .videowall__title-block{position:relative;z-index:1;display:flex;flex:1 1 auto;align-items:center;justify-content:space-between;background:transparent;padding:0 calc(28 * var(--kiosk-u))}.videowall[data-kiosk-variant="2"] .videowall__title-fade{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,var(--videowall-header-mask, var(--color-primary)) 0%,rgb(from var(--videowall-header-mask, var(--color-primary)) r g b/.88) 28%,rgb(from var(--videowall-header-mask, var(--color-primary)) r g b/.52) 52%,rgb(from var(--videowall-header-mask, var(--color-primary)) r g b/.2) 76%,rgb(from var(--videowall-header-mask, var(--color-primary)) r g b/0) 100%)}.videowall[data-kiosk-variant="2"] .videowall__title{position:relative;z-index:1;color:#fff;text-shadow:none;padding-left:0}.videowall[data-kiosk-variant="2"] .videowall__brand-logo{height:calc(62 * var(--kiosk-u) * var(--kiosk-zoom));max-width:min(32vw,420 * var(--kiosk-u) * var(--kiosk-zoom));margin-right:0;filter:drop-shadow(0 2px 8px rgba(0,0,0,.28))}.videowall[data-kiosk-variant="2"] .videowall__list{box-shadow:none;background:transparent}.videowall[data-kiosk-variant="2"] .videowall-row{border:none;color:var(--color-primary)}.videowall[data-kiosk-variant="2"].videowall--arrivals{--videowall-header-mask: var(--color-primary1);--color-primary: var(--color-primary1);--color-logo: var(--color-logo1);--tick-color-flip-panel: var(--tick-color-flip-panel1)}.videowall[data-kiosk-variant="2"].videowall--departures{--videowall-header-mask: var(--color-primary2);--color-primary: var(--color-primary2);--color-logo: var(--color-logo2);--tick-color-flip-panel: var(--tick-color-flip-panel2)}html.kiosk-root,html.kiosk-root body,html.kiosk-root #root{height:100%;margin:0;overflow:hidden;background:#000}.videowall{position:relative;width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-ui);letter-spacing:2px;background:#fff url(/assets/videowall-CUqkkA1x.png) center/cover no-repeat;color:var(--color-primary);--bg-primary: #fff;--accent: var(--color-primary);--text-secondary: var(--color-primary);--border: #ddd}.videowall--arrivals{--videowall-header-mask: var(--color-primary1);--color-primary: var(--color-primary1);--color-logo: var(--color-logo1);--tick-color-flip-panel: var(--tick-color-flip-panel1);transition:--videowall-header-mask 2s ease-out,--color-primary 2s ease-out}.videowall--departures{--videowall-header-mask: var(--color-primary2);--color-primary: var(--color-primary2);--color-logo: var(--color-logo2);--tick-color-flip-panel: var(--tick-color-flip-panel2);transition:--videowall-header-mask 2s ease-out,--color-primary 2s ease-out}.videowall[data-kiosk-variant="1"]{--color_service_even: #8f897f}.videowall[data-kiosk-variant="1"] .videowall-row:nth-of-type(2n){background:color-mix(in srgb,var(--color_service_even) 46%,transparent)}.videowall[data-kiosk-variant="1"] .videowall__skel-row:nth-child(2n){background:color-mix(in srgb,var(--color_service_even) 46%,transparent)}.videowall--photo{background-color:#fff;background-image:none;isolation:isolate}.videowall--photo:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:var(--videowall-fondo);background-position:center;background-size:cover;background-repeat:no-repeat;filter:grayscale(1);opacity:.34}.videowall__header{position:relative;display:flex;align-items:stretch;height:var(--height-encabezado);background-image:var(--videowall-header);background-size:auto 100%;background-position:top right;background-repeat:no-repeat;overflow:hidden;flex:0 0 auto}.videowall__header--banner{background-size:100% 100%;background-position:center}.videowall__clock{display:flex;align-items:center;justify-content:center;width:10vw;min-width:calc(160 * var(--kiosk-u));background:var(--color-primary);color:#fff;font-size:var(--font-size-time);font-weight:700;text-shadow:1px 1px 2px #000;cursor:pointer;transition:var(--anim-color);border-bottom:1px solid #fff;-webkit-user-select:none;user-select:none;border:none}.videowall__clock-h,.videowall__clock-m{display:inline-block;width:2ch;text-align:center}.videowall__clock-sep{display:inline-block;width:.6em;text-align:center}.videowall__title-block{display:flex;align-items:stretch;flex:1 1 auto;min-width:0}.videowall__title-fade{display:none}.videowall__title{display:flex;align-items:center;flex:1 1 auto;min-width:0;padding-left:calc(28 * var(--kiosk-u));color:var(--color-primary);font-size:var(--font-size-title);font-weight:700;text-transform:uppercase;text-shadow:0 0 7px #fff;transition:var(--anim-color)}.videowall__brand-logo{position:relative;z-index:1;flex:0 0 auto;align-self:center;height:calc(58 * var(--kiosk-u) * var(--kiosk-zoom));max-height:calc(var(--height-encabezado) * .72);max-width:min(28vw,360 * var(--kiosk-u) * var(--kiosk-zoom));margin-right:calc(20 * var(--kiosk-u));object-fit:contain;object-position:center right;pointer-events:none}.videowall__rotation-bar{position:absolute;right:0;bottom:0;left:0;height:calc(4 * var(--kiosk-u));background:#ffffff59;z-index:1}.videowall__rotation-bar>span{display:block;height:100%;background:#fff;box-shadow:0 0 6px #ffffff80;transition:width .1s linear}.videowall__cols{display:flex;align-items:center;background:var(--color-primary);color:#fff;height:var(--height-encabezado);font-size:var(--font-size-encabezado);font-weight:700;flex:0 0 auto;transition:var(--anim-color)}.videowall__col{padding-left:calc(12 * var(--kiosk-u));line-height:1.15}.videowall__col--time{width:var(--width_col_hora)}.videowall__col--place{width:var(--width_col_destino)}.videowall__col--company{width:var(--width_col_operador);padding-left:0;padding-inline:calc(8 * var(--kiosk-u));text-align:center}.videowall__col--dock{width:var(--width_col_darsena);padding-left:0;text-align:center}.videowall__col--obs{width:var(--width_col_observaciones);flex:1 1 auto}.videowall__en{display:block;color:var(--color-english);font-weight:400;font-size:.75em}.videowall__list{flex:1 1 auto;display:flex;flex-direction:column;justify-content:space-between;min-height:0;box-shadow:0 0 20px 1px #fff}.videowall__footer{display:flex;align-items:center;background:var(--color-primary);height:var(--height-footer);color:#fff;flex:0 0 auto;transition:var(--anim-color)}.videowall__legal{flex:1 1 auto;text-align:center;font-size:calc(18 * var(--kiosk-u));overflow:hidden}.videowall__legal--en{color:var(--color-english)}.videowall__legal.is-in{animation:videowall-legal-in .5s ease-in}@keyframes videowall-legal-in{0%{opacity:0;margin-top:1rem}to{opacity:1;margin-top:0}}@media(max-width:900px),(orientation:portrait){.videowall:not(.videowall--embed) .videowall__header{flex-direction:column;height:auto}.videowall:not(.videowall--embed) .videowall__clock{width:100%}.videowall:not(.videowall--embed) .videowall__title{font-size:calc(36 * var(--kiosk-u));padding:calc(8 * var(--kiosk-u))}.videowall:not(.videowall--embed) .videowall__col--company{display:none}}.videowall__skel-row{height:var(--height-row);display:flex;align-items:center;padding:0 calc(12 * var(--kiosk-u));gap:1rem;border-bottom:1px solid rgba(0,0,0,.06)}.videowall__skel-row:nth-child(odd){background:color-mix(in srgb,var(--color_service_odd) 82%,transparent)}.videowall__skel-row:nth-child(2n){background:color-mix(in srgb,var(--color_service_even) 100%,transparent)}.videowall__skel-block{display:block;height:38%;border-radius:.3rem;background:linear-gradient(90deg,#27477e1f,#27477e47,#27477e1f);background-size:200% 100%;animation:videowall-skel 1.2s ease-in-out infinite}.videowall__skel-time{width:8%}.videowall__skel-place{width:42%}.videowall__skel-company{width:12%}.videowall__skel-dock{width:8%}.videowall__skel-obs{flex:1}@keyframes videowall-skel{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.videowall__skel-block{animation:none}}.videowall-embed-viewport{position:relative;width:100%;height:100%;overflow:hidden;background:transparent}.videowall-embed-viewport .videowall--embed{position:absolute;left:50%;top:50%;width:1920px;height:1080px;--kiosk-u: 1px;transform:translate(-50%,-50%) scale(var(--videowall-scale, 1));transform-origin:center center}.videowall--embed .videowall__clock{width:10%}.flip-platform{display:flex;gap:calc(4 * var(--kiosk-u));perspective:400px}.flip-platform--empty{min-width:calc(124 * var(--kiosk-u))}.flip-platform.is-new{animation:flip-heartbeat 1s linear infinite}.flip-platform__digit{display:inline-flex;align-items:center;justify-content:center;min-width:calc(58 * var(--kiosk-u) * var(--kiosk-zoom));height:calc(74 * var(--kiosk-u) * var(--kiosk-zoom));background:var(--tick-color-flip-panel);color:#fff;border-radius:8px;font-weight:700;font-size:var(--font-size-tick);transform-style:preserve-3d;transition:transform .28s ease-in,background-color 2s ease-out}.flip-platform__digit.is-flip{transform:rotateX(90deg)}.flip-platform__face{line-height:1}@keyframes flip-heartbeat{0%,to{opacity:1}50%{opacity:0}}.videowall-row{display:flex;align-items:center;width:100%;height:var(--height-row);min-height:0;border:1px solid gray;font-size:var(--font-size-servicios);color:var(--color-primary);overflow:hidden}.videowall .videowall-row:nth-of-type(odd){background:color-mix(in srgb,var(--color_service_odd) 40%,transparent);border-bottom:2px solid rgba(128,128,128,.621);border-top:2px solid rgba(128,128,128,.621)}.videowall .videowall-row:nth-of-type(2n){background:color-mix(in srgb,var(--color_service_even) 82%,transparent);border-bottom:3px solid rgba(128,128,128,.621);border-top:2px solid rgba(128,128,128,.621)}.videowall-row__time,.videowall-row__place,.videowall-row__company,.videowall-row__dock,.videowall-row__obs{display:flex;align-items:center;height:100%;padding-left:calc(12 * var(--kiosk-u));font-weight:700;min-width:0;font-size:2em}.videowall-row__time{width:var(--width_col_hora);font-family:var(--font-ui);font-size:1.58em;font-weight:800;font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;align-items:flex-start;line-height:1.1}.videowall-row__time.is-countdown{align-items:center;padding-left:calc(8 * var(--kiosk-u))}.videowall-row__time-value{display:block;color:var(--color-row-time-fill);-webkit-text-stroke:var(--row-time-stroke-width) var(--color-row-time-stroke);paint-order:stroke fill;transition:color 2s ease-out,-webkit-text-stroke-color 2s ease-out}.videowall-row__time.is-countdown .videowall-row__time-value{font-size:.82em;line-height:1;transform:translateY(calc(-2 * var(--kiosk-u)))}.videowall-row__time-countdown{display:block;font-size:.58em;font-weight:800;line-height:1;letter-spacing:.02em;margin-top:calc(4 * var(--kiosk-u));white-space:nowrap;color:var(--color-row-time-fill);-webkit-text-stroke:var(--row-time-stroke-width-sm) var(--color-row-time-stroke);paint-order:stroke fill;transition:color 2s ease-out,-webkit-text-stroke-color 2s ease-out}.videowall-row__time.is-blink{animation:videowall-blink 1s linear infinite}.videowall-row.is-bump .videowall-row__time,.videowall-row.is-bump .videowall-row__place,.videowall-row.is-bump .videowall-row__company{animation:videowall-flip-in .55s ease-out}.videowall-row__place{position:relative;width:var(--width_col_destino);overflow:hidden;color:var(--color-primary);font-weight:700}.videowall-row__place-measure{position:absolute;visibility:hidden;white-space:nowrap;pointer-events:none;height:0;overflow:hidden}.videowall-row__place-viewport{flex:1 1 auto;min-width:0;overflow:hidden}.videowall-row__place-text{display:inline-block;white-space:nowrap}.videowall-row__place:not(.is-marquee) .videowall-row__place-text{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.videowall-row__place.is-marquee .videowall-row__place-text{animation:videowall-place-marquee var(--place-marquee-duration, 6s) linear infinite;will-change:transform}@keyframes videowall-place-marquee{0%,15%{transform:translateZ(0)}85%{transform:translate3d(calc(-1 * var(--place-marquee-shift, 0px)),0,0)}85.01%,to{transform:translateZ(0)}}.videowall-row__company{width:var(--width_col_operador);flex:0 0 var(--width_col_operador);justify-content:center;padding-left:0;padding-inline:calc(8 * var(--kiosk-u))}.videowall-row__logo{display:block;max-height:min(var(--logo-max-height),var(--height-row) * .74);max-width:100%;width:auto;margin-inline:auto;object-fit:contain;object-position:center;filter:drop-shadow(var(--logo-shadow))}.videowall-row__company-text{width:100%;font-family:Arial Rounded MT Bold,Arial,sans-serif;color:var(--color-logo);white-space:wrap;font-size:.55em;text-align:center}.videowall-row__dock{width:var(--width_col_darsena);flex:0 0 var(--width_col_darsena);justify-content:center;padding-left:0}.videowall-row__obs{width:var(--width_col_observaciones);flex:1 1 auto;overflow:hidden}.videowall-row__obs.is-important{display:flex;justify-content:center;align-items:center;box-sizing:border-box;padding:calc(10 * var(--kiosk-u)) calc(14 * var(--kiosk-u));text-align:center}.videowall-row__obs-pill{display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;max-width:100%;margin:0;background:var(--color-primary);color:#fff;border-radius:calc(10 * var(--kiosk-u));transition:background-color 2s ease-out;padding:calc(6 * var(--kiosk-u)) calc(18 * var(--kiosk-u));font-size:.52em;font-weight:700;line-height:1.2;white-space:nowrap;text-align:center;box-sizing:border-box}.videowall-row__obs.is-blink-text .videowall-row__obs-pill{animation:videowall-blink 1s linear infinite}.videowall-row__obs.is-platform .videowall-row__obs-pill{animation:videowall-blink 2s linear infinite}.videowall-row__obs-scroll{display:inline-block;white-space:nowrap;animation:videowall-obs-scroll var(--marquee-duration, 8s) linear infinite}@keyframes videowall-flip-in{0%{transform:rotateX(90deg);opacity:.2}to{transform:rotateX(0);opacity:1}}@keyframes videowall-blink{20%{opacity:1}50%,80%{opacity:0}to{opacity:1}}@keyframes videowall-obs-scroll{0%{transform:translate(100%)}to{transform:translate(-100%)}}@media(max-width:900px),(orientation:portrait){.videowall:not(.videowall--embed) .videowall-row{flex-wrap:wrap;height:auto;min-height:var(--height-row)}.videowall:not(.videowall--embed) .videowall-row__place{width:55%}.videowall:not(.videowall--embed) .videowall-row__company{display:none}.videowall:not(.videowall--embed) .videowall-row__obs{width:100%}}.servicios-dash{display:flex;flex-direction:column;gap:.45rem;width:100%;height:100%;min-height:0;padding:.4rem;overflow:hidden}.servicios-dash__zone{container:servicios-zone/size;display:flex;flex-direction:row;align-items:stretch;gap:.5rem;flex:1 1 0;min-width:0;min-height:0;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--bg-panel) 72%,var(--bg-card));overflow:hidden}.servicios-dash__tag{display:flex;align-items:center;gap:.45rem;margin:0;padding:.22rem .55rem;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;width:7rem;flex:0 0 7rem;height:100%;text-align:center}.servicios-dash__badge{display:inline-flex;min-width:1.15rem;margin-left:auto;justify-content:center;padding:.02rem .28rem;border-radius:999px;background:color-mix(in srgb,currentColor 18%,transparent);font-variant-numeric:tabular-nums;opacity:.92}.servicios-dash__list{display:flex;flex-direction:row;align-items:flex-start;gap:.4rem;flex:1;min-width:0;min-height:0;height:100%;padding-top:.12rem;overflow-x:auto;overflow-y:hidden;cursor:grab;-webkit-user-select:none;user-select:none;scrollbar-width:none;touch-action:pan-x}.servicios-dash__list::-webkit-scrollbar{display:none}.servicios-dash__list.is-drag-scrolling{cursor:grabbing}.servicios-dash__slot{flex:0 0 17.5rem;align-self:stretch;width:17.5rem;height:100%;overflow:hidden}@container servicios-zone (max-width: 28rem){.servicios-dash__slot{flex-basis:12.5rem;width:12.5rem}}@container servicios-zone (max-height: 7.5rem){.servicios-dash__tag{flex-direction:column;justify-content:center;gap:.12rem;width:5.2rem;flex-basis:5.2rem;padding:.12rem .28rem;overflow:hidden;font-size:.58rem;line-height:1.15;letter-spacing:.02em}.servicios-dash__badge{margin-left:0}.servicios-dash__list{align-items:stretch;padding-top:0}.service-info-row.service-info-row{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.28rem;height:100%;padding:.1rem .28rem;overflow:hidden}.service-info-row__top.service-info-row__top{display:contents}.service-info-row__route.service-info-row__route{order:2;flex:1 1 auto;min-width:0;margin:0;padding:.02rem .28rem}.service-info-row__company.service-info-row__company{order:3;flex:0 1 3.4rem;max-width:3.4rem;margin-left:0}.service-info-row__ops.service-info-row__ops{display:none}.service-info-row .route-info__platform--sm{--dock-size: 1.35rem;font-size:.68rem}.service-time--sm.service-time--sm{height:1.05rem}}@container servicios-zone (max-height: 5rem){.servicios-dash__tag{width:4.4rem;flex-basis:4.4rem;padding:.08rem .2rem;font-size:.52rem}.service-info-row.service-info-row{gap:.16rem;padding:.04rem .18rem}.service-info-row__company.service-info-row__company{display:none}.service-info-row__eta.service-info-row__eta{font-size:.58rem}.service-info-row .route-info__platform--sm{--dock-size: 1.15rem;font-size:.58rem}.service-time--sm.service-time--sm{height:.95rem}.service-time--sm.service-time--sm .service-time__value{font-size:.58rem}.service-info-row__route.service-info-row__route{padding:0 .16rem}}.servicios-dash__slot .service-info-row{height:100%}.servicios-dash__slot.is-enter{animation:servicios-dash-slot-in var(--servicios-dash-motion, .32s) ease-out both}.servicios-dash__slot.is-leave{animation:servicios-dash-slot-out var(--servicios-dash-motion, .32s) ease-out both;pointer-events:none}.servicios-dash__slot.is-enter .service-info-row{animation:servicios-dash-card-in var(--servicios-dash-motion, .32s) ease-out both}.servicios-dash__slot.is-leave .service-info-row{animation:servicios-dash-card-out var(--servicios-dash-motion, .32s) ease-out both}@keyframes servicios-dash-slot-in{0%{flex-basis:0;width:0}}@keyframes servicios-dash-slot-out{to{flex-basis:0;width:0;min-width:0}}@keyframes servicios-dash-card-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes servicios-dash-card-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@media(prefers-reduced-motion:reduce){.servicios-dash__slot.is-enter,.servicios-dash__slot.is-leave,.servicios-dash__slot.is-enter .service-info-row,.servicios-dash__slot.is-leave .service-info-row{animation:none}}.servicios-dash__empty{align-self:center;margin:0;font-size:.78rem}.dashboard-panel__body:has(>.kpi-dash){container:kpi-dash/size}.kpi-dash{display:flex;align-items:stretch;width:100%;height:100%;min-width:0;min-height:0;padding:.55rem;overflow:hidden}.kpi-dash .kpi-strip{flex:1 1 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));justify-items:stretch;align-items:stretch;align-content:stretch;gap:.55rem;width:100%;height:100%;min-width:0;min-height:0;margin-bottom:0;overflow:hidden}.kpi-dash .kpi-card__body{min-width:0}.kpi-dash .kpi-card__label{overflow:hidden;font-size:clamp(.7rem,9cqh,1.2rem);text-overflow:ellipsis;white-space:nowrap}.kpi-dash .kpi-card__value,.kpi-dash .kpi-card__series-value{font-size:clamp(1.15rem,22cqh,3.2rem);line-height:1}.kpi-dash .kpi-card__updated{font-size:clamp(.65rem,6cqh,.9rem)}.kpi-dash .kpi-card__icon{width:clamp(1.7rem,20cqh,3.2rem);height:clamp(1.7rem,20cqh,3.2rem)}@container kpi-dash (min-aspect-ratio: 3/1),@container kpi-dash (max-height: 9rem){.kpi-dash{padding:.35rem}.kpi-dash .kpi-strip{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:.4rem}}@container kpi-dash (max-aspect-ratio: 1/1){.kpi-dash .kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}}@container kpi-dash (max-width: 20rem){.kpi-dash .kpi-strip{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(6,minmax(0,1fr))}}@container kpi-card (max-height: 5.5rem){.kpi-card__watermark.kpi-card__watermark,.kpi-card__hint.kpi-card__hint,.kpi-card__updated.kpi-card__updated{display:none}}@container kpi-card (max-height: 3.6rem){.kpi-card__icon.kpi-card__icon{display:none}.kpi-card__body.kpi-card__body{flex-direction:row;align-items:baseline;justify-content:space-between;gap:.35rem;width:100%}.kpi-card__value.kpi-card__value,.kpi-card__series-value.kpi-card__series-value{flex:0 0 auto}}.media-dash{display:flex;flex-direction:column;width:100%;min-height:0;height:100%}.media-dash__caption{margin:0;padding:.35rem .55rem 0;font-size:.8rem;color:var(--text-muted)}.media-dash__img,.media-dash__frame{flex:1;min-height:0;width:100%;border:0;object-fit:contain;background:var(--bg-panel)}.media-dash--overlay{position:relative}.media-dash--overlay .media-dash__caption{position:absolute;inset:auto 0 0;z-index:1;display:flex;align-items:flex-end;padding:2.2rem .85rem .75rem;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--bg-card);text-shadow:0 1px 2px color-mix(in srgb,var(--text-primary) 45%,transparent);background:linear-gradient(to top,color-mix(in srgb,var(--text-primary) 78%,transparent) 0%,color-mix(in srgb,var(--text-primary) 28%,transparent) 55%,transparent 100%);pointer-events:none}.dashboard-slide{position:relative;flex:1;min-height:0;overflow:hidden}.dashboard-slide__layer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;min-height:0;transition:transform .28s ease}.dashboard-slide__layer>*{flex:1;min-width:0;min-height:0;width:100%}.dashboard-slide__layer--in{transform:translate(100%)}.dashboard-slide__layer--shown{transform:translate(0)}.dashboard-slide__layer--out{transform:translate(-100%)}@media(prefers-reduced-motion:reduce){.dashboard-slide__layer{transition:none}}.weather-dash{container:weather-dash/size;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:.55rem;width:100%;height:100%;min-height:0;padding:.45rem;overflow:hidden}.weather-dash__top{display:flex;flex-direction:row;align-items:stretch;gap:.55rem;min-height:0;min-width:0;overflow:hidden}@container weather-dash (max-width: 42rem){.weather-dash__top{flex-direction:column}}@container weather-dash (max-width: 42rem) and (max-height: 22rem){.weather-dash__top{flex-direction:row}}@container weather-dash (max-height: 22rem){.weather-dash__top{gap:.3rem}}.weather-dash-list{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;min-width:0;overflow:hidden}@container weather-dash (max-width: 42rem),@container weather-dash (max-height: 22rem){.weather-dash-list{gap:.22rem}}.weather-dash-day{display:flex;flex-direction:column;align-items:flex-start;box-sizing:border-box;min-width:0;padding:.35rem .45rem;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:var(--bg-card)}@container weather-dash (max-width: 42rem),@container weather-dash (max-height: 22rem){.weather-dash-day{align-items:center;padding:.16rem .18rem}}.weather-dash-day--wet{border-color:color-mix(in srgb,#3498db 70%,var(--border));background:color-mix(in srgb,#3498db 10%,var(--bg-card));box-shadow:inset 0 2px #3498db}.weather-dash-day__date{font-size:.72rem;font-weight:600;text-transform:capitalize;margin-bottom:.1rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@container weather-dash (max-width: 42rem),@container weather-dash (max-height: 22rem){.weather-dash-day__date{margin-bottom:.04rem;font-size:.58rem}}.weather-dash-day__icon{margin:.05rem 0 .15rem;line-height:0}@container weather-dash (max-width: 42rem),@container weather-dash (max-height: 22rem){.weather-dash-day__icon{margin:0 0 .06rem}}.weather-dash-day__temps{display:flex;gap:.3rem;font-size:.95rem;font-weight:700}@container weather-dash (max-width: 42rem),@container weather-dash (max-height: 22rem){.weather-dash-day__temps{gap:.15rem;font-size:.72rem}}.weather-dash-day__min{color:var(--text-secondary);font-weight:500}.weather-dash-day__meta{margin-top:.15rem;font-size:.65rem;color:var(--text-secondary);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@container weather-dash (max-width: 42rem),@container weather-dash (max-height: 22rem){.weather-dash-day__meta{display:none}}.weather-dash-day__meta--wet{color:#3498db;font-weight:700}.weather-tone-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary)}.weather-tone-icon--sunny{color:#f1c40f}.weather-tone-icon--partly{color:#f39c12}.weather-tone-icon--cloudy{color:#95a5a6}.weather-tone-icon--fog{color:#bdc3c7}.weather-tone-icon--drizzle{color:#5dade2}.weather-tone-icon--rain{color:#3498db}.weather-tone-icon--snow{color:#85c1e9}.weather-tone-icon--storm{color:#9b59b6}.weather-tone-icon--variable{color:var(--accent-secondary)}.weather-dash__left{flex:0 1 16.5rem;width:16.5rem;max-width:40%;min-width:9.5rem;display:flex;min-height:0;overflow:hidden}@container (max-width: 42rem){.weather-dash__left{flex:0 1 auto;width:100%;max-width:none;min-width:0;max-height:11rem}}@container (max-width: 42rem) and (max-height: 22rem){.weather-dash__left{flex:0 1 11.5rem;width:11.5rem;max-width:42%;max-height:none}}.weather-dash-current{flex:1 1 auto;display:flex;flex-direction:column;gap:.28rem;box-sizing:border-box;width:100%;min-width:0;min-height:0;padding:.4rem .5rem;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:radial-gradient(120% 80% at 50% 0%,color-mix(in srgb,var(--accent-secondary) 12%,transparent),transparent 55%),var(--bg-card)}.weather-dash-now__title{flex:0 0 auto;font-size:.75rem;font-weight:600;color:var(--text-secondary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@container (max-height: 22rem){.weather-dash-now__title{font-size:.66rem}}.weather-dash-now__body{flex:0 0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.4rem .5rem;min-width:0}@container (max-width: 42rem){.weather-dash-now__body{grid-template-columns:auto minmax(0,1fr);gap:.28rem .4rem}}.weather-dash-now__main{min-width:0}.weather-dash-now__temp{font-size:1.55rem;font-weight:750;line-height:1.05;letter-spacing:.02em;color:var(--text-primary)}@container (max-width: 42rem){.weather-dash-now__temp{font-size:1.28rem}}.weather-dash-now__label{margin-top:.08rem;font-size:.72rem;font-weight:600;color:var(--text-secondary);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weather-dash-now__clock{display:flex;flex-direction:column;align-items:flex-end;gap:.08rem;min-width:0}@container (max-width: 42rem){.weather-dash-now__clock{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:baseline;gap:.35rem}}.weather-dash-now__clock-time{font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.03em;color:var(--text-primary);line-height:1.1}.weather-dash-now__clock-date{font-size:.66rem;font-weight:600;color:var(--text-secondary);text-transform:capitalize;white-space:nowrap}.weather-dash-now__meta{flex:0 0 auto;font-size:.68rem;font-weight:600;color:var(--text-secondary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@container (max-height: 16rem){.weather-dash-now__meta{display:none}}.weather-dash-sun{flex:1 1 auto;display:flex;flex-direction:column;width:100%;min-width:0;min-height:2.6rem;overflow:hidden}@container (max-height: 16rem){.weather-dash-sun{min-height:2rem}}.weather-dash-sun .solar-sky-arc__path{stroke:color-mix(in srgb,var(--col-wrn) 70%,var(--text-secondary));stroke-width:1.75}.weather-dash-sun .solar-sky-arc__horizon{stroke:color-mix(in srgb,var(--col-wrn) 45%,var(--border));stroke-width:1.25}.weather-dash-sun .solar-sky-arc__marker-dot{fill:color-mix(in srgb,var(--col-wrn) 85%,var(--text-primary))}.weather-dash-sun .solar-sky-arc__label,.weather-dash-sun .solar-sky-arc__label--compact{fill:var(--text-secondary);font-size:10px;font-weight:700}.weather-dash-sun .solar-sky-arc__time,.weather-dash-sun .solar-sky-arc__time--compact{fill:var(--text-primary);font-size:12px;font-weight:600}.weather-dash-sun .solar-sky-arc__moon-shadow{fill:var(--bg-card)}.weather-dash-sun .solar-sky-arc--night .solar-sky-arc__path{stroke:color-mix(in srgb,var(--accent-secondary) 55%,var(--text-secondary))}.weather-dash-sun .solar-sky-arc--night .solar-sky-arc__horizon{stroke:color-mix(in srgb,var(--accent-secondary) 35%,var(--border))}.weather-dash-sun .solar-sky-arc--night .solar-sky-arc__marker-dot{fill:color-mix(in srgb,var(--accent-secondary) 75%,var(--text-primary))}.weather-dash-sun__svg{display:block;width:100%;flex:1 1 auto;min-height:0;height:100%}.weather-dash-radiation{flex:0 0 auto;display:flex;align-items:center;gap:.4rem;min-width:0;padding-top:.15rem;border-top:1px solid var(--border)}.weather-dash-radiation__icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;color:color-mix(in srgb,var(--col-wrn) 85%,var(--text-primary))}.weather-dash-radiation__value{min-width:0;overflow:hidden;font-size:.92rem;font-weight:700;line-height:1.15;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap}.weather-dash-radiation__meta{margin-left:auto;flex:0 1 auto;min-width:0;overflow:hidden;font-size:.72rem;font-weight:600;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap}@container (max-width: 24rem){.weather-dash-radiation__meta{display:none}}.solar-sky-arc{pointer-events:none}.solar-sky-arc__path{stroke:#f5c8426b;stroke-width:1.25;stroke-linecap:round;stroke-dasharray:4 5}.solar-sky-arc__horizon{stroke:#f5c84238;stroke-width:1;stroke-linecap:round}.solar-sky-arc__marker-dot{fill:#f5c842bf}.solar-sky-arc__label{fill:#f5c842e0;font-size:8px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.solar-sky-arc__label--compact{font-size:7px}.solar-sky-arc__time{fill:var(--text-primary);font-size:9px;font-weight:500;font-variant-numeric:tabular-nums}.solar-sky-arc__time--compact{font-size:8px}.solar-sky-arc__moon-shadow{fill:var(--bg-card)}.solar-sky-arc--night .solar-sky-arc__path{stroke:#c8d4ef61}.solar-sky-arc--night .solar-sky-arc__horizon{stroke:#c8d4ef33}.solar-sky-arc--night .solar-sky-arc__marker-dot{fill:#c8d4efb8}.solar-sky-arc--night .solar-sky-arc__label{fill:#c8d4efe0}.solar-sky-arc--loading .solar-sky-arc__path,.solar-sky-arc--error .solar-sky-arc__path{opacity:.3}.weather-dash-chart{flex:1 1 0;display:flex;flex-direction:column;box-sizing:border-box;min-width:0;min-height:0}@container weather-dash (max-width: 42rem){.weather-dash-chart{flex:1 1 6rem;min-height:5rem}}@container weather-dash (max-width: 42rem) and (max-height: 22rem){.weather-dash-chart{flex:1 1 0;min-height:0}}.weather-dash-chart{padding:.35rem .45rem .45rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);overflow:hidden}.weather-dash-chart__title{flex:0 0 auto;font-size:.75rem;font-weight:600;color:var(--text-secondary);padding:.15rem .25rem 0}@container (max-height: 22rem){.weather-dash-chart__title{display:none}}.weather-dash-chart__canvas{flex:1 1 auto;min-height:0;width:100%;height:100%}.eventos-dash{container-type:inline-size;margin:0;padding:.4rem;list-style:none;overflow:auto;width:100%;min-height:0}.eventos-dash__item{display:grid;grid-template-columns:4.2rem minmax(0,1fr) auto;gap:.4rem;align-items:start;padding:.35rem .2rem;border-bottom:1px solid var(--border);font-size:.8rem}@container (max-width: 22rem){.eventos-dash__item{grid-template-columns:minmax(0,1fr)}}.eventos-dash__kind{font-weight:650}.eventos-dash__item--alarma .eventos-dash__kind{color:var(--danger)}.eventos-dash__text{overflow-wrap:anywhere}.eventos-dash time{color:var(--text-muted);font-variant-numeric:tabular-nums}@container (max-width: 22rem){.eventos-dash time{grid-column:1}}.vista-darsenas-dash{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}.darsenas-page{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden}.darsenas-page:fullscreen,.darsenas-page:-webkit-full-screen,.darsenas-page.is-fullscreen{width:100%;height:100%;padding:0;background:var(--bg-primary)}.darsenas-page--embed{min-height:0}.darsenas-page--embed .darsena-map{border:0;border-radius:0;background:transparent}.darsenas-stat{display:inline-flex;align-items:stretch;height:1.7rem;overflow:hidden;border:1px solid var(--border);border-radius:999px;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.darsenas-stat__icon{display:inline-flex;align-items:center;justify-content:center;padding:0 .38rem;border-right:1px solid color-mix(in srgb,currentColor 28%,transparent)}.darsenas-stat__value{display:inline-flex;align-items:center;padding:0 .18rem 0 .42rem;font-size:.92rem;font-weight:800;letter-spacing:.02em}.darsenas-stat__label{display:inline-flex;align-items:center;padding:0 .55rem 0 .14rem;font-size:.62rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;opacity:.88}.darsenas-stat--occupied{border-color:color-mix(in srgb,var(--estado-darsena-bg) 55%,var(--border));background:color-mix(in srgb,var(--estado-darsena-bg) 22%,var(--bg-elevated));color:var(--estado-darsena-bg)}[data-theme=dark] .darsenas-stat--occupied{color:color-mix(in srgb,var(--estado-darsena-fg) 70%,var(--estado-darsena-bg))}.darsenas-stat--free{border-color:color-mix(in srgb,var(--ok) 42%,var(--border));background:var(--ok-soft);color:var(--ok)}.action-wheel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;background:color-mix(in srgb,var(--bg-primary) 42%,transparent)}.action-wheel:not(.is-ready) .action-wheel__stage{opacity:0}.action-wheel__stage{position:absolute;width:0;height:0;pointer-events:none}.action-wheel__orbit{--i: 0;--tx: 0px;--ty: 0px;position:absolute;top:0;left:0;width:0;height:0;pointer-events:none;animation:action-wheel-fly .46s cubic-bezier(.175,.885,.32,1.275) both;animation-delay:calc(var(--i) * 38ms)}.action-wheel__btn{--action-bg: var(--bg-elevated);--action-fg: var(--text-primary);position:absolute;top:0;left:0;display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;margin:0;border:1px solid color-mix(in srgb,var(--action-bg) 55%,var(--border));border-radius:.7rem;background:var(--action-bg);color:var(--action-fg);box-shadow:var(--shadow-outline),var(--shadow-sharp);pointer-events:auto;cursor:pointer;transform:translate(-50%,-50%);transition:transform .16s ease,filter .16s ease}.action-wheel__orbit .ui-tooltip-anchor{position:absolute;top:0;left:0;pointer-events:auto;transform:translate(-50%,-50%)}.action-wheel__orbit .ui-tooltip-anchor .action-wheel__btn{position:static;transform:none}.action-wheel__btn:hover:not(:disabled),.action-wheel__btn:focus-visible:not(:disabled){z-index:1;filter:brightness(1.12);transform:translate(-50%,-50%) scale(1.08)}.action-wheel__btn:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.45)}.action-wheel__btn--refuerzo{--action-bg: var(--accent);--action-fg: var(--darsena-fg)}.action-wheel__btn--movimientos{--action-bg: var(--cmd-200);--action-fg: var(--darsena-fg)}.action-wheel__btn--historico{--action-bg: var(--text-primary);--action-fg: var(--bg-card)}.action-wheel__btn--darsena{--action-bg: var(--cmd-204);--action-fg: var(--estado-retrasado-fg)}.action-wheel__btn--comentario{--action-bg: var(--ok);--action-fg: var(--darsena-fg)}.action-wheel__btn--cancelar{--action-bg: var(--danger);--action-fg: var(--darsena-fg)}.action-wheel__btn--ruta{--action-bg: var(--accent-secondary);--action-fg: var(--darsena-fg)}.action-wheel__btn--finalizar{--action-bg: var(--estado-finalizado-bg);--action-fg: var(--estado-finalizado-fg)}.action-wheel__btn--a-darsena{--action-bg: var(--estado-darsena-bg);--action-fg: var(--estado-darsena-fg)}.action-wheel__btn--a-espera{--action-bg: var(--estado-espera-bg);--action-fg: var(--estado-espera-fg)}.action-wheel__btn--hora{--action-bg: var(--brand);--action-fg: var(--darsena-fg)}.action-wheel__btn--megafonia{--action-bg: var(--cmd-pax);--action-fg: var(--darsena-fg)}.action-wheel__hub{position:absolute;top:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;gap:.4rem;width:12rem;padding:.7rem .85rem;border:1px solid var(--border);border-radius:1rem;background:var(--bg-card);box-shadow:var(--shadow);text-align:center;pointer-events:auto;transform:translate(-50%,-50%);animation:action-wheel-hub .28s ease-out both}.action-wheel__hub.is-entrada{border-top:3px solid var(--route-in)}.action-wheel__hub.is-salida{border-top:3px solid var(--route-out)}.action-wheel__dock{position:absolute;top:.42rem;right:.42rem;z-index:1;min-width:2.25rem;height:2.25rem;font-size:1.02rem}.action-wheel__name{width:100%;min-width:0;margin:0;padding-top:.5rem;border-top:1px solid var(--border);overflow:hidden;font-size:.82rem;text-align:center}.action-wheel__name .timeline-item-name{display:block;width:100%;font-size:inherit}.action-wheel__name .timeline-item-name.is-overflow{text-align:left}.action-wheel__meta{display:flex;align-items:center;align-self:stretch;justify-content:flex-start;flex-wrap:wrap;gap:.4rem;min-height:2.25rem;padding-right:2.55rem}.action-wheel__brand{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.action-wheel__logo{max-width:7.5rem;min-height:2.35rem;max-height:2.35rem;width:auto;height:auto;object-fit:contain}.action-wheel__company{margin:0;color:var(--text-secondary);font-size:.78rem;font-weight:700}.action-wheel__facts{display:flex;align-items:stretch;justify-content:center;flex-wrap:nowrap;gap:.4rem;height:1.85rem}.action-wheel__facts .pax-badge{align-self:stretch;height:auto}.action-wheel__plate{height:1.85rem;max-width:8.2rem}.action-wheel__plate .es-plate__eu{width:.78rem;font-size:.42rem}.action-wheel__plate .es-plate__text{padding:0 .38rem;font-size:.68rem}.action-wheel__foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;margin-top:.1rem;padding-top:.45rem;border-top:1px solid var(--border)}.action-wheel__ids{display:flex;flex-wrap:wrap;align-items:center;gap:.28rem;min-width:0}.action-wheel__tools{display:flex;align-items:center;gap:.28rem;flex:0 0 auto}.action-wheel__announce-time{font-variant-numeric:tabular-nums;font-weight:800}@keyframes action-wheel-hub{0%{opacity:0;transform:translate(-50%,-50%) scale(.86)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes action-wheel-fly{0%{opacity:0;transform:translate(var(--ox, 0px),var(--oy, 0px))}to{opacity:1;transform:translate(var(--tx),var(--ty))}}@keyframes action-wheel-bar-in{0%{opacity:0;transform:translateY(.45rem) scale(.82)}to{opacity:1;transform:none}}.action-wheel.is-bar .action-wheel__stage{--hub-h: 12rem}.action-wheel.is-bar .action-wheel__bar{position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;gap:.4rem;pointer-events:auto;transform:translate(-50%,calc(-50% - var(--hub-h) / 2 - 2.2rem))}.action-wheel.is-bar .action-wheel__orbit{position:static;width:auto;height:auto;animation:action-wheel-bar-in .36s cubic-bezier(.175,.885,.32,1.275) both}.action-wheel.is-bar .action-wheel__orbit .ui-tooltip-anchor,.action-wheel.is-bar .action-wheel__btn{position:static;transform:none}.action-wheel.is-bar .action-wheel__btn:hover:not(:disabled),.action-wheel.is-bar .action-wheel__btn:focus-visible:not(:disabled){transform:scale(1.08)}@media(prefers-reduced-motion:reduce){.action-wheel:not(.is-ready) .action-wheel__stage{opacity:1}.action-wheel__hub{animation:none;transform:translate(-50%,-50%)}.action-wheel__orbit{animation:none;opacity:1;transform:translate(var(--tx),var(--ty))}.action-wheel.is-bar .action-wheel__orbit{transform:none}.action-wheel__btn{transition:none}}.timeline-item-name{flex:1 1 auto;min-width:0;overflow:hidden;font-size:.72rem}.timeline-item-name.route-info__name{text-overflow:clip}.timeline-item-name__text{display:inline-block;white-space:nowrap;vertical-align:bottom}.timeline-item-name.is-overflow .timeline-item-name__text{will-change:transform}@media(prefers-reduced-motion:reduce){.timeline-item-name.is-overflow .timeline-item-name__text{will-change:auto}}.register-service{display:flex;flex-direction:column;gap:.85rem}.register-service__cards{display:grid;grid-template-columns:minmax(5.5rem,.7fr) minmax(12rem,1.4fr) minmax(8rem,1fr);gap:.75rem;align-items:stretch}.register-service__card{display:flex;flex-direction:column;align-items:stretch;gap:.55rem;padding:.85rem .75rem;border:1px solid var(--border);border-radius:.9rem;background:var(--bg-card)}.register-service__card-title{display:inline-flex;align-items:center;justify-content:flex-start;gap:.28rem;width:100%;color:var(--text-secondary);font-size:.78rem;font-weight:750;text-align:left}.register-service__card-title.is-required:after{content:" *";color:var(--danger)}.register-service__control{display:flex;flex:1 1 auto;align-items:center;justify-content:center;min-height:4.6rem}.register-service__control .plate-autocomplete{width:100%}.register-service .route-info__platform.register-service__dock{width:4.6rem;height:4.6rem;min-width:4.6rem;min-height:4.6rem;padding:0;border-radius:.45rem;font-size:1.5rem}.register-service__pax{max-width:8rem;height:3.4rem;font-size:1.85rem;font-weight:800;text-align:center;font-variant-numeric:tabular-nums}.register-service-modal .form-section{margin-top:0}@media(max-width:480px){.register-service__cards{grid-template-columns:1fr}}.darsena-map{position:relative;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--bg-elevated) 70%,var(--bg-primary))}.darsena-map__floor{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;object-position:center;pointer-events:none;-webkit-user-select:none;user-select:none}.darsena-map__stats,.darsena-map__tools{position:absolute;z-index:8;display:flex;align-items:center;gap:.3rem;padding:.3rem;border:1px solid var(--border);border-radius:.75rem;background:color-mix(in srgb,var(--bg-panel) 88%,transparent);box-shadow:var(--shadow);pointer-events:auto}.darsena-map__stats{top:.55rem;left:.55rem}.darsena-map__tools{top:.55rem;right:.55rem}.darsena-map__marker{position:absolute;container-type:inline-size;transform:translate(-50%,-50%);padding:0;border:0;background:transparent;cursor:pointer;z-index:2;touch-action:none}.darsena-map__visual{display:block;width:100%;transform-origin:50% 80%;filter:drop-shadow(0 .35rem .55rem color-mix(in srgb,var(--bg-primary) 55%,transparent));transition:transform .22s ease,filter .22s ease}.darsena-map__marker.is-editing{cursor:grab;z-index:3}.darsena-map__marker.is-dragging{cursor:grabbing;z-index:6}.darsena-map__marker.is-dragging .darsena-map__visual,.darsena-map__marker.is-enter .darsena-map__visual,.darsena-map__marker.is-leaving .darsena-map__visual{transition:none}.darsena-map__marker.is-enter .darsena-map__visual{animation:darsena-bus-pop .78s cubic-bezier(.22,1.55,.32,1) both;animation-delay:var(--darsena-enter-delay, 0s)}.darsena-map__marker.is-card-below{z-index:3}.darsena-map__marker.is-leaving{pointer-events:none;z-index:4}.darsena-map__marker.is-leaving .darsena-map__visual{animation:darsena-bus-leave .42s cubic-bezier(.4,0,1,.35) forwards}.darsena-map__marker.is-empty{cursor:default;z-index:1}.darsena-map__marker.is-empty .darsena-map__visual{filter:none}.darsena-map__marker:not(.is-editing):not(.is-leaving):not(.is-enter):not(.is-empty):hover .darsena-map__visual,.darsena-map__marker:not(.is-editing):not(.is-leaving):not(.is-enter):not(.is-empty):focus-visible .darsena-map__visual{transform:translateY(-.45rem);filter:drop-shadow(0 0 .28rem color-mix(in srgb,var(--accent) 80%,transparent)) drop-shadow(0 0 .75rem color-mix(in srgb,var(--accent) 50%,transparent)) drop-shadow(0 .55rem .7rem color-mix(in srgb,var(--bg-primary) 45%,transparent))}@keyframes darsena-bus-pop{0%{opacity:0;transform:translateY(-2.6rem) scale(.12)}28%{opacity:1;transform:translateY(-1.1rem) scale(1.22)}48%{transform:translateY(-.35rem) scale(.88)}68%{transform:translateY(.18rem) scale(1.08)}84%{transform:translateY(-.06rem) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes darsena-bus-leave{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.08)}}.darsena-map__fx{position:absolute;top:0;right:0;bottom:0;left:0;z-index:7;width:100%;height:100%;pointer-events:none}@media(prefers-reduced-motion:reduce){.darsena-map__visual{transition:none;animation:none!important}}.darsena-map__bus{display:block;width:100%;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.darsena-map__number.route-info__platform{position:absolute;left:50%;top:50%;z-index:1;transform:translate(-50%,-50%);pointer-events:none;--dock-size: var(--darsena-dock-size, clamp(1rem, 48cqw, 2.5rem));min-width:var(--dock-size);height:var(--dock-size);padding:0 .16em;border-width:1px;border-radius:.28em;font-size:calc(var(--dock-size) * .48)}.darsena-map__card{position:absolute;left:50%;bottom:calc(100% + .28rem);transform:translate(-50%) scale(var(--darsena-card-scale, 1));transform-origin:50% 100%;display:grid;grid-template-rows:1.15rem 1.1rem 1.05rem .88rem;align-items:center;justify-items:center;gap:.12rem;box-sizing:border-box;width:10.5rem;height:5.2rem;padding:.28rem .42rem;border-radius:18px;background:color-mix(in srgb,var(--bg-elevated) 92%,transparent);border:1px solid var(--border);box-shadow:var(--shadow-sm);color:var(--text-primary);text-align:center;overflow:hidden;pointer-events:none}.darsena-map__card-mark{position:absolute;right:.08rem;bottom:-.28rem;z-index:0;color:color-mix(in srgb,var(--text-primary) 70%,var(--accent));font-size:3.55rem;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.06em;line-height:.82;opacity:.16;-webkit-user-select:none;user-select:none;pointer-events:none}.darsena-map__card-times,.darsena-map__card-route,.darsena-map__card-company,.darsena-map__card-meta{position:relative;z-index:1}.darsena-map__card.is-below{bottom:auto;top:calc(100% + .28rem);transform-origin:50% 0}.darsena-map__card-times{display:flex;align-items:center;justify-content:center;gap:.35rem;flex-wrap:nowrap;width:100%;height:100%;min-height:0;overflow:hidden}.darsena-map__card-times .service-time,.darsena-map__card-times .stay-time{flex:0 0 auto}.darsena-map__card-route{display:flex;align-items:center;justify-content:center;gap:.28rem;min-width:0;width:100%;height:100%;overflow:hidden;font-size:.78rem;font-weight:700}.darsena-map__card-route .route-kind-mark{flex:0 0 auto}.darsena-map__card-route .timeline-item-name{flex:0 1 auto;max-width:100%;font-size:inherit;font-weight:inherit}.darsena-map__card-route:has(.timeline-item-name.is-overflow){justify-content:flex-start}.darsena-map__card-route:has(.timeline-item-name.is-overflow) .timeline-item-name{flex:1 1 auto}.darsena-map__card-company{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;height:100%;overflow:hidden}.darsena-map__card-company .company-mark{justify-content:center}.darsena-map__card-company .company-mark--sm .company-mark__logo{max-height:.95rem}.darsena-map__card-company .company-mark__name{font-size:.68rem}.darsena-map__card-meta{display:flex;align-items:center;justify-content:center;gap:.28rem;width:100%;height:100%;min-height:0}.darsena-map__card-meta .pax-badge--sm{height:.88rem;padding:0 .28rem 0 .22rem;font-size:.62rem}.darsena-map__empty{color:var(--text-muted);font-size:.72rem;font-weight:700;line-height:1}.darsena-map__plate.es-plate,.darsena-map__plate.es-plate--static{height:.88rem;max-width:6.2rem;border-width:1px;border-radius:.28rem}.darsena-map__plate .es-plate__eu{width:.48rem;font-size:.28rem}.darsena-map__plate .es-plate__stars{font-size:.2rem}.darsena-map__plate .es-plate__text{padding:0 .2rem;font-size:.48rem;letter-spacing:.06em}.darsena-peek{position:absolute;left:.55rem;right:.55rem;bottom:.55rem;z-index:9;display:flex;justify-content:center;pointer-events:none}.darsena-peek__card{position:relative;display:flex;align-items:stretch;gap:.85rem;max-width:min(50rem,100%);width:100%;min-height:5.35rem;padding:.7rem .9rem .7rem .75rem;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--bg-card);box-shadow:var(--shadow);color:var(--text-primary)}.darsena-peek__stripe{flex:0 0 .38rem;width:.38rem;margin:-.7rem 0 -.7rem -.75rem;border-radius:18px 0 0 18px;background:color-mix(in srgb,var(--text-muted) 35%,transparent)}.darsena-peek.is-in .darsena-peek__card{animation:darsena-peek-in .32s cubic-bezier(.22,1,.36,1) both}.darsena-peek.is-out .darsena-peek__card{animation:darsena-peek-out .2s ease-in both}.darsena-peek__dock{position:absolute;top:.35rem;right:.45rem;bottom:.35rem;z-index:0;display:flex;align-items:center;justify-content:flex-end;width:5.35rem;container-type:size;pointer-events:none}.darsena-peek__dock-num{color:color-mix(in srgb,var(--text-primary) 70%,var(--accent));font-size:94cqh;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.05em;line-height:1;text-align:right;opacity:.13;-webkit-user-select:none;user-select:none}.darsena-peek__card:has(.darsena-peek__photo.is-ready) .darsena-peek__dock{right:8.85rem;width:4.35rem}.darsena-peek__body{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:.28rem;min-width:0;flex:1 1 auto;margin-right:5.55rem}.darsena-peek__card:has(.darsena-peek__photo.is-ready) .darsena-peek__body{margin-right:0}.darsena-peek__top{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;max-width:100%}.darsena-peek__times{display:flex;align-items:flex-end;gap:.7rem;min-width:0}.darsena-peek__field{display:flex;flex-direction:column;gap:.08rem}.darsena-peek__label{color:var(--text-secondary);font-size:.62rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.darsena-peek__status{flex:0 0 auto;padding:.18rem .5rem;border-radius:999px;font-size:.72rem;font-weight:800}.darsena-peek__body .route-label{width:fit-content;max-width:100%;font-size:1.05rem;font-weight:800}.darsena-peek__meta{display:flex;align-items:center;justify-content:space-between;gap:.7rem;min-width:0;width:100%;max-width:100%}.darsena-peek__meta .company-mark{justify-content:flex-start;min-width:0;max-width:14rem}.darsena-peek__ops{display:flex;align-items:center;flex:0 0 auto;margin-left:auto;gap:.45rem}.darsena-peek__plate.es-plate--static{height:1.55rem}.darsena-peek__photo{position:relative;z-index:1;flex:0 0 0;width:0;overflow:hidden;opacity:0}.darsena-peek__photo.is-ready{flex:0 0 8.6rem;width:8.6rem;margin:-.7rem -.9rem -.7rem 0;opacity:1}.darsena-peek__photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.darsena-peek__notes{margin:0;width:100%;max-width:100%;overflow:hidden;color:var(--text-secondary);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}@keyframes darsena-peek-in{0%{opacity:0;transform:translateY(1.15rem)}to{opacity:1;transform:translateY(0)}}@keyframes darsena-peek-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(.7rem)}}@media(prefers-reduced-motion:reduce){.darsena-peek.is-in .darsena-peek__card,.darsena-peek.is-out .darsena-peek__card{animation:none}.darsena-peek.is-out .darsena-peek__card{opacity:0}}.energy-dash{container-type:inline-size;display:flex;flex-direction:column;gap:.5rem;width:100%;height:100%;min-height:0;padding:.45rem .5rem .5rem}.energy-dash--page{height:22rem;min-height:22rem;padding:0}.energy-dash__body{flex:1 1 auto;display:grid;grid-template-areas:"table chart";grid-template-columns:minmax(15rem,.42fr) minmax(0,1fr);gap:.6rem;min-height:0;min-width:0}@container (max-width: 40rem){.energy-dash__body{grid-template-areas:"table" "chart";grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(10rem,.42fr) minmax(12rem,1fr)}}[data-device=desktop-landscape] .energy-dash__body{grid-template-areas:"chart table";grid-template-columns:minmax(0,40%) minmax(0,60%)}@container (max-width: 40rem){[data-device=desktop-landscape] .energy-dash__body{grid-template-areas:"table" "chart";grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(10rem,.42fr) minmax(12rem,1fr)}}.energy-dash--solo .energy-dash__body,[data-device=desktop-landscape] .energy-dash--solo .energy-dash__body{grid-template-areas:"main";grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}@container (max-width: 40rem){.energy-dash--solo .energy-dash__body,[data-device=desktop-landscape] .energy-dash--solo .energy-dash__body{grid-template-areas:"main";grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}}.energy-dash--solo .energy-dash__table,.energy-dash--solo .energy-dash__chart-col{grid-area:main}.energy-dash__table{grid-area:table;display:flex;min-width:0;min-height:0}.energy-dash__chart-col{grid-area:chart;display:flex;flex-direction:column;gap:.4rem;min-width:0;min-height:0}.energy-dash__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-width:0;flex:0 0 auto}.energy-dash__windows-label{flex:0 0 auto;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.energy-dash__windows{flex:1 1 auto;min-width:0}.energy-dash__hint{flex:0 0 auto;color:var(--text-muted);font-size:.72rem;font-variant-numeric:tabular-nums;white-space:nowrap}.energy-dash__table .data-table-wrap{flex:1 1 auto;height:100%}.energy-dash__ref{display:flex;flex-direction:column;align-items:stretch;gap:.12rem;min-width:0;padding:.12rem 0}.energy-dash__desc{margin-left:1.55rem;color:var(--text-muted);font-size:.7rem;font-weight:550;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.energy-dash__ref .energy-tree-cell--child+.energy-dash__desc{margin-left:2.85rem}.energy-dash .route-table td.energy-dash__power,.energy-dash .data-table td.energy-dash__power{position:relative;padding:0;overflow:hidden}.energy-dash__kw{--energy-dash-bar: 0%;--energy-dash-color: var(--accent);position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:baseline;justify-content:flex-end;gap:.22rem;padding:0 .45rem}.energy-dash__kw-fill{position:absolute;inset:.18rem auto .18rem .12rem;width:var(--energy-dash-bar);max-width:calc(100% - .24rem);border-radius:.28rem;background:color-mix(in srgb,var(--energy-dash-color) 38%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--energy-dash-color) 42%,transparent);pointer-events:none}.energy-dash__kw-value{position:relative;z-index:1;font-size:.92rem;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.energy-dash__kw--lead .energy-dash__kw-value{font-size:1rem;font-weight:800}.energy-dash__kw-unit{position:relative;z-index:1;color:var(--text-muted);font-size:.68rem;font-weight:700}.energy-dash .route-table tbody tr.informe-energia__row--child td:first-child{position:relative;overflow:visible;padding-left:1.15rem}.energy-dash .route-table tbody tr.informe-energia__row--child td:first-child .energy-tree-cell--child{margin-left:1.1rem}.energy-dash .route-table tbody tr.informe-energia__row--child td:first-child .energy-tree-cell__connector{position:absolute;left:.55rem;color:var(--accent);overflow:visible;pointer-events:none}.energy-dash .route-table tbody tr.informe-energia__row--parent td:not(.data-table__col--actions),.energy-dash .route-table tbody tr.informe-energia__row--child td:not(.data-table__col--actions){overflow:visible}.energy-dash .route-table tbody tr.informe-energia__row--parent:not(:hover):not(.is-active) td{background:color-mix(in srgb,var(--accent) 11%,var(--bg-primary));font-weight:700}.energy-dash .route-table tbody tr.informe-energia__row--child:not(:hover):not(.is-active) td{background:var(--bg-primary)}.energy-dash .route-table tbody tr.informe-energia__row--parent{cursor:pointer}.energy-dash .route-table tbody tr.informe-energia__row--child{cursor:default}.energy-dash .route-table tbody tr.informe-energia__row--child td{border-bottom:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}.energy-dash__chart{flex:1 1 auto;min-height:0;height:100%}.energy-dash__chart.informe-chart{padding:.3rem .4rem .4rem}.energy-dash--solo .energy-dash__chart.informe-chart{min-height:0}.energy-dash__chart .informe-chart__canvas{min-height:0;height:100%}.energy-tree-cell{display:inline-flex;align-items:center;gap:.35rem;min-width:0;vertical-align:middle}.energy-tree-cell__label{min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:750}.energy-tree-cell__chevron{flex:0 0 auto;color:var(--text-secondary);transition:transform .16s ease}.energy-tree-cell__chevron.is-open{transform:rotate(180deg)}.energy-tree-cell__chevron-spacer{flex:0 0 auto;width:.72rem;height:.72rem}.energy-tree-cell--child .energy-tree-cell__label{font-weight:650}.informe-page .route-table tbody tr.informe-energia__row--child td:first-child{position:relative;overflow:visible;padding-left:1.15rem}.informe-page .route-table tbody tr.informe-energia__row--child td:first-child .energy-tree-cell--child{margin-left:1.1rem}.informe-page .route-table tbody tr.informe-energia__row--child td:first-child .energy-tree-cell__connector{position:absolute;left:.55rem;color:var(--accent);overflow:visible;pointer-events:none}.informe-page .route-table tbody tr.informe-energia__row--parent td:not(.data-table__col--actions),.informe-page .route-table tbody tr.informe-energia__row--child td:not(.data-table__col--actions){overflow:visible}.informe-page .route-table tbody tr.informe-energia__row--parent:not(:hover):not(.is-active) td{background:color-mix(in srgb,var(--accent) 11%,var(--bg-primary));font-weight:700}.informe-page .route-table tbody tr.informe-energia__row--child:not(:hover):not(.is-active) td{background:var(--bg-primary)}.informe-page .route-table tbody tr.informe-energia__row--parent{cursor:pointer}.informe-page .route-table tbody tr.informe-energia__row--child{cursor:default}.informe-page .route-table tbody tr.informe-energia__row--child td{border-bottom:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}.informe-chart{display:flex;flex-direction:column;min-width:0;min-height:16rem;padding:.4rem .55rem .55rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-card)}.informe-chart__title{margin:0;padding:.1rem .2rem 0;font-size:.78rem;font-weight:700;color:var(--text-secondary)}.informe-chart__canvas{flex:1 1 auto;width:100%;min-height:13.5rem;height:13.5rem}.informe-chart--wide .informe-chart__canvas{min-height:18rem;height:18rem}.informe-chart--max .informe-chart__canvas,.informe-chart--donut{min-height:0;height:100%}.informe-chart--donut .informe-chart__canvas{min-height:18rem;height:18rem}.informe-chart--report{min-height:0;height:100%;padding:.28rem .4rem .35rem}.informe-chart--report .informe-chart__canvas,.informe-chart--report.informe-chart--donut .informe-chart__canvas,.informe-chart--report .informe-chart__donut-host{min-height:0;height:100%}.informe-chart--report .informe-chart__donut-value{font-size:1.2rem;color:#000}.informe-chart--report .informe-chart__donut-unit{color:#000}.informe-chart--report .informe-chart__donut-stage{height:100%}.informe-chart--report .informe-chart__title{font-size:.7rem}.informe-chart__donut-host{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-width:0;min-height:18rem}.informe-chart__donut-stage{position:relative;width:100%}.informe-chart__skeleton{display:flex;align-items:flex-end;gap:.4rem;flex:1 1 auto;min-height:13.5rem;padding:.85rem .45rem .35rem}.informe-chart--wide .informe-chart__skeleton{min-height:18rem}.informe-chart--donut .informe-chart__skeleton{flex:1 1 auto;min-height:18rem}.informe-chart__skeleton-bar{flex:1 1 auto;min-width:0;height:38%;border-radius:.28rem .28rem .12rem .12rem}.informe-chart__skeleton-bar:nth-child(3n){height:72%}.informe-chart__skeleton-bar:nth-child(3n+1){height:51%}.informe-chart__skeleton-bar:nth-child(3n+2){height:88%}.informe-chart__skeleton--donut{align-items:center;justify-content:center}.informe-chart__skeleton-ring{width:10.5rem;height:10.5rem;border-radius:50%;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2.15rem),#000 calc(100% - 2.1rem));mask:radial-gradient(farthest-side,transparent calc(100% - 2.15rem),#000 calc(100% - 2.1rem))}.informe-chart__donut-total{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center}.informe-chart__donut-value{font-size:1.9rem;font-weight:800;line-height:1;color:var(--text-primary);font-variant-numeric:tabular-nums}.informe-chart__donut-unit{margin-top:.15rem;font-size:.85rem;font-weight:700;color:var(--text-secondary)}.informe-chart--report .informe-chart__donut-host,.informe-chart--report.informe-chart--donut .informe-chart__canvas{min-height:0;height:100%}.clima-dash{--clima-cold: #3498db;--clima-heat: #e67e22;container-type:inline-size;display:flex;flex-direction:column;width:100%;height:100%;min-height:0;padding:.45rem .5rem .5rem}.clima-dash__body{flex:1 1 auto;display:flex;min-height:0;min-width:0}.clima-dash__table,.clima-dash__chart{flex:1 1 auto;display:flex;min-width:0;min-height:0}.clima-dash__table .data-table-wrap{flex:1 1 auto;height:100%}.clima-dash__chart.informe-chart{width:100%;height:100%;min-height:0;padding:.3rem .4rem .4rem}.clima-dash__chart .informe-chart__canvas{min-height:0;height:100%}.clima-dash .route-table th.clima-dash__cold,.clima-dash .route-table td.clima-dash__cold,.clima-dash .data-table th.clima-dash__cold,.clima-dash .data-table td.clima-dash__cold{--energy-period-color: var(--clima-cold)}.clima-dash .route-table th.clima-dash__heat,.clima-dash .route-table td.clima-dash__heat,.clima-dash .data-table th.clima-dash__heat,.clima-dash .data-table td.clima-dash__heat{--energy-period-color: var(--clima-heat)}.clima-dash .route-table th.clima-dash__cold,.clima-dash .data-table th.clima-dash__cold{color:var(--clima-cold);background:color-mix(in srgb,var(--clima-cold) 16%,var(--bg-primary))}.clima-dash .route-table th.clima-dash__heat,.clima-dash .data-table th.clima-dash__heat{color:var(--clima-heat);background:color-mix(in srgb,var(--clima-heat) 16%,var(--bg-primary))}.clima-dash .route-table tbody tr:not(:hover):not(.is-active) td.clima-dash__cold,.clima-dash .data-table tbody tr:not(:hover):not(.is-active) td.clima-dash__cold{background:color-mix(in srgb,var(--clima-cold) 10%,var(--bg-primary))}.clima-dash .route-table tbody tr:not(:hover):not(.is-active) td.clima-dash__heat,.clima-dash .data-table tbody tr:not(:hover):not(.is-active) td.clima-dash__heat{background:color-mix(in srgb,var(--clima-heat) 10%,var(--bg-primary))}.clima-dash .route-table tbody tr.informe-energia__row--parent:not(:hover):not(.is-active) td{background:color-mix(in srgb,var(--accent) 11%,var(--bg-primary));font-weight:700}.clima-dash .route-table tbody tr.informe-energia__row--parent{cursor:pointer}.clima-dash .route-table tbody tr.informe-clima__row--total{cursor:default}.clima-dash .route-table tbody tr.informe-clima__row--total .energy-period-cell{font-family:Quicksand,Segoe UI,Trebuchet MS,sans-serif;font-size:1.18em;font-weight:700;letter-spacing:.02em;line-height:1.1}.clima-dash .route-table tbody tr.informe-clima__row--total .energy-tree-cell__label{font-family:Quicksand,Segoe UI,Trebuchet MS,sans-serif;font-weight:700;letter-spacing:.02em}.clima-dash .route-table tbody tr.informe-energia__row--child{cursor:default}.energy-period-cell{color:var(--energy-period-color, var(--text-primary));font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.energy-period-cell--emph{font-weight:800}.issues-page{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden;overscroll-behavior:contain;gap:1.25rem}.issues-page>.fold-panel,.issues-page__toolbar,.issues-page__kpis{flex:0 0 auto}.issues-page__toolbar{display:flex;justify-content:flex-start}.issues-page .data-table-wrap{flex:1 1 auto;min-height:14rem}.issues-page--with-preview .data-table-wrap{flex:1 1 42%;min-height:10rem}.issues-page .filter-grid{--filter-slots: 12;--filter-span: 3;--filter-span-2x: 6;grid-template-columns:repeat(var(--filter-slots),minmax(0,1fr))}.issues-page .filter-grid>.field{grid-column:span var(--filter-span)}.issues-page .filter-grid>.field--2x,.issues-page .filter-grid>.field--chips{grid-column:span var(--filter-span-2x)}@media(max-width:1100px){.issues-page .filter-grid{--filter-span: 6;--filter-span-2x: 12}}@media(max-width:480px){.issues-page .filter-grid{--filter-span: 12;--filter-span-2x: 12}}.issues-page__user{display:inline-flex;align-items:center;gap:.45rem;min-width:0;max-width:100%}.issues-page__user .ui-avatar{width:1.45rem;height:1.45rem;font-size:.55rem}.issues-page__user-name{min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:650}.issues-status,.issues-source{display:inline-flex;align-items:center;gap:.35rem;padding:.18rem .55rem;border:1px solid transparent;border-radius:999px;font-size:.72rem;font-weight:800;line-height:1.2;white-space:nowrap}.issues-status:before,.issues-source:before{content:"";width:.42rem;height:.42rem;flex:0 0 auto;border-radius:50%;background:currentColor}.issues-status--emitida{border-color:color-mix(in srgb,var(--issues-warning-fg) 42%,var(--border));background:var(--issues-warning-bg);color:var(--issues-warning-fg)}.issues-status--aceptada{border-color:color-mix(in srgb,var(--ok) 42%,var(--border));background:var(--ok-soft);color:var(--ok)}.issues-status--cerrada,.issues-source--sistema,.chip-select--issue-status .chip-select__chip--cerrada.is-active,.chip-select--issue-source .chip-select__chip--sistema.is-active{border-color:var(--border);background:var(--bg-hover);color:var(--text-muted)}.issues-source--taquilla,.chip-select--issue-source .chip-select__chip--taquilla.is-active{border-color:color-mix(in srgb,var(--issues-ticket-fg) 42%,var(--border));background:var(--issues-ticket-bg);color:var(--issues-ticket-fg)}.issues-source--usuario,.chip-select--issue-source .chip-select__chip--usuario.is-active{border-color:color-mix(in srgb,var(--issues-info-fg) 42%,var(--border));background:var(--issues-info-bg);color:var(--issues-info-fg)}.chip-select--issue-status .chip-select__chip--emitida.is-active{border-color:color-mix(in srgb,var(--issues-warning-fg) 42%,var(--border));background:var(--issues-warning-bg);color:var(--issues-warning-fg)}.chip-select--issue-status .chip-select__chip--aceptada.is-active{border-color:color-mix(in srgb,var(--ok) 42%,var(--border));background:var(--ok-soft);color:var(--ok)}.issues-page__detail{display:flex;flex-direction:column;flex:1 1 38%;min-height:18rem;min-width:0;overflow:hidden;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel)}.issues-page__detail-head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;flex:0 0 auto;min-width:0;padding:.45rem .45rem .55rem 1rem;border-bottom:1px solid var(--border)}.issues-page__detail-close{flex:0 0 auto}.issues-page__detail h2{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem}.issues-page__msg-count{margin:0 0 0 0 auto;color:var(--text-secondary);font-size:.78rem;font-weight:650;white-space:nowrap}.issues-page__msg-count strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.issues-page__msg-split{margin-left:.55rem;color:var(--text-muted);font-weight:600}.issues-page__detail-desc{flex:0 0 auto;margin:0;padding:.45rem 1rem .55rem;color:var(--text-secondary);font-size:.85rem;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.issues-page__history{margin:0;padding:.75rem .9rem 1rem;list-style:none;display:flex;flex:1 1 auto;flex-direction:column;gap:.55rem;min-height:0;overflow:auto;background:radial-gradient(color-mix(in srgb,var(--text-primary) 6%,transparent) 1px,transparent 1px) 0 0/28px 28px,color-mix(in srgb,var(--bg-secondary) 82%,var(--accent))}.issues-page__history-empty{align-self:center;margin:1.2rem 0;color:var(--text-muted);font-size:.82rem}.issues-page__msg{display:flex;width:100%}.issues-page__msg--in{justify-content:flex-start}.issues-page__msg--out{justify-content:flex-end}.issues-page__msg--sys{justify-content:center}.issues-page__bubble{display:flex;flex-direction:column;gap:.2rem;max-width:min(78%,36rem);min-width:8rem;padding:.42rem .65rem .35rem;border-radius:.55rem;box-shadow:0 1px .5px color-mix(in srgb,var(--text-primary) 12%,transparent);overflow-wrap:anywhere}.issues-page__bubble--in{background:var(--bg-card);border:1px solid var(--border);border-bottom-left-radius:.12rem}.issues-page__bubble--out{background:color-mix(in srgb,var(--accent) 22%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-bottom-right-radius:.12rem}.issues-page__bubble--sys{max-width:min(88%,28rem);min-width:0;background:color-mix(in srgb,var(--bg-card) 88%,transparent);border:1px dashed var(--border);color:var(--text-secondary);text-align:center}.issues-page__msg-author{color:var(--accent);font-size:.7rem;font-weight:800;letter-spacing:.01em}.issues-page__bubble--in .issues-page__msg-author{color:var(--issues-info-fg)}.issues-page__msg-text{margin:0;color:var(--text-primary);font-size:.82rem;line-height:1.35;white-space:pre-wrap}.issues-page__bubble--sys .issues-page__msg-text{color:var(--text-secondary);font-size:.78rem}.issues-page__msg-meta{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;color:var(--text-muted);font-size:.7rem}.issues-page__msg--in .issues-page__msg-meta{justify-content:flex-start}.issues-page__msg--sys .issues-page__msg-meta{justify-content:center}.issues-page__msg-event{font-weight:700}.issues-page__msg-meta .when-stamp{padding:0;border:0;background:transparent;font-size:inherit}.issues-page__msg-meta .when-stamp__date,.issues-page__msg-meta .when-stamp__time{font-size:inherit}[data-device=desktop-landscape] .issues-page--with-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(22rem,34rem);grid-template-rows:auto minmax(0,1fr)}[data-device=desktop-landscape] .issues-page--with-preview:has(>.issues-page__toolbar),[data-device=desktop-landscape] .issues-page--with-preview:has(>.issues-page__kpis){grid-template-rows:auto auto minmax(0,1fr)}[data-device=desktop-landscape] .issues-page--with-preview:has(>.issues-page__toolbar):has(>.issues-page__kpis){grid-template-rows:auto auto auto minmax(0,1fr)}[data-device=desktop-landscape] .issues-page--with-preview>.issues-page__toolbar,[data-device=desktop-landscape] .issues-page--with-preview>.issues-page__kpis,[data-device=desktop-landscape] .issues-page--with-preview>.fold-panel{grid-column:1/-1}[data-device=desktop-landscape] .issues-page--with-preview .data-table-wrap,[data-device=desktop-landscape] .issues-page--with-preview .issues-page__detail{min-width:0;min-height:0}@media(max-width:480px){.issues-page--with-preview .data-table-wrap,.issues-page__detail{flex-basis:50%;min-height:12rem}.issues-page__msg-count{margin-left:0;width:100%}.issues-page__detail-close{margin-left:auto}.issues-page__msg-split{display:block;margin-left:0;margin-top:.15rem}.issues-page__bubble{max-width:92%}}.reveal-panel{--reveal-line-ms: .42s;--reveal-height-ms: .44s;--reveal-delay: 0s;container-type:inline-size;flex:0 0 auto;width:100%;min-width:0}.reveal-panel__track{display:flex;flex-direction:column;width:0;max-width:100%;overflow:hidden;transition:width var(--reveal-line-ms) ease var(--reveal-delay)}.reveal-panel.is-open .reveal-panel__track{width:100%}.reveal-panel:not(.is-open) .reveal-panel__track{transition-delay:var(--reveal-height-ms)}.reveal-panel__stroke{flex:0 0 auto;height:2px;border-radius:1px;background:color-mix(in srgb,var(--accent) 62%,var(--border));opacity:1;transition:height .18s ease,opacity .18s ease}.reveal-panel.is-open .reveal-panel__stroke{height:0;opacity:0;transition-delay:calc(var(--reveal-delay) + var(--reveal-line-ms))}.reveal-panel:not(.is-open) .reveal-panel__stroke{transition-delay:0s}.reveal-panel__fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--reveal-height-ms) ease calc(var(--reveal-delay) + var(--reveal-line-ms))}.reveal-panel.is-open .reveal-panel__fold{grid-template-rows:1fr}.reveal-panel:not(.is-open) .reveal-panel__fold{transition-delay:0s}.reveal-panel__inner{min-width:0;min-height:0;overflow:hidden;width:100cqw}@media(prefers-reduced-motion:reduce){.reveal-panel__track,.reveal-panel__stroke,.reveal-panel__fold{transition:none}}.toast-issue-message{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.4rem .55rem;min-width:0}.toast-issue-message__action{font-weight:650}.toast-issue-message .issue-ticket{max-width:16rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-issue-message__title{min-width:0;max-width:22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550;opacity:.92}.planificacion-layout{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%}.timeline-page{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden}.timeline-page__content{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;gap:.75rem}.timeline-page__etiquetas,.timeline-page__kpis,.timeline-page__toolbar{flex:0 0 auto}.timeline-page__toolbar{display:flex;justify-content:flex-start;gap:1rem}.timeline-page .kpi-board{margin-bottom:0}.timeline-page .fold-panel{flex:0 0 auto}.timeline-page .daily-timeline{flex:1 1 auto;min-height:0}.daily-timeline{--lane-gutter: 5.75rem;--item-height: 2.5rem}.daily-timeline[data-timeline-item-variant="3"]{--item-height: 1.25rem}.daily-timeline{--item-stack-gap: .28rem;--lane-pad-y: .32rem;--day-height: 1.55rem;--hour-height: 1.55rem;--axis-height: calc(var(--day-height) + var(--hour-height));--pair-tone-0: var(--accent);--pair-tone-1: color-mix(in srgb, var(--accent) 42%, var(--ok));--pair-tone-2: var(--accent-secondary);--pair-tone-3: color-mix(in srgb, var(--accent) 38%, var(--route-in));--pair-tone-4: color-mix(in srgb, var(--accent) 35%, var(--route-out));position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;min-width:0;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-primary);overflow:hidden;-webkit-user-select:none;user-select:none;overscroll-behavior:none;scrollbar-width:none}.daily-timeline *,.daily-timeline *:before,.daily-timeline *:after{scrollbar-width:none}.daily-timeline::-webkit-scrollbar,.daily-timeline *::-webkit-scrollbar{width:0;height:0;display:none}.daily-timeline:fullscreen,.daily-timeline:-webkit-full-screen,.daily-timeline.is-fullscreen{width:100%;height:100%;border-radius:0;border:none}.daily-timeline__gutter{z-index:6;flex:0 0 var(--lane-gutter);width:var(--lane-gutter);display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--bg-panel)}.daily-timeline__toolbar{position:absolute;top:calc(var(--axis-height) + .5rem);right:.5rem;z-index:8;display:flex;flex-direction:row;align-items:stretch;justify-content:flex-end;border:1px solid var(--border);border-radius:.75rem;background:color-mix(in srgb,var(--bg-panel) 88%,transparent);box-shadow:var(--shadow);pointer-events:auto;overflow:hidden}.daily-timeline__toolbar-grip{display:grid;place-items:center;flex:0 0 2.6rem;width:2.6rem;color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);border-left:1px solid color-mix(in srgb,var(--border) 80%,transparent)}.daily-timeline__toolbar-strip{display:flex;flex-direction:row-reverse;align-items:center;gap:.3rem;max-width:0;padding:0;opacity:0;overflow:hidden;pointer-events:none;transition:max-width .32s ease,opacity .24s ease,padding .24s ease}.daily-timeline__toolbar.is-expanded .daily-timeline__toolbar-strip{max-width:22rem;padding:.3rem .15rem .3rem .35rem;opacity:1;pointer-events:auto}.daily-timeline__toolbar .btn{width:2rem;height:2rem;flex:0 0 auto}@media(prefers-reduced-motion:reduce){.daily-timeline__toolbar-strip{transition:none}}.daily-timeline__variant{display:inline-flex;align-items:center}.daily-timeline__variant select{height:2rem;padding:0 .5rem;border:1px solid var(--border);border-radius:.55rem;background:var(--bg-card);color:var(--text-primary);font-size:.72rem;font-weight:650}.daily-timeline__body{display:block;position:relative;flex:1 1 auto;min-height:0;overflow-x:clip;overflow-y:auto;scrollbar-width:none;cursor:grab;touch-action:none}.daily-timeline__board{position:relative;display:flex;flex-direction:row;align-items:stretch;min-width:0;min-height:100%;width:100%;height:max-content}.daily-timeline__body:active,.daily-timeline.is-item-moving .daily-timeline__body,.daily-timeline.is-item-moving .daily-timeline__body:active{cursor:grabbing}.daily-timeline__lane-label,.daily-timeline__track{--lane-stacks: 1;min-height:0;--lane-height: max( 0rem, calc( (var(--lane-pad-y) * 2) + (var(--lane-stacks) * var(--item-height)) + (max(0, var(--lane-stacks) - 1) * var(--item-stack-gap)) ) )}.daily-timeline__lane-label{flex:0 0 var(--lane-height);height:var(--lane-height);max-height:var(--lane-height);display:flex;align-items:center;justify-content:center;padding:0 .4rem;border-bottom:1px solid var(--border);background:var(--bg-panel);font-size:.72rem;font-weight:800;text-align:center;line-height:1.15;transition:background-color .28s ease,box-shadow .28s ease,color .28s ease,height .28s ease,flex-basis .28s ease,opacity .28s ease,border-color .28s ease}.daily-timeline__lane-label .route-info__platform{transition:color .28s ease,border-color .28s ease,box-shadow .28s ease,filter .28s ease}.daily-timeline__lane-label.is-alert{background:color-mix(in srgb,var(--danger) 22%,var(--bg-panel));color:var(--danger);font-size:.68rem;letter-spacing:.02em}.daily-timeline__lane-label.is-door-open{background:color-mix(in srgb,var(--ok) 7%,var(--bg-panel))}.daily-timeline__lane-label.is-activity-entrando:not(.is-alert){--lane-activity: var(--estado-entrando-bg)}.daily-timeline__lane-label.is-activity-saliendo:not(.is-alert){--lane-activity: var(--estado-saliendo-bg)}.daily-timeline__lane-label.is-activity-darsena:not(.is-alert){--lane-activity: var(--estado-darsena-bg)}.daily-timeline__lane-label.is-activity-entrando:not(.is-alert),.daily-timeline__lane-label.is-activity-saliendo:not(.is-alert),.daily-timeline__lane-label.is-activity-darsena:not(.is-alert){box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lane-activity) 48%,transparent),inset 0 12px 18px -8px color-mix(in srgb,var(--lane-activity) 55%,transparent),inset 0 -12px 18px -8px color-mix(in srgb,var(--lane-activity) 55%,transparent),inset 0 0 22px color-mix(in srgb,var(--lane-activity) 40%,transparent)}.daily-timeline__lane-label.is-activity-darsena:not(.is-alert){box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lane-activity) 58%,transparent),inset 0 14px 22px -6px color-mix(in srgb,var(--lane-activity) 68%,transparent),inset 0 -14px 22px -6px color-mix(in srgb,var(--lane-activity) 68%,transparent),inset 0 0 28px color-mix(in srgb,var(--lane-activity) 52%,transparent)}.daily-timeline__lane-label.is-clickable{cursor:pointer}.daily-timeline__lane-label.is-lane-collapsed,.daily-timeline__track.is-lane-collapsed{--lane-pad-y: 0;--lane-stacks: 0;opacity:0;overflow:hidden;border-bottom-color:transparent;pointer-events:none}.daily-timeline__track.is-door-open{background:transparent}.daily-timeline__track.is-drop-target,.daily-timeline__lane-label.is-drop-target:not(.is-alert){background:color-mix(in srgb,var(--accent) 10%,var(--bg-panel))}.daily-timeline__lane-glow{position:absolute;left:0;right:0;z-index:7;height:var(--lane-height);pointer-events:none;box-shadow:inset 0 18px 22px -12px color-mix(in srgb,var(--ok) 22%,transparent),inset 0 -18px 22px -12px color-mix(in srgb,var(--ok) 22%,transparent)}.daily-timeline__lane-glow:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--ok) 14%,transparent) 0%,color-mix(in srgb,var(--ok) 6%,transparent) 20%,transparent 42%,transparent 58%,color-mix(in srgb,var(--ok) 6%,transparent) 80%,color-mix(in srgb,var(--ok) 14%,transparent) 100%)}.daily-timeline__canvas{position:relative;z-index:1;display:flex;flex:1 1 auto;flex-direction:column;min-width:0;min-height:100%;overflow:clip;isolation:isolate}.daily-timeline__grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.daily-timeline__hour-band{fill:var(--row-even)}.daily-timeline__arrows{position:absolute;top:0;left:0;z-index:1;overflow:visible;pointer-events:none}.daily-timeline__pair-group.is-tone-0{--pair-tone: var(--pair-tone-0)}.daily-timeline__pair-head.is-tone-0{fill:var(--pair-tone-0)}.daily-timeline__pair-group.is-tone-1{--pair-tone: var(--pair-tone-1)}.daily-timeline__pair-head.is-tone-1{fill:var(--pair-tone-1)}.daily-timeline__pair-group.is-tone-2{--pair-tone: var(--pair-tone-2)}.daily-timeline__pair-head.is-tone-2{fill:var(--pair-tone-2)}.daily-timeline__pair-group.is-tone-3{--pair-tone: var(--pair-tone-3)}.daily-timeline__pair-head.is-tone-3{fill:var(--pair-tone-3)}.daily-timeline__pair-group.is-tone-4{--pair-tone: var(--pair-tone-4)}.daily-timeline__pair-head.is-tone-4{fill:var(--pair-tone-4)}.daily-timeline__pair-hit{fill:none;stroke:transparent;stroke-width:14;pointer-events:stroke;cursor:pointer}.daily-timeline__pair{stroke:var(--pair-tone, var(--accent));stroke-width:2;pointer-events:none;transition:stroke-width .15s ease,filter .15s ease}.daily-timeline__pair-group.is-pair-hover .daily-timeline__pair{stroke-width:3.25;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--pair-tone) 65%,transparent))}.daily-timeline__canvas.is-pairing .timeline-item:not(.is-pair-hover){opacity:.48}.daily-timeline__canvas.is-pairing .daily-timeline__pair-group:not(.is-pair-hover){opacity:.18}.daily-timeline__grid-line{stroke:var(--border);stroke-width:1}.daily-timeline__grid-line.is-five{stroke:var(--border);opacity:.55}.daily-timeline__grid-line.is-hour{stroke:var(--border-strong, var(--border));stroke-width:1.25}.daily-timeline__grid-line.is-day{stroke:var(--accent);stroke-width:1.5;opacity:.45}.daily-timeline.is-agenda{--lane-gutter: 0rem}.daily-timeline.is-agenda .daily-timeline__track{border-bottom:none;min-height:100%}.daily-timeline__guides{position:absolute;top:0;left:0;z-index:1;overflow:visible;pointer-events:none}.daily-timeline__guide{stroke:var(--border-strong, var(--border));stroke-width:1;opacity:.72}.daily-timeline__guide.is-unassigned{stroke:var(--danger);opacity:.9}.daily-timeline__now{position:absolute;top:0;bottom:0;z-index:2;width:2px;background:var(--accent);pointer-events:none}.daily-timeline.is-agenda .daily-timeline__now{z-index:2}.daily-timeline__track{position:relative;z-index:3;flex:0 0 var(--lane-height);height:var(--lane-height);max-height:var(--lane-height);overflow:clip;border-bottom:1px solid var(--border);pointer-events:none;transition:background-color .28s ease,height .28s ease,flex-basis .28s ease,opacity .28s ease,border-color .28s ease}@media(prefers-reduced-motion:reduce){.daily-timeline__pair,.daily-timeline__lane-label,.daily-timeline__lane-label .route-info__platform,.daily-timeline__track{transition:none}}.timeline-axis{display:flex;flex-direction:row;flex:0 0 auto;width:100%;min-width:0;border-bottom:1px solid var(--border);background:var(--bg-panel)}.timeline-axis__corner{flex:0 0 var(--lane-gutter);width:var(--lane-gutter);border-right:1px solid var(--border)}.timeline-axis__canvas{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-width:0;height:var(--axis-height);overflow:clip}.timeline-axis__days,.timeline-axis__hours{position:relative;flex:0 0 auto;width:100%;overflow:clip}.timeline-axis__days{height:var(--day-height)}.timeline-axis__hours{height:var(--hour-height);border-top:1px solid var(--border);cursor:crosshair}.timeline-axis__day{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;padding:0 .5rem;overflow:hidden;background:color-mix(in srgb,var(--accent) 6%,var(--bg-panel));color:var(--text-primary);font-size:.72rem;font-weight:800;letter-spacing:.01em;text-align:center;text-overflow:ellipsis;white-space:nowrap}.timeline-axis__day.is-current{background:color-mix(in srgb,var(--accent) 12%,var(--bg-panel))}.timeline-axis__split{position:absolute;top:0;bottom:0;z-index:1;width:2px;background:var(--accent);opacity:.55;pointer-events:none;transform:translate(-1px)}.timeline-axis__hour{position:absolute;top:.28rem;transform:translate(-50%);color:var(--text-muted);font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.timeline-axis__hour.is-minor{font-weight:650;opacity:.8}.timeline-axis__hour.is-day{color:var(--accent);font-weight:800}.timeline-axis__tip{position:absolute;top:calc(var(--day-height) - .12rem);z-index:4;padding:.05rem .34rem;border-radius:.34rem;background:var(--accent);box-shadow:var(--shadow);color:var(--bg-elevated);font-size:.7rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;transform:translate(-50%,-100%)}.timeline-axis__now{position:absolute;top:var(--day-height);bottom:0;z-index:3;width:2px;background:var(--accent);pointer-events:none;transform:translate(-1px)}.timeline-marker-line{position:absolute;top:0;bottom:0;z-index:2;width:2px;background:color-mix(in srgb,var(--accent) 72%,transparent);box-shadow:0 0 7px color-mix(in srgb,var(--accent) 24%,transparent);opacity:.72;pointer-events:none;transform:translate(-1px);transition:left .1s linear,opacity .15s ease}.timeline-marker-line.is-preview{z-index:1;opacity:.42}.timeline-marker-line.is-axis{top:var(--day-height);z-index:2}@media(prefers-reduced-motion:reduce){.timeline-marker-line{transition:none}}.timeline-item{--item-stack: 0;--grip-width: .8rem;--refuerzo-width: 0rem;position:absolute;top:calc(var(--lane-pad-y) + var(--item-stack) * (var(--item-height) + var(--item-stack-gap)));z-index:3;isolation:isolate;pointer-events:auto;display:flex;align-items:center;gap:.32rem;height:var(--item-height);padding:0 .45rem;overflow:hidden;border:1px solid color-mix(in srgb,currentColor 22%,var(--border));border-radius:.45rem;font-size:.72rem;font-weight:700;cursor:pointer;white-space:nowrap;color:inherit;transition:box-shadow .15s ease,border-color .15s ease,opacity .15s ease}.timeline-item.is-origin-ghost{z-index:4;pointer-events:none;background:transparent;border-style:dashed;border-width:2px;box-shadow:none;opacity:1}.timeline-item.is-origin-ghost>*:not(.timeline-item__grip){visibility:hidden}.timeline-item.is-mockup{z-index:5;pointer-events:none;cursor:grabbing;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 55%,transparent),0 10px 22px color-mix(in srgb,var(--bg-primary) 55%,transparent)}.daily-timeline.is-item-moving .timeline-item:not(.is-mockup):not(.is-origin-ghost){transition:top .16s ease,box-shadow .15s ease,border-color .15s ease,opacity .15s ease}.timeline-item.is-compact{gap:.2rem;padding:0 .32rem}.timeline-item .pax-badge{height:auto;align-self:center}.timeline-item.is-compact .pax-badge,.timeline-item.is-compact .timeline-item__plate,.timeline-item.is-compact .timeline-item__logo,.timeline-item.is-compact:not(.is-variant-2) .route-kind-mark{display:none}.timeline-item.is-hour-in{z-index:4}.timeline-item.is-attention,.timeline-item.is-selected,.timeline-item.is-pair-hover{z-index:4;border-color:color-mix(in srgb,var(--accent) 70%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent),0 0 16px color-mix(in srgb,var(--accent) 32%,transparent)}.timeline-item.is-attention{overflow:visible;transform-origin:center center;animation:timeline-item-bump .58s cubic-bezier(.175,.885,.32,1.275)}@keyframes timeline-item-bump{0%,to{transform:scale(1)}32%{transform:scale(1.12)}58%{transform:scale(.96)}}.timeline-item__flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;border-radius:inherit;pointer-events:none;background:color-mix(in srgb,var(--accent) 35%,#fff);box-shadow:inset 0 0 0 2px var(--accent);animation:occupancy-flash .65s ease-out forwards}.timeline-item__flash:after{content:"";position:absolute;top:-25%;right:-45%;bottom:-25%;left:-45%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.9) 50%,transparent 62%);animation:occupancy-flash-sheen .55s ease-out forwards}[data-theme=dark] .timeline-item__flash{background:color-mix(in srgb,var(--accent) 48%,transparent)}.timeline-item.has-refuerzo{--refuerzo-width: 1.15rem}.timeline-item.servicio-salida{justify-content:flex-end;padding-right:calc(var(--grip-width) + var(--refuerzo-width) + .38rem)}.timeline-item.servicio-entrada{justify-content:flex-start;padding-left:calc(var(--grip-width) + var(--refuerzo-width) + .38rem)}.timeline-item.is-variant-2.servicio-salida{flex-direction:row-reverse;justify-content:flex-start}.timeline-item.is-compact.servicio-salida{padding-right:calc(var(--grip-width) + var(--refuerzo-width) + .28rem)}.timeline-item.is-compact.servicio-entrada{padding-left:calc(var(--grip-width) + var(--refuerzo-width) + .28rem)}.timeline-item__grip{position:absolute;top:0;bottom:0;z-index:3;width:var(--grip-width);display:flex;align-items:center;justify-content:center;pointer-events:none;touch-action:none}.timeline-item.servicio-entrada .timeline-item__grip{left:0;background:var(--route-in);border-radius:.38rem 0 0 .38rem}.timeline-item.servicio-salida .timeline-item__grip{right:0;background:var(--route-out);border-radius:0 .38rem .38rem 0}.timeline-item.is-movable .timeline-item__grip{pointer-events:auto;cursor:grab}.timeline-item.is-movable .timeline-item__grip:active{cursor:grabbing}.timeline-item__refuerzo{position:absolute;top:0;bottom:0;z-index:2;width:var(--refuerzo-width);overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--refuerzo-rail-bg);color:var(--refuerzo-rail-fg);font-size:.84rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1;pointer-events:none}.timeline-item__refuerzo-bus{position:absolute;top:50%;left:50%;width:calc(var(--refuerzo-width) * 1.2);transform:translate(-50%,-50%);opacity:.35;fill:currentColor}.timeline-item__refuerzo-num{position:relative;text-shadow:0 1px 3px color-mix(in srgb,var(--refuerzo-rail-bg) 70%,transparent)}.timeline-item__delay{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;color:var(--estado-retrasado-fg);background:color-mix(in srgb,var(--estado-retrasado-bg) 88%,transparent);border-radius:.35rem;padding:0 .12rem}.timeline-item.servicio-entrada .timeline-item__refuerzo{left:var(--grip-width)}.timeline-item.servicio-salida .timeline-item__refuerzo{right:var(--grip-width)}.timeline-item__grip:before{content:"";width:.38rem;height:.88rem;background-image:radial-gradient(circle,rgba(255,255,255,.88) .95px,transparent 1.15px);background-size:.19rem .29rem;background-repeat:repeat;opacity:.95}.timeline-item.is-origin-ghost .timeline-item__grip{opacity:.55}.timeline-item:not(.is-variant-2).servicio-entrada .pax-badge{flex:0 0 auto;margin-right:.4rem;padding-right:.5rem;border-right:1px solid color-mix(in srgb,currentColor 28%,var(--border))}.timeline-item:not(.is-variant-2).servicio-salida .pax-badge{flex:0 0 auto;margin-left:.65rem;padding-left:.55rem;border-left:1px solid color-mix(in srgb,currentColor 28%,var(--border))}.timeline-item__logo{flex:0 0 auto;height:1.25rem;width:auto;object-fit:contain}.timeline-item__brand{flex:0 0 auto;display:inline-flex;align-items:center;min-width:0;max-width:3.4rem}.timeline-item.is-variant-2 .timeline-item__brand .company-mark{max-width:100%}.timeline-item.is-variant-2 .timeline-item__brand .company-mark__logo{max-width:3.2rem;max-height:1.15rem;padding:.06rem .1rem;border-radius:.22rem;background:#ffffffc7}.timeline-item.is-variant-2 .timeline-item__brand .company-mark__name{font-size:.58rem}.timeline-item__route{flex:1 1 auto}.timeline-item .service-time{flex:0 0 auto}.timeline-item.is-variant-2 .service-time{align-self:flex-start}.timeline-item.servicio-salida.is-variant-2 .service-time{align-self:flex-end}.timeline-item__plate{flex:0 0 auto;height:1.35rem;max-width:7.4rem}.timeline-item__plate .es-plate__eu{width:.72rem;font-size:.42rem}.timeline-item__plate .es-plate__text{padding:0 .32rem;font-size:.62rem}.timeline-item__body{display:flex;flex:1 1 0;flex-direction:column;justify-content:center;align-items:flex-start;gap:.02rem;min-width:0;overflow:hidden}.timeline-item.servicio-salida .timeline-item__body{align-items:flex-end}.timeline-item.is-variant-2 .timeline-item__route{flex:0 1 auto;width:auto;max-width:100%;min-width:0}.timeline-item.is-variant-2.servicio-salida .timeline-item__route{flex-direction:row-reverse}.timeline-item.is-variant-2 .timeline-item-name{font-size:.66rem;letter-spacing:.02em}.timeline-item__mark{position:relative;z-index:1;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.28rem;height:1.28rem;border-radius:999px}.timeline-item__mark.is-ok{color:var(--route-in-chip-fg);background:var(--route-in-chip-bg)}.timeline-item__mark.is-missing{color:var(--route-in-chip-fg);background:var(--danger)}.timeline-item.is-unassigned{border-color:var(--danger);border-width:2px}.timeline-item.is-unassigned.servicio-entrada{border-left-width:4px;border-left-color:var(--danger)}.timeline-item.is-unassigned.servicio-salida{border-right-width:4px;border-right-color:var(--danger)}.timeline-item.is-super-compact{gap:.1rem;font-size:.62rem}.timeline-item.is-super-compact .timeline-item__route{flex:1 1 auto;min-width:0}.timeline-item.is-super-compact.servicio-salida{flex-direction:row-reverse;justify-content:flex-start}.timeline-item.is-super-compact.servicio-salida .timeline-item__route{flex-direction:row-reverse}.timeline-item.is-super-compact .timeline-item__mark{width:.95rem;height:.95rem}.timeline-item.is-super-compact .timeline-item__mark svg{width:.62rem;height:.62rem}.timeline-item.is-super-compact .route-kind-mark--sm svg{width:.72rem;height:.72rem}.timeline-item.is-super-compact .timeline-item-name{font-size:.6rem;letter-spacing:.01em}.timeline-item.is-super-compact .timeline-item__delay{padding:0 .06rem;border-radius:.22rem}.timeline-item.is-variant-3.is-agenda-item{gap:.28rem;padding-left:calc(var(--grip-width) + var(--refuerzo-width) + .32rem);padding-right:.38rem}.timeline-item.is-variant-3.is-agenda-item.servicio-salida{padding-right:calc(var(--grip-width) + var(--refuerzo-width) + .32rem);padding-left:.38rem}.timeline-item.is-variant-3.is-agenda-item .timeline-item__brand{max-width:2.8rem}.timeline-item.is-variant-3.is-agenda-item .timeline-item__brand .company-mark__logo{max-width:2.6rem;max-height:1.1rem;padding:.04rem .08rem;border-radius:.18rem;background:#ffffffc7}.timeline-item.is-variant-3.is-agenda-item .timeline-item__brand .company-mark__name{font-size:.56rem}.timeline-item.is-variant-3.is-agenda-item .timeline-item-name{font-size:.66rem}.timeline-item.is-variant-3.is-agenda-item .timeline-item__dock{flex:0 0 auto}.timeline-item.is-variant-3.is-agenda-item .timeline-item__mark{width:1.12rem;height:1.12rem}.timeline-item__mark.is-finished{box-shadow:0 0 0 2px color-mix(in srgb,var(--ok) 70%,transparent)}.timeline-item.is-variant-3.is-agenda-item .timeline-item__mark:not(.is-finished){opacity:.78}@media(prefers-reduced-motion:reduce){.timeline-item.is-attention,.timeline-item.is-selected,.timeline-item.is-pair-hover{outline:2px solid var(--accent);outline-offset:1px;animation:none}.timeline-item,.daily-timeline.is-item-moving .timeline-item:not(.is-mockup):not(.is-origin-ghost){transition:none}.timeline-item__flash{animation:none;opacity:0}.timeline-item.is-attention{overflow:hidden}}.timeline-hour-focus{position:absolute;top:0;bottom:0;z-index:0;background:color-mix(in srgb,var(--accent) 13%,transparent);box-shadow:inset 1px 0 color-mix(in srgb,var(--accent) 30%,transparent),inset -1px 0 color-mix(in srgb,var(--accent) 30%,transparent);opacity:0;pointer-events:none;transition:opacity .2s ease,left .18s ease,width .18s ease}.timeline-hour-focus.is-on{opacity:1}.daily-timeline__canvas .timeline-item{transition:box-shadow .15s ease,border-color .15s ease,opacity .24s ease}.daily-timeline__canvas.is-hour-focus .timeline-item:not(.is-hour-in):not(.is-mockup){opacity:.26}.daily-timeline__pair-group{transition:opacity .24s ease}.daily-timeline__canvas.is-hour-focus .daily-timeline__pair-group:not(.is-hour-pair){opacity:.14}.daily-timeline__hour-toggle.is-on{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 32%,transparent)}.daily-timeline__hour-toggle.is-on:hover{background:color-mix(in srgb,var(--accent) 24%,transparent);color:var(--accent)}@media(prefers-reduced-motion:reduce){.timeline-hour-focus,.daily-timeline__canvas .timeline-item,.daily-timeline__pair-group{transition:none}}.timeline-marker-track{position:relative;z-index:4;width:100%;overflow:visible;border-bottom:1px solid color-mix(in srgb,var(--accent) 32%,var(--border));background:color-mix(in srgb,var(--accent) 5%,transparent);pointer-events:auto}.timeline-marker-track--gutter{display:flex;align-items:center;justify-content:center;gap:.2rem;width:var(--lane-gutter);padding:0 .3rem;border-right:1px solid var(--border);background:color-mix(in srgb,var(--accent) 9%,var(--bg-panel));color:var(--accent);font-size:.66rem;font-weight:800}.timeline-marker-track__label,.timeline-marker-track__editor{position:absolute;top:0;display:grid;grid-auto-flow:column;align-items:center;gap:.25rem;max-width:13rem;min-height:1.45rem;padding:.14rem .3rem;border:1px solid color-mix(in srgb,var(--accent) 52%,var(--border));border-radius:.4rem;background:color-mix(in srgb,var(--bg-card) 92%,var(--accent));box-shadow:var(--shadow);color:var(--text-primary);font:inherit;font-size:.64rem;font-variant-numeric:tabular-nums;white-space:nowrap;transform:translate(-50%)}.timeline-marker-track__label{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.timeline-marker-track__label strong,.timeline-marker-track__editor strong{color:var(--accent-secondary);font-size:.66rem}.timeline-marker-track__label svg{color:var(--accent);opacity:0;transition:opacity .15s ease}.timeline-marker-track__label:hover,.timeline-marker-track__label:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}.timeline-marker-track__label:hover svg,.timeline-marker-track__label:focus-visible svg{opacity:1}.timeline-marker-track__editor input{width:8.5rem;min-width:0;height:1.3rem;padding:0 .3rem;border:1px solid var(--border);border-radius:.3rem;background:var(--bg-primary);color:var(--text-primary);font:inherit;-webkit-user-select:text;user-select:text}.timeline-marker-track__label--readonly{cursor:default;opacity:.94}.timeline-marker-track__label--readonly:hover,.timeline-marker-track__label--readonly:focus-visible{border-color:color-mix(in srgb,var(--accent) 52%,var(--border));box-shadow:var(--shadow)}@media(prefers-reduced-motion:reduce){.timeline-marker-track__label,.timeline-marker-track__label svg{transition:none}}.timeline-marker-track__text{display:block;min-width:0;max-width:9.25rem;overflow:hidden}.timeline-marker-track__text-run{display:flex;width:max-content;align-items:center;white-space:nowrap;will-change:transform}.timeline-marker-track__text-chunk{flex:0 0 auto;padding-right:1.1rem}.timeline-marker-track__text.is-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 .25rem,#000 calc(100% - .25rem),transparent);mask-image:linear-gradient(90deg,transparent,#000 .25rem,#000 calc(100% - .25rem),transparent)}.timeline-marker-track__text.is-marquee .timeline-marker-track__text-run{animation:timeline-marker-text-marquee 7s linear infinite}.timeline-marker-track__text.is-marquee:hover .timeline-marker-track__text-run{animation-play-state:paused}@keyframes timeline-marker-text-marquee{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}@media(prefers-reduced-motion:reduce){.timeline-marker-track__text.is-marquee{-webkit-mask-image:none;mask-image:none}.timeline-marker-track__text.is-marquee .timeline-marker-track__text-run{animation:none}.timeline-marker-track__text.is-marquee .timeline-marker-track__text-chunk:last-child{display:none}.timeline-marker-track__text.is-marquee .timeline-marker-track__text-chunk{display:block;max-width:100%;padding-right:0;overflow:hidden;text-overflow:ellipsis}}.timeline-move-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;overflow:clip;pointer-events:none}.timeline-move-layer__mock{position:absolute;height:var(--item-height);filter:drop-shadow(0 8px 16px color-mix(in srgb,var(--accent) 28%,transparent))}.timeline-move-layer__mock .timeline-item{position:relative;top:0;width:100%;cursor:grabbing;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 55%,transparent),0 10px 22px color-mix(in srgb,var(--bg-primary) 55%,transparent)}.timeline-move-layer__mock.is-invalid .timeline-item{outline:2px dashed var(--danger);outline-offset:2px;box-shadow:none;opacity:.72}@media(prefers-reduced-motion:reduce){.timeline-move-layer__mock{filter:none}}.timeline-move-overlay{--overlay-inset: .5rem;--overlay-right-clear: 4.75rem;position:absolute;top:calc(var(--axis-height) + var(--overlay-inset));left:50%;z-index:8;display:flex;flex-direction:column;gap:.28rem;min-width:13.5rem;max-width:min(22rem,100% - 6.5rem);padding:.55rem .7rem .5rem;border:1px solid var(--border);border-radius:.75rem;background:color-mix(in srgb,var(--bg-panel) 92%,transparent);box-shadow:var(--shadow);color:var(--text-primary);pointer-events:none;transform:translate(-50%)}.timeline-move-overlay.is-left{left:calc(var(--lane-gutter) + var(--overlay-inset));transform:none}.timeline-move-overlay.is-right{left:auto;right:var(--overlay-right-clear);transform:none}.timeline-move-overlay__title{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary)}.timeline-move-overlay__route{margin:0;font-size:.82rem;font-weight:750;line-height:1.25}.timeline-move-overlay__changes{display:flex;flex-direction:column;gap:.12rem}.timeline-move-overlay__row{display:grid;grid-template-columns:3.8rem auto auto 1fr;align-items:center;gap:.28rem;margin:0;font-size:.78rem;font-weight:700}.timeline-move-overlay__label{color:var(--text-secondary);font-size:.64rem;font-weight:750;letter-spacing:.02em;text-transform:uppercase}.timeline-move-overlay__from,.timeline-move-overlay__to{font-variant-numeric:tabular-nums}.timeline-move-overlay__from,.timeline-move-overlay__arrow{color:var(--text-secondary)}.timeline-move-overlay__row.is-changed .timeline-move-overlay__to{color:var(--accent)}.timeline-move-overlay__invalid{margin:0;color:var(--danger);font-size:.78rem;font-weight:750}.timeline-move-overlay__hint{margin:.18rem 0 0;color:var(--text-secondary);font-size:.7rem;font-weight:650;line-height:1.35}.timeline-move-overlay__key{display:inline-block;padding:.04rem .32rem;border:1px solid var(--border);border-radius:.28rem;background:var(--bg-card);color:var(--text-primary);font-family:inherit;font-size:.66rem;font-weight:800}.timeline-move-overlay__action{color:var(--text-primary);font-weight:750}.timeline-move-overlay__hint--time{margin-bottom:.35rem}.timeline-move-overlay__time-lock{font-variant-numeric:tabular-nums;color:var(--text-primary)}@media(max-width:480px){.timeline-move-overlay,.timeline-move-overlay.is-left{left:var(--overlay-inset);transform:none;max-width:calc(100% - 4.5rem)}.timeline-move-overlay.is-right{left:auto;right:3.6rem;max-width:calc(100% - 4.5rem)}}.move-service{display:flex;flex-direction:column;gap:.9rem}.move-service__lead{margin:0;font-size:.9rem;font-weight:650}.move-service__changes{display:grid;grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr));gap:.75rem}.move-service__card{display:flex;flex-direction:column;gap:.45rem;padding:.7rem .8rem;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:.7rem;background:var(--bg-card);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.move-service__card-label{color:var(--text-secondary);font-size:.72rem;font-weight:750;letter-spacing:.03em;text-transform:uppercase}.move-service__card-values{display:flex;align-items:center;gap:.55rem;min-height:2rem}.move-service__from,.move-service__to{display:inline-flex;align-items:center;font-variant-numeric:tabular-nums}.move-service__arrow{color:var(--text-secondary)}.move-service-modal .form-section{margin-top:0}@media(max-width:480px){.move-service__changes{grid-template-columns:1fr}}.timeline-filters .field{margin-bottom:0}.timeline-filters .field .chip-select--panel{width:100%}.timeline-filters__groups{display:flex;flex-direction:column;gap:.65rem}.timeline-filters__groups .fold-panel{box-shadow:none;background:var(--bg-card)}.timeline-filters__groups .fold-panel__head{padding:.5rem .75rem}.timeline-filters__groups .fold-panel__title{font-size:.85rem}.timeline-filters__groups .fold-panel__body{padding:.65rem .75rem .8rem;display:flex;flex-direction:column;gap:.7rem}.timeline-filters__row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.timeline-filters__row .form-autocomplete{width:100%}.timeline-filters .form-autocomplete__route{flex-wrap:wrap}@media(max-width:480px){.timeline-filters__row{grid-template-columns:1fr}}.etiquetas-legend{display:flex;flex-wrap:wrap;gap:.35rem;padding:.7rem .85rem .15rem}.etiqueta-estado{display:inline-flex;align-items:center;gap:.28rem;margin:0;padding:.28rem .5rem;border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:.55rem;font-size:.72rem;font-weight:800;cursor:pointer}.etiqueta-estado.is-selected{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.etiquetas-legend.is-filtering .etiqueta-estado:not(.is-selected){opacity:.55}.etiqueta-estado__count{min-width:1.1rem;padding:0 .22rem;border-radius:999px;background:color-mix(in srgb,currentColor 16%,transparent);font-variant-numeric:tabular-nums;text-align:center}.etiquetas-extra{display:flex;flex-wrap:wrap;gap:.35rem;padding:.35rem .85rem .7rem}.etiquetas-extra__chip{display:inline-flex;align-items:center;gap:.28rem;padding:.22rem .5rem;border-radius:.55rem;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:.7rem;font-weight:700}.etiquetas-extra__chip--entrada{background:var(--route-in-soft);color:var(--route-in);border-color:color-mix(in srgb,var(--route-in) 28%,var(--border))}.etiquetas-extra__chip--salida{background:var(--route-out-soft);color:var(--route-out);border-color:color-mix(in srgb,var(--route-out) 28%,var(--border))}.etiquetas-extra__chip--retrasado{background:var(--estado-retrasado-bg);color:var(--estado-retrasado-fg);border-color:color-mix(in srgb,var(--estado-retrasado-fg) 28%,var(--border))}.etiquetas-board{display:flex;flex-direction:column;min-width:0}.etiquetas-board--inline{flex:0 0 auto;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-panel);overflow:hidden}.etiquetas-board__head{display:flex;align-items:center;gap:.65rem;padding:.55rem .85rem 0}.etiquetas-board__title{margin:0;font-size:.82rem;font-weight:800}.etiquetas-board--inline .etiquetas-legend,.etiquetas-board--inline .etiquetas-extra{flex-wrap:nowrap;overflow-x:auto;padding-top:.45rem;padding-bottom:.1rem}.etiquetas-board--inline .etiquetas-extra{padding-bottom:.7rem}.servicios-dia-page{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden;overscroll-behavior:contain;gap:1.25rem}.servicios-dia-page>.fold-panel,.servicios-dia-page__kpis{flex:0 0 auto}.servicios-dia-page .kpi-board{margin-bottom:0}.servicios-dia-page .filter-panel-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.75rem 1rem;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--border-light)}.servicios-dia-page .route-table tbody tr.is-group td{overflow:visible;text-overflow:unset;transition:background .12s ease,box-shadow .12s ease}.servicios-dia-page .route-table tbody tr.is-group.servicios-dia__date-group-row td{padding:.42rem .55rem .38rem;background:var(--bg-panel);border-top:2px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-bottom:1px solid color-mix(in srgb,var(--accent) 16%,var(--border-light));box-shadow:inset .34rem 0 0 var(--accent)}.servicios-dia-page .route-table tbody tr.is-group.servicios-dia__date-group-row:hover td{background:color-mix(in srgb,var(--accent) 7%,var(--bg-panel))}.servicios-dia-page .servicios-dia__date-group-btn{display:inline-flex;align-items:center;gap:.45rem;width:100%;padding:.15rem .1rem;border:0;background:none;color:var(--text-primary);font:inherit;font-weight:700;text-align:left;cursor:pointer}.servicios-dia-page .servicios-dia__date-group-btn:hover .servicios-dia__date-group-label,.servicios-dia-page .servicios-dia__date-group-btn:focus-visible .servicios-dia__date-group-label{text-decoration:underline}.servicios-dia-page .servicios-dia__date-group-chevron{flex:0 0 auto;color:var(--text-muted);transition:transform .16s ease}.servicios-dia-page .servicios-dia__date-group-chevron.is-collapsed{transform:rotate(-90deg)}.servicios-dia-page .servicios-dia__date-group-head{display:inline-flex;flex:1 1 auto;align-items:center;gap:.5rem;min-width:0}.servicios-dia-page .servicios-dia__date-group-label{min-width:0}.servicios-dia-page .route-table tbody tr.is-group.servicios-dia__company-group-row td{padding:.32rem .55rem .3rem;background:color-mix(in srgb,var(--bg-panel) 78%,var(--accent-soft));border-top:1px dashed color-mix(in srgb,var(--accent) 22%,var(--border-light));border-bottom:1px solid var(--border-light);box-shadow:inset 1.15rem 0 color-mix(in srgb,var(--accent) 28%,transparent)}.servicios-dia-page .route-table tbody tr.is-group.servicios-dia__company-group-row:hover td{background:color-mix(in srgb,var(--accent) 9%,var(--bg-panel))}.servicios-dia-page .servicios-dia__date-group-btn--company{padding-left:1.35rem}.servicios-dia-page .servicios-dia__date-group-label--company{font-weight:650}.servicios-dia__darsenas{display:inline-flex;align-items:center;gap:.35rem}.servicios-dia__darsenas-arrow{flex:0 0 auto;color:var(--accent)}.servicios-dia__darsena-mark{min-width:2.05rem;height:2.05rem;font-size:.9rem}.servicios-dia__darsena-mark--from{opacity:.72;filter:grayscale(.25)}.servicios-dia__darsena-mark--to{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:1px}.servicios-dia__tipo{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;box-sizing:border-box;min-width:4.9rem;text-transform:uppercase}.servicios-dia-page .route-table th.servicios-dia__col-type,.servicios-dia-page .route-table td.servicios-dia__col-type{width:7.25rem}.servicios-dia-page .route-table th.servicios-dia__col-platform,.servicios-dia-page .route-table td.servicios-dia__col-platform{width:6rem;min-width:6rem;text-align:center}.servicios-dia__estado{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:7.25rem;text-align:center}.servicios-dia__pair-mark{display:inline-flex;align-items:center;justify-content:center;color:var(--route-pair)}.servicios-dia-page .route-table td.servicios-dia__col-route .servicios-dia__pair-mark--inline{flex:0 0 auto;margin-left:.12rem}.servicios-dia__col-pair,.servicios-dia-page .route-table th.servicios-dia__col-count,.servicios-dia-page .route-table td.servicios-dia__col-count,.servicios-dia-page .route-table th.servicios-dia__col-time,.servicios-dia-page .route-table td.servicios-dia__col-time{text-align:center}.servicios-dia-page .route-table th.data-table__col--actions,.servicios-dia-page .route-table td.data-table__col--actions{width:7rem;max-width:7rem;padding-inline:.18rem}.servicios-dia-page .route-table .table-row-actions{gap:.12rem}.servicios-dia-page .route-table .table-row-actions .table-action-btn{width:1.4rem;height:1.4rem;border-radius:.38rem}.servicios-dia-page .filter-grid .chip-select{min-height:2.35rem;align-items:center}.servicios-dia-page .route-table th.servicios-dia__col-route,.servicios-dia-page .route-table td.servicios-dia__col-route{width:18rem;min-width:18rem}.servicios-dia-page .route-table td.servicios-dia__col-route .route-info{width:100%}.servicios-dia__route-link{display:inline-flex;align-items:center;min-width:0;max-width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.servicios-dia__route-link:hover .route-label__name,.servicios-dia__route-link:focus-visible .route-label__name,.servicios-dia__route-link:hover .route-info__name,.servicios-dia__route-link:focus-visible .route-info__name{text-decoration:underline}.servicios-dia-page .route-table td.servicios-dia__col-route .route-info .route-label{flex:1 1 auto;min-width:0;max-width:100%}.servicios-dia-page .route-table td.servicios-dia__col-route .route-info__name{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.servicios-dia-page .route-table td.servicios-dia__col-platform .servicios-dia__darsenas{justify-content:center}.servicios-dia-page .route-table tbody tr.servicios-dia__row--entrada{--servicios-dia-kind: var(--route-in)}.servicios-dia-page .route-table tbody tr.servicios-dia__row--salida{--servicios-dia-kind: var(--route-out)}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pareado{--servicios-dia-kind: var(--route-pair)}.servicios-dia-page .route-table tbody tr.servicios-dia__row--entrada:not(.data-table__status-row) td:first-child,.servicios-dia-page .route-table tbody tr.servicios-dia__row--salida:not(.data-table__status-row) td:first-child,.servicios-dia-page .route-table tbody tr.servicios-dia__row--pareado:not(.data-table__status-row) td:first-child{box-shadow:inset .32rem 0 0 var(--servicios-dia-kind);padding-left:.82rem}.servicios-dia-page .route-table tbody tr.servicios-dia__row--entrada:not(.data-table__status-row):hover td:first-child,.servicios-dia-page .route-table tbody tr.servicios-dia__row--entrada:not(.data-table__status-row).is-active td:first-child,.servicios-dia-page .route-table tbody tr.servicios-dia__row--salida:not(.data-table__status-row):hover td:first-child,.servicios-dia-page .route-table tbody tr.servicios-dia__row--salida:not(.data-table__status-row).is-active td:first-child,.servicios-dia-page .route-table tbody tr.servicios-dia__row--pareado:not(.data-table__status-row):hover td:first-child,.servicios-dia-page .route-table tbody tr.servicios-dia__row--pareado:not(.data-table__status-row).is-active td:first-child{box-shadow:inset .32rem 0 0 var(--servicios-dia-kind)}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-parent:not(:hover):not(.is-active) td,.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-child:not(:hover):not(.is-active) td{background:color-mix(in srgb,var(--route-pair) 10%,var(--bg-primary))}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-child td{padding-bottom:.72rem;border-bottom:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-child td:not(.data-table__col--actions){overflow:visible}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-parent td{padding-top:.72rem;border-top:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-parent td:not(.data-table__col--actions){overflow:visible}.servicios-dia-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child{position:relative;overflow:visible}.report-sheet .report-data-table tbody tr.servicios-dia__row--entrada{--servicios-dia-kind: var(--route-in)}.report-sheet .report-data-table tbody tr.servicios-dia__row--salida{--servicios-dia-kind: var(--route-out)}.report-sheet .report-data-table tbody tr.servicios-dia__row--pareado{--servicios-dia-kind: var(--route-pair)}.report-sheet .report-data-table tbody tr.servicios-dia__row--entrada td:first-child,.report-sheet .report-data-table tbody tr.servicios-dia__row--salida td:first-child,.report-sheet .report-data-table tbody tr.servicios-dia__row--pareado td:first-child{box-shadow:inset .28rem 0 0 var(--servicios-dia-kind);padding-left:.52rem}.report-sheet .report-data-table tbody tr.servicios-dia__row--pair-parent td,.report-sheet .report-data-table tbody tr.servicios-dia__row--pair-child td{background:color-mix(in srgb,var(--route-pair) 10%,#fff)}.report-sheet .report-data-table tbody tr.servicios-dia__row--pair-parent td{border-top:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}.report-sheet .report-data-table tbody tr.servicios-dia__row--pair-child td{border-bottom:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}.report-sheet .report-data-table tbody tr.servicios-dia__row--pair-child td:first-child{position:relative;padding-left:1.15rem;overflow:visible}.report-sheet .report-data-table tbody tr.servicios-dia__row--pair-child td:first-child:before{content:"";position:absolute;left:.35rem;top:-.62rem;width:.62rem;height:calc(50% + .62rem);border-left:2px solid var(--route-pair);border-bottom:2px solid var(--route-pair);border-bottom-left-radius:.22rem;pointer-events:none}.report-sheet .report-data-table tbody tr.servicios-dia__row--pair-child td:first-child:after{content:"";position:absolute;left:.96rem;top:calc(50% - .19rem);width:0;height:0;border-top:.19rem solid transparent;border-bottom:.19rem solid transparent;border-left:.3rem solid var(--route-pair);pointer-events:none}.servicios-dia-page .filter-grid{--filter-field-min: 10.5rem;--filter-dates-min: 19rem;--filter-ruta-min: 14rem;--filter-ruta-max: 26rem;--filter-slots: 12;--filter-span: 2;--filter-span-2x: 2;grid-template-columns:repeat(var(--filter-slots),minmax(0,1fr))}.servicios-dia-page .filter-grid>.field{grid-column:span var(--filter-span);min-width:0}.servicios-dia-page .filter-grid>.field--2x{grid-column:span var(--filter-span-2x)}.servicios-dia-page .filter-grid>.field--tipo,.servicios-dia-page .filter-grid>.field--servicios,.servicios-dia-page .filter-grid>.field--estado,.servicios-dia-page .filter-grid>.field--darsena{min-width:0}.servicios-dia-page .filter-grid>.field .form-select,.servicios-dia-page .filter-grid>.field--horario .time-picker{width:100%;min-width:0}.servicios-dia-page .filter-grid>.field--dates{min-width:min(100%,var(--filter-dates-min))}.servicios-dia-page .filter-grid>.field--ruta{min-width:min(100%,var(--filter-ruta-min))}.servicios-dia-page .filter-grid>.field--tipo .chip-select--panel,.servicios-dia-page .filter-grid>.field--servicios .chip-select--panel,.servicios-dia-page .filter-grid>.field--estado .chip-select--panel{width:100%}.servicios-dia-page .filter-grid>.field--estado .chip-select--service-status{flex-wrap:wrap;row-gap:.35rem;column-gap:.35rem}@media(min-width:1101px){.servicios-dia-page .filter-grid>.field--estado .chip-select--service-status .chip-select__chip{flex:0 1 auto;padding-inline:.45rem;font-size:.78rem}}.servicios-dia-page .filter-grid>.field--servicios .chip-select--service-kind{flex-wrap:nowrap}.servicios-dia-page .filter-grid>.field--servicios .chip-select--service-kind .chip-select__chip{flex:0 1 auto}.servicios-dia-page .filter-grid>.field--tipo .chip-select--route-kind{flex-wrap:wrap;row-gap:.35rem}.servicios-dia-page .filter-grid>.field--tipo .chip-select--route-kind .chip-select__chip{flex:0 1 auto}.servicios-dia-page .filter-grid>.field--ventana{grid-column:1/-1}.servicios-dia-page .filter-grid>.field--ventana .chip-select--panel{width:100%}.servicios-dia-page .filter-grid>.field--ventana .chip-select--range{flex-wrap:nowrap;gap:.35rem}.servicios-dia-page .filter-grid>.field--horario{min-width:0}.servicios-dia__time-range{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .65rem;width:100%;min-height:2.55rem}.servicios-dia__time-range-part{display:flex;flex:1 1 7.5rem;align-items:center;gap:.4rem;min-width:0}.servicios-dia__time-range-label{flex:0 0 auto;font-size:.72rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.servicios-dia__time-range-hint{flex:0 1 auto;font-size:.72rem;line-height:1.2;white-space:nowrap}.servicios-dia-page .filter-grid>.field--horario .time-picker__control.field-control{min-height:2.55rem;padding:.28rem .4rem .28rem .55rem;box-sizing:border-box}.servicios-dia-page .filter-grid>.field--horario .time-picker__trigger{padding:0;gap:.35rem}.servicios-dia-page .filter-grid>.field--horario .time-picker__clear{width:1.45rem;height:1.45rem}.servicios-dia-page .filter-grid>.field--ruta .form-autocomplete{width:100%;max-width:var(--filter-ruta-max)}.servicios-dia-page .filter-grid .date-range-picker,.servicios-dia-page .filter-grid .date-range-picker .date-picker__control{width:100%;min-width:0;max-width:none}@media(min-width:1101px){.servicios-dia-page .filter-grid{--filter-span-2x: 2}.servicios-dia-page .filter-grid>.field--tipo{grid-column:span 3}.servicios-dia-page .filter-grid>.field--servicios{grid-column:span 4}.servicios-dia-page .filter-grid>.field--darsena{grid-column:span 2}.servicios-dia-page .filter-grid>.field--estado{grid-column:span 3;align-self:start}.servicios-dia-page .filter-grid>.field--ventana{grid-column:1/-1;align-self:end}.servicios-dia-page .filter-grid>.field--dates{grid-column:1/span 5;align-self:start}.servicios-dia-page .filter-grid>.field--horario{grid-column:6/span 7;align-self:start}.servicios-dia-page .filter-grid--has-company>.field--company{grid-column:1/span 4;align-self:start}.servicios-dia-page .filter-grid--has-company>.field--ruta{grid-column:5/span 8;align-self:start}.servicios-dia-page .filter-grid--has-company>.field--ruta .form-autocomplete{max-width:none}.servicios-dia-page .filter-grid:not(.filter-grid--has-company)>.field--ruta{grid-column:1/-1}.servicios-dia-page .filter-grid>.field--ventana .chip-select--range{flex-wrap:wrap}.servicios-dia-page .filter-grid>.field--ventana .chip-select--range .chip-select__chip{flex:1 1 4.75rem;max-width:none;justify-content:center}}@media(max-width:1100px){.servicios-dia-page .filter-grid{--filter-span: 1;--filter-span-2x: 1;grid-template-columns:repeat(auto-fill,minmax(max(var(--filter-field-min),11rem),1fr))}.servicios-dia-page .filter-grid>.field{grid-column:auto}.servicios-dia-page .filter-grid>.field--tipo,.servicios-dia-page .filter-grid>.field--servicios,.servicios-dia-page .filter-grid>.field--estado,.servicios-dia-page .filter-grid>.field--darsena,.servicios-dia-page .filter-grid>.field--dates,.servicios-dia-page .filter-grid>.field--company,.servicios-dia-page .filter-grid>.field--ventana,.servicios-dia-page .filter-grid>.field--horario,.servicios-dia-page .filter-grid>.field--ruta{grid-column:1/-1}.servicios-dia-page .filter-grid>.field--ruta .form-autocomplete{max-width:none}.servicios-dia-page .filter-grid>.field--ventana .chip-select--range{flex-wrap:wrap}}@media(max-width:480px){.servicios-dia-page .filter-grid{--filter-span: 12;--filter-span-2x: 12;grid-template-columns:minmax(0,1fr)}.servicios-dia-page .filter-grid>.field,.servicios-dia-page .filter-grid>.field--tipo,.servicios-dia-page .filter-grid>.field--servicios,.servicios-dia-page .filter-grid>.field--estado,.servicios-dia-page .filter-grid>.field--darsena,.servicios-dia-page .filter-grid>.field--dates,.servicios-dia-page .filter-grid>.field--company,.servicios-dia-page .filter-grid>.field--ventana,.servicios-dia-page .filter-grid>.field--horario,.servicios-dia-page .filter-grid>.field--ruta{grid-column:1/-1}}@media(min-width:1101px){html[data-device=desktop-portrait] .servicios-dia-page .filter-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.6rem .75rem}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--tipo,html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--servicios{grid-column:span 3}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--darsena{grid-column:span 2;align-self:start}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--estado{grid-column:span 4;align-self:start}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--ventana{grid-column:1/-1;align-self:stretch}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--dates{grid-column:1/span 3;align-self:start}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--horario{grid-column:4/span 3;align-self:start}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid--has-company>.field--company{grid-column:1/span 3;align-self:start}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid--has-company>.field--ruta{grid-column:4/span 3;align-self:start}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid--has-company>.field--ruta .form-autocomplete{max-width:none}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid:not(.filter-grid--has-company)>.field--ruta{grid-column:span 6}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--servicios .chip-select--service-kind{flex-wrap:wrap}html[data-device=desktop-portrait] .servicios-dia-page .filter-grid>.field--servicios .chip-select--service-kind .chip-select__chip{flex:1 1 6.5rem}}html[data-device=desktop-portrait][data-size=xl] .servicios-dia-page .route-table th.servicios-dia__col-type,html[data-device=desktop-portrait][data-size=xl] .servicios-dia-page .route-table td.servicios-dia__col-type{width:6.65rem}html[data-device=desktop-portrait][data-size=xl] .servicios-dia-page .servicios-dia__tipo{gap:.2rem;min-width:4.55rem;font-size:.64rem}html[data-device=desktop-portrait][data-size=xl] .servicios-dia-page .route-table td.servicios-dia__col-platform{overflow:visible}.service-count{display:inline-flex;align-items:center;justify-content:flex-start;gap:.28rem;box-sizing:border-box;min-height:1.55rem;padding:.1rem .5rem .1rem .36rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));color:var(--accent);font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap}.service-count.is-none{color:var(--text-muted);background:var(--bg-hover);border-color:var(--border)}.service-count>span{flex:1 1 auto;min-width:4ch;text-align:right}.service-count--sm{min-height:1.22rem;gap:.18rem;padding:.04rem .38rem .04rem .24rem;font-size:.68rem}.catalog-page{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden;overscroll-behavior:contain;gap:1.25rem}.catalog-page>.fold-panel,.catalog-page__kpis{flex:0 0 auto}.catalog-page .table-row-actions{gap:.45rem}.catalog-page .filter-grid{--filter-slots: 12;--filter-span: 3;grid-template-columns:repeat(var(--filter-slots),minmax(0,1fr))}.catalog-page .filter-grid>.field{grid-column:span var(--filter-span)}.catalog-page .filter-grid>.field--wide{grid-column:1/-1}.catalog-page .filter-grid .chip-select{min-height:2.35rem;align-items:center}.catalog-page__short-name{display:inline-flex;align-items:center;gap:.35rem;min-width:0;max-width:100%}.catalog-page__short-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.catalog-page__filial{display:inline-flex;flex:0 0 auto;align-items:center;color:var(--accent);cursor:help}.catalog-page__filial--parent{gap:.2rem;margin:0;padding:.06rem .22rem .06rem .12rem;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--bg-primary));cursor:inherit}.catalog-page__filial-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1rem;height:1rem;padding:0 .22rem;border-radius:999px;background:var(--accent);color:var(--bg-primary);font-size:.62rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.catalog-page .route-table thead th:first-child{padding-left:1.88rem}.catalog-page__id{display:inline-flex;align-items:center;gap:.28rem;min-width:0}.catalog-page__expand{display:inline-flex;flex:0 0 1.05rem;align-items:center;justify-content:center;width:1.05rem;color:var(--text-secondary)}.catalog-page__expand svg{transition:transform .32s ease}.catalog-page .route-table tbody tr.catalog-page__row--parent{cursor:pointer}.catalog-page .route-table tbody tr.catalog-page__row--parent>td{transition:box-shadow .32s ease,background-color .32s ease}.catalog-page .route-table tbody tr.catalog-page__row--parent.is-expanded>td{background:color-mix(in srgb,var(--accent) 8%,var(--bg-primary));box-shadow:inset 0 2px 0 var(--accent)}.catalog-page .route-table tbody tr.catalog-page__row--parent.is-expanded>td:first-child{box-shadow:inset 2px 2px 0 var(--accent)}.catalog-page .route-table tbody tr.catalog-page__row--parent.is-expanded>td:last-child{box-shadow:inset -2px 2px 0 var(--accent)}.catalog-page .route-table tbody tr.catalog-page__row--parent.is-expanded .catalog-page__expand,.catalog-page .route-table tbody tr.catalog-page__row--parent:hover .catalog-page__expand{color:var(--accent)}.catalog-page .route-table tbody tr.catalog-page__row--parent.is-expanded .catalog-page__expand svg{transform:rotate(90deg)}.catalog-page__filial-clip{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .32s ease,opacity .24s ease}.catalog-page__filial-clip-inner{overflow:hidden;min-height:0;padding:.45rem 0}.catalog-page__filial-clip-inner--gap{height:.7rem;padding:0}.catalog-page .route-table tbody tr.catalog-page__filial-row.is-revealed .catalog-page__filial-clip,.catalog-page .route-table tbody tr.catalog-page__filial-gap.is-revealed .catalog-page__filial-clip{grid-template-rows:1fr;opacity:1}.catalog-page .route-table tbody tr.catalog-page__filial-row td,.catalog-page .route-table tbody tr.catalog-page__filial-gap td{min-height:0;padding-top:0;padding-bottom:0;border-bottom-width:0;background:color-mix(in srgb,var(--accent) 8%,var(--bg-primary))}.catalog-page .route-table tbody tr.catalog-page__filial-gap td{background:var(--bg-primary)}.catalog-page .route-table tbody tr.catalog-page__row--parent.is-expanded>td.data-table__col--actions,.catalog-page .route-table tbody tr.catalog-page__filial-row>td.data-table__col--actions{background:color-mix(in srgb,var(--accent) 8%,var(--bg-primary))}.catalog-page .route-table tbody tr.catalog-page__filial-row>td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.catalog-page .route-table tbody tr.catalog-page__filial-row>td:last-child{box-shadow:inset -2px 0 0 var(--accent)}.catalog-page .route-table tbody tr.catalog-page__filial-row--last>td{box-shadow:inset 0 -2px 0 var(--accent)}.catalog-page .route-table tbody tr.catalog-page__filial-row--last>td:first-child{box-shadow:inset 2px -2px 0 var(--accent)}.catalog-page .route-table tbody tr.catalog-page__filial-row--last>td:last-child{box-shadow:inset -2px -2px 0 var(--accent)}@media(prefers-reduced-motion:reduce){.catalog-page__expand svg,.catalog-page .route-table tbody tr.catalog-page__row--parent>td,.catalog-page__filial-clip{transition:none}}.catalog-page .route-table tbody tr.catalog-page__filial-row.catalog-page__row--blocked-delete td{background:color-mix(in srgb,var(--col-wrn) 20%,var(--bg-primary))}.catalog-page__label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:750;line-height:1.25}.catalog-page__count{display:inline-flex;align-items:center;justify-content:center;min-width:2.15rem;padding:.14rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));color:var(--accent-secondary);font-size:.74rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2}[data-theme=dark] .catalog-page__count{color:var(--accent)}.catalog-page__count.is-empty{background:var(--bg-hover);border-color:var(--border);color:var(--text-muted)}.catalog-page .route-table th.catalog-page__col-count,.catalog-page .route-table td.catalog-page__col-count{text-align:center}.catalog-page__toolbar{display:flex;justify-content:flex-end;flex:0 0 auto;gap:1rem}.catalog-page__toolbar--start{justify-content:flex-start}.catalog-page .route-table tbody tr.catalog-page__row--blocked-delete td{background:color-mix(in srgb,var(--col-wrn) 20%,var(--bg-primary))}.catalog-page .route-table tbody tr.catalog-page__row--blocked-delete:nth-child(2n) td,.catalog-page .route-table tbody tr.catalog-page__row--blocked-delete:hover td,.catalog-page .route-table tbody tr.catalog-page__row--blocked-delete.is-active td{background:color-mix(in srgb,var(--col-wrn) 28%,var(--bg-primary))}.catalog-page .route-table tbody tr.catalog-page__row--blocked-delete td:first-child,.catalog-page .route-table tbody tr.catalog-page__row--blocked-delete:hover td:first-child,.catalog-page .route-table tbody tr.catalog-page__row--blocked-delete.is-active td:first-child{box-shadow:inset .32rem 0 0 var(--col-wrn);padding-left:.82rem}.report-sheet .report-data-table tbody tr.catalog-page__row--blocked-delete td{background:color-mix(in srgb,var(--col-wrn) 18%,var(--bg-card))}.report-sheet .report-data-table tbody tr.catalog-page__row--blocked-delete td:first-child{box-shadow:inset .28rem 0 0 var(--col-wrn)}@media(max-width:1100px){.catalog-page .filter-grid{--filter-span: 6}}@media(max-width:480px){.catalog-page .filter-grid{--filter-span: 12}}.refuerzos-page .table-row-actions{gap:.32rem}.refuerzos-page .filter-grid>.field--tipo{grid-column:span 3}.refuerzos-page .filter-grid>.field--status{grid-column:span 6}.refuerzos-page .filter-grid>.field--ruta{grid-column:7/span 3}.refuerzos-page .chip-select--refuerzo-status,.refuerzos-page .chip-select--route-kind{flex-wrap:nowrap}.refuerzos-page .chip-select--refuerzo-status .chip-select__chip,.refuerzos-page .chip-select--route-kind .chip-select__chip{padding-inline:.95rem 1.1rem}.chip-select--refuerzo-status .chip-select__chip--ok.is-active{border-color:color-mix(in srgb,var(--ok) 55%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--refuerzo-status .chip-select__chip--fail.is-active{border-color:color-mix(in srgb,var(--danger) 55%,var(--border));background:color-mix(in srgb,var(--danger) 14%,var(--bg-card));color:var(--danger)}.chip-select--refuerzo-status .chip-select__chip--default.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.refuerzos-page__days{display:inline-flex;gap:.16rem;flex-wrap:wrap}.refuerzos-page__day{min-width:1.28rem;justify-content:center;padding:.06rem .22rem;font-size:.68rem;font-weight:800}.refuerzos-page .route-table th.catalog-page__col-count,.refuerzos-page .route-table td.catalog-page__col-count{text-align:center}.refuerzos-page__route-base{display:flex;align-items:center;gap:.4rem;min-width:0;width:100%}.refuerzos-page__route-base .route-id{flex:0 0 auto}.refuerzos-page__route-base--link{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.refuerzos-page__route-base--link:hover .route-label__name,.refuerzos-page__route-base--link:focus-visible .route-label__name{text-decoration:underline}.refuerzos-page__route-base--link:hover .route-id{background:color-mix(in srgb,var(--accent) 26%,var(--bg-elevated))}.refuerzos-page__range{display:inline-flex;align-items:center;gap:.28rem;flex-wrap:wrap}.refuerzos-page__status{display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated)}.refuerzos-page__status--ok{background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 38%,var(--border));color:var(--ok)}.refuerzos-page__status--fail{background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 38%,var(--border));color:var(--danger)}.refuerzos-page__status--default{background:color-mix(in srgb,var(--accent) 12%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent) 32%,var(--border));color:var(--accent-secondary)}.refuerzos-page__status--muted{color:var(--text-muted)}.refuerzos-page .filter-panel-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.75rem 1rem;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--border-light)}.refuerzos-page .route-table th.refuerzos-page__col-time,.refuerzos-page .route-table td.refuerzos-page__col-time{text-align:center}.refuerzos-page .route-table tbody tr.is-group.refuerzos-page__date-group-row td{padding:.42rem .55rem .38rem;background:var(--bg-panel);border-top:2px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-bottom:1px solid color-mix(in srgb,var(--accent) 16%,var(--border-light));box-shadow:inset .34rem 0 0 var(--accent);overflow:visible;text-overflow:unset;transition:background .12s ease}.refuerzos-page .route-table tbody tr.is-group.refuerzos-page__date-group-row:hover td{background:color-mix(in srgb,var(--accent) 7%,var(--bg-panel))}.refuerzos-page .refuerzos-page__date-group-btn{display:inline-flex;align-items:center;gap:.45rem;width:100%;padding:.15rem .1rem;border:0;background:none;color:var(--text-primary);font:inherit;font-weight:700;text-align:left;cursor:pointer}.refuerzos-page .refuerzos-page__date-group-btn:hover .refuerzos-page__date-group-label,.refuerzos-page .refuerzos-page__date-group-btn:focus-visible .refuerzos-page__date-group-label{text-decoration:underline}.refuerzos-page .refuerzos-page__date-group-chevron{flex:0 0 auto;color:var(--text-muted);transition:transform .16s ease}.refuerzos-page .refuerzos-page__date-group-chevron.is-collapsed{transform:rotate(-90deg)}.refuerzos-page .refuerzos-page__date-group-head{display:inline-flex;flex:1 1 auto;align-items:center;gap:.5rem;min-width:0}.refuerzos-page .refuerzos-page__date-group-label{min-width:0}@media(max-width:1100px){.refuerzos-page .filter-grid>.field--tipo{grid-column:span 6}.refuerzos-page .filter-grid>.field--status{grid-column:span 12}.refuerzos-page .filter-grid>.field--ruta{grid-column:span 6}}@media(max-width:480px){.refuerzos-page .filter-grid>.field--tipo,.refuerzos-page .filter-grid>.field--status,.refuerzos-page .filter-grid>.field--ruta{grid-column:span 12}}.historicos-page .route-history__plate{height:1.55rem;max-width:8.25rem}.historicos-page .route-history__plate .es-plate__eu{width:.78rem;font-size:.42rem}.historicos-page .route-history__plate .es-plate__text{padding:0 .4rem;font-size:.72rem}.historicos-page .pax-badge{justify-content:center}.historicos-page .route-history__late{justify-content:center;min-width:4.4rem;font-variant-numeric:tabular-nums}.historicos-page .route-table tbody tr.servicios-dia__row--pair-parent:not(:hover):not(.is-active) td,.historicos-page .route-table tbody tr.servicios-dia__row--pair-child:not(:hover):not(.is-active) td{background:color-mix(in srgb,var(--route-pair) 10%,var(--bg-primary))}.historicos-page .route-table tbody tr.servicios-dia__row--pair-child td{padding-bottom:.72rem;border-bottom:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}.historicos-page .route-table tbody tr.servicios-dia__row--pair-child td:not(.data-table__col--actions){overflow:visible}.historicos-page .route-table tbody tr.servicios-dia__row--pair-parent td{padding-top:.72rem;border-top:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}.historicos-page .route-table tbody tr.servicios-dia__row--pair-parent td:not(.data-table__col--actions){overflow:visible}.historicos-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child{position:relative;overflow:visible}.historicos-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child .servicios-dia__route-id-cell--pair-child{margin-left:1.1rem}.historicos-page .route-table tbody tr.servicios-dia__row--pair-child td:first-child .servicios-dia__pair-connector{position:absolute;left:.55rem;color:var(--route-pair);overflow:visible;pointer-events:none}.historicos-page .data-table-wrap{flex:1 1 auto;min-height:0}.historicos-page__detail{display:flex;flex-direction:column;gap:1rem}.historicos-detail-modal .app-modal__panel{width:min(72rem,100vw - 2rem)}.report-sheet[data-report-kind=historico-servicios] .report-data-table tbody tr.servicios-dia__row--pair-parent td,.report-sheet[data-report-kind=historico-servicios] .report-data-table tbody tr.servicios-dia__row--pair-child td{background:color-mix(in srgb,var(--route-pair) 10%,#fff)}.report-sheet[data-report-kind=historico-servicios] .report-data-table tbody tr.servicios-dia__row--pair-parent td{border-top:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}.report-sheet[data-report-kind=historico-servicios] .report-data-table tbody tr.servicios-dia__row--pair-child td{border-bottom:1px solid color-mix(in srgb,var(--route-pair) 42%,var(--border))}@media(max-width:480px){.historicos-page .filter-actions{justify-content:stretch}}.line-edit-modal--routes{overflow:hidden}.app-modal__panel:has(>.app-modal__body.line-edit-modal--create:not(.line-edit-modal--routes)){height:auto}.app-modal__body.line-edit-modal--create:not(.line-edit-modal--routes){flex:0 1 auto}.line-edit-modal--create:not(.line-edit-modal--routes) .form-tabset,.line-edit-modal--create:not(.line-edit-modal--routes) .form-tabset__body{flex:0 1 auto}.form-tabset__body--picker{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:.7rem .8rem .85rem}.line-edit-modal__picker-state{display:grid;place-items:center;min-height:12rem;color:var(--text-muted);text-align:center}.line-route-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.85rem;min-height:0;flex:1 1 auto;height:100%}.line-route-picker__col{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}.line-route-picker__col.is-drop-target{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-card))}.line-route-picker__head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex:0 0 auto;padding:.7rem .8rem .45rem}.line-route-picker__title{margin:0;font-size:.82rem;font-weight:750;color:var(--text-primary)}.line-route-picker__counts{display:flex;align-items:center;gap:.4rem;flex:0 0 auto}.line-route-picker__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.7rem;padding:.12rem .45rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));color:var(--accent-secondary);font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}[data-theme=dark] .line-route-picker__count{color:var(--accent)}.line-route-picker__count.is-muted{background:var(--bg-hover);border-color:var(--border);color:var(--text-muted)}.line-route-picker__search{flex:0 0 auto;padding:0 .8rem .55rem}.line-route-picker__search .field{margin:0}.line-route-picker__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.55rem;flex:0 0 auto;padding:0 .8rem .45rem}.line-route-picker__hint{margin:0;min-width:0;color:var(--text-muted);font-size:.72rem}.line-route-picker__col>.line-route-picker__hint{margin:0 .8rem .45rem}.line-route-picker__select-actions{display:flex;align-items:center;gap:.3rem;flex:0 0 auto}.line-route-picker__select-actions .btn{min-height:1.7rem;padding:.18rem .55rem;font-size:.72rem}.line-route-picker__list{flex:1 1 auto;min-height:8rem;overflow:auto;padding:.2rem .45rem .55rem}.line-route-picker__empty{display:grid;place-items:center;min-height:7rem;padding:1rem;color:var(--text-muted);text-align:center;font-size:.8rem}.line-route-picker__item{display:grid;grid-template-columns:auto auto auto minmax(0,1fr) auto;gap:.4rem .5rem;align-items:center;width:100%;margin:0 0 .22rem;padding:.28rem .4rem .28rem .5rem;border:1px solid var(--border);border-radius:.55rem;background:var(--bg-card);color:inherit;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none}.line-route-picker__item:nth-child(2n){background:var(--row-even)}.line-route-picker__item.is-draggable{cursor:grab}.line-route-picker__item:last-child{margin-bottom:0}.line-route-picker__item:hover,.line-route-picker__item:nth-child(2n):hover{background:var(--bg-hover)}.line-route-picker__item.is-selected,.line-route-picker__item.is-selected:nth-child(2n){border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--bg-card))}.line-route-picker__item.is-inactive{opacity:.72}.line-route-picker__route{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:700;line-height:1.2}.line-route-picker__action{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer}.line-route-picker__action:hover{background:var(--bg-hover);color:var(--text-primary)}.line-route-picker__action--add{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.line-route-picker__action--remove{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}@media(max-width:1100px){.line-route-picker{grid-template-columns:1fr;overflow:auto}.line-route-picker__col{min-height:16rem}}.futuro-page{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden}.futuro-page__content{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;gap:.75rem}.futuro-page__kpis,.futuro-page .fold-panel,.futuro-page__view{flex:0 0 auto}.futuro-page .kpi-board{margin-bottom:0}.futuro-page .filter-grid{--filter-slots: 12;--filter-span: 2;grid-template-columns:repeat(var(--filter-slots),minmax(0,1fr))}.futuro-page .filter-grid>.field{grid-column:span var(--filter-span)}.futuro-page .filter-grid>.field--ruta{grid-column:span 3}.futuro-page .filter-grid>.field--ruta .form-autocomplete__input,.futuro-page .filter-grid>.field--ruta input{min-height:2.45rem;padding:.35rem .55rem;font-size:.86rem}.futuro-page__route-autocomplete{width:100%;min-width:0}.futuro-page .filter-grid>.field--tipo .chip-select--route-kind{width:100%}.futuro-page .filter-grid>.field--tipo .chip-select--route-kind .chip-select__chip{min-height:2rem}.futuro-page__view{display:flex;align-items:center;gap:.45rem}.futuro-page__view-sep{align-self:stretch;width:1px;margin:.15rem 0 .15rem auto;background:var(--border)}.futuro-page__view>span{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.futuro-page__board{display:grid;flex:1 1 auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:.75rem;min-width:0;min-height:0}.futuro-page__workspace{position:relative;display:flex;flex-direction:column;grid-column:1/-1;flex:1 1 auto;min-width:0;min-height:0}.app-shell__workspace:has(.futuro-page){--futuro-route-panel-width: min(24rem, 46vw);--futuro-route-grip: 2.35rem}.app-shell__workspace>.futuro-page__route-rail.dock-rail{--dock-panel-width: var(--futuro-route-panel-width);--dock-grip-start: 0;position:absolute;top:var(--futuro-route-rail-top, 0);left:calc(var(--futuro-route-rail-left, 0px) + var(--shell-pad-x));bottom:0;width:0;height:auto;z-index:9;pointer-events:none;transition:left .28s ease,top .28s ease,bottom .28s ease}.app-shell__workspace>.futuro-page__route-rail .dock-rail__grip,.app-shell__workspace>.futuro-page__route-rail .dock-unit.is-open{pointer-events:auto}.app-shell__workspace>.futuro-page__route-rail .dock-rail__grip{transform-origin:right center;transition:transform .28s ease,opacity .28s ease}.app-shell__workspace>.futuro-page__route-rail.futuro-page__route-rail--table{pointer-events:none}.app-shell__workspace>.futuro-page__route-rail.futuro-page__route-rail--table .dock-rail__grip{transform:scaleX(0);opacity:0;pointer-events:none}.app-shell__workspace>.futuro-page__route-rail.futuro-page__route-rail--table .dock-unit.is-open{width:0;overflow:hidden;pointer-events:none}.app-shell__workspace>.futuro-page__route-rail.futuro-page__route-rail--table .dock-rail__scrim{display:none!important}.app-shell__workspace>.futuro-page__route-rail.futuro-page__route-rail--table.is-open{z-index:9}@media(prefers-reduced-motion:reduce){.app-shell__workspace>.futuro-page__route-rail .dock-rail__grip{transition:opacity .01ms}.app-shell__workspace>.futuro-page__route-rail.futuro-page__route-rail--table .dock-rail__grip{transform:none}}.app-shell__workspace>.futuro-page__route-rail.dock-rail.is-open{z-index:12}.app-shell__workspace>.futuro-page__route-rail.is-open .dock-rail__scrim{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border:0;padding:0;background:color-mix(in srgb,#001018 38%,transparent);cursor:pointer;pointer-events:auto}.app-shell__workspace>.futuro-page__route-rail.is-open .dock-unit.is-open{z-index:2}.futuro-page__meta{display:flex;flex-direction:row;align-items:stretch;justify-content:flex-start;gap:.65rem;grid-column:1/-1;min-width:0;min-height:0;padding:.5rem .85rem;overflow:hidden;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-primary)}.futuro-page__meta-main{display:flex;flex:1 1 0;flex-direction:column;align-items:stretch;justify-content:center;gap:.45rem;min-width:0}.futuro-page__meta-mini-cal{flex:0 0 auto;align-self:stretch;margin:-.15rem 0;padding-right:.05rem}.futuro-page__meta-mini-cal.futuro-report-mini-cal{min-width:19.5rem;max-width:21.5rem}.futuro-page__meta-mini-cal .year-calendar__day{min-height:1.15rem;font-size:.62rem}.futuro-page__meta-mini-cal .futuro-report-mini-cal__title{font-size:.68rem}.futuro-page__calendars,.futuro-page__day{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;min-width:0;width:100%}.futuro-page__meta-copy{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:.35rem .55rem;min-width:0}.futuro-page__meta-label{flex:0 0 auto;margin:0;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.futuro-page__meta-hint{flex:1 1 12rem;margin:0;min-width:0;font-size:.72rem;font-weight:600;line-height:1.35;color:var(--text-secondary)}.futuro-page__calendars-body{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0}.futuro-page__calendars .chip-select{pointer-events:none}.futuro-page__calendars-skeleton{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.futuro-page__chip-skeleton{width:7.5rem;height:1.7rem;border-radius:999px}.futuro-page__chip-skeleton:nth-child(2){width:9.2rem}.futuro-page__chip-skeleton:nth-child(3){width:6.4rem}.futuro-page__day .day-type-marks{flex:1 1 auto;max-width:100%}.futuro-page__stage{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0}.futuro-page__stage{overflow:hidden}.futuro-page__stage .daily-timeline,.futuro-page__stage .futuro-timeline-skeleton,.futuro-page__stage .route-table-wrap,.futuro-page__stage .data-table-wrap{flex:1 1 auto;min-width:0;min-height:0}.futuro-page .servicios-dia__tipo{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;box-sizing:border-box;min-width:5.7rem;text-transform:uppercase}.futuro-page .route-table th.servicios-dia__col-platform,.futuro-page .route-table td.servicios-dia__col-platform{text-align:center}.futuro-page .route-table tbody tr.servicios-dia__row--entrada{--servicios-dia-kind: var(--route-in)}.futuro-page .route-table tbody tr.servicios-dia__row--salida{--servicios-dia-kind: var(--route-out)}.futuro-page .route-table tbody tr.servicios-dia__row--entrada:not(.data-table__status-row) td:first-child,.futuro-page .route-table tbody tr.servicios-dia__row--salida:not(.data-table__status-row) td:first-child{box-shadow:inset .32rem 0 0 var(--servicios-dia-kind);padding-left:.82rem}.futuro-page .timeline-item.is-agenda-lite{padding-left:calc(var(--grip-width) + .32rem);padding-right:.38rem}.futuro-page .timeline-item.is-agenda-lite.servicio-salida{flex-direction:row-reverse;justify-content:flex-start;padding-left:.38rem;padding-right:calc(var(--grip-width) + .32rem)}.futuro-page .timeline-item.is-agenda-lite .timeline-item__grip:before{content:none}.futuro-page .timeline-item.is-agenda-lite .timeline-item__route{flex:1 1 auto;gap:.08rem}.futuro-page .timeline-item.is-agenda-lite .timeline-item-name{flex:0 1 auto}.futuro-page .timeline-item.is-agenda-lite.servicio-salida .timeline-item__route{flex-direction:row-reverse}.futuro-page .route-table tbody tr.is-attention td{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 18%,var(--bg-primary))}.futuro-page .route-table tbody tr.is-attention{animation:futuro-row-bump .58s cubic-bezier(.175,.885,.32,1.275)}@keyframes futuro-row-bump{0%,to{transform:scale(1)}32%{transform:scale(1.01)}58%{transform:scale(.995)}}html[data-size=s] .futuro-page__board,html[data-size=m] .futuro-page__board{grid-template-columns:1fr;grid-template-rows:minmax(3.25rem,10%) minmax(9rem,26%) minmax(0,1fr)}html[data-size=m] .futuro-page .filter-grid{--filter-span: 4}html[data-size=s] .futuro-page .filter-grid{--filter-span: 12}html[data-size=s] .futuro-page__meta,html[data-size=m] .futuro-page__meta{flex-wrap:wrap;height:auto;min-height:3.25rem;overflow:auto}html[data-size=s] .futuro-page__routes,html[data-size=m] .futuro-page__routes{min-height:9rem}html[data-size=xl] .futuro-page__board{grid-template-columns:minmax(20rem,24rem) minmax(0,1fr)}@media(max-height:800px){html[data-size=s] .futuro-page__board,html[data-size=m] .futuro-page__board{grid-template-rows:auto minmax(7.5rem,20%) minmax(0,1fr)}html[data-size=s] .futuro-page__routes,html[data-size=m] .futuro-page__routes{min-height:7.5rem}}@media(prefers-reduced-motion:reduce){.futuro-page .route-table tbody tr.is-attention td{box-shadow:none}.futuro-page .route-table tbody tr.is-attention{animation:none}}.futuro-route-list{container-type:inline-size;display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-primary);overflow:hidden}.futuro-route-list--embedded{border:0;border-radius:0;background:transparent}.futuro-route-list__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex:0 0 auto;padding:.55rem .75rem .35rem}.futuro-route-list__title{margin:0;font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.futuro-route-list__count{min-width:1.5rem;padding:.08rem .4rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--bg-hover));color:var(--accent);font-size:.72rem;font-weight:800;text-align:center}.futuro-route-list__count.is-skeleton{display:inline-flex;align-items:center;justify-content:center;min-height:1.2rem;background:var(--bg-hover)}.futuro-route-list__count.is-skeleton .dock-skeleton{width:.85rem;height:.65rem}.futuro-route-list__item.is-skeleton{pointer-events:none;cursor:default}.futuro-route-list__item.is-skeleton .dock-skeleton--icon{width:1.35rem;height:1.35rem}.futuro-route-list__item.is-skeleton .dock-skeleton--badge{width:2.6rem;height:1.15rem}.futuro-route-list__item.is-skeleton .dock-skeleton--line{width:100%;height:.78rem}.futuro-route-list__toolbar{display:flex;flex-direction:column;align-items:stretch;gap:.45rem;flex:0 0 auto;padding:0 .65rem .5rem}.futuro-route-list__toolbar-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .45rem;min-width:0}.futuro-route-list__toolbar-chips .chip-select--route-kind .chip-select__chip{min-height:1.85rem}.futuro-route-list__sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.futuro-route-list__search{display:flex;align-items:center;gap:.45rem;width:100%;min-width:0;min-height:2.5rem;padding:.38rem .75rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-card)}.futuro-route-list__search-icon{display:flex;flex:0 0 auto;color:var(--text-muted)}.futuro-route-list__autocomplete{flex:1 1 auto;min-width:0}.futuro-route-list__autocomplete .form-autocomplete__input{padding:.28rem 0;border:0;background:transparent;color:var(--text-primary);font-size:.84rem;box-shadow:none}.futuro-route-list__autocomplete .form-autocomplete__input::placeholder{color:var(--text-muted)}.futuro-route-list__autocomplete .form-autocomplete__input:focus{outline:none;border-color:transparent}.futuro-route-list__autocomplete .form-autocomplete__input.is-open{border-color:transparent}@container (min-width: 22rem){.futuro-route-list__toolbar{flex-direction:row;flex-wrap:wrap;align-items:center}.futuro-route-list__toolbar-chips{flex:1 1 auto;order:0}.futuro-route-list__search{flex:1 1 100%;order:1}}.futuro-route-list__items{flex:1 1 auto;min-height:0;margin:0;padding:0 .4rem .5rem;overflow:auto;list-style:none}.futuro-route-list__items>.futuro-route-list-item{margin:0}.futuro-route-list__empty{padding:.85rem .6rem;color:var(--text-muted);font-size:.82rem;text-align:center}.futuro-route-list__item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.35rem .4rem;width:100%;margin:0 0 .2rem;padding:.42rem .5rem;border:1px solid transparent;border-radius:.65rem;background:transparent;color:inherit;text-align:left;cursor:pointer}.futuro-route-list__route{margin:0;min-width:0}.futuro-route-list__route .route-info__name{font-size:.82rem;font-weight:650;letter-spacing:.02em;text-transform:none}.futuro-route-list__item:hover{background:var(--bg-hover)}.futuro-route-list__item.is-selected{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--bg-hover));box-shadow:inset .18rem 0 0 var(--accent)}.futuro-route-list__item.is-salida.is-selected{box-shadow:inset .18rem 0 0 var(--route-out)}.futuro-route-list__item.is-entrada.is-selected{box-shadow:inset .18rem 0 0 var(--route-in)}.futuro-route-list-item{list-style:none}.futuro-route-list-item__wrap{display:block}.futuro-route-list-item__panel{position:fixed;z-index:2460;box-sizing:border-box;width:min(20rem,100%);padding:.65rem .75rem .7rem;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-elevated);box-shadow:var(--shadow);pointer-events:auto}.futuro-route-list-item__panel.is-entering{animation:futuro-route-list-panel-in .22s ease-out}.futuro-route-list-item__panel.is-leaving{animation:futuro-route-list-panel-out .16s ease-in forwards}@keyframes futuro-route-list-panel-in{0%{opacity:0;transform:translate(-.35rem)}to{opacity:1;transform:none}}@keyframes futuro-route-list-panel-out{0%{opacity:1;transform:none}to{opacity:0;transform:translate(-.25rem)}}.futuro-route-list-item__panel.is-left.is-entering{animation-name:futuro-route-list-panel-in-left}.futuro-route-list-item__panel.is-left.is-leaving{animation-name:futuro-route-list-panel-out-left}@keyframes futuro-route-list-panel-in-left{0%{opacity:0;transform:translate(.35rem)}to{opacity:1;transform:none}}@keyframes futuro-route-list-panel-out-left{0%{opacity:1;transform:none}to{opacity:0;transform:translate(.25rem)}}.futuro-route-list-item__panel-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.45rem}.futuro-route-list-item__panel-head .servicios-dia__route-id-cell{margin-left:auto}.futuro-route-list-item__dock-empty{color:var(--text-muted);font-size:.82rem;font-weight:650}.futuro-route-list-item__meta dd .route-info__platform{vertical-align:middle}.futuro-route-list-item__route{margin:0 0 .35rem}.futuro-route-list-item__route .route-info__name{white-space:normal;overflow:visible;text-overflow:unset;line-height:1.25}.futuro-route-list-item__full-route,.futuro-route-list-item__short{margin:0 0 .45rem;color:var(--text-secondary);font-size:.76rem;line-height:1.35}.futuro-route-list-item__meta{display:grid;gap:.35rem;margin:0}.futuro-route-list-item__meta>div{display:grid;grid-template-columns:5.2rem minmax(0,1fr);gap:.35rem;align-items:center}.futuro-route-list-item__meta dt{margin:0;color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.futuro-route-list-item__meta dd{margin:0;min-width:0;font-size:.82rem}@media(prefers-reduced-motion:reduce){.futuro-route-list-item__panel.is-entering,.futuro-route-list-item__panel.is-leaving{animation:none}}.futuro-timeline-skeleton{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;overflow:hidden;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-primary);pointer-events:none}.futuro-timeline-skeleton__axis{display:flex;align-items:center;gap:1.4rem;flex:0 0 auto;min-height:3.1rem;padding:.65rem .85rem .65rem 6.6rem;border-bottom:1px solid var(--border)}.futuro-timeline-skeleton__axis-block{width:2.4rem;height:.7rem}.futuro-timeline-skeleton__body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.futuro-timeline-skeleton__lane{display:flex;align-items:stretch;flex:0 0 auto;min-height:3.14rem;border-bottom:1px solid var(--border)}.futuro-timeline-skeleton__gutter{display:flex;align-items:center;justify-content:center;flex:0 0 5.75rem;width:5.75rem;border-right:1px solid var(--border);background:var(--bg-panel)}.futuro-timeline-skeleton__track{display:flex;align-items:center;flex:1 1 auto;min-width:0;padding:0 .75rem}.futuro-timeline-skeleton__gutter .dock-skeleton--badge{width:2rem}.futuro-timeline-skeleton__bar{height:2.1rem;border-radius:.55rem}.futuro-timeline-skeleton__lane:nth-child(1) .futuro-timeline-skeleton__bar{margin-left:8%;width:18%}.futuro-timeline-skeleton__lane:nth-child(2) .futuro-timeline-skeleton__bar{margin-left:22%;width:14%}.futuro-timeline-skeleton__lane:nth-child(3) .futuro-timeline-skeleton__bar{margin-left:12%;width:22%}.futuro-timeline-skeleton__lane:nth-child(4) .futuro-timeline-skeleton__bar{margin-left:36%;width:16%}.futuro-timeline-skeleton__lane:nth-child(5) .futuro-timeline-skeleton__bar{margin-left:18%;width:20%}.futuro-timeline-skeleton__lane:nth-child(6) .futuro-timeline-skeleton__bar{margin-left:44%;width:12%}.futuro-timeline-skeleton__lane:nth-child(7) .futuro-timeline-skeleton__bar{margin-left:28%;width:19%}.futuro-timeline-skeleton__lane:nth-child(8) .futuro-timeline-skeleton__bar{margin-left:15%;width:15%}.futuro-timeline-skeleton__lane:nth-child(odd) .dock-skeleton--badge{width:2.25rem}.futuro-timeline-skeleton__lane:nth-child(2n) .dock-skeleton--badge{width:1.7rem}.futuro-report-intro{display:flex;flex-direction:column;flex:0 0 auto;gap:.45rem;min-height:0}.futuro-report-intro__summary{flex:0 0 auto}.futuro-report-intro__body{display:flex;align-items:stretch;min-width:0;border-bottom:1px solid var(--border)}.futuro-report-intro__summary-grid{flex:1 1 0;min-width:0;margin-bottom:0;border-bottom:0}.futuro-report-intro__meta-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:.65rem;align-items:start;min-width:0}@supports (grid-template-columns: subgrid){.futuro-report-intro__meta-row{grid-template-columns:subgrid}}.futuro-report-intro__calendars-col{grid-column:1/3;display:flex;flex-direction:column;gap:.08rem;min-width:0}.futuro-report-intro__day-type-col{grid-column:3/-1;display:flex;flex-direction:column;gap:.08rem;min-width:0}.futuro-report-intro__calendars-col dt,.futuro-report-intro__day-type-col dt{min-height:0}.futuro-report-intro__calendars-col dd,.futuro-report-intro__day-type-col dd{margin:0;overflow:visible;white-space:normal;font-size:.72rem;font-weight:750;line-height:1.35}.futuro-report-intro__day-type-col dd{display:flex;align-items:flex-start;width:100%;min-width:0;font-weight:400}.futuro-report-intro__day-type-col .day-type-marks{width:100%;align-items:flex-start}.futuro-report-intro__day-type-col .day-type-marks.is-plain .day-type-marks__panel{min-height:0;height:auto;align-items:flex-start}.futuro-report-intro__day-type-col .day-type-marks__list{width:100%;height:auto;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:baseline;gap:.2rem .45rem}.futuro-report-intro__day-type-col .day-type-marks__mark,.futuro-report-intro__day-type-col .day-type-marks__mark--short{min-width:0;padding:0;font-size:.72rem;line-height:1.35}.futuro-report-intro__day-type-col .day-type-marks__live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.year-calendar{display:flex;flex-direction:column;gap:.55rem;min-width:0}.year-calendar__years{justify-content:center}.year-calendar__note{display:flex;align-items:flex-start;gap:.4rem;min-width:0;margin:0;padding:.38rem .55rem;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));color:var(--text-secondary);font-size:.72rem;font-weight:600;line-height:1.35}.year-calendar__note svg{flex:0 0 auto;margin-top:.05rem;color:var(--accent)}.year-calendar__note span{min-width:0}.year-calendar__years .chip-select__chip{min-width:3.4rem;justify-content:center;padding:.18rem .55rem;font-size:.72rem}.year-calendar__months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.4rem .5rem}.year-calendar__month{min-width:0;padding:.32rem .34rem .36rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}.year-calendar--preview .year-calendar__month{padding:.28rem .3rem .32rem}.year-calendar--single-month{gap:0;min-width:0}.year-calendar--single-month .year-calendar__month{min-height:100%;padding:0;border:0;border-radius:0;background:transparent}.year-calendar--single-month .year-calendar__weekdays span{font-size:.52rem}.year-calendar--single-month .year-calendar__day{min-height:1.05rem;font-size:.54rem}.year-calendar--dual-month{gap:0;min-width:0}.year-calendar--dual-month .year-calendar__month{min-height:100%;padding:0;border:0;border-radius:0;background:transparent}.year-calendar--dual-month .year-calendar__weekdays span{font-size:.5rem}.year-calendar--dual-month .year-calendar__day{min-height:1rem;font-size:.52rem}.year-calendar__month h3{margin:0 0 .18rem;font-size:.72rem;font-weight:750;color:var(--text-secondary);text-align:center}.year-calendar__weekdays,.year-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px}.year-calendar__weekdays span{text-align:center;font-size:.58rem;font-weight:700;line-height:1.1;color:var(--text-muted)}.year-calendar__day{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:1.15rem;padding:0;border:0;border-radius:.18rem;background:var(--bg-input, var(--bg-card));color:var(--text-primary);font-size:.62rem;font-weight:600;line-height:1;cursor:pointer}.year-calendar__day.is-empty{visibility:hidden;pointer-events:none}.year-calendar__day.has-calendar{background-color:color-mix(in srgb,var(--accent) 42%,var(--bg-card));color:var(--bg-card)}.year-calendar__day.is-today{box-shadow:inset 0 0 0 1.5px var(--accent)}.year-calendar__day.is-highlighted{outline:2px solid var(--issues-warning-fg, var(--accent));outline-offset:1px;z-index:1}.year-calendar.is-range-select .year-calendar__day{-webkit-user-select:none;user-select:none;touch-action:none;cursor:cell}.year-calendar.is-picking-range .year-calendar__day.is-range-start,.year-calendar.is-picking-range .year-calendar__day.is-range-end,.year-calendar.is-picking-range .year-calendar__day.is-range-single{box-shadow:none}.year-calendar.is-picking-range .year-calendar__day.is-range-middle{border-radius:0}.year-calendar__legend{display:flex;flex-wrap:wrap;gap:.28rem .7rem;margin:0;padding:.1rem 0 0;list-style:none;font-size:.68rem;color:var(--text-secondary)}.year-calendar__legend li{display:inline-flex;align-items:center;gap:.3rem}.year-calendar__swatch{width:.7rem;height:.7rem;border-radius:.15rem;background:var(--border)}.year-calendar__swatch.is-empty{background:var(--bg-card);box-shadow:inset 0 0 0 1px var(--border)}@media(max-width:1400px){.year-calendar__months{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.year-calendar__months{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.year-calendar__months{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.year-calendar__months{grid-template-columns:minmax(0,1fr)}}.futuro-report-mini-cal{flex:0 0 auto;align-self:stretch;min-width:19rem;max-width:21rem;padding:.1rem .15rem .1rem .7rem;border-left:1px solid var(--border)}.futuro-report-mini-cal__months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;flex:1 1 auto;min-height:100%;align-items:stretch}.futuro-report-mini-cal__month{display:flex;flex:1 1 auto;flex-direction:column;gap:.18rem;min-width:0;min-height:100%}.futuro-report-mini-cal__title{margin:0;text-align:center;font-size:.58rem;font-weight:750;line-height:1.15;text-transform:capitalize;color:var(--text-muted)}.futuro-report-mini-cal .year-calendar__grid{flex:1 1 auto;align-content:start}.futuro-report-mini-cal:not(.futuro-report-mini-cal--interactive) .year-calendar__day{cursor:default}.company-routes-modal{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.app-modal__panel:has(.company-routes-modal){height:auto;max-height:75vh}.company-routes-modal .rutas-page--embedded{height:auto;max-height:100%}.company-routes-modal .data-table-wrap{flex:1 1 auto;height:auto;min-height:0}.company-routes-modal .data-table__scroll{flex:0 1 auto;height:auto;min-height:0;max-height:100%;overflow:auto}.app-modal__body.company-routes-modal{overflow:hidden}.line-routes-modal{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.app-modal__panel:has(.line-routes-modal){height:auto;max-height:75vh}.line-routes-modal .rutas-page--embedded{height:auto;max-height:100%}.line-routes-modal .data-table-wrap{flex:1 1 auto;height:auto;min-height:0}.line-routes-modal .data-table__scroll{flex:0 1 auto;height:auto;min-height:0;max-height:100%;overflow:auto}.app-modal__panel:has(.line-routes-modal) .form-header__name--node{gap:.65rem .85rem;flex-wrap:wrap}.app-modal__body.line-routes-modal{overflow:hidden}.cyl-preview{display:flex;flex-direction:column;gap:.85rem}.cyl-preview__meta{margin:0;color:var(--text-secondary);font-size:.88rem}.cyl-preview__error{margin:0;color:var(--danger);font-weight:600}.cyl-preview__warnings{margin:0;padding-left:1.1rem;color:var(--text-secondary)}.cyl-preview__calendar{padding:.4rem .45rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-card)}.cyl-preview__calendar .year-calendar__years{margin-bottom:.1rem}.cyl-preview__calendar .year-calendar__years .chip-select__chip{padding:.12rem .35rem;font-size:.68rem;min-height:1.4rem}.cyl-preview__calendar .year-calendar__months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.35rem .4rem}.cyl-preview__calendar .year-calendar__month h3{margin-bottom:.12rem;font-size:.62rem}.cyl-preview__calendar .year-calendar__weekdays span{font-size:.5rem}.cyl-preview__calendar .year-calendar__day{min-height:.95rem;font-size:.55rem;font-weight:700;border-radius:.14rem;box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .15s ease}.cyl-preview__calendar .year-calendar__day.has-calendar{font-weight:750;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-primary) 18%,transparent)}.cyl-preview__calendar .year-calendar__day.is-today{box-shadow:inset 0 0 0 1.5px var(--accent),0 0 0 1px var(--accent)}.cyl-preview__calendar .year-calendar__legend{margin-top:.25rem;gap:.2rem .45rem;font-size:.62rem}.cyl-preview__calendar .year-calendar__swatch{width:.55rem;height:.55rem}@media(max-width:980px){.cyl-preview__calendar .year-calendar__months{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.cyl-preview__calendar .year-calendar__months{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:480px){.cyl-preview__calendar .year-calendar__months{grid-template-columns:repeat(2,minmax(0,1fr))}}.cyl-preview__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem}.cyl-preview__grid--dynamic{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.cyl-preview__grid h3,.cyl-preview__collisions h3{display:flex;align-items:center;gap:.45rem;margin:0 0 .4rem;font-size:.92rem}.cyl-preview__swatch{width:.85rem;height:.85rem;border-radius:.2rem;background:var(--border);flex:0 0 auto}.cyl-preview__ranges,.cyl-preview__collisions ul{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}.cyl-preview__range{display:grid;grid-template-columns:5.2rem 1fr 5.2rem;align-items:center;gap:.45rem;padding:.4rem .55rem;border-radius:.45rem;background:var(--bg-elevated, color-mix(in srgb, var(--text-primary) 5%, var(--bg-card)));color:var(--text-primary);font-size:.85rem}.cyl-preview__range-start,.cyl-preview__range-end{display:flex;align-items:center;justify-content:center;gap:.2rem;padding:.18rem .32rem;border-radius:.35rem;background:var(--bg-card);color:var(--text-secondary);font-size:.74rem;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:inset 0 0 0 1px var(--border)}.cyl-preview__range-end{margin-left:auto}.cyl-preview__range-track{position:relative;display:flex;align-items:center;justify-content:center;height:1.35rem;border-radius:.4rem;background:color-mix(in srgb,var(--text-primary) 10%,var(--bg-card));overflow:hidden}.cyl-preview__range-bar{position:absolute;top:0;bottom:0;height:100%;border-radius:.4rem;opacity:.85}.cyl-preview__range-days{position:relative;z-index:1;padding:.12rem .35rem;border-radius:.3rem;background:var(--bg-card);color:var(--text-secondary);font-size:.72rem;font-weight:700;white-space:nowrap;box-shadow:0 1px 2px color-mix(in srgb,var(--text-primary) 16%,transparent)}.cyl-preview__range-desc{grid-column:1/-1;padding:.2rem .25rem .05rem;color:var(--text-secondary);font-size:.74rem;font-weight:600;text-align:center}.cyl-preview__meta--status{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .4rem;border-radius:.3rem;background:color-mix(in srgb,var(--accent) 10%,var(--bg-card));color:var(--text-secondary);font-size:.74rem;font-weight:600;width:fit-content}.cyl-preview__meta--status-warning{background:var(--issues-warning-bg);color:var(--issues-warning-fg)}.cyl-preview__holiday-panel{padding:.35rem;border:1px solid var(--border);border-radius:.55rem;background:var(--bg-card);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-primary) 4%,transparent)}.cyl-preview__holidays{display:flex;flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none}.cyl-preview__holiday{position:relative;display:flex;align-items:center;gap:.7rem;padding:.22rem .7rem;border:1px solid var(--border);border-radius:.5rem;background:color-mix(in srgb,var(--calendar-color, var(--accent)) 10%,var(--bg-elevated, var(--bg-card)));color:var(--text-primary);overflow:hidden}.cyl-preview__holiday:before{content:"";position:absolute;top:0%;bottom:0%;left:0;width:.28rem;border-radius:0 .25rem .25rem 0;background:var(--calendar-color, var(--accent));box-shadow:0 0 .5rem color-mix(in srgb,var(--calendar-color, var(--accent)) 60%,transparent)}.cyl-preview__holiday-datepill{flex:0 0 auto;padding:.2rem .55rem;border:1px solid var(--calendar-color, var(--accent));border-radius:999px;background:var(--bg-card);color:var(--text-primary);font-size:.74rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.2}.cyl-preview__holiday-desc{flex:1 1 auto;padding:.1rem 0;color:var(--text-secondary);font-size:.78rem;font-weight:600;line-height:1.25;text-align:left}.cyl-preview__holiday-desc--empty{color:var(--text-muted);font-style:italic}.cyl-preview__holiday.is-highlighted{box-shadow:inset 0 0 0 1.5px var(--calendar-color, var(--accent)),0 0 .75rem color-mix(in srgb,var(--calendar-color, var(--accent)) 25%,transparent);background:color-mix(in srgb,var(--calendar-color, var(--accent)) 16%,var(--bg-elevated, var(--bg-card)))}.cyl-preview__draft{display:flex;flex-direction:column;gap:.25rem}.cyl-preview__draft-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;min-height:2.4em}.cyl-preview__draft-header h3{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.92rem;line-height:1.2;flex:1 1 auto}.cyl-preview__draft-remove{display:inline-flex;align-items:center;justify-content:center;width:1.4rem;height:1.4rem;padding:0;border:0;border-radius:.3rem;background:var(--bg-elevated, color-mix(in srgb, var(--text-primary) 5%, var(--bg-card)));color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.cyl-preview__draft-remove:hover{background:var(--danger-soft, color-mix(in srgb, var(--danger) 12%, var(--bg-card)));color:var(--danger)}.cyl-preview__draft-title{cursor:text;border-bottom:1px dashed var(--border)}.cyl-preview__draft-title-edit{display:flex;flex-direction:column;gap:.3rem;flex:1 1 auto}.cyl-preview__draft-title-edit input{width:100%;padding:.15rem .35rem;border:1px solid var(--border);border-radius:.3rem;background:var(--bg-card);color:var(--text-primary);font-size:.85rem;font-weight:600}.cyl-preview__draft-title-edit select{width:100%;padding:.15rem .35rem;border:1px solid var(--border);border-radius:.3rem;background:var(--bg-card);color:var(--text-secondary);font-size:.74rem}.cyl-preview__add-city{padding:.55rem;border:1px dashed var(--border);border-radius:.5rem;background:var(--bg-card)}.cyl-preview__add-city-fields{display:flex;gap:.5rem;align-items:flex-start}.cyl-preview__add-city-autocomplete{flex:1 1 auto}.cyl-preview__add-city-error{margin:.4rem 0 0;color:var(--danger);font-size:.78rem;font-weight:600}.cyl-preview__collisions li{padding:.35rem .55rem;border-radius:.4rem;background:var(--bg-card);color:var(--text-primary);font-size:.85rem;line-height:1.25}.cyl-preview__empty{margin:0;color:var(--text-muted)}.cyl-preview__collisions{padding:.75rem .9rem;border-radius:.5rem;background:var(--danger-soft, color-mix(in srgb, var(--danger) 12%, var(--bg-card)))}.cyl-preview__collisions h3{color:var(--danger)}.cyl-preview__collisions li{background:var(--bg-card)}.cyl-preview__collisions li strong{display:block;margin-bottom:.15rem;color:var(--danger);font-weight:600}@media(max-width:720px){.cyl-preview__grid,.cyl-preview__grid--dynamic{grid-template-columns:minmax(0,1fr)}}.holiday-wait{display:flex;flex-direction:column;justify-content:center;gap:.85rem;min-height:8.5rem;padding:.35rem 0 .15rem}.holiday-wait__label{margin:0;color:var(--text-secondary);font-size:.88rem}.holiday-wait__track{position:relative;overflow:hidden;width:100%;height:.32rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,var(--border))}.holiday-wait__bar{position:absolute;top:0;bottom:0;left:0;width:34%;border-radius:inherit;background:var(--accent);animation:holiday-wait-slide 1.35s ease-in-out infinite alternate}@keyframes holiday-wait-slide{0%{left:0}to{left:66%}}@media(prefers-reduced-motion:reduce){.holiday-wait__bar{left:0;width:100%;animation:none;opacity:.72}}.cyl-preview>.form-section--panel{margin:0}.holiday-search{display:flex;gap:.5rem;align-items:flex-start}.holiday-search__autocomplete{flex:1 1 auto;min-width:0}.holiday-hint{display:flex;align-items:flex-start;gap:.4rem;margin:0;padding:.38rem .55rem;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 8%,var(--bg-card));color:var(--text-secondary);font-size:.72rem;font-weight:600;line-height:1.35}.holiday-hint svg{flex:0 0 auto;margin-top:.05rem;color:var(--accent)}.holiday-hint span{min-width:0}.holiday-wait--inline{min-height:0;padding:0;gap:0}.holiday-wait--inline .holiday-wait__track{height:.28rem}.holiday-masonry{display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-start;gap:.75rem;max-height:min(38rem,50vh);overflow-x:auto;overflow-y:auto}.holiday-masonry>*{box-sizing:border-box;width:22rem;max-width:100%;flex:0 0 auto}.holiday-draft.form-section--panel{padding-top:0;overflow:hidden}.holiday-draft .form-section__head{align-items:flex-start;margin:0 -1rem .7rem;padding:.62rem .75rem .62rem .95rem;background:linear-gradient(90deg,color-mix(in srgb,var(--calendar-color, var(--accent)) 32%,var(--bg-form-header)),color-mix(in srgb,var(--calendar-color, var(--accent)) 8%,var(--bg-form-header)) 72%);border-bottom:1px solid color-mix(in srgb,var(--calendar-color, var(--accent)) 40%,var(--border));box-shadow:inset .28rem 0 0 var(--calendar-color, var(--accent))}.holiday-draft .form-section__title{flex:1 1 auto;min-width:0;font-size:.92rem;font-weight:750;line-height:1.25}.holiday-draft__swatch.color-picker{flex:0 0 auto}.holiday-draft__swatch .color-picker__swatch{width:.95rem;height:.95rem;border-radius:.22rem;box-shadow:0 0 0 1px color-mix(in srgb,var(--calendar-color, var(--accent)) 28%,transparent)}.holiday-draft__swatch .color-picker__swatch input::-webkit-color-swatch{border-radius:.16rem}.holiday-draft__swatch .color-picker__swatch input::-moz-color-swatch{border-radius:.16rem}.holiday-draft .cyl-preview__draft-title{min-width:0;flex:1 1 auto;font-weight:750;border-bottom-color:color-mix(in srgb,var(--calendar-color, var(--accent)) 45%,var(--border))}.holiday-draft .cyl-preview__draft-title-edit{flex:1 1 auto;min-width:0}.holiday-draft__remove{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.55rem;height:1.55rem;padding:0;border:0;border-radius:.35rem;background:color-mix(in srgb,var(--text-primary) 6%,var(--bg-card));color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.holiday-draft__remove:hover{background:var(--danger-soft, color-mix(in srgb, var(--danger) 12%, var(--bg-card)));color:var(--danger)}.holiday-draft__remove--item{width:1.35rem;height:1.35rem;margin-left:auto;background:transparent;position:relative;z-index:1}.holiday-draft .cyl-preview__holiday{gap:.45rem;height:1.9rem;min-height:1.9rem;max-height:1.9rem;padding-top:0;padding-bottom:0;padding-right:.32rem}.holiday-draft .cyl-preview__holiday-datepill{padding:.12rem .42rem;font-size:.7rem}.holiday-desc{display:block;flex:1 1 auto;width:0;min-width:0;overflow:hidden;color:var(--text-secondary);font-size:.78rem;font-weight:600;line-height:1.25;text-align:left;white-space:nowrap}.holiday-desc--empty{color:var(--text-muted);font-style:italic}.holiday-desc__run{display:flex;width:max-content;align-items:center;white-space:nowrap;will-change:transform}.holiday-desc__chunk{flex:0 0 auto;padding-right:1.75rem}.holiday-desc.is-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 .4rem,#000 calc(100% - .4rem),transparent);mask-image:linear-gradient(90deg,transparent,#000 .4rem,#000 calc(100% - .4rem),transparent)}.holiday-desc.is-marquee .holiday-desc__run{animation:holiday-desc-marquee 6s linear infinite}.holiday-desc.is-marquee:hover .holiday-desc__run{animation-play-state:paused}@keyframes holiday-desc-marquee{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}@media(prefers-reduced-motion:reduce){.holiday-desc.is-marquee{-webkit-mask-image:none;mask-image:none}.holiday-desc.is-marquee .holiday-desc__run{animation:none}.holiday-desc.is-marquee .holiday-desc__chunk:last-child{display:none}.holiday-desc.is-marquee .holiday-desc__chunk{display:block;max-width:100%;padding-right:0;overflow:hidden;text-overflow:ellipsis}}@media(max-width:480px){.holiday-search{flex-direction:column;align-items:stretch}.holiday-masonry{max-height:none;flex-wrap:nowrap;overflow:visible}.holiday-masonry>*{width:100%}}.color-picker{display:inline-flex;align-items:center;gap:.7rem;min-height:2.55rem}.color-picker--swatch{min-height:0;gap:0}.color-picker__swatch{position:relative;display:block;width:2.55rem;height:2.55rem;margin:0;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-input, var(--bg-card));cursor:pointer}.color-picker__swatch input{position:absolute;top:0;right:0;bottom:0;left:0;box-sizing:border-box;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.color-picker__swatch input::-webkit-color-swatch-wrapper{padding:0}.color-picker__swatch input::-webkit-color-swatch{border:0;border-radius:.55rem}.color-picker__swatch input::-moz-color-swatch{border:0;border-radius:.55rem}.color-picker.is-disabled .color-picker__swatch{opacity:.55;cursor:not-allowed}.color-picker.is-invalid .color-picker__swatch{border-color:var(--danger)}.color-picker__value{font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary)}.calendar-edit-modal{display:flex;flex-direction:column;gap:.85rem;min-height:0}.calendar-edit-modal .form-tabset{flex:1 1 auto}.calendar-edit-modal__loading{display:grid;place-items:center;min-height:12rem}.calendar-edit-modal__preview{flex:0 1 auto;max-height:42%;min-height:11rem;overflow:auto;padding:.75rem .85rem .8rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-form-header)}.calendar-edit-modal__preview h3{margin:0 0 .55rem;font-size:.92rem}.year-calendar--preview .year-calendar__day{min-height:1.02rem;font-size:.58rem}.year-calendar--preview .year-calendar__months{gap:.38rem .45rem}.calendar-edit-modal__flags{display:flex;flex-wrap:wrap;gap:.75rem 1.15rem}.calendar-edit-modal__ranges{display:flex;flex-direction:column;gap:.7rem}.calendar-edit-modal__range{display:grid;grid-template-columns:5.2rem minmax(0,1fr) minmax(12rem,1.1fr) 2.2rem;grid-template-areas:"label desc picker action" ".     hint hint   .";gap:.55rem .7rem;align-items:center}.calendar-edit-modal__range-label{grid-area:label;font-size:.82rem;font-weight:750;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.calendar-edit-modal__range.is-collision .calendar-edit-modal__range-label{color:var(--danger)}.calendar-edit-modal__range-description{grid-area:desc}.calendar-edit-modal__range-picker{grid-area:picker;min-width:0}.calendar-edit-modal__range-action{grid-area:action;display:flex;align-items:center;justify-content:center}.calendar-edit-modal__add-range{align-self:flex-start}.calendar-edit-modal__collision-hint{grid-area:hint;margin:0;color:var(--danger);font-size:.75rem;font-weight:650;line-height:1.35}@media(max-width:1100px){.calendar-edit-modal__range{grid-template-columns:1fr;grid-template-areas:"label" "desc" "picker" "action" "hint"}.calendar-edit-modal__range-action{justify-content:flex-start}}.plate-photos-page{position:relative;display:flex;min-width:0;min-height:0;height:100%;overflow:hidden;flex:1 1 auto;flex-direction:column;gap:1.1rem}.plate-photos-page__kpis,.plate-photos-page__sizes,.plate-photos-page>.fold-panel{flex:0 0 auto}.plate-photos-page__sizes{display:flex;justify-content:flex-end;align-items:center;gap:.85rem}.plate-photos-page__bulk{margin-right:auto}.plate-photos-page__bulk .btn{min-height:2.55rem;padding-inline:1.05rem .85rem;font-size:.92rem;font-weight:800;box-shadow:var(--shadow)}.plate-photos-page__bulk-count{display:inline-grid;min-width:1.45rem;height:1.45rem;place-items:center;margin-left:.15rem;padding:0 .38rem;border-radius:999px;background:color-mix(in srgb,#fff 24%,transparent);font-size:.82rem;font-weight:800;line-height:1}.plate-photos-page__size-group{display:flex;gap:.35rem}.plate-photos-page__size-group+.plate-photos-page__size-group{padding-left:.85rem;border-left:1px solid var(--border)}.plate-photos-page__toolbar-sep{align-self:stretch;width:1px;min-height:1.45rem;margin-block:.12rem;background:var(--border)}.plate-photos-page__sizes .btn.is-active{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.plate-photos-page .filter-grid{--filter-slots: 12;--filter-span: 4;grid-template-columns:repeat(var(--filter-slots),minmax(0,1fr))}.plate-photos-page .filter-grid>.field{grid-column:span var(--filter-span)}.plate-photos-page--split .filter-grid>.field--dates{grid-column:span 12}.plate-photos-page .filter-grid .date-range-picker,.plate-photos-page .filter-grid .date-range-picker .date-picker__control{width:100%;min-width:0;max-width:none}.plate-photos-page .filter-grid .date-range-picker .date-picker__value{overflow:hidden;text-overflow:ellipsis}.plate-photos-page .filter-grid>.field--type{grid-column:span 4}.plate-photos-page .filter-grid>.field--state{grid-column:span 8}.plate-photos-page .filter-grid>.field--vehicle{grid-column:span 8}.plate-photos-page .filter-grid .chip-select{min-height:2.35rem;align-items:center}.plate-photos-page .filter-grid>.field--type .chip-select--panel,.plate-photos-page .filter-grid>.field--state .chip-select--panel,.plate-photos-page .filter-grid>.field--vehicle .chip-select--panel{width:100%}.plate-photos-page .chip-select--route-kind,.plate-photos-page .chip-select--plate-state,.plate-photos-page .chip-select--vehicle{flex-wrap:wrap}.chip-select--plate-state .chip-select__chip--warning.is-active{border-color:color-mix(in srgb,var(--warning) 55%,var(--border));background:var(--warning-soft);color:var(--warning)}.chip-select--plate-state .chip-select__chip--ok.is-active{border-color:color-mix(in srgb,var(--ok) 55%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--plate-state .chip-select__chip--muted.is-active{border-color:var(--border);background:var(--bg-hover);color:var(--text-muted)}.plate-photos-page__results{min-width:0;min-height:0;padding:.15rem .25rem 1rem;overflow:auto;overscroll-behavior:contain;flex:1 1 auto;scrollbar-gutter:stable}.plate-photos-page__grid{--plate-columns: 6;display:grid;grid-template-columns:repeat(var(--plate-columns),minmax(0,1fr));gap:1rem}.plate-photos-page__grid--compact{--plate-columns: 8;gap:.7rem}.plate-photos-page__grid--wide{--plate-columns: 4;gap:1.15rem}.plate-photos-page__lanes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.1rem;align-items:start}.plate-photos-page__lane{min-width:0}.plate-photos-page__lane-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.7rem;color:var(--text-secondary);font-size:.78rem;font-weight:700}.plate-photos-page__lane-empty{display:grid;min-height:8rem;place-items:center;border:1px dashed var(--border);border-radius:.85rem}.plate-photos-page__lanes .plate-photos-page__grid{--plate-columns: 3}.plate-photos-page__lanes .plate-photos-page__grid--compact{--plate-columns: 4}.plate-photos-page__lanes .plate-photos-page__grid--wide{--plate-columns: 2}.plate-photos-page__sentinel{width:100%;height:1px}.plate-photos-page__empty{display:grid;min-height:14rem;place-items:center}.plate-photos-page__confirm{display:flex;flex-direction:column;gap:.7rem}.plate-photos-page__confirm p{margin:0}.plate-photos-page__confirm .es-plate--static{height:1.7rem}.plate-photos-page__confirm-meta{display:flex;align-items:center;gap:.55rem;color:var(--text-secondary)}.plate-photos-page__end{margin:1rem 0 0;color:var(--text-muted);font-size:.75rem;text-align:center}.plate-photos-page__results>.loading-spinner{margin:1.25rem auto}@media(max-width:1400px){.plate-photos-page__grid{--plate-columns: 4}.plate-photos-page__grid--compact{--plate-columns: 6}.plate-photos-page__grid--wide{--plate-columns: 3}.plate-photos-page__lanes .plate-photos-page__grid{--plate-columns: 2}.plate-photos-page__lanes .plate-photos-page__grid--compact{--plate-columns: 3}.plate-photos-page__lanes .plate-photos-page__grid--wide{--plate-columns: 2}}@media(max-width:1100px){.plate-photos-page .filter-grid{--filter-span: 6}.plate-photos-page__grid{--plate-columns: 3}.plate-photos-page__grid--compact{--plate-columns: 4}.plate-photos-page__grid--wide,.plate-photos-page__lanes .plate-photos-page__grid,.plate-photos-page__lanes .plate-photos-page__grid--compact,.plate-photos-page__lanes .plate-photos-page__grid--wide{--plate-columns: 2}.plate-photos-page .filter-grid>.field--type{grid-column:span 6}.plate-photos-page--split .filter-grid>.field--dates{grid-column:span 12}.plate-photos-page .filter-grid>.field--state{grid-column:span 12}}@media(max-width:480px){.plate-photos-page{gap:.8rem}.plate-photos-page .filter-grid{--filter-span: 12}.plate-photos-page .filter-grid>.field--dates,.plate-photos-page .filter-grid>.field--type,.plate-photos-page .filter-grid>.field--state{grid-column:span 12}.plate-photos-page__sizes{flex-wrap:wrap}.plate-photos-page__bulk{flex:1 1 100%;margin-right:0}.plate-photos-page__bulk .btn{width:100%;justify-content:center}}@media(max-width:720px){.plate-photos-page__lanes{grid-template-columns:1fr}.plate-photos-page__grid,.plate-photos-page__grid--compact,.plate-photos-page__grid--wide,.plate-photos-page__lanes .plate-photos-page__grid,.plate-photos-page__lanes .plate-photos-page__grid--compact,.plate-photos-page__lanes .plate-photos-page__grid--wide{--plate-columns: 2}}@media(max-width:480px){.plate-photos-page__grid,.plate-photos-page__grid--compact,.plate-photos-page__grid--wide,.plate-photos-page__lanes .plate-photos-page__grid,.plate-photos-page__lanes .plate-photos-page__grid--compact,.plate-photos-page__lanes .plate-photos-page__grid--wide{--plate-columns: 1}}.plate-photo-card{position:relative;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:1rem;background:var(--bg-card);box-shadow:var(--shadow);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.plate-photo-card:hover,.plate-photo-card:focus-within{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.plate-photo-card--state-0{border-left:.32rem solid var(--warning)}.plate-photo-card--state-1{border-left:.32rem solid var(--ok)}.plate-photo-card--state-2{border-left:.32rem solid var(--text-muted);opacity:.82}.plate-photo-card__open{display:flex;width:100%;height:100%;padding:0;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:transparent;flex-direction:column}.plate-photo-card__open:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.plate-photo-card__image{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--bg-primary)}.plate-photo-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.plate-photo-card:hover .plate-photo-card__image img{transform:scale(1.025)}.plate-photo-card__preview{display:block;width:100%;height:100%;padding:0;border:0;cursor:pointer;background:transparent}.plate-photo-card__preview:disabled,.plate-photo-card__open:disabled,.plate-photo-card__tool:disabled{cursor:wait}.plate-photo-card__preview:focus-visible,.plate-photo-card__tool:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.plate-photo-card__pick{position:absolute;top:.45rem;left:.45rem;z-index:4;opacity:0;pointer-events:none;transition:opacity .16s ease}.plate-photo-card:hover .plate-photo-card__pick,.plate-photo-card:focus-within .plate-photo-card__pick,.plate-photo-card.is-selecting .plate-photo-card__pick,.plate-photo-card.is-chosen .plate-photo-card__pick{opacity:1;pointer-events:auto}.plate-photo-card__pick .ui-checkbox{min-height:0;padding:.22rem;border-radius:.5rem;background:color-mix(in srgb,var(--bg-card) 88%,transparent);box-shadow:var(--shadow)}.plate-photo-card__kind{position:absolute;top:.45rem;right:.45rem;z-index:4;display:grid;width:1.7rem;height:1.7rem;place-items:center;border-radius:999px;box-shadow:var(--shadow)}.plate-photo-card__kind--entrada{border:1px solid color-mix(in srgb,var(--route-in) 50%,var(--border));background:var(--route-in-soft);color:var(--route-in)}.plate-photo-card__kind--salida{border:1px solid color-mix(in srgb,var(--route-out) 50%,var(--border));background:var(--route-out-soft);color:var(--route-out)}.plate-photo-card--compact .plate-photo-card__kind{width:1.45rem;height:1.45rem}.plate-photo-card--wide .plate-photo-card__kind{width:1.9rem;height:1.9rem}.plate-photo-card.is-chosen{border-color:var(--accent);box-shadow:var(--shadow),0 0 0 2px color-mix(in srgb,var(--accent) 28%,transparent)}@media(hover:none){.plate-photo-card__pick{opacity:1;pointer-events:auto}}.plate-photo-card__tools{position:absolute;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:stretch;gap:.3rem;padding:.3rem .4rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg-hover) 78%,var(--bg-card));opacity:0;transform:translateY(100%);pointer-events:none;transition:transform .18s ease,opacity .18s ease}.plate-photo-card:hover .plate-photo-card__tools,.plate-photo-card:focus-within .plate-photo-card__tools{opacity:1;transform:translateY(0);pointer-events:auto}.plate-photo-card.is-selecting .plate-photo-card__tools,.plate-photo-card.is-chosen .plate-photo-card__tools{display:none}.plate-photo-card__tools>*{flex:1 1 0;min-width:0}.plate-photo-card__tools .ui-tooltip-anchor{display:flex}.plate-photo-card__tool{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;height:1.9rem;padding:0;border-radius:.55rem;line-height:0;color:var(--text-secondary);background:var(--bg-card)}.plate-photo-card__tool:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary);background:var(--bg-card)}.plate-photo-card__tool--danger,.plate-photo-card__tool--danger:hover:not(:disabled){color:var(--danger)}.plate-photo-card__tool--danger:hover:not(:disabled){border-color:color-mix(in srgb,var(--danger) 55%,var(--border));background:var(--danger-soft)}.plate-photo-card--compact .plate-photo-card__tools{gap:.22rem;padding:.22rem .28rem}.plate-photo-card--compact .plate-photo-card__tool{height:1.55rem;border-radius:.45rem}.plate-photo-card--wide .plate-photo-card__tools{gap:.4rem;padding:.38rem .5rem}.plate-photo-card--wide .plate-photo-card__tool{height:2.15rem}@media(prefers-reduced-motion:reduce){.plate-photo-card__tools{transition:opacity .18s ease}}.plate-photo-card__head,.plate-photo-card__detail{display:flex;width:100%;padding-inline:.85rem}.plate-photo-card__head{align-items:center;justify-content:space-between;gap:.65rem;padding-top:.8rem}.plate-photo-card__head .es-plate--static{height:1.65rem}.plate-photo-card__aside{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:.45rem;margin-left:auto}.plate-photo-card__state{flex:0 0 auto;padding:.18rem .48rem;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border));border-radius:999px;background:var(--warning-soft);color:var(--warning);font-size:.68rem;font-weight:800}.plate-photo-card--state-1 .plate-photo-card__state{border-color:color-mix(in srgb,var(--ok) 45%,var(--border));background:var(--ok-soft);color:var(--ok)}.plate-photo-card--state-2 .plate-photo-card__state{border-color:var(--border);background:var(--bg-hover);color:var(--text-muted)}.plate-photo-card__detail{min-width:0;padding-top:.55rem;padding-right:5.75rem;padding-bottom:.8rem;color:var(--text-muted);font-size:.72rem;flex-direction:column;gap:.2rem}.plate-photo-card__detail>span:not(.plate-photo-card__brand){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plate-photo-card__brand{position:absolute;right:.75rem;bottom:.55rem;z-index:1;max-width:5.5rem;pointer-events:none}.plate-photo-card--compact .plate-photo-card__head,.plate-photo-card--compact .plate-photo-card__detail{padding-inline:.55rem}.plate-photo-card--compact .plate-photo-card__head{align-items:center;padding-top:.55rem}.plate-photo-card--compact .plate-photo-card__head .es-plate--static{height:1.35rem}.plate-photo-card--compact .plate-photo-card__detail{padding-top:.4rem;padding-right:.55rem;padding-bottom:.55rem;font-size:.66rem}.plate-photo-card--wide .plate-photo-card__head,.plate-photo-card--wide .plate-photo-card__detail{padding-inline:1.05rem}.plate-photo-card--wide .plate-photo-card__head{padding-top:.95rem}.plate-photo-card--wide .plate-photo-card__head .es-plate--static{height:2rem}.plate-photo-card--wide .plate-photo-card__state{font-size:.74rem}.plate-photo-card--wide .plate-photo-card__detail{padding-top:.7rem;padding-bottom:.95rem;font-size:.78rem}.plate-photo-card.is-attention{border-color:var(--accent);box-shadow:var(--shadow-lg)}.plate-photo-card__flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;border-radius:inherit;pointer-events:none;background:color-mix(in srgb,var(--accent) 35%,#fff);box-shadow:inset 0 0 0 2px var(--accent);animation:occupancy-flash .65s ease-out forwards}.plate-photo-card__flash:after{content:"";position:absolute;top:-25%;right:-45%;bottom:-25%;left:-45%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.9) 50%,transparent 62%);animation:occupancy-flash-sheen .55s ease-out forwards}[data-theme=dark] .plate-photo-card__flash{background:color-mix(in srgb,var(--accent) 48%,transparent)}@media(prefers-reduced-motion:reduce){.plate-photo-card.is-attention{outline:2px solid var(--accent);outline-offset:1px}.plate-photo-card__flash{animation:none;opacity:0}}.pantallas-preview{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;height:100%;gap:.75rem;container-type:size;container-name:pantallas-preview}.pantallas-preview__toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem 1.25rem;flex:0 0 auto}.pantallas-preview__filters{display:flex;flex-direction:column;gap:.7rem}.pantallas-preview__criteria{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.75rem 1.25rem}.pantallas-preview__group{display:flex;flex-direction:column;gap:.35rem;min-width:0}.pantallas-preview__group--docks{flex:1 1 auto}.pantallas-preview__label{color:var(--text-secondary);font-size:.78rem;font-weight:650}.pantallas-preview__docks{display:flex;flex-wrap:nowrap;align-items:center;gap:.38rem;min-width:0;overflow-x:auto}.pantallas-preview__docks .chip-select--docks{flex:1 1 auto;flex-wrap:nowrap}.pantallas-preview__all{flex:0 0 auto;height:2.35rem;padding:0 .85rem;border:1.5px solid var(--chip-select-border);border-radius:.5rem;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.8rem;font-weight:700;cursor:pointer}.pantallas-preview__all.is-active{border-color:var(--chip-select-border-active);background:var(--chip-select-bg-active);color:var(--chip-select-text-active)}.pantallas-preview__all:disabled{opacity:.45;cursor:default}.pantallas-preview__open{margin-left:auto;align-self:flex-end}.pantallas-preview__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(22rem,1fr));gap:.75rem;flex:1 1 auto;min-width:0;min-height:0;overflow:auto;align-content:start}.pantallas-preview__stage{container-type:size;display:grid;place-items:center;flex:1 1 auto;min-width:0;min-height:12rem;overflow:hidden}.pantallas-preview__stage--videowall{align-content:start;align-items:start;justify-items:stretch;gap:.28rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:max-content;overflow:auto}@media(max-aspect-ratio:1/1){.pantallas-preview__stage--videowall{grid-template-columns:minmax(0,1fr);grid-template-rows:max-content max-content}}@container pantallas-preview (max-aspect-ratio: 1/1){.pantallas-preview__stage--videowall{grid-template-columns:minmax(0,1fr);grid-template-rows:max-content max-content}}.pantallas-preview__empty{margin:0;color:var(--text-muted)}.pantallas-preview__frame{position:relative;aspect-ratio:16/9;width:min(100cqw,177.7777777778cqh);height:auto;border-radius:var(--radius);overflow:hidden}.pantallas-preview__frame--darsena .darsena-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.pantallas-preview__frame--darsena .darsena-info--embed{position:absolute;left:50%;top:50%;width:1920px;height:1080px;--kiosk-vw: 19.2px;--kiosk-vh: 10.8px;--kiosk-u: 1px;transform:translate(-50%,-50%) scale(var(--darsena-scale, 1));transform-origin:center center}.pantallas-preview__frame--videowall .videowall-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.pantallas-darsena-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);overflow:hidden}.pantallas-darsena-card__title{display:flex;align-items:center;gap:.25rem;min-height:1.7rem;padding:0 .2rem 0 .6rem;background:var(--accent-secondary);color:var(--darsena-fg)}.pantallas-darsena-card__heading{margin:0;flex:1 1 auto;min-width:0;font-size:.78rem;font-weight:700;line-height:1.2}.pantallas-darsena-card__actions{display:flex;align-items:center;gap:0}.pantallas-darsena-card__action{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;margin:0;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;line-height:0;cursor:pointer;text-decoration:none}.pantallas-darsena-card__action:hover{background:color-mix(in srgb,var(--darsena-fg) 14%,transparent)}.pantallas-darsena-card__action:focus-visible{outline:2px solid var(--darsena-fg);outline-offset:-2px}.pantallas-darsena-card__action:disabled,.pantallas-darsena-card__action.is-busy{opacity:.55;cursor:default}.pantallas-darsena-card__body{display:grid;grid-template-columns:2.4rem minmax(0,1fr) 2.4rem;gap:.4rem;align-items:stretch;padding:.5rem}.pantallas-darsena-card__preview{position:relative;aspect-ratio:16/9;min-width:0;border-radius:var(--radius-sm, .25rem);overflow:hidden;background:var(--text-primary)}.pantallas-darsena-card__preview .darsena-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.pantallas-darsena-card__preview .darsena-info--embed{position:absolute;left:50%;top:50%;width:1920px;height:1080px;--kiosk-vw: 19.2px;--kiosk-vh: 10.8px;--kiosk-u: 1px;transform:translate(-50%,-50%) scale(var(--darsena-scale, 1));transform-origin:center center}.pantallas-reader{display:flex;flex-direction:column;align-items:center;gap:.35rem;flex:0 0 2.4rem;min-width:2.4rem}.pantallas-reader__title{display:block;width:100%;padding:.1rem 0;border-radius:var(--radius-sm, .25rem);background:var(--accent);color:var(--darsena-fg);font-size:.62rem;font-weight:700;letter-spacing:.04em;text-align:center}.pantallas-reader__icon{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:var(--radius-sm, .25rem);background:var(--bg-secondary);color:var(--text-secondary)}.pantallas-reader__icon.is-ok{color:var(--ok)}.pantallas-reader__icon.is-warn{color:var(--warning)}.pantallas-reader__icon.is-fail{color:var(--danger)}.pantallas-darsena-preview-modal{padding:.65rem}.pantallas-darsena-preview-modal.app-modal--xl .app-modal__panel{--preview-chrome: 4.55rem;width:min(100vw - 1.3rem,(100vh - 1.3rem - var(--preview-chrome)) * 16 / 9);max-width:none;height:min(100vh - 1.3rem,(100vw - 1.3rem) * 9 / 16 + var(--preview-chrome));max-height:calc(100vh - 1.3rem)}.pantallas-darsena-preview-modal .app-modal__head{padding:.55rem 2.8rem .5rem .9rem}.pantallas-darsena-preview-modal .app-modal__icon{width:2.15rem;height:2.15rem}.pantallas-darsena-preview-modal__body{margin:.45rem .55rem .55rem;padding:0;overflow:hidden;border:0;background:var(--text-primary);container-type:size;display:grid;place-items:center}.pantallas-darsena-preview-modal__stage{position:relative;aspect-ratio:16/9;width:min(100cqw,177.7777777778cqh);height:auto;overflow:hidden}.pantallas-darsena-preview-modal__stage .darsena-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.pantallas-darsena-preview-modal__stage .darsena-info--embed{position:absolute;left:50%;top:50%;width:1920px;height:1080px;--kiosk-vw: 19.2px;--kiosk-vh: 10.8px;--kiosk-u: 1px;transform:translate(-50%,-50%) scale(var(--darsena-scale, 1));transform-origin:center center}.pantallas-videowall-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);overflow:hidden}.pantallas-videowall-card__title{display:flex;align-items:center;gap:.25rem;min-height:1.7rem;padding:0 .2rem 0 .6rem;background:var(--accent-secondary);color:var(--darsena-fg)}.pantallas-videowall-card__heading{margin:0;flex:1 1 auto;min-width:0;font-size:.78rem;font-weight:700;line-height:1.2}.pantallas-videowall-card__actions{display:flex;align-items:center;gap:0}.pantallas-videowall-card__action{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;margin:0;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;line-height:0;cursor:pointer;text-decoration:none}.pantallas-videowall-card__action:hover{background:color-mix(in srgb,var(--darsena-fg) 14%,transparent)}.pantallas-videowall-card__action:focus-visible{outline:2px solid var(--darsena-fg);outline-offset:-2px}.pantallas-videowall-card__action:disabled,.pantallas-videowall-card__action.is-busy{opacity:.55;cursor:default}.pantallas-videowall-card__body{padding:.5rem}.pantallas-videowall-card__preview{position:relative;aspect-ratio:16/9;min-width:0;border-radius:var(--radius-sm, .25rem);overflow:hidden;background:var(--text-primary)}.pantallas-videowall-card__preview .videowall-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.pantallas-videowall-preview-modal{padding:.65rem}.pantallas-videowall-preview-modal.app-modal--xl .app-modal__panel{--preview-chrome: 4.55rem;width:min(100vw - 1.3rem,(100vh - 1.3rem - var(--preview-chrome)) * 16 / 9);max-width:none;height:min(100vh - 1.3rem,(100vw - 1.3rem) * 9 / 16 + var(--preview-chrome));max-height:calc(100vh - 1.3rem)}.pantallas-videowall-preview-modal .app-modal__head{padding:.55rem 2.8rem .5rem .9rem}.pantallas-videowall-preview-modal .app-modal__icon{width:2.15rem;height:2.15rem}.pantallas-videowall-preview-modal__body{margin:.45rem .55rem .55rem;padding:0;overflow:hidden;border:0;background:var(--text-primary);container-type:size;display:grid;place-items:center}.pantallas-videowall-preview-modal__stage{position:relative;aspect-ratio:16/9;width:min(100cqw,177.7777777778cqh);height:auto;overflow:hidden}.pantallas-videowall-preview-modal__stage .videowall-embed-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.megafonia-desc{font-weight:650}.catalog-page.mensajes-programados .megafonia-lang-flag__svg{width:1.35rem;height:.96rem}.catalog-page.mensajes-programados .filter-grid>.field--desc{grid-column:span 6}.catalog-page.mensajes-programados .filter-grid>.field--desc input{width:100%;min-width:0}@media(max-width:1100px){.catalog-page.mensajes-programados .filter-grid>.field--desc{grid-column:1/-1}}.mensajes-programados .catalog-page__toolbar--megafonia{justify-content:space-between;align-items:flex-end}.mensajes-programados__broadcast{display:flex;flex-direction:column;align-items:stretch;gap:.55rem;min-width:min(22rem,100%);max-width:28rem;padding:.7rem .85rem .75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-panel);box-shadow:var(--shadow)}.speaker-message-edit{display:flex;flex-direction:column;gap:.9rem}.speaker-message-edit__text{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem}.speaker-message-edit__text textarea{width:100%;resize:none;text-transform:uppercase}.speaker-message-edit__text-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.speaker-message-edit__audio{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem}.speaker-message-edit__audio-picker{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;width:100%;min-height:2.6rem;padding:.45rem .7rem;border:1px dashed var(--border);border-radius:.7rem;background:var(--bg-hover)}.form-row__control.is-ok .speaker-message-edit__audio-picker{border-color:var(--ok);border-style:solid;box-shadow:0 0 0 1px color-mix(in srgb,var(--ok) 35%,transparent)}.form-row__control.is-error .speaker-message-edit__audio-picker{border-color:var(--danger);border-style:solid;box-shadow:0 0 0 1px color-mix(in srgb,var(--danger) 45%,transparent)}.speaker-message-edit__audio-file{display:inline-flex;min-width:0;flex:1 1 12rem;align-items:center;gap:.15rem}.speaker-message-edit__audio-name{min-width:0;color:var(--text-secondary);font-size:.8rem;font-weight:650;word-break:break-all}.speaker-message-edit__audio audio{width:min(100%,22rem)}.historial-mensajes__result{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.22rem;min-width:0;max-width:100%}.historial-mensajes__result-chip{padding:.18rem .55rem .18rem .42rem;font-size:.72rem;letter-spacing:.01em}.historial-mensajes__result-detail{color:var(--text-muted);font-size:.72rem;font-weight:550;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.catalog-page.historial-mensajes .filter-grid>.field--desc{grid-column:span 6}.catalog-page.programacion-megafonia .filter-grid>.field--desc{grid-column:span 12}.catalog-page.programacion-megafonia .filter-grid>.field--rango,.catalog-page.programacion-megafonia .filter-grid>.field--kind,.catalog-page.programacion-megafonia .filter-grid>.field--estado{grid-column:span 4}.catalog-page.historial-mensajes .megafonia-lang-flag__svg,.catalog-page.programacion-megafonia .megafonia-lang-flag__svg{width:1.35rem;height:.96rem}.programacion-megafonia__days{display:flex;flex-wrap:nowrap;gap:.28rem}.programacion-megafonia__day{min-width:1.55rem;justify-content:center}.programacion-megafonia__window{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.28rem}.programacion-megafonia__freq{font-variant-numeric:tabular-nums}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row--puntual{--programacion-kind: var(--accent)}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row--ciclica{--programacion-kind: var(--ok)}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row--emision{--programacion-kind: var(--col-ftl)}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row--silencio{--programacion-kind: var(--danger)}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead td:first-child{box-shadow:inset .32rem 0 0 var(--programacion-kind);padding-left:.82rem}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead:hover td:first-child,.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead.is-active td:first-child{box-shadow:inset .32rem 0 0 var(--programacion-kind)}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead td{vertical-align:middle}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead td[rowspan]{border-bottom:1px solid var(--border)}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-detail td{padding-top:.15rem;border-bottom:1px solid var(--border)}.catalog-page.programacion-megafonia .route-table tbody tr:nth-child(2n):not(:hover):not(.is-active) td{background:var(--bg-primary)}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-zebra:not(:hover):not(.is-active) td{background:color-mix(in srgb,var(--text-primary) 3%,var(--bg-primary))}.catalog-page.programacion-megafonia .programacion-megafonia__desc{font-weight:650;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead:hover td,.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead:hover+tr.programacion-megafonia__row-detail td,.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead:has(+tr.programacion-megafonia__row-detail:hover) td,.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-detail:hover td,.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead.is-active td,.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-lead.is-active+tr.programacion-megafonia__row-detail td{background:color-mix(in srgb,var(--accent) 12%,var(--bg-primary))}.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-detail:hover td:first-child,.catalog-page.programacion-megafonia .route-table tbody tr.programacion-megafonia__row-detail.is-active td:first-child{box-shadow:none}.chip-select--programacion-kind .chip-select__chip[data-value="0"].is-active{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));color:var(--accent)}.chip-select--programacion-kind .chip-select__chip[data-value="1"].is-active{border-color:color-mix(in srgb,var(--ok) 55%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--programacion-kind .chip-select__chip[data-value="2"].is-active{border-color:color-mix(in srgb,var(--col-ftl) 55%,var(--border));background:color-mix(in srgb,var(--col-ftl) 16%,var(--bg-elevated));color:var(--col-ftl)}.chip-select--programacion-kind .chip-select__chip[data-value="3"].is-active{border-color:color-mix(in srgb,var(--danger) 55%,var(--border));background:var(--danger-soft);color:var(--danger)}@media(max-width:1100px){.catalog-page.historial-mensajes .filter-grid>.field--desc,.catalog-page.programacion-megafonia .filter-grid>.field--desc,.catalog-page.programacion-megafonia .filter-grid>.field--rango,.catalog-page.programacion-megafonia .filter-grid>.field--kind,.catalog-page.programacion-megafonia .filter-grid>.field--estado{grid-column:1/-1}}.time-strip{--time-strip-angle: 30deg;--time-strip-label-h: 3.55rem;--time-strip-dot: .62rem;min-width:0;width:100%;overflow-x:auto;overflow-y:hidden;border:1px solid var(--border);border-radius:.85rem;background:var(--bg-card);touch-action:pan-x;overscroll-behavior-x:contain;scrollbar-width:thin}.time-strip.is-wide{cursor:grab}.time-strip.is-panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.time-strip.is-empty{cursor:default;padding:.65rem .8rem}.time-strip__empty{margin:0;color:var(--text-muted);font-size:.82rem;font-weight:650}.time-strip__canvas{position:relative;height:calc(var(--time-strip-label-h) + var(--time-strip-dot) + .7rem);min-width:100%;box-sizing:border-box}.time-strip__rail{position:absolute;top:calc(var(--time-strip-label-h) + var(--time-strip-dot) / 2);right:1.6rem;left:1.6rem;height:3px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 55%,var(--border));opacity:.55;transform:translateY(-50%);pointer-events:none}.time-strip__mark{position:absolute;top:0;z-index:1;display:grid;grid-template-rows:var(--time-strip-label-h) var(--time-strip-dot);justify-items:center;width:0;transform:translate(-50%);pointer-events:none}.time-strip__label{position:relative;align-self:stretch;width:0}.time-strip__label-text{position:absolute;left:50%;bottom:.42rem;color:var(--text-muted);font-size:.72rem;font-weight:750;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;transform:rotate(calc(-1 * var(--time-strip-angle)));transform-origin:0 100%}.time-strip__mark--hour .time-strip__label-text,.time-strip__mark--end .time-strip__label-text{color:var(--text-primary);font-weight:800}.time-strip__dot{width:var(--time-strip-dot);height:var(--time-strip-dot);border-radius:999px;background:var(--text-muted);box-shadow:0 0 0 .22rem color-mix(in srgb,var(--text-muted) 18%,transparent)}.time-strip__mark--hour .time-strip__dot{background:var(--accent);box-shadow:0 0 0 .22rem color-mix(in srgb,var(--accent) 22%,transparent)}.time-strip__mark--end:not(.time-strip__mark--hour) .time-strip__dot{background:var(--text-primary);box-shadow:0 0 0 .22rem color-mix(in srgb,var(--text-primary) 16%,transparent)}.schedule-message-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.85rem;min-height:0;flex:1 1 auto;height:100%;overflow:hidden}.schedule-message-picker__col{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}.schedule-message-picker__col.is-drop-target{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-card))}.schedule-message-picker__head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex:0 0 auto;padding:.7rem .8rem .45rem}.schedule-message-picker__title{margin:0;font-size:.82rem;font-weight:750;color:var(--text-primary)}.schedule-message-picker__counts{display:flex;align-items:center;gap:.4rem;flex:0 0 auto}.schedule-message-picker__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.7rem;padding:.12rem .45rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));color:var(--accent-secondary);font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}[data-theme=dark] .schedule-message-picker__count{color:var(--accent)}.schedule-message-picker__count.is-muted{background:var(--bg-hover);border-color:var(--border);color:var(--text-muted)}.schedule-message-picker__search{flex:0 0 auto;padding:0 .8rem .55rem}.schedule-message-picker__search .field{margin:0}.schedule-message-picker__hint{margin:0 .8rem .45rem;color:var(--text-muted);font-size:.72rem}.schedule-message-picker__list{flex:1 1 auto;min-height:8rem;overflow:auto;padding:.2rem .45rem .55rem}.schedule-message-picker__empty{display:grid;place-items:center;min-height:7rem;padding:1rem;color:var(--text-muted);text-align:center;font-size:.8rem}.schedule-message-picker__item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem .5rem;align-items:center;width:100%;margin:0 0 .22rem;padding:.32rem .4rem .32rem .55rem;border:1px solid var(--border);border-radius:.55rem;background:var(--bg-card);color:inherit;-webkit-user-select:none;user-select:none}.schedule-message-picker__item.is-assigned{grid-template-columns:auto minmax(0,1fr) auto;padding-left:.28rem}.schedule-message-picker__item:nth-child(2n){background:var(--row-even)}.schedule-message-picker__item.is-draggable{cursor:grab}.schedule-message-picker__item.is-dragging{opacity:.55}.schedule-message-picker__item.is-drop-before{box-shadow:inset 0 2px 0 0 var(--accent)}.schedule-message-picker__item:last-child{margin-bottom:0}.schedule-message-picker__item:hover,.schedule-message-picker__item:nth-child(2n):hover{background:var(--bg-hover)}.schedule-message-picker__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:700;line-height:1.2}.schedule-message-picker__handle{display:inline-grid;place-items:center;width:1.55rem;height:1.7rem;padding:0;border:0;border-radius:.4rem;background:transparent;color:var(--text-muted);cursor:grab}.schedule-message-picker__handle:hover{background:var(--bg-hover);color:var(--text-primary)}.schedule-message-picker__action{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer}.schedule-message-picker__action:hover{background:var(--bg-hover);color:var(--text-primary)}.schedule-message-picker__action--add{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.schedule-message-picker__action--remove{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.schedule-message-picker__action--remove:hover{background:var(--danger-soft);color:var(--danger)}@media(max-width:1100px){.schedule-message-picker{grid-template-columns:1fr;overflow:auto}.schedule-message-picker__col{min-height:14rem}}.programacion-kind{padding:.16rem .55rem .16rem .42rem;font-size:.72rem}.programacion-kind svg{flex:none}.pill.programacion-kind--puntual{background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));color:var(--accent)}.pill.programacion-kind--ciclica{background:var(--ok-soft);color:var(--ok)}.pill.programacion-kind--emision{background:color-mix(in srgb,var(--col-ftl) 16%,var(--bg-elevated));color:var(--col-ftl)}.pill.programacion-kind--silencio{background:var(--danger-soft);color:var(--danger)}.wizard-shell__card--puntual{--wizard-card-kind: var(--accent)}.wizard-shell__card--ciclica{--wizard-card-kind: var(--ok)}.wizard-shell__card--emision{--wizard-card-kind: var(--col-ftl)}.wizard-shell__card--silencio{--wizard-card-kind: var(--danger)}.historial-origen{padding:.16rem .55rem .16rem .42rem;font-size:.72rem;letter-spacing:.01em}.historial-origen svg{flex:none}.pill.historial-origen--manual{background:var(--bg-hover);color:var(--text-secondary)}.pill.historial-origen--programado{background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));color:var(--accent)}.pill.historial-origen--anuncio{background:color-mix(in srgb,var(--col-ftl) 16%,var(--bg-elevated));color:var(--col-ftl)}.catalog-page.megafonia-settings{overflow-y:auto}.megafonia-settings{display:flex;flex-direction:column;gap:.85rem;min-height:0}.megafonia-settings>.audio-health.fold-panel{flex:0 0 auto;width:100%}.megafonia-settings__lead,.megafonia-settings__hint,.megafonia-settings__state{margin:0;color:var(--text-muted);font-size:.85rem;font-weight:550;line-height:1.45}.megafonia-settings__groups{column-count:1;column-gap:.75rem}.megafonia-settings__groups>.fold-panel{display:inline-block;width:100%;min-width:0;margin:0 0 .75rem;break-inside:avoid;page-break-inside:avoid;-webkit-column-break-inside:avoid}.megafonia-settings__groups>.fold-panel.is-focus{outline:2px solid color-mix(in srgb,var(--accent) 55%,var(--border))}[data-device=tablet] .megafonia-settings__groups,[data-device=desktop-portrait] .megafonia-settings__groups{column-count:2}[data-device=desktop-landscape] .megafonia-settings__groups{column-count:4}.megafonia-settings__hint{margin:0 0 .7rem}.megafonia-settings__list{display:flex;flex-direction:column;gap:.7rem}.megafonia-settings__list .parameter-row{grid-template-columns:1fr}.audio-health.fold-panel .fold-panel__body{display:flex;flex-direction:column;gap:.85rem}.audio-health__status{flex:0 0 auto}.audio-health__lead,.audio-health__error,.audio-health__meta,.audio-health__hint{margin:0;color:var(--text-muted);font-size:.82rem;font-weight:550;line-height:1.4}.audio-health__error{color:var(--danger, #b42318)}.audio-health__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem 1rem;margin:0}.audio-health__stats dt{margin:0 0 .15rem;color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.audio-health__stats dd{margin:0;color:var(--text-primary);font-size:.88rem;font-weight:650;line-height:1.35}.audio-health__hint{display:block;margin-top:.15rem;font-weight:550}.audio-health__services,.audio-health__disks{display:flex;flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none}.audio-health__services li,.audio-health__disks li{display:flex;align-items:flex-start;gap:.55rem}.audio-health__services strong,.audio-health__disks strong{display:block;color:var(--text-primary);font-size:.84rem}.audio-health__services span,.audio-health__disks span{color:var(--text-muted);font-size:.78rem;word-break:break-word}.accesos-usuarios__user{display:inline-flex;align-items:center;gap:.35rem;min-width:0;font-weight:750}.accesos-usuarios__chevron{flex:0 0 auto;color:var(--text-muted);transition:transform .16s ease}.accesos-usuarios__chevron.is-open{transform:rotate(-180deg)}.accesos-usuarios__detail-row td{background:color-mix(in srgb,var(--accent) 6%,var(--bg-primary));padding:.55rem .75rem .65rem}.accesos-usuarios__tokens-board{display:flex;flex-direction:column;gap:.45rem;min-width:0}.accesos-usuarios__tokens-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.accesos-usuarios__tokens-search{max-width:22rem}.accesos-usuarios__token-option{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.accesos-usuarios__token-option .es-plate--static{height:1.45rem}.accesos-usuarios__tokens{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,max(10rem,(100% - 3.15rem) / 8)),1fr));gap:.45rem}[data-device=desktop-landscape] .accesos-usuarios__tokens{grid-template-columns:repeat(8,minmax(0,1fr))}[data-device=desktop-portrait] .accesos-usuarios__tokens{grid-template-columns:repeat(6,minmax(0,1fr))}[data-device=tablet] .accesos-usuarios__tokens{grid-template-columns:repeat(3,minmax(0,1fr))}[data-device=mobile] .accesos-usuarios__tokens{grid-template-columns:repeat(2,minmax(0,1fr))}.accesos-usuarios__tokens li{display:grid;grid-template-columns:1.45rem minmax(0,1fr) 1.45rem auto;column-gap:.42rem;align-items:center;min-width:0;padding:.32rem .4rem;border:1px solid var(--border);border-radius:.5rem;background:var(--bg-card)}.accesos-usuarios__tokens li.is-plate{grid-template-columns:minmax(0,1fr) 1.45rem auto}.accesos-usuarios__tokens .table-row-actions{gap:.22rem;margin-inline-start:.12rem}.accesos-usuarios__tokens .table-action-btn{width:1.4rem;height:1.4rem}.accesos-usuarios__tokens .token-type-chip,.accesos-usuarios__tokens .access-type-chip{width:1.45rem;height:1.45rem}.accesos-usuarios__tokens li.is-expired{opacity:.55}.accesos-usuarios__token-code{min-width:0;overflow:hidden;font-size:.78rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.accesos-usuarios__token-code .es-plate,.accesos-usuarios__token-code .es-plate--static{min-width:0;width:100%;max-width:100%;height:1.45rem;border-width:1px;border-radius:.28rem}.accesos-usuarios__token-code .es-plate__eu{width:.58rem;padding:.04rem 0 .06rem;font-size:.36rem}.accesos-usuarios__token-code .es-plate__stars{display:none}.accesos-usuarios__token-code .es-plate__text{padding:0 .22rem;font-size:.58rem;letter-spacing:.05em}.accesos-usuarios__count{display:inline-flex;align-items:center;justify-content:center;gap:.28rem;min-width:3.4rem;padding:.16rem .45rem;border-radius:999px;font-size:.74rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2}.accesos-usuarios__count--plate{border:1px solid color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.accesos-usuarios__count--card{border:1px solid color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.accesos-usuarios__count--qr{border:1px solid color-mix(in srgb,var(--col-ftl) 48%,var(--border));background:color-mix(in srgb,var(--col-ftl) 16%,transparent);color:var(--col-ftl)}.accesos-usuarios__count.is-empty{border-color:var(--border);background:var(--bg-hover);color:var(--text-muted)}.catalog-page.accesos-usuarios .filter-grid>.field{grid-column:span 4}.access-type-chip{display:inline-flex;align-items:center;gap:.32rem;padding:.28rem .7rem;border:1px solid var(--chip-select-border);border-radius:999px;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.8rem;font-weight:700;line-height:1;white-space:nowrap}.access-type-chip__icon{display:inline-flex;align-items:center;line-height:0}.access-type-chip--auto{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.access-type-chip--manual{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.access-type-chip--none{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-secondary)}.access-type-chip--sm{padding:.2rem .55rem;font-size:.75rem}.access-type-chip--icon{justify-content:center;width:1.85rem;height:1.85rem;padding:0}.access-type-chip--icon.access-type-chip--sm{width:1.5rem;height:1.5rem}.token-type-chip{display:inline-flex;align-items:center;gap:.32rem;padding:.28rem .7rem;border:1px solid var(--chip-select-border);border-radius:999px;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.8rem;font-weight:700;line-height:1;white-space:nowrap}.token-type-chip__icon{display:inline-flex;align-items:center;line-height:0}.token-type-chip__label{letter-spacing:.01em}.token-type-chip--plate{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.token-type-chip--card{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.token-type-chip--qr{border-color:color-mix(in srgb,var(--col-ftl) 48%,var(--border));background:color-mix(in srgb,var(--col-ftl) 16%,transparent);color:var(--col-ftl)}.token-type-chip--unknown{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-secondary)}.token-type-chip--sm{padding:.2rem .55rem;font-size:.75rem}.token-type-chip--icon{justify-content:center;width:1.85rem;height:1.85rem;padding:0}.token-type-chip--icon.token-type-chip--sm{width:1.5rem;height:1.5rem}.app-modal.usuario-acceso-modal .app-modal__panel{height:auto;max-height:min(88vh,52rem)}.app-modal.usuario-acceso-modal .app-modal__body{flex:1 1 auto;min-height:0;overflow:hidden}.usuario-acceso-modal .form-tabset,.usuario-acceso-modal .form-tabset__body{flex:1 1 auto;min-height:0}.usuario-acceso-modal .form-tabset__body{display:flex;flex-direction:column;padding:.4rem}.usuario-acceso-modal .form-section--panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;border-radius:var(--radius)}.usuario-acceso-modal__body{min-height:0}.usuario-acceso-modal__edit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.9rem;align-items:start;min-width:0}.usuario-acceso-modal__preview-dialog{display:flex;justify-content:center}.usuario-acceso-modal__preview-dialog .access-card-preview{width:min(100%,16.5rem)}.usuario-acceso-modal__tokens{display:flex;flex-direction:column;gap:.75rem;min-width:0;min-height:0;flex:1 1 auto}.usuario-acceso-modal__search{max-width:24rem}.usuario-acceso-modal__token-option{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.usuario-acceso-modal__token-option .es-plate--static{height:1.45rem}.usuario-acceso-modal__tokens .data-table-wrap{flex:1 1 auto;min-height:16rem}.usuario-acceso-modal__tokens .data-table tbody tr.is-expired{opacity:.62}.usuario-acceso-modal__code,.usuario-acceso-modal__validity,.usuario-acceso-modal__status{display:inline-flex;align-items:center;gap:.4rem;min-width:0}.usuario-acceso-modal__code .es-plate--static{max-width:100%;height:1.45rem}.usuario-acceso-modal__variants{display:flex;flex-direction:column;gap:.85rem}.usuario-acceso-modal__variants-hint{margin:0;color:var(--text-muted);line-height:1.55}.usuario-acceso-modal__variants .chip-select{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.usuario-acceso-modal__variants .chip-select__chip{justify-content:flex-start;width:100%}.usuario-acceso-modal__toggles{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}.access-card-preview{display:flex;flex-direction:column;align-items:center;gap:.7rem;flex:0 0 auto;min-width:0;width:15.5rem}.access-card-preview.is-in .access-card{animation:access-card-in .48s cubic-bezier(.22,1,.36,1) both}.access-card-preview.is-out .access-card{animation:access-card-out .38s ease-in both}.access-card-preview__stage{width:100%;perspective:720px}.access-card{position:relative;width:100%;aspect-ratio:8195/12814;overflow:hidden;border:1px solid var(--border);border-radius:.35rem;background:#fff;color:#111;box-shadow:0 10px 28px color-mix(in srgb,var(--text-primary) 18%,transparent);transform-style:preserve-3d;transition:transform .18s ease-out}.access-card.is-printing{transform:none!important;box-shadow:none;animation:none!important}.access-card.is-printing *{animation:none!important}.access-card__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;object-fit:cover;object-position:top center;pointer-events:none;-webkit-user-select:none;user-select:none}.access-card__brand{position:absolute;z-index:1;left:.28rem;bottom:.22rem;width:44%;padding:.12rem .2rem .1rem;background:#fff;line-height:0}.access-card__brand-logo{display:block;width:100%;height:auto;aspect-ratio:3.628;object-fit:cover;object-position:top center;pointer-events:none;-webkit-user-select:none;user-select:none}.access-card__qr{position:absolute;top:.35rem;right:.35rem;z-index:1;display:grid;place-items:center;padding:.2rem;background:#fff}.access-card__qr img,.access-card__qr-slot{display:block;width:4.35rem;height:4.35rem;background:#fff;animation:access-card-pop .45s .16s cubic-bezier(.22,1,.36,1) both}.access-card__info{position:absolute;z-index:1;top:65%;left:.45rem;right:.45rem;display:flex;flex-direction:column;gap:.22rem;padding:.55rem .45rem;border:1px solid #111;border-radius:.55rem;background:#ffffffeb;text-align:center}.access-card__code{margin:0;font-size:.95rem;font-weight:800;letter-spacing:.06em;animation:access-card-slide .45s .18s ease-out both}.access-card__company,.access-card__name,.access-card__validity{margin:0;animation:access-card-slide .45s .22s ease-out both}.access-card__company{font-size:.82rem;font-weight:750;line-height:1.2;word-wrap:break-word}.access-card__name{color:#444;font-size:.72rem;font-weight:650}.access-card__validity{color:#666;font-size:.62rem;font-weight:650;line-height:1.25}.access-card-preview__print{width:100%}@keyframes access-card-in{0%{opacity:0;transform:perspective(620px) rotateY(78deg) translateY(.8rem) scale(.92)}to{opacity:1;transform:perspective(620px) rotateY(0) translateY(0) scale(1)}}@keyframes access-card-out{0%{opacity:1;transform:perspective(620px) rotateY(0) scale(1)}to{opacity:0;transform:perspective(620px) rotateY(-70deg) translateY(.5rem) scale(.92)}}@keyframes access-card-slide{0%{opacity:0;transform:translate(-.9rem)}to{opacity:1;transform:translate(0)}}@keyframes access-card-pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}.accesos-buses__stamp{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.2rem}.accesos-buses__route{display:inline-flex;align-items:center;gap:.4rem;min-width:0}.catalog-page.accesos-buses .filter-grid>.field{grid-column:span 6}.accesos-historial__comment{display:block;width:100%;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.accesos-historial__thumb{display:block;width:2.6rem;height:1.7rem;padding:0;border:1px solid var(--border);border-radius:.28rem;overflow:hidden;background:var(--bg-elevated);cursor:pointer}.accesos-historial__thumb img{width:100%;height:100%;object-fit:cover}.catalog-page.accesos-historial .filter-grid>.field{grid-column:span 4}.catalog-page.accesos-historial .filter-grid>.field--wide{grid-column:span 8}.app-modal.grupo-acceso-modal .app-modal__panel:has(.form-tabset){height:auto;max-height:min(78vh,42rem)}.app-modal.grupo-acceso-modal--users .app-modal__panel:has(.form-tabset){height:min(78vh,42rem)}.app-modal.grupo-acceso-modal .app-modal__body:has(.form-tabset){flex:1 1 auto;min-height:0;overflow:hidden}.grupo-acceso-modal .form-tabset,.grupo-acceso-modal .form-tabset__body{flex:1 1 auto;min-height:0}.grupo-acceso-modal .form-tabset__body{display:flex;flex-direction:column;padding:.55rem}.grupo-acceso-modal .form-tabset__body>.form-section--panel{flex:1 1 auto;min-height:0;overflow:auto;display:flex;flex-direction:column}.grupo-acceso-modal--users .form-tabset__body--picker,.grupo-acceso-modal--users .form-tabset__body>.form-section--panel{overflow:hidden}.grupo-acceso-modal__type.form-section--panel{flex:none;min-height:0;overflow:visible;display:block;padding:.5rem .65rem}.grupo-acceso-modal .form-header__name--node{gap:.55rem;flex-wrap:wrap}.grupo-acceso-modal__until{display:flex;align-items:center;gap:.75rem;min-width:0}.grupo-acceso-modal__until .date-picker{flex:1 1 auto;min-width:0}.grupo-acceso-modal .access-user-picker{flex:1 1 auto;min-height:0;height:100%}.access-user-picker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:.85rem;min-height:0;height:100%;align-items:stretch}.access-user-picker__col{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}.access-user-picker__col.is-drop-target{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-card))}.access-user-picker__head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex:0 0 auto;padding:.7rem .8rem .45rem}.access-user-picker__title{margin:0;font-size:.82rem;font-weight:750;color:var(--text-primary)}.access-user-picker__search{flex:0 0 auto;display:flex;align-items:center;gap:.45rem;margin:0 .8rem .45rem;padding:.05rem .7rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-elevated);color:var(--text-muted)}.access-user-picker__search:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 3px var(--accent-dim);color:var(--accent)}.access-user-picker__search input{flex:1 1 auto;min-width:0;width:100%;padding:.42rem 0;border:0;background:transparent;color:var(--text-primary);font:inherit;font-size:.85rem}.access-user-picker__search input:focus{outline:none}.access-user-picker__search input::placeholder{color:var(--text-muted)}.access-user-picker__hint{flex:0 0 auto;margin:0 .8rem .45rem;color:var(--text-muted);font-size:.72rem}.access-user-picker__list{flex:1 1 auto;min-height:0;overflow:auto;padding:.35rem .45rem .55rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 55%,var(--bg-card))}.access-user-picker__empty{display:grid;place-items:center;min-height:7rem;padding:1rem;color:var(--text-muted);text-align:center;font-size:.8rem}.access-user-picker__item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem;align-items:center;margin:0 0 .22rem;padding:.28rem .4rem .28rem .5rem;border:1px solid var(--border);border-radius:.55rem;background:var(--bg-card);cursor:pointer;-webkit-user-select:none;user-select:none}.access-user-picker__item.is-draggable{cursor:grab}.access-user-picker__item.is-selected{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--bg-card))}.access-user-picker__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:700}.access-user-picker__action{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);cursor:pointer}.access-user-picker__action--add{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.access-user-picker__action--remove{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.access-user-picker__member{margin:0 0 .45rem;padding:.35rem;border:1px solid var(--border);border-radius:.65rem;background:var(--bg-elevated)}.access-user-picker__member .access-user-picker__item{grid-template-columns:auto minmax(0,1fr);margin:0;border:0;background:transparent;padding-inline:.15rem}.access-user-picker__member .access-user-picker__name{font-size:.95rem;font-weight:800;letter-spacing:.01em;color:var(--text-primary)}.access-user-picker__fields{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:.4rem;align-items:center;padding:.15rem .15rem .2rem}@media(max-width:1100px){.access-user-picker,.access-user-picker__fields{grid-template-columns:1fr}}.user-count{display:inline-flex;align-items:center;gap:.28rem;min-height:1.55rem;padding:.1rem .5rem .1rem .36rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));color:var(--accent);font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap}.user-count.is-none{color:var(--text-muted);background:var(--bg-hover);border-color:var(--border)}.access-group-type{display:inline-flex;align-items:center;gap:.35rem;min-height:1.55rem;padding:.12rem .45rem;border-radius:999px;border:1px solid transparent;font-size:.75rem;font-weight:700;line-height:1.2;white-space:nowrap}.access-group-type--barrier{color:var(--warning);background:color-mix(in srgb,var(--warning) 16%,var(--bg-elevated));border-color:color-mix(in srgb,var(--warning) 40%,var(--border))}.access-group-type--generic{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent) 36%,var(--border))}.access-group-type--platform{color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 16%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent-secondary) 38%,var(--border))}.access-group-type--office{color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--ok) 36%,var(--border))}.chip-select--access-group .chip-select__chip--barrier{color:var(--warning);background:color-mix(in srgb,var(--warning) 16%,var(--bg-elevated));border-color:color-mix(in srgb,var(--warning) 40%,var(--border))}.chip-select--access-group .chip-select__chip--barrier.is-active{color:var(--warning);background:color-mix(in srgb,var(--warning) 18%,var(--bg-elevated));border-color:color-mix(in srgb,var(--warning) 55%,var(--border))}.chip-select--access-group .chip-select__chip--generic{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent) 36%,var(--border))}.chip-select--access-group .chip-select__chip--generic.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.chip-select--access-group .chip-select__chip--platform{color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 16%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent-secondary) 38%,var(--border))}.chip-select--access-group .chip-select__chip--platform.is-active{color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 18%,var(--bg-elevated));border-color:color-mix(in srgb,var(--accent-secondary) 52%,var(--border))}.chip-select--access-group .chip-select__chip--office{color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--bg-elevated));border-color:color-mix(in srgb,var(--ok) 36%,var(--border))}.chip-select--access-group .chip-select__chip--office.is-active{color:var(--ok);background:color-mix(in srgb,var(--ok) 16%,var(--bg-elevated));border-color:color-mix(in srgb,var(--ok) 50%,var(--border))}.access-validity{display:inline-flex;align-items:center;gap:.28rem;white-space:nowrap}.access-validity__bound,.access-validity__open{display:inline-flex;align-items:center;gap:.28rem;padding:.12rem .42rem;border-radius:.45rem;border:1px solid var(--border);background:var(--bg-elevated);font-size:.75rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.access-validity__open{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--bg-elevated));border-color:color-mix(in srgb,var(--ok) 34%,var(--border))}.access-validity__arrow{color:var(--text-muted);flex:0 0 auto}.door-platforms{display:inline-flex;align-items:center;gap:.28rem;min-width:0}.door-platforms__arrow{flex:0 0 auto;color:var(--text-muted)}.door-platforms--empty{color:var(--text-muted)}.gate-direction{display:inline-flex;align-items:center;gap:.32rem;padding:.2rem .55rem;border:1px solid transparent;border-radius:999px;font-size:.75rem;font-weight:700;line-height:1;white-space:nowrap}.gate-direction--in{color:var(--route-in);background:var(--route-in-soft);border-color:color-mix(in srgb,var(--route-in) 42%,var(--border))}.gate-direction--out{color:var(--route-out);background:var(--route-out-soft);border-color:color-mix(in srgb,var(--route-out) 42%,var(--border))}.gate-direction--both{color:var(--route-pair);background:var(--route-pair-soft);border-color:color-mix(in srgb,var(--route-pair) 48%,var(--border))}.gate-direction__arrows{display:inline-flex;align-items:center;line-height:0}.gate-direction__arrows svg+svg{margin-left:-.22rem}.gate-placement{display:inline-flex;align-items:center;gap:.32rem;padding:.2rem .55rem;border:1px solid transparent;border-radius:999px;font-size:.75rem;font-weight:700;line-height:1;white-space:nowrap}.gate-placement--outside{color:var(--warning);background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 48%,var(--border))}.gate-placement--platform{color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 14%,var(--bg-card));border-color:color-mix(in srgb,var(--accent-secondary) 46%,var(--border))}.gate-placement--building{color:var(--ok);background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 46%,var(--border))}[data-theme=dark] .gate-placement--platform{color:var(--accent)}.gate-type-chip{display:inline-flex;align-items:center;gap:.32rem;padding:.28rem .7rem;border:1px solid var(--chip-select-border);border-radius:999px;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.8rem;font-weight:700;line-height:1;white-space:nowrap}.gate-type-chip__icon{display:inline-flex;align-items:center;line-height:0}.gate-type-chip--barrier{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.gate-type-chip--automatic{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--bg-card));color:var(--accent)}.gate-type-chip--door{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.gate-type-chip--platform{border-color:color-mix(in srgb,var(--accent-secondary) 50%,var(--border));background:color-mix(in srgb,var(--accent-secondary) 14%,var(--bg-card));color:var(--accent-secondary)}.gate-type-chip--turnstile{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--bg-card));color:var(--danger)}.gate-type-chip--none{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-secondary)}.gate-type-chip--sm{padding:.2rem .55rem;font-size:.75rem}.gate-type-chip--icon{justify-content:center;width:1.85rem;height:1.85rem;padding:0}.gate-type-chip--icon.gate-type-chip--sm{width:1.5rem;height:1.5rem}.reader-count{display:inline-flex;align-items:center;gap:.28rem;min-height:1.55rem;padding:.1rem .5rem .1rem .36rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent-secondary) 40%,var(--border));background:color-mix(in srgb,var(--accent-secondary) 16%,var(--bg-elevated));color:var(--accent-secondary);font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap}.reader-count.is-none{color:var(--text-muted);background:var(--bg-hover);border-color:var(--border)}[data-theme=dark] .reader-count:not(.is-none){color:var(--accent)}.app-modal.door-history-modal .app-modal__panel{height:min(82vh,46rem);max-height:min(82vh,46rem)}.app-modal.door-history-modal .app-modal__body{display:flex;flex-direction:column;gap:.75rem;min-height:0;overflow:hidden}.app-modal.door-history-modal .app-modal__title{display:inline-flex;align-items:center;gap:.45rem}.door-history-modal .route-table-wrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.door-history-modal .data-table__scroll{flex:1 1 auto;min-height:0}.app-modal.door-edit-modal .app-modal__panel:has(.form-tabset){height:min(84vh,46rem);min-height:min(84vh,46rem);max-height:min(84vh,46rem)}.app-modal.door-edit-modal .app-modal__body:has(.form-tabset){flex:1 1 auto;min-height:0;overflow:hidden}.door-edit-modal .form-tabset,.door-edit-modal .form-tabset__body{flex:1 1 auto;min-height:0}.door-edit-modal .form-tabset__body{display:flex;flex-direction:column;padding:.55rem}.door-edit-modal .form-tabset__body>.form-section--panel{flex:1 1 auto;min-height:0;overflow:auto}.door-edit-modal .chip-select--panel{padding:.4rem .5rem;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border));border-radius:.7rem;background:var(--bg-form-panel-secondary)}.door-edit-modal .form-row__label--start:has(+.form-row__control .chip-select--panel){padding-top:.55rem}.door-edit-modal .form-section--panel>.form-grid:first-child{margin-top:0}.door-edit-modal .form-section--panel .form-section--panel{margin-top:.85rem}.door-edit-modal .form-grid__full>.form-section--panel{margin-top:0}.door-edit-modal .form-grid__full>.form-section--panel .form-section__head{margin-bottom:.5rem}.door-edit-modal .form-row__control:has(.ui-slider--range){display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.door-edit-modal__identity{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.door-edit-modal .door-groups__list{max-height:none}.door-edit-modal .chip-select--gate-type .chip-select__chip--barrier,.door-edit-modal .chip-select--gate-type .chip-select__chip--barrier.is-active{color:var(--warning);background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 50%,var(--border))}.door-edit-modal .chip-select--gate-type .chip-select__chip--automatic,.door-edit-modal .chip-select--gate-type .chip-select__chip--automatic.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--bg-card));border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.door-edit-modal .chip-select--gate-type .chip-select__chip--door,.door-edit-modal .chip-select--gate-type .chip-select__chip--door.is-active{color:var(--ok);background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 50%,var(--border))}.door-edit-modal .chip-select--gate-type .chip-select__chip--platform,.door-edit-modal .chip-select--gate-type .chip-select__chip--platform.is-active,.door-edit-modal .chip-select--gate-placement .chip-select__chip--platform,.door-edit-modal .chip-select--gate-placement .chip-select__chip--platform.is-active{color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 14%,var(--bg-card));border-color:color-mix(in srgb,var(--accent-secondary) 50%,var(--border))}.door-edit-modal .chip-select--gate-type .chip-select__chip--turnstile,.door-edit-modal .chip-select--gate-type .chip-select__chip--turnstile.is-active{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,var(--bg-card));border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.door-edit-modal .chip-select--gate-direction .chip-select__chip--in,.door-edit-modal .chip-select--gate-direction .chip-select__chip--in.is-active{color:var(--route-in);background:var(--route-in-soft);border-color:color-mix(in srgb,var(--route-in) 42%,var(--border))}.door-edit-modal .chip-select--gate-direction .chip-select__chip--out,.door-edit-modal .chip-select--gate-direction .chip-select__chip--out.is-active{color:var(--route-out);background:var(--route-out-soft);border-color:color-mix(in srgb,var(--route-out) 42%,var(--border))}.door-edit-modal .chip-select--gate-direction .chip-select__chip--both,.door-edit-modal .chip-select--gate-direction .chip-select__chip--both.is-active{color:var(--route-pair);background:var(--route-pair-soft);border-color:color-mix(in srgb,var(--route-pair) 48%,var(--border))}.door-edit-modal .chip-select--gate-placement .chip-select__chip--outside,.door-edit-modal .chip-select--gate-placement .chip-select__chip--outside.is-active{color:var(--warning);background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 48%,var(--border))}.door-edit-modal .chip-select--gate-placement .chip-select__chip--building,.door-edit-modal .chip-select--gate-placement .chip-select__chip--building.is-active,.door-edit-modal .chip-select--reader-position .chip-select__chip--inside,.door-edit-modal .chip-select--reader-position .chip-select__chip--inside.is-active{color:var(--ok);background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 46%,var(--border))}.door-edit-modal .chip-select--reader-position .chip-select__chip--outside,.door-edit-modal .chip-select--reader-position .chip-select__chip--outside.is-active{color:var(--warning);background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 48%,var(--border))}.door-edit-modal .chip-select--gate-type .chip-select__chip.is-active,.door-edit-modal .chip-select--gate-direction .chip-select__chip.is-active,.door-edit-modal .chip-select--gate-placement .chip-select__chip.is-active,.door-edit-modal .chip-select--reader-position .chip-select__chip.is-active{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 28%,transparent)}.reader-toast{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.35rem .45rem}.door-readers__toolbar{display:flex;justify-content:flex-end;margin-bottom:.55rem}.door-readers__board{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(22rem,100%),1fr));gap:.65rem;width:100%;align-items:start}.door-readers__empty{margin:0;color:var(--text-muted)}.door-readers__card{min-width:0;margin:0;padding:.55rem .65rem .35rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated)}.door-readers__card .form-grid{grid-template-columns:minmax(5.2rem,34%) minmax(0,1fr);gap:.32rem .5rem;margin:.2rem 0 0}.door-readers__card .chip-select__chip{padding:.16rem .48rem;font-size:.72rem}.door-readers__head{display:flex;align-items:center;gap:.45rem;margin-bottom:.45rem}.door-readers__tools{display:flex;align-items:center;gap:.35rem;margin-left:auto}.door-readers__actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.door-readers__actions .btn{flex:1 1 calc(50% - .35rem);min-width:0;justify-content:center;padding:.28rem .4rem;font-size:.72rem}.door-readers__head h3{flex:0 0 auto;margin:0;font-size:.86rem}.door-readers__status{display:inline-flex;align-items:center;gap:.35rem;flex:1 1 auto;min-width:0;font-size:.75rem;font-weight:700}.door-readers__comm{display:inline-flex;flex:0 0 auto}.door-readers__status--ok{color:var(--ok)}.door-readers__status--fail{color:var(--danger)}.door-readers__status--muted{color:var(--text-muted)}.door-groups__search{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:.45rem;margin:0 0 .55rem;padding:.15rem .75rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-card);color:var(--text-muted)}.door-groups__search:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 3px var(--accent-dim)}.door-groups__search input{flex:1 1 auto;min-width:0;width:100%;padding:.5rem 0;border:0;background:transparent;color:var(--text-primary);font:inherit;font-size:.85rem}.door-groups__search input:focus{outline:none}.door-groups__search input::placeholder{color:var(--text-muted)}.door-groups__list{list-style:none;margin:0;padding:0;max-height:24rem;overflow:auto}.door-groups__item{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:.45rem;align-items:center;padding:.4rem .2rem;border-bottom:1px solid var(--border);cursor:pointer}.door-groups__item small{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.door-groups__item.is-selected{background:color-mix(in srgb,var(--accent) 8%,transparent)}.door-groups__item.is-inactive{opacity:.7}.door-groups__empty{color:var(--text-muted);padding:1rem 0}.door-history__token{display:inline-flex;align-items:center;gap:.35rem}.door-history__thumb{width:2.4rem;height:1.7rem;object-fit:cover;border-radius:.3rem;border:1px solid var(--border)}.catalog-page.accesos-lista-blanca .whitelist-mono{font-family:ui-monospace,Consolas,monospace}.catalog-page.accesos-lista-blanca .filter-grid>.field--operation{grid-column:1/-1}.catalog-page.accesos-lista-blanca .filter-grid>.field--operation .chip-select--whitelist{width:100%}.app-modal.whitelist-edit-modal .app-modal__panel:has(.form-tabset){height:auto;min-height:min(78vh,42rem);max-height:min(78vh,42rem)}.app-modal.whitelist-edit-modal--doors .app-modal__panel:has(.form-tabset){height:min(78vh,42rem)}.app-modal.whitelist-edit-modal .app-modal__body:has(.form-tabset){flex:1 1 auto;min-height:0;overflow:hidden}.whitelist-edit-modal .form-tabset,.whitelist-edit-modal .form-tabset__body{flex:1 1 auto;min-height:0}.whitelist-edit-modal .form-tabset__body{display:flex;flex-direction:column;padding:.55rem}.whitelist-edit-modal .form-tabset__body>.form-section--panel{flex:1 1 auto;min-height:0;overflow:auto;display:flex;flex-direction:column}.whitelist-edit-modal--doors .form-tabset__body--picker,.whitelist-edit-modal--doors .form-tabset__body>.form-section--panel{overflow:hidden}.whitelist-edit-modal--doors .whitelist-doors{flex:1 1 auto;min-height:0}.whitelist-edit-modal .whitelist-mono,.whitelist-edit-modal .form-header__name{font-family:ui-monospace,Consolas,monospace;letter-spacing:.02em}.whitelist-edit-modal .form-grid{margin-top:0}.whitelist-edit-modal .whitelist-edit__operation{margin:0;padding:.55rem .7rem}.whitelist-edit-modal .whitelist-edit__operation .chip-select--whitelist{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));width:100%}.whitelist-edit-modal .whitelist-edit__operation .chip-select--whitelist .chip-select__chip{flex:unset;min-width:0;justify-content:center}@media(max-width:480px){.whitelist-edit-modal .whitelist-edit__operation .chip-select--whitelist{grid-template-columns:1fr}.whitelist-edit-modal .whitelist-edit__operation .chip-select__chip{justify-content:flex-start}}.whitelist-op,.whitelist-all,.whitelist-scope{display:inline-flex;align-items:center;gap:.32rem;padding:.2rem .55rem;border:1px solid var(--chip-select-border);border-radius:999px;background:var(--chip-select-bg);color:var(--chip-select-text);font-size:.75rem;font-weight:700;line-height:1;white-space:nowrap}.whitelist-op__icon{display:inline-flex;align-items:center;line-height:0}.whitelist-op--pulse{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.whitelist-op--open{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.whitelist-op--close{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger) 12%,var(--bg-card));color:var(--danger)}.whitelist-op--swap{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.whitelist-op--hold{border-color:color-mix(in srgb,var(--accent-secondary) 50%,var(--border));background:color-mix(in srgb,var(--accent-secondary) 14%,var(--bg-card));color:var(--accent-secondary)}.whitelist-all{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok);letter-spacing:.04em}.whitelist-scope{border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border));background:var(--bg-hover);color:var(--text-secondary)}.whitelist-doors{display:flex;flex-direction:column;gap:.55rem;min-height:0;height:100%}.whitelist-doors__cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.85rem;flex:1 1 auto;min-height:16rem;align-items:stretch}.whitelist-doors__col{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}.whitelist-doors__col.is-drop-target{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 6%,var(--bg-card))}.whitelist-doors__head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex:0 0 auto;padding:.7rem .8rem .45rem}.whitelist-doors__title{margin:0;font-size:.82rem;font-weight:750;color:var(--text-primary)}.whitelist-doors__count{display:inline-flex;align-items:center;gap:.28rem;min-height:1.55rem;padding:.1rem .5rem .1rem .36rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));color:var(--accent);font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap}.whitelist-doors__count.is-none{color:var(--text-muted);background:var(--bg-hover);border-color:var(--border)}.whitelist-doors__search{flex:0 0 auto;display:flex;align-items:center;gap:.45rem;margin:0 .8rem .45rem;padding:.05rem .7rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-elevated);color:var(--text-muted)}.whitelist-doors__search:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 3px var(--accent-dim);color:var(--accent)}.whitelist-doors__search input{flex:1 1 auto;min-width:0;width:100%;padding:.42rem 0;border:0;background:transparent;color:var(--text-primary);font:inherit;font-size:.85rem}.whitelist-doors__search input:focus{outline:none}.whitelist-doors__search input::placeholder{color:var(--text-muted)}.whitelist-doors__hint{flex:0 0 auto;margin:0 .8rem .45rem;color:var(--text-muted);font-size:.72rem}.whitelist-doors__list{flex:1 1 auto;min-height:0;overflow:auto;padding:.35rem .45rem .55rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 55%,var(--bg-card))}.whitelist-doors__empty{display:grid;place-items:center;min-height:7rem;padding:1rem;color:var(--text-muted);text-align:center;font-size:.8rem}.whitelist-doors__item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem;align-items:center;margin:0 0 .22rem;padding:.32rem .4rem .32rem .55rem;border:1px solid var(--border);border-radius:.55rem;background:var(--bg-card);cursor:pointer;-webkit-user-select:none;user-select:none}.whitelist-doors__item.is-draggable{cursor:grab}.whitelist-doors__item.is-locked{opacity:.5;cursor:not-allowed}.whitelist-doors__item.is-selected{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 14%,var(--bg-card))}.whitelist-doors__item--all{border-color:color-mix(in srgb,var(--ok) 42%,var(--border));background:color-mix(in srgb,var(--ok) 10%,var(--bg-card))}.whitelist-doors__item--all .whitelist-doors__ref{color:var(--ok)}.whitelist-doors__col:last-child .whitelist-doors__item{grid-template-columns:auto minmax(0,1fr)}.whitelist-doors__text{display:flex;flex-direction:column;min-width:0;gap:.05rem}.whitelist-doors__ref{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:750}.whitelist-doors__text small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:.72rem}.whitelist-doors__action{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);cursor:pointer}.whitelist-doors__action:disabled{opacity:.4;cursor:not-allowed}.whitelist-doors__action--add{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.whitelist-doors__action--remove{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.whitelist-doors>.form-row__hint,.whitelist-doors>.form-row__error{flex:0 0 auto;margin:0}@media(max-width:1100px){.whitelist-doors__cols{grid-template-columns:1fr;min-height:0}.whitelist-doors__list{max-height:16rem}}.system-role-marks{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.2rem}.system-role-marks:not(.system-role-marks--labeled) .system-role-mark+.system-role-mark{margin-left:-.38rem}.system-role-marks:not(.system-role-marks--labeled) .ui-avatar{box-shadow:0 0 0 2px var(--bg-card)}.system-role-mark{display:inline-flex;align-items:center;gap:.35rem;line-height:1}.system-role-mark__label{font-size:.78rem;font-weight:700;letter-spacing:.01em}.chip-select--system-role .chip-select__chip--administrador.is-active{border-color:color-mix(in srgb,var(--col-ftl) 52%,var(--border));background:color-mix(in srgb,var(--col-ftl) 16%,transparent);color:var(--col-ftl)}.chip-select--system-role .chip-select__chip--operador.is-active{border-color:color-mix(in srgb,var(--accent) 50%,var(--border));background:var(--accent-dim);color:var(--accent)}.chip-select--system-role .chip-select__chip--direccion.is-active{border-color:color-mix(in srgb,var(--warning) 50%,var(--border));background:var(--warning-soft);color:var(--warning)}.chip-select--system-role .chip-select__chip--sistema.is-active{border-color:color-mix(in srgb,var(--col-dbg) 52%,var(--border));background:color-mix(in srgb,var(--col-dbg) 18%,transparent);color:var(--col-dbg)}.chip-select--system-role .chip-select__chip--acceso.is-active{border-color:color-mix(in srgb,var(--ok) 50%,var(--border));background:var(--ok-soft);color:var(--ok)}.chip-select--system-role .chip-select__chip--companias.is-active{border-color:color-mix(in srgb,var(--col-inf) 48%,var(--border));background:color-mix(in srgb,var(--col-inf) 16%,transparent);color:var(--col-inf)}.chip-select--system-role .chip-select__chip--informacion.is-active{border-color:color-mix(in srgb,var(--issues-info-fg) 52%,var(--border));background:var(--issues-info-bg);color:var(--issues-info-fg)}.chip-select--system-role .chip-select__chip--externo.is-active{border-color:color-mix(in srgb,var(--text-secondary) 52%,var(--border));background:color-mix(in srgb,var(--text-secondary) 16%,transparent);color:var(--text-secondary)}.app-modal.usuario-sistema-modal .app-modal__panel{height:min(88vh,43.4rem);max-height:min(88vh,43.4rem)}@media(max-width:480px){.app-modal.usuario-sistema-modal .app-modal__panel{height:auto;max-height:100%}}.app-modal.usuario-sistema-modal .app-modal__body{flex:1 1 auto;min-height:0;overflow:hidden}.usuario-sistema-modal__body{min-height:0}.usuario-sistema-modal .form-tabset,.usuario-sistema-modal .form-tabset__body{flex:1 1 auto;min-height:0}.usuario-sistema-modal .form-tabset__body--board{display:flex;flex-direction:column;overflow:hidden;padding:.7rem .8rem .85rem}.usuario-sistema-history{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;gap:.65rem}.usuario-sistema-history .data-table-wrap{flex:1 1 auto}.usuario-sistema-history__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;color:var(--text-secondary);font-size:.86rem;font-weight:650}.usuario-sistema-history__toolbar{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:end;gap:.65rem}.usuario-sistema-history__range{min-width:min(22rem,100%);max-width:28rem}.app-modal.usuario-sistema-history-modal .app-modal__panel{height:min(88vh,42rem);max-height:min(88vh,42rem)}@media(max-width:480px){.app-modal.usuario-sistema-history-modal .app-modal__panel{height:auto;max-height:100%}}.app-modal.usuario-sistema-history-modal .app-modal__body{flex:1 1 auto;min-height:0;overflow:hidden}.usuario-sistema-history-modal__body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.sistema-roles-menus{display:flex;flex-direction:column;gap:1rem;min-height:0}.sistema-roles-menus__header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem}.sistema-roles-menus__header .field{min-width:0;flex:1 1 auto}.sistema-roles-menus__content{border:1px solid var(--border);border-radius:18px;padding:.85rem 1rem;background:var(--bg-card);min-height:18rem;overflow:auto}.sistema-roles-menus__content--administrador{--checkbox-accent: var(--col-ftl);--checkbox-accent-dim: color-mix(in srgb, var(--col-ftl) 28%, transparent);border-color:color-mix(in srgb,var(--col-ftl) 38%,var(--border))}.sistema-roles-menus__content--operador{--checkbox-accent: var(--accent);--checkbox-accent-dim: var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 38%,var(--border))}.sistema-roles-menus__content--direccion{--checkbox-accent: var(--warning);--checkbox-accent-dim: var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 40%,var(--border))}.sistema-roles-menus__content--sistema{--checkbox-accent: var(--col-dbg);--checkbox-accent-dim: color-mix(in srgb, var(--col-dbg) 28%, transparent);border-color:color-mix(in srgb,var(--col-dbg) 38%,var(--border))}.sistema-roles-menus__content--acceso{--checkbox-accent: var(--ok);--checkbox-accent-dim: var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 38%,var(--border))}.sistema-roles-menus__content--companias{--checkbox-accent: var(--col-inf);--checkbox-accent-dim: color-mix(in srgb, var(--col-inf) 28%, transparent);border-color:color-mix(in srgb,var(--col-inf) 38%,var(--border))}.sistema-roles-menus__content--informacion{--checkbox-accent: var(--issues-info-fg);--checkbox-accent-dim: var(--issues-info-bg);border-color:color-mix(in srgb,var(--issues-info-fg) 38%,var(--border))}.sistema-roles-menus__content--externo{--checkbox-accent: var(--text-secondary);--checkbox-accent-dim: color-mix(in srgb, var(--text-secondary) 28%, transparent);border-color:color-mix(in srgb,var(--text-secondary) 38%,var(--border))}.sistema-roles-menus__loading,.sistema-roles-menus__hint{color:var(--text-muted);margin:0}.role-menu-tree{display:flex;flex-direction:column;gap:.1rem}.role-menu-tree-node__row{display:flex;align-items:center;gap:.2rem;min-height:2rem;border-radius:.4rem;padding-inline:.15rem .35rem}.role-menu-tree-node__row:hover{background:var(--bg-hover)}.role-menu-tree-node__row .ui-checkbox{flex:1 1 auto;min-width:0}.role-menu-tree-node__expander{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:0;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:.3rem}.role-menu-tree-node__expander:hover{color:var(--text);background:var(--border-light)}.role-menu-tree-node__spacer{width:1.5rem;flex:0 0 1.5rem}.role-menu-tree-node__item{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.role-menu-tree-node__icon{display:inline-flex;flex:0 0 auto;color:var(--text-muted)}.role-menu-tree-node__children{margin-left:.75rem;padding-left:.75rem;border-left:1px dashed var(--border)}.energy-cost-share{display:grid;grid-template-columns:minmax(0,1fr);gap:.85rem;align-items:stretch;min-width:0;min-height:16rem}.energy-cost-share__charts{display:grid;grid-template-columns:minmax(0,1fr) minmax(11rem,13.5rem);gap:.85rem;min-width:0;align-items:stretch}.energy-cost-share__donut{width:100%;max-width:13.5rem;min-width:0;justify-self:end}.energy-cost-share__donut .informe-chart--donut,.energy-cost-share__bar{height:100%;min-height:14rem}.energy-cost-share>*{min-width:0}[data-device=desktop-landscape] .energy-cost-share:not(.energy-cost-share--report){grid-template-columns:minmax(22rem,1.4fr) minmax(16rem,.9fr) minmax(11rem,13.5rem);grid-template-areas:"table bar donut"}[data-device=desktop-landscape] .energy-cost-share:not(.energy-cost-share--report) .energy-cost-share__charts{display:contents}[data-device=desktop-landscape] .energy-cost-share:not(.energy-cost-share--report) .energy-cost-share__table-wrap{grid-area:table}[data-device=desktop-landscape] .energy-cost-share:not(.energy-cost-share--report) .energy-cost-share__bar{grid-area:bar}[data-device=desktop-landscape] .energy-cost-share:not(.energy-cost-share--report) .energy-cost-share__donut{grid-area:donut;max-width:13.5rem;justify-self:stretch}[data-device=mobile] .energy-cost-share__charts{grid-template-columns:minmax(0,1fr)}[data-device=mobile] .energy-cost-share__donut{max-width:13.5rem;justify-self:center}.energy-cost-share__table-wrap{min-width:0;overflow:auto}.energy-cost-share__share{position:relative;padding:0;overflow:hidden}.energy-cost-share__table{width:100%;min-width:42rem;border-collapse:collapse;table-layout:fixed}.energy-cost-share__table th:first-child,.energy-cost-share__table td:first-child{width:28%;min-width:9rem}.energy-cost-share__table th,.energy-cost-share__table td{padding:.38rem .4rem;border-bottom:1px solid var(--border);font-size:.8rem;vertical-align:middle}.energy-cost-share__table th{color:var(--text-muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:left}.energy-cost-share__num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.energy-cost-share__table th.energy-cost-share__period{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.energy-cost-share__table .energy-cost-share__period{border-left:1px solid color-mix(in srgb,var(--accent) 34%,var(--border));background-image:linear-gradient(90deg,color-mix(in srgb,var(--accent) 7%,transparent),color-mix(in srgb,var(--accent) 7%,transparent))}.energy-cost-share__table tr>.energy-cost-share__period:last-child,.energy-cost-share__table .energy-cost-share__period:has(+:not(.energy-cost-share__period)){border-right:1px solid color-mix(in srgb,var(--accent) 34%,var(--border))}.energy-cost-share__row--total td{font-weight:700}.energy-cost-share__row--group td{font-weight:750;background:color-mix(in srgb,var(--energy-share-group, var(--accent)) 22%,var(--bg-primary))}.energy-cost-share__row--child td{background:color-mix(in srgb,var(--energy-share-group, var(--accent)) 7%,var(--bg-primary));box-shadow:inset .22rem 0 0 var(--energy-share-group, var(--accent))}.energy-cost-share__row--child td:first-child{padding-left:1.85rem}.energy-cost-share__meter-pct{display:inline-flex;min-width:3.2rem;justify-content:flex-end;font-weight:750;color:var(--text-secondary);cursor:help}.energy-cost-share__row.is-expandable{cursor:pointer}.energy-cost-share--report{min-height:0;height:100%;gap:.45rem;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1.05fr) minmax(0,.95fr);grid-template-areas:none}.energy-cost-share--report .energy-cost-share__charts{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(11rem,13.5rem);gap:.4rem;min-height:0;align-items:stretch}.energy-cost-share--report .energy-cost-share__donut{max-width:13.5rem;justify-self:stretch}.energy-cost-share--report .energy-cost-share__bar,.energy-cost-share--report .energy-cost-share__donut .informe-chart--donut{min-height:0;height:100%;flex:none}.energy-cost-share--report .energy-cost-share__table-wrap{overflow:hidden}.energy-cost-share--report .energy-cost-share__table th,.energy-cost-share--report .energy-cost-share__table td{padding:.22rem .28rem;font-size:.72rem}.energy-cost-share--report .energy-cost-share__table th{font-size:.58rem}@media(max-width:1100px){.energy-cost-share{grid-template-columns:1fr;grid-template-areas:none}.energy-cost-share__charts{display:grid}}.informe-page .route-table td.informe-page__share{position:relative;padding:0;overflow:hidden}.energy-share-cell{--energy-share: 0%;--energy-share-color: var(--accent);position:relative;display:flex;align-items:center;justify-content:flex-end;width:100%;min-height:2.15rem;height:100%;padding:0 .32rem;overflow:hidden}.energy-share-cell__track{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid color-mix(in srgb,var(--energy-share-color) 55%,var(--border));background:color-mix(in srgb,var(--energy-share-color) 8%,var(--bg-primary));pointer-events:none}.energy-share-cell__fill{display:block;width:var(--energy-share);height:100%;background:color-mix(in srgb,var(--energy-share-color) 42%,transparent)}.energy-share-cell__value{position:relative;z-index:1;font-variant-numeric:tabular-nums}.informe-page .route-table tbody tr.informe-energia__row--parent:not(:hover):not(.is-active) td.informe-page__share,.informe-page .route-table tbody tr.informe-energia__row--child:not(:hover):not(.is-active) td.informe-page__share{background:transparent}.energy-report-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(11.5rem,.85fr);gap:.45rem;min-height:118mm;height:100%;align-items:stretch}.energy-report-intro__chart,.energy-report-intro__donuts{min-width:0;min-height:0;height:100%}.energy-report-intro__donuts{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:.4rem}.energy-tariff-map__body{display:flex;flex-direction:column;gap:.85rem;min-height:18rem}.energy-tariff-map__note{margin:0;color:var(--text-muted);font-size:.82rem;line-height:1.4}.energy-tariff-map__legend{display:flex;flex-wrap:wrap;gap:.4rem}.energy-tariff-map__swatch{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--energy-tariff-color) 22%,transparent);color:var(--energy-tariff-color);font-size:.75rem;font-weight:750}.energy-tariff-map__scroll{overflow:auto;min-width:0;border:1px solid var(--border-subtle);border-radius:.7rem}.energy-tariff-map__grid{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.7rem}.energy-tariff-map__grid th,.energy-tariff-map__grid td{padding:.12rem;text-align:center;font-weight:650}.energy-tariff-map__grid thead th{position:sticky;top:0;z-index:1;background:var(--bg-elevated);color:var(--text-muted)}.energy-tariff-map__grid tbody th{position:sticky;left:0;z-index:1;width:2.6rem;background:var(--bg-elevated);color:var(--text-muted);text-align:left;padding-left:.45rem}.energy-tariff-map__cell{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;place-items:center;width:100%;min-height:1.45rem;margin:0;border:0;border-radius:.28rem;background:var(--energy-tariff-color);color:var(--service-time-fg);font:inherit;font-weight:750;cursor:default}.energy-tariff-map__cell.is-now{outline:2px solid var(--accent);outline-offset:1px}.energy-tariff-map__holidays h3{display:flex;align-items:center;gap:.45rem;margin:0 0 .45rem;font-size:.86rem}.energy-tariff-map__holiday-list{display:flex;flex-wrap:wrap;gap:.35rem}.energy-tariff-map__empty{margin:0;color:var(--text-muted)}@media(max-width:480px){.energy-tariff-map__grid{font-size:.64rem}}.informe-page.catalog-page{overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}.informe-page,.informe-page *{scrollbar-width:thin;scrollbar-color:transparent transparent}.informe-page::-webkit-scrollbar,.informe-page *::-webkit-scrollbar{width:.65rem;height:.65rem}.informe-page::-webkit-scrollbar-track,.informe-page *::-webkit-scrollbar-track,.informe-page::-webkit-scrollbar-thumb,.informe-page *::-webkit-scrollbar-thumb{background:transparent;border-color:transparent}.informe-page.is-scrolling,.informe-page .is-scrolling{scrollbar-color:var(--scrollbar-thumb) transparent}.informe-page.is-scrolling::-webkit-scrollbar-thumb,.informe-page .is-scrolling::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}.informe-page>.fold-panel.is-open:not(.is-maximized) .fold-panel__collapse-inner{min-height:min-content}.informe-page__note{display:flex;align-items:center;gap:.4rem;margin:0;flex:0 0 auto;color:var(--text-muted);font-size:.78rem}.informe-page__note svg{flex:0 0 auto;color:var(--accent)}.informe-page__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex:0 0 auto;min-width:0}.informe-page__head .informe-page__note{flex:1 1 auto;min-width:0}.informe-page__tariff{display:inline-flex;align-items:center;gap:.4rem;min-width:0;margin:0;padding:.15rem .35rem .15rem .1rem;border:0;border-radius:.45rem;background:transparent;color:inherit;font:inherit;cursor:pointer}.informe-page__tariff:hover,.informe-page__tariff:focus-visible{color:var(--accent);background:var(--accent-dim)}.informe-page__tariff-icon{flex:0 0 auto;opacity:.85}.informe-page__head-spacer{flex:1 1 auto}.informe-page__panel-tray{display:flex;flex-direction:column;gap:.5rem;flex:0 0 auto;min-width:0}.informe-page__panel-tray-label{margin:0}.informe-page__panel-chips{display:flex;flex-wrap:wrap;gap:.45rem}.informe-page__panel-chip{margin:0;border:1px solid transparent;cursor:pointer;transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease,transform .28s ease}.informe-page__panel-chip:hover,.informe-page__panel-chip:focus-visible{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-1px)}[data-theme=dark] .informe-page__panel-chip:hover,[data-theme=dark] .informe-page__panel-chip:focus-visible{color:#0b1a24}@media(prefers-reduced-motion:reduce){.informe-page__panel-chip{transition:none}.informe-page__panel-chip:hover,.informe-page__panel-chip:focus-visible{transform:none}}.informe-page__head .catalog-page__toolbar{margin-left:auto}.informe-page__summary{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.2fr);gap:1rem;min-height:0;align-items:stretch}.informe-page__summary-charts{display:flex;flex-direction:column;gap:.85rem;min-width:0}.informe-page__summary-donuts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;min-width:0;align-items:stretch}.informe-page__summary-donuts .informe-chart--donut{min-height:100%}.informe-page__summary>.fold-panel{grid-column:1/-1;min-width:0}.informe-page .stay-time{min-width:7.15rem}.informe-page .stay-time--sm{min-width:5.75rem}.informe-page .service-count{min-width:5.6rem}.informe-page .service-count--sm{min-width:4.5rem}.informe-page .energy-cost-share{min-width:0}.informe-page__tabs{flex:0 0 auto}.informe-page .data-table-wrap{flex:1 1 auto;min-height:18rem}.informe-page__stack{display:flex;flex-direction:column;gap:1.25rem;flex:1 1 auto;min-width:0;min-height:0}.informe-page__stack>*{flex:0 0 auto;min-width:0}.informe-page__sortable{display:flex;flex-direction:column;min-width:0;min-height:0}.informe-page__sortable.is-dragging{opacity:.55}.informe-page__sortable.is-drop-target{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 42%,transparent);border-radius:1rem}.informe-page__silhouette{display:flex;flex-direction:column;overflow:hidden;pointer-events:none;border:2px dashed var(--accent);border-radius:1rem;background:color-mix(in srgb,var(--bg-panel) 78%,transparent);box-shadow:0 16px 32px color-mix(in srgb,#000 32%,transparent);cursor:grabbing}.informe-page__silhouette-head{flex:0 0 auto;padding:.55rem .85rem;border-bottom:1px dashed color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--bg-panel));color:var(--text-primary);font-size:.92rem;font-weight:750}.informe-page__silhouette-body{flex:1 1 auto;background:color-mix(in srgb,var(--accent) 6%,transparent)}.informe-page__stack .informe-page__cost-share{overflow:visible}.informe-page__stack .informe-page__cost-share .fold-panel__collapse-inner,.informe-page__stack .informe-page__cost-share .fold-panel__body{min-height:min-content;overflow:visible}.informe-page__stack .informe-page__meters-table,.informe-page__stack>.informe-page__sortable:last-child:has(.informe-page__meters-table){min-height:18rem}.informe-page__stack>.informe-page__meters:last-child,.informe-page__stack>.informe-page__sortable:last-child:has(.informe-page__meters-table){flex:1 1 auto}.informe-page__meters{display:flex;flex-direction:column;flex:1 1 auto;gap:1.25rem;min-width:0;min-height:0}.informe-page__meters>.informe-page__sortable{min-width:0;min-height:0;height:100%}.informe-page__meters-table{display:flex;flex-direction:column;min-width:0;min-height:0}.informe-page__meters-table .data-table-wrap{flex:1 1 auto}.informe-page__meters-chart.is-maximized .informe-chart{flex:1 1 auto;min-height:0}[data-device=desktop-landscape] .informe-page__meters{display:grid;grid-template-columns:minmax(0,40%) minmax(0,60%);align-items:stretch;min-height:22rem}[data-device=desktop-landscape] .informe-page__meters:has(.informe-page__meters-chart:not(.is-open)),[data-device=desktop-landscape] .informe-page__meters:has(.informe-page__meters-chart.is-maximized){display:flex;flex-direction:column;min-height:0}[data-device=desktop-landscape] .informe-page__meters-chart.is-open:not(.is-maximized){display:flex;flex-direction:column;min-width:0;min-height:0;height:100%}[data-device=desktop-landscape] .informe-page__meters-chart.is-open:not(.is-maximized) .fold-panel__collapse,[data-device=desktop-landscape] .informe-page__meters-chart.is-open:not(.is-maximized) .fold-panel__collapse-inner,[data-device=desktop-landscape] .informe-page__meters-chart.is-open:not(.is-maximized) .fold-panel__body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}[data-device=desktop-landscape] .informe-page__meters-chart.is-open:not(.is-maximized) .informe-chart--wide{flex:1 1 auto;min-height:0;height:100%}[data-device=desktop-landscape] .informe-page__meters-chart.is-open:not(.is-maximized) .informe-chart--wide .informe-chart__canvas{min-height:0;height:100%}.informe-page .catalog-page__label{display:inline-flex;align-items:center;gap:.4rem}.informe-page__swatch{width:.7rem;height:.7rem;border-radius:999px;flex:0 0 auto;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-primary) 12%,transparent)}.informe-page .route-table td.informe-page__num,.informe-page .route-table th.informe-page__num{text-align:right;font-variant-numeric:tabular-nums}.informe-page .route-table th.informe-energia__num,.informe-page .route-table td.informe-energia__num{padding-inline:.28rem;font-size:.78rem;white-space:nowrap}.informe-history__files{display:inline-flex;align-items:center;gap:.35rem}.informe-history__files .pill{display:inline-flex;align-items:center;gap:.22rem}@media(max-width:1100px){.informe-page__summary,.informe-page__summary-donuts{grid-template-columns:1fr}.informe-page__summary{grid-template-rows:none}}.informe-page{--clima-cold: #3498db;--clima-heat: #e67e22}.informe-page .route-table th.informe-clima__cold,.informe-page .route-table td.informe-clima__cold{--energy-period-color: var(--clima-cold);--energy-share-color: var(--clima-cold)}.informe-page .route-table th.informe-clima__heat,.informe-page .route-table td.informe-clima__heat{--energy-period-color: var(--clima-heat);--energy-share-color: var(--clima-heat)}.informe-page .route-table th.informe-clima__cold,.informe-page .route-table th.informe-clima__heat{font-weight:750}.informe-page .route-table th.informe-clima__cold{color:var(--clima-cold);background:color-mix(in srgb,var(--clima-cold) 16%,var(--bg-primary))}.informe-page .route-table th.informe-clima__heat{color:var(--clima-heat);background:color-mix(in srgb,var(--clima-heat) 16%,var(--bg-primary))}.informe-page .route-table tbody tr:not(:hover):not(.is-active) td.informe-clima__cold{background:color-mix(in srgb,var(--clima-cold) 8%,var(--bg-primary))}.informe-page .route-table tbody tr:not(:hover):not(.is-active) td.informe-clima__heat{background:color-mix(in srgb,var(--clima-heat) 8%,var(--bg-primary))}.informe-page .route-table tbody tr.informe-energia__row--parent:not(:hover):not(.is-active) td.informe-clima__cold{background:color-mix(in srgb,var(--clima-cold) 16%,var(--bg-primary))}.informe-page .route-table tbody tr.informe-energia__row--parent:not(:hover):not(.is-active) td.informe-clima__heat{background:color-mix(in srgb,var(--clima-heat) 16%,var(--bg-primary))}.informe-page .route-table tbody tr:not(:hover):not(.is-active) td.informe-clima__delta{background:color-mix(in srgb,var(--energy-period-color) 18%,var(--bg-primary))}.informe-page .route-table tbody tr.informe-energia__row--parent:not(:hover):not(.is-active) td.informe-clima__delta{background:color-mix(in srgb,var(--energy-period-color) 24%,var(--bg-primary))}.informe-page .route-table tbody tr.informe-clima__row--total{cursor:default}.informe-page .route-table tbody tr.informe-clima__row--total .energy-period-cell,.informe-page .route-table tbody tr.informe-clima__row--total .energy-share-cell__value{font-family:Quicksand,Segoe UI,Trebuchet MS,sans-serif;font-size:1.18em;font-weight:700;letter-spacing:.02em;line-height:1.1}.informe-page .route-table tbody tr.informe-clima__row--total .energy-tree-cell__label{font-family:Quicksand,Segoe UI,Trebuchet MS,sans-serif;font-weight:700;letter-spacing:.02em}.clima-evo{--clima-cold: #3498db;--clima-heat: #e67e22;display:flex;flex-direction:column;gap:.75rem;min-width:0;min-height:22rem}.clima-evo__toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex:0 0 auto;min-width:0}.clima-evo__kinds{display:flex;align-items:center;gap:.65rem;min-width:0}.clima-evo__kinds-label{color:var(--text-secondary);font-size:.78rem;font-weight:750}.clima-evo__hint{margin:0;color:var(--text-muted);font-size:.75rem;font-weight:650}.chip-select--clima-kind{gap:.5rem}.chip-select--clima-kind .chip-select__chip{min-height:2.05rem;padding:.32rem .95rem;gap:.42rem;border-width:1.5px;font-size:.86rem;letter-spacing:.02em}.chip-select--clima-kind .chip-select__chip--cold{color:var(--clima-cold);border-color:color-mix(in srgb,var(--clima-cold) 28%,var(--border));background:color-mix(in srgb,var(--clima-cold) 8%,var(--bg-card))}.chip-select--clima-kind .chip-select__chip--cold.is-active{border-color:color-mix(in srgb,var(--clima-cold) 62%,var(--border));background:color-mix(in srgb,var(--clima-cold) 22%,var(--bg-card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--clima-cold) 28%,transparent);color:var(--clima-cold)}.chip-select--clima-kind .chip-select__chip--heat{color:var(--clima-heat);border-color:color-mix(in srgb,var(--clima-heat) 28%,var(--border));background:color-mix(in srgb,var(--clima-heat) 8%,var(--bg-card))}.chip-select--clima-kind .chip-select__chip--heat.is-active{border-color:color-mix(in srgb,var(--clima-heat) 62%,var(--border));background:color-mix(in srgb,var(--clima-heat) 22%,var(--bg-card));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--clima-heat) 28%,transparent);color:var(--clima-heat)}.clima-evo__body{display:grid;grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);gap:.9rem;min-width:0;min-height:0;flex:1 1 auto}.clima-evo__picker{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-card)}.clima-evo__search{margin:0;padding:.65rem .7rem .45rem}.clima-evo__search .field-control{display:flex;align-items:center;gap:.4rem}.clima-evo__search .field-control svg{flex:0 0 auto;color:var(--text-muted)}.clima-evo__search .field-control input{flex:1 1 auto;min-width:0}.chip-select--clima-meters{flex:1 1 auto;align-content:flex-start;gap:.38rem;min-height:12rem;max-height:28rem;overflow:auto;padding:0 .55rem .65rem}.chip-select--clima-meters .chip-select__chip{max-width:100%;padding:.28rem .62rem .28rem .5rem}.chip-select--clima-meters .chip-select__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-select--clima-meters .chip-select__chip.is-active{border-color:color-mix(in srgb,var(--clima-evo-meter, var(--accent)) 58%,var(--border));background:color-mix(in srgb,var(--clima-evo-meter, var(--accent)) 20%,var(--bg-card));color:var(--text-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--clima-evo-meter, var(--accent)) 22%,transparent)}.clima-evo__empty,.clima-evo__placeholder{margin:.4rem 0 0;padding:.2rem}.clima-evo__swatch{flex:0 0 auto;width:.62rem;height:.62rem;border-radius:999px;background:var(--clima-evo-meter, var(--accent));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-primary) 12%,transparent)}.clima-evo__charts{display:flex;flex-direction:column;gap:.75rem;min-width:0;min-height:0}.clima-evo__chart.informe-chart{flex:1 1 auto;min-height:14rem}.clima-evo__chart .informe-chart__canvas{min-height:13rem;height:13rem}@media(max-width:1100px){.clima-evo__body{grid-template-columns:1fr}.chip-select--clima-meters{max-height:12rem}}.pasajeros-summary{grid-template-columns:minmax(0,1.7fr) minmax(17rem,23rem);align-items:stretch}.pasajeros-summary__charts{display:flex;flex-direction:column;gap:.85rem;min-width:0}.pasajeros-summary__charts .informe-chart--wide .informe-chart__canvas{min-height:13.5rem;height:13.5rem}.pasajeros-summary .pasajeros-facts{min-height:100%}.pasajeros-summary__shares{grid-column:1/-1;min-width:0}@media(max-width:1100px){.pasajeros-summary{grid-template-columns:1fr}}.pasajeros-evolution{display:grid;grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);gap:1rem;min-width:0;align-items:stretch}.pasajeros-evolution__pick{display:flex;flex-direction:column;gap:.7rem;min-width:0}.pasajeros-evolution .form-section--panel{padding:.7rem .75rem .8rem}.pasajeros-evolution .form-section__title{font-size:.78rem;font-weight:700;color:var(--text-secondary)}.pasajeros-evolution__criterion.form-section--panel{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 16%,var(--bg-panel));box-shadow:inset 3px 0 0 var(--accent)}.pasajeros-evolution__criterion .form-section__title{color:var(--accent)}.pasajeros-evolution__criterion .chip-select__chip.is-active{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 32%,transparent)}[data-theme=dark] .pasajeros-evolution__criterion .chip-select__chip.is-active{color:#0b1a24}.pasajeros-evolution .chip-select__chip--declared.is-active{border-color:color-mix(in srgb,var(--pax-declared) 70%,var(--border));background:color-mix(in srgb,var(--pax-declared) 24%,var(--bg-panel));color:var(--pax-declared)}.pasajeros-evolution .chip-select__chip--counted.is-active{border-color:color-mix(in srgb,var(--pax-counted) 70%,var(--border));background:color-mix(in srgb,var(--pax-counted) 24%,var(--bg-panel));color:var(--pax-counted)}.pasajeros-evolution__chips{max-height:16rem;overflow:auto}.pasajeros-evolution__chart{min-width:0}@media(max-width:1100px){.pasajeros-evolution{grid-template-columns:1fr}}.pasajeros-facts{position:relative;display:flex;flex-direction:column;justify-content:flex-start;gap:.85rem;overflow:hidden;min-width:0;padding:1rem 1.05rem .95rem;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:18px;background:linear-gradient(165deg,color-mix(in srgb,var(--accent) 16%,var(--bg-card)) 0%,var(--bg-card) 46%),var(--bg-card);box-shadow:var(--shadow)}.pasajeros-facts__watermark{position:absolute;right:-.85rem;top:.15rem;z-index:0;color:var(--accent);opacity:.12;pointer-events:none}.pasajeros-facts__hero,.pasajeros-facts__peak,.pasajeros-facts__line{position:relative;z-index:1}.pasajeros-facts__kicker,.pasajeros-facts__label{margin:0;color:var(--text-secondary);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pasajeros-facts__total{margin:.18rem 0 .55rem;color:var(--text-primary);font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.pasajeros-facts__hero .pax-badge{font-size:.92rem}.pasajeros-facts__peak,.pasajeros-facts__line{display:flex;align-items:flex-start;gap:.7rem;padding:.7rem .8rem;border-radius:.7rem;background:color-mix(in srgb,var(--ok) 14%,var(--bg-panel));color:var(--ok)}.pasajeros-facts__peak-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .7rem;margin:.12rem 0 0;color:var(--text-primary);font-size:1.02rem;font-weight:750}.pasajeros-facts__peak-value span{color:var(--ok);font-variant-numeric:tabular-nums}.pasajeros-facts__peak>svg,.pasajeros-facts__line>svg{flex:0 0 auto;margin-top:.12rem}.pasajeros-facts__line{padding:.7rem .8rem;border-radius:.7rem;background:color-mix(in srgb,var(--accent) 14%,var(--bg-panel));color:var(--accent)}.pasajeros-facts__line-name{margin:.12rem 0 0;color:var(--text-primary);font-size:1.05rem;font-weight:800;line-height:1.2}.pasajeros-facts__line-count{margin:.2rem 0 .35rem;color:var(--accent);font-size:1.15rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.pasajeros-facts__line .company-mark{margin-bottom:.2rem}.pasajeros-facts__route{display:flex;align-items:center;min-width:0;margin:.15rem 0 0;color:var(--text-secondary);font-size:.82rem}.pasajeros-facts__route .route-label{max-width:100%;padding:.08rem .35rem}.pasajeros-facts--report{gap:.42rem;padding:.5rem .55rem .45rem;border-radius:.35rem;box-shadow:none}.pasajeros-facts--report .pasajeros-facts__watermark{width:3.2rem;height:3.2rem;opacity:.1}.pasajeros-facts--report .pasajeros-facts__total{margin:.08rem 0 .28rem;font-size:1.15rem}.pasajeros-facts--report .pasajeros-facts__peak,.pasajeros-facts--report .pasajeros-facts__line{gap:.4rem;padding:.32rem .42rem;border-radius:.35rem}.pasajeros-facts--report .pasajeros-facts__peak-value,.pasajeros-facts--report .pasajeros-facts__line-name,.pasajeros-facts--report .pasajeros-facts__line-count{font-size:.78rem}.pasajeros-facts--report .pasajeros-facts__line-count{margin:.08rem 0 .15rem}.pasajeros-facts--report .pasajeros-facts__kicker,.pasajeros-facts--report .pasajeros-facts__label,.pasajeros-facts--report .pasajeros-facts__route{font-size:.62rem}.pasajeros-facts--report .pasajeros-facts__route .route-label{gap:.15rem;padding:.02rem .2rem}.pasajeros-facts--report .pasajeros-facts__route .route-label__name{font-size:.62rem}.informe-share-donuts__bar{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .75rem;margin-bottom:.75rem}.informe-share-donuts__bar>span{color:var(--text-secondary);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.informe-share-donuts .informe-chart--donut .informe-chart__canvas,.informe-share-donuts .informe-chart__donut-host{min-height:26rem;height:26rem}@media(min-width:1101px){.informe-share-donuts:not(.informe-share-donuts--report) .informe-page__summary-donuts{grid-template-columns:repeat(2,minmax(0,34rem));justify-content:start}}.informe-share-donuts--report .informe-share-donuts__bar{display:none}.informe-share-donuts--report .informe-page__summary-donuts{grid-template-columns:minmax(0,1fr) minmax(0,1fr);justify-content:stretch}.informe-share-donuts--report .informe-chart--donut .informe-chart__canvas,.informe-share-donuts--report .informe-chart__donut-host{min-height:62mm;height:62mm}.pasajeros-report-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(9.5rem,.72fr);gap:.45rem;min-height:118mm;height:100%;align-items:stretch}.pasajeros-report-intro__chart,.pasajeros-report-intro .pasajeros-facts{min-width:0;min-height:0;height:100%}.pasajeros-company-report{height:68mm;min-height:68mm}.pasajeros-company-report__chart{height:100%;min-height:0}.pasajeros-row__toggle{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;margin:-.25rem .35rem -.25rem -.2rem;padding:0;border:1px solid var(--border);border-radius:.4rem;background:var(--bg-panel);color:var(--text-secondary);cursor:pointer;vertical-align:middle;transition:background-color .28s ease,border-color .28s ease,color .28s ease}.pasajeros-row__toggle:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--bg-panel));color:var(--accent)}.pasajeros-detail-row{background:color-mix(in srgb,var(--bg-panel) 60%,var(--bg-card))}.route-table td.pasajeros-detail-cell{padding:0;background:color-mix(in srgb,var(--bg-panel) 60%,var(--bg-card))}.pasajeros-detail-scroll{max-height:20rem;overflow-x:hidden;overflow-y:auto}.pasajeros-detail-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;border:0;border-top:1px solid var(--border);border-radius:0;font-size:.82rem;background:var(--bg-primary)}.pasajeros-detail-table col.pasajeros-detail__col--date,.pasajeros-detail-table col.pasajeros-detail__col--time,.pasajeros-detail-table col.pasajeros-detail__col--stay,.pasajeros-detail-table col.pasajeros-detail__col--plate{width:calc((100% - 18.5rem) / 6)}.pasajeros-detail-table col.pasajeros-detail__col--declared{width:8.5rem}.pasajeros-detail-table col.pasajeros-detail__col--counted{width:10rem}.pasajeros-detail-table thead th{position:sticky;top:0;z-index:2;padding:.4rem .55rem;text-align:left;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-panel);border-bottom:1px solid var(--border);white-space:nowrap}.pasajeros-detail-table tbody td{padding:.45rem .55rem;min-height:2.75rem;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text-primary);background:var(--bg-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background-color .28s ease}.pasajeros-detail-table tbody tr:last-child td{border-bottom:none}.pasajeros-detail-table tbody tr:hover td{background:color-mix(in srgb,var(--accent) 6%,var(--bg-primary))}.pasajeros-detail-table tbody tr.pasajeros-detail-skeleton:hover td,.pasajeros-detail-table tbody tr.pasajeros-detail-more:hover td{background:var(--bg-primary)}.pasajeros-detail-skeleton__bar{height:.7rem;width:68%;max-width:9rem}.pasajeros-detail-skeleton:nth-child(2n) .pasajeros-detail-skeleton__bar{width:46%}.pasajeros-detail-more td{padding-top:.55rem;padding-bottom:.55rem}.pasajeros-detail-table .pasajeros-detail__plate{color:var(--text-secondary)}.pasajeros-detail-table .pasajeros-detail__route{overflow:hidden}.pasajeros-detail-table .pasajeros-detail__route .route-label,.pasajeros-detail-table .when-stamp,.pasajeros-detail-table .es-plate{max-width:100%}.servicios-summary{grid-template-columns:minmax(0,1.7fr) minmax(17rem,23rem);align-items:stretch}.servicios-summary .informe-chart--wide .informe-chart__canvas{min-height:18rem;height:18rem}.servicios-summary .servicios-facts{min-height:100%}.servicios-summary__shares{grid-column:1/-1;min-width:0}.servicios-ficha-picker{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem;min-width:0}.servicios-ficha-picker>span{color:var(--text-secondary);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.servicios-ficha-routes__title{margin:0 0 .45rem;color:var(--text-secondary);font-size:.78rem;font-weight:750}.servicios-time-cell{display:inline-flex;align-items:center;gap:.35rem;min-width:0}@media(max-width:1100px){.servicios-summary{grid-template-columns:1fr}}@media(orientation:landscape)and (min-width:1401px){.servicios-summary{grid-template-columns:minmax(0,1.35fr) minmax(13rem,17rem) minmax(0,1fr) minmax(0,1fr)}.servicios-summary__shares,.servicios-summary .informe-share-donuts,.servicios-summary .informe-page__summary-donuts{display:contents}.servicios-summary .informe-share-donuts__bar{grid-column:1/-1;grid-row:1;margin-bottom:.35rem}.servicios-summary>.informe-chart--wide,.servicios-summary>.servicios-facts,.servicios-summary .informe-chart--donut{grid-row:2;min-height:0}.servicios-summary>.informe-chart--wide .informe-chart__canvas{height:auto;min-height:16rem;flex:1 1 auto}.servicios-summary .informe-chart--donut .informe-chart__canvas,.servicios-summary .informe-chart__donut-host{min-height:22rem;height:22rem}}.servicios-ficha{display:flex;flex-direction:column;gap:1rem;min-width:0;margin-bottom:1rem}.servicios-ficha__head{display:flex;align-items:center;min-width:0}.servicios-ficha__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr));gap:.65rem}.servicios-ficha__fact{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;min-width:0;padding:.7rem .8rem;border:1px solid var(--border);border-radius:18px;background:var(--bg-card)}.servicios-ficha__fact--note{flex-direction:row;align-items:flex-start;color:var(--accent)}.servicios-ficha__label{margin:0;color:var(--text-secondary);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.servicios-ficha__chips{display:flex;flex-wrap:wrap;gap:.3rem}.servicios-ficha__avg{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;color:var(--text-secondary);font-size:.75rem;font-weight:700}.servicios-ficha__note-value{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin:.15rem 0 0;color:var(--text-primary);font-size:.95rem;font-weight:800;line-height:1.2}.servicios-ficha__chart .informe-chart__canvas{min-height:16rem;height:16rem}.servicios-ficha__lines-title{margin:0 0 .55rem;color:var(--text-primary);font-size:.92rem;font-weight:750}.servicios-ficha__line-list{display:flex;flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none}.servicios-ficha__line{display:grid;grid-template-columns:minmax(8rem,14rem) minmax(0,1fr) minmax(0,1fr);gap:.45rem .75rem;align-items:center;min-width:0;padding:.55rem .7rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-card)}.servicios-ficha__line-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0}.servicios-ficha__line-name{color:var(--text-primary);font-weight:800;line-height:1.2}.servicios-share{--servicios-share: 0%;--servicios-share-color: var(--accent);display:grid;grid-template-columns:5.4rem minmax(0,1fr) 3.4rem;align-items:center;gap:.4rem;min-width:0}.servicios-share__label,.servicios-share__value{color:var(--text-secondary);font-size:.72rem;font-weight:700}.servicios-share__value{color:var(--text-primary);font-variant-numeric:tabular-nums;text-align:right}.servicios-share__track{display:block;height:.55rem;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--servicios-share-color) 14%,var(--bg-panel))}.servicios-share__fill{display:block;width:var(--servicios-share);height:100%;border-radius:inherit;background:var(--servicios-share-color)}@media(max-width:720px){.servicios-ficha__line{grid-template-columns:1fr}}.servicios-ficha--report{gap:.4rem;margin-bottom:0}.servicios-ficha--report .servicios-ficha__facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem}.servicios-ficha--report .servicios-ficha__fact{gap:.22rem;padding:.32rem .4rem;border-radius:.35rem}.servicios-ficha--report .servicios-ficha__chart,.servicios-ficha--report .informe-chart__canvas{min-height:48mm;height:48mm}.servicios-ficha--report .servicios-ficha__lines-title,.servicios-ficha--report .servicios-ficha__label,.servicios-ficha--report .servicios-ficha__line-name{font-size:.68rem}.route-table th.servicios-direction-col,.route-table td.servicios-direction-col,.report-data-table th.servicios-direction-col,.report-data-table td.servicios-direction-col{text-align:center}.servicios-count{display:inline-flex;flex-direction:column;align-items:center;gap:.28rem;max-width:100%;vertical-align:middle}.servicios-direction{display:inline-flex;align-items:center;gap:.28rem;font-variant-numeric:tabular-nums;font-weight:800;line-height:1;white-space:nowrap}.servicios-direction__leg{display:inline-flex;align-items:center;gap:.16rem}.servicios-direction__leg--in{color:var(--route-in)}.servicios-direction__leg--out{color:var(--route-out)}.servicios-direction__split{color:var(--text-muted);font-weight:650}.servicios-facts{position:relative;display:flex;flex-direction:column;justify-content:flex-start;gap:.85rem;overflow:hidden;min-width:0;padding:1rem 1.05rem .95rem;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:18px;background:linear-gradient(165deg,color-mix(in srgb,var(--accent) 16%,var(--bg-card)) 0%,var(--bg-card) 46%),var(--bg-card);box-shadow:var(--shadow)}.servicios-facts__watermark{position:absolute;right:-.85rem;top:.15rem;z-index:0;color:var(--accent);opacity:.12;pointer-events:none}.servicios-facts__hero,.servicios-facts__peak,.servicios-facts__line{position:relative;z-index:1}.servicios-facts__kicker,.servicios-facts__label,.servicios-facts__caption{margin:0;color:var(--text-secondary);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.servicios-facts__total{margin:.18rem 0 0;color:var(--text-primary);font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.servicios-facts__caption{margin-top:.2rem}.servicios-facts__times{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.7rem}.servicios-facts__avg{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:.55rem 0 0;color:var(--text-secondary);font-size:.78rem;font-weight:700}.servicios-facts__peak,.servicios-facts__line{display:flex;align-items:flex-start;gap:.7rem;padding:.7rem .8rem;border-radius:.7rem;background:color-mix(in srgb,var(--warning) 14%,var(--bg-panel));color:var(--warning)}.servicios-facts__peak-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .7rem;margin:.12rem 0 0;color:var(--text-primary);font-size:1.02rem;font-weight:750}.servicios-facts__peak-value span{color:var(--warning);font-variant-numeric:tabular-nums}.servicios-facts__peak>svg,.servicios-facts__line>svg{flex:0 0 auto;margin-top:.12rem}.servicios-facts__line{background:color-mix(in srgb,var(--accent) 14%,var(--bg-panel));color:var(--accent)}.servicios-facts__line-name{margin:.12rem 0 0;color:var(--text-primary);font-size:1.05rem;font-weight:800;line-height:1.2}.servicios-facts__line-count{display:flex;align-items:center;gap:.4rem;margin:.28rem 0 .35rem}.servicios-facts__line .company-mark{margin-top:.15rem}.servicios-facts--report{gap:.42rem;padding:.5rem .55rem .45rem;border-radius:.35rem;box-shadow:none}.servicios-facts--report .servicios-facts__watermark{width:3.2rem;height:3.2rem;opacity:.1}.servicios-facts--report .servicios-facts__total{font-size:1.15rem}.servicios-facts--report .servicios-facts__peak,.servicios-facts--report .servicios-facts__line{gap:.4rem;padding:.32rem .42rem;border-radius:.35rem}.servicios-facts--report .servicios-facts__peak-value,.servicios-facts--report .servicios-facts__line-name{font-size:.78rem}.servicios-facts--report .servicios-facts__kicker,.servicios-facts--report .servicios-facts__label,.servicios-facts--report .servicios-facts__caption,.servicios-facts--report .servicios-facts__avg{font-size:.62rem}.servicios-report-intro{display:flex;flex-direction:column;gap:.4rem;min-height:0}.servicios-report-intro__top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(9.2rem,.72fr);gap:.4rem;align-items:stretch;min-height:62mm}.servicios-report-intro__chart{min-width:0;min-height:58mm;height:100%}.servicios-report-intro__chart .informe-chart__canvas{min-height:52mm;height:100%}.servicios-report-intro .servicios-facts{height:100%}.informe-kind{display:inline-flex;align-items:center;gap:.28rem}.informe-kind svg{flex:0 0 auto}.app-boot{--app-boot-leave-ms: .48s;position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.15rem;padding:1.5rem;background:var(--bg-primary);text-align:center;cursor:wait;-webkit-user-select:none;user-select:none}.app-boot.is-entering{animation:app-boot-overlay-in .28s ease-out both}.app-boot.is-leaving{pointer-events:none;animation:app-boot-overlay-out var(--app-boot-leave-ms) ease-in both}.app-boot__message{margin:0;color:var(--text-primary);font-size:1.05rem;font-weight:700}.app-boot__spinner{min-height:0}.app-boot__mark-track{display:flex;justify-content:center;align-items:center;box-sizing:border-box;width:100vw;margin-inline:calc(50% - 50vw);padding-block:.95rem;overflow:visible;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--bg-elevated) 62%,var(--bg-primary)) 12%,color-mix(in srgb,var(--bg-elevated) 92%,var(--bg-primary)) 50%,color-mix(in srgb,var(--bg-elevated) 62%,var(--bg-primary)) 88%,transparent 100%)}.app-boot__mark.brand-mark--lg{font-size:clamp(2.35rem,4.4vw,3.35rem)}.app-boot__mark .brand-mark__logo{filter:drop-shadow(0 6px 16px color-mix(in srgb,var(--text-primary) 18%,transparent))}.app-boot.is-entering .app-boot__mark{animation:app-boot-mark-in 1.05s both}.app-boot.is-leaving .app-boot__mark{animation:none}@keyframes app-boot-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes app-boot-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes app-boot-mark-in{0%{transform:translate(calc(-50vw - 60%));animation-timing-function:cubic-bezier(.55,.02,.95,.35)}58%{transform:translate(1.85rem);animation-timing-function:cubic-bezier(.22,1.55,.36,1)}76%{transform:translate(-.72rem);animation-timing-function:cubic-bezier(.34,1.4,.64,1)}90%{transform:translate(.28rem);animation-timing-function:ease-out}to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){.app-boot.is-entering,.app-boot.is-leaving,.app-boot.is-entering .app-boot__mark{animation:none}}.front-version-reload{z-index:2500}.front-version-reload__timer{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}.front-version-reload__countdown{display:flex;align-items:baseline;justify-content:center;gap:.15rem;margin:0;color:var(--accent);font-size:2.35rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.front-version-reload__unit{font-size:.95rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.front-version-reload__bar{width:100%;height:.4rem;overflow:hidden;border-radius:999px;background:var(--border)}.front-version-reload__bar-fill{display:block;width:100%;height:100%;border-radius:inherit;background:var(--accent);transition:width .35s linear}@media(prefers-reduced-motion:reduce){.front-version-reload__bar-fill{transition:none}}.error-detail-modal{z-index:10050}.error-detail-modal .app-modal__eyebrow{color:var(--danger)}.error-detail-modal__summary{margin:0;color:var(--text-primary);font-weight:700}.error-detail-modal__log{margin:0;padding:.9rem 1rem;overflow:auto;max-height:min(52vh,30rem);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);font-family:ui-monospace,Consolas,monospace;font-size:.82rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:480px){.error-detail-modal__log{max-height:min(58vh,24rem);padding:.75rem .8rem}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0px;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width:480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}@media only screen and (max-width:480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root,[data-theme=light]{--bg-primary: #e8efe8;--bg-primary-gradient: linear-gradient(160deg, #e8efe8, #d5e4d7);--bg-secondary: #edf5ef;--bg-panel: #f7faf7;--bg-panel-open: var(--bg-card);--bg-card: #ffffff;--bg-elevated: #ffffff;--bg-hover: rgba(31, 107, 74, .08);--bg-form-header: #e8ecef;--bg-form-panel-secondary: color-mix(in srgb, var(--accent) 8%, var(--bg-panel));--bg-form-footer: #d0d9de;--border: #c5d4c9;--border-light: #d7e3db;--radius: .75rem;--radius-sm: .5rem;--radius-lg: 1rem;--text-primary: #1c2b24;--text-secondary: #5d7267;--text-muted: #7a8f84;--accent: #1469b8;--accent-secondary: #0d4f91;--accent-dim: rgba(20, 105, 184, .15);--service-time-bg: #5a92a6;--service-time-border: #6aa0b2;--service-time-muted: #d5e6ec;--service-time-fg: #fff;--chip-select-bg: linear-gradient(180deg, rgba(31, 107, 74, .08), rgba(31, 107, 74, .03));--chip-select-border: rgba(31, 107, 74, .22);--chip-select-text: #5d7267;--chip-select-bg-active: linear-gradient(180deg, rgba(31, 107, 74, .28), rgba(31, 107, 74, .12));--chip-select-border-active: rgba(31, 107, 74, .55);--chip-select-text-active: #155539;--col-dbg: #7a8f84;--col-inf: #0d4f91;--col-wrn: #c47a00;--refuerzo-rail-bg: #f0c400;--refuerzo-rail-fg: #111111;--col-err: #a33b3b;--col-ftl: #7c337c;--row-even: rgba(28, 43, 36, .03);--row-wrn: color-mix(in srgb, var(--col-wrn) 8%, transparent);--row-err: color-mix(in srgb, var(--col-err) 10%, transparent);--row-ftl: color-mix(in srgb, var(--col-ftl) 10%, transparent);--danger: #a33b3b;--danger-soft: #f5e1e1;--warning: var(--col-wrn);--warning-soft: color-mix(in srgb, var(--col-wrn) 16%, transparent);--ok: #15803d;--ok-soft: color-mix(in srgb, #16a34a 16%, transparent);--pax-declared: #c2410c;--pax-counted: #6d28d9;--shadow: 0 12px 32px rgba(28, 43, 36, .08);--shadow-sharp: 0 12px 32px rgba(28, 43, 36, .2);--dock-shadow: rgb(28 43 36 / 32%);--shadow-outline: 0 0 10px 5px rgba(28, 43, 36, .2), inset 0 0 0 1px currentColor;--route-in: #0e5327;--route-in-soft: #e1f3e6;--route-in-chip-bg: #166534;--route-in-chip-fg: #fff;--route-out: #a33b3b;--route-out-soft: #f5e1e1;--festivo-local: #b45309;--festivo-local-soft: color-mix(in srgb, #d97706 16%, transparent);--festivo-regional: #0f766e;--festivo-regional-soft: color-mix(in srgb, #0d9488 16%, transparent);--festivo-nacional: #b91c1c;--festivo-nacional-soft: color-mix(in srgb, #dc2626 16%, transparent);--route-pair: #c47a00;--route-pair-soft: color-mix(in srgb, #c47a00 16%, transparent);--scrollbar-track: color-mix(in srgb, var(--border) 35%, var(--bg-panel));--scrollbar-thumb: color-mix(in srgb, var(--accent) 28%, var(--border));--scrollbar-thumb-hover: color-mix(in srgb, var(--accent) 48%, var(--border));--darsena-bg: #7c337c;--darsena-fg: #fff;--darsena-pmr-bg: #0d4f91;--darsena-pmr-fg: #fff;--cmd-110: #0f766e;--cmd-110-soft: color-mix(in srgb, #0d9488 18%, transparent);--cmd-200: #7c337c;--cmd-200-soft: color-mix(in srgb, #7c337c 16%, transparent);--cmd-202: #1469b8;--cmd-202-soft: color-mix(in srgb, #1469b8 16%, transparent);--cmd-204: #c47a00;--cmd-204-soft: color-mix(in srgb, #c47a00 16%, transparent);--cmd-wait: #5d7267;--cmd-wait-soft: color-mix(in srgb, #5d7267 12%, transparent);--cmd-expect: #15803d;--cmd-expect-soft: color-mix(in srgb, #16a34a 16%, transparent);--cmd-pax: #0e7490;--cmd-pax-soft: color-mix(in srgb, #0891b2 16%, transparent);--cmd-command: #5d7267;--cmd-command-soft: color-mix(in srgb, #5d7267 12%, transparent);--estado-espera-bg: #c2f0e2;--estado-espera-fg: #000;--estado-parking-bg: #18daf0;--estado-parking-fg: #000;--estado-entrando-bg: #0a7a56;--estado-entrando-fg: #fff;--estado-foto-entrada-bg: #128a64;--estado-foto-entrada-fg: #fff;--estado-darsena-bg: #009de6;--estado-darsena-fg: #fff;--estado-saliendo-bg: #9669ba;--estado-saliendo-fg: #fff;--estado-foto-salida-bg: #7d4fb3;--estado-foto-salida-fg: #fff;--estado-finalizado-bg: #b5bdc9;--estado-finalizado-fg: #000;--estado-cancelado-bg: #df3133;--estado-cancelado-fg: #fff;--estado-retrasado-bg: #ffbf4a;--estado-retrasado-fg: #000;--issues-panel-bg: color-mix(in srgb, var(--bg-panel) 92%, var(--accent));--issues-panel-border: var(--border);--issues-card-bg: var(--bg-card);--issues-card-border: var(--border);--issues-info-bg: color-mix(in srgb, var(--accent) 12%, var(--bg-card));--issues-info-fg: var(--accent-secondary);--issues-warning-bg: color-mix(in srgb, var(--col-wrn) 16%, var(--bg-card));--issues-warning-fg: var(--col-wrn);--issues-error-bg: var(--danger-soft);--issues-error-fg: var(--danger);--issues-ticket-bg: color-mix(in srgb, var(--darsena-bg) 16%, var(--bg-card));--issues-ticket-fg: var(--darsena-bg);--login-scrim: color-mix(in srgb, #041018 34%, transparent);--login-column: color-mix(in srgb, #ffffff 20%, transparent);--login-card: color-mix(in srgb, #0a1014 62%, transparent);--login-info: color-mix(in srgb, #041018 42%, transparent);--login-on-media: #f4f7f8;--login-on-media-muted: color-mix(in srgb, #f4f7f8 74%, transparent);--brand: #012b7f;--brand-etra: var(--brand);--brand-bus: color-mix(in srgb, var(--brand) 68%, #fff);--brand-tagline: color-mix(in srgb, var(--brand) 48%, #fff);--brand-halo: #a7b8ecec;--kpi-face-bg: var(--bg-card);--kpi-face-fg: var(--text-primary);--kpi-icon-bg: var(--accent-dim);--kpi-icon-fg: var(--accent);--kpi-border: color-mix(in srgb, var(--accent) 28%, var(--border))}[data-theme=dark]{--bg-primary: #071827;--bg-primary-gradient: linear-gradient(160deg, #071827, #0d2436);--bg-secondary: #0d2436;--bg-secondary-light: #153449;--bg-panel: #0d2436;--bg-panel-open: color-mix(in srgb, var(--bg-card) 88%, var(--accent));--bg-card: #153449;--bg-elevated: #203f53;--bg-hover: color-mix(in srgb, var(--border) 42%, var(--bg-elevated));--bg-form-header: #071827;--bg-form-panel-secondary: color-mix(in srgb, var(--accent) 9%, var(--bg-card));--bg-form-footer: #153449;--border: #31566b;--border-light: color-mix(in srgb, #31566b 70%, #9ab3c6);--text-primary: #f1f7fc;--text-secondary: #9ab3c6;--text-muted: color-mix(in srgb, #9ab3c6 72%, #31566b);--text-highlight: #27c58b;--accent: #21c4e8;--accent-secondary: color-mix(in srgb, #21c4e8 78%, #0d2436);--accent-dim: rgba(33, 196, 232, .15);--service-time-bg: #203f53;--service-time-border: #31566b;--service-time-muted: #9ab3c6;--service-time-fg: #f1f7fc;--chip-select-bg: linear-gradient(180deg, rgba(33, 196, 232, .26), rgba(33, 196, 232, .12));--chip-select-border: rgba(33, 196, 232, .5);--chip-select-text: #f1f7fc;--chip-select-bg-active: linear-gradient(180deg, rgba(33, 196, 232, .34), rgba(33, 196, 232, .14));--chip-select-border-active: rgba(33, 196, 232, .7);--chip-select-text-active: #21c4e8;--col-dbg: #9ab3c6;--col-inf: #21c4e8;--col-wrn: #f5b942;--refuerzo-rail-bg: #f0c400;--refuerzo-rail-fg: #111111;--col-err: #f06570;--col-ftl: #bf5af2;--row-even: rgba(241, 247, 252, .04);--row-wrn: rgba(245, 185, 66, .1);--row-err: rgba(240, 101, 112, .12);--row-ftl: rgba(191, 90, 242, .09);--danger: #f06570;--danger-soft: rgba(240, 101, 112, .18);--warning: var(--col-wrn);--warning-soft: color-mix(in srgb, var(--col-wrn) 18%, transparent);--ok: #27c58b;--ok-soft: color-mix(in srgb, #27c58b 22%, transparent);--pax-declared: #ffb84d;--pax-counted: #c084fc;--shadow: 0 12px 32px rgba(7, 24, 39, .55);--shadow-sharp: 0 12px 32px rgba(7, 24, 39, .72);--dock-shadow: rgb(7 24 39 / 72%);--shadow-outline: 0 0 1px 1px rgba(241, 247, 252, .22), inset 0 0 0 1px currentColor;--route-in: #27c58b;--route-in-soft: color-mix(in srgb, #27c58b 22%, transparent);--route-in-chip-bg: #27c58b;--route-in-chip-fg: #071827;--route-out: #f06570;--route-out-soft: rgba(240, 101, 112, .18);--festivo-local: #f5b942;--festivo-local-soft: color-mix(in srgb, #f5b942 18%, transparent);--festivo-regional: #21c4e8;--festivo-regional-soft: color-mix(in srgb, #21c4e8 18%, transparent);--festivo-nacional: #f06570;--festivo-nacional-soft: color-mix(in srgb, #f06570 18%, transparent);--route-pair: #f5b942;--route-pair-soft: color-mix(in srgb, #f5b942 18%, transparent);--scrollbar-track: color-mix(in srgb, var(--bg-primary) 70%, var(--bg-panel));--scrollbar-thumb: color-mix(in srgb, var(--accent) 35%, var(--border));--scrollbar-thumb-hover: color-mix(in srgb, var(--accent) 62%, var(--border));--darsena-bg: #9b4d9b;--darsena-fg: #fff;--cmd-110: #21c4e8;--cmd-110-soft: color-mix(in srgb, #21c4e8 18%, transparent);--cmd-200: #bf5af2;--cmd-200-soft: color-mix(in srgb, #bf5af2 18%, transparent);--cmd-202: #21c4e8;--cmd-202-soft: color-mix(in srgb, #21c4e8 16%, transparent);--cmd-204: #f5b942;--cmd-204-soft: color-mix(in srgb, #f5b942 16%, transparent);--cmd-wait: #9ab3c6;--cmd-wait-soft: color-mix(in srgb, #9ab3c6 14%, transparent);--cmd-expect: #27c58b;--cmd-expect-soft: color-mix(in srgb, #27c58b 16%, transparent);--cmd-pax: #21c4e8;--cmd-pax-soft: color-mix(in srgb, #21c4e8 16%, transparent);--cmd-command: #9ab3c6;--cmd-command-soft: color-mix(in srgb, #9ab3c6 14%, transparent);--issues-panel-bg: color-mix(in srgb, var(--bg-panel) 88%, var(--accent));--issues-panel-border: var(--border);--issues-card-bg: var(--bg-card);--issues-card-border: var(--border);--issues-info-bg: color-mix(in srgb, var(--accent) 16%, var(--bg-card));--issues-info-fg: var(--accent);--issues-warning-bg: color-mix(in srgb, var(--col-wrn) 18%, var(--bg-card));--issues-warning-fg: var(--col-wrn);--issues-error-bg: var(--danger-soft);--issues-error-fg: var(--danger);--issues-ticket-bg: color-mix(in srgb, var(--darsena-bg) 16%, var(--bg-card));--issues-ticket-fg: var(--darsena-bg);--login-scrim: color-mix(in srgb, #071827 62%, transparent);--login-column: color-mix(in srgb, #0d2436 55%, transparent);--login-card: color-mix(in srgb, #0d2436 78%, transparent);--login-info: color-mix(in srgb, #071827 55%, transparent);--brand-halo: transparent;--brand-etra: color-mix(in srgb, var(--brand) 38%, #fff);--brand-bus: color-mix(in srgb, var(--brand) 24%, #fff);--brand-tagline: color-mix(in srgb, var(--brand) 42%, #fff);--kpi-face-bg: var(--bg-elevated);--kpi-face-fg: var(--text-primary);--kpi-icon-bg: var(--accent-dim);--kpi-icon-fg: var(--accent);--kpi-border: color-mix(in srgb, var(--accent) 38%, var(--border))}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}html{overflow-x:clip;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}::-webkit-scrollbar{width:.65rem;height:.65rem}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border:2px solid var(--scrollbar-track);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}body{font-family:Segoe UI,Trebuchet MS,sans-serif;color:var(--text-primary);background:var(--bg-primary-gradient);overflow-x:clip}button,textarea,input,select{font:inherit}a{color:var(--accent);text-decoration:none}.muted{color:var(--text-muted)}.dock-panel__toggle{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;flex:0 0 1.55rem;width:1.55rem;height:100%;padding:0;overflow:hidden;border:0;border-radius:0;background-color:var(--bg-panel);background-image:repeating-linear-gradient(-45deg,transparent,transparent 3px,color-mix(in srgb,var(--text-primary) 16%,transparent) 3px,color-mix(in srgb,var(--text-primary) 16%,transparent) 6px);color:inherit;box-shadow:none;cursor:pointer}.dock-panel__toggle-flash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;border-radius:inherit;pointer-events:none;background:color-mix(in srgb,var(--accent) 35%,#fff);box-shadow:inset 0 0 0 2px var(--accent);animation:occupancy-flash .65s ease-out forwards;z-index:0}.dock-panel__toggle-flash:after{content:"";position:absolute;top:-25%;right:-45%;bottom:-25%;left:-45%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.9) 50%,transparent 62%);animation:occupancy-flash-sheen .55s ease-out forwards}[data-theme=dark] .dock-panel__toggle-flash{background:color-mix(in srgb,var(--accent) 48%,transparent)}.dock-panel__toggle>svg{position:relative;z-index:1}.dock-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex:0 0 auto;padding:.9rem 1rem .65rem;border-bottom:1px solid var(--border)}.dock-sheet__title{display:flex;align-items:center;gap:.55rem;min-width:0}.dock-sheet__head h2{margin:0;font-size:1rem;font-weight:800}.dock-sheet__actions{display:flex;align-items:center;gap:.45rem;flex:0 0 auto;min-width:0}.dock-sheet__count{color:var(--text-secondary);font-size:.75rem;font-weight:700;white-space:nowrap}.dock-sheet__count--skeleton{display:inline-flex;align-items:center;min-width:5.5rem}.dock-sheet__list{display:flex;flex-direction:column;gap:.65rem;flex:1 1 auto;min-height:0;padding:.75rem .85rem 1rem;overflow:auto;overscroll-behavior:contain}.dock-sheet__empty{margin:0;padding:.35rem .15rem;font-size:.85rem}.route-service{display:flex;flex-direction:column;gap:.12rem;width:100%;min-width:0}.route-service__top{display:flex;align-items:center;justify-content:space-between;gap:.35rem}.route-id-wrap{display:inline-flex;align-items:center;gap:.28rem}.route-id,.service-id{display:inline-flex;align-items:center;flex:0 0 auto;padding:.14rem .5rem;border-radius:.45rem;font-family:ui-monospace,Consolas,monospace;font-size:.74rem;font-weight:800;letter-spacing:.04em;font-variant-numeric:tabular-nums;line-height:1.2}.route-id{background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));color:var(--accent-secondary)}.service-id{background:color-mix(in srgb,var(--ok) 16%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--ok) 38%,var(--border));color:var(--ok)}[data-theme=dark] .route-id{color:var(--accent)}.route-info{display:flex;align-items:center;gap:.22rem;min-width:0;margin:0}.route-info__name{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:inherit;line-height:1.3}.route-info__platform{--dock-size: 2.55rem;flex:0 0 auto;position:relative;overflow:hidden;display:inline-grid;place-items:center;min-width:var(--dock-size);height:var(--dock-size);padding:0 .4rem;border-radius:.55rem;border:2px solid rgba(255,255,255,.78);color:var(--darsena-fg);background-image:linear-gradient(315deg,var(--darsena-bg) 20%,color-mix(in srgb,var(--darsena-bg) 45%,var(--text-primary)) 74%);font-size:1.15rem;font-weight:800;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px rgba(0,0,0,.45)}.route-info__platform.is-occupied{--darsena-bg: var(--estado-darsena-bg);--darsena-fg: var(--estado-darsena-fg)}.route-info__platform.is-parking{--darsena-bg: var(--estado-parking-bg);--darsena-fg: var(--estado-parking-fg)}.route-info__platform.is-pmr{--darsena-bg: var(--darsena-pmr-bg);--darsena-fg: var(--darsena-pmr-fg)}.route-info__platform--sm{--dock-size: 1.85rem;--pmr-scale: 1.25;min-width:var(--dock-size);height:var(--dock-size);font-size:.82rem}.route-type-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .5rem;border-radius:999px;font-size:.68rem;font-weight:800;line-height:1.2;border:1px solid transparent}.route-type-chip--entrada{background:var(--route-in-soft);color:var(--route-in)}.route-type-chip--salida{background:var(--route-out-soft);color:var(--route-out)}.route-type-chip--pareado{background:var(--route-pair-soft);color:var(--route-pair);border-color:color-mix(in srgb,var(--route-pair) 42%,transparent)}.estado-servicio{display:inline-block;padding:.08rem .5rem;border-radius:10px;font-size:.75rem;line-height:1.35;font-weight:800;vertical-align:.08em;white-space:nowrap}.estado-espera{background:var(--estado-espera-bg);color:var(--estado-espera-fg)}.estado-parking{background:var(--estado-parking-bg);color:var(--estado-parking-fg)}.estado-entrando{background:var(--estado-entrando-bg);color:var(--estado-entrando-fg)}.estado-foto-entrada{background:var(--estado-foto-entrada-bg);color:var(--estado-foto-entrada-fg)}.estado-darsena{background:var(--estado-darsena-bg);color:var(--estado-darsena-fg)}.estado-saliendo,.estado-foto-salida{background:var(--estado-saliendo-bg);color:var(--estado-saliendo-fg)}.estado-finalizado{background:var(--estado-finalizado-bg);color:var(--estado-finalizado-fg)}.estado-cancelado{background:var(--estado-cancelado-bg);color:var(--estado-cancelado-fg)}.estado-retrasado{background:var(--estado-retrasado-bg);color:var(--estado-retrasado-fg)}.dock-skeleton{display:block;border-radius:.35rem;background:linear-gradient(90deg,color-mix(in srgb,var(--text-muted) 16%,var(--bg-card)),color-mix(in srgb,var(--border) 55%,var(--bg-card)),color-mix(in srgb,var(--text-muted) 16%,var(--bg-card)));background-size:200% 100%;animation:dock-skeleton 1.1s ease-in-out infinite}.dock-skeleton--text{width:5.5rem;height:.75rem}.dock-skeleton--badge{width:2.4rem;height:1.35rem}.dock-skeleton--icon{width:1.7rem;height:1.7rem;border-radius:999px}.dock-skeleton--line{width:68%;height:.85rem}.dock-skeleton--short{width:42%;height:.7rem}@keyframes occupancy-flash{0%{opacity:.92}to{opacity:0}}@keyframes occupancy-flash-sheen{0%{transform:translate(-35%)}to{transform:translate(35%)}}@keyframes dock-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.dock-panel__toggle.is-attention{outline:2px solid var(--accent);outline-offset:1px}.dock-panel__toggle-flash{animation:none;opacity:0}.dock-skeleton{animation:none}}.btn{border:none;border-radius:999px;padding:.65rem 1rem;cursor:pointer;font-weight:700;width:auto;display:inline-flex;align-items:center;gap:.4rem;transition:background-color .2s ease,transform .15s ease,opacity .2s ease}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn--icon{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:2.25rem;height:2.25rem;min-height:0;padding:0;line-height:0}.btn--primary{background:var(--accent);color:#fff}[data-theme=dark] .btn--primary{color:#0b1a24}.btn--primary:hover{background:var(--accent-secondary)}.btn--ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn--ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn--danger{background:var(--danger-soft);color:var(--danger)}.es-plate{display:flex;flex:0 0 auto;align-items:stretch;min-width:0;overflow:hidden;border:2px solid #171717;border-radius:.5rem;background:#f3f1e7;box-shadow:0 1px 2px #0000002e}.es-plate--static{width:max-content;max-width:9.5rem;height:1.85rem}.es-plate__eu{display:flex;flex:0 0 auto;flex-direction:column;align-items:center;justify-content:flex-end;gap:.04rem;width:.95rem;padding:.08rem 0 .1rem;background:#039;color:#fc0;font-size:.55rem;font-weight:800;line-height:1}.es-plate__stars{font-size:.28rem;letter-spacing:-.05em;color:#fc0}.es-plate__text{flex:1;display:grid;place-items:center;min-width:0;padding:0 .42rem;overflow:hidden;color:#111;font-family:Arial Black,Arial,Helvetica,sans-serif;font-size:.78rem;font-weight:900;letter-spacing:.1em;white-space:nowrap}.pax-count{display:inline-flex;align-items:center;gap:.22rem;padding:.08rem .5rem;border-radius:10px;font-size:.75rem;line-height:1.35;font-weight:800;vertical-align:.08em;white-space:nowrap;background:var(--cmd-pax-soft);color:var(--cmd-pax)}.pax-count.is-none{background:var(--bg-hover);color:var(--text-muted)}@keyframes loading-spin{to{transform:rotate(360deg)}}.field{display:flex;flex-direction:column;gap:.35rem;color:var(--text-secondary);font-size:.85rem;font-weight:650}.field input,.field textarea,.field select{padding:.55rem .75rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-card);color:var(--text-primary)}.field--check{flex-direction:row;align-items:center}.page-placeholder h1{margin-top:0}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:.75rem}.filter-grid>*{min-width:0}.filter-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}@media(max-width:480px){.filter-actions{align-items:stretch;flex-direction:column}}.filter-actions__extra{margin-right:auto}@media(max-width:480px){.filter-actions__extra{margin-right:0}}.filter-actions>.form-actions{flex:1 1 100%;width:100%}.Toastify__toast{font-family:Segoe UI,Trebuchet MS,sans-serif}.field-control{width:100%;padding:.55rem .75rem;border:1px solid var(--border);border-radius:.7rem;background:var(--bg-card);color:var(--text-primary)}.field-control.is-invalid{border-color:var(--danger);box-shadow:0 0 0 1px color-mix(in srgb,var(--danger) 45%,transparent)}.field-control.is-valid{border-color:var(--ok);box-shadow:0 0 0 1px color-mix(in srgb,var(--ok) 35%,transparent)}.field.is-filtered>span{color:var(--col-wrn)}.field.is-filtered input,.field.is-filtered textarea,.field.is-filtered select,.field.is-filtered .field-control{border-color:var(--col-wrn);box-shadow:0 0 0 1px color-mix(in srgb,var(--col-wrn) 40%,transparent);background:color-mix(in srgb,var(--col-wrn) 12%,var(--bg-card))}.field.is-filtered .chip-select{padding:.2rem .55rem;border-radius:.7rem;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--col-wrn) 45%,var(--border));background:color-mix(in srgb,var(--col-wrn) 10%,transparent)}
