@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap";:root{font-family:DM Sans,sans-serif;color:#344239;background:#faf9f5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{background:#6d856f;color:#fff;border:1px solid #6d856f;padding:11px 17px;border-radius:7px;cursor:pointer}button:hover{filter:brightness(.96)}button.outline{background:#fff;color:#516956;border-color:#c9d1c6}header{display:flex;align-items:center;gap:24px;justify-content:space-between;padding:18px 5%;background:#fff;border-bottom:1px solid #ece9df;min-height:82px}.logo{font:30px "DM Serif Display",serif;text-decoration:none;color:#344239;white-space:nowrap}.logo em{font-weight:400}.sub{font-size:12px;color:#829080}h1,h2,h3{font-family:"DM Serif Display",serif;font-weight:400}h1{font-size:44px;margin:4px 0 10px}h2{font-size:28px}.layout{max-width:1400px;margin:auto;display:grid;grid-template-columns:255px minmax(0,1fr);min-height:75vh}aside{padding:35px 20px;border-right:1px solid #ebe9e1;background:#f5f5ee}aside h3{font-size:23px}.collection{width:100%;text-align:left;background:transparent;color:#3c4a40;border:0;margin-bottom:8px}.collection.active{background:#e4e9df}.collection small{display:block;color:#829080}.full{width:100%;margin-top:15px}.small{font-size:12px;color:#7c887c;line-height:1.7}.content{padding:35px 42px}.welcome{background:#eef0e7;border-radius:14px;padding:40px;background-image:linear-gradient(110deg,#eef0e7,#faf5ed)}.welcome p{color:#6c7c70}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#829782}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:35px;flex-wrap:wrap}.toolbar>div{display:flex;gap:9px;flex-wrap:wrap}.count{font:14px DM Sans,sans-serif;color:#839086}.album-grid,.keepsake-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px}.album,.keepsake{padding:0 0 15px;overflow:hidden;text-align:left;border:1px solid #e3e4dc;border-radius:11px;background:#fff;color:#344239}.album-cover,.keepsake-cover{height:145px;background:linear-gradient(135deg,#e2e8dc,#f2e9da);display:grid;place-items:center;font:55px "DM Serif Display",serif;color:#78917d}.keepsake-cover{height:110px}.album strong,.keepsake strong{display:block;padding:12px 13px 3px}.album small,.keepsake small{display:block;padding:0 13px;color:#829080}footer{padding:25px 5%;border-top:1px solid #e7e7de;font-size:12px;color:#8b948b}footer a{color:inherit}.auth{max-width:550px;margin:65px auto;padding:25px;text-align:center}.auth p{color:#78867b;line-height:1.7}#signin{display:flex;justify-content:center;margin-top:30px}dialog{border:1px solid #e4e5dd;border-radius:15px;box-shadow:0 18px 80px #263d2b33;width:min(530px,95vw);max-height:85vh;overflow:auto;padding:25px;background:#fff}dialog::backdrop{background:#1b302a80}.dialog-header{display:flex;align-items:center;justify-content:space-between}.dialog-header h2{margin:0 0 12px}.close{background:transparent;color:#66756a;border:0;font-size:26px;padding:2px 8px}form{display:grid;gap:15px}label{display:grid;gap:6px;font-size:13px;font-weight:600}input,select,textarea{width:100%;padding:11px;border:1px solid #cdd6cc;border-radius:7px;background:#fff}#notice{position:fixed;bottom:22px;right:22px;max-width:450px;background:#344d3b;color:#fff;padding:15px 20px;border-radius:10px;z-index:999}#viewer{display:flex;justify-content:center;gap:5px;background:#eee9dd;padding:18px;min-height:180px}#viewer img{max-width:49%;max-height:390px;object-fit:contain;box-shadow:0 4px 18px #0002}.viewer-actions{display:flex;gap:10px;margin:15px 0}@media(max-width:800px){.layout{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid #e6e6dd;padding:18px}.content{padding:22px}.welcome{padding:25px}.sub{display:none}h1{font-size:34px}.logo{font-size:24px}.album-grid,.keepsake-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.card-dialog{width:min(960px,96vw)}.card-stage{perspective:1600px;overflow:auto;align-items:center;min-height:420px;padding:30px 18px!important;background:radial-gradient(circle at 50% 35%,#faf6ee,#e9e2d5)!important}.card-book{width:min(360px,72vw);height:390px;position:relative;transform-style:preserve-3d;transition:width .65s ease,transform .35s ease;flex:none}.card-book.is-open{width:min(740px,90vw)}.card-inside{position:absolute;inset:0;display:none;background:#fffdf8;box-shadow:0 12px 35px #34281a25}.card-book.is-open .card-inside{display:block}.card-pages{display:grid;grid-template-columns:1fr 1fr;width:100%;height:100%}.card-page{min-width:0;min-height:0;overflow:hidden;background:#fffdf9;border:1px solid #e8dfd2}.card-page:first-child{box-shadow:inset -10px 0 16px -15px #574839}.card-spread{height:100%;width:100%;background:#fffdf9}.card-stage .card-page img,.card-stage .card-spread img,.card-stage .card-cover img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;box-shadow:none}.card-blank{width:100%;height:100%;background:#fffdf9}.card-cover{position:absolute;inset:0;background:#fffdf8;box-shadow:0 12px 35px #34281a30;transform-origin:left center;backface-visibility:hidden;transition:transform .8s cubic-bezier(.22,.61,.36,1),opacity .35s}.card-book.is-open .card-cover{transform:rotateY(-165deg);opacity:0;pointer-events:none}.card-empty{padding:50px 15px;color:#7b8278;text-align:center}.card-book.is-zoomed{transform:scale(1.3)}.card-stage.back-mode .card-cover{transform:none;opacity:1}.viewer-actions{flex-wrap:wrap}@media(max-width:650px){.card-stage{min-height:320px;padding:20px 10px!important}.card-book{height:290px;width:min(255px,70vw)}.card-book.is-open{width:min(520px,90vw)}.card-book.is-zoomed{transform:scale(1.1)}.card-dialog{padding:15px}}@media(prefers-reduced-motion:reduce){.card-book,.card-cover{transition:none!important}.card-book.is-open .card-cover{display:none}}.logo{display:inline-flex;align-items:center;gap:12px;line-height:1.1}.logo .brand-icon{width:44px;height:52px;max-width:44px;max-height:52px;object-fit:contain;flex:none;display:block}.signin-page{min-height:calc(100vh - 190px);display:flex;align-items:center;justify-content:center;padding:64px 22px;background:linear-gradient(125deg,#f8f6f0,#edf1e9)}.signin-panel{width:min(100%,670px);text-align:center;background:#fffefa;border:1px solid #e8e6dc;border-radius:18px;padding:clamp(30px,5vw,66px);box-shadow:0 18px 60px #3442390d}.signin-panel h1{font-size:clamp(35px,4vw,54px);line-height:1.15;margin:0 0 20px}.signin-panel h1 em{color:#819782}.signin-panel>p:not(.eyebrow){color:#6b796e;line-height:1.8;max-width:470px;margin:0 auto 24px}.signin-panel .signin-note{font-size:12px;margin:20px auto 0!important;color:#839084!important}.signin-panel button{padding:14px 24px}@media(max-width:600px){header{gap:10px;padding:14px 5%}.logo{font-size:24px}.logo .brand-icon{width:36px;height:43px;max-width:36px;max-height:43px}.sub{display:none}}
