/* Editor · cajones por debajo de 1024 px y la aplicación a pantalla completa.
   Troceado de `compact_workspace.css` (lote C3). Carga en `head_extra` de
   editor/editor.html, ANTES del núcleo: ante una regla del núcleo con la misma
   especificidad, pierde. El orden entre módulos lo fija tests/css_manifest.py. */
/* ---- estrecho: cada carril pasa a ser un cajon sobre el texto ---- */
/* Hasta 1023: móviles y tabletas en vertical. En horizontal la tableta ya
   entra en la retícula de tres columnas. */
@media (max-width: 1023px) {
  .public-editor-shell { display:block; min-height:0; }
  .editor-main-panel { width:100%; }
  /* Ancho de cajón con una franja de folio a la vista: enseña que hay página
     debajo y no otra pantalla. Los 22px eran 74 mientras el carril de
     aplicación se comía 52 de ellos. */
  .editor-rail { position:fixed; z-index:60; top:72px; bottom:0; width:min(384px,calc(100vw - 22px)); max-height:none; transition:opacity .18s ease, transform .18s ease; }
  /* El carril cerrado se aparta; ocultarlo con display:none impediria animar. */
  .public-editor-shell:not(.is-structure-open) .editor-structure-rail,
  .public-editor-shell:not(.is-suggestions-open) .editor-suggestions-rail { display:flex; opacity:0; pointer-events:none; }
  .editor-structure-rail { left:0; border-radius:0 12px 12px 0; transform:translateX(-105%); }
  .editor-suggestions-rail { right:0; border-radius:12px 0 0 12px; transform:translateX(105%); }
  .public-editor-shell.is-structure-open .editor-structure-rail,
  .public-editor-shell.is-suggestions-open .editor-suggestions-rail { opacity:1; pointer-events:auto; transform:none; }
}

/* Las reglas de móvil (≤768px) viven todas juntas al final del fichero, en el
   bloque «modo móvil». Antes había dos capas sueltas a 700px que ya no
   existen: había tres anchuras de corte (1279 / 760 / 700) para el mismo
   propósito y las reglas de folio que declaraban se perdían igualmente
   contra analytics.css por orden de carga. */

/* =====================================================================
   El editor es una aplicacion: la cabecera y el pie del sitio se apartan y
   el editor se queda con la ventana. Se detecta con :has sobre el shell del
   editor, no con una clase de body: la navegacion htmx (hx-boost) intercambia
   el contenido pero no los atributos del body, y una clase se quedaria pegada
   al salir del editor, dejando el menu del sitio oculto.
   ===================================================================== */
body:has([data-public-editor]) .topbar,
body:has([data-public-editor]) .site-footer { display:none; }
body:has([data-public-editor]) .shell { max-width:none; padding:0; }
body:has([data-public-editor]) .public-editor-shell { gap:0; min-height:100vh; }
body:has([data-public-editor]) .editor-rail { border-radius:0; border-top:0; border-bottom:0; }
body:has([data-public-editor]) .editor-structure-rail { border-left:0; }
body:has([data-public-editor]) .editor-suggestions-rail { border-right:0; }
body:has([data-public-editor]) .agent-editor-frame { height:100vh; min-height:100vh; border-radius:0; border-top:0; border-bottom:0; }

/* Acompaña a la retícula: donde el carril es columna, va pegado y a toda
   altura; donde es cajón, solo se ajusta el borde superior. */
@media (min-width: 1024px) {
  body:has([data-public-editor]) .editor-rail { position:sticky; top:0; height:100vh; }
}

@media (max-width: 1023px) {
  body:has([data-public-editor]) .editor-rail { top:0; }
}

/* ---- el carril de aplicación azul: retirado ----
   Vivía aquí una columna de 52px con degradado de marca que se desplegaba al
   posar el cursor. Se retiró el 2026-08-24, por la revisión del 12/08: «a mí
   este panel lateral desplegable me resulta poco intuitivo» (Iria), conforme
   Sara. Lo que llevaba está repartido —ver la nota del `<nav>` retirado en
   `editor/editor.html`—, y las dos filas que no estaban en ningún otro sitio,
   ayuda y salir, viven en `.ribbon-appbar`, que es «la parte superior» que
   pedía la revisión.

   Con él se va también `--appnav-w`: nada mide ya contra ese carril. Si algo
   vuelve a necesitar una columna de cromo a la izquierda, que se declare
   entera y no reviva una variable de la que ya no queda dueño. */
