:root{color-scheme:dark;--bg:#101513;--ink:#edf2ee;--muted:#a5b3ab;--line:#35483c;--accent:#b4d78d}*{box-sizing:border-box;letter-spacing:0}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 system-ui,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}header{padding:20px 32px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}header>a{font-weight:700;color:var(--ink)}nav{display:flex;gap:24px}main{max-width:1160px;margin:auto;padding:36px 30px}.heading{display:flex;justify-content:space-between;align-items:center;gap:22px}.eyebrow,.meta{font:11px/1.7 Consolas,monospace;color:var(--muted)}h1{font:42px/1.15 Georgia,serif;margin:10px 0}h2{font:27px/1.25 Georgia,serif;margin:8px 0 14px}p{color:var(--muted);margin:8px 0 16px}.toolbar{display:flex;gap:18px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin-top:28px}.toolbar label{font-size:13px}.toolbar input{flex:1;min-width:0}.toolbar span{white-space:nowrap;font-size:12px;color:var(--muted)}input[type=search],textarea{background:#171f1a;border:1px solid #586d5d;border-radius:4px;color:var(--ink);padding:12px;font:inherit}.book{display:grid;grid-template-columns:145px minmax(0,1fr);gap:30px;padding:28px 0;border-bottom:1px solid var(--line);align-items:center}.book img{width:145px;height:210px;object-fit:contain;background:#171f1a}.book p{max-width:750px}.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:13px}.actions a:nth-child(2){color:var(--ink);border-bottom:1px solid var(--accent)}.rights{font-size:12px;line-height:1.75;margin:22px 0 38px}#ruta{border-top:1px solid var(--line);padding-top:24px}#progress-label{font-size:13px;color:var(--accent)}progress{width:100%;height:6px;accent-color:var(--accent);margin:18px 0}.lesson{border-bottom:1px solid var(--line);padding:20px 0}.lesson label{display:flex;align-items:center;gap:12px;font-weight:600}.lesson input{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}.lesson p{margin-left:30px;font-size:14px}.lesson details{margin-left:30px;font-size:13px}.lesson details p{margin-left:0}summary{cursor:pointer;color:var(--accent)}.notes-label{display:block;font-weight:600;margin:26px 0 10px}textarea{width:100%;resize:vertical;min-height:130px}button{background:#243c2b;color:var(--ink);border:1px solid #5c7b59;border-radius:4px;padding:10px 14px;font:inherit;cursor:pointer}#saved{color:var(--muted);font-size:12px}#ruta>.actions{margin-top:12px}footer{border-top:1px solid var(--line);font-size:12px;color:var(--muted);margin-top:36px;padding-top:20px}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(max-width:650px){header{padding:18px 16px;font-size:12px}nav{gap:12px}main{padding:26px 18px}.heading{align-items:flex-start;flex-direction:column;gap:8px}h1{font-size:34px}h2{font-size:24px}.toolbar{flex-wrap:wrap;gap:10px}.toolbar label{width:100%}.book{grid-template-columns:85px minmax(0,1fr);gap:16px;align-items:start}.book img{width:85px;height:135px}.book h2{font-size:22px;overflow-wrap:anywhere}.actions{gap:14px}.book p{font-size:13px}.meta{font-size:10px!important}.lesson p,.lesson details{margin-left:0}}
#conocimiento{margin-top:30px;border-top:1px solid var(--line);padding-top:24px}.knowledge-fragment{border-bottom:1px solid var(--line);padding:20px 0;scroll-margin-top:20px}.knowledge-fragment h3{font-size:16px}.knowledge-fragment blockquote{margin:12px 0;border-left:2px solid var(--accent);padding-left:18px;color:var(--ink)}.knowledge-fragment p,.knowledge-fragment a{font-size:13px}
.tag-gratis{font:10px Consolas,monospace;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;color:#b4d78d;border:1px solid #b4d78d55;background:#b4d78d14;margin-left:10px;vertical-align:middle}

/* ---- identidad alineada con la portada: mismo acento, misma serif de título, mismo ritmo ---- */
:root{--accent:#c6ec97;--panel:#171b1a}
body{font-family:Arial,Helvetica,sans-serif}
header{height:88px;padding:0 40px;box-sizing:border-box}
header>a{font-size:20px;letter-spacing:-.01em}
nav a{color:var(--muted);font-size:13px}
nav a:hover{color:var(--accent);text-decoration:none}
main{padding:52px 40px 60px}
h1{font-weight:500;letter-spacing:-.01em}
.eyebrow{color:var(--accent)}
section{padding-bottom:8px}

/* libros: de fila plana a tarjeta con la misma sensación que las de mercado */
#books{display:grid;gap:18px;margin-top:24px}
.book{display:grid;grid-template-columns:145px minmax(0,1fr);gap:30px;padding:26px;border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:6px;background:var(--panel);align-items:center;transition:border-color .15s,transform .15s}
.book:hover{border-color:#6b856d;transform:translateY(-2px)}
.book img{border-radius:2px;box-shadow:0 10px 24px -12px rgba(0,0,0,.6)}
.book h2{font-size:24px}
.meta{color:var(--accent);opacity:.85}

/* citas documentales: tratamiento de comilla, no un párrafo gris más */
.knowledge-fragment{border-bottom:1px solid var(--line);border-radius:0}
.knowledge-fragment h3{font:12px Consolas,monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.knowledge-fragment blockquote{font:italic 20px/1.5 Georgia,serif;color:var(--ink);border-left:2px solid var(--accent)}
.knowledge-fragment p{font-size:13px}

/* ruta de estudio: cada paso como tarjeta, coherente con el resto */
.lesson{border:1px solid var(--line);border-radius:6px;background:var(--panel);padding:20px 22px;margin-bottom:14px}
.lesson label{font-size:15px}
progress{-webkit-appearance:none;appearance:none;border:0;border-radius:4px;overflow:hidden;background:var(--panel)}
progress::-webkit-progress-bar{background:var(--panel)}
progress::-webkit-progress-value{background:var(--accent)}
progress::-moz-progress-bar{background:var(--accent)}
button{background:transparent;border:1px solid #75a26955;color:var(--accent);font-weight:600}
button:hover{background:#2c3b2e}
input[type=search]{border-radius:6px}

@media(max-width:650px){main{padding:32px 20px 44px}.book{border-radius:6px;grid-template-columns:minmax(0,1fr);gap:18px;padding:20px}.book img{width:min(180px,60%);margin:0 auto;display:block}}
/* Cabecera en móvil: la marca en una línea y la navegación debajo, sin partir los enlaces. */
@media(max-width:650px){header{height:auto;flex-wrap:wrap;gap:8px 16px;padding:14px 20px;align-items:center}header>a{font-size:18px;white-space:nowrap}header nav{width:100%;gap:18px;flex-wrap:wrap}header nav a{white-space:nowrap;font-size:13px}}
