/* ---------- indicaciones generales ---------- */

@import url('https://fonts.googleapis.com/css2?family=Victor+Mono:ital,wght@0,400;0,700;1,400&display=swap');
:root {
    --bg:       #F3EEE3;
  --surface:  #FBF8F1;
  --ink:      #28251F;
  --muted:    #6b6457;
  --faint:    #9a9486;
  --hairline: #DAD3C4;
  --credits:#c6c6c6;

  --violet:   #6A5AA6;
  --olive:    #717A45;
  --pink:     #D98BA8;

  --violet-wash: #EDE3F0;
  --olive-wash:  #E8EAD6;
  --pink-wash:   #F7DEE8;

  --display: 'Space Mono', monospace;
  --body: 'Victor Mono', sans-serif;
  --border: 0.5px solid var(--muted);
}

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }


/* ---------- elementos de layout ---------- */

.split { 
  display: grid; 
  grid-template-columns: 1fr 340px; 
}

.main { 
  padding: 38px 34px; 
  border-right: var(--border); }

.sidebar { 
  padding: 38px 28px; 
  background: var(--bg); 
}

/* ---------- elementos estructurales típicos ---------- */

.nav { 
  display: flex; 
  gap: 6px; 
  justify-content: flex-end; 
  font-size: 13px; 
}

.nav a {
  text-decoration: none;
  padding: 7px 11px;
  border: 2px solid transparent;
  color: var(--muted);
}
.nav a:hover { 
  border-bottom: 2px solid var(--pink);
}

.nav a.active { border-bottom: 2px solid var(--pink); 
}

.nav a.shed {
  margin-left: 4px;
  border: var(--border);
  background: var(--pink);
  font-weight: 600;
}

.nav a.shed:hover { background: var(--ink); color: var(--surface); }
h1 {
  font-style:italic;
  color: var(--pink);
}

h2 {
  font-style:italic;
  color: var(--violet);
}

h3 {
  font-style:italic;
  color: var(--muted);
}

h4 {
  font-style:italic;
  color: var(--muted);
}

body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--body);
  font-size: 15px;
  line-height: 1.6;
  padding: 32px 28px;
}

a {
  color: var(--violet); 
  text-decoration: none;
}

a:hover {
  border-bottom: 2px solid var(--pink);
}

/* ---------- elementos estructurales universales agregados ---------- */
.logo {
  font-family: var(--body);
  font-style: italic;
  color: var(--olive);
  font-size: 16px;
}

.subheader {
  font-size: 11px; 
  letter-spacing: 0.08em; 
  color: var(--muted); 
  margin-top: 3px;
}

.breadcrumb {
  padding: 11px 26px;
  border-bottom: 0.5px solid var(--muted);
  font-size: 10px;
  letter-spacing: 0.06em;
  display: flex;
  align-items: center;
  gap: 9px;
  background: var(--bg);
}

.breadcrumb a { 
  color: var(--violet); 
  text-decoration: none; 
}

.breadcrumb a:hover { 
  border-bottom: 2px solid var(--pink); 
}

.breadcrumb .sep { 
  color: #b3ab9b; 
}
.breadcrumb .here {
   color: var(--muted); 
  }

.faux-tabla{ 
  border-top: var(--border);
 }

.faux-tabla-fila {
  padding: 18px 0px;
  border-bottom: 1.5px solid var(--hairline);
  display: flex;
  gap: 12px;
}

.faux-tabla-fila:last-child { 
  border-bottom: var(--border); 
}

.faux-tabla-fila {
  flex: none;
}

.faux-tabla-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--olive);
  width: 120px;
  flex: none;
  padding-top: 2px;
}

.faux-tabla-fila p { 
  margin: 0; 
  font-size: 15px; 
  line-height: 1.7; 
}

.box { 
  border: var(--border); 
  padding: 18px;
 }

.box p { 
  margin: 0 0 12px; 
  font-size: 13px; 
  line-height: 1.7; 
}
.box-link { 
  font-size: 12px;
  color: var(--violet);
  text-decoration: none; 
}

.box-link:hover { 
  border-bottom: 2px solid var(--pink); 
}

.mini-grid { 
  display: grid; 
  grid-template-columns: 1fr 1fr; gap: 10px; 
}

.mini {
  text-decoration: none;
  color: inherit;
  border: var(--border);
  padding: 12px;
  font-size: 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.mini:hover { 
  background: var(--violet-wash); 
}

.rows { border-top: var(--border); }
.row {
  display: flex;
  gap: 18px;
  align-items: baseline;
  padding: 16px 2px;
  border-bottom: 1.5px solid var(--hairline);
  text-decoration: none;
  color: inherit;
}
.row:last-child { border-bottom: var(--border); }
.row:hover { background: var(--bg); }
.row .date { font-size: 12px; color: var(--faint); width: 92px; flex: none; }
.row .title { font-size: 15px; flex: 1; }
.row .arrow { color: var(--violet); }
.row .meta { font-size: 12px; color: var(--faint); }

/* ---------- estilando de forma específica tipos de texto ---------- */

.notita {
  color:var(--olive);
font-style:italic;
}

.chiqui {
  color:var(--credits);
  font-size:10px;
  font-family:sans-serif;
}

.link-tranca {
  color:var(--credits);
  font-size:10px;
  font-family:sans-serif;
}

.link-tranca:hover {
  border-bottom: 0.5px solid var(--credits);
}

.cute{
  color:var(--pink);
}

.ceja {
 font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--violet);
  margin-bottom: 14px;
}

.sidebar-text {
  font-size: 12px;
  margin: 0;
  width: fit-content;
  color:var(--ink);
}

.sidebar-text:hover {
border-bottom: 2px solid var(--pink);
}

.link-sidebar {
  color:var(--ink);
  font-size:12px;
}

.link-oculto {
  color:var(--ink);
}

.link-oculto:hover {
  border-bottom: none;
}

.cute-intro {
  font-style: italic;
}

/* ---------- fotos ---------- */

.carpeta {
height: 70px;
}

.aguilucha-img {
  float: right;
  height: 350px;
  margin: -50px 0px 10px 0px;
}

/* ---------- ítems personalizados index: carpeta-span (carpetitas con nombre de libros moderados por mi) ---------- */
.carpeta-span {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
}

/* ---------- ítems personalizados contacto: form ---------- */
.form { display: flex; flex-direction: column; gap: 16px; max-width: 480px; }
.field { font-size: 12px; letter-spacing: 0.08em; }
.field-label {
  font-weight: 600;
  text-transform: uppercase;
  color: var(--olive);
  margin-bottom: 7px;
}
.field input, .field textarea {
  font-family: var(--body);
  font-size: 14px;
  width: 100%;
  padding: 12px 14px;
  border: var(--border);
  background: var(--surface);
  outline: none;
  color: var(--ink);
}
.field textarea { resize: vertical; }
.field input:focus, .field textarea:focus { box-shadow: 4px 4px 0 var(--violet); }

.btn {
  font-family: var(--body);
  font-weight: 600;
  font-size: 14px;
  color: var(--surface);
  background: var(--violet);
  border: var(--border);
  padding: 13px 26px;
  box-shadow: 5px 5px 0 var(--ink);
  cursor: pointer;
}
.btn:hover { box-shadow: 2px 2px 0 var(--ink); }

/* ---------- pagination ---------- */
.pager { display: flex; gap: 8px; justify-content: center; margin-top: 28px; }
.pager a {
  border: var(--border);
  padding: 7px 13px;
  font-size: 13px;
  text-decoration: none;
  color: inherit;
}
.pager a:hover { background: var(--violet-wash); }
.pager a.active { background: var(--ink); color: var(--surface); }

/* ---------- responsive SOLO PORQUE ME SIENTO OBLIGADA AGUANTE DESKTOP ONLY + notas porque me olvido de estas cosas que no me importan ---------- */
  /* ---------- breakpoint 820px, le achico paddings porque quedan muy enormes en pantallas más chicas ---------- */
  @media (max-width: 820px) {
    body { padding: 20px 16px; }

   /* ---------- vuelvo a una columna ---------- */
  .split {
    grid-template-columns: 1fr;
  }

   /* ---------- ajusto paddings en main y sidebar, le saco el borde a la derecha xq las columnas se van a apilar hacia abajo, hence, border va abajo ---------- */
  .main {
    padding: 26px 6px;
    border-right: none;
    border-bottom: var(--border);
  }

  .sidebar {
    padding: 30px 6px;
  }

  /* la imagen deja de flotar a la derecha: se centra arriba del texto. ponemos max-width para que no se deforme toda en escala */
  .aguilucha-img {
    float: none;
    display: block;
    height: auto;
    max-width: 260px;
    margin: 0 auto 20px;
  }
}

  /* ajustando las faux-tablas en las partes de archivo del club. las convierto en columna una abajo de la otra, con menor gap, y que permita wrappear */
.faux-tabla-fila {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: 14px 0;
  }

  .faux-tabla-label {
    flex: initial;
  }