/* Living Lagoon keeps its art and automatic motion separate from the originals. */
body[data-character="living"] { --ink: #153f31; background: #51beba; }
body[data-character="living"] .game-layout { grid-template-rows: 76px minmax(0,1fr) auto; min-height: 710px; background: transparent; }
body[data-character="living"] .game-layout::before { background:none; }
body[data-character="living"] .topbar { background: linear-gradient(#f1f7dfa8,#effbe222); padding: 14px 30px; }
body[data-character="living"] .wallet, body[data-character="living"] .icon-button { background: #faffebc9; backdrop-filter: blur(10px); }
body[data-character="living"] .game-board { display: block; isolation: isolate; }
body[data-character="living"] .scoreboard { position: absolute; left: 50%; top: 5px; transform: translateX(-50%); pointer-events: none; }
body[data-character="living"] #current-multiplier { font-size: clamp(65px,7.5vw,94px); color:#174c37; text-shadow:0 2px 0 #f8ffb882; }
body[data-character="living"] .next-multiplier { background:#f1ffcf9c; border:1px solid #ffffd655; backdrop-filter:blur(12px); padding:7px 13px; border-radius:30px; margin-top:9px; font-size:11px; white-space:nowrap; }
body[data-character="living"] #next-multiplier { font-size:18px; }
body[data-character="living"] .lost #current-multiplier { color:#95402d; }
body[data-character="living"] .character-space { position:absolute; inset:108px 0 24px; padding:0; display:grid; place-items:center; }
body[data-character="living"] .character-wrap { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); aspect-ratio:4/3; height:min(100cqh,660px,calc(96cqw * .75)); width:auto; }
.living-rig, .living-body-mask, .living-bob, .living-open { position:absolute; inset:0; transform-origin:43% 88%; }
.living-water-reflection, .living-water-surface { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.living-water-surface { z-index:3; }
.living-rig { animation:living-drift 13s ease-in-out infinite; will-change:transform; }
.living-body-mask { overflow:visible; }
.living-bob { animation:living-breathe 4.8s ease-in-out infinite; }
.living-closed { visibility:hidden; transform:translateY(9%); }
.living-eyelids { position:absolute; width:100%; height:100%; pointer-events:none; visibility:hidden; }
.character-wrap:not(.biting).is-blinking .living-eyelids { visibility:visible; }
body[data-character="living"] .character-wrap.biting.has-closed-pose .living-open { visibility:hidden; }
body[data-character="living"] .character-wrap.biting.has-closed-pose .living-closed { visibility:visible; }
body[data-character="living"] .character-wrap.biting .living-bob { animation:living-chomp .38s ease-out both; }
body[data-character="living"] .croc-splash { width:82%; height:98%; z-index:4; }
body[data-character="living"] .tooth-number { font-size:10px; }
body[data-character="living"] .tooth:disabled:not(.picked) .tooth-number { opacity:0; }
body[data-character="living"] .tooth::after { width:max(100%,min(44px,10cqw)); height:max(100%,min(44px,10cqw)); }
body[data-character="living"] .won .living-bob { animation-play-state:paused; }
body[data-character="living"] .scenery-toggle { left:30px; bottom:33px; }
body[data-character="living"] .bet-panel { width: min(1110px,calc(100% - 48px)); margin:0 auto 18px; border:1px solid #fffae6; border-radius:22px; background:#fffaedeb; backdrop-filter:blur(18px); box-shadow:0 8px 35px #0c605433; padding:18px 25px 13px; }
body[data-character="living"] .primary-button { border-radius:13px; }
@keyframes living-drift { 0%,100% { transform:translateX(-.5%); } 50% { transform:translateX(.5%); } }
body[data-character="living"] .character-wrap.is-reacting:not(.biting) .living-bob { animation:living-tooth-reaction .33s ease-out; }
@keyframes living-tooth-reaction { 0%,100% { transform:translateY(0); } 45% { transform:translateY(.6%) scale(1.003,.995); } }
@keyframes living-breathe { 0%,100% { transform:translateY(0) rotate(-.3deg); } 50% { transform:translateY(-1.1%) rotate(.3deg); } }
@keyframes living-chomp { 0% { transform:translateY(0); } 35% { transform:translateY(2%) scale(1.025,.97); } 65% { transform:translateY(-.5%); } 100% { transform:translateY(0); } }
@media (min-width:1500px) and (min-height:900px) { body[data-character="living"] .character-wrap { height:min(120cqh,750px,calc(85cqw * .75)); } }
@media (max-width:900px) { body[data-character="living"] .bet-panel { width:calc(100% - 30px); margin-bottom:12px; padding-inline:20px; } }
@media (max-width:600px) {
  body[data-character="living"] .game-layout { grid-template-rows:70px minmax(0,1fr) auto; min-height:700px; }
  body[data-character="living"] .topbar { padding:12px 14px; }
  body[data-character="living"] .version-back-link { top:64px; left:14px; }
  body[data-character="living"] .scoreboard { top:35px; }
  body[data-character="living"] #current-multiplier { font-size:72px; }
  body[data-character="living"] .next-multiplier { margin-top:5px; padding:5px 10px; }
  body[data-character="living"] .character-space { inset:110px 0 24px; place-items:center; }
  body[data-character="living"] .character-wrap { height:min(125cqh,calc(111cqw * .75)); }
  body[data-character="living"] .scenery-toggle { left:auto; right:15px; top:32px; bottom:auto; width:30px; height:30px; }
  body[data-character="living"] .bet-panel { width:calc(100% - 20px); padding:14px 14px 11px; border-radius:19px; margin-bottom:max(10px,env(safe-area-inset-bottom)); }
  body[data-character="living"] .tooth-number { font-size:9px; min-width:12px; height:12px; }
}
@media (max-height:760px) and (min-width:601px) {
  body[data-character="living"] .game-layout { min-height:610px; grid-template-rows:65px minmax(0,1fr) auto; }
  body[data-character="living"] .scoreboard { top:0; }
  body[data-character="living"] #current-multiplier { font-size:65px; }
  body[data-character="living"] .character-space { inset:88px 0 22px; }
  body[data-character="living"] .character-wrap { height:min(100cqh,calc(94cqw * .75)); }
  body[data-character="living"] .bet-panel { margin-bottom:12px; padding-block:12px 8px; }
}
@media (prefers-reduced-motion:reduce) {
}
@media (max-width:360px) {
  body[data-character="living"] .amount-input { gap:2px; }
  body[data-character="living"] .amount-input input { font-size:13px; }
  body[data-character="living"] .amount-input button { width:24px; font-size:13px; }
  body[data-character="living"] .risk-options span { font-size:10px; }
}
