/* Lively lobby: warm paper, grape ink and playful, restrained motion. */
:root{color-scheme:light;--bg:#f7f5f0;--panel:#fff;--line:#29223d12;--muted:#746e83;--ink:#302440;--accent:#7751cf}
body{background:radial-gradient(ellipse at 83% 0,#e9e0ff80,transparent 38%),var(--bg)}
.sidebar{background:#fffdf9;border-color:#e9e4ed;padding-top:32px;scrollbar-width:thin;scrollbar-color:#d4cbe1 transparent}
.brand{color:#342044}.brand small{color:#81728e}.side-label{color:#85798c}.mode-filters button,.filter-tag{color:#766a82;border-radius:13px;transition:background .2s,transform .25s,color .2s}.mode-filters button:hover,.filter-tag:hover{color:#6942b0;background:#f1eaf9;transform:translateX(3px)}.mode-filters button.active{background:#784fc7;color:#fff;box-shadow:0 6px 16px #7548bc24}.filter-tag.active{color:#6f40b5;background:#efe6fc}.nav-count{color:inherit;opacity:.8}.dot{background:#e3fc98}.filter-tag .category-icon{color:inherit}.sidebar-bottom{color:#7c6d88}.sidebar-bottom strong{color:#554063}.little-orbit{color:#8454cc}.night-nav{color:#456955;background:#edf3e9;border-color:#dce8d5}.night-nav small{color:#526846}.personality-nav{color:#895088;background:#f9edf5;border-color:#efdeeb}.personality-nav small{color:#855579}
.topbar{height:82px;border:0}.breadcrumb{color:#8a7e93}.breadcrumb b{color:#493852}.breadcrumb span{color:#c4b8cb}.search-wrap{height:44px;background:#fff;border:1px solid #e8e1ed;border-radius:30px;box-shadow:0 3px 10px #46365a03}.search-wrap input{color:#473455;font-size:13px}.search-wrap input::placeholder{color:#93849d}.search-wrap kbd{border-color:#e0d6e9;color:#8c7b98}.top-note{color:#82738b}.top-note i{background:#77a356}main{padding-top:24px;max-width:1510px}.intro{position:relative;min-height:190px;gap:24px;margin-bottom:32px}.overline{color:#8b6ca5;font-weight:700;letter-spacing:2px;font-size:10px}.intro h1{font-size:clamp(38px,4.2vw,64px);line-height:1.18;letter-spacing:-2px;margin:13px 0 18px;font-weight:850}.intro h1>span{color:#8052c6}.title-loop{position:relative;display:inline-block;isolation:isolate}.title-loop:after{content:'';position:absolute;left:0;right:-6px;bottom:2px;height:13px;background:#d9ee9a;z-index:-1;transform:rotate(-3deg);border-radius:50%}.intro p:not(.overline){font-size:13px;color:#83748d;line-height:1.7}.random-button{align-self:flex-end;margin-bottom:8px;border:1px solid #4b305c;background:#392347;color:#fff;border-radius:50px;padding:14px 22px;font-size:13px;box-shadow:0 5px 0 #d9cce4;transition:transform .22s,box-shadow .22s}.random-button span{color:#e1fa9d;font-size:25px}.random-button:hover{background:#573467;transform:translateY(-3px);box-shadow:0 8px 0 #d9cce4}.random-button:active{transform:translateY(3px);box-shadow:0 1px 0 #d9cce4}
.intro-sticker{position:absolute;left:61%;top:18px;width:145px;height:155px;transform:rotate(9deg);pointer-events:none}.sticker-cat{position:relative;margin:0 auto;width:105px;height:110px;transform:rotate(-9deg)}.sticker-cat img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 5px #68421b18)}.sticker-note{display:block;margin:13px -9px 0;background:#e1f2af;color:#526036;border:1px solid #bdcd90;border-radius:4px;padding:7px 9px;transform:rotate(-13deg);text-align:center;font-size:12px;font-weight:700;box-shadow:3px 3px 0 #44304c0c}.sticker-spark{position:absolute;right:-26px;top:1px;color:#b8cd79;font-size:39px}
.featured{gap:20px;margin-bottom:25px;grid-template-columns:minmax(0,1.9fr) minmax(250px,1fr)}.hero{min-height:365px;border-radius:25px;border:0;box-shadow:0 12px 24px #23463d14;color:#fff}.hero-art{transition:transform 1s cubic-bezier(.2,.8,.2,1);transform:scale(1.035) translate(var(--hero-x,0px),var(--hero-y,0px))}.hero-copy{padding:31px 32px}.hero h2{font-size:46px;letter-spacing:1px;margin:22px 0 12px}.hero-label{font-size:11px;background:#ffffff14;border:1px solid #ffffff29;border-radius:30px;padding:8px 12px;backdrop-filter:blur(5px)}.hero-copy .hero-detail{font-size:12px}.play-button{border-radius:40px;padding:13px 21px;gap:21px;background:#e1f7a2;box-shadow:0 5px 0 #09272970}.hero-index{font-size:11px;font-weight:700}.feature-stack{gap:20px}.mini-feature{border-radius:24px;padding:25px;color:#fff;transition:transform .3s,box-shadow .3s}.mini-feature span{font-size:11px}.mini-feature h2{font-size:26px}.mini-feature p{font-size:12px}.mini-feature b{background:#ffffff22;border:1px solid #ffffff26;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.mini-feature:hover{transform:translateY(-4px);box-shadow:0 10px 22px #45315c20}.mini-feature:active{transform:scale(.98)}
.discoveries{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:39px}.night-promo,.personality-promo{margin:0;border-radius:22px;padding:18px;gap:17px;min-width:0;min-height:138px;transition:transform .3s,box-shadow .3s}.night-promo{background:#e6eddf;color:#40513e;border:1px solid #d7e2cd}.night-promo img{width:94px;height:100px;border-radius:15px;transform:rotate(-5deg)}.night-promo>div>span{color:#64765b;font-size:8px}.night-promo h2,.personality-promo h2{font-size:19px;font-weight:700;letter-spacing:0;line-height:1.5;margin:8px 0}.night-promo p{color:#6f7d64;font-size:10px}.night-promo>b,.personality-promo>b{display:none}.personality-promo{background:#eee4f5;border-color:#e5d7ed}.personality-promo img{width:94px;height:100px;border-radius:16px;transform:rotate(5deg)}.personality-promo>div>span{color:#8c659e;font-size:9px}.personality-promo p{color:#886e97;font-size:10px}.night-promo:hover,.personality-promo:hover{transform:translateY(-4px);box-shadow:0 10px 25px #4633550d}
.section-heading{margin-bottom:19px}.section-heading h2{font-size:24px;font-weight:800}.section-mark{height:24px;width:7px;background:#8b5ccc}.section-heading #visibleCount{color:#886c9b;background:#eae2f1;border-radius:20px;padding:6px 10px}.section-tip{color:#91829c;font-size:11px}.quick-tags{gap:9px;margin-bottom:26px}.quick-tags button{background:#fff;border:1px solid #e5ddea;color:#85728f;border-radius:25px;font-size:12px;padding:9px 16px;min-height:38px;transition:transform .2s,background .2s}.quick-tags button.active{background:#7751c4;color:#fff;box-shadow:0 4px 10px #7549b61f}.quick-tags button:hover{transform:translateY(-2px);border-color:#b29bc9}.game-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:23px 20px}.game-card{padding:9px 9px 14px;background:#fff;border:1px solid #ece5ef;border-radius:22px;box-shadow:0 4px 0 #e9e2ec88;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s}.game-card:focus-within{border-color:#a583cf}.card-image{border-radius:15px;aspect-ratio:1.5;box-shadow:none}.card-image img{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.card-image:after{content:'开始玩 ↗';font-size:13px;font-weight:700;background:#31224155}.card-body{padding:13px 7px 0}.card-title{font-size:15px;color:#44324f;margin-bottom:8px}.card-title a:hover{color:#8a58c5}.card-desc{font-size:11px;color:#94849e;line-height:1.7;margin-bottom:13px}.card-tag{color:#9982a9;font-size:10px;background:#f5f0f8;padding:4px 7px;border-radius:6px}.card-links .cheat{color:#688443;font-size:10px}.card-links .cheat:hover{color:#476729}.card-new{background:#e4f7b2;color:#4d6330;border-radius:7px;box-shadow:0 2px 5px #0001}.no-results{background:#fff;color:#8f799e;border-color:#dac9e7}.no-results strong{color:#7c539c}.no-results button{background:#7751c4;color:#fff}footer{color:#97889e;margin-top:52px}.footer-brand{color:#6b4b81}.footer-brand span{color:#a78eb6}.skip-link{background:#7c50c8;color:#fff}.is-searching .discoveries{display:none}
@media(hover:hover) and (pointer:fine){.game-card:hover{transform:translateY(-7px) rotate(-.6deg);box-shadow:0 14px 24px #50316314;border-color:#d2bde5}.game-card:nth-child(even):hover{transform:translateY(-7px) rotate(.6deg)}}
@keyframes welcome-in{from{opacity:.4;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes sticker-float{0%,100%{transform:translateY(0) rotate(9deg)}50%{transform:translateY(-8px) rotate(4deg)}}
@media(prefers-reduced-motion:no-preference){.intro-sticker{animation:sticker-float 4s ease-in-out 3}.featured{animation:welcome-in .65s both}.game-card.card-arrive{animation:welcome-in .45s backwards;animation-delay:var(--arrival-delay,0ms)}.sidebar{transition:opacity .18s}}
@media(min-width:1700px){.game-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1200px){.intro h1{font-size:48px}.intro-sticker{left:62%;transform:scale(.8)}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.featured{grid-template-columns:minmax(0,1.8fr) minmax(210px,1fr)}.hero-copy{padding:26px}.hero h2{font-size:39px}.night-promo,.personality-promo{padding:14px;gap:12px}.night-promo img,.personality-promo img{width:65px;height:88px}.night-promo h2,.personality-promo h2{font-size:16px}}
@media(max-width:1000px){.intro-sticker{display:none}.featured{grid-template-columns:1fr}.feature-stack{grid-template-columns:1fr 1fr;grid-template-rows:150px}.hero{min-height:350px}.discoveries{gap:14px}.night-promo img,.personality-promo img{width:55px;height:85px}.night-promo h2,.personality-promo h2{font-size:15px}}
@media(max-width:820px){.mobile-nav{background:#fffdf9ed;border-color:#ebe3ef;color:#442b55}.mobile-nav button{color:#714ba1;background:#f0e7fa;border-color:#dfd0ed;border-radius:25px}.sidebar{background:#fffdf9!important}.sidebar .mode-filters button.active{background:#7751c4!important;color:#fff}.sidebar .mode-filters button:hover{color:#6c439a}.sidebar .mode-filters button.active:hover{color:#fff}#navClose{color:#7b658b;border-color:#e5d9ed;border-radius:22px}.nav-backdrop:not([hidden]){background:#35234455}.topbar{height:67px}.intro{min-height:180px}.intro h1{font-size:46px}.intro-sticker{display:block;left:61%;top:6px}.random-button{padding:12px 15px}.discoveries{margin-bottom:30px}}
@media(max-width:620px){main{padding:10px 18px 0}.topbar{padding:10px 18px}.intro{min-height:210px;display:block;margin-bottom:24px}.intro h1{font-size:40px;letter-spacing:-1px;margin-bottom:13px;max-width:245px}.overline{font-size:8px;letter-spacing:1px}.intro p:not(.overline){font-size:11px;max-width:255px;line-height:1.8}.intro-sticker{left:auto;right:-4px;top:30px;width:94px;height:115px;scale:.75;transform-origin:right center}.sticker-note{font-size:11px;white-space:nowrap}.sticker-spark{right:-6px;font-size:26px}.random-button{font-size:11px;padding:7px 15px;margin:17px 0 0;min-height:40px}.random-button span{font-size:21px;margin-right:5px}.featured{gap:12px;margin-bottom:17px}.hero{min-height:350px;border-radius:23px}.hero-copy{padding:25px 23px}.hero h2{font-size:38px}.hero-label{font-size:9px;padding:7px 10px}.hero-copy .hero-detail{font-size:11px}.hero-meta{font-size:9px}.feature-stack{gap:12px;grid-template-rows:133px}.mini-feature{padding:15px;border-radius:20px}.mini-feature span{font-size:8px}.mini-feature h2{font-size:20px}.mini-feature p{font-size:10px}.mini-feature b{height:25px;width:25px;font-size:16px;bottom:10px;right:10px}.discoveries{grid-template-columns:1fr;gap:12px;margin-bottom:28px}.night-promo,.personality-promo{min-height:111px;padding:14px 18px;border-radius:20px;gap:20px}.night-promo img,.personality-promo img{width:70px;height:80px}.night-promo h2,.personality-promo h2{font-size:17px}.night-promo p,.personality-promo p{font-size:9px}.section-heading h2{font-size:22px}.quick-tags{gap:7px;margin-bottom:16px}.quick-tags button{font-size:11px;padding:9px 14px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 11px}.game-card{padding:6px 6px 11px;border-radius:17px}.card-image{border-radius:12px;aspect-ratio:1.3}.card-body{padding:11px 4px 0}.card-title{font-size:13px}.card-desc{font-size:10px;margin-bottom:9px}.card-tag,.card-links .cheat{font-size:9px}.section-heading #visibleCount{font-size:9px}.card-new{font-size:7px}.game-card:active{transform:scale(.98)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-art{transform:none!important}}
@media(max-width:620px){.intro-sticker{right:17px;width:105px}.sticker-spark{right:0}}


@media(max-width:820px){.sidebar{opacity:0}.nav-open .sidebar{opacity:1}}
@media(max-width:375px){.intro h1{font-size:34px;max-width:210px}.intro-sticker{scale:.58;right:8px;top:29px}.intro p:not(.overline){max-width:205px;font-size:10px}.intro{min-height:202px}}
.card-desc{color:#7d6b89}.card-tag{color:#7d648c}.intro p:not(.overline){color:#7d6a89}.quick-tags button{color:#756081}.quick-tags button.active{color:#fff}
