.reading-progress{display:flex;align-items:center;justify-content:center;gap:12px;margin:28px 0 18px;color:#695d4d;font-size:16px;letter-spacing:.08em}
.ink-loader{width:18px;height:18px;border:2px solid rgba(102,83,57,.22);border-top-color:#745f3d;border-radius:50%;animation:ink-turn .9s linear infinite}
.reading-stream{min-height:160px;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.95;color:#3d352b;background:rgba(255,252,244,.62);border:1px solid rgba(105,87,59,.14);border-radius:12px;padding:18px}
.reading-feedback{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:22px;color:#716655;font-size:14px}
.reading-feedback .soft-btn{min-width:auto;padding:8px 15px}
.dialog-actions button:disabled{opacity:.55;cursor:wait}
.dialog-body input[type=email],.dialog-body input[type=password]{display:block;width:100%;padding:14px;border:1px solid #b2a38f;border-radius:10px;background:#fffcf5ba;color:#27211a;font-size:16px;line-height:1.7}
.account-details{margin-top:22px;padding-top:18px;border-top:1px solid #967a5424}
.account-details summary{cursor:pointer;color:#674b36;margin-bottom:16px}
.wind-layer{pointer-events:none;will-change:transform;backface-visibility:hidden}
.sakura-canopy{position:absolute;right:0;top:-3px;width:min(68vw,820px);z-index:0;pointer-events:none}
.sakura-canopy svg{display:block;width:100%;height:auto;overflow:visible}
.sakura-bough,.sakura-sprig{transform-box:view-box;transform-origin:var(--joint);animation:sakura-bough-wind var(--period) ease-in-out var(--phase) infinite}
.sakura-sprig{animation-name:sakura-sprig-wind}
@media(min-width:1051px){.sakura-canopy{width:min(54vw,900px);right:3vw;top:-8px}}
@media(max-width:600px){.sakura-canopy{width:96vw;right:0;top:-5px}}
.persona-choice span:last-child{text-shadow:0 1px 3px #17120d,0 0 4px #17120d}
.plaque-repair{visibility:hidden;clip-path:polygon(9.4% 40.5%,12.5% 40.5%,12.5% 45.2%,16.6% 47.3%,16.6% 60.8%,15.8% 63%,17% 70.5%,12% 70.5%,12.6% 63%,12.6% 61%,4.6% 61%,4.6% 47.4%,9.4% 45.2%)}
.wind-plaque{visibility:hidden;mask:url('/plaque-mask.svg') center/100% 100% no-repeat;-webkit-mask:url('/plaque-mask.svg') center/100% 100% no-repeat;transform-origin:11.33% 40.63%;animation:hanging-plaque-sway 4.8s ease-in-out infinite}
.plaque-ready .plaque-repair,.plaque-ready .wind-plaque{visibility:visible}
.wind-plaque.gust{animation:plaque-gust 1.25s cubic-bezier(.3,.7,.25,1)}
.plaque-motion-control{position:absolute;left:20px;top:585px;width:165px;height:480px;z-index:2;border-radius:80px 80px 20px 20px;cursor:pointer;background:transparent}
.plaque-motion-control:focus-visible{outline:2px solid rgba(237,196,135,.9);outline-offset:4px}
.ambient-petals{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none;contain:layout paint;--fall-distance:calc(100svh + 80px)}
.ambient-petals i{position:absolute;left:var(--x);top:-24px;width:var(--size);height:calc(var(--size)*.72);opacity:var(--opacity);will-change:transform,opacity;animation:sakura-petal-fall var(--duration) linear var(--delay) infinite}
body.ambient-paused .sakura-bough,body.ambient-paused .sakura-sprig,body.ambient-paused .ambient-petals i{animation-play-state:paused!important}
@keyframes sakura-bough-wind{0%,100%{transform:rotate(-.35deg)}43%{transform:rotate(.48deg)}76%{transform:rotate(.05deg)}}
@keyframes sakura-sprig-wind{0%,100%{transform:rotate(.65deg)}48%{transform:rotate(-.85deg)}78%{transform:rotate(-.1deg)}}
@keyframes hanging-plaque-sway{0%,100%{transform:rotate(-.7deg)}50%{transform:rotate(.78deg)}}
@keyframes plaque-gust{0%{transform:rotate(0)}18%{transform:rotate(3.1deg)}42%{transform:rotate(-2.5deg)}64%{transform:rotate(1.5deg)}82%{transform:rotate(-.65deg)}100%{transform:rotate(0)}}
@keyframes sakura-petal-fall{0%{transform:translate3d(0,0,0) rotate(0deg) scaleX(.8);opacity:0}5%{opacity:var(--opacity)}27%{transform:translate3d(var(--sway),calc(var(--fall-distance)*.27),0) rotate(75deg) scaleX(.55)}52%{transform:translate3d(var(--sway-back),calc(var(--fall-distance)*.52),0) rotate(160deg) scaleX(1)}76%{transform:translate3d(var(--sway-late),calc(var(--fall-distance)*.76),0) rotate(240deg) scaleX(.65);opacity:var(--opacity)}100%{transform:translate3d(var(--drift),var(--fall-distance),0) rotate(var(--spin)) scaleX(.9);opacity:0}}
.skip{border:0}
.skip:not(:focus-visible){top:-80px!important}
.skip:focus-visible{top:8px!important}
.safe-top{padding-top:env(safe-area-inset-top)}
@keyframes ink-turn{to{transform:rotate(360deg)}
}
@media(prefers-reduced-motion:reduce){.ink-loader{animation:none}
.sakura-bough,.sakura-sprig,.ambient-petals i{animation:none!important}
.ambient-petals{display:none}
}
