/* Ficha de línea de bus (inc/bus.php) según INT-BUS-ficha-linea.png y UX-BUS-movil.png */
.si-linea{margin:-3vh 0 2.6em}
.si-linea__pildora{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.2em .7em;margin:0 0 1.1em;padding:.32em .9em;border-radius:12px;background:var(--c);color:#14110a;font:600 clamp(17px,1.6vw,22px)/1.2 Georgia,serif;box-shadow:0 0 22px color-mix(in oklab,var(--c) 45%,transparent)}
.si-linea__pildora b{font-weight:700}
.si-cifras{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 28px}
.si-cifras li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;column-gap:14px;align-items:start;margin:0;text-shadow:0 1px 4px rgba(0,0,0,.7)}
.si-cifras .si-ico{grid-row:1/4;width:44px;height:44px;color:var(--c);filter:drop-shadow(0 0 8px color-mix(in oklab,var(--c) 55%,transparent))}
.si-cifras__eti{font:600 14px/1.3 system-ui,sans-serif;color:#fff}
.si-cifras__val{font:700 clamp(22px,2.1vw,30px)/1.1 Georgia,serif;color:#fff;font-variant-numeric:lining-nums tabular-nums}
.si-cifras__sub{font-size:13px;opacity:.85}
.si-linea__pie{display:flex;flex-wrap:wrap;gap:6px 26px;margin:1.4em 0 0;font-size:13px;opacity:.85}
.si-linea__pie div{display:flex;gap:6px}
.si-linea__pie dt{font-weight:400;opacity:.8}
.si-linea__pie dt::after{content:":"}
.si-linea__pie dd{margin:0;font-weight:600}

/* Horarios: pestañas de sentido (base.js) y una columna por tipo de día */
.si-hor h2{margin-top:.6em}
.si-hor .si-sentido h3.si-hor__sentido{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.si-sentidos:not(.con-sel) .si-sentido h3.si-hor__sentido{position:static;width:auto;height:auto;clip:auto;margin:1em 0 .5em}
.si-hor__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}
.si-hor__col{background:rgba(8,12,28,.62);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px 18px 12px;min-width:0}
.si-hor__col h4{display:flex;align-items:center;gap:10px;margin:0 0 .5em;padding-bottom:.55em;border-bottom:1px solid rgba(255,255,255,.14);font:700 17px/1.25 Georgia,serif;color:#fff}
.si-hor__col h4 .si-ico{width:26px;height:26px;flex:none;color:var(--c)}
.si-hor__filas{list-style:none;margin:0;padding:0}
.si-hor__filas li{display:grid;grid-template-columns:5ch 1.6em 5ch auto;align-items:baseline;justify-content:center;gap:0 10px;margin:0;padding:3px 0;font-variant-numeric:lining-nums tabular-nums}
.si-hor__filas b{font:700 20px/1.3 Georgia,serif;color:#fff}
.si-hor__filas span[aria-hidden]{color:var(--c);font-weight:700;text-align:center}
.si-hor__filas span:not([aria-hidden]){font:400 20px/1.3 Georgia,serif;color:#fff;opacity:.9}
.si-hor__filas sup,.si-hor__notas sup{color:var(--c-txt);font-weight:700}
.si-hor__notas{list-style:none;margin:.6em 0 0;padding:.5em 0 0;border-top:1px solid rgba(255,255,255,.1);font-size:13px;line-height:1.4;opacity:.85}
.si-hor__notas li{margin:0 0 .25em}
/* Plegado (base.js): las 5 primeras, «…» y las 2 últimas */
.si-hor.plegado .si-hor__filas li.oculta{display:none}
.si-hor.plegado .si-hor__filas li.puntos{display:block;text-align:center;font-weight:700;letter-spacing:.2em;opacity:.7;padding:0}
.si-hor:not(.plegado) .si-hor__filas li.puntos{display:none}
.si-hor__mas{display:inline-flex;align-items:center;gap:.4em;margin:1em 0 0;padding:0;border:0;background:none;color:var(--c-txt);font:600 17px system-ui,sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.si-hor__mas::after{content:"→"}
.si-hor__dias{display:none}
.si-hor__cols .si-hor__col[hidden]{display:block}   /* las pastillas de día sólo esconden en móvil */

/* Recorrido y paradas: la línea con sus paradas */
.si-sec--recorrido .si-sec__tit{display:flex;align-items:center;gap:12px}
.si-sec--recorrido .si-sec__tit .si-ico{width:36px;height:36px;color:var(--c)}
.si-ruta__res{opacity:.9}
.si-ruta{list-style:none;margin:1.4em 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));row-gap:22px}
.si-ruta li{position:relative;margin:0;padding:26px 6px 0;font-size:14px;line-height:1.25;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.8)}
.si-ruta li::before{content:"";position:absolute;top:8px;left:0;right:0;height:4px;background:var(--c);box-shadow:0 0 12px var(--c)}
.si-ruta li::after{content:"";position:absolute;top:3px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#14110a;border:3px solid var(--c)}
.si-ruta li.si-ruta__extremo{font-weight:700;font-size:15px}
.si-ruta li.si-ruta__extremo::after{top:-1px;width:22px;height:22px;margin-left:-11px;background:#fff;border-color:var(--c);box-shadow:0 0 14px var(--c)}
.si-ruta li:first-child::before{left:50%}
.si-ruta li:last-child::before{right:50%}

/* Otros autobuses: botones a la izquierda, publicidad al lado */
.si-otros{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:0 32px;align-items:start}
.si-otros>:not(.ad){grid-column:1}
.si-otros>.ad{grid-column:2;grid-row:1/span 40;position:sticky;top:90px;aspect-ratio:300/250;border-radius:14px;display:grid;place-items:center;font-size:13px;background:rgba(255,255,255,.14);color:rgba(255,255,255,.75)}
.si-otros>.ad--muestra{border:1px dashed rgba(255,255,255,.4)}

@media (max-width:760px){
  .si-linea{margin-top:0}
  .si-cifras{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px;background:rgba(8,12,28,.62);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px}
  .si-cifras li{grid-template-columns:1fr}
  .si-cifras .si-ico{display:none}
  .si-cifras__val{order:-1;font-size:22px;color:var(--c-txt)}
  .si-cifras__eti{font-size:13px}
  .si-hor__cols{display:block}
  .si-hor__dias{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
  .si-hor__dias button{font:600 14px system-ui,sans-serif;color:#fff;background:rgba(8,12,28,.6);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:8px 14px;cursor:pointer}
  .si-hor__dias button[aria-selected=true]{background:var(--c);border-color:var(--c);color:#14110a}
  .si-hor__cols.con-dias .si-hor__col[hidden]{display:none}
  .si-hor__cols.con-dias .si-hor__col h4{display:none}
  .si-hor__col{padding:10px}
  .si-hor__filas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 6px}
  .si-hor__filas li{grid-template-columns:auto auto auto auto;justify-content:start;gap:0 6px;padding:7px 4px;border-bottom:1px solid rgba(255,255,255,.08)}
  .si-hor__filas b,.si-hor__filas span:not([aria-hidden]){font-size:16px}
  .si-hor.plegado .si-hor__filas li.puntos{grid-column:1/-1}
  .si-ruta{display:block;margin-left:6px}
  .si-ruta li{padding:4px 0 10px 30px;text-align:left}
  .si-ruta li::before{top:0;bottom:0;left:8px;right:auto;width:4px;height:auto}
  .si-ruta li::after{top:6px;left:10px}
  .si-ruta li.si-ruta__extremo::after{top:2px;left:10px}
  .si-ruta li:first-child::before{left:8px;top:12px}
  .si-ruta li:last-child::before{right:auto;bottom:auto;height:12px}
  .si-otros{display:block}
  .si-otros>.ad{position:static;margin:1.2em auto 0;max-width:300px;width:100%}
}
