.magazine-page{width:100%;max-width:900px;margin:auto;overflow-wrap:anywhere;background:var(--paper,#fff);min-height:100dvh;padding-bottom:calc(110px + env(safe-area-inset-bottom))}
.magazine-page[data-view=reader]{padding-bottom:0;background:#fffdf7}
.mz-top{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:calc(12px + env(safe-area-inset-top)) 18px 12px;border-bottom:1px solid #e6e1d5;background:#fff}
.mz-top h1{flex:1;text-align:center;font-size:1.1rem;min-width:0;line-height:1.4;margin:0}.mz-top button{min-height:48px;padding:8px 12px;font-size:.95rem;flex-shrink:0}.mz-top-space{display:none}
.mz-top [data-mz=back]{background:var(--mint-light,#fff0b2);border:0;color:#594711}
.mz-error{color:#9b3627;font-size:.95rem;line-height:1.7;text-align:left}.mz-error:empty{display:none}.mz-top .mz-error{flex-basis:100%;margin:0}.mz-top [data-mz=arrange],.mz-top [data-mz=compare]{flex-basis:100%}
.mz-studio,.mz-editor{padding:28px 20px 40px}.mz-studio{text-align:center;padding-top:44px}.mz-studio h2{font-size:1.55rem;line-height:1.5;margin:24px 0 8px}.mz-studio>p{color:#66685e;line-height:1.7}
.mz-empty-mark{width:116px;height:130px;margin:auto;position:relative;background:#faf6e9;border:1px solid #e4dcc4;transform:rotate(-6deg);border-radius:3px;box-shadow:7px 6px 0 #f0ece1}.mz-empty-mark span{position:absolute;left:20px;right:20px;height:46px;top:20px;background:#f8d65c}.mz-empty-mark span+span{top:84px;height:2px;background:#ad9e78;right:40px}
.mz-main-actions,.mz-tools{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 0}.mz-main-actions>*{flex:1;min-width:160px}.mz-tools>*{flex:1}.mz-uploaded{display:flex;gap:8px;margin-top:28px}.mz-uploaded img{width:calc(25% - 6px);height:100px;object-fit:contain;background:#f6f4ed}
/* A single document scroll, with content-based photo groups and original proportions. */
.mz-reader{padding:0 0 calc(100px + env(safe-area-inset-bottom));background:#fffdf7}
.mz-reader .photo-magazine{display:block;overflow:visible;height:auto;border:0;border-radius:0;box-shadow:none;margin:0;background:transparent}
.mz-leaf{scroll-margin-top:100px;min-width:0;margin:0;padding:0;box-sizing:border-box}
.mz-sheet{--mz-accent:#997331;box-sizing:border-box;padding:44px 24px 40px;color:#29372e;background:#fffdf7}
.mz-sheet h2,.mz-sheet p{margin:0;overflow-wrap:anywhere}.mz-sheet h2{line-height:1.35;letter-spacing:-.025em;white-space:pre-line}
.mz-running{display:flex;justify-content:space-between;gap:10px;font-size:.8rem;letter-spacing:.04em;color:#e9d8ac}
.mz-cover{background:#273e34;color:#fffdf4;padding-top:30px;padding-bottom:32px}.mz-cover-title{margin:28px 0}.mz-cover-title h2{font-size:clamp(2rem,7vw,3.4rem);font-weight:750;max-width:12em}.mz-cover-title h2:after{content:"";display:block;width:44px;height:5px;background:#ffd33d;margin-top:20px}
.mz-cover-photo{width:100%;margin:30px 0 24px}.mz-cover-photo img{width:100%;height:auto;display:block;object-fit:contain}.mz-cover.mz-portrait .mz-cover-photo{width:80%;margin-inline:auto}
.mz-cover-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px}.mz-cover-bottom p{font-size:1rem;line-height:1.75}.mz-cover .mz-drawing{color:#ead18d}.mz-cover .mz-intro{font-size:1rem;line-height:1.8;color:#e1e6dc;margin-top:24px;padding-top:20px;border-top:1px solid #738272}
.mz-drawing{width:54px;height:44px;flex-shrink:0;color:var(--mz-accent)}.mz-spread-heading{display:flex;align-items:center;gap:14px;margin:0 0 26px}.mz-spread-heading h2{font-size:1.6rem;font-weight:700;flex:1}.mz-spread-heading .mz-drawing{width:38px;height:38px}.mz-large-number{font-size:2.4rem;line-height:1;color:var(--mz-accent);font-weight:400}
.mz-leaf+.mz-leaf{border-top:1px solid #e5ddcb}.mz-collage{background:#f1ede3;padding-block:40px 44px}
.mz-photo-grid{display:grid;gap:22px}.mz-photo-row{display:flex;align-items:flex-start;gap:12px}.mz-photo-row figure{min-width:0;margin:0}.mz-photo-row figure:only-child{flex:1!important}.mz-photo-row img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}.mz-collage .mz-photo-row figure:nth-child(2){padding-top:32px}.mz-feature.mz-portrait .mz-photo-grid{width:78%;margin:0 auto}.mz-photo-open{display:block;width:100%;min-width:0;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;cursor:zoom-in;line-height:0;overflow:hidden}.mz-photo-open:focus-visible{outline:3px solid #c99114;outline-offset:4px}
.mz-body-copy{margin-top:28px;padding-left:18px;border-left:3px solid #ba9550}.mz-body-copy p{font-size:1.05rem;line-height:1.9;color:#50584d;white-space:pre-line}.mz-rule{display:none}
.mz-end{background:#e8ede4;text-align:center;padding-block:50px 60px}.mz-ending h2{margin:18px auto;font-size:2.5rem}.mz-ending p{font-size:1rem;line-height:1.8}.mz-ending .mz-drawing{width:70px;height:54px}
.mz-reading-label{position:fixed;z-index:6;bottom:0;left:0;right:0;max-width:900px;box-sizing:border-box;margin:auto;display:flex;gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #e5ddcb;background:#fffdf7}.mz-reading-label button{flex:1;font-size:.95rem;min-height:52px;padding:8px 6px;background:#fffdf7;border:1px solid #d9d3c5}.mz-reading-label [data-mz=contents]{flex:.7;background:#fff2c4;border-color:#eddb9e}
.mz-contents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.mz-thumbnail{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left;border:1px solid #ddd6c6;background:#fffdf7;border-radius:10px;padding:12px;color:#292e29;font-size:1rem}.mz-thumbnail img{width:100%;height:160px;object-fit:contain;background:#ede8dc}.mz-thumbnail small{font-size:.85rem;color:#746b5b}.mz-thumbnail[aria-current=page]{outline:3px solid #eec13b}
/* Photos open in a native modal; only the viewer scrolls sideways. */
.mz-lightbox{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;box-sizing:border-box;margin:0;padding:0;border:0;border-radius:0;background:#151916;color:#fff;overscroll-behavior:contain;overflow:hidden}.mz-lightbox[open]{display:flex;flex-direction:column}.mz-lightbox::backdrop{background:#151916}.mz-lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-shrink:0;padding:calc(12px + env(safe-area-inset-top)) 18px 10px;font-size:1rem}.mz-lightbox button{min-width:52px;min-height:52px;font-size:1rem;padding:8px 16px;color:#fff;background:#ffffff12;border:1px solid #ffffff50;border-radius:14px}.mz-lightbox button:disabled{opacity:.35}.mz-gallery{display:flex;flex:1;min-height:0;width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior:contain;scrollbar-width:none}.mz-gallery::-webkit-scrollbar{display:none}.mz-gallery-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:0 10px}.mz-gallery-slide img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.mz-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:12px 18px calc(16px + env(safe-area-inset-bottom))}.mz-gallery-controls button{font-size:1.8rem;line-height:1}.mz-gallery-controls span{font-size:.85rem;color:#d7ddd5}
.mz-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:8px 0 20px}.mz-section-heading h2{font-size:1.1rem}.mz-contact-sheet{display:grid;grid-template-columns:1fr;gap:14px}.mz-contact-sheet figure{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:start;min-width:0;margin:0;padding:15px;border:1px solid var(--line,#deded5);border-radius:18px;background:#fff}.mz-contact-sheet img{display:block;width:72px;height:90px;object-fit:contain;background:#f7f6ef;border-radius:6px}.mz-contact-sheet strong{font-size:.95rem}.mz-contact-sheet figcaption>div{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.mz-contact-sheet button{font-size:.9rem;min-height:48px;flex:1;padding:10px}.mz-contact-sheet .mz-delete-button{flex-basis:100%;background:transparent;color:var(--danger);border-color:#e3b9b2}.mz-contact-sheet .mz-order{border-top:1px solid #eee}
.mz-editor>.full{margin-top:25px}.mz-editor label{display:block;margin:0 0 10px;font-weight:650}.mz-editor input,.mz-editor textarea{margin-bottom:22px;border-radius:13px}.mz-editor .source-line{margin-top:0}.mz-inner-edit{border:0;border-bottom:1px solid var(--line);padding:0;margin-bottom:20px}.mz-inner-edit summary{min-height:48px;padding:10px 0}.mz-inner-edit[open]{padding-bottom:16px}.mz-inner-edit[open] summary{margin-bottom:16px}.mz-rearrange{margin-top:24px}
.mz-copy-actions,.mz-delete-actions{position:fixed;bottom:0;left:0;right:0;z-index:8;max-width:900px;margin:auto;padding:13px 22px calc(17px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;gap:12px;display:flex}.mz-copy-actions>*,.mz-delete-actions>*{flex:1;min-height:56px}
.mz-delete-page{max-width:560px;margin:auto}.mz-delete-page h2{font-size:1.25rem;margin:0 0 20px}.mz-delete-page>img{display:block;width:100%;max-height:42dvh;object-fit:contain;background:#f5f5ef;border-radius:16px}.mz-delete-page p{font-size:1rem;line-height:1.6}.mz-delete-button{background:#a32f2b;border-color:#a32f2b;color:#fff;min-height:56px}
@media(min-width:600px){.mz-reader{max-width:760px;margin:auto}.mz-sheet{padding:48px 50px}.mz-reader{max-width:900px}.mz-cover-photo{max-width:660px;margin-inline:auto}.mz-contact-sheet{grid-template-columns:1fr 1fr}.mz-contents{grid-template-columns:repeat(3,minmax(0,1fr))}.mz-studio,.mz-editor{padding:36px}}
@media(max-width:359px){.mz-sheet{padding:32px 18px}.mz-cover{padding-top:24px}.mz-reading-label{padding-inline:10px}.mz-reading-label button{font-size:.85rem}.mz-gallery-controls{padding-inline:12px}.mz-top{padding-inline:12px;gap:6px}.mz-top h1{font-size:1rem}.mz-top button{padding-inline:10px}.mz-main-actions>*{min-width:0;flex-basis:100%}.mz-spread-heading h2{font-size:1.4rem}.mz-large-number{font-size:1.7rem}.mz-drawing{width:36px}.mz-photo-row{gap:8px}.mz-contents{gap:12px}.mz-thumbnail img{height:130px}.mz-editor{padding-inline:16px}}
@media(max-height:500px){.mz-copy-actions,.mz-delete-actions{position:static}.mz-lightbox-top{padding-block:6px}.mz-gallery-controls{padding-block:6px}.mz-lightbox button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.mz-gallery{scroll-behavior:auto}}
