body[data-shelf-view="home"] .workspace,body[data-shelf-view="book"] .workspace{display:block!important;grid-template-columns:minmax(0,1fr)!important;padding-top:12px!important}
body[data-shelf-view="home"] .workspace>.editor,body[data-shelf-view="book"] .workspace>.editor{max-width:1240px!important;width:100%!important;margin-inline:auto;padding-top:0!important;border-top:0!important}
body[data-shelf-view="home"] .preview-column,body[data-shelf-view="book"] .preview-column,body[data-shelf-view="home"] .intro,body[data-shelf-view="book"] .intro{display:none!important}
.shelf-panel[hidden]{display:none!important}.shelf-panel{--shelf-green:#486846;--shelf-ink:#2e4030;--shelf-muted:#687665;color:var(--shelf-ink);font-family:var(--sans,system-ui,sans-serif);padding:6px 0 30px;line-height:1.6}
.shelf-panel button,.shelf-create-dialog button{font:inherit;cursor:pointer}.shelf-panel button:disabled{cursor:default;opacity:.35}.shelf-panel button:focus-visible,.shelf-create-dialog button:focus-visible,.shelf-create-dialog input:focus-visible{outline:3px solid #a3bc8b;outline-offset:4px}.shelf-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.shelf-eyebrow{display:block;color:#60795c;font-size:13px;font-weight:600;letter-spacing:.04em}.shelf-hero{display:grid;grid-template-columns:minmax(0,1fr) 200px;align-items:center;gap:40px;background:#f1f3e9;border:1px solid #e2e7d7;border-radius:18px;padding:38px 42px 39px;overflow:hidden}.shelf-hero h1{font:500 clamp(27px,2.7vw,40px)/1.5 var(--serif,Georgia,serif);letter-spacing:.025em;max-width:720px;margin:10px 0 14px;color:#304931;text-wrap:balance}.shelf-hero p{font-size:15px;line-height:1.9;color:#62735e;margin:0;max-width:650px}.shelf-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.shelf-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#fffefa;border:1px solid #d3dccb;border-radius:9px;min-height:46px;padding:11px 19px;color:#4c6546;font-size:14px!important;line-height:1.5!important;font-weight:500!important;text-align:center;white-space:normal;transition:background .15s,border-color .15s}.shelf-button:hover{background:#f0f4e9;border-color:#a8ba99}.shelf-button.shelf-primary{background:#4b6c46;border-color:#4b6c46;color:#fffefa;box-shadow:0 3px 5px #314a3010}.shelf-button.shelf-primary:hover{background:#3c5b38;border-color:#3c5b38}.shelf-button.shelf-quiet{background:transparent;box-shadow:none}.shelf-button.shelf-quiet:hover{background:#edf2e5}
.shelf-hero-art{height:224px;position:relative;display:flex;align-items:center;justify-content:center;color:#758669}.shelf-hero-book{display:flex;flex-direction:column;align-items:center;justify-content:center;width:153px;height:202px;background:#fbf7e9;border:1px solid #ded6bd;border-inline-start:9px solid #9ba98a;border-radius:3px 8px 8px 3px;box-shadow:7px 8px 0 #e4decf,11px 18px 24px #65705819;transform:rotate(-7deg);gap:10px}.shelf-hero-book>span{width:76px;height:78px;display:grid;place-items:center}.shelf-hero-book svg{width:65px;height:65px;stroke-width:.75}.shelf-hero-book i{width:70px;height:1px;background:#c6c7af;display:block}.shelf-hero-book i:last-child{width:40px}.shelf-hero-leaf{position:absolute;right:3px;bottom:0;transform:rotate(26deg);color:#849b70}.shelf-hero-leaf svg{height:83px;width:83px;stroke-width:.65}
.shelf-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:26px 0 38px;padding:0;gap:24px}.shelf-guide li{display:flex;align-items:flex-start;gap:12px;margin:0;padding:0;min-width:0}.shelf-guide-number{width:28px;height:28px;flex:0 0 28px;background:#edf2e6;color:#5a7550;display:grid;place-items:center;border-radius:50%;font-size:13px;font-weight:600;margin-top:1px}.shelf-guide strong{display:block;font-size:14px;font-weight:600;margin-bottom:3px}.shelf-guide small{display:block;font-size:12px;line-height:1.8;color:#6d7867}
.shelf-section{padding-top:8px;margin-top:26px}.shelf-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.shelf-section-heading h2{font:500 25px/1.5 var(--serif,Georgia,serif);margin:0;color:#344a31}.shelf-section-heading p{font-size:13px;line-height:1.85;color:#6b7865;margin:5px 0 0}.shelf-section-heading .shelf-button{font-size:12px!important;min-height:38px;padding:7px 12px}.shelf-section-heading .shelf-button svg{width:17px;height:17px}
.shelf-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:28px 25px;max-width:1160px}.shelf-book-card{background:transparent;border:0;padding:0;text-align:start;min-width:0;max-width:260px;color:inherit}.shelf-book-cover{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;aspect-ratio:148/201;border:1px solid #ded8c5;border-inline-start:9px solid #a5af91;border-radius:3px 8px 8px 3px;box-shadow:4px 5px 0 #e7e2d5,7px 10px 16px #4c583014;overflow:hidden;padding:21px 18px 23px;transition:transform .18s,box-shadow .18s}.shelf-book-card:hover .shelf-book-cover{transform:translateY(-4px);box-shadow:4px 5px 0 #e7e2d5,7px 15px 23px #4c58301e}.shelf-paper-warm{background:#fff9eb;color:#66513a}.shelf-paper-sage{background:#eef2e6;color:#4e6545}.shelf-paper-ink{background:#f5f4ee;color:#414b46}.shelf-book-cover.shelf-paper-sage{border-inline-start-color:#829775}.shelf-book-cover.shelf-paper-ink{border-inline-start-color:#7c8780}.shelf-book-cover img{width:100%;height:40%;object-fit:cover;border:5px solid #fffdf8;box-shadow:0 2px 7px #60492915}.shelf-cover-art{width:76px;height:76px;display:grid;place-items:center;color:#91a27b;margin-bottom:4px}.shelf-cover-art svg{width:65px;height:65px;stroke-width:.75}.shelf-cover-title{font:500 clamp(18px,1.7vw,24px)/1.6 var(--serif,Georgia,serif);text-align:center;overflow-wrap:anywhere;max-width:100%;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.shelf-cover-author{font-size:11px;line-height:1.5;text-align:center;max-width:100%;overflow-wrap:anywhere;color:#7b826a}.shelf-book-caption{display:block;padding-top:16px}.shelf-book-caption strong{display:block;font-size:15px;font-weight:600;line-height:1.65;overflow-wrap:anywhere}.shelf-book-caption small{display:block;font-size:12px;color:#74806b;margin-top:3px}
.shelf-templates-section{margin-top:44px;border-top:1px solid #e0e6d8;padding-top:30px}.shelf-templates{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.shelf-template{padding:0;border:1px solid #e0e5d7;border-radius:10px;background:#fffefa;overflow:hidden;color:inherit;text-align:start;min-width:0;transition:border-color .15s,transform .15s}.shelf-template:hover{border-color:#9cb68a;transform:translateY(-2px)}.shelf-template-art{display:grid;place-items:center;height:104px;border-bottom:1px solid #e7e8db}.shelf-template-art svg{width:48px;height:48px;stroke-width:.9}.shelf-template-copy{display:flex;flex-direction:column;padding:15px 14px 17px;gap:7px}.shelf-template-copy strong{font-size:15px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}.shelf-template-copy>span{font-size:12px;line-height:1.8;color:#6c7865}.shelf-template-copy small{font-size:10px;color:#829075;margin-top:3px}
.shelf-back{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:#5f7758;padding:4px 0;margin-bottom:21px;font-size:13px!important}.shelf-back svg{height:18px;width:18px}.shelf-book-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:32px}.shelf-book-heading h1{font:500 clamp(29px,3vw,42px)/1.5 var(--serif,Georgia,serif);color:#30472f;margin:8px 0 0;overflow-wrap:anywhere}.shelf-book-heading>div:first-child{min-width:0;max-width:600px}.shelf-book-heading>div>p{font-size:14px;color:#6e7a67;margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.shelf-book-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;padding-top:8px;max-width:540px}.shelf-book-actions .shelf-button{padding:10px 14px;font-size:12px!important;min-height:42px}.shelf-book-actions svg{width:18px;height:18px}
.shelf-book-settings{padding:22px 24px;border:1px solid #d7e1cc;background:#f0f4e9;border-radius:12px;margin:0 0 27px}.shelf-book-settings h2{font-size:17px;font-weight:600;margin:0 0 6px}.shelf-book-settings p{font-size:13px;color:#687b5f;line-height:1.9;margin:0}.shelf-settings-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:19px}.shelf-theme-options{display:flex;flex-wrap:wrap;gap:9px}.shelf-theme{display:inline-flex;align-items:center;gap:8px;border:1px solid #d8dfd0;background:#fffefa;color:#627458;border-radius:7px;padding:8px 11px;font-size:12px!important}.shelf-theme.is-selected{border-color:#6b875b;background:#e8efdf;color:#3c5935}.shelf-theme-dot{height:20px;width:16px;display:inline-block;border:1px solid #cacdbd;border-radius:2px}.shelf-settings-actions>.shelf-button{font-size:12px!important;min-height:39px;padding:8px 12px}.shelf-pages-heading{margin-bottom:21px}.shelf-pages-heading h2{font-size:22px}
.shelf-pages{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:31px 23px;align-items:start}.shelf-page-card{min-width:0}.shelf-page-preview{position:relative}.shelf-thumb-button{display:block;background:transparent;border:0;padding:0;width:100%;text-align:start;border-radius:5px}.shelf-thumb{position:relative;display:block;aspect-ratio:148/210;width:100%;overflow:hidden;border:1px solid #e0dfd0;border-radius:3px;box-shadow:0 3px 12px #55613d0a;transition:box-shadow .16s,border-color .16s}.shelf-thumb-button:hover .shelf-thumb{border-color:#b5c3a8;box-shadow:0 6px 16px #55613d13}.shelf-page-render{position:absolute;left:0;top:0;width:560px;height:794px;transform:scale(var(--shelf-page-scale,.39));transform-origin:top left;pointer-events:none;display:block}.shelf-page-render>.print-sheet.memory-page{box-sizing:border-box;width:560px!important;height:794px!important;min-height:794px!important;max-height:794px!important;padding:58px 51px!important;margin:0!important;box-shadow:none!important;border:0!important;overflow:hidden!important;pointer-events:none;background:transparent!important;color:inherit}.shelf-page-render .memory-page h2{font-size:30px!important;line-height:1.6!important;margin:20px 0!important;overflow-wrap:anywhere}.shelf-page-render .memory-page .page-story{font-size:14px!important;line-height:2.05!important;max-height:340px;overflow:hidden}.shelf-page-render .memory-page .page-art{max-height:270px;overflow:hidden}.shelf-page-render .memory-page .full-photo{max-height:245px!important;max-width:100%;object-fit:contain}.shelf-page-render .memory-page .page-doodle{max-height:200px!important}.shelf-page-render .memory-page .memory-end{font-size:9px!important}.shelf-page-render .memory-page .page-people{font-size:11px!important}.shelf-page-render .memory-page .book-kicker,.shelf-page-render .memory-page .book-date{font-size:10px!important}.shelf-fallback-art{height:180px;display:grid;place-items:center;color:#9aac88}.shelf-fallback-art svg{width:110px;height:110px;stroke-width:.7}
.shelf-page-actions{display:flex;gap:6px;position:absolute;bottom:12px;inset-inline:10px;opacity:0;transform:translateY(5px);transition:opacity .15s,transform .15s;pointer-events:none;justify-content:center}.shelf-page-card:hover .shelf-page-actions,.shelf-page-card:focus-within .shelf-page-actions{opacity:1;transform:translateY(0);pointer-events:auto}.shelf-page-actions .shelf-page-action{background:#fffef8f5;border-color:#d5dccb;box-shadow:0 2px 8px #3e533115;padding:8px;min-height:38px;font-size:10px!important;gap:5px;flex:1}.shelf-page-action svg{width:15px;height:15px}.shelf-page-action.shelf-delete-action{color:#946044}.shelf-page-action.shelf-delete-action:hover{background:#fff5ed;border-color:#d9b9a3}.shelf-page-caption{display:flex;align-items:flex-start;gap:8px;margin-top:13px;min-width:0}.shelf-page-caption strong{font-size:14px;line-height:1.7;font-weight:600;flex:1;overflow-wrap:anywhere}.shelf-page-number{font-size:11px;color:#88957a;padding-top:3px;flex-shrink:0}.shelf-pending{font-size:9px;background:#edf2e4;color:#6f815f;padding:3px 6px;border-radius:4px;line-height:1.6;max-width:85px;text-align:center;flex-shrink:0}.shelf-page-prompt,.shelf-page-meta{font-size:11px;line-height:1.9;color:#77856a;margin:5px 0 0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.shelf-page-prompt>span{font-size:9px;color:#859578;margin-inline-end:4px}.shelf-page-order{display:flex;gap:8px;margin-top:12px}.shelf-order-button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:35px;border:1px solid #dce3d2;background:#f6f8f0;color:#5e7653;border-radius:6px;padding:6px;font-size:11px!important}.shelf-order-button:hover:enabled{background:#e9f0df}.is-arranging .shelf-page-actions{opacity:1;transform:none;pointer-events:auto}
.shelf-add-page-card{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;aspect-ratio:148/210;border:1px dashed #c6d4ba;background:#f7f9f2;color:#708762;border-radius:5px;padding:24px;transition:background .15s,border-color .15s}.shelf-add-page-card:hover{background:#edf3e5;border-color:#95b17d}.shelf-add-page-card svg{width:35px;height:35px;stroke-width:1.1}.shelf-add-page-card strong{font-size:16px;font-weight:500}.shelf-add-page-card>span{font-size:12px;color:#859477}.shelf-empty{padding:52px 22px 56px;text-align:center;border:1px dashed #ced9c1;border-radius:12px;background:#f7f9f2}.shelf-empty>span{display:grid;place-items:center;color:#8a9e79;margin-bottom:16px}.shelf-empty>span svg{height:57px;width:57px;stroke-width:1}.shelf-empty h2{font:500 26px/1.6 var(--serif,Georgia,serif);margin:0 0 12px}.shelf-empty p{font-size:14px;line-height:1.85;color:#6c7b61;margin:0 auto 23px;max-width:540px}
.shelf-create-dialog{width:min(490px,calc(100vw - 32px));padding:29px 30px;background:#fffef8;border:1px solid #dbe2d0;border-radius:14px;color:#344a30}.shelf-create-dialog h2{font:500 27px/1.6 var(--serif,Georgia,serif);margin:0 0 12px}.shelf-create-dialog p{font-size:13px;line-height:1.9;color:#6c7a61;margin:0 0 23px}.shelf-create-dialog label{display:block;font-size:13px;color:#556f4c}.shelf-create-dialog input{display:block;width:100%;font:16px/1.6 var(--sans,system-ui,sans-serif);padding:12px 13px;margin-top:9px;min-height:47px;border:1px solid #d7dfcc;border-radius:7px;background:#fafbf5;color:#344c30;box-sizing:border-box}.shelf-create-dialog .shelf-dialog-hint{font-size:11px;margin:7px 0 0;color:#8a957d}.shelf-create-dialog .shelf-create-error{color:#9b5b41;margin:10px 0 0;font-size:12px}.shelf-create-error:empty{display:none}.shelf-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px}.shelf-dialog-actions .shelf-button{font-size:13px!important;min-height:42px;padding:9px 16px}
html[dir="rtl"] .shelf-back svg{transform:scaleX(-1)}html[dir="rtl"] .shelf-hero-book{transform:rotate(7deg);border-radius:8px 3px 3px 8px}html[dir="rtl"] .shelf-book-cover{border-radius:8px 3px 3px 8px}html[dir="rtl"] .shelf-hero-leaf{right:auto;left:3px;transform:rotate(-26deg)}html[dir="rtl"] .shelf-hero h1{letter-spacing:0}html[dir="rtl"] .shelf-cover-title,html[dir="rtl"] .shelf-book-heading h1{letter-spacing:0}
@media(min-width:1450px){.shelf-pages{grid-template-columns:repeat(auto-fill,minmax(215px,1fr))}}
@media(max-width:1150px){.shelf-templates{grid-template-columns:repeat(3,minmax(0,1fr))}.shelf-hero{padding:30px;grid-template-columns:minmax(0,1fr) 150px;gap:22px}.shelf-hero-art{height:200px}.shelf-hero-book{width:132px;height:178px}.shelf-book-heading{flex-direction:column;gap:13px}.shelf-book-actions{justify-content:flex-start;max-width:none;padding-top:0}.shelf-guide{gap:17px}.shelf-guide li{gap:9px}}
@media(max-width:740px){.shelf-panel{padding-top:0}.shelf-hero{display:block;border-radius:12px;padding:26px 23px}.shelf-hero-art{display:none}.shelf-hero h1{font-size:29px;line-height:1.5;margin:8px 0 13px}.shelf-hero p{font-size:13px;line-height:1.9}.shelf-eyebrow{font-size:11px}.shelf-hero-actions{gap:9px;margin-top:21px}.shelf-button{font-size:13px!important;min-height:43px;padding:10px 13px}.shelf-button svg{width:19px;height:19px}.shelf-guide{grid-template-columns:1fr;margin:23px 0 27px;gap:14px}.shelf-guide li{gap:11px}.shelf-guide-number{width:25px;height:25px;flex-basis:25px;font-size:11px}.shelf-guide strong{font-size:13px;margin:0}.shelf-guide small{font-size:11px}.shelf-section{margin-top:23px}.shelf-section-heading{gap:10px;align-items:flex-start;margin-bottom:18px}.shelf-section-heading h2{font-size:23px}.shelf-section-heading p{font-size:11px;margin-top:4px}.shelf-section-heading>.shelf-button{max-width:130px;font-size:10px!important;gap:5px;padding:7px 9px}.shelf-books{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 19px}.shelf-book-cover{padding:15px 11px 17px;border-inline-start-width:6px;gap:8px}.shelf-cover-title{font-size:19px;line-height:1.6}.shelf-cover-art{height:58px;width:58px}.shelf-cover-art svg{height:48px;width:48px}.shelf-cover-author{font-size:9px}.shelf-book-caption{padding-top:14px}.shelf-book-caption strong{font-size:13px}.shelf-book-caption small{font-size:11px}.shelf-templates-section{margin-top:33px;padding-top:24px}.shelf-templates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shelf-template-art{height:89px}.shelf-template-art svg{width:40px;height:40px}.shelf-template-copy{padding:12px 11px 14px;gap:5px}.shelf-template-copy strong{font-size:13px}.shelf-template-copy>span{font-size:11px}.shelf-template-copy small{font-size:9px}.shelf-back{font-size:12px!important;margin-bottom:18px}.shelf-book-heading{gap:16px;margin-bottom:26px}.shelf-book-heading h1{font-size:30px;line-height:1.5}.shelf-book-heading>div>p{font-size:12px}.shelf-book-actions{gap:8px;width:100%}.shelf-book-actions .shelf-button{font-size:11px!important;padding:9px 11px;min-height:40px;gap:6px}.shelf-book-actions svg{width:16px;height:16px}.shelf-book-actions .shelf-primary{flex:1}.shelf-book-actions .shelf-quiet{flex-basis:100%;border:0;min-height:31px;padding:3px 0;justify-content:flex-start;font-size:11px!important}.shelf-book-settings{padding:18px 16px;margin-bottom:23px}.shelf-book-settings h2{font-size:15px}.shelf-book-settings p{font-size:11px}.shelf-settings-actions{gap:14px;margin-top:15px}.shelf-theme{font-size:10px!important;padding:7px 9px;gap:6px}.shelf-theme-dot{height:17px;width:13px}.shelf-settings-actions>.shelf-button{font-size:11px!important}.shelf-pages{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px}.shelf-pages-heading h2{font-size:21px}.shelf-page-actions{position:static;inset:auto;opacity:1;transform:none;pointer-events:auto;gap:5px;margin-top:8px;justify-content:stretch}.shelf-page-actions .shelf-page-action{font-size:9px!important;min-height:33px;padding:7px 5px;gap:4px;border-radius:5px;box-shadow:none}.shelf-page-action svg{width:13px;height:13px}.shelf-page-caption{gap:6px;margin-top:9px;flex-wrap:wrap}.shelf-page-caption strong{font-size:12px;line-height:1.75}.shelf-page-number{font-size:10px;padding-top:2px}.shelf-pending{font-size:8px;padding:2px 5px;margin-inline-start:16px;max-width:none}.shelf-page-prompt,.shelf-page-meta{font-size:10px;line-height:1.8;margin-top:5px}.shelf-page-prompt>span{font-size:8px}.shelf-page-order{gap:6px;margin-top:9px}.shelf-order-button{min-height:32px;font-size:9px!important;gap:5px}.shelf-add-page-card{gap:9px;padding:18px}.shelf-add-page-card svg{width:29px;height:29px}.shelf-add-page-card strong{font-size:13px}.shelf-add-page-card>span{font-size:10px}.shelf-empty{padding:35px 20px 39px}.shelf-empty h2{font-size:23px}.shelf-empty p{font-size:12px}.shelf-create-dialog{padding:23px 21px}.shelf-create-dialog h2{font-size:25px}.shelf-create-dialog p{font-size:12px}.shelf-create-dialog input{font-size:16px}.shelf-dialog-actions{gap:8px}}
@media(hover:none),(pointer:coarse){.shelf-page-actions{opacity:1;transform:none;pointer-events:auto}}
@media(max-width:740px){.shelf-page-actions .shelf-page-action{min-height:42px;font-size:10px!important;gap:3px}.shelf-template-copy>span{font-size:12px}.shelf-template-copy small{font-size:10px}.shelf-page-prompt,.shelf-page-meta{font-size:11px}.shelf-pending{font-size:9px}.shelf-guide small{font-size:12px}}
@media(prefers-reduced-motion:reduce){.shelf-panel *{transition:none!important;scroll-behavior:auto!important}}
@media print{#panel-shelfHome,#panel-shelfBook,#shelf-create-dialog{display:none!important}}
