@font-face{font-family:FiabeaSerif;src:url('../assets/fonts/reader/DejaVuSerif.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{color-scheme:light;--paper:#faf5e9;--ink:#203d37;--muted:#65776b;--accent:#a34429;--line:#d9ddcd}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}button:disabled{cursor:default;opacity:.32}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button,a{touch-action:manipulation}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:12px;z-index:9;background:white;padding:16px}.skip:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.masthead{max-width:1120px;margin:auto;min-height:82px;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-family:Georgia,serif;font-size:32px;letter-spacing:-1.5px}.star{font-size:17px;color:#b77938;align-self:start;margin-top:3px}.door{width:19px;height:29px;border:1.5px solid var(--ink);border-radius:12px 12px 0 0;display:inline-block;position:relative}.door:after{content:'';position:absolute;inset:5px 4px -1px 3px;border:1px solid var(--ink);border-radius:9px 9px 0 0;transform:skewY(-14deg);transform-origin:bottom left}.tagline{font-size:12px;letter-spacing:.06em;color:var(--muted)}
.entry{max-width:960px;min-height:calc(100svh - 110px);margin:0 auto;display:grid;grid-template-columns:360px 1fr;gap:75px;align-items:center;padding:36px 30px 70px}.cover-portal{background:#153e3e;overflow:hidden;border-radius:180px 180px 6px 6px;box-shadow:0 16px 38px #293d2b20,0 0 0 8px #f1e9d6}.cover-portal img{display:block;width:100%;height:auto}.eyebrow{font-size:10px;letter-spacing:.16em;line-height:1.8;color:var(--muted)}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,4vw,49px);line-height:1.08;letter-spacing:-1.2px;margin:18px 0 24px}.intro{font-family:Georgia,serif;font-size:21px;line-height:1.6;color:#526356}.meta{font-size:12px;color:var(--muted);margin:24px 0 16px}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;gap:32px;border:0;background:var(--ink);color:#fff9e9;border-radius:4px;padding:17px 23px;min-height:54px}.primary:hover{background:#30574a}.primary span{font-size:22px}.text-link{display:block;text-align:center;padding:18px;font-size:13px;text-underline-offset:4px}.other-book{display:block;border-top:1px solid var(--line);padding:20px 0;margin-top:25px;font-size:12px;text-underline-offset:4px;color:var(--muted)}
.reader-tools{max-width:580px;margin:0 auto 14px;display:flex;justify-content:space-between;padding:0 10px;gap:6px}.quiet{border:0;background:transparent;color:var(--ink);min-height:44px;font-size:12px;padding:10px 12px;border-radius:5px}.quiet:hover,.quiet[aria-pressed=true]{background:#e9ebdc}.stage{position:relative;margin:auto;width:min(480px,max(360px,calc((100svh - 210px)*.5625)));max-width:100%;outline:none}.page{position:relative;aspect-ratio:9/16;width:100%;container-type:inline-size;background:#f1e9d5;box-shadow:0 8px 28px #18352a16}.art{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}.text-block{position:absolute;margin:0;padding:0;border:0;font-family:FiabeaSerif,Georgia,serif;font-weight:400;font-kerning:none;font-variant-ligatures:none;white-space:pre-wrap;overflow-wrap:normal;user-select:text;-webkit-user-select:text;cursor:text;text-rendering:geometricPrecision}.text-block::selection{background:#e6a54c;color:#172f28}.page[aria-busy=true]{opacity:.65}.reading-text{background:#fffdf6;border:1px solid var(--line);padding:25px 24px;border-radius:5px;font-family:FiabeaSerif,Georgia,serif;font-size:22px;line-height:1.65;overflow-wrap:anywhere}.reading-text p{margin:0 0 1em}.reading-text p:last-child{margin-bottom:0}.reading-text h2{font-size:24px;font-weight:400}.reader-nav{position:sticky;bottom:0;z-index:2;margin:18px auto 0;max-width:580px;background:var(--paper);padding:0 16px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.progress-track{height:2px;background:#dce2d1;margin:-1px 0 7px}.progress-track span{display:block;background:var(--accent);height:100%;transition:width 140ms ease}.nav-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.nav-button{width:48px;min-height:48px;background:var(--ink);border:0;border-radius:50%;color:#fff9ed;font-size:25px}.page-position{text-align:center;font-size:12px}.restart{display:block;margin:3px auto 0;min-height:25px;background:transparent;border:0;text-decoration:underline;text-underline-offset:3px;color:var(--muted);font-size:10px}.reader-bottom{max-width:540px;margin:12px auto 24px;padding:0 15px;display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}.reader-bottom a{text-underline-offset:4px}.notice,.book-notice,.image-error{padding:16px;border:1px solid #ccb77e;border-radius:5px;background:#fff6d9;line-height:1.5;font-size:13px}.book-notice{max-width:480px;margin:15px auto}.fatal-error,.load-status{max-width:600px;margin:70px auto;padding:24px;line-height:1.6}.image-error{position:relative;margin:8px 0}
@media(max-width:650px){.masthead{padding:12px 18px;min-height:66px}.brand{font-size:29px}.tagline{font-size:10px}.entry{display:flex;flex-direction:column;gap:30px;padding:25px 28px 36px;min-height:0}.cover-portal{width:210px;border-radius:110px 110px 4px 4px}.invitation{width:100%;max-width:390px}.eyebrow{text-align:center;font-size:9px}.invitation h1{text-align:center;font-size:36px;margin:14px 0}.intro{text-align:center;font-size:18px;margin:14px 0}.meta{text-align:center;margin-top:22px}.reader-tools{margin-bottom:7px;padding:0 5px}.stage{width:100%;max-width:430px}.reader-nav{margin-top:12px}.reader-bottom{margin-bottom:20px}.book-notice{margin:12px}.reading-text{border-radius:0}.reader-tools .quiet{min-height:44px}.other-book{text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* The complete cover remains visible, including all four corners. */
.cover-portal{overflow:visible;border-radius:4px}.cover-portal img{border-radius:4px}

/* Cornice esterna: nessuna modifica alle tavole o ai comandi. */
.masthead .brand img{display:block;width:120px;height:auto}.collection-link{font-size:12px;text-underline-offset:4px}
