.loop-card{box-sizing:border-box;background:var(--p-card,#fff);border-radius:var(--p-radius,22px);width:100%;max-width:448px;box-shadow:var(--p-shadow,0 10px 30px -18px #00000059);text-align:center;flex-direction:column;align-items:center;gap:6px;margin:8px auto 0;padding:14px 16px;display:flex}.loop-card.is-mail{background:#fff8ec}.loop-eyebrow{color:var(--p-ink-soft,#6b6358);margin:0;font-size:12.5px;font-weight:700}.loop-title{margin:0 0 4px;font-size:17px;font-weight:700;line-height:1.4}.loop-card .post-link-btn{margin-top:0}.loop-art{object-fit:contain;width:52px;height:52px}.mood-page{background:var(--w-canvas,#f2f1ed);min-height:100dvh;padding:18px 16px 120px}.mood-sheet{background:#fff;border-radius:22px;max-width:448px;margin:0 auto;padding:22px 20px;box-shadow:0 10px 30px -18px #0000004d}.mood-pet{object-fit:contain;width:120px;height:120px;margin:0 auto 6px;display:block}.mood-title{text-align:center;margin:0 0 6px;font-size:20px;line-height:1.45}.mood-lead{text-align:center;color:var(--w-card-ink-soft,#5a6155);margin:0 0 16px;font-size:14.5px;line-height:1.6}.mood-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.mood-chip{font:inherit;cursor:pointer;background:#fcfcfa;border:2px solid #ece9e2;border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;display:flex}.mood-chip span:first-child{font-size:26px;line-height:1.2}.mood-chip strong{font-size:14px}.mood-chip.is-on{background:#eef1fa;border-color:#4a5c9c}.mood-note{box-sizing:border-box;width:100%;min-height:84px;font:inherit;resize:none;border:1.5px solid #e5e2dd;border-radius:14px;padding:12px;font-size:15px;line-height:1.6}.mood-count{text-align:right;color:#8f877b;margin:4px 2px 12px;font-size:12px}.mood-consent{text-align:left;align-items:flex-start;gap:8px;margin:0 0 14px;font-size:13.5px;line-height:1.55;display:flex}.mood-consent input{flex:none;width:18px;height:18px;margin-top:3px}.mood-consent a{color:inherit;font-weight:700}.mood-msg{text-align:center;color:#a8453f;margin:10px 0 0;font-size:14px}.mood-done{text-align:center}.mood-actions{flex-direction:column;gap:8px;margin-top:12px;display:flex}.mletter-page{background:#f5f0e6;min-height:100dvh;padding:18px 16px 120px}.mletter{background:#fffdf8;border-top:6px solid #e07a6e;border-radius:6px 6px 22px 22px;max-width:448px;margin:0 auto;padding:26px 22px 24px;box-shadow:0 14px 34px -20px #3c280a73}.mletter-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.mletter-head img{object-fit:contain;width:64px;height:64px}.mletter-head p{color:#8f877b;margin:0;font-size:13px}.mletter-head strong{color:#3f463a;font-size:17px;display:block}.mletter-body{color:#3f463a;white-space:pre-line;word-break:keep-all;font-family:Nanum Myeongjo,Noto Serif KR,AppleMyungjo,Georgia,serif;font-size:16.5px;line-height:1.9}.mletter-card{border-top:1px dashed #e5dccb;align-items:center;gap:12px;margin-top:18px;padding-top:14px;font-size:14px;display:flex}.mletter-card img{border-radius:6px;width:52px}.mletter-note{color:#8f877b;text-align:center;max-width:448px;margin:12px auto 0;font-size:12.5px;line-height:1.6}.mletter-wait{text-align:center;color:#6b6358;padding:60px 0}.cal{box-sizing:border-box;width:calc(100% - 32px);max-width:448px;margin:0 auto 14px;padding:18px 14px 16px}.cal-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.cal-head h2{font-family:var(--f-display), var(--f-body), sans-serif;align-items:baseline;gap:8px;margin:0;font-weight:400;display:flex}.cal-month{color:var(--cr-ink,#4a3a31);font-size:24px}.cal-head h2 small{font-family:var(--f-body), sans-serif;color:var(--cr-ink-soft,#7d6e63);font-size:12.5px}.cal-head a{min-width:44px;min-height:44px;color:inherit;justify-content:center;align-items:center;font-size:18px;text-decoration:none;display:inline-flex}.cal-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal-dow{color:var(--cr-ink-soft,#7d6e63);padding-bottom:4px;font-size:11.5px}.cal-day{min-height:50px;color:var(--cr-ink-soft,#7d6e63);border-radius:10px 12px 9px 11px;flex-direction:column;justify-content:flex-start;align-items:center;gap:1px;padding-top:3px;font-size:10.5px;text-decoration:none;display:flex;position:relative}.cal-day img{object-fit:contain;width:30px;height:30px}.cal-day i{border:1.5px dashed color-mix(in srgb, var(--cr-line,#5e4537) 22%, transparent);border-radius:50%;width:20px;height:20px;margin-top:5px}.cal-day.has{background:color-mix(in srgb, var(--cr-butter,#f6dfa0) 30%, transparent);color:var(--cr-ink,#4a3a31)}.cal-day.today{outline:2px dashed var(--cr-key,#d9564a);outline-offset:-2px}.cal-foot{color:var(--cr-ink-soft,#7d6e63);text-align:center;word-break:keep-all;margin:10px 0 0;font-size:12.5px}.cal-star{color:#d9a63a;pointer-events:none;filter:drop-shadow(0 0 1px #fff)drop-shadow(0 0 1px #fff);position:absolute;bottom:3px;right:3px}.cal-foot.cal-wins{color:var(--cr-ink,#4a3a31)}.mood-page,.mletter-page{--p-ink:#2b2a28;--p-ink-soft:#6b6358;--p-red:#e46a55;color:var(--p-ink);word-break:keep-all}.mood-sheet>.post-link-btn{margin:8px auto 0;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pcard{max-width:448px;margin:0 auto}.pcard-frame{justify-content:center;min-height:200px;margin:4px 0 14px;display:flex}.pcard-hint{color:#6b6f64;text-align:center;margin:0 0 4px;font-size:14px;line-height:1.6}.pcard-frame img{aspect-ratio:9/16;border-radius:18px;width:100%;max-width:360px;box-shadow:0 14px 34px -18px #14193280}.mood-sub{color:var(--p-ink-soft,#6b6358);text-align:center;margin:4px 0 8px;font-size:13.5px}.mood-tags{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:14px;display:flex}.mood-tag{min-height:36px;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #e5e2dd;border-radius:999px;padding:0 12px;font-size:13.5px}.mood-tag.is-on{color:#2e3d6e;background:#eef1fa;border-color:#4a5c9c;font-weight:700}.mood-reply{text-align:center;white-space:pre-line;margin:4px 0 10px;font-family:Nanum Myeongjo,Noto Serif KR,AppleMyungjo,Georgia,serif;font-size:18px;line-height:1.7}.mood-pet-react{animation:.9s ease-out mood-bounce}@keyframes mood-bounce{0%{opacity:0;transform:translateY(8px)scale(.92)}60%{opacity:1;transform:translateY(-6px)scale(1.04)}to{transform:none}}@media (prefers-reduced-motion:reduce){.mood-pet-react{animation:none}}.me-box{text-align:left;flex-direction:column;gap:10px;display:flex}.me-field{color:var(--p-ink-soft,#6b6358);flex-direction:column;gap:4px;font-size:13.5px;display:flex}.me-field input,.me-field select{min-height:44px;font:inherit;color:#2b2a28;background:#fff;border:1.5px solid #e5e2dd;border-radius:12px;padding:0 12px;font-size:15px}.me-current{text-align:center;background:#f4f6fb;border-radius:12px;margin:0;padding:12px;font-size:15px}.me-box .post-link-btn{align-self:center}.lock{text-align:center;max-width:360px;margin:30px auto}.lock-dots{justify-content:center;gap:14px;margin:14px 0;display:flex}.lock-dots span{border:2px solid #4a5c9c;border-radius:50%;width:14px;height:14px}.lock-dots span.is-on{background:#4a5c9c}.lock-pad{grid-template-columns:repeat(3,72px);justify-content:center;gap:12px;margin:10px 0 14px;display:grid}.lock-pad button{width:72px;height:72px;font:inherit;cursor:pointer;background:#fff;border:0;border-radius:50%;font-size:24px;box-shadow:0 6px 18px -12px #0006}.cal-report{background:color-mix(in srgb, var(--cr-paper,#f4f0e9) 75%, #fff);border:1.5px dashed color-mix(in srgb, var(--cr-line,#5e4537) 30%, transparent);border-radius:12px 15px 11px 14px;margin-top:14px;padding:12px 14px}.cal-report h3{font-size:16px;font-family:var(--f-display), var(--f-body), sans-serif;color:var(--cr-ink,#4a3a31);margin:0 0 6px;font-weight:400}.cal-report ul{color:var(--cr-ink-soft,#7d6e63);margin:0;padding:0;font-size:13.5px;line-height:1.9;list-style:none}.cal-report li{border-bottom:1px dotted color-mix(in srgb, var(--cr-line,#5e4537) 20%, transparent);justify-content:space-between;gap:8px;display:flex}.cal-report li:last-child{border-bottom:0}.cal-top{align-items:center;gap:4px;display:inline-flex}.cal-top img{object-fit:contain;width:20px;height:20px}.cal-report b{color:var(--cr-ink,#4a3a31)}.cal-monthly{flex-direction:column;align-items:center;gap:6px;margin-top:10px;display:flex}.cal-report .post-link-btn{margin:8px auto 0;display:block}.cal{--p-ink:#2b2a28;--p-ink-soft:#6b6358;--p-red:#e46a55}.pchat{align-items:flex-end;gap:10px;width:100%;margin-top:auto;display:flex}.pchat-avatar{background:#fff8ec;border:3px solid #fff;border-radius:50%;flex:none;place-items:center;width:56px;height:56px;display:grid;overflow:hidden;box-shadow:0 6px 16px -6px #4a382073}.pchat-avatar img{object-fit:cover;object-position:50% 22%;width:120%;height:120%}.pchat-thread{flex-direction:column;flex:1;align-items:flex-start;gap:8px;min-width:0;display:flex}.pchat-name{color:#fff;background:#2b2a288c;border-radius:999px;margin:0 0 -2px 4px;padding:2px 10px;font-size:12.5px;font-weight:700}.pchat-nights{border-left:1px solid #ffffff80;margin-left:8px;padding-left:8px;font-weight:500}.pchat.is-sheet .pchat-nights{border-left-color:var(--p-line,#e5dccb)}.pchat-msg{flex-direction:column;align-items:flex-start;gap:6px;max-width:100%;animation:.32s ease-out pchat-in;display:flex}.pchat-bubble{box-sizing:border-box;background:var(--p-card);max-width:100%;color:var(--p-ink);word-break:keep-all;border-radius:18px 18px 18px 6px;flex-direction:column;margin:0;padding:11px 14px;font-size:15px;line-height:1.5;display:flex;box-shadow:0 6px 18px -8px #4a382059}.pchat-chips{flex-wrap:wrap;gap:6px;display:flex}.pchat-chip{box-sizing:border-box;min-height:40px;color:var(--p-ink);background:#fffcf4eb;border:1.5px solid #2b2a2824;border-radius:999px;align-items:center;padding:0 14px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.pchat-chip.is-main{background:var(--p-ink);border-color:var(--p-ink);color:#fff}.pchat-chip:focus-visible,.pchat-avatar:focus-visible,.pchat-settings:focus-visible{outline:3px solid var(--p-red);outline-offset:3px}.pchat-typing{flex-direction:row;gap:4px;padding:14px 16px}.pchat-typing i{background:var(--p-ink-soft);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite pchat-dot}.pchat-typing i:nth-child(2){animation-delay:.15s}.pchat-typing i:nth-child(3){animation-delay:.3s}.pchat-settings{color:#fff;text-shadow:0 1px 3px #00000073;text-underline-offset:3px;align-items:center;min-height:44px;margin-top:-6px;padding:0 4px;font-size:12.5px;display:inline-flex}@keyframes pchat-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@keyframes pchat-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.pchat-msg,.pchat-typing i{animation:none}}.pchat.is-sheet{margin-top:0}.pchat.is-sheet .pchat-bubble{box-shadow:none;background:#f4f1ea}.pchat.is-sheet .pchat-chip{background:#fff}.pchat.is-sheet .pchat-chip.is-main{background:var(--p-ink)}.pchat.is-sheet .pchat-name{color:var(--p-ink-soft);background:0 0;padding:0 2px}.pchat.is-sheet .pchat-settings{color:var(--p-ink-soft);text-shadow:none}.pdock{z-index:45;bottom:calc(84px + env(safe-area-inset-bottom));pointer-events:none;align-items:flex-end;gap:8px;display:flex;position:fixed;right:max(16px,50% - 224px)}.pdock>*{pointer-events:auto}.pdock-launcher{cursor:pointer;background:#fff8ec;border:3px solid #fff;border-radius:50%;flex:none;width:60px;height:60px;padding:0;animation:.4s cubic-bezier(.2,1.4,.4,1) both pdock-in;position:relative;overflow:visible;box-shadow:0 8px 20px -6px #2e3a6673}.pdock-launcher img{object-fit:cover;object-position:50% 22%;clip-path:circle(42%);border-radius:50%;width:100%;height:100%;transform:scale(1.2)}.pdock-badge{background:#e46a55;border:2px solid #fff;border-radius:50%;width:13px;height:13px;position:absolute;top:0;right:0}.pdock-teaser{background:#fff;border-radius:18px 18px 6px;align-items:flex-start;max-width:220px;margin-bottom:8px;animation:.32s ease-out pchat-in;display:flex;position:relative;box-shadow:0 10px 26px -10px #1e1e1473}.pdock-teaser-text{text-align:left;min-width:0;font:inherit;color:#2b2a28;cursor:pointer;word-break:keep-all;background:0 0;border:0;flex-direction:column;flex:1;gap:2px;padding:10px 4px 10px 14px;display:flex}.pdock-teaser-text strong{color:#6b6358;font-size:12px}.pdock-teaser-text span{font-size:14.5px;font-weight:700;line-height:1.4}.pdock-teaser-close{color:#8f877b;cursor:pointer;background:0 0;border:0;flex:none;place-items:center;width:36px;height:44px;display:grid}.pdock-window.post{z-index:46;box-sizing:border-box;min-height:0;right:max(16px,50% - 224px);bottom:calc(84px + 60px + 12px + env(safe-area-inset-bottom));width:min(340px,100vw - 32px);max-height:min(520px, calc(100dvh - 84px - 60px - 12px - 72px - env(safe-area-inset-bottom)));transform-origin:100% 100%;background:#fffdf8;border-radius:22px;flex-direction:column;margin:0;padding:0;animation:.22s cubic-bezier(.2,.9,.3,1.1) pdock-pop;display:flex;position:fixed;overflow:hidden;box-shadow:0 18px 44px -14px #1e1e1473,0 0 0 1px #2b2a280f}.pdock-window-head{background:#f7f1e4;flex:none;align-items:center;gap:10px;padding:10px 6px 10px 14px;display:flex}.pdock-window-head img{object-fit:cover;object-position:50% 22%;background:#fff;border:2px solid #fff;border-radius:50%;width:36px;height:36px}.pdock-window-head p{flex-direction:column;flex:1;min-width:0;margin:0;line-height:1.3;display:flex}.pdock-window-head strong{font-size:15px}.pdock-window-head span{color:var(--p-ink-soft);font-size:12px}.pdock-window-body{overscroll-behavior:contain;flex:1;min-height:0;padding:14px 14px 10px;overflow-y:auto}.pdock-window .pchat.is-sheet .pchat-avatar,.pdock-window .pchat.is-sheet .pchat-name{display:none}.pdock-close{color:#6b6358;cursor:pointer;background:0 0;border:0;flex:none;place-items:center;width:44px;height:44px;display:grid}.pdock-launcher-x{color:#2e3a66;margin:auto;display:block}.pdock-launcher:has(.pdock-launcher-x){place-items:center;display:grid}.pdock-launcher:focus-visible,.pdock-teaser-text:focus-visible,.pdock-teaser-close:focus-visible,.pdock-close:focus-visible{outline-offset:3px;outline:3px solid #e46a55}@keyframes pdock-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes pdock-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.pdock-launcher,.pdock-teaser,.pdock-window.post{animation:none}}.mood-route{color:#4a5c9c;text-align:center;margin:-2px 0 12px;font-size:14.5px}.route-card{background:#fffdf8;border:1px solid #e5dccb;border-radius:16px;align-items:center;gap:14px;max-width:448px;margin:14px auto 0;padding:14px 16px;display:flex}.route-stamp{background:#fff6e3;border:2px dashed #c9b48a;border-radius:6px;flex:none;place-items:center;width:58px;height:66px;font-size:28px;display:grid;transform:rotate(-4deg)}.route-stamp-art{filter:drop-shadow(0 3px 6px #3c321e2e);flex:none;width:66px;height:66px;transform:rotate(-4deg)}.route-dot-art{z-index:1;filter:drop-shadow(0 2px 4px #3c321e2e);flex:none;width:50px;height:50px;margin:0 -2px}.route-stamp.is-rest{background:#f1f3fa;border-color:#c8cce0}.route-text{min-width:0;font-size:14px;line-height:1.6}.route-text p{margin:0}.route-text .route-next{color:#6b6f64;margin:4px 0 6px}.route-text a{color:#4a5c9c;font-size:13.5px;font-weight:700}.route-map{text-align:center;max-width:448px;margin:0 auto;padding:8px 0 24px}.route-list{text-align:left;margin:18px 0 12px;padding:0;list-style:none;position:relative}.route-list:before{content:"";background:#cfe0f0;border-radius:2px;width:4px;position:absolute;top:18px;bottom:18px;left:21px}.route-stop{align-items:center;gap:14px;padding:7px 0;display:flex;position:relative}.route-dot{z-index:1;background:#fbf9f4;border:2px dashed #d9d2c3;border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:22px;display:grid}.route-stop.is-done .route-dot{background:#fff6e3;border:2px solid #c9b48a}.route-stop.is-next .route-dot{background:#eef1fa;border:2px solid #4a5c9c}.route-name{flex-direction:column;min-width:0;font-size:15px;display:flex}.route-name small{color:#8a8478;font-size:12.5px}.route-stop.is-next .route-name small{color:#4a5c9c;font-weight:700}.route-stop:not(.is-done):not(.is-next) .route-name b{color:#a39c8f;font-weight:600}.route-foot{color:#8a8478;margin:0 0 14px;font-size:13px}.route-finale-art{filter:drop-shadow(0 4px 8px #3c321e2e);width:120px;margin:18px auto 0;display:block;transform:rotate(-3deg)}.route-finales{flex-direction:column;gap:6px;margin:0 0 12px;display:flex}.mood-crisis{text-align:left;color:#5a4632;background:#fff3e8;border:1px solid #f1cfa8;border-radius:12px;margin:0 0 14px;padding:12px 14px;font-size:14px;line-height:1.65}.cal>.post-link-btn{text-align:center;margin:10px auto 0;display:block}.year-lead{text-align:center;color:#5a6155;margin:0 0 10px;font-size:14px}.year-grid{flex-direction:column;gap:3px;display:flex}.year-row{grid-template-columns:28px repeat(31,minmax(0,1fr));align-items:center;gap:2px;display:grid}.year-month{color:#8f877b;text-align:right;padding-right:4px;font-size:10.5px}.year-px{aspect-ratio:1;background:#efeae0;border-radius:2px;display:block}.year-px.is-future{background:0 0;box-shadow:inset 0 0 0 1px #efeae0}.year-legend{color:#5a6155;flex-wrap:wrap;justify-content:center;gap:6px 12px;margin:12px 0 0;padding:0;font-size:12.5px;list-style:none;display:flex}.year-legend i{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.year .cal-foot{word-break:keep-all}.me-title{text-align:center;color:#2b2a28;max-width:448px;margin:4px auto 12px;font-size:22px;font-weight:800}.mood-sheet[id]{scroll-margin-top:80px}.mopen{text-align:center;flex-direction:column;align-items:center;padding:56px 16px 40px;display:flex}.mopen-art{place-items:center;width:168px;height:150px;display:grid;position:relative}.mopen-glow{background:radial-gradient(circle,#f4cf6a8c,#f4cf6a00 68%);border-radius:50%;animation:2.4s ease-in-out infinite mopen-glow;position:absolute;inset:14px}.mopen-envelope{filter:drop-shadow(0 10px 14px #4a382038);width:132px;animation:2.4s ease-in-out infinite mopen-float;position:relative}.mopen-spark{color:#e9b949;opacity:0;font-size:16px;animation:2.4s ease-in-out infinite mopen-spark;position:absolute}.mopen-spark.s1{top:6px;left:18px}.mopen-spark.s2{font-size:12px;animation-delay:.8s;top:18px;right:10px}.mopen-spark.s3{font-size:11px;animation-delay:1.6s;bottom:14px;left:4px}.mopen-line{color:#3f463a;word-break:keep-all;min-height:1.6em;margin:22px 0 6px;font-family:Nanum Myeongjo,Noto Serif KR,AppleMyungjo,Georgia,serif;font-size:17px;animation:.6s ease-out mopen-in}.mopen-dots{gap:6px;margin:4px 0 0;display:flex}.mopen-dots i{background:#c9b48a;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite mopen-dot}.mopen-dots i:nth-child(2){animation-delay:.2s}.mopen-dots i:nth-child(3){animation-delay:.4s}@keyframes mopen-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-10px)rotate(2deg)}}@keyframes mopen-glow{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}@keyframes mopen-spark{0%,to{opacity:0;transform:scale(.6)}50%{opacity:1;transform:scale(1.1)}}@keyframes mopen-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes mopen-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.mopen-envelope,.mopen-glow,.mopen-spark,.mopen-line,.mopen-dots i{animation:none}.mopen-spark{opacity:.8}}.petchg{text-align:left}.petchg-now{background:#f7f5ef;border-radius:14px;align-items:center;gap:12px;margin:4px 0 14px;padding:10px 12px;display:flex}.petchg-now img{object-fit:contain;width:56px;height:56px}.petchg-now div{flex-direction:column;display:flex}.petchg-now strong{font-size:17px}.petchg-now span{color:#8f877b;font-size:13px}.petchg-h{margin:14px 0 6px;font-size:15px}.petchg-h small{color:#8f877b;margin-left:6px;font-size:12px;font-weight:600}.petchg-row{gap:8px;display:flex}.petchg-row input{min-width:0;min-height:44px;font:inherit;border:1.5px solid #e5e2dd;border-radius:12px;flex:1;padding:0 12px;font-size:16px}.petchg-btn{color:#fff;min-height:44px;font:inherit;cursor:pointer;white-space:nowrap;background:#2b2a28;border:0;border-radius:12px;padding:0 14px;font-size:14px;font-weight:700}.petchg-btn.is-wide{width:100%;margin-top:10px}.petchg-btn.is-armed{background:#4a5c9c}.petchg-btn:disabled{opacity:.45;cursor:default}.petchg-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.petchg-sp{font:inherit;cursor:pointer;background:#fff;border:1.5px solid #e5e2dd;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;font-size:11.5px;display:flex}.petchg-sp img{aspect-ratio:1;object-fit:contain;width:100%;max-width:52px}.petchg-sp small{color:#8f877b;font-size:10.5px}.petchg-sp.is-on{background:#eef1fa;border-color:#4a5c9c}.petchg-sp.is-now{opacity:.6;cursor:default}.petchg-note{color:#8f877b;word-break:keep-all;margin:6px 0 0;font-size:12.5px;line-height:1.6}.petchg-msg{color:#4a5c9c;text-align:center;margin:10px 0 0;font-size:14px}.wins{box-sizing:border-box;background:var(--p-card);border-radius:var(--p-radius);width:100%;box-shadow:var(--p-shadow);z-index:1;flex-direction:column;gap:8px;margin:8px 0 12px;padding:14px 14px 12px;display:flex;position:relative}.wins-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.wins-title{margin:0;font-size:16px;font-weight:700}.wins-month{color:var(--p-ink-soft);margin:0;font-size:12.5px;font-weight:700}.wins-cheer{background:#fff4de;border-radius:16px;align-items:center;gap:10px;padding:8px 10px;animation:.32s ease-out pchat-in;display:flex}.wins-cheer img{object-fit:contain;flex:none;width:52px;height:52px}.wins-cheer p{margin:0;font-size:14.5px;line-height:1.5}.wins-done li{color:var(--p-sage-deep);background:#eaf2e3;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:700}.wins-done li:before{content:"✓ "}.wins-list li{align-items:stretch;gap:6px;display:flex}.wins-item{box-sizing:border-box;min-width:0;min-height:44px;color:var(--p-ink);font:inherit;text-align:left;cursor:pointer;background:#fffcf6;border:1.5px solid #2b2a2824;border-radius:14px;flex:1;align-items:center;gap:8px;padding:0 14px;font-size:15px;font-weight:700;display:flex}.wins-item span{font-size:20px}.wins-item.is-rest{background:#eef1fa;border-color:#d6dcf0}.wins-swap{min-height:44px;color:var(--p-ink-soft);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;border-radius:14px;flex:none;padding:0 10px;font-size:12.5px;text-decoration:underline}.wins-item:disabled,.wins-swap:disabled{opacity:.6;cursor:default}.wins-item:focus-visible,.wins-swap:focus-visible{outline:3px solid var(--p-red);outline-offset:2px}.wins-hint{color:var(--p-ink-soft);text-align:center;margin:0;font-size:12.5px}.wins-msg{color:#a8453f;text-align:center;margin:0;font-size:13.5px}@media (prefers-reduced-motion:reduce){.wins-cheer{animation:none}}.tiles{box-sizing:border-box;z-index:1;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;margin:0 0 12px;display:grid;position:relative}.tile{box-sizing:border-box;background:var(--p-card);min-width:0;min-height:96px;color:var(--p-ink);text-align:center;border:2px solid #6b3b3b8c;border-radius:14px 16px 13px 15px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 9px;text-decoration:none;display:flex;box-shadow:0 4px 12px #4a38201f}.tile img{object-fit:contain;width:40px;height:40px}.tile-label{word-break:keep-all;font-size:14px;font-weight:700;line-height:1.3}.tile-line{color:var(--p-ink-soft);word-break:keep-all;font-size:11.5px;line-height:1.3}.tile:active{transform:translateY(1px)}.tile:focus-visible{outline:3px solid var(--p-red);outline-offset:2px}@media (prefers-reduced-motion:reduce){.tile:active{transform:none}}.pchat-letter{align-self:flex-start;max-width:100%}.pchat-letter summary{cursor:pointer;background:var(--p-ink);color:#fff;border-radius:999px;align-items:center;min-height:44px;padding:0 14px;font-size:14px;font-weight:700;list-style:none;display:inline-flex}.pchat-letter summary::-webkit-details-marker{display:none}.pchat-letter summary:focus-visible{outline:3px solid var(--p-red);outline-offset:3px}.pchat-letter[open] summary{color:var(--p-ink);background:#fffcf4eb;border:1.5px solid #2b2a2824}.pchat-letter-body{background:#fffbf1 repeating-linear-gradient(#0000 0 27px,#b4966e2e 27px 28px);border:1.5px solid #e6d3b3;border-radius:6px 14px 14px;margin-top:8px;padding:14px 16px;font-size:14.5px;line-height:28px;animation:.32s ease-out pchat-in}.pchat-letter-body p{margin:0}.pchat-letter-sign{text-align:right;color:var(--p-ink-soft);font-weight:700}@media (prefers-reduced-motion:reduce){.pchat-letter-body{animation:none}}.week{box-sizing:border-box;z-index:1;background:#fffbf1;border:2px dashed #6b3b3b59;border-radius:16px;flex-direction:column;gap:8px;width:100%;margin:0 0 12px;padding:14px 14px 12px;display:flex;position:relative}.week-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.week-title{margin:0;font-size:16px;font-weight:700}.week-range{color:var(--p-ink-soft);margin:0;font-size:12.5px}.week-rows{grid-template-columns:repeat(4,1fr);gap:6px;margin:0;display:grid}.week-rows div{background:#f4ecdd;border-radius:10px;flex-direction:column;align-items:center;padding:6px 2px;display:flex}.week-rows dt{color:var(--p-ink-soft);text-align:center;word-break:keep-all;font-size:11.5px;line-height:1.3}.week-rows dd{font-variant-numeric:tabular-nums;margin:0;font-size:17px;font-weight:700}.week-line{margin:0;font-size:14.5px;line-height:1.5}.me-evening{border-top:1px dashed #2b2a282e;flex-direction:column;gap:8px;padding-top:10px;display:flex}.me-evening button{align-self:center}.tile-lamp{box-sizing:border-box;z-index:1;color:#ffe7a8;background:#24304f;border-radius:14px;align-items:center;gap:10px;width:100%;min-height:48px;margin:-4px 0 12px;padding:8px 14px;font-size:14.5px;font-weight:700;text-decoration:none;display:flex;position:relative;box-shadow:0 4px 12px #14193240}.tile-lamp img{object-fit:contain;width:32px;height:32px}.tile-lamp:focus-visible{outline:3px solid var(--p-red);outline-offset:2px}.mood-invite{color:var(--p-ink-soft);text-align:right;margin:4px 0 0;font-size:13px}.post.is-home{background:var(--cr-paper,#f4f0e9);padding-bottom:120px}:root[data-d12-theme=misty-moon-river] .post.is-home{background:#4d5984}.post.is-home .post-room{height:min(64svh,600px);bottom:auto}.post.is-home .post-room:after{content:"";background:linear-gradient(transparent, var(--cr-paper,#f4f0e9));height:90px;position:absolute;inset:auto 0 0}:root[data-d12-theme=misty-moon-river] .post.is-home .post-room:after{background:linear-gradient(#0000,#4d5984)}.scene{flex-direction:column;min-height:calc(min(64svh,600px) - 96px);display:flex;position:relative}.scene-hud{justify-content:flex-end;align-items:center;gap:8px;display:flex}.scene-pebbles{border:2px solid var(--cr-line,#5e4537);color:var(--cr-ink,#4a3a31);background:#fff9ee;border-radius:999px;align-items:center;gap:4px;padding:3px 12px 3px 4px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.scene-pebbles img{object-fit:contain;width:28px;height:28px}.scene-settings img{width:40px;height:40px;display:block}.doors{z-index:2;flex-direction:column;gap:10px;display:flex;position:absolute;top:56px}.doors.is-left{left:-4px}.doors.is-right{right:-4px}.door{width:64px;color:var(--cr-ink,#4a3a31);flex-direction:column;align-items:center;text-decoration:none;display:flex;position:relative}.door img{object-fit:contain;filter:drop-shadow(0 3px #4a38202e);width:54px;height:54px;transition:transform .15s}.door:active img{transform:scale(.92)}.door-label{white-space:nowrap;background:#fff9eeeb;border:1.5px solid #5e453759;border-radius:8px;margin-top:-4px;padding:1px 7px;font-size:11.5px;font-weight:700}.door-dot{background:var(--cr-key,#d9564a);border:2px solid #fff9ee;border-radius:50%;width:12px;height:12px;position:absolute;top:2px;right:8px}.scene-middle{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;padding:8px 64px 0;display:flex}.scene-say{flex-direction:column;align-items:center;gap:8px;max-width:250px;margin-bottom:6px;display:flex}.scene-bubble{border:2px solid var(--cr-line,#5e4537);color:var(--cr-ink,#4a3a31);font:inherit;text-align:center;cursor:pointer;background:#fffdf8;border-radius:18px;flex-direction:column;gap:2px;margin:0;padding:11px 15px 12px;font-size:15px;line-height:1.5;display:flex;position:relative;box-shadow:0 3px #4a382026}.scene-bubble:disabled{cursor:default;opacity:1}.scene-bubble:after{content:"";border-right:2px solid var(--cr-line,#5e4537);border-bottom:2px solid var(--cr-line,#5e4537);background:#fffdf8;width:14px;height:14px;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)rotate(45deg)}.scene-dots{justify-content:center;gap:4px;margin-top:4px;display:flex}.scene-dots i{background:#5e453740;border-radius:50%;width:6px;height:6px}.scene-dots i.is-on{background:var(--cr-key,#d9564a)}.scene-chips{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:4px;display:flex}.scene-pet{display:block}.scene-pet img{filter:drop-shadow(0 8px 6px #3c281440);transform-origin:50% 100%;width:min(46vw,190px);height:auto;animation:3.4s ease-in-out infinite scene-breathe;display:block}@keyframes scene-breathe{50%{transform:scale(1.02,.985)}}.scene-name{background:#fff9eeeb;border-radius:999px;align-items:baseline;gap:6px;margin:-6px 0 0;padding:2px 12px;font-size:14px;font-weight:700;display:flex}.scene-name small{opacity:.75;font-size:11.5px;font-weight:400}@media (prefers-reduced-motion:reduce){.scene-pet img{animation:none}}.post-panel{flex-direction:column;gap:12px;margin-top:14px;display:flex}.post-panel .wins{flex-direction:column;gap:10px;padding:16px 14px;display:flex}.wins-head{justify-content:space-between;align-items:center;display:flex}.wins-stars{gap:4px;margin:0;display:flex}.wins-stars i{filter:grayscale()opacity(.35);background:url(/ui/reward-sparkle.webp) 50%/contain no-repeat;width:18px;height:18px}.wins-stars i.is-on{filter:none}.wins-sub{color:var(--p-ink-soft);margin:-4px 0 0;font-size:13.5px}.wins-sub span{opacity:.8;margin-left:4px}.wins-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.win-card{background:#fffdf8;border:2px solid #5e453747;border-radius:16px;align-items:center;gap:8px;padding:6px;display:flex}.win-body{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:4px;display:flex}.win-icon{background:#f3e9d8;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:21px;display:grid}.win-label{color:var(--cr-ink,#4a3a31);font-size:15.5px;font-weight:700}.win-check{cursor:pointer;border:2px solid var(--cr-line,#5e4537);color:#7fa35a;background:#fff;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 3px #4a382033}.win-check:active{transform:translateY(2px);box-shadow:0 1px #4a382033}.wins-done{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.wins-done li{color:#4f6a3a;background:#e9f0dc;border-radius:999px;padding:4px 10px;font-size:13px;-webkit-text-decoration:line-through #4f6a3a73;text-decoration:line-through #4f6a3a73}.wins-rest{font:inherit;color:var(--p-ink-soft);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:center;padding:4px 8px;font-size:13.5px;text-decoration:underline}.sheet-back{z-index:60;background:#281e1673;justify-content:center;align-items:flex-end;animation:.2s ease-out sheet-fade;display:flex;position:fixed;inset:0}.sheet-back.is-center{align-items:center}.sheet{box-sizing:border-box;width:100%;max-width:480px;padding:20px 18px calc(22px + env(safe-area-inset-bottom));background:var(--cr-paper,#f4f0e9);color:var(--cr-ink,#4a3a31);border-radius:24px 24px 0 0;flex-direction:column;gap:14px;animation:.25s ease-out sheet-up;display:flex}@keyframes sheet-fade{0%{opacity:0}}@keyframes sheet-up{0%{opacity:.4;transform:translateY(40px)}}.win-sheet-title{justify-content:center;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:700;display:flex}.win-sheet-title span{font-size:26px}.win-sheet-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.win-sheet-btn{cursor:pointer;font:inherit;color:inherit;background:#fffdf8;border:2px solid #5e45374d;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:12px 4px;font-size:14px;font-weight:700;display:flex}.win-sheet-btn img{object-fit:contain;width:40px;height:40px}.win-sheet-btn.is-main{border-color:var(--cr-line,#5e4537);background:#fff4de;box-shadow:0 3px #4a382033}.party{border:2px solid var(--cr-line,#5e4537);text-align:center;width:min(86vw,340px);color:var(--cr-ink,#4a3a31);background:#fffdf8;border-radius:26px;flex-direction:column;align-items:center;gap:10px;padding:26px 20px 20px;animation:.35s ease-out party-pop;display:flex;position:relative}.party p{margin:0;font-size:16px;line-height:1.55}.party-pet{object-fit:contain;width:150px;height:150px}.party-spark{width:90px;animation:1.6s ease-in-out infinite party-twinkle;position:absolute;top:-18px}.party .post-btn{width:100%}@keyframes party-pop{0%{opacity:0;transform:scale(.85)}}@keyframes party-twinkle{50%{transform:scale(1.1)rotate(6deg)}}@media (prefers-reduced-motion:reduce){.sheet,.party,.party-spark,.sheet-back{animation:none}}.scene-say{z-index:1;margin-bottom:-18px;position:relative}.wins-stars i{filter:grayscale()opacity(.5);width:24px;height:24px}.wins-month-n{color:var(--cr-ink-soft,#7d6e63);font-size:12px;font-weight:400;font-family:var(--font-body,inherit);margin-left:8px}.post.is-home .post-room-art{object-position:center 58%}.mood-tip{background:color-mix(in srgb, var(--cr-butter,#f6dfa0) 35%, #fff);color:var(--cr-ink,#4a3a31);text-align:left;border-radius:12px 15px 11px 14px;margin:12px 0 0;padding:12px 14px}.mood-tip strong{font-size:14px}.mood-tip p{margin:4px 0 0;font-size:13.5px;line-height:1.55}.door.is-locked img{filter:grayscale(.85)brightness(.9)drop-shadow(0 3px #4a38202e);opacity:.8}.door-lock{background:color-mix(in srgb, var(--cr-card,#fff7e8) 88%, transparent);text-align:center;color:var(--cr-ink,#4a3a31);border-radius:8px;margin-top:3px;padding:2px 6px;font-size:10.5px;line-height:1.25}:root[data-d12-theme=misty-moon-river] .cal-report{background:var(--cr-card-2)}.win-art{object-fit:contain;vertical-align:middle;width:1.6em;height:1.6em}.wins-strip{border:2px solid var(--cr-line,#5e4537);background:var(--cr-card,#fff7e8);width:100%;min-height:48px;color:var(--cr-ink,#4a3a31);font:inherit;text-align:left;cursor:pointer;border-radius:16px 18px 15px 17px;align-items:center;gap:10px;padding:8px 14px;font-size:15px;display:flex;box-shadow:0 3px #4a382024}.wins-strip img{object-fit:contain;width:28px;height:28px}.wins-strip-label{font-family:var(--f-display), var(--f-body), sans-serif;flex:1}.wins-strip .wins-stars{margin:0}.wins-strip.is-done{background:var(--cr-card-2,#f5eedf)}.wins-strip.is-done .wins-strip-label{color:var(--cr-ink-soft,#7d6e63)}.wins-sheet{background:var(--cr-card,#fff7e8);max-height:82dvh;padding-bottom:calc(16px + env(safe-area-inset-bottom));overflow-y:auto}.wins-sheet .wins{box-shadow:none;margin:0}.wins-sheet-close{min-height:40px;color:var(--cr-ink-soft,#7d6e63);font:inherit;cursor:pointer;background:0 0;border:0;margin:10px auto 0;padding:8px 20px;text-decoration:underline;display:block}.wins-sheet-back{z-index:120}.wins-sheet .wins{flex-direction:column;gap:10px;padding:16px 14px;display:flex}
