@import "https://cdn.jsdelivr.net/npm/galmuri@latest/dist/galmuri.css";@import "https://fonts.googleapis.com/css2?family=Gowun+Dodum&family=Noto+Sans+KR:wght@400;500;600;700&display=swap";:root{--bg-desk:#ebe4d8;--paper:#faf6ee;--paper-card:#fffdf9;--paper-sub:#f2ece1;--ink:#3d322c;--ink-soft:#7d6e63;--line:#e2d8c9;--line-strong:#c7b8a3;--accent-butter:#edd07b;--accent-sage:#b9d4bc;--accent-rose:#e37983;--pixel-ko:"Galmuri11", "Gowun Dodum", "Noto Sans KR", sans-serif;--body-ko:"Gowun Dodum", "Noto Sans KR", -apple-system, sans-serif;font-family:var(--body-ko);color:var(--ink);background-color:var(--bg-desk);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100dvh;margin:0;padding:0}body{overflow-wrap:anywhere;background-color:var(--bg-desk)}h1,h2,h3{text-wrap:balance;margin:0;font-weight:600}p,li{text-wrap:pretty;margin:0}button,input,select,textarea{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}button{cursor:pointer;background:0 0;border:0;padding:0;transition:background-color .14s,border-color .14s,transform .12s}button:disabled{cursor:default;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:2px solid #b58d59}.device-stage{justify-content:center;align-items:center;min-height:100dvh;padding:10px 16px;display:flex}.phone-frame{background:var(--paper);border:6px solid #352c27;border-radius:38px;flex-direction:column;width:min(382px,100%);height:min(768px,100dvh - 20px);min-height:640px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 46px #30261f2e;container:phone/inline-size}.phone-statusbar{background:var(--paper);font-family:var(--pixel-ko);color:var(--ink-soft);-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 20px 3px;font-size:10px;display:flex}.status-speaker-pill{opacity:.85;background:#352c27;border-radius:99px;width:54px;height:5px}.status-time,.status-Readout{min-width:54px}.status-Readout{text-align:right}.phone-home-bar{background:var(--paper);flex-shrink:0;justify-content:center;padding:3px 0 6px;display:flex}.phone-home-bar span{background:#3d322c47;border-radius:99px;width:108px;height:4px}@media (width<=480px){.device-stage{padding:0}.phone-frame{width:100%;height:100dvh;min-height:100dvh;box-shadow:none;border:0;border-radius:0}.phone-statusbar,.phone-home-bar{display:none}}.app-topbar{padding:max(7px, env(safe-area-inset-top,0px)) 15px 8px;background:var(--paper);border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:flex}.brand-mark{align-items:baseline;gap:8px;display:inline-flex}.brand-title{font-family:var(--pixel-ko);letter-spacing:-.3px;color:var(--ink);font-size:16px}.brand-sub{color:var(--ink-soft);font-size:12px}.topbar-right{align-items:center;gap:7px;display:flex}.button-wallet{background:var(--paper-sub);border:1px solid var(--line-strong);font-family:var(--pixel-ko);color:var(--ink);border-radius:8px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;display:inline-flex}.button-wallet.is-pulsing{animation:.5s wallet-bump}@keyframes wallet-bump{0%,to{transform:scale(1)}45%{background:#f5e4b3;transform:scale(1.1)}}.icon-btn{border:1px solid var(--line);width:32px;height:32px;color:var(--ink-soft);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.icon-btn:after{content:"";position:absolute;inset:-6px}.icon-btn:hover{background:var(--paper-sub);color:var(--ink)}.app-screen{scrollbar-width:thin;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.tab-view{flex-direction:column;flex:1;min-height:0;display:flex}.block-label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.block-label{font-family:var(--pixel-ko);color:var(--ink);font-size:11.5px}.block-note{color:var(--ink-soft);font-size:11.5px}.home-view{justify-content:space-between}.diorama-bleed{aspect-ratio:176/132;border-bottom:2px solid var(--ink);background:#dec69f;flex-direction:column;flex:none;width:100%;max-height:266px;display:flex;position:relative;overflow:hidden}.diorama-overlay-bar{pointer-events:none;z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:9px;left:12px;right:12px}.diorama-hint{color:var(--ink);background:#faf6eee6;border:1px solid #3d322c38;border-radius:6px;padding:3px 8px;font-size:11px}.diorama-heart-tag{pointer-events:auto;font-family:var(--pixel-ko);background:#faf6eef0;border:1px solid #3d322c40;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;display:inline-flex}.paper-sheet.home-sheet{background:var(--paper);flex-direction:column;flex:1;justify-content:space-between;gap:8px;padding:10px 14px 11px;display:flex}.mood-block{flex-direction:column;gap:6px;display:flex}.mood-stamps-row{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.mood-stamp-btn{background:var(--paper-card);border:1px solid var(--line);min-height:44px;color:var(--ink-soft);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:5px 2px;font-size:10.5px;line-height:1.25;display:flex}.mood-stamp-btn.is-active{border-color:var(--ink);color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}.paper-divider{border:0;border-top:1px dashed var(--line-strong);margin:0}.pet-home-card{background:var(--paper-card);border:1px solid var(--line);border-radius:11px;flex-direction:column;gap:8px;padding:9px 11px;display:flex}.pet-care-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.pet-profile-trigger{text-align:left;align-items:center;gap:8px;min-inline-size:0;display:inline-flex}.pet-avatar-tile{background:var(--paper);border:1px solid var(--line-strong);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.pet-meta-copy{flex-direction:column;gap:2px;min-inline-size:0;display:flex}.pet-name-line{align-items:center;gap:5px;display:inline-flex}.pet-meta-copy strong{font-family:var(--pixel-ko);color:var(--ink);font-size:11.5px}.pet-lvl-pill{background:var(--paper-sub);border:1px solid var(--line-strong);font-family:var(--pixel-ko);color:var(--ink);border-radius:4px;padding:1px 4px;font-size:9.5px}.pet-hearts-mini{align-items:center;gap:1.5px;display:inline-flex}.pet-trait-sub{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.pet-detail-link{background:var(--paper-sub);border:1px solid var(--line);color:var(--ink);border-radius:6px;flex-shrink:0;padding:4px 8px;font-size:10.5px}.pet-home-forage-bar{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;padding-top:6px;display:flex}.pet-forage-progress-col{flex-direction:column;flex:1;gap:3px;min-inline-size:0;display:flex}.pet-forage-mini-label{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.pet-forage-mini-track{background:var(--paper-sub);border:1px solid var(--line-strong);border-radius:99px;height:5px;overflow:hidden}.pet-forage-mini-fill{background:var(--accent-sage);height:100%;transition:width .25s}.pet-quick-actions{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.compact-btn{min-block-size:29px;padding:4px 7px;font-size:10.5px}.gift-claim-btn{background:var(--accent-butter)}.treat-btn{background:#f5ead2;border-color:#cbb489}.today-step-card{background:var(--paper-card);border:1px solid var(--line);border-radius:11px;flex-direction:column;gap:7px;padding:9px 11px;display:flex}.today-step-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.today-step-left{align-items:center;gap:9px;min-inline-size:0;display:flex}.step-icon-tile{background:var(--paper-sub);border:1px solid var(--line-strong);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.today-step-copy{flex-direction:column;gap:2px;min-inline-size:0;display:flex}.today-step-copy strong{font-size:12.5px;font-weight:600}.today-step-copy span{color:var(--ink-soft);font-size:11px}.compact-cta-btn{min-block-size:34px;padding:6px 11px;font-size:11px}.home-week-mini-strip{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;padding-top:6px;display:flex}.home-week-label{color:var(--ink-soft);font-size:10.5px}.home-week-dots{align-items:center;gap:4px;display:inline-flex}.home-day-pill{background:var(--paper);border:1px solid var(--line);width:21px;height:20px;color:var(--ink-soft);border-radius:5px;justify-content:center;align-items:center;font-size:9.5px;display:inline-flex}.home-day-pill.is-today{border-color:var(--ink);color:var(--ink);font-weight:600}.home-day-pill.is-done{color:#36593a;background:#e4efe5;border-color:#97b59a;font-weight:600}.tactile-btn{background:var(--accent-butter);border:1.5px solid var(--ink);min-block-size:38px;box-shadow:0 2px 0 var(--ink);font-family:var(--pixel-ko);color:var(--ink);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:7px 13px;font-size:11.5px;display:inline-flex}.tactile-btn.buy{background:var(--accent-sage)}.tactile-btn:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.tactile-btn.full,.soft-btn.full{width:100%}.soft-btn{background:var(--paper-sub);border:1px solid var(--line-strong);min-block-size:36px;color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:6px 12px;font-size:12px;display:inline-flex}.plain-link{color:var(--ink-soft);text-underline-offset:3px;font-size:11.5px;text-decoration:underline}.activity-view{justify-content:space-between;gap:7px;padding:10px 14px 11px}.paper-card{background:var(--paper-card);border:1px solid var(--line);border-radius:11px;padding:9px 11px}.stamp-card,.quick-sync-card{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.quick-sync-grid{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.quick-sync-chip{background:var(--paper);border:1px solid var(--line-strong);color:var(--ink);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:3px;padding:6px 3px;font-size:10.5px;display:inline-flex}.quick-sync-chip:hover{background:var(--paper-sub)}.inline-tools{gap:5px;display:inline-flex}.subtle-tool-btn{background:var(--paper-sub);border:1px solid var(--line);color:var(--ink);border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;display:inline-flex}.week-stamp-grid{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.week-cell{background:var(--paper);border:1px solid var(--line);border-radius:7px;flex-direction:column;align-items:center;gap:3px;padding:4px 2px;display:flex}.week-cell.is-today{border-color:var(--ink)}.week-cell.is-done{background:#edf3ec;border-color:#acc4ad}.week-day-name{color:var(--ink-soft);font-size:10.5px}.week-mark{justify-content:center;align-items:center;height:14px;display:inline-flex}.empty-dot{background:var(--line-strong);border-radius:50%;width:4px;height:4px}.logger-card{flex-direction:column;flex:none;gap:7px;display:flex}.workout-grid-5{grid-template-columns:repeat(5,1fr);gap:5px;display:grid}.workout-tile{background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 2px 5px;font-size:11px;display:flex}.workout-tile.is-selected{border-color:var(--ink);color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}.duration-inline-bar{justify-content:space-between;align-items:center;gap:8px;display:flex}.duration-row{flex:1;grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.time-chip{background:var(--paper);border:1px solid var(--line);font-family:var(--pixel-ko);color:var(--ink-soft);border-radius:7px;padding:5px 4px;font-size:11px}.time-chip.is-selected{background:var(--ink);border-color:var(--ink);color:var(--paper-card)}.verify-rule-box{background:var(--paper);border:1px dashed var(--line-strong);border-radius:8px;flex-direction:column;gap:4px;padding:6px 9px;display:flex}.verify-rule-top{color:var(--ink);align-items:center;gap:6px;font-size:11px;display:flex}.verify-badge{background:var(--paper-sub);border:1px solid var(--line-strong);font-family:var(--pixel-ko);color:var(--ink);border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:9.5px}.verify-rule-text{color:var(--ink-soft);font-size:11px;line-height:1.25}.verify-reward-row{color:var(--ink-soft);justify-content:space-between;align-items:center;font-size:11px;display:flex}.verify-reward-row strong{font-family:var(--pixel-ko);color:var(--ink);align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.verify-action-grid{grid-template-columns:1.15fr 1fr;gap:6px;display:grid}.unverified-memo-row{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:6px;padding-top:2px;font-size:11px;display:flex}.live-routine-box{border:1.5px solid var(--ink);background:#f5ebd2;border-radius:9px;flex-direction:column;gap:6px;padding:8px 9px;display:flex}.live-routine-head{justify-content:space-between;align-items:center;font-size:11.5px;display:flex}.live-routine-head strong{font-family:var(--pixel-ko);font-size:11px}.live-timer-clock{font-family:var(--pixel-ko);color:var(--ink-soft);font-size:10.5px}.live-step-copy{color:var(--ink);font-size:11.5px;line-height:1.3}.live-progress-track{background:var(--paper-card);border:1px solid var(--line-strong);border-radius:4px;height:6px;overflow:hidden}.live-progress-fill{background:var(--accent-sage);height:100%;transition:width .2s}.live-action-row{gap:6px;display:flex}.cancel-routine-btn{flex-shrink:0;padding:5px 10px}.recent-list-card{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.log-line{background:var(--paper);border-radius:7px;justify-content:space-between;align-items:center;padding:5px 6px;font-size:12px;display:flex}.log-line-left{align-items:center;gap:7px;display:inline-flex}.log-dot-box{border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.log-line-left strong{font-weight:600}.log-line-left small,.log-line-right small{color:var(--ink-soft);font-size:11px}.log-line-right{align-items:center;gap:7px;display:inline-flex}.log-line-right b{font-family:var(--pixel-ko);font-size:11px;font-weight:400}.shop-view{justify-content:space-between;gap:8px;padding:10px 14px 11px}.fitting-banner{background:var(--paper-card);border:1px solid var(--line);border-radius:12px;flex-direction:column;flex-shrink:0;gap:8px;padding:9px;display:flex}.fitting-scene{border:1.5px solid var(--ink);border-radius:8px;width:100%;height:146px;max-height:146px;display:flex;overflow:hidden}.fitting-tag-bar{justify-content:space-between;align-items:center;gap:10px;display:flex}.fitting-tag-copy{min-inline-size:0}.fitting-tag-copy strong{font-family:var(--pixel-ko);margin-bottom:2px;font-size:12px;display:block}.fitting-tag-copy p{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.25;overflow:hidden}.fitting-cta{flex-shrink:0;min-block-size:35px;padding:6px 12px;font-size:11px}.shelf-tabs{border-bottom:1.5px solid var(--line-strong);flex-shrink:0;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:2px;min-height:36px;padding-top:2px;display:grid;overflow:visible}.shelf-tabs [role=tab]{min-block-size:34px;font-family:var(--pixel-ko);color:var(--ink-soft);white-space:nowrap;justify-content:center;align-items:center;gap:3px;padding:6px 2px 7px;font-size:11px;line-height:1.25;display:inline-flex;position:relative}.shelf-tabs [role=tab][aria-selected=true]{color:var(--ink)}.shelf-tabs [role=tab][aria-selected=true]:after{content:"";border-block-end:2.5px solid var(--ink);position:absolute;inset:auto 4px 0}.drawer-panel{flex-direction:column;flex:none;display:flex}.drawer-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;align-content:start;gap:7px;display:grid}.drawer-slot{background:var(--paper-card);border:1px solid var(--line);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;height:94px;min-height:94px;max-height:98px;padding:7px 5px 6px;display:flex}.drawer-slot.is-focused{border:1.5px solid var(--ink);background:#fdf9ef}.drawer-slot.is-equipped{background:#f1f6f0;border-color:#9cb89f}.slot-art{flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.shop-pixel-icon{width:100%;height:100%}.slot-name{color:var(--ink);text-align:center;font-size:11px;line-height:1.2}.slot-price{font-family:var(--pixel-ko);color:var(--ink-soft);align-items:center;gap:3px;font-size:10.5px;display:inline-flex}.slot-price.is-owned{color:#557d59}.shop-footer-strip{background:var(--paper-card);border:1px solid var(--line);border-radius:10px;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;display:flex}.shop-footer-copy{color:var(--ink-soft);align-items:center;gap:6px;min-inline-size:0;font-size:11px;display:inline-flex}.shop-footer-copy strong{color:var(--ink);font-weight:600}.community-view{justify-content:space-between;gap:8px;padding:10px 14px 11px}.portrait-strip{scrollbar-width:none;flex-shrink:0;align-items:center;gap:7px;min-height:66px;padding:3px 2px 4px;display:flex;overflow:auto hidden}.portrait-strip::-webkit-scrollbar{display:none}.portrait-stamp{flex-direction:column;flex:none;align-items:center;gap:4px;display:flex}.portrait-box{background:var(--paper-card);border:1px solid var(--line-strong);border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;padding:3px;display:flex}.portrait-box svg{width:100%;height:100%}.portrait-stamp.is-active .portrait-box{border:1.5px solid var(--ink);box-shadow:0 2px 0 var(--ink);background:#f5ebd2}.portrait-box.is-liked{border-color:#d6878f}.portrait-label{color:var(--ink-soft);font-size:11px;line-height:1.2}.portrait-stamp.is-active .portrait-label{color:var(--ink);font-weight:600}.postcard-frame{background:var(--paper-card);border:1px solid var(--line);border-radius:12px;flex-direction:column;flex:none;gap:8px;padding:9px;display:flex}.postcard-scene{border:1.5px solid var(--ink);border-radius:8px;width:100%;height:204px;min-height:184px;max-height:214px;display:flex;position:relative;overflow:hidden}.scene-arrow{border:1px solid var(--ink);z-index:3;background:#faf6eee6;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.scene-arrow.prev{left:7px}.scene-arrow.next{right:7px}.postcard-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.postcard-info{flex-direction:column;gap:4px;min-inline-size:0;display:flex}.postcard-title-line{align-items:baseline;gap:5px;display:flex}.postcard-title-line strong{font-family:var(--pixel-ko);font-size:12px}.postcard-owner{color:var(--ink-soft);font-size:11.5px}.postcard-tags{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.quiet-chip{background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);border-radius:5px;align-items:center;gap:4px;padding:2px 7px;font-size:10.5px;display:inline-flex}.postcard-heart-btn{background:var(--paper);border:1.5px solid var(--ink);min-block-size:36px;box-shadow:0 2px 0 var(--ink);font-family:var(--pixel-ko);border-radius:9px;flex-shrink:0;align-items:center;gap:6px;padding:6px 11px;font-size:11px;display:inline-flex}.postcard-heart-btn.is-liked{background:#f9e4e6}.postcard-heart-btn:active{box-shadow:none;transform:translateY(2px)}.quiet-etiquette{color:var(--ink-soft);text-align:center;border-top:1px dashed var(--line);padding-top:5px;font-size:10.5px}.my-window-controls{flex-direction:column;align-items:stretch;gap:7px}.my-curtain-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.my-curtain-row strong{font-family:var(--pixel-ko);font-size:12px;display:block}.curtain-sub{color:var(--ink-soft);font-size:11px}.curtain-switch{background:var(--paper-sub);border:1px solid var(--line-strong);border-radius:7px;padding:5px 10px;font-size:11px}.curtain-switch.is-open{background:#e7efe6;border-color:#9bb59d}.my-window-summary-card{flex-direction:column;flex-shrink:0;gap:7px;display:flex}.my-window-summary-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.my-window-summary-copy{flex-direction:column;gap:2px;min-inline-size:0;display:flex}.my-window-summary-copy strong{font-family:var(--pixel-ko);color:var(--ink);font-size:11.5px}.my-window-summary-copy span{color:var(--ink-soft);font-size:11px}.my-window-summary-btns{flex-shrink:0;align-items:center;gap:5px;display:inline-flex}.bottom-tabbar{padding:5px 10px max(4px, env(safe-area-inset-bottom,0px));background:var(--paper);border-top:1.5px solid var(--line-strong);flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.tabbar-item{color:var(--ink-soft);font-family:var(--pixel-ko);flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:5px 4px;font-size:10.5px;display:flex;position:relative}.tabbar-item.is-active{color:var(--ink)}.tabbar-item.is-active:after{content:"";border-block-end:2px solid var(--ink);width:18px;margin-top:1px}.tab-icon-holder{display:inline-flex;position:relative}.unread-dot{background:var(--accent-rose);border-radius:50%;width:6px;height:6px;position:absolute;top:-1px;right:-4px}dialog:modal{overscroll-behavior:contain}dialog::backdrop{overscroll-behavior:contain;background:#2c231d6b;overflow:hidden}.app-sheet-dialog{background:var(--paper);border:0;border:2px solid var(--ink);width:min(378px,100vw - 24px);max-height:82dvh;color:var(--ink);border-radius:16px;margin:auto;padding:0;box-shadow:0 14px 32px #2c231d38}.app-sheet-dialog[open]{flex-direction:column;display:flex}.sheet-handle{background:var(--line-strong);border-radius:99px;flex-shrink:0;width:36px;height:3px;margin:8px auto 2px}.sheet-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:10px;padding:8px 16px 10px;display:flex}.sheet-header h2{font-family:var(--pixel-ko);font-size:14.5px}.sheet-header p{color:var(--ink-soft);margin-top:3px;font-size:12px}.sheet-body{flex-direction:column;gap:12px;padding:14px 16px 18px;display:flex;overflow-y:auto}.pet-sheet-hero{background:var(--paper-card);border:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;padding:10px 11px;display:flex}.pet-stage-box{border:1.5px solid var(--ink);background:#f5ecd9;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:66px;display:flex}.pet-sheet-stats{flex-direction:column;flex:1;gap:5px;min-inline-size:0;display:flex}.pet-hero-badges{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.pet-breed-tag{font-family:var(--pixel-ko);background:var(--paper-sub);color:var(--ink);border-radius:5px;padding:2px 6px;font-size:10px}.pet-level-badge{font-family:var(--pixel-ko);color:var(--ink);background:#f5e6bd;border:1px solid #d4b972;border-radius:5px;padding:2px 6px;font-size:10px}.pet-trait-desc{color:var(--ink);font-size:11px;line-height:1.3}.affection-bar-wrap{flex-direction:column;gap:3px;display:flex}.affection-label-row{justify-content:space-between;font-size:11px;display:flex}.affection-label-row strong{font-family:var(--pixel-ko);font-size:10.5px}.affection-track{background:var(--paper-sub);border:1px solid var(--line-strong);border-radius:4px;height:7px;overflow:hidden}.affection-fill{background:var(--accent-rose);height:100%;transition:width .25s}.pet-fed-note{color:var(--ink-soft);font-size:10.5px}.pet-forage-card{background:var(--paper-card);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:7px;padding:9px 10px;display:flex}.forage-head-row{justify-content:space-between;align-items:center;gap:6px;display:flex}.forage-head-row .block-label{align-items:center;gap:4px;display:inline-flex}.forage-track{background:var(--paper-sub);border:1px solid var(--line-strong);border-radius:4px;height:8px;overflow:hidden}.forage-fill{background:var(--accent-butter);height:100%;transition:width .25s}.pet-action-grid-3{grid-template-columns:.9fr 1fr 1.15fr;gap:6px;display:grid}.pet-treasure-section{flex-direction:column;gap:6px;display:flex}.treasure-grid-6{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.treasure-cell{background:var(--paper-card);border:1px solid var(--line);text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 4px;font-size:10.5px;display:flex}.treasure-cell.is-locked{opacity:.45;background:var(--paper-sub)}.treasure-cell.is-collected{border-color:var(--line-strong)}.pet-rename-row{gap:7px;display:flex}.pet-rename-row input{border:1px solid var(--line-strong);background:var(--paper-card);border-radius:8px;flex:1;min-block-size:34px;padding:5px 10px;font-size:12px}.owned-pets-section{border-top:1px dashed var(--line-strong);flex-direction:column;gap:6px;padding-top:9px;display:flex}.owned-pets-list{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.owned-pet-chip{background:var(--paper-card);border:1px solid var(--line);border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;font-size:11px;display:flex}.owned-pet-chip strong{font-size:11px;font-weight:600}.owned-pet-chip small{color:var(--ink-soft);font-size:9.5px}.owned-pet-chip.is-active{border:1.5px solid var(--ink);background:#f5ebd2}.sync-report-banner{border:1px solid var(--line-strong);color:var(--ink);background:#f5ebd2;border-radius:8px;padding:7px 10px;font-size:11.5px}.sync-provider-list{flex-direction:column;gap:8px;display:flex}.sync-provider-item{background:var(--paper-card);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 11px;display:flex}.sync-provider-copy{flex-direction:column;gap:2px;display:flex}.sync-provider-copy strong{font-size:13px}.sync-provider-copy small{font-family:var(--pixel-ko);color:var(--ink-soft);font-size:10px}.sync-provider-copy p{color:var(--ink-soft);margin-top:2px;font-size:11.5px}.sync-btn{flex-shrink:0}.sync-footnote{color:var(--ink-soft);text-align:center;font-size:11px}.stamp-calendar-wrap{flex-direction:column;gap:10px;display:flex}.cal-top-bar{justify-content:space-between;align-items:center;display:flex}.cal-month-title{flex-direction:column;align-items:center;gap:2px;display:flex}.cal-month-title strong{font-family:var(--pixel-ko);font-size:13.5px}.cal-month-sub{color:var(--ink-soft);align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-weekday{text-align:center;color:var(--ink-soft);font-size:11px}.cal-cell{background:var(--paper-card);border:1px solid var(--line);border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:34px;padding:3px 2px;display:flex}.cal-cell.is-outside{opacity:.35}.cal-cell.has-stamp{background:#edf3ec}.cal-cell.is-selected{border:1.5px solid var(--ink);background:#f5e9c9}.cal-day-num{font-size:10.5px}.cal-stamp{align-items:center;height:16px;display:inline-flex}.cal-day-detail{background:var(--paper-card);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.cal-detail-head{justify-content:space-between;margin-bottom:7px;font-size:12px;display:flex}.cal-detail-list{flex-direction:column;gap:6px;display:flex}.mini-record-item{background:var(--paper);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.mini-record-emoji{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.mini-record-copy{flex-direction:column;flex:1;gap:1px;display:flex}.mini-record-copy strong{align-items:center;gap:5px;font-size:12.5px;display:inline-flex}.mini-record-copy span{color:var(--ink-soft);font-size:11px}.cal-empty-msg{color:var(--ink-soft);text-align:center;padding:6px 0;font-size:12px}.preset-list{flex-direction:column;gap:5px;display:flex}.preset-chip-btn{background:var(--paper-card);border:1px solid var(--line);text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px;font-size:12.5px;display:flex}.preset-chip-btn.is-active{border-color:var(--ink);background:#f5ebd2}.custom-status-form,.settings-form{flex-direction:column;gap:10px;display:flex}.sheet-grid-2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sheet-field{flex-direction:column;gap:4px;display:flex}.sheet-field span{color:var(--ink-soft);font-size:11.5px}.sheet-field input,.sheet-field select{border:1px solid var(--line-strong);background:var(--paper-card);border-radius:8px;min-block-size:36px;padding:6px 10px;font-size:12.5px}.backup-zone{border-top:1px dashed var(--line-strong);flex-direction:column;gap:8px;padding-top:10px;display:flex}.backup-btn-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.reset-trigger-btn{color:var(--ink-soft);align-self:center;align-items:center;gap:4px;font-size:11.5px;display:inline-flex}.reset-confirm-row{justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.danger-pill-btn{background:var(--accent-rose);color:#fff;border-radius:6px;padding:4px 10px;font-size:11.5px}.cozy-toast{color:#faf6ee;font-family:var(--pixel-ko);text-align:center;z-index:30;pointer-events:none;background:#3d322c;border-radius:8px;padding:8px 14px;font-size:11.5px;animation:.2s ease-out toast-fade;position:absolute;bottom:72px;left:18px;right:18px}@keyframes toast-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.px-icon{image-rendering:pixelated;flex-shrink:0}.cozy-room-stage{flex:1;justify-content:center;align-items:stretch;width:100%;height:100%;min-height:0;display:flex;position:relative}.cozy-room-svg{width:100%;height:100%;image-rendering:pixelated;display:block}.diorama-bleed .cozy-room-svg,.fitting-scene .cozy-room-svg,.postcard-scene .cozy-room-svg{max-height:none}.shop-pixel-icon,.portrait-box svg{image-rendering:pixelated}.charlie-speech-bubble{max-width:84%;font-family:var(--pixel-ko);text-align:center;color:#3d322c;z-index:3;pointer-events:none;background:#fffdf9f5;border:1.5px solid #3d322c;border-radius:7px;padding:4px 10px;font-size:10.5px;line-height:1.3;position:absolute;top:9px;left:50%;transform:translate(-50%);box-shadow:0 2px #3d322c29}.charlie-speech-bubble:after{content:"";border:4px solid #0000;border-top:5px solid #3d322c;border-bottom-width:0;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.room-charlie-group.is-clickable,.room-pet-group.is-clickable{cursor:pointer}.room-charlie-group{animation:3.2s steps(2,end) infinite charlie-breathe}.room-charlie-group.is-bouncing{animation:.42s ease-out charlie-hop}.room-pet-group{animation:2.6s steps(2,end) infinite pet-breathe}.room-pet-group.is-happy{animation:.46s ease-out pet-hop}.pet-tail{transform-box:fill-box;transform-origin:100%;animation:1.4s steps(2,end) infinite pet-wag}.pet-gift-indicator{animation:1.1s steps(2,end) infinite pet-wag}.charlie-eyes-blink{opacity:0;animation:4.6s step-end infinite charlie-blink-closed}.charlie-eyes-open{animation:4.6s step-end infinite charlie-blink-open}@keyframes charlie-blink-open{0%,94%,to{opacity:1}95%,98%{opacity:0}}@keyframes charlie-blink-closed{0%,94%,to{opacity:0}95%,98%{opacity:1}}@keyframes charlie-breathe{0%,to{transform:translate(68px,55px)scale(1.5)}50%{transform:translate(68px,54px)scale(1.5)}}@keyframes charlie-hop{0%{transform:translate(68px,55px)scale(1.5)}45%{transform:translate(68px,46px)scale(1.52)}to{transform:translate(68px,55px)scale(1.5)}}@keyframes pet-breathe{0%,to{transform:translate(45px,83px)scale(1.1)}50%{transform:translate(45px,82px)scale(1.1)}}@keyframes pet-hop{0%{transform:translate(45px,83px)scale(1.1)}45%{transform:translate(45px,75px)scale(1.15)}to{transform:translate(45px,83px)scale(1.1)}}@keyframes pet-wag{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}.room-float-note{animation:2.4s steps(2,end) infinite note-bob}@keyframes note-bob{0%,to{opacity:.9;transform:translateY(0)}50%{opacity:.55;transform:translateY(-2px)}}.room-heart-burst{pointer-events:none;z-index:4;position:absolute;inset:0}.room-heart-burst span{font-family:var(--pixel-ko);color:#e36d7a;font-size:16px;animation:.85s ease-out forwards heart-float-up;position:absolute;bottom:34%}.room-heart-burst span:first-child{left:44%}.room-heart-burst span:nth-child(2){font-size:19px;animation-delay:80ms;left:51%}.room-heart-burst span:nth-child(3){animation-delay:.16s;left:57%}@keyframes heart-float-up{0%{opacity:0;transform:translateY(6px)}30%{opacity:1;transform:translateY(-8px)}to{opacity:0;transform:translateY(-34px)}}@container phone (inline-size<355px){.fitting-banner{grid-template-columns:1fr}.postcard-meta{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.room-charlie-group,.room-pet-group,.pet-tail,.charlie-eyes-blink,.charlie-eyes-open,.room-float-note,.room-heart-burst span,.button-wallet.is-pulsing{animation:none}}
