/* MareNova · experiencia de lectura */
:root{--mn-surface:var(--card,var(--bg-2));--mn-text:var(--ink,var(--fg));--mn-muted:var(--muted);--mn-accent:var(--gold,var(--brand));--mn-back:var(--paper,var(--bg));--mn-font:var(--serif,'Fraunces',Georgia,serif)}
.mn-finder{border:1px solid var(--line);border-radius:24px;padding:clamp(24px,5vw,54px);background:var(--mn-surface);max-width:920px;margin:auto}
.mn-finder h3{font:500 clamp(28px,4vw,42px)/1.15 var(--mn-font);margin:18px 0 28px}
.mn-step{border:0;min-width:0}.mn-step[hidden],.mn-result[hidden]{display:none}.mn-step legend{font:500 25px/1.3 var(--mn-font);margin-bottom:22px}
.mn-choices{display:grid;gap:12px}.mn-choices label{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;padding:18px;cursor:pointer;font-size:15px;line-height:1.5}.mn-choices label:has(input:checked){border-color:var(--mn-accent);background:color-mix(in srgb,var(--mn-accent) 9%,transparent)}.mn-choices input{accent-color:var(--mn-accent);flex-shrink:0}
.mn-controls{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:28px}.mn-control{font:500 13px Inter,system-ui;color:var(--mn-text);background:var(--mn-surface);border:1px solid var(--line);border-radius:999px;padding:12px 18px;cursor:pointer;min-height:44px}.mn-control:hover{border-color:var(--mn-accent)}.mn-control:disabled{opacity:.45;cursor:default}.mn-small{font:400 12px/1.7 Inter,system-ui;color:var(--mn-muted)}.mn-progress{height:3px;background:var(--line);margin:16px 0 28px;border-radius:4px}.mn-progress span{display:block;width:33.33%;height:100%;background:var(--mn-accent);transition:width .3s}.mn-result{display:grid;grid-template-columns:150px 1fr;gap:32px;align-items:center}.mn-result img{width:150px;border-radius:4px;box-shadow:0 20px 35px #0002}.mn-result h3{margin:8px 0 16px}.mn-result p{line-height:1.7}.mn-result .btn{margin-top:18px}.mn-reader-open{display:block;margin:22px auto}.mn-reader{padding:0;border:1px solid var(--line);border-radius:20px;width:min(980px,calc(100% - 24px));max-height:calc(100dvh - 24px);color:var(--mn-text);background:var(--mn-back)}.mn-reader::backdrop{background:#000b;backdrop-filter:blur(8px)}.mn-reader-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:18px 24px;background:var(--mn-back);border-bottom:1px solid var(--line)}.mn-reader-bar strong{font:500 20px var(--mn-font)}.mn-reader-tools{display:flex;gap:6px;flex-wrap:wrap}.mn-reader-copy{padding:40px clamp(22px,7vw,90px) 60px;max-width:860px;margin:auto;font-family:var(--mn-font);font-size:var(--read-size,22px);line-height:1.85}.mn-reader-copy p{margin:0 0 24px}.mn-reader-copy .sample-end{font:400 12px Inter,system-ui;color:var(--mn-muted)}body:has(.mn-reader[open]){overflow:hidden}.mn-narration{margin:24px 0;padding:20px;border:1px solid var(--line);border-radius:12px}.mn-narration p{font:400 12px/1.7 Inter,system-ui;color:var(--mn-muted);margin:0 0 12px}.mn-narration audio{width:100%;display:block}
.mn-sound{position:fixed;bottom:18px;left:18px;z-index:40;background:var(--mn-surface);color:var(--mn-text);border:1px solid var(--line);border-radius:18px;padding:10px 14px;box-shadow:0 12px 32px #0002;width:210px;font:400 11px/1.5 Inter,system-ui}.book-page .mn-sound{bottom:92px}.mn-sound summary{cursor:pointer;font-size:12px;font-weight:500;list-style:none}.mn-sound summary::after{content:' ♫';color:var(--mn-accent)}.mn-sound .mn-control{width:100%;margin:12px 0}.mn-sound label{display:block}.mn-sound input{width:100%;accent-color:var(--mn-accent);margin:8px 0}.mn-sound p{margin:8px 0 0;color:var(--mn-muted)}.mn-sound[data-playing=true] summary::after{content:' ♫ · sonando'}.mn-feedback{max-width:790px;margin:auto;text-align:center;border:1px solid var(--line);border-radius:16px;padding:28px}.mn-feedback h3{font:400 28px var(--mn-font);margin:0 0 12px}.mn-feedback p{color:var(--mn-muted);line-height:1.8;margin:0 0 18px}
.mn-journal{max-width:900px;margin:auto}.mn-journal .h1{font-size:clamp(48px,7vw,84px);line-height:1.05}.mn-journal-body{max-width:740px;margin:auto}.mn-journal-body h2{font:500 34px/1.2 var(--mn-font);margin:42px 0 20px}.mn-journal-body p,.mn-journal-body li{font-size:17px;line-height:1.85;color:var(--ink-2);margin:0 0 20px}.mn-journal-body ul,.mn-journal-body ol{padding-left:24px}.mn-journal-body a{color:var(--mn-accent);text-underline-offset:4px}.mn-journal-body blockquote{border-left:2px solid var(--mn-accent);padding:12px 24px;margin:28px 0;font:400 25px/1.5 var(--mn-font)}.mn-journal-body table{border-collapse:collapse;width:100%;margin:24px 0;font-size:14px}.mn-journal-body th,.mn-journal-body td{padding:14px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.mn-journal-card{display:block;background:var(--mn-surface);padding:30px;border-radius:18px;border:1px solid var(--line);text-decoration:none;height:100%;transition:transform .25s}.mn-journal-card:hover{transform:translateY(-4px)}.mn-journal-card h3{font:500 29px/1.2 var(--mn-font);margin:16px 0}.mn-journal-card p{font-size:14px;line-height:1.8;color:var(--mn-muted);margin:0 0 18px}.mn-journal-card .mn-small{display:block}.mn-next{border:1px solid var(--line);border-radius:18px;padding:28px;margin:40px 0;background:var(--mn-surface)}.mn-reader .mn-sound{position:static;margin:0 auto 24px;width:100%}
.mn-control:focus-visible,.mn-choices input:focus-visible,.mn-sound summary:focus-visible,.mn-journal-card:focus-visible{outline:3px solid var(--mn-accent);outline-offset:4px}
@media(max-width:600px){.mn-result{grid-template-columns:1fr;text-align:center}.mn-result img{margin:auto;width:125px}.mn-reader-bar{padding:12px}.mn-reader-tools .mn-control{font-size:11px;padding:10px 12px}.mn-reader-copy{padding-top:28px}.mn-sound{left:12px;bottom:12px;width:180px}.book-page .mn-sound{bottom:92px}.mn-journal-body table{font-size:12px}.mn-journal-body th,.mn-journal-body td{padding:12px 6px}}
@media(prefers-reduced-motion:reduce){.mn-progress span,.mn-journal-card{transition:none}}
@media(max-width:600px){.nav:not(.menu-open) #mainMenu>li:last-child{display:none}.nav .wrap{justify-content:flex-start}.nav:not(.menu-open) #mainMenu{flex-shrink:0}.nav .menu-toggle{margin-left:auto}.nav.menu-open #mainMenu>li:last-child{display:block}}
.mn-journal-card{display:flex;flex-direction:column}.mn-journal-card>.mn-small{margin-top:auto;padding-top:12px}
