:root{--ink:#213d36;--muted:#708078;--paper:#f5f4ec;--line:#e1e6da;--green:#2c6c52;--lime:#dfecc3}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 -apple-system,BlinkMacSystemFont,"Hiragino Sans",sans-serif}header{height:94px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 6vw}.brand{text-decoration:none;color:var(--ink);display:flex;gap:14px;align-items:center;font-size:32px}.brand span{font-size:15px;letter-spacing:2px;font-weight:700}.brand small{display:block;font-size:8px;letter-spacing:2px;font-weight:400}.top{display:flex;align-items:center;gap:16px;font-size:13px}main{max-width:1260px;margin:auto;padding:42px 36px}h1{font-size:44px;letter-spacing:.08em;line-height:1.3;margin:8px 0}h2{font-size:19px;line-height:1.5;margin:8px 0 14px}p{margin:8px 0 16px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--muted);margin:0 0 10px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.heading p:not(.eyebrow){color:var(--muted);font-size:13px}.badge{background:#e7eadf;border-radius:30px;padding:7px 16px;font-size:11px}.layout{display:grid;grid-template-columns:1fr 310px;gap:24px}.card{background:#fffdf7;border:1px solid var(--line);border-radius:20px;overflow:hidden}.world{position:relative}.world-top{display:flex;justify-content:space-between;padding:22px 26px;font-size:11px;position:absolute;z-index:2;width:100%}.scene{height:340px;background:linear-gradient(#dce9de,#f5f3dd);position:relative;overflow:hidden;display:grid;place-items:center}.sun{position:absolute;right:16%;top:19%;width:66px;height:66px;border-radius:50%;background:#fff8cf;box-shadow:0 0 50px #fff8cf}.hill{position:absolute;border-radius:50% 50% 0 0;width:90%;height:140px;bottom:-50px;background:#b7cbae}.hill.one{left:-25%;transform:rotate(8deg)}.hill.two{right:-30%;background:#d1dcba;bottom:-20px;transform:rotate(-8deg)}#creature{z-index:1;width:190px;margin-top:70px;filter:drop-shadow(0 20px 12px #54734c25);animation:breathe 4s ease-in-out infinite}.plant{position:absolute;bottom:12px;color:#749270;font-size:54px;z-index:1}.p1{left:12%}.p2{right:12%;font-size:34px}.pet-info{padding:22px 32px 0;text-align:center}.pet-info h2{font-size:24px;margin:0}.pet-info p{font-size:12px;color:var(--muted)}#meters{display:flex;gap:22px;text-align:left}.meter{width:50%;font-size:10px}.track{height:6px;background:#edf0e7;border-radius:6px;margin-top:6px;overflow:hidden}.fill{height:100%;background:#8cae77;border-radius:6px}.actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:26px}.side{padding:24px;margin-bottom:20px}.side p{font-size:12px;color:var(--muted)}button,.link{font:inherit;font-size:12px;border:1px solid var(--line);border-radius:10px;background:#fffef9;color:var(--ink);padding:11px 16px;cursor:pointer;transition:background .2s,transform .2s}button:hover{background:#edf2e4;transform:translateY(-1px)}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#235841}.link{display:inline-block;text-decoration:none;margin:18px 0}label{display:block;font-size:11px;margin:15px 0 8px}input,select{display:block;width:100%;font:inherit;color:var(--ink);border:1px solid var(--line);background:white;border-radius:8px;padding:9px;margin-top:6px}input[type=range]{padding:0;accent-color:var(--green)}#shop button{display:flex;width:100%;justify-content:space-between;margin:8px 0}.collection{padding:28px;margin:6px 0 26px}.section-head{display:flex;align-items:center;justify-content:space-between}.egg-grid{display:flex;gap:16px;flex-wrap:wrap}.egg-card{border:1px solid var(--line);border-radius:14px;padding:18px;flex:1;min-width:150px;max-width:230px;text-align:center;background:#fafbf4}.egg-card svg{width:55px;height:70px}.egg-card p{font-size:10px;color:var(--muted)}.egg-card button{padding:7px 10px;margin:3px}.bottom-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.muted{font-size:11px!important;color:var(--muted)}footer{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:1px;padding:30px 0 10px}footer span{letter-spacing:0}#welcome{min-height:65vh;padding:60px 0}#welcome h1{font-size:54px;line-height:1.5}#welcome p{color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:14px 24px;border-radius:12px;z-index:10;max-width:90vw;font-size:13px}.notice{background:#fff0cf;padding:15px;border-radius:10px;font-size:12px}dialog{border:0;border-radius:25px;text-align:center;padding:45px;max-width:90vw;background:#fffdf5;color:var(--ink)}dialog::backdrop{background:#14392e99;backdrop-filter:blur(7px)}#animation-art{width:220px;margin:auto;animation:breathe 1s infinite}#pads{display:grid;grid-template-columns:1fr 1fr;gap:8px}#pads button{height:55px;background:#dce9cd}#pads button.lit{background:#efc863;box-shadow:0 0 15px #efc863}.memory{border-top:1px solid var(--line);padding:12px 0;font-size:12px}.memory button{padding:4px 10px;margin-left:5px}@keyframes breathe{50%{transform:translateY(-8px) scale(1.025)}}@media(max-width:850px){.layout{grid-template-columns:1fr}.layout aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bottom-grid{grid-template-columns:1fr 1fr}.heading{margin-bottom:20px}main{padding:28px 20px}.scene{height:310px}}@media(max-width:560px){header{height:74px;padding:0 20px}.brand{font-size:25px}.brand span{font-size:11px}.top{gap:8px}.top button{padding:6px}h1{font-size:34px}.layout aside,.bottom-grid{display:block}.section-head{align-items:flex-start;gap:8px}.section-head button{font-size:10px}.collection{padding:20px}.egg-card{max-width:none}.scene{height:290px}#meters{gap:12px}footer{display:block}footer span{display:block;margin-top:8px}#welcome h1{font-size:38px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}[hidden]{display:none!important}

.scene[data-environment="みず"]{background:linear-gradient(#dcecf0,#f4eed5)}.scene[data-environment="みず"] .hill.one{background:#94c1ba}.scene[data-environment="みず"] .hill.two{background:#b9d9d1}.scene[data-environment="もり"]{background:linear-gradient(#b8d1bf,#e4ead7)}.scene[data-environment="もり"] .plant{font-size:95px;color:#5b8063}

/* Layered artist-made PNG assets; no generated character images. */
.pet-art{display:block;position:relative;width:100%;aspect-ratio:1}.pet-art img{position:absolute;object-fit:contain;pointer-events:none}.pet-art .body{width:70%;height:74%;left:15%;top:12%}.pet-art .eye{width:15%;height:18%;top:36%}.pet-art .eye.left{left:28%}.pet-art .eye.right{right:28%}.pet-art .mouth{width:23%;height:12%;left:38.5%;top:57%}.pet-art .leg{width:22%;height:24%;top:70%}.pet-art .leg.left{left:20%}.pet-art .leg.right{right:20%;transform:scaleX(-1)}.pet-art .arm{width:25%;height:35%;top:37%}.pet-art .arm.left{left:1%;transform:scaleX(-1)}.pet-art .arm.right{right:1%}.pet-art .ear{width:25%;height:35%;top:0}.pet-art .ear.left{left:11%}.pet-art .ear.right{right:11%;transform:scaleX(-1)}.pet-art.stage-0{transform:scale(.73)}.pet-art.stage-1{transform:scale(.86)}.egg-art{display:block;width:70%;height:190px;object-fit:contain;image-rendering:pixelated;margin:auto}.egg-card .egg-art{width:55px;height:70px}footer a{color:inherit} 

.layout>*{min-width:0}.bottom-grid>*{min-width:0}

.scene[data-environment="そら"]{background:linear-gradient(#b9def5,#eef7fc)}.scene[data-environment="そら"] .hill{background:#fffdf5;bottom:20px;height:65px;border-radius:50%;opacity:.85}.scene[data-environment="そら"] .hill.two{background:#edf5ff;bottom:-15px}.scene[data-environment="そら"] .plant{display:none}.scene[data-environment="みず"] .plant{color:#659d99}.scene[data-environment="りく"]{background:linear-gradient(#dce9de,#f5f3dd)}

.original-pet{display:block;width:100%;height:210px;object-fit:contain}.original-pet.sleeping{opacity:.8;transform:rotate(-8deg)}

/* Four distinct landscapes, drawn as lightweight vector scenery. */
.scene{background-size:cover!important;background-position:center!important;isolation:isolate}
.scene .sun,.scene .hill,.scene .plant{display:none}
.scene,.scene[data-environment="りく"]{background-image:url('/assets/backgrounds/land.svg')!important}
.scene[data-environment="みず"]{background-image:url('/assets/backgrounds/water.svg')!important}
.scene[data-environment="そら"]{background-image:url('/assets/backgrounds/sky.svg')!important}
.scene[data-environment="もり"]{background-image:url('/assets/backgrounds/forest.svg')!important}
.world-top span{background:#fffdf2e8;padding:5px 12px;border-radius:20px;box-shadow:0 2px 12px #203f2420;color:#254a3d;font-weight:600}
#creature{filter:drop-shadow(0 12px 9px #183f3838)}
