.game-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 14px}
.game-tools .sound-toggle{width:auto;min-height:44px;height:44px;padding:0 13px;gap:7px}
.game-tools .sound-toggle>span{display:inline}
.install-button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:0 13px;font-size:13px}
.install-button svg{width:18px;height:18px}
.install-button:hover{background:#e9ecdf}
.install-icon{display:block;border-radius:17px;margin-bottom:20px}
.install-guide{padding:16px 0;border-top:1px solid var(--line);margin-top:17px}
.install-guide h3{font-size:15px;margin-bottom:7px}
.install-guide p{font-size:14px}
#install-dialog .install-note{font-size:13px;color:var(--muted);background:#eff1e6;border-radius:12px;padding:13px;margin:10px 0 22px}
.header-actions .icon-button,.dialog-close{min-width:44px;min-height:44px}
.scene{touch-action:pan-y pinch-zoom}
@media(max-width:760px){
  .page{padding:env(safe-area-inset-top,0px) max(14px,env(safe-area-inset-right,0px)) calc(110px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))}
  .site-header{height:64px;gap:8px}.brand h1{font-size:22px;letter-spacing:.06em}.brand-mark{width:24px}.header-actions{gap:7px}
  .greeting{padding:19px 0 15px}.greeting h2{font-size:22px}.greeting .eyebrow{font-size:11px;margin-bottom:6px}
  .scene{height:clamp(265px,43svh,415px)}
  .game-layout{gap:12px}.bond-row{padding:12px 16px}.bond-main p{margin-top:4px}
  .care-panel{display:block;padding:15px 16px}.care-title{margin-bottom:13px}.care-title h2{font-size:15px}
  .needs{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.need>div{font-size:12px;gap:4px;margin-bottom:7px}.need span{gap:4px}.need svg{width:14px;height:14px}
  .care-panel h3{display:none}.care-message{margin-top:13px;line-height:1.7}.save-note{padding-top:6px;font-size:11px}
  .actions{position:fixed;z-index:15;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:#f8f5ecf5;backdrop-filter:blur(12px);border-top:1px solid #d5dacb;box-shadow:0 -6px 25px #293e350a}
  .action{min-height:67px;padding:8px 2px;gap:4px;border-radius:14px}.action b{font-size:13px;letter-spacing:0}.action small{display:none}.action-icon{height:25px}.action-icon svg{width:24px;height:24px}
  .memories{padding-top:23px}.toast{bottom:calc(102px + env(safe-area-inset-bottom,0px))}
  
  dialog{max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
}
@media(max-width:360px){
  .brand h1{font-size:20px}.brand{gap:5px}.header-actions{gap:5px}
  .greeting h2{font-size:20px}.days{font-size:11px}.needs{gap:9px}.need svg{display:none}
  .game-tools .sound-toggle,.install-button{padding:0 10px;font-size:12px}
}
@media(max-width:340px){.brand-mark{display:none}.brand h1{font-size:18px;letter-spacing:0}.header-actions{gap:4px}}
