:root{font-family:Arial,Helvetica,sans-serif;color:#151515;background:#f7f5f0}*{box-sizing:border-box}body{margin:0}.exercise-banner{background:#c40000;color:white;text-align:center;padding:8px;font-size:12px;font-weight:800;letter-spacing:.14em}.top{max-width:1100px;margin:auto;padding:24px 20px 14px;border-bottom:4px solid #111;display:flex;justify-content:space-between;gap:20px;align-items:end}.top h1{font-family:Georgia,serif;margin:0;font-size:34px}.top p{margin:4px 0;color:#666;font-size:12px;text-transform:uppercase;letter-spacing:.12em}nav{display:flex;gap:7px;flex-wrap:wrap}button,.btn{border:1px solid #bbb;background:white;border-radius:7px;padding:9px 13px;cursor:pointer;font-weight:700}button:hover{background:#eee}main{max-width:1100px;margin:auto;padding:22px 20px 50px}.breaking{border-bottom:1px solid #bbb;padding:0 0 14px;margin-bottom:22px}.breaking b{background:#111;color:white;padding:5px 8px;margin-right:10px}.grid{display:grid;grid-template-columns:1.6fr .8fr;gap:28px}.hero{border-right:1px solid #bbb;padding-right:28px}.meta{font-size:12px;color:#666;text-transform:uppercase;font-weight:bold;letter-spacing:.08em}.headline{font-family:Georgia,serif;font-size:34px;line-height:1.05;margin:8px 0 14px}.lead{font-size:18px;line-height:1.5}.image{height:250px;background:#dedbd4;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#777;overflow:hidden}.image img{width:100%;height:100%;object-fit:cover}.side article,.archive-item,.queue-item{padding:15px 0;border-bottom:1px solid #ccc}.side h3,.archive-item h3{font-family:Georgia,serif;margin:5px 0;font-size:20px}.link{border:0;background:none;padding:0;text-align:left;font:inherit;cursor:pointer}.article{max-width:780px;margin:auto}.article h2{font-family:Georgia,serif;font-size:40px;line-height:1.08}.article-body{font-family:Georgia,serif;font-size:18px;line-height:1.7}.article-body p{white-space:pre-wrap}.excon{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px}.panel{background:white;border:1px solid #ccc;border-radius:10px;padding:18px}.field{margin-bottom:14px}.field label{display:block;font-weight:700;margin-bottom:5px}.field input,.field textarea,.field select{width:100%;font:inherit;padding:10px;border:1px solid #bbb;border-radius:6px;background:white}.actions{display:flex;gap:8px;flex-wrap:wrap}.primary{background:#111;color:white}.status{margin-top:10px;font-weight:bold}.queue-item{background:#fafafa;padding:12px;margin-bottom:8px;border:1px solid #ddd;border-radius:8px}.state{font-size:11px;font-weight:bold;color:#666}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.stat{text-align:center;background:#eee;padding:12px;border-radius:8px}.stat strong{font-size:25px;display:block}.archive-head{display:flex;justify-content:space-between;align-items:end;gap:10px;border-bottom:3px solid #111;padding-bottom:10px}.note{font-size:13px;color:#666}.import-box{margin-top:20px;padding-top:16px;border-top:1px solid #ccc}.import-box input{margin:8px 0}.hidden{display:none}@media(max-width:720px){.top{align-items:start;flex-direction:column}.grid,.excon{grid-template-columns:1fr}.hero{border-right:0;padding-right:0}.headline{font-size:29px}.article h2{font-size:31px}}

/* V1.2.1 thumbnails */
.thumb{width:112px;height:76px;flex:0 0 112px;border-radius:4px;overflow:hidden;background:#e8e8e8;display:flex;align-items:center;justify-content:center;color:#777;font-size:10px;text-align:center}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.side article{display:flex;gap:12px;align-items:flex-start}
.side .story-copy{min-width:0;flex:1}
.archive-item{display:flex;gap:16px;align-items:flex-start}
.archive-item .thumb{width:150px;height:96px;flex-basis:150px;cursor:pointer}
.archive-copy{min-width:0;flex:1}
@media(max-width:650px){.thumb{width:92px;height:66px;flex-basis:92px}.archive-item .thumb{width:105px;height:74px;flex-basis:105px}}

/* Authentication gate: before login show only the login form. */
body.logged-out > .exercise-banner,
body.logged-out > .top { display:none !important; }
body.logged-out main#app { min-height:100vh; display:flex; align-items:flex-start; justify-content:center; }
body.logged-out main#app > .panel { width:min(460px, calc(100% - 32px)); }

/* V2.1 — portada editorial dinámica */
.front-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:28px}
.front-grid .hero{border-right:1px solid #bbb;padding-right:28px}
.top-stories article{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid #ccc}
.top-stories h3{font-family:Georgia,serif;margin:4px 0 6px;font-size:19px;line-height:1.15}
.sections-head{margin:38px 0 4px;border-top:4px solid #111;padding-top:9px;font-size:12px;font-weight:800;letter-spacing:.14em}
.category-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 34px}
.category-section{border-top:2px solid #111;padding-top:8px}
.category-title{font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;margin-bottom:12px}
.category-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px}
.category-feature .thumb{width:100%;height:170px;display:flex;margin-bottom:10px}
.category-feature h3{font-family:Georgia,serif;font-size:23px;line-height:1.12;margin:5px 0 7px}
.category-small{display:flex;gap:10px;padding:0 0 11px;margin-bottom:11px;border-bottom:1px solid #d2d2d2}
.category-small .thumb{width:86px;height:60px;flex-basis:86px}
.category-small h4{font-family:Georgia,serif;font-size:16px;line-height:1.15;margin:3px 0}
@media(max-width:850px){.front-grid{grid-template-columns:1fr}.front-grid .hero{border-right:0;padding-right:0}.category-sections{grid-template-columns:1fr}}
@media(max-width:560px){.category-grid{grid-template-columns:1fr}.category-feature .thumb{height:190px}}

/* Gestión de borrado EXCON */
.queue-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.select-news{display:block;font-size:12px;margin-bottom:6px;color:#555}
.danger{border-color:#a40000!important;color:#a40000!important}
.danger:hover{background:#a40000!important;color:white!important}

.media-bars{display:none;max-width:1180px;margin:0 auto 18px}
.live-clock{text-align:center;padding:8px;border-top:1px solid #aaa;border-bottom:1px solid #aaa;font-size:12px;font-weight:700;letter-spacing:.07em}
.category-nav{display:flex;justify-content:center;flex-wrap:wrap;border-bottom:3px solid #111}
.category-nav button{border:0;border-right:1px solid #ccc;background:transparent;padding:10px 11px;font-size:10px;font-weight:900;cursor:pointer}
.category-nav button:hover{background:#111;color:#fff}
.ticker-shell{height:34px;display:flex;align-items:center;background:#111;color:#fff;overflow:hidden}
.ticker-label{height:34px;display:flex;align-items:center;flex:none;background:#8b0000;padding:0 12px;font-size:10px;font-weight:900;letter-spacing:.08em;z-index:2}
.ticker-window{overflow:hidden;white-space:nowrap;flex:1}.market-ticker{display:inline-flex;width:max-content;animation:marketmove 38s linear infinite}
.market-ticker span{padding:0 18px;font-size:12px}.market-ticker i{font-style:normal;font-weight:800}.market-ticker .up{color:#7fe08b}.market-ticker .down{color:#ff8585}
@keyframes marketmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.section-page-title{font-family:Georgia,serif;font-size:36px;font-weight:700;border-bottom:4px solid #111;padding-bottom:8px;margin-bottom:20px}
@media(max-width:700px){.category-nav button{padding:8px 6px;font-size:9px}.ticker-label{display:none}.live-clock{font-size:10px}}

/* V2.5 — navegación editorial limpia y responsive */
header{position:relative}
.editorial-logout{display:none;position:absolute;right:18px;top:50%;transform:translateY(-50%);background:transparent;border:1px solid #777;border-radius:3px;padding:6px 10px;font-size:10px;font-weight:800;letter-spacing:.06em;cursor:pointer}
body:not(.logged-out) .editorial-logout{display:block}
.editorial-logout:hover{background:#111;color:#fff;border-color:#111}

/* UNIT: la navegación antigua desaparece por completo */
body.unit-view #nav{display:none!important}
body.unit-view nav#nav{display:none!important}
body.unit-view .topnav{display:none!important}

/* Barra de secciones: una línea editorial en móvil */
@media(max-width:700px){
  .media-bars{margin-bottom:12px}
  .category-nav{
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    scroll-snap-type:x proximity;
    border-bottom:2px solid #111;
  }
  .category-nav::-webkit-scrollbar{display:none}
  .category-nav button{
    flex:0 0 auto;
    white-space:nowrap;
    min-height:42px;
    padding:0 13px!important;
    font-size:10px!important;
    scroll-snap-align:start;
  }
  .editorial-logout{right:8px;top:8px;transform:none;padding:5px 8px;font-size:9px}
  .live-clock{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:8px;padding-right:8px}
  .ticker-shell{height:30px}.market-ticker span{font-size:11px;padding:0 14px}
  .hero,.lead-grid,.home-grid{grid-template-columns:1fr!important}
  .hero img,.lead img{width:100%;height:auto;max-height:52vw;object-fit:cover}
  .secondary-grid,.cards,.category-grid{grid-template-columns:1fr!important}
  .archive-item,.archive-row{grid-template-columns:105px 1fr!important;gap:10px!important}
  .archive-item img,.archive-row img{width:105px!important;height:75px!important;object-fit:cover}
  .section-page-title{font-size:28px!important}
}

/* V2.6 — navegación única */
#nav,.topnav,.legacy-nav{display:none!important}
.category-nav .excon-tab{font-weight:900;background:#ececec;border-left:2px solid #111}
body.logged-out .editorial-logout{display:none!important}

/* V2.9 — corrección segura: no elimina elementos requeridos por JavaScript */

/* Oculta SOLO la navegación antigua de la cabecera */
header.top > nav {
    display: none !important;
}

/* Un único SALIR visible */
header.top {
    position: relative !important;
    padding-right: 90px !important;
}
#editorialLogout {
    display: none;
    position: absolute !important;
    right: 18px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    height: 34px !important;
    padding: 0 14px !important;
    box-sizing: border-box !important;
    border: 1px solid #777 !important;
    border-radius: 3px !important;
    background: #fff !important;
    color: #111 !important;
    font: 800 11px/32px Arial,sans-serif !important;
    cursor: pointer !important;
}
body:not(.logged-out) #editorialLogout { display: block !important; }

/* Barra editorial uniforme */
#categoryNav {
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    border-bottom: 2px solid #111 !important;
    background: #f7f5f0 !important;
}
#categoryNav::-webkit-scrollbar { display:none !important; }

#categoryNav button {
    -webkit-appearance: none !important;
    appearance: none !important;
    flex: 0 0 auto !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border: 0 !important;
    border-right: 1px solid #d0cdc6 !important;
    border-radius: 0 !important;
    background: #f7f5f0 !important;
    color: #000 !important;
    box-shadow: none !important;
    font: 800 10px/36px Arial,sans-serif !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}
#categoryNav button:first-child {
    border-left: 1px solid #d0cdc6 !important;
}
#categoryNav button:hover {
    background: #111 !important;
    color: #fff !important;
}
#categoryNav .excon-tab {
    background: #e9e6df !important;
    font-weight: 900 !important;
}

@media (max-width:700px) {
    header.top { padding-right: 68px !important; }
    #editorialLogout {
        right: 8px !important;
        top: 8px !important;
        transform: none !important;
        height: 30px !important;
        padding: 0 9px !important;
        font-size: 9px !important;
        line-height: 28px !important;
    }
    #categoryNav {
        justify-content: flex-start !important;
        -webkit-overflow-scrolling: touch !important;
    }
    #categoryNav button {
        height: 40px !important;
        min-height: 40px !important;
        padding: 0 13px !important;
        font-size: 10px !important;
        line-height: 40px !important;
    }
}

/* v3.0: imagen completa SOLO en lectura de articulo; miniaturas intactas */
.article .image { height:auto !important; max-height:none !important; min-height:0 !important; overflow:visible !important; display:block !important; background:transparent !important; }
.article .image img { display:block !important; width:100% !important; height:auto !important; max-height:none !important; object-fit:contain !important; object-position:center !important; border-radius:8px; }
@media(max-width:720px) { .article .image img { max-height:none !important; height:auto !important; object-fit:contain !important; } }

/* Piloto 1.1: restauración de las barras editoriales originales */
.media-bars{display:block}
.market-ticker{will-change:transform}
@media(prefers-reduced-motion:reduce){.market-ticker{animation:none}}
