/* 草根云 · 夜间小窝。Only the homepage hero illustration. */
.cozy-hero{margin:0;isolation:isolate;}
.cozy-art{position:relative;aspect-ratio:1;overflow:hidden;border:1px solid #46566b;border-radius:26px 26px 22px 22px;background:#182237;box-shadow:0 8px 0 #111a21;}
.cozy-art>img{display:block;width:100%;height:100%;object-fit:cover;}
.cozy-art::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 5px #e9eed508;}
.cozy-hero .cozy-pause{position:absolute;z-index:3;top:12px;left:12px;display:flex;align-items:center;gap:6px;min-width:60px;min-height:44px;padding:5px 10px;border:1px solid #8396ad70;border-radius:10px;background:#142139e8;color:#eaf3ee;font-size:11px;cursor:pointer;transition:background .15s,transform .15s;}
.cozy-pause:hover{background:#25344a;}.cozy-pause:active{transform:translateY(1px);}
.cozy-hero .cozy-pause svg{width:12px;height:12px;}.cozy-hero .cozy-play-icon{display:none;}.cozy-hero[data-paused="true"] .cozy-play-icon{display:block;}.cozy-hero[data-paused="true"] .cozy-pause-icon{display:none;}
.cozy-hero .cozy-motion{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.cozy-star{transform-box:fill-box;transform-origin:center;animation:cozy-star 4.8s ease-in-out infinite;}.cozy-star:nth-child(2n){animation-delay:-2.2s;}
.cozy-typing{animation:cozy-chat 12s ease-in-out infinite;}.cozy-typing circle{animation:cozy-dot 1.35s ease-in-out infinite;}.cozy-typing circle:nth-child(2){animation-delay:.15s;}.cozy-typing circle:nth-child(3){animation-delay:.3s;}
.cozy-laptop-reply{animation:cozy-chat 12s ease-in-out infinite;}.cozy-reply-line{stroke-dasharray:40;animation:cozy-reply 12s ease-in-out infinite;}
.cozy-nibble{transform-origin:242px 812px;animation:cozy-nibble 12s linear infinite;}
.cozy-offer{transform-origin:360px 764px;animation:cozy-offer 12s ease-in-out infinite;}
.cozy-blade{transform-box:fill-box;transform-origin:50% 100%;animation:cozy-grass 3s ease-in-out infinite;}.cozy-blade:nth-child(2){animation-delay:-.7s;}.cozy-blade:nth-child(3){animation-delay:-1.4s;}
.cozy-feeding{animation:cozy-feed 12s ease-in-out infinite;transform-origin:24% 80%;}
.cozy-heart{transform-box:fill-box;transform-origin:center;animation:cozy-heart 12s ease-in-out infinite;}
.cozy-hero .cozy-gpu-label{position:absolute;top:3.4%;right:5.5%;width:14%;text-align:center;color:#ecf3d9;font:600 clamp(13px,1.65vw,23px)/1.2 var(--f-mono);letter-spacing:.03em;transform:rotate(-14deg);text-shadow:0 1px 2px #142039;}
.cozy-hero .cozy-shop{position:absolute;right:5.7%;top:16.5%;width:8.5%;aspect-ratio:1;color:#e0f0b3;transform:rotate(-10deg);animation:cozy-shop 12s ease-in-out infinite;pointer-events:none;}
.cozy-hero .cozy-shop svg{width:100%;height:100%;}
.cozy-check{stroke-dasharray:24;stroke-dashoffset:24;animation:cozy-check 12s ease-in-out infinite;}
.cozy-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px;padding-inline:3px;min-height:32px;}
.cozy-caption-text{position:relative;min-width:0;min-height:24px;flex:1;font:400 13px/1.6 var(--f-body);color:var(--fg-2);}
.cozy-caption-text>span{position:absolute;inset:0;white-space:nowrap;animation:cozy-caption 12s ease-in-out infinite;}
.cozy-caption-text>span:nth-child(2){animation-delay:-8s;}.cozy-caption-text>span:nth-child(3){animation-delay:-4s;}
.cozy-story-dots{display:flex;align-items:center;gap:5px;flex:none;}
.cozy-story-dots i{width:5px;height:5px;border-radius:50%;background:#55716c;animation:cozy-marker 12s linear infinite;}.cozy-story-dots i:nth-child(2){animation-delay:-8s;}.cozy-story-dots i:nth-child(3){animation-delay:-4s;}
.cozy-hero[data-paused="true"] .cozy-motion *,.cozy-hero[data-paused="true"] .cozy-shop,.cozy-hero[data-paused="true"] .cozy-shop *,.cozy-hero[data-paused="true"] .cozy-caption-text>span,.cozy-hero[data-paused="true"] .cozy-story-dots i{animation-play-state:paused;}
.cozy-hero[data-offscreen="true"] .cozy-motion *,.cozy-hero[data-offscreen="true"] .cozy-shop,.cozy-hero[data-offscreen="true"] .cozy-shop *,.cozy-hero[data-offscreen="true"] .cozy-caption-text>span,.cozy-hero[data-offscreen="true"] .cozy-story-dots i{animation-play-state:paused;}
@keyframes cozy-star{0%,100%{opacity:.25;transform:scale(.8);}50%{opacity:.8;transform:scale(1.08);}}
@keyframes cozy-dot{0%,70%,100%{opacity:.35;transform:translateY(0);}35%{opacity:1;transform:translateY(-3px);}}
@keyframes cozy-chat{0%,26%{opacity:1;transform:translateY(0);}33%,92%{opacity:0;transform:translateY(-5px);}100%{opacity:1;transform:translateY(0);}}
@keyframes cozy-reply{0%{stroke-dashoffset:40;}14%,27%{stroke-dashoffset:0;}33%,100%{stroke-dashoffset:40;}}
@keyframes cozy-nibble{0%,30%,60%,100%{transform:scaleY(1);}34%,42%,50%,58%{transform:scaleY(1.09);}38%,46%,54%{transform:scaleY(.98);}}
@keyframes cozy-offer{0%,28%,64%,100%{transform:rotate(0);}36%,48%,58%{transform:rotate(-3deg);}42%,54%{transform:rotate(1deg);}}
@keyframes cozy-grass{0%,100%{transform:rotate(-5deg);}50%{transform:rotate(7deg);}}
@keyframes cozy-feed{0%,24%,70%,100%{opacity:0;transform:translate(0,0);}35%,56%{opacity:1;transform:translate(-5px,5px);}62%{opacity:.7;transform:translate(0,0);}}
@keyframes cozy-heart{0%,32%,68%,100%{opacity:0;transform:translateY(6px) scale(.65);}40%{opacity:.8;transform:translateY(0) scale(1);}58%{opacity:0;transform:translateY(-15px) scale(.9);}}
@keyframes cozy-shop{0%,61%,100%{opacity:0;transform:translateY(4px) rotate(-10deg) scale(.92);}68%,90%{opacity:1;transform:translateY(0) rotate(-10deg) scale(1);}96%{opacity:0;transform:translateY(-3px) rotate(-10deg) scale(1);}}
@keyframes cozy-check{0%,71%,100%{stroke-dashoffset:24;}78%,92%{stroke-dashoffset:0;}}
@keyframes cozy-caption{0%,27%{opacity:1;transform:translateY(0);}33%,94%{opacity:0;transform:translateY(-4px);}100%{opacity:1;transform:translateY(0);}}
@keyframes cozy-marker{0%,30%,100%{background:var(--grass);}34%,96%{background:#55716c;}}
@media(max-width:900px){.cozy-hero{margin-top:6px;}.cozy-hero .cozy-gpu-label{font-size:clamp(14px,4vw,22px);}}
@media(max-width:380px){.cozy-caption-text{font-size:12px;}.cozy-caption{gap:6px;}.cozy-art{border-radius:20px;}.cozy-hero .cozy-pause{top:10px;left:10px;}}
@media(prefers-reduced-motion:reduce){.cozy-hero .cozy-motion *,.cozy-hero .cozy-shop,.cozy-caption-text>span,.cozy-story-dots i{animation:none!important;}.cozy-hero .cozy-pause{display:none;}.cozy-typing,.cozy-feeding,.cozy-heart,.cozy-shop{opacity:0;}.cozy-caption-text>span{opacity:0;}.cozy-caption-text>span:first-child{opacity:1;}.cozy-story-dots i:first-child{background:var(--grass);}}
