/* Shared digital habitat, kept separate from the terminal modules. */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.pet-habitat{display:grid;grid-template-columns:minmax(0,1fr) 385px;border:1px solid #2a5038;background:linear-gradient(110deg,#07180ddc,#06140de8);margin-top:21px;min-height:194px;position:relative}.pet-habitat::before{content:'';position:absolute;left:-1px;top:-1px;height:3px;width:44px;background:#dcb675}.pet-world{position:relative;overflow:hidden;min-height:194px;background:radial-gradient(ellipse at 50% 100%,#54792e1f,transparent 65%)}.pet-heading{position:absolute;top:13px;left:17px;right:17px;display:flex;align-items:center;gap:8px;z-index:2;pointer-events:none}.pet-heading h2{font-size:10px;font-weight:500;margin:0;letter-spacing:1px;color:#bfdbbd}.pet-heading h2 span{font-size:8px;color:#729176;margin-left:7px}.pet-stage{margin-left:auto;font-size:9px;border:1px solid #75643c;padding:3px 6px;color:#e2c888}.pet-signal{width:5px;height:5px;border-radius:50%;background:#e1c181;box-shadow:0 0 10px #e1c18155}.pet-runway{position:absolute;inset:0 20px 26px;z-index:1}.pet-walker{position:absolute;bottom:0;left:25%;width:146px;height:167px;will-change:transform}.pet-facing{width:100%;height:100%;transform-origin:center bottom}.pet-size{width:100%;height:100%;transform-origin:center bottom;transform:scale(.64);transition:transform 2s}.giraffe{display:block;width:100%;height:100%;fill:none;stroke:none;filter:drop-shadow(0 0 5px #b5ff9f30);overflow:visible}.giraffe *{stroke-linejoin:round;stroke-linecap:round}.pet-leg{transform-box:fill-box;transform-origin:50% 4%;animation:pet-step 1s ease-in-out infinite alternate}.leg-front,.leg-near-back{animation-delay:-1s}.pet-neck{transform-origin:154px 170px;animation:pet-neck 2s ease-in-out infinite alternate}.pet-tail{transform-origin:52px 155px;animation:pet-tail 2.4s ease-in-out infinite alternate}.pet-eye{animation:pet-blink 6s infinite;transform-box:fill-box;transform-origin:center}.pet-shadow{animation:pet-shadow 1s infinite alternate}.pet-sky{position:absolute;inset:36px 25px 35px;display:flex;align-items:center;justify-content:space-between;color:#73995544;font-size:13px;pointer-events:none}.pet-sky span:nth-child(even){align-self:flex-start;margin-top:20px}.pet-sky span:nth-child(3){align-self:flex-end;font-size:24px}.pet-ground{position:absolute;bottom:25px;left:0;right:0;height:30px;background:linear-gradient(#62b56d1c 1px,transparent 1px),linear-gradient(90deg,#62b56d1c 1px,transparent 1px);background-size:30px 12px;transform:perspective(60px) rotateX(30deg);transform-origin:center bottom;border-bottom:1px solid #4e875033}.pet-caption{position:absolute;bottom:8px;left:17px;right:17px;display:flex;justify-content:space-between;gap:12px;font:7px var(--mono);letter-spacing:1px;color:#587861}.pet-caption b{color:#a09970;font-weight:400}.pet-caption span:nth-child(2){color:#98b78d}.pet-speech{position:absolute;left:40%;bottom:116px;white-space:nowrap;border:1px solid #6b9864;background:#102b1bee;padding:6px 9px;font-size:9px;color:#c3ffb8;z-index:3}.pet-care{padding:18px 19px 12px;border-left:1px solid #274b32;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:3}.pet-care-heading{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1px;color:#94bea2;gap:12px}.pet-care-heading small{font-family:inherit;font-size:8px;color:#658a6f;letter-spacing:0}.pet-care-heading>span:last-child{color:#dbbd7d;white-space:nowrap}.pet-meters{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:13px 0 14px}.pet-meters label{font-size:9px;margin:0 0 6px;display:flex;justify-content:space-between;color:#799c84;letter-spacing:0}.pet-meters label span{font-size:8px;margin:0;color:#a2c4aa}.pet-meters meter{width:100%;height:4px;display:block;border:0;appearance:none;background:#1d3525}.pet-meters meter::-webkit-meter-bar{background:#1d3525;border:0;height:4px;border-radius:0}.pet-meters meter::-webkit-meter-optimum-value{background:#78c990}.pet-meters meter::-moz-meter-bar{background:#78c990}.pet-meters>div:first-child meter::-webkit-meter-optimum-value{background:#cbb579}.pet-controls{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:6px}.pet-controls select,.pet-controls button{font:10px var(--mono);height:31px;border:1px solid #386044;border-radius:0;color:#a7d5b5;background:#0c2115;min-width:0}.pet-controls select{padding:0 5px;color:#d5ce9e;outline-color:#8be2a5}.pet-controls button:hover:not(:disabled){border-color:#99f5b1;background:#1b3923;color:#c5ffd7;box-shadow:0 0 12px #62ff9d15}.pet-controls button:disabled{cursor:default;opacity:.45;font-size:9px}.pet-feedback{font-size:9px;line-height:1.5;min-height:14px;margin:9px 0;color:#84a88b;letter-spacing:0}.pet-feedback.is-error{color:#efb388}.pet-growth{display:flex;align-items:center;gap:9px;font-size:8px;color:#557f61}.pet-growth progress{appearance:none;border:0;width:50px;flex:1;height:3px;background:#1b3523}.pet-growth progress::-webkit-progress-bar{background:#1b3523}.pet-growth progress::-webkit-progress-value{background:#b5a26c}.pet-growth progress::-moz-progress-bar{background:#b5a26c}.pet-effects{position:absolute;inset:0;pointer-events:none}.pet-food{display:none;position:absolute;top:26%;right:-10px;font-size:27px;filter:drop-shadow(0 0 8px #b6ff6560)}.bubble{display:none;position:absolute;border:1px solid #a3ffe3;background:radial-gradient(circle at 25% 25%,#c7fff290,#7bdaee10 40%);border-radius:50%;width:26px;height:26px;left:25%;top:50%}.b2{left:55%;top:30%;width:17px;height:17px;animation-delay:-.7s!important}.b3{left:43%;top:60%;width:34px;height:34px;animation-delay:-1.3s!important}.b4{left:66%;top:55%;width:20px;height:20px;animation-delay:-.4s!important}.pet-heart{display:none;position:absolute;right:4%;top:6%;font-size:40px;color:#b5ffc2;text-shadow:0 0 15px #75ff94}.is-caring .pet-leg{animation-play-state:paused}.is-feed .pet-neck{animation:pet-chew .65s ease-in-out infinite alternate}.is-feed .pet-food{display:block;animation:pet-food 1.5s ease-out infinite}.is-wash .bubble{display:block;animation:pet-bubble 1.8s ease-in-out infinite}.is-wash .giraffe{filter:drop-shadow(0 0 10px #8affce80)}.is-pet .pet-heart{display:block;animation:pet-heart 1.6s ease-out infinite}.is-pet .pet-neck{animation:pet-happy .7s ease-in-out infinite alternate}.motion-paused .pet-habitat *{animation-play-state:paused!important}.pet-offline .pet-signal{background:#7f7f67;box-shadow:none}.admin-pet-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:25px}.admin-pet-summary>div{border:1px solid #305039;padding:18px;background:#0b1e12}.admin-pet-summary strong{display:block;color:#d3c38c;font-size:23px;font-weight:500;margin-top:10px}.admin-pet-summary span{font-size:10px;color:#8aaa91}.pet-table-wrap{overflow:auto}.pet-record-table{width:100%;border-collapse:collapse;font-size:11px;white-space:nowrap}.pet-record-table th{text-align:left;color:#6d967a;font-weight:400;font-size:9px}.pet-record-table td,.pet-record-table th{padding:14px 10px;border-bottom:1px solid #23412c}.pet-record-table td:last-child{color:#cfbf84}.pet-record-table td:first-child{color:#87a28d;font-size:10px}.pet-record-filter{display:flex;gap:8px;align-items:center}.pet-record-filter label{margin:0}.pet-record-filter select{background:#0a1f12;color:#abd3b5;border:1px solid #31533b;padding:7px;font:11px var(--mono)}
@keyframes pet-step{from{transform:rotate(-10deg)}to{transform:rotate(10deg)}}@keyframes pet-neck{to{transform:rotate(2deg)}}@keyframes pet-tail{to{transform:rotate(-16deg)}}@keyframes pet-blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.1)}}@keyframes pet-shadow{to{opacity:.08}}@keyframes pet-chew{to{transform:rotate(9deg)}}@keyframes pet-food{from{transform:translate(12px,0) scale(1);opacity:1}to{transform:translate(-14px,9px) scale(.35);opacity:.1}}@keyframes pet-bubble{from{transform:translateY(16px) scale(.6);opacity:0}40%{opacity:1}to{transform:translateY(-45px) scale(1.2);opacity:0}}@keyframes pet-heart{from{transform:translateY(10px) scale(.6);opacity:0}35%{opacity:1}to{transform:translateY(-23px) scale(1);opacity:0}}@keyframes pet-happy{to{transform:rotate(-6deg)}}
@media(min-width:1000px){.topbar{height:66px}.footer{height:46px}.home-main{padding:20px 0 16px}.welcome{margin-bottom:21px;grid-template-columns:minmax(0,1fr) 265px}.glitch-title{font-size:70px;margin:14px 0 12px}.title-chinese{font-size:36px}.title-cursor{font-size:42px}.access-console{padding:12px 16px 10px}.console-head{padding-bottom:8px;margin-bottom:6px}.console-prompt{padding-top:7px;margin-top:6px}.module-heading{margin-bottom:12px}.entry{min-height:210px;padding:17px 21px 15px}.module-art{margin:17px 0 15px;height:40px}.entry-icon{height:42px;width:44px}.entry-icon svg{width:26px;height:26px}.entry-title{font-size:19px}.entry-description{margin-top:8px}.entry-bottom{padding-top:14px;margin-top:15px}.access-note{margin-top:13px}.pet-habitat{margin-top:18px}}
@media(min-width:1600px) and (min-height:900px){.home-main{padding:30px 0}.welcome{margin-bottom:30px}.glitch-title{font-size:90px}.title-chinese{font-size:46px}.entry{min-height:245px}.module-art{margin-block:25px 20px}.pet-habitat,.pet-world{min-height:235px}.pet-walker{width:180px;height:207px}.pet-habitat{margin-top:26px}.pet-care{padding:24px}.pet-speech{bottom:170px}}
@media(max-width:1120px){.pet-habitat{grid-template-columns:minmax(0,1fr) 355px}.pet-caption span:last-child{display:none}.pet-care{padding-inline:15px}.pet-heading h2 span{font-size:7px}}
@media(max-width:850px){.pet-habitat{grid-template-columns:minmax(0,1fr) 320px}.pet-care-heading small{display:none}.pet-care{padding-inline:12px}.pet-heading h2 span{display:none}.pet-caption{font-size:7px;letter-spacing:0}}
@media(max-width:700px){.pet-habitat{grid-template-columns:1fr;margin-top:24px}.pet-world{height:205px}.pet-care{border-left:0;border-top:1px solid #284b32;padding:18px}.pet-care-heading small,.pet-heading h2 span{display:inline}.pet-controls select,.pet-controls button{height:36px}.pet-caption span:last-child{display:block;font-size:6px}.pet-walker{width:160px;height:182px}.admin-pet-summary{gap:7px}.admin-pet-summary>div{padding:12px}.admin-pet-summary strong{font-size:18px}.pet-record-table td,.pet-record-table th{padding:12px 8px}}
@media(prefers-reduced-motion:reduce){.pet-habitat *{animation:none!important;transition:none!important}}
@media(min-width:1000px) and (max-height:820px){.topbar{height:60px}.footer{height:40px}.home-main{padding-block:14px 12px}.welcome{margin-bottom:17px}.entry{min-height:200px;padding-block:15px}.module-art{height:38px;margin-block:13px}.pet-habitat,.pet-world{min-height:186px}.pet-habitat{margin-top:16px}.pet-care{padding-block:14px 10px}}
