.shelf-filters{display:flex;align-items:center;gap:8px;margin:35px 0 20px;border-bottom:1px solid #e3ddd3;padding-bottom:18px}.shelf-filters button{background:transparent;border-color:transparent}.shelf-filters .selected,.toolbar-actions .selected{background:#e4e9df;color:#44523b}.shelf-filters>span{margin-left:auto;font-size:12px;color:#958d81}.book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:45px 32px;padding:25px 8px}.book-slot{min-width:0;padding-bottom:12px;border-bottom:7px solid #dfd5c6;box-shadow:0 10px 10px -12px #5a4834}.album-cover{position:relative;width:100%;height:295px;display:flex;flex-direction:column;align-items:center;padding:23px 20px 20px 30px;border:0;border-left:12px solid #0002;border-radius:3px 9px 9px 3px;box-shadow:7px 10px 16px #55452e20,inset 2px 0 #fff4;color:#5d4947;transition:transform .2s}.album-cover:hover{transform:translateY(-7px) rotate(-1deg)}.color-rose{background:#d6a6a4}.color-sage{background:#acb9a4;color:#3d4c3a}.color-sky{background:#a4bfcb;color:#3b5360}.color-sand{background:#d7c6a9;color:#685439}.color-ink{background:#4e5a70;color:#f0e9dc}.cover-brand{font-size:9px;letter-spacing:4px;opacity:.8}.album-cover img{width:100%;height:130px;object-fit:cover;margin-top:20px;border:6px solid #fff8;box-shadow:0 2px 6px #0001}.cover-ornament{height:115px;display:grid;place-items:center;font-size:46px;opacity:.55}.cover-title{font-family:Georgia,'Malgun Gothic',serif;font-size:21px;font-weight:500;word-break:keep-all;overflow-wrap:anywhere;line-height:1.5;margin-top:16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cover-subtitle{font-size:9px;opacity:.75;margin-top:auto;padding-top:10px}.book-meta{padding:12px 2px}.book-meta h2{font-size:15px;margin:10px 0 3px;overflow-wrap:anywhere}.book-meta p{font-size:11px;margin:4px 0}.tag{font-size:10px;color:#777f69}.empty-state{text-align:center;padding:60px 15px;color:#928a7c;line-height:1.9}.empty-state h2{color:#656354}.empty-icon{font-size:48px;color:#a3ac97;margin:10px}.book-toolbar{display:flex;justify-content:space-between;gap:15px;position:sticky;top:0;background:#f6f3eeeF;z-index:2;padding:14px 0;border-bottom:1px solid #e3ddd3}.toolbar-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.book-heading{text-align:center;padding:30px 0 15px}.book-heading h1{word-break:keep-all;overflow-wrap:anywhere}.book-heading p{white-space:pre-wrap}.page-actions{display:flex;justify-content:flex-end;margin:5px 0 20px}.spread{display:grid;grid-template-columns:1fr 1fr;gap:0;perspective:1500px;border:8px solid #c6b198;border-radius:6px;background:#e8e0d2;box-shadow:0 20px 35px #49372520}.paper-page{padding:30px 26px 20px;background:linear-gradient(90deg,#fffdf7 90%,#e5ddce);min-height:540px;display:flex;flex-direction:column;overflow:hidden}.paper-page:nth-child(even){background:linear-gradient(90deg,#e5ddce,#fffdf7 10%);border-left:1px solid #bcad96}.page-kicker{font-size:8px;letter-spacing:3px;color:#aaa08c}.paper-page h2{font-size:22px;font-weight:400;overflow-wrap:anywhere}.page-photos{display:grid;gap:15px;align-content:start}.layout-one{grid-template-columns:1fr}.layout-two{grid-template-columns:1fr 1fr}.layout-four{grid-template-columns:1fr 1fr}.page-photo{margin:0;min-width:0}.page-photo button{border:0;border-radius:0;padding:6px;background:white;box-shadow:0 3px 7px #69553a22;width:100%;position:relative}.page-photo img{width:100%;height:165px;object-fit:contain;background:#f5f1e9;display:block}.layout-one .page-photo img{height:290px}.page-photo figcaption{font-size:11px;line-height:1.7;text-align:center;margin-top:7px;white-space:pre-wrap;overflow-wrap:anywhere;color:#7b715f}.page-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:2;color:#7b705e;margin-top:22px}.page-foot{margin-top:auto;padding-top:25px;display:flex;align-items:center;justify-content:space-between;color:#a79b86;font-size:11px}.page-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px}.page-controls button{padding:5px;font-size:10px;border:0;background:transparent}.blank-page{align-items:center;justify-content:center;color:#b8ad99;font-size:13px}.page-navigation{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:27px;font-size:12px;color:#8f8576}.page-turn{animation:turn .3s ease-out}@keyframes turn{from{opacity:.6;transform:rotateY(-4deg)}to{opacity:1;transform:rotateY(0)}}.upload-area{border:1px dashed #b3baa6;border-radius:12px;text-align:center;background:#eef0e7;padding:23px;margin:20px 0}.upload-area h2{font-size:17px}.upload-area p{font-size:12px}.upload-label{position:relative;overflow:hidden;cursor:pointer}.file-input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.upload-label:focus-within{outline:2px solid #4e6343;outline-offset:3px}.dragging{background:#dce6d3;border-color:#62765a}.media-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 0 20px}.media-heading h2 span{font-size:12px;color:#9c9487}.media-heading label{flex-direction:row;align-items:center}.media-heading select{width:auto;min-height:35px}.media-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.media-card{position:relative;min-width:0;text-align:left;padding:0;border:0;overflow:hidden;border-radius:7px;background:#fffdf9}.media-card img{width:100%;height:155px;object-fit:cover;display:block}.media-name{display:block;padding:10px;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8a8275}.play-badge{position:absolute;left:12px;top:12px;border-radius:20px;background:#3339;color:white;padding:5px 9px;font-size:10px}.upload-job{display:grid;grid-template-columns:2fr 1fr 2fr auto;gap:10px;align-items:center;background:#fffdf9;border:1px solid #e6e0d5;padding:12px;font-size:11px;border-radius:6px;margin:6px 0}.upload-job>span{overflow-wrap:anywhere}.upload-job progress{width:100%;accent-color:#79886e}.upload-job .muted{font-size:11px}.upload-queue{max-height:280px;overflow:auto}dialog{color:#3b3935;background:#fffdf9;border:1px solid #dfd7c9;border-radius:15px;padding:28px;width:min(520px,calc(100% - 24px));max-height:90vh;overflow:auto;box-shadow:0 25px 70px #0004}dialog::backdrop{background:#282b2466;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-heading h2{margin:0;overflow-wrap:anywhere;font-size:20px}.dialog-heading>button{border:0;background:transparent;font-size:17px}dialog label{margin:15px 0}textarea{resize:vertical;width:100%;padding:12px;border:1px solid #dcd6cc;border-radius:6px;font:inherit;font-size:13px;color:#38372f;background:white}textarea:focus{outline:2px solid #8e9d86}.form-error{color:#aa5547;font-size:13px;white-space:pre-wrap}.wide-dialog{width:min(850px,calc(100% - 24px))}.page-form-top{display:grid;grid-template-columns:2fr 1fr;gap:15px}.page-selection{margin-bottom:15px}.selected-media{display:flex;align-items:center;gap:8px;margin:8px 0}.selected-media img{height:50px;width:60px;object-fit:cover;border-radius:3px}.selected-media input{min-width:0}.selected-media button{white-space:nowrap;padding:8px}.media-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;max-height:260px;overflow:auto;padding:5px}.picker-item{padding:3px;position:relative;min-width:0}.picker-item img{width:100%;height:85px;object-fit:cover;display:block}.picker-item span{font-size:10px}.picked{outline:3px solid #7e926d;background:#e3ecd9}.share-form{display:flex;align-items:end;gap:10px}.share-form label{flex:1;margin:0}.share-person{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e9e3d8;font-size:13px}.share-person button{font-size:11px}hr{border:0;border-top:1px solid #e7e0d3;margin-top:25px}#shareLink{font-size:12px;margin-bottom:12px}.viewer-dialog{width:min(1000px,calc(100% - 20px))}#viewerContent>img,#viewerContent>video{width:100%;max-height:64vh;object-fit:contain;display:block;margin-top:20px;background:#ebe6db}#viewerTitle{font-size:15px}.viewer-dialog .button{margin-right:8px}@media(max-width:1000px){.book-grid{grid-template-columns:repeat(3,1fr);gap:30px}.media-grid{grid-template-columns:repeat(4,1fr)}.paper-page{padding:25px 18px}.page-photo img{height:140px}}@media(max-width:700px){.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px;padding:15px 5px}.album-cover{height:250px;padding:18px 12px 16px 17px;border-left-width:9px}.album-cover img{height:108px;border-width:4px}.cover-title{font-size:17px;margin-top:12px}.cover-brand{font-size:8px;letter-spacing:2px}.cover-subtitle{font-size:8px}.cover-ornament{height:100px}.book-meta h2{font-size:13px}.shelf-filters{gap:1px;margin-top:20px;flex-wrap:wrap}.shelf-filters button{font-size:11px;padding:9px}.shelf-filters>span{font-size:10px}.title-row>button{font-size:11px;padding:10px}.book-toolbar{align-items:flex-start;gap:5px}.book-toolbar button{font-size:10px;padding:8px;white-space:nowrap}.toolbar-actions{gap:3px}.book-heading{padding:25px 0 10px}.book-heading h1{font-size:27px}.book-heading p{font-size:11px}.spread{grid-template-columns:1fr;border-width:5px}.paper-page{min-height:490px;padding:24px 20px;background:linear-gradient(90deg,#e5ddce,#fffdf7 5%,#fffdf7 95%,#e5ddce)}.layout-one .page-photo img{height:280px}.page-photo img{height:155px}.paper-page h2{font-size:22px}.page-controls button{font-size:10px}.media-grid{grid-template-columns:repeat(3,1fr);gap:8px}.media-card img{height:110px}.media-name{font-size:9px;padding:7px}.play-badge{left:6px;top:6px;font-size:8px;padding:4px 6px}.upload-job{grid-template-columns:1fr 1fr}.media-picker{grid-template-columns:repeat(3,1fr)}dialog{padding:20px}.page-form-top{grid-template-columns:1fr;gap:0}.share-form{gap:8px}.share-form button{white-space:nowrap}.selected-media button{font-size:10px;padding:6px}.selected-media img{width:45px;height:45px}.selected-media input{font-size:11px}.upload-area{padding:18px 10px}.media-heading label{font-size:10px}.media-heading h2{font-size:17px}.page-note{font-size:12px}.page-foot{gap:7px}.media-grid .media-card:focus-visible{outline:2px solid #5f7955;outline-offset:2px}}@media(prefers-reduced-motion:reduce){.page-turn{animation:none}.album-cover{transition:none}}
