.flip-note{display:block;margin:25px auto 15px;padding:12px 20px;border:1px solid #94805a70;background:transparent;font-size:12px;min-height:44px;transition:background .2s}.flip-note:hover{background:#b89c4520}.note-secret{padding:35px 10px 20px;min-height:260px;position:relative}.note-secret:before{content:'';position:absolute;inset:20px 0;background:repeating-linear-gradient(transparent 0 34px,#72848020 35px 36px);z-index:-1}.note-secret>p{font:35px/1.35 var(--hand);color:#456977;margin:30px 0}.note-secret>.handwriting{font-size:23px;color:#94614b}.show-note-back .dialog-signature{display:none}.paper-turning{animation:paper-turn .55s cubic-bezier(.2,.7,.25,1)}[hidden]{display:none!important}@keyframes paper-turn{0%{opacity:.35;transform:perspective(1000px) rotateY(-13deg) translateX(-12px)}100%{opacity:1;transform:perspective(1000px) rotateY(0) translateX(0)}}
.living-sketches{margin:85px 0 70px;border-top:1px solid var(--line);padding-top:40px}.sketch-heading h2,.keepsake-heading h2{font-size:clamp(35px,4vw,55px);line-height:1.1;margin:18px 0}.sketch-heading h2 em{color:#927043}.sketch-heading>p{font-size:13px;color:var(--muted);line-height:1.8}.sketch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.living-sketch{position:relative;padding:25px 20px;background:#eee5d0;border:1px solid #a8946938;box-shadow:3px 5px 0 #5548310c;text-align:left;min-width:0;transition:transform .25s,box-shadow .25s}.living-sketch:nth-child(2){rotate:1deg;background:#e4e6d5}.living-sketch:nth-child(3){rotate:-1deg;background:#e5e8e1}.living-sketch:hover{transform:translateY(-5px);box-shadow:5px 12px 20px #55483115}.living-sketch>.eyebrow{font-size:8px}.sketch-art{display:block;width:150px;max-width:80%;margin:25px auto;position:relative}.sketch-art svg{width:100%;height:140px}.living-sketch h3{font:26px var(--serif);margin:15px 0}.sketch-caption{display:block;font:22px/1.2 var(--hand);color:#4c6d76;min-height:54px}.sketch-playing[data-sketch=flower] .sketch-art{animation:paper-bloom 1.8s cubic-bezier(.2,.8,.3,1)}.sketch-playing[data-sketch=lamp] .sketch-art{animation:paper-glow 3s ease-in-out}.sketch-playing[data-sketch=bird] .sketch-art{animation:paper-hop 1.8s ease-in-out}@keyframes paper-bloom{0%{transform:scale(.8) rotate(-15deg)}50%{transform:scale(1.12) rotate(10deg)}75%{transform:scale(.98) rotate(-3deg)}100%{transform:scale(1)}}@keyframes paper-glow{0%,100%{filter:drop-shadow(0 0 0 #e8c25200)}35%,75%{filter:drop-shadow(0 0 20px #e8b632);transform:scale(1.04)}}@keyframes paper-hop{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(-8px,4px) rotate(-9deg)}45%{transform:translate(20px,-28px) rotate(7deg)}70%{transform:translate(6px,3px) rotate(-5deg)}85%{transform:translate(0,-5px)}}
.keepsakes{background:#203d34;color:#f2e8ce;margin:75px 0;padding:45px;border:1px solid #b5a16d;box-shadow:inset 0 0 0 7px #ffffff05}.keepsake-heading{display:flex;justify-content:space-between;align-items:end;gap:25px}.keepsake-heading h2 em{color:#dfc385}.keepsake-heading>p{font-size:12px;line-height:1.9;color:#cad0bc;max-width:320px;padding-bottom:10px}.keepsake-rail{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d3c29940;padding:22px 0;font-size:9px;letter-spacing:1px}.keepsake-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.keepsake{display:flex;flex-direction:column;padding:20px 16px;min-height:230px;background:#eddfbb;color:#34493d;text-align:center;border:1px solid #d7c490;transition:transform .25s}.keepsake:hover{transform:translateY(-5px) rotate(-1deg)}.keepsake-number{font:9px var(--sans);letter-spacing:2px;text-align:left;opacity:.65}.keepsake svg{height:90px;margin:15px auto}.keepsake h3{font:22px/1.1 var(--serif);margin:14px 0}.keepsake>span:last-child{font-size:9px;margin-top:auto;line-height:1.6}.keepsake.missing{background:#102b2445;color:#c1c8af;border:1px dashed #d5c59b40}.missing-outline{font:55px var(--hand);opacity:.35;margin:15px 0}.keepsake-foot{font:22px/1.4 var(--hand);color:#d0ba85;margin-top:28px}.margin-find{margin:55px 0 30px;padding:20px 0;border-top:1px solid var(--line);text-align:center}.margin-find>.handwriting{font:24px var(--hand);color:#8d7955}.find-object{display:flex;align-items:center;gap:15px;background:none;margin:10px auto;padding:15px;color:inherit;transition:transform .25s}.find-object:hover{transform:rotate(-2deg) translateY(-3px)}.find-object svg{width:80px;height:75px}.find-object>span{font:13px var(--sans);border-bottom:1px dashed #9a895b;padding-bottom:5px}.focus-mode .margin-find{display:none}.night .margin-find{color:#e4d8b9}
#memory-dialog{width:min(540px,calc(100vw - 32px));max-height:90svh;overflow:auto;border:1px solid #bda778;background:#f0e5c9;color:#31483b;padding:45px 40px;text-align:center;box-shadow:0 30px 100px #0007}#memory-dialog::backdrop{background:#102d2bc9;backdrop-filter:blur(5px)}#memory-dialog[open]{animation:paper-turn .45s ease-out}.memory-close{position:absolute;right:15px;top:10px;background:none;font-size:30px;width:44px;height:44px}.memory-art{width:150px;margin:25px auto}.memory-art svg{height:130px}#memory-dialog h2{font-size:39px;line-height:1.1}.memory-line{font:29px/1.2 var(--hand);color:#4b6b78;margin:20px 0!important}#memory-dialog>p:not(.memory-line){font-size:13px;line-height:1.8}.memory-actions{display:flex;align-items:center;flex-direction:column;gap:20px;margin:25px 0 0}.memory-actions .ink-button{margin:0;font-size:12px}.memory-notebook{font-size:11px;text-decoration:underline;text-underline-offset:4px}.saved-seal{font-size:9px;border:1px solid #627c59;color:#4f6c47;padding:12px 17px;rotate:-4deg;letter-spacing:2px}.memory-status{min-height:24px;margin-top:20px}.memory-collected .memory-art{animation:paper-bloom .7s ease-out}
@media(max-width:700px){.sketch-grid{gap:12px}.living-sketch{padding:20px 12px}.living-sketch h3{font-size:22px}.sketch-caption{font-size:20px;min-height:75px}.sketch-art svg{height:100px}.keepsakes{padding:28px 20px}.keepsake-heading{display:block}.keepsake-grid{grid-template-columns:1fr 1fr}.keepsake-rail{font-size:7px}.keepsake{min-height:220px}.keepsake h3{font-size:23px}}
@media(max-width:460px){.sketch-grid{grid-template-columns:1fr}.living-sketch{display:grid;grid-template-columns:105px 1fr;column-gap:18px;align-items:center;padding:22px}.living-sketch>.eyebrow{grid-column:1/-1}.sketch-art{grid-column:1;grid-row:2/4;width:100%;max-width:100%;margin:15px 0}.living-sketch h3{grid-column:2;font-size:25px}.sketch-caption{grid-column:2;min-height:45px}.note-secret>p{font-size:29px}#memory-dialog{padding:45px 25px}.keepsake-heading h2{font-size:40px}.keepsake-grid{gap:9px}.keepsake{padding:16px 10px}}
@media(prefers-reduced-motion:reduce){.paper-turning,.sketch-playing .sketch-art,#memory-dialog[open],.memory-collected .memory-art{animation:none!important}.living-sketch,.keepsake,.find-object{transition:none}.sketch-playing[data-sketch=lamp] .sketch-art{filter:drop-shadow(0 0 12px #e8b632)}}
.living-sketch[data-sketch=flower] .flower-petals{transform-origin:60px 45px;transform:scale(.65);transition:transform 1.1s cubic-bezier(.2,.8,.3,1)}.sketch-playing[data-sketch=flower] .flower-petals{transform:scale(1.05) rotate(30deg)}.sketch-playing[data-sketch=lamp] .sketch-art:before{content:'';position:absolute;inset:10%;border-radius:50%;background:#e6bd4f33;filter:blur(18px);animation:soft-light 1.2s ease-out}.sketch-art svg{position:relative}@keyframes soft-light{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.living-sketch .flower-petals{transition:none}.sketch-playing[data-sketch=lamp] .sketch-art:before{animation:none}}

/* Small objects in the reading margin, attached to their own passage. */
.reader-prose .memory-passage{position:relative}
.memory-mark{float:right;position:relative;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;padding:5px;margin:0 0 8px 16px;background:#e6d6ac35;border:1px solid #a48d5638;border-radius:48% 45% 52% 46%;color:#4b5d49;rotate:5deg;vertical-align:middle;transition:transform .25s,background .25s,box-shadow .25s}
.memory-mark svg{width:40px;height:40px;pointer-events:none}
.memory-mark-sign{position:absolute;right:-3px;bottom:-2px;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#e9dbb7;color:#685534;font:12px/1 var(--sans);box-shadow:0 0 0 2px var(--paper)}
.memory-mark:hover,.memory-mark:focus-visible{transform:translateY(-3px) rotate(-8deg);background:#e6d6ac80;box-shadow:0 5px 12px #4c422414}
.memory-mark.is-kept{background:#d7dfce55;border-color:#7b92753b}
.memory-mark.is-kept .memory-mark-sign{background:#d6dfc9;color:#456342}
.night .memory-mark{background:#e6d6ac15;border-color:#d5bc7950;color:#d6c794}.night .memory-mark-sign{box-shadow:none}
.focus-mode .memory-mark{display:none}
.site-footer{padding-top:25px;padding-bottom:25px}.site-footer>div{margin-top:0}
@media(min-width:1100px){.memory-mark{position:absolute;right:-65px;top:-6px;float:none;margin:0}}
@media(max-width:600px){.memory-mark{width:46px;height:46px;margin-left:12px}.memory-mark svg{width:35px;height:35px}.site-footer{padding-top:24px}}
@media(prefers-reduced-motion:reduce){.memory-mark{transition:none}}
@media(prefers-reduced-motion:no-preference){
 .memory-mark:not(.is-kept):not(:focus-visible):not(:hover) svg{animation:memory-drift 4.8s ease-in-out infinite}
 .memory-mark:not(.is-kept)::before{content:"";position:absolute;inset:2px;border-radius:inherit;pointer-events:none;box-shadow:0 0 11px 3px #d0aa5670;animation:memory-glimmer 4.8s ease-in-out infinite}
 @keyframes memory-drift{50%{transform:translateY(-2.5px) rotate(-4deg)}}
 @keyframes memory-glimmer{0%,100%{opacity:.08}50%{opacity:.85}}
}
