:root{--navy:#102d55;--deep:#0a2141;--blue:#a7c6e3;--ice:#eff6fb;--gold:#dbc393;--text:#e9f1f8}*{box-sizing:border-box}body{margin:0;background:var(--deep);color:var(--text);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background-image:radial-gradient(ellipse at 50% 10%,#25466c 0,transparent 55%),linear-gradient(#102d55,#091c36);min-height:100vh}button,a,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:20px;z-index:9;background:white;color:var(--navy);padding:12px}.skip:focus{top:10px}.snow{position:absolute;inset:0 0 auto;height:950px;pointer-events:none;opacity:.28;background-image:radial-gradient(circle,#d9e9f8 1px,transparent 1.7px),radial-gradient(circle,#fff 1px,transparent 1.5px);background-size:121px 137px,193px 167px;background-position:30px 70px,89px 13px;mask-image:linear-gradient(black,transparent);z-index:-0}.masthead{max-width:1320px;margin:auto;padding:30px 52px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff13;position:relative}.brand{text-decoration:none;line-height:1.1}.brand>span{font-size:28px;letter-spacing:-1.4px;font-weight:750}.brand span span,.footer-brand span{color:#accfee}.brand i{display:block;font-size:8px;font-weight:500;font-style:normal;letter-spacing:2.3px;margin-top:8px;color:#bbd0e3}.brand img{width:180px;max-height:65px;object-fit:contain}.edition{text-align:right;font-size:10px;letter-spacing:2.5px;color:#c6d9e9}.edition b{display:block;font:12px Georgia,serif;letter-spacing:.5px;color:#d7c6a5;margin-top:5px}.hero{text-align:center;max-width:800px;margin:0 auto;padding:55px 20px 28px;position:relative}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2.5px;color:#c1d8eb;margin:0 0 15px;display:flex;justify-content:center;align-items:center;gap:13px}.eyebrow>span{display:inline-block;width:26px;height:1px;background:#b5cadd75}.hero-star{font-size:37px;color:var(--gold);line-height:1.2;margin-bottom:12px}h1{font:normal clamp(35px,5vw,60px)/1.09 Georgia,"Times New Roman",serif;letter-spacing:-1.4px;margin:0;color:#f7f8fb}h1 em{font-weight:400;color:#c5dcf0;font-size:1.23em;line-height:1.2}.motto{font:italic 23px Georgia,serif;color:#decba6;margin:17px 0}.intro{font-size:14px;max-width:530px;margin:0 auto;color:#becfe0;line-height:1.8}.status-ribbon{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:10px 18px;border:1px solid #b9d6ed30;border-radius:99px;background:#081d3633;font-size:12px;color:#d2e3f0;margin-top:26px}.live-dot{height:5px;width:5px;flex-shrink:0;border-radius:50%;background:#c8b78e;box-shadow:0 0 10px #dbc39350}.countdown{font-size:22px;font-family:Georgia,serif;letter-spacing:1px;margin:12px 0 0}.timezone{font-size:10px;color:#a6bdd1;letter-spacing:.3px;margin:10px 0}.preview-banner{background:#dbc393;color:#102d55;padding:8px;font-size:12px}.calendar-section{max-width:1216px;margin:18px auto 0;padding:0 36px}.section-top{display:flex;justify-content:space-between;border-bottom:1px solid #b6c9dd30;padding-bottom:14px;margin-bottom:30px;font-size:10px;letter-spacing:2px;color:#c7d7e6}.legend{letter-spacing:.3px;color:#a5bdd2}.legend i{display:inline-block;width:5px;height:5px;background:var(--gold);border-radius:50%;margin:0 7px 2px}.calendar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:21px 18px;align-items:end}.door{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;height:195px;border:none;padding:35px 8px 18px;clip-path:polygon(0 18%,50% 0,100% 18%,100% 100%,0 100%);background:linear-gradient(115deg,#b7cce0,#f5f8fa 35%,#cbdbe8);color:var(--navy);cursor:pointer;isolation:isolate;transition:filter .2s,transform .2s;box-shadow:inset 0 -5px #9cb6ce}.door:before{content:"";position:absolute;inset:8px 8px 10px;clip-path:polygon(0 17%,50% 0,100% 17%,100% 100%,0 100%);background:linear-gradient(125deg,#f8fbfd,#d4e2ed);z-index:-1}.door:after{content:"";width:calc(100% - 31px);height:62%;position:absolute;bottom:15px;left:15px;border:1px solid #779bb251;z-index:-1;box-shadow:inset 2px 1px 0 #fff9,inset -2px -1px #52748b18}.door:nth-child(4n+2){background:linear-gradient(115deg,#52749d,#809dbe 42%,#365a85);color:#e4eff8}.door:nth-child(4n+2):before{background:linear-gradient(120deg,#52769e,#2f527d)}.door:nth-child(4n+2):after{border-color:#b4cce945;box-shadow:inset 1px 1px #c5e0ff1a}.door:nth-child(4n+3){background:linear-gradient(115deg,#c2d1dc,#e4ebf0 45%,#a6bccd)}.roof-star{position:absolute;top:22px;font-size:19px;line-height:1;color:#7793ad}.door:nth-child(4n+2) .roof-star{color:#c5d9e9}.day-num{font:normal 49px/1.15 Georgia,serif;letter-spacing:-2px;margin-top:3px}.door-label{font-size:8px;letter-spacing:1.5px;margin-top:7px;text-transform:uppercase;max-width:100%}.door-icon{position:absolute;right:20px;top:62%;font-size:13px;color:#7895ac}.ornament{display:block;font:20px/1 Georgia,serif;color:#829cb0;margin-top:12px}.door:nth-child(4n+2) .ornament{color:#a8bfd5}.door.today{background:linear-gradient(120deg,#c3a872,#f5e4bc,#a3895b);color:#173453}.door.today:before{background:linear-gradient(120deg,#f2e6ce,#dfcca3)}.door.today:after{border-color:#9f834977}.door.today .roof-star{color:#8e7038}.door.past{filter:brightness(.85)}.door.past .door-label{letter-spacing:.6px}.door:hover{filter:brightness(1.08);transform:translateY(-4px)}.door:focus-visible{outline:none;filter:brightness(1.15);background:var(--gold)}.door.locked{cursor:default}.door.opening{animation:reveal .36s ease-out}.how{display:flex;justify-content:center;align-items:center;gap:28px;text-align:center;margin:35px 0 20px;color:#abc1d5;font-size:12px}.how strong{font:italic 18px Georgia,serif;color:#dbe7f0;display:inline-block;margin-bottom:7px}.tiny-star{font-size:28px;color:#b7c8da}.details{max-width:760px;margin:22px auto 48px;padding:0 28px}details{border-bottom:1px solid #c3d8eb20;padding:13px 0}summary{font-size:12px;color:#bdcfe0;cursor:pointer}details p{font-size:12px;color:#adc4d8;line-height:1.9}footer{border-top:1px solid #bdd3e41c;text-align:center;padding:32px 20px 30px;background:#06172e44;font-size:10px;color:#9db4c8}.footer-brand{font-size:21px;letter-spacing:-1px;font-weight:700;color:#edf4fa;margin-bottom:10px}.collaborator{font-size:11px}.collaborator strong{font-weight:550;color:#dce6ed;margin-left:5px}.collaborator img{max-width:110px;max-height:50px;display:block;margin:10px auto}footer p{margin:10px 0 20px}footer>span{font-size:9px;color:#7993aa}.page-error{text-align:center;color:#f0d4ad;font-size:14px}.quiet-button{display:block;margin:10px auto;background:none;border:1px solid #afc4d8;color:#d9e6f2;padding:8px 18px;border-radius:5px;cursor:pointer}dialog{border:1px solid #a9bfd3;border-radius:13px;width:min(760px,calc(100% - 30px));max-height:90vh;padding:48px 40px 36px;color:var(--navy);background:#f2f6f8;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#04152bd9;backdrop-filter:blur(6px)}.close{position:absolute;right:12px;top:9px;width:34px;height:34px;border:0;background:none;color:#49627b;font-size:28px;cursor:pointer}.modal-content{display:grid;grid-template-columns:215px 1fr;gap:32px;align-items:start}.cover-wrap{text-align:center}.cover-wrap img{width:100%;height:318px;object-fit:contain;filter:drop-shadow(4px 9px 10px #102d5530)}.cover-fallback{height:318px;background:linear-gradient(140deg,#31547c,#102a4d);color:#e6eef6;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px;box-shadow:5px 8px 15px #102d5530;border-left:5px solid #061d3a}.cover-fallback>span{font-size:8px;letter-spacing:2px;color:#bdcfe0}.cover-fallback strong{font:24px/1.2 Georgia,serif;margin:25px 0 14px}.cover-fallback small{font-size:11px}.cover-fallback i{font-size:34px;color:var(--gold);font-style:normal;margin-top:25px}.format{display:block;font-size:8px;letter-spacing:1.2px;margin-top:19px;color:#657e93}.book-info .eyebrow{justify-content:flex-start;color:#617b95;font-size:9px;margin:0 0 10px}h2{font:32px/1.1 Georgia,serif;margin:0 0 9px;letter-spacing:-.7px}.author{font-size:13px;color:#637b91;margin:0 0 22px}.description{font-size:14px;line-height:1.8;color:#3d5970;margin:0 0 22px}.stock{font-size:12px;color:#49627c;margin:0 0 13px}.primary{display:flex;align-items:center;justify-content:center;gap:22px;min-height:47px;background:#173e69;color:#f6f9fc;border:0;text-decoration:none;border-radius:5px;padding:12px 18px;font-size:13px;font-weight:600;width:100%;cursor:pointer}.primary:hover{background:#245383}.primary:disabled{background:#a5b6c4;color:#eef2f5;cursor:default}.modal-message{font-size:12px;line-height:1.65;color:#7f492c}.download-note{font-size:10px;line-height:1.7;color:#637b91}.ensayo{max-width:650px;margin:70px auto;padding:30px;background:#f3f6f9;color:#173453;border-radius:8px}.ensayo h1{font-size:32px;color:#173453}.ensayo label{display:block;margin:20px 0}.ensayo input{display:block;width:100%;padding:10px;font:inherit;margin-top:7px}.ensayo a{display:block;margin-top:15px}.ensayo .primary{margin-top:10px}@keyframes reveal{from{transform:perspective(600px) rotateY(0)}to{transform:perspective(600px) rotateY(-65deg);opacity:.5}}@media(min-width:1500px){.calendar-section{max-width:1300px}.door{height:212px}}@media(max-width:950px){.masthead{padding:25px 32px}.calendar{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.calendar-section{max-width:740px}.door{height:218px}.hero{padding-top:40px}.hero h1{font-size:50px}.day-num{font-size:54px}.roof-star{top:26px}}@media(max-width:540px){.masthead{padding:22px 22px}.brand>span{font-size:24px}.brand i{font-size:6px;letter-spacing:1.9px}.edition{font-size:8px;letter-spacing:1.4px}.edition b{font-size:10px}.hero{padding:35px 24px 15px}.hero h1{font-size:37px;letter-spacing:-1px}.eyebrow{font-size:8px;letter-spacing:1.8px}.hero-star{font-size:29px}.motto{font-size:21px}.intro{font-size:12px}.status-ribbon{font-size:10px;padding:10px 13px}.calendar-section{padding:0 23px;margin-top:22px}.calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.door{height:190px}.roof-star{top:21px}.day-num{font-size:47px}.section-top{font-size:8px;letter-spacing:1.1px;margin-bottom:23px}.legend{font-size:8px}.door-label{font-size:7px}.how{gap:12px;font-size:10px}.how strong{font-size:16px}.tiny-star{font-size:22px}.modal-content{grid-template-columns:1fr;gap:23px}.cover-wrap{width:155px;margin:auto}.cover-wrap img,.cover-fallback{height:225px}.cover-fallback strong{font-size:20px;margin:15px 0}.cover-fallback i{margin-top:12px;font-size:25px}.cover-fallback>span{font-size:6px}.cover-fallback small{font-size:9px}.format{font-size:7px;margin-top:12px}dialog{padding:40px 25px 25px}.book-info .eyebrow{justify-content:center}.book-info h2,.author{text-align:center}h2{font-size:29px}.author{margin-bottom:15px}.description{font-size:13px;margin-bottom:18px}.ensayo{margin:25px 15px;padding:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Cabecera compacta: la primera fila queda dentro de una pantalla de portátil. */
.masthead{padding:16px 42px}.header-end{display:flex;align-items:center;gap:28px}.library-link{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:11px;color:#d7e7f4;border:1px solid #b9d6ed35;border-radius:5px;padding:7px 12px}.library-link:hover{background:#c0d9f315}.hero{max-width:850px;padding:20px 22px 8px}.hero>.eyebrow{margin-bottom:9px;font-size:9px}.hero-star{position:absolute;top:73px;left:45px;font-size:35px;opacity:.85}h1{font-size:43px;line-height:1.05;letter-spacing:-1px}h1 em{font-size:1.15em}.motto{font-size:20px;margin:9px 0}.intro{max-width:620px;font-size:12px;line-height:1.65}.status-ribbon{margin-top:13px;padding:6px 16px;font-size:11px}.countdown{font-size:18px;margin:5px 0 0}.timezone{margin:4px 0;font-size:10px}.calendar-section{margin-top:12px}.section-top{margin-bottom:20px;padding-bottom:10px}.door{height:183px}.hero .preview-banner{margin:6px auto 0;padding:4px 8px;font-size:10px}.screensaver{max-width:900px;margin:24px auto 30px;display:flex;align-items:center;gap:22px;padding:25px 28px;border:1px solid #a9c6df3a;border-radius:10px;background:linear-gradient(120deg,#284c733b,#102d5544)}.screen-icon{position:relative;width:76px;height:52px;border:2px solid #bbd2e4;border-radius:5px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#dbc393;background:radial-gradient(ellipse at center,#56799a45,transparent)}.screen-icon:before{content:"";position:absolute;width:2px;height:9px;bottom:-11px;left:calc(50% - 1px);background:#bbd2e4}.screen-icon:after{content:"";position:absolute;width:33px;height:2px;bottom:-12px;left:calc(50% - 16px);background:#bbd2e4}.screen-icon span{font-size:33px;line-height:1}.screensaver-copy{flex:1}.screensaver-copy .eyebrow{justify-content:flex-start;font-size:8px;letter-spacing:1.6px;margin-bottom:8px}.screensaver h2{font-size:24px;letter-spacing:-.4px;color:#edf4f9;margin-bottom:6px}.screensaver-copy>p:last-child{font-size:11px;color:#aec5d9;margin:0}.saver-button{background:#dae8f3;color:#153758;text-decoration:none;flex-shrink:0;padding:11px 16px;border:1px solid #d9e9f5;border-radius:5px;font-size:12px;line-height:1.7;font-weight:600}.saver-button span{font-size:10px;font-weight:500}.saver-button b{font-size:16px;margin-left:14px}.saver-button:hover{background:#f3f8fc}.footer-brand{display:inline-block;text-decoration:none}.collaborator a{text-decoration:none;border-bottom:1px solid #bdd2e24a}.collaborator a:hover{border-color:#e7f1f8}
@media(min-width:1500px){.door{height:195px}}@media(max-width:950px){.hero{padding-top:18px}.hero h1{font-size:41px}.hero-star{left:calc(50% - 310px);top:70px}.masthead{padding:15px 30px}.header-end{gap:15px}.screensaver{margin:22px 32px}.screensaver h2{font-size:22px}.screensaver{gap:17px;padding:23px}.door{height:195px}}@media(max-width:680px){.header-end .edition{display:none}.hero-star{display:none}.screensaver{flex-wrap:wrap}.saver-button{margin-left:93px}.screensaver-copy{min-width:160px}}
@media(max-width:540px){.masthead{padding:13px 22px}.brand>span{font-size:23px}.brand i{font-size:6px;margin-top:6px}.library-link{font-size:10px;padding:6px 9px;gap:7px}.hero{padding:18px 23px 6px}.hero>.eyebrow{font-size:7px;letter-spacing:1.5px;margin-bottom:10px}.hero h1{font-size:31px;line-height:1.04}.motto{font-size:18px;margin:8px 0}.intro{font-size:11px;line-height:1.65}.status-ribbon{margin-top:12px;font-size:9px;padding:6px 12px}.timezone{font-size:8px;margin:5px 0}.countdown{font-size:16px;margin-top:4px}.calendar-section{margin-top:15px}.section-top{margin-bottom:16px}.door{height:173px}.day-num{font-size:43px}.roof-star{top:20px}.door-label{font-size:7px}.ornament{font-size:18px;margin-top:9px}.how{margin:27px 0 15px}.screensaver{margin:20px 23px;padding:20px;gap:18px}.screensaver-copy{min-width:140px}.screensaver h2{font-size:21px}.screensaver-copy>p:last-child{font-size:10px}.screen-icon{width:52px;height:43px}.screen-icon span{font-size:27px}.saver-button{margin:6px 0 0;width:100%;text-align:center}.screensaver-copy .eyebrow{font-size:7px;letter-spacing:1px}}
/* La estrella vuelve a su posición original, centrada encima del título. */
.hero-star{display:block;position:static;left:auto;top:auto;width:34px;height:27px;line-height:1;font-size:27px;margin:0 auto 7px;opacity:1}
@media(max-width:540px){.hero-star{height:24px;font-size:24px;margin-bottom:6px}}

/* Pie azul claro y descarga integrada en la paleta de BookTrigger. */
.intro{max-width:700px;text-wrap:pretty}.keep-together{white-space:nowrap}
footer{background:linear-gradient(135deg,#e1ebf3,#ccdeec);border-top:1px solid #afc8dc;color:#4b6780}
footer .footer-brand{color:#16395e}footer .footer-brand span{color:#35638b}
footer .collaborator strong{color:#173b60}footer .collaborator a{border-color:#6d8ba680}footer .collaborator a:hover{border-color:#173b60}footer>span{color:#526f87}
.saver-button{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:70px;max-width:100%;padding:12px 14px 12px 21px;border:1px solid #9fc0dd70;border-radius:18px;background:linear-gradient(135deg,#315d88,#23486f);color:#f1f7fc;text-align:left;box-shadow:inset 0 1px 0 #d9eaff20,0 7px 20px #03152b30;transition:background .2s,border-color .2s,box-shadow .2s}
.saver-button:hover{background:linear-gradient(135deg,#3b6c9a,#2b557e);border-color:#c4def2bb;box-shadow:inset 0 1px 0 #e2f1ff30,0 8px 22px #03152b45}
.saver-button .saver-button-copy{display:flex;flex-direction:column;gap:3px;color:inherit;min-width:0}.saver-button-copy strong{font-size:12px;font-weight:600;line-height:1.4}.saver-button .saver-button-copy>span{font-size:10px;font-weight:400;color:#bdd4e7;line-height:1.5}
.saver-button .saver-download-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border-radius:50%;background:#d3e8f515;border:1px solid #d0e7f136;color:#dbeefa}.saver-download-icon svg{display:block;width:19px;height:19px}
@media(max-width:680px){.saver-button{margin-left:0}}
@media(max-width:540px){.saver-button{width:100%;padding:12px 15px 12px 19px;margin-top:6px;min-height:68px}.intro{max-width:100%}}

/* Aire en los espacios señalados: lema, estrella, título y aviso de apertura. */
.hero>.eyebrow{margin-bottom:14px}.hero-star{margin-bottom:13px}.motto{margin:15px 0 10px}.status-ribbon{margin-top:18px}
@media(max-width:540px){.hero>.eyebrow{margin-bottom:12px}.hero-star{margin-bottom:10px}.motto{margin:12px 0 10px}.status-ribbon{margin-top:16px}}

/* Teléfono: dos columnas, lectura cómoda y controles táctiles. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html.modal-open{overflow:hidden}
dialog{overflow-y:auto;overscroll-behavior:contain;max-height:90dvh}
@media(max-width:600px){
 .masthead{gap:12px;padding:12px max(18px,env(safe-area-inset-right)) 12px max(18px,env(safe-area-inset-left))}
 .brand{flex-shrink:0}.brand>span{font-size:24px}.brand img{width:145px;max-height:48px}
 .header-end{min-width:0;gap:0}.header-end .edition{display:none}
 .library-link{min-height:44px;padding:9px 11px;gap:8px;font-size:11px;white-space:nowrap}
 .hero{padding:20px 20px 8px}.hero>.eyebrow{font-size:8px;letter-spacing:1.25px;gap:10px;margin-bottom:14px}
 .hero-star{height:26px;font-size:26px;margin-bottom:12px}
 .hero h1{font-size:clamp(28px,8.4vw,36px);line-height:1.09;letter-spacing:-.7px}
 .motto{font-size:19px;margin:14px 0 12px}
 .intro{font-size:12.5px;line-height:1.75;max-width:380px}
 .status-ribbon{max-width:100%;min-height:36px;font-size:11px;line-height:1.55;padding:7px 13px;margin-top:17px;text-wrap:pretty}
 .timezone{font-size:10px;line-height:1.7;max-width:340px;margin:8px auto 0;overflow-wrap:anywhere}
 .countdown{font-size:18px;margin-top:8px}
 .hero .preview-banner{font-size:11px;line-height:1.6;padding:7px 10px;margin-top:10px}
 .calendar-section{padding:0 max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left));margin-top:22px}
 .section-top{gap:12px;align-items:center;font-size:10px;letter-spacing:1.1px;margin-bottom:18px;padding-bottom:12px}
 .legend{font-size:10px;letter-spacing:0;max-width:155px;text-align:right;line-height:1.5}
 .calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}
 .door{height:180px}.day-num{font-size:46px}.door-label{font-size:9px;letter-spacing:1px;line-height:1.45}
 .roof-star{top:21px;font-size:19px}.ornament{font-size:19px;margin-top:10px}
 .how{gap:12px;margin:28px 0 18px;font-size:12px;line-height:1.85}.how strong{font-size:18px;line-height:1.45}
 .how .tiny-star{font-size:22px;flex-shrink:0}
 .screensaver{display:grid;grid-template-columns:48px minmax(0,1fr);gap:18px 16px;margin:26px 18px;padding:20px}
 .screensaver-copy{min-width:0}.screensaver-copy .eyebrow{font-size:8px;line-height:1.6;letter-spacing:1.1px;margin-bottom:6px}
 .screensaver h2{font-size:23px;line-height:1.2}.screensaver-copy>p:last-child{font-size:12px;line-height:1.7}
 .screen-icon{width:48px;height:40px}.screen-icon span{font-size:26px}
 .saver-button{grid-column:1/-1;width:100%;min-height:70px;margin:4px 0 0;padding:13px 16px}
 .saver-button-copy strong{font-size:13px}.saver-button .saver-button-copy>span{font-size:11px}
 .details{padding:0 21px;margin:22px auto 34px}details{padding:0}summary{font-size:14px;line-height:1.6;padding:16px 0;min-height:54px}
 details p{font-size:13px;line-height:1.85;margin-top:0;margin-bottom:18px}
 footer{padding:28px 20px calc(24px + env(safe-area-inset-bottom));font-size:12px}
 footer .footer-brand{font-size:25px;min-height:44px;line-height:1.6;margin-bottom:4px}
 .collaborator{font-size:12px;line-height:1.8}.collaborator a{display:inline-flex;align-items:center;min-height:44px;vertical-align:middle}
 footer>span{font-size:11px;line-height:1.7;color:#405e77}footer p{margin:8px 0 18px}
 dialog{width:calc(100% - 20px);max-width:430px;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:12px 22px 24px;margin:auto;border-radius:17px;scrollbar-width:thin}
 .close{position:sticky;top:0;right:auto;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 -10px 5px auto;z-index:3;border-radius:50%;background:#f2f6f8f5;border:1px solid #c8d6e180;font-size:28px}
 .modal-content{grid-template-columns:minmax(0,1fr);gap:19px;clear:both}.book-info{min-width:0}
 .cover-wrap{width:132px;margin:0 auto}.cover-wrap img,.cover-fallback{height:198px}
 .cover-fallback{padding:17px}.cover-fallback strong{font-size:18px}.cover-fallback small{font-size:10px}
 .format{font-size:8px;letter-spacing:.8px;line-height:1.6;margin-top:10px}
 .book-info .eyebrow{justify-content:center;font-size:10px;letter-spacing:1.4px;line-height:1.7;margin-bottom:10px}
 .book-info h2{font-size:27px;line-height:1.17;letter-spacing:-.4px;text-align:center;overflow-wrap:anywhere}
 .author{font-size:14px;line-height:1.6;text-align:center;margin:10px 0 18px}
 .description{font-size:14px;line-height:1.8;margin-bottom:20px}
 .stock,.modal-message{font-size:13px;line-height:1.7}.primary{min-height:52px;font-size:14px;padding:14px 16px}
 .download-note{font-size:11px;line-height:1.8;margin-bottom:0}
 .ensayo input{font-size:16px}
}
@media(hover:none){.door:hover{transform:none;filter:none}.door:active{filter:brightness(1.09)}}
@media(max-height:520px) and (min-width:601px) and (max-width:950px){
 dialog{max-height:calc(100dvh - 20px);padding:44px 26px 22px}.modal-content{grid-template-columns:135px minmax(0,1fr);gap:24px}.cover-wrap{width:135px}.cover-wrap img,.cover-fallback{height:203px}.close{width:44px;height:44px;top:0;right:6px}
}
@media(max-width:950px){.library-link{min-height:44px}.close{width:44px;height:44px}}
@media(max-width:600px){.masthead{padding-top:max(12px,env(safe-area-inset-top))}}
