.goal-item.done { opacity: .68; background: #f4fbf7; }
.goal-item.done strong { text-decoration: line-through; }
.task-in-plan { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 9px; background: #edf1fb; color: #5b5bd6; font-style: normal; }
.memory-actions { display: grid !important; grid-template-columns: 1fr 1fr; gap: 9px; }
.memory-actions > button { min-height: 43px; height: 43px; margin: 0 !important; padding: 0 12px; border: 0; border-radius: 12px; display: grid; place-items: center; }
.memory-actions #viewDailyMemory { background: #fff0df; color: #8b582c; box-shadow: 0 7px 16px rgba(139,88,44,.12); }
@media(max-width:767px) and (hover:none){.main-menu button:hover{background:transparent!important;color:#89899a!important}.main-menu button:hover .nav-icon{transform:translateY(-1px) scale(1)!important;box-shadow:inset 1px 1px 1px rgba(255,255,255,.8),0 2px 4px rgba(41,41,75,.12)!important}.main-menu button.active:hover{color:var(--green)!important}.main-menu button.active:hover .nav-icon{transform:translateY(-2px) scale(1.02)!important}}
.memory-book-dialog { inset: 0; width: 100vw; max-width: none; height: 100dvh; max-height: none; margin: 0; border: 0; padding: 0; background:radial-gradient(ellipse at 50% 15%,#70421f55,transparent 48%),repeating-linear-gradient(4deg,#27170f 0 5px,#321d12 6px 11px,#21130d 12px 16px); color: #fff; overflow: hidden; }
.memory-book-dialog::backdrop { background: #1b110d; }
.diary-reader { height: 100%; display: grid; grid-template-rows: auto minmax(0,1fr) auto; padding: clamp(14px,2.5vw,28px); }
.book-reader-head { width: min(1100px,100%); margin: auto; display: flex; align-items: center; justify-content: space-between; padding-bottom: 14px; }
.book-reader-head span,.book-reader-head strong { display: block; }.book-reader-head span{font-size:9px;color:#aaa7b2}.book-reader-head strong{font-size:14px;margin-top:2px}.book-reader-head button{width:42px;height:42px;border:1px solid #ffffff24;border-radius:50%;background:#ffffff0c;color:#fff;font-size:25px}
.book-stage { --turn:0deg; --shade:0; position: relative; width:min(1060px,90vw); height:auto; max-height:calc(100dvh - 160px); aspect-ratio:1.78; margin:auto; perspective:1900px; transform-style:preserve-3d; touch-action:pan-y; user-select:none; padding:22px; border:1px solid #9c6c3a55; border-radius:12px; background:radial-gradient(ellipse at 50% 5%,#91552d44,transparent 55%),repeating-linear-gradient(3deg,#3b2112 0 4px,#4b2a16 5px 9px,#2c190f 10px 13px); box-shadow:inset 0 0 35px #090503cc,0 20px 45px #0009; }
.book-stage::before{content:'';position:absolute;z-index:-3;inset:37px 5px 1px;border-radius:24px 24px 30px 30px;background:linear-gradient(90deg,#281911,#765036 47%,#281911);border:3px solid #1b100a;box-shadow:0 24px 30px #000b,inset 0 0 0 2px #a2764e44;transform:translateZ(-28px) rotateX(4deg)}
.book-stage::after{content:'';position:absolute;z-index:-1;left:5%;right:5%;bottom:14px;height:22px;border-radius:0 0 22px 22px;background:repeating-linear-gradient(0deg,#d9c8aa 0 2px,#8d785b 3px 4px);box-shadow:0 8px 10px #0007;transform:translateZ(-9px)}
.book-spread { position:absolute; inset:38px 38px 34px; display:grid; direction:ltr; grid-template-columns:1fr 1fr; filter:drop-shadow(0 18px 15px #0009); transform:rotateX(2.4deg); transform-origin:center bottom; transform-style:preserve-3d; }
.book-spread::after { content:''; position:absolute; z-index:4; top:-1px; bottom:-7px; left:50%; width:44px; transform:translateX(-50%); pointer-events:none; background:linear-gradient(90deg,transparent,#705f4b20 26%,#4a38276b 48%,#2b1c1266 51%,#fff4d933 66%,transparent); filter:blur(.3px); }
.book-page,.flip-face { position:relative; overflow:hidden; direction:rtl; text-align:right; color:#403b34; background:linear-gradient(100deg,#f4ecd9,#fffaf0 12%,#fbf4e5 92%,#e8ddc9); }
.book-page { padding:clamp(36px,4vw,58px) clamp(28px,4.2vw,58px) 45px; box-shadow:inset 0 0 28px #806d5138,0 1px #efe4cf,0 3px #cbb99d,0 5px #e8dcc6,0 7px #ae997a; transform:translateZ(1px); }
.book-page::before{content:'';position:absolute;left:0;right:0;bottom:0;height:22px;pointer-events:none;background:linear-gradient(to bottom,transparent,#816e5228 45%,#fff8e866);border-radius:50% 50% 0 0/70% 70% 0 0}
.book-page.page-left{border-radius:72px 3px 7px 18px/34px 3px 9px 24px;background:radial-gradient(ellipse at 100% 100%,#bca98d66,transparent 23%),linear-gradient(90deg,#dfd1b9,#fffaf0 8%,#fbf4e5 91%,#cdbb9f)}.book-page.page-right{border-radius:3px 72px 18px 7px/3px 34px 24px 9px;background:radial-gradient(ellipse at 0 100%,#bca98d66,transparent 23%),linear-gradient(90deg,#cdbb9f,#fbf4e5 9%,#fffaf0 92%,#dfd1b9)}
.book-page.page-left::after,.book-page.page-right::after{content:'';position:absolute;bottom:-6px;width:88%;height:17px;border-radius:50%;background:#5b44272e;filter:blur(5px)}.book-page.page-left::after{right:0}.book-page.page-right::after{left:0}
.book-page time,.flip-face time{display:block;text-align:center;font-size:9px;color:#8f7962;margin-bottom:14px}.book-page h2,.flip-face h2{text-align:center;font-size:19px;margin:0 0 29px;color:#3e3329}.book-page h2::after,.flip-face h2::after{content:'— ❧ —';display:block;margin-top:7px;color:#a58a6c;font-size:9px;font-weight:400}.book-page article,.flip-face article{white-space:pre-wrap;font-size:clamp(10px,1.05vw,13px);line-height:2.12;overflow-wrap:anywhere}.book-page .page-number,.flip-face .page-number{position:absolute;bottom:16px;right:0;left:0;text-align:center;font-size:11px;color:#765f48}.book-page .page-number::before,.flip-face .page-number::before{content:'— ❧  '}.book-page .page-number::after,.flip-face .page-number::after{content:'  ❧ —'}
.book-page.empty{background:#f2eadb}.book-page.empty>*{display:none}
.flip-sheet { --tilt-x:0deg;--tilt-z:0deg;--lift:0px;--curl-x:12px;--curl-y:10px;--curl-bottom-x:8px;--curl-bottom-y:8px;--curl-blur:8px;--curl-opacity:0;position:absolute; z-index:8; top:38px; bottom:34px; width:calc(50% - 38px); left:50%; transform-style:preserve-3d; transform-origin:left bottom; transform:rotateY(var(--turn)) rotateX(var(--tilt-x)) rotateZ(var(--tilt-z)) translateZ(var(--lift)); border-radius:3px var(--curl-x) var(--curl-bottom-x) 3px/3px var(--curl-y) var(--curl-bottom-y) 3px; will-change:transform,border-radius; }
.flip-sheet::after{content:'';position:absolute;z-index:-1;inset:3% -7% -5% 8%;border-radius:50%;background:#160d08;filter:blur(var(--curl-blur));opacity:var(--curl-opacity);transform:translateZ(-30px)}
.flip-sheet.animating{transition:transform 520ms cubic-bezier(.2,.72,.12,1),border-radius 520ms ease}.flip-face{position:absolute;inset:0;padding:clamp(38px,5vw,68px) clamp(28px,4.5vw,62px) 48px;backface-visibility:hidden;box-shadow:0 3px var(--page-shadow,8px) #271d15cc;border-radius:inherit}.flip-front{background:radial-gradient(circle at 100% 100%,#c4ad8955,transparent 42%),linear-gradient(90deg,#cdbb9f,#fbf4e5 9%,#fffaf0)}.flip-back{transform:rotateY(180deg);background:radial-gradient(circle at 0 100%,#b49c7955,transparent 42%),linear-gradient(90deg,#eadfca,#fff9ed 13%,#f6eedf)}
.book-measure{position:fixed;visibility:hidden;pointer-events:none;z-index:-1;overflow:hidden;direction:rtl;text-align:right;white-space:pre-wrap;font-size:14px;line-height:2.15;padding:68px 62px 48px}
.book-controls{width:min(650px,100%);margin:auto;padding-top:14px;display:grid;grid-template-columns:44px 1fr auto 1fr 44px;align-items:center;gap:8px}.book-controls button{min-height:42px;border:1px solid #ffffff20;border-radius:11px;background:#ffffff0d;color:#fff;font-size:9px}.book-controls span{text-align:center;min-width:74px;font-size:9px;color:#c9c6ce}.book-controls button:disabled{opacity:.3}
@media(max-width:767px){.memory-book-dialog{position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;border-radius:0!important;padding:0!important}.diary-reader{padding:10px}.book-stage{width:94vw;height:calc(100dvh - 142px);min-height:410px}.book-spread{grid-template-columns:1fr 1fr}.book-page.page-left,.book-page.page-right{display:block;border-radius:8px 3px 3px 8px}.book-page,.flip-face{padding:34px 13px 42px}.book-page article,.flip-face article{font-size:9px;line-height:2}.book-page h2,.flip-face h2{font-size:13px;margin-bottom:10px}.book-page time,.flip-face time{font-size:7px;margin-bottom:11px}.book-controls{grid-template-columns:40px 1fr auto 1fr 40px;gap:5px}.book-reader-head{padding:0 5px 8px}.book-reader-head button{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.flip-sheet.animating{transition-duration:120ms}.book-stage{perspective:none}}
@media(prefers-color-scheme:dark){.memory-book-dialog{background:#1c1b22}.memory-book-dialog::backdrop{background:#1c1b22}}
