@font-face{font-family:Chronicle Cover Printed;src:url(/a-fantasian-chronicle/assets/fonts/printed/cardinal.ttf) format("truetype");font-display:swap}@font-face{font-family:Chronicle Printed Alternate;src:url(/a-fantasian-chronicle/assets/fonts/printed/cardinal_alt.ttf) format("truetype");font-display:swap}@font-face{font-family:Chronicle Printed;src:url(/a-fantasian-chronicle/assets/fonts/printed/cardinal.ttf) format("truetype");font-display:swap}@font-face{font-family:Chronicle Printed Alternate;src:url(/a-fantasian-chronicle/assets/fonts/printed/cardinal_alt.ttf) format("truetype");font-display:swap}@font-face{font-family:Chronicle Hand Achilles;src:url(/a-fantasian-chronicle/assets/fonts/handwritten/achilles.ttf) format("truetype");font-display:swap}@font-face{font-family:Chronicle Hand Deigratt;src:url(/a-fantasian-chronicle/assets/fonts/handwritten/deigratt.ttf) format("truetype");font-display:swap}@font-face{font-family:Chronicle Hand Gothique;src:url(/a-fantasian-chronicle/assets/fonts/handwritten/gothique.otf) format("opentype");font-display:swap}:root{--vellum: #eee1bd;--bone: #f7efd6;--ink: #342416;--rubric: #9d2f27;--purple: #3f2c63;--lapis: #263f7c;--malachite: #356846;--ochre: #b58a2a;--soot: #17120d;color:var(--ink);background:var(--soot);font-family:Chronicle Printed,Iowan Old Style,Palatino,Georgia,serif}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,select{font:inherit}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--lapis);outline-offset:3px}.app-shell{min-height:100vh;padding:clamp(.75rem,3vw,2rem);background:radial-gradient(circle at top,#2b2118,var(--soot))}.controls{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:0 auto 1rem;max-width:68rem}.controls button,.controls select{border:1px solid #6f5735;background:var(--bone);color:var(--ink);padding:.55rem .75rem}.is-cover .controls{margin-top:1rem;order:2}.stage{display:grid;place-items:start center}.book-cover{position:relative;display:grid;place-items:center;width:min(92vw,34rem);aspect-ratio:.72;margin:3vh auto 1rem;color:#b08b1a;background:linear-gradient(90deg,rgba(159,7,7,.05),transparent 18%,transparent 82%,rgba(0,0,0,.28)),repeating-linear-gradient(45deg,rgba(159,110,3,.08) 0 2px,transparent 2px 16px),#21150f;border:12px double #a26e1b;box-shadow:0 22px 70px #0000009e;overflow:hidden}.cover-art{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;opacity:.84;pointer-events:none}.book-cover h1{z-index:1;max-width:16rem;margin:0;font-family:Chronicle Cover Printed,Chronicle Printed Alternate,Chronicle Printed,Georgia,serif;font-size:clamp(2.2rem,7vw,4.6rem);line-height:1.25;text-align:center;letter-spacing:0;text-shadow:0 2px 0 rgba(255,255,255,.42),0 0 16px rgba(239,168,13,.28)}.cover-glyphs{position:absolute;z-index:1;inset:auto 14% 15%;min-height:1.2rem;border-top:1px solid rgba(255,174,0,.45);border-bottom:1px solid rgba(255,174,0,.28);pointer-events:none}.folio{position:relative;isolation:isolate;width:min(100%,68rem);min-height:82vh;padding:clamp(1.3rem,4vw,3.6rem);background:linear-gradient(90deg,rgba(88,61,35,.09),transparent 16%,transparent 84%,rgba(88,61,35,.09)),repeating-linear-gradient(2deg,rgba(80,58,30,.035) 0 2px,transparent 2px 7px),var(--vellum);border:1px solid #8c6b37;box-shadow:0 18px 50px #00000073;overflow:hidden}.folio-content{position:relative;z-index:1}.filigree-canvas{display:block;image-rendering:pixelated;pointer-events:none}.filigree-page-canvas{position:absolute;z-index:2;inset:clamp(.35rem,1.2vw,.85rem);width:calc(100% - clamp(.7rem,2.4vw,1.7rem));height:calc(100% - clamp(.7rem,2.4vw,1.7rem));opacity:.56}.filigree-page-canvas.complexity-simple{opacity:.42}.filigree-page-canvas.complexity-ornate{opacity:.68}.filigree-block-target{position:relative;isolation:isolate;padding:1rem 1.25rem;margin-block:.35rem 1.15rem;break-inside:avoid}.filigree-block-target.complexity-simple{padding:.75rem 1rem}.filigree-block-target.complexity-ornate{padding:1.2rem 1.45rem}.filigree-block-canvas{position:absolute;z-index:-1;inset:-.12rem;width:calc(100% + .24rem);height:calc(100% + .24rem);opacity:.62}.filigree-inline{position:relative;isolation:isolate;display:inline-block;max-width:100%;padding:.24em .52em;margin:.08em .14em;text-align:initial}.filigree-inline-canvas{position:absolute;z-index:-1;inset:-.1em -.16em;width:calc(100% + .32em);height:calc(100% + .2em);min-width:2.2em;opacity:.62}.filigree-word{color:#2f274f;font-weight:600}.filigree-sentence{line-height:1.75}.folio-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;border-bottom:2px solid rgba(157,47,39,.65);margin-bottom:1rem;padding-bottom:.35rem}.folio-mark-line{display:flex;gap:.45rem;color:var(--rubric)}.folio-mark{font-family:Chronicle Printed Alternate,Chronicle Printed,Georgia,serif;color:var(--purple);font-size:1.45rem}.running-rubric{margin:0;color:#60462a;font-variant:small-caps;text-align:right}.folio-body{columns:2 19rem;column-gap:2.5rem;line-height:1.62;max-width:59rem;margin:0 auto}.family-hymn .folio-body,.family-lament .folio-body{columns:1;max-width:44rem}.manuscript-p{margin:0 0 1rem;text-align:justify}.dropcap:first-letter{float:left;font-family:Chronicle Printed Alternate,Chronicle Printed,Georgia,serif;font-size:4.2rem;line-height:.78;color:var(--rubric);padding-right:.25rem}.rubric{color:var(--rubric);font-variant:small-caps;break-inside:avoid}.quotation{border-left:3px solid var(--ochre);margin:0 0 1rem;padding-left:1rem;break-inside:avoid}.quotation cite{display:block;color:var(--purple);font-style:normal;font-variant:small-caps}.verse,.quotation,.clause-list,.genealogy,.colophon{break-inside:avoid}.verse p{margin:.1rem 0 .1rem 1.5rem;text-indent:-1.5rem}.refrain{color:var(--rubric);font-style:italic}.clause-list{padding-left:1.45rem}.clause-list li{margin-bottom:.35rem}.genealogy{color:var(--lapis);margin-bottom:1rem}.uncertain-name{text-decoration:underline wavy rgba(157,47,39,.75)}.inline-addition{color:var(--purple)}.lacuna{display:flex;align-items:center;gap:.6rem;margin:1rem 0;color:#6f5735;break-inside:avoid}.abraded-line{flex:1;height:.75rem;background:repeating-linear-gradient(90deg,rgba(80,58,30,.4) 0 18px,transparent 18px 29px);filter:blur(.4px)}.sigil{display:inline-block;width:1.05em;height:1.05em;vertical-align:-.16em;color:currentColor}.inline-sigil{margin-right:.1rem}.note-marker,.note-return{color:var(--purple);text-decoration:none}.footnote-region{column-span:all;margin-top:1.4rem;padding-top:.55rem;font-size:.9rem}.footnote-rule{height:.45rem;margin-bottom:.55rem;background:repeating-linear-gradient(90deg,var(--rubric) 0 12px,transparent 12px 22px,var(--ochre) 22px 32px,transparent 32px 42px);opacity:.55}.footnote-entry,.colophon{color:var(--hand-ink);font-family:var(--hand-font),"Chronicle Hand Deigratt","Chronicle Printed",serif;transform:rotate(var(--hand-tilt))}.footnote-entry{overflow-wrap:anywhere;max-inline-size:100%;margin:.35rem 0;padding-left:1.2rem;text-indent:-1.2rem}.colophon{column-span:all;margin-top:1rem;padding-top:.45rem;border-top:1px solid rgba(80,58,30,.25)}.autograph{font-family:var(--hand-font),"Chronicle Hand Achilles",serif;font-size:1.08em}.folio-art{break-inside:avoid;margin:0 0 1rem;text-align:center}.folio-art canvas{width:144px;height:144px;image-rendering:pixelated;border:3px solid var(--ink);background:var(--bone)}.folio-art figcaption{display:flex;justify-content:center;gap:.2rem;margin-top:.25rem;color:var(--purple);font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.font-probe{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.failure{min-height:auto;max-width:42rem}@media(max-width:720px){.app-shell{padding:.5rem}.folio{min-height:80vh;padding:1.2rem}.folio-body{columns:1}.folio-header{grid-template-columns:1fr;text-align:center}.folio-mark-line{justify-content:center}.running-rubric{text-align:center}.controls{justify-content:stretch}.controls button,.controls select{flex:1 1 12rem}}@media(prefers-reduced-motion:no-preference){.folio{animation:ink-settle .22s ease-out}@keyframes ink-settle{0%{opacity:.72;transform:translateY(4px)}to{opacity:1;transform:none}}}
