@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700&family=Charm:wght@400;700&display=swap');
:root{color-scheme:light;--cream:#fff0ca;--gold:#f3cc81;--brown:#533224}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#4c716e;color:var(--cream);font:14px 'Be Vietnam Pro',sans-serif;min-height:100vh}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button{border:1px solid #c99a64;background:linear-gradient(120deg,#8e5b37,#4d3027);border-radius:24px;padding:10px 17px;box-shadow:inset 0 1px 1px #ffe4b348,0 3px 8px #25110d33}button:hover{filter:brightness(1.14)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #fff0ae;outline-offset:4px}i{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}i svg{width:24px;height:24px}button,a{touch-action:manipulation}.scenery{position:fixed;inset:0;background:linear-gradient(#3c2b3520,#274e5010),url(/hub/assets/ben-nhe-long.webp) center/cover;z-index:-3}.scenery:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#2c292e18,transparent 35%,#162e3610)}#glimmers{position:fixed;inset:0;pointer-events:none;width:100%;height:100%;z-index:-1}.topbar{display:flex;justify-content:flex-end;align-items:center;gap:24px;padding:12px 24px;max-width:1536px;margin:0 auto}.topbar nav{display:flex;align-items:center;background:linear-gradient(100deg,#644536ee,#513637ee);border:1px solid #e5b47f;border-radius:40px;box-shadow:0 3px 8px #41302d55;padding:4px}.topbar nav a,.topbar nav button{display:flex;align-items:center;gap:9px;border:0;background:none;box-shadow:none;border-radius:25px;padding:9px 18px;font-size:13px;font-weight:600;white-space:nowrap}.topbar nav .current{background:#8d5c3a77;color:#fff2b9}.topbar nav i{color:#ffe5a5}.toolbar{display:flex;align-items:center;gap:17px}.toolbar button{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}.toolbar .round{padding:0;width:44px;height:44px;border-radius:50%}.toolbar b{border-radius:50%;background:#f6dfac;color:#6c4831;min-width:20px;height:20px;font-size:10px;line-height:20px}.mobile-brand{display:none}.welcome{text-align:center;margin:15px auto 24px}.hanging-sign{position:relative;display:inline-flex;align-items:center;gap:19px;padding:5px 56px 12px;color:#fff2be;background:repeating-linear-gradient(2deg,#ffffff05 0 1px,transparent 2px 8px),linear-gradient(110deg,#5d331e,#975c2a 45%,#573018);border:2px solid #b9824f;border-radius:40% 8% 15% 5%/15% 20% 25% 30%;box-shadow:0 5px 9px #35251b88,inset 0 0 0 3px #3c201733;text-shadow:0 3px 0 #6b2915,0 0 8px #ffdc8966}.hanging-sign h1{font:700 57px/1.3 Charm,cursive;margin:0}.hanging-sign>i svg{height:50px;width:50px;fill:#ffda9244}.chain{position:absolute;top:-29px;width:5px;height:29px;background:repeating-linear-gradient(#483322 0 4px,#d5ad69 5px 7px);z-index:-1}.left-chain{left:70px}.right-chain{right:70px}.sprig{position:absolute;left:-20px;top:12px;font:30px Georgia;color:#ffc8b7;transform:rotate(-25deg)}.sprig.end{left:auto;right:-17px;transform:rotate(35deg)}.ribbon{display:table;margin:9px auto 0;padding:8px 30px;color:#5c3a2c;background:linear-gradient(100deg,#f8deb999,#fff0d7f5 15% 85%,#f7d9a799);clip-path:polygon(0 20%,4% 0,97% 3%,100% 40%,97% 75%,98% 100%,2% 94%,0 70%);font-size:13px;text-shadow:0 1px #fff8}.collection-layout{display:grid;grid-template-columns:195px minmax(0,1090px) 105px;gap:27px;max-width:1490px;margin:auto;padding:0 25px;align-items:start}.categories{padding-top:40px;position:sticky;top:30px}.category-caption{font-size:9px;letter-spacing:2px;text-shadow:0 1px 4px #3f271d;margin:0 0 10px 13px}.categories #filters{display:flex;flex-direction:column;gap:12px}.categories button{display:flex;align-items:center;gap:11px;width:100%;font-size:13px;font-weight:600;min-height:48px;text-align:left;border-radius:8px 14px 10px 6px;border-color:#a87546;background:repeating-linear-gradient(2deg,#d9aa6e11 0 1px,transparent 2px 10px),linear-gradient(100deg,#744b31,#a97341 55%,#69432c);box-shadow:0 4px 4px #291b1a44,inset 0 0 0 2px #57362144;position:relative}.categories button:before,.categories button:after{content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:#4a2e1d;top:7px;left:7px;box-shadow:0 1px #e5b97d}.categories button:after{left:auto;right:7px;top:auto;bottom:7px}.categories button i{color:#ffe5a3}.categories button[aria-pressed=true]{border:1px solid #ffe3a0;background:linear-gradient(120deg,#b77c45,#8f522c);box-shadow:0 0 13px #ffe3a566,inset 0 0 0 2px #ffe7ba44;transform:translateX(5px)}.collection-heading{display:flex;align-items:center;justify-content:space-between;padding:0 5px;margin:0 0 10px;text-shadow:0 2px 5px #25413d}.collection-heading h2{font-size:12px;font-weight:500;margin:0}.collection-heading>span{font-size:10px}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.game-card{position:relative;min-width:0;border:2px solid #fff1b8;border-radius:23px;box-shadow:0 0 7px #fff4c6,0 0 18px #ffbd6066,0 5px 12px #32372c77;isolation:isolate;background:#75583c;transition:transform .25s,box-shadow .25s;overflow:hidden;aspect-ratio:1.68}.game-card:nth-child(3n+2){box-shadow:0 0 7px #fff6bf,0 0 18px #e3ef8a88,0 5px 12px #32372c77}.game-card:nth-child(3n){box-shadow:0 0 7px #fff4c6,0 0 18px #f4bd9288,0 5px 12px #32372c77}.game-card:hover{transform:translateY(-4px);box-shadow:0 0 7px #fff4c6,0 0 25px #fff2bbaa,0 12px 15px #32372c77}.game-card>a{display:block;width:100%;height:100%;position:relative}.game-card img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .7s}.game-card:hover img{transform:scale(1.045)}.card-caption{position:absolute;inset:auto 0 0;padding:28px 48px 12px 15px;background:linear-gradient(transparent,#6e3f24c9 35%,#8f6033f5);text-shadow:0 1px 3px #412e1e}.game-card:nth-child(3n+2) .card-caption{background:linear-gradient(transparent,#466c37cf 35%,#6f7528f5)}.game-card:nth-child(3n) .card-caption{background:linear-gradient(transparent,#8b6133d9 35%,#8a6d30f5)}.card-caption h3{font-size:14px;font-weight:600;line-height:1.4;margin:0 0 3px;display:flex;align-items:center;gap:7px}.card-caption h3 i svg{width:24px;height:24px;stroke:#fff1ae}.card-caption p{font-size:9px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin:0;line-height:1.8;padding-left:31px}.play{position:absolute;bottom:14px;right:12px;background:#fff2bd;color:#754627;border:1px solid #e3ae5d;border-radius:50%;height:32px;width:32px;box-shadow:0 2px 3px #43291e55}.play svg{width:17px;height:17px;fill:currentColor}.favorite{position:absolute;top:10px;right:10px;z-index:2;border-radius:50%;background:#3e332b99;backdrop-filter:blur(8px);height:32px;width:32px;padding:6px;color:#fff5d7;border:1px solid #fff5c9aa;opacity:0;transition:opacity .2s}.favorite svg{width:17px;height:17px}.game-card:hover .favorite,.favorite:focus-visible,.favorite[aria-pressed=true]{opacity:1}.favorite[aria-pressed=true]{background:#b65659;color:#ffe4ad}.favorite[aria-pressed=true] svg{fill:currentColor}.wayfinder{margin-top:145px;text-align:center;position:sticky;top:150px;transform:rotate(2deg)}.wayfinder>p{font:17px/2 Charm;margin:0;background:repeating-linear-gradient(0deg,transparent 0 33px,#66422266 34px 36px),linear-gradient(110deg,#d79e65,#ffe1aa,#b87941);color:#5c341d;border:1px solid #a06e43;border-radius:10px;padding:10px 3px;box-shadow:0 5px 10px #4f382244}.wayfinder button{font-size:10px;padding:10px 6px;border-radius:15px;margin-top:11px;display:flex;flex-direction:column;align-items:center;gap:4px;width:100%}.sleeping-cat{height:50px;position:relative;color:#fff2a7;font:17px Charm}.sleeping-cat img{position:absolute;width:110px;bottom:0;right:0;filter:drop-shadow(0 3px 1px #815831);animation:cat 6s infinite ease-in-out}.closing{text-align:center;padding:28px 0 20px;margin-left:150px}.paper-note{display:table;margin:0 auto 20px;background:linear-gradient(110deg,#ffe9c1,#fff2d5);padding:14px 50px;position:relative;color:#68472f;font:19px/1.5 Charm;box-shadow:0 4px 10px #4a433833;transform:rotate(-3deg);border-radius:25% 5% 16% 4%/10% 13% 24% 15%}.paper-note>span{position:absolute;font:45px Charm;color:#dc8b8b;left:-16px;top:-10px;text-shadow:0 1px 1px #8d7150}.values{display:flex;justify-content:center;gap:20px;color:#553e30}.values>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:135px;height:100px;background:radial-gradient(ellipse,#fff1d2ee 40%,#fff0cacc 55%,#fff2d500 72%);font-size:11px;line-height:1.5}.values i{color:#855a2a}.values>div:nth-child(1) i{color:#819e3d}.values>div:nth-child(2) i{color:#ca7775}.values i svg{width:28px;height:28px}footer{display:flex;justify-content:center;align-items:center;gap:25px;padding:15px 20px 23px;background:linear-gradient(transparent,#183f4155);font-size:10px;text-shadow:0 1px 4px #203b38}footer>a{font:22px Charm}footer button{background:none;border:none;box-shadow:none;padding:0;font-size:10px;text-decoration:underline}.empty{background:#fff0d9e8;color:#674331;border:1px solid #dbb67e;border-radius:22px;text-align:center;padding:50px 20px}.empty i svg{width:45px;height:45px}.empty p{font-size:12px;line-height:1.8}.empty button{color:#fff1ce}.empty h3{font:29px Charm}dialog{max-width:630px;width:calc(100% - 30px);max-height:86dvh;overflow:auto;background:linear-gradient(130deg,#fff2d9,#f4dfbc);border:2px solid #c9985c;color:#674832;border-radius:25px;box-shadow:0 30px 80px #1a252b77;padding:35px}dialog::backdrop{background:#243c4199;backdrop-filter:blur(7px)}dialog h2{font:700 35px Charm;margin:0 0 16px}dialog p{font-size:13px;line-height:1.9}dialog .close{position:absolute;right:12px;top:12px;border:0;background:none;box-shadow:none;color:#875f42;padding:4px}dialog label{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid #b98a542f;font-size:13px}dialog input{accent-color:#9c6842}dialog .note{padding:14px;background:#e8cfab66;border-radius:12px;font-size:11px}dialog .update{border-left:2px solid #c7a06a;padding-left:15px;margin:24px 0}dialog h3{font-size:15px}dialog a{text-decoration:underline;color:#755b2b}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);border:1px solid #e6c085;background:#674631ed;box-shadow:0 4px 15px #273b3e66;color:#fff0ce;border-radius:25px;padding:12px 22px;max-width:90vw;z-index:10;font-size:12px;opacity:0;pointer-events:none;transition:opacity .3s}#toast.show{opacity:1}[hidden]{display:none!important}@keyframes cat{50%{transform:scaleY(1.025)}}
@media(min-width:1600px){.collection-layout{max-width:1580px;grid-template-columns:210px minmax(0,1170px) 110px;gap:25px}.card-caption h3{font-size:15px}.card-caption p{font-size:10px}.welcome{margin-top:20px}.hanging-sign h1{font-size:63px}.game-card{aspect-ratio:1.8}}
@media(max-width:1200px){.topbar{gap:13px;padding:12px 20px}.topbar nav a,.topbar nav button{padding:9px 12px;font-size:11px;gap:6px}.toolbar{gap:9px}.toolbar #my-corner{padding:10px}.collection-layout{grid-template-columns:160px minmax(0,1fr);gap:20px;padding:0 25px}.wayfinder{display:none}.categories button{font-size:11px;padding:10px;gap:8px}.categories i svg{width:20px;height:20px}.card-caption{padding-left:10px;padding-right:35px}.card-caption h3{font-size:12px;gap:5px}.card-caption p{font-size:8px;padding-left:25px}.card-caption h3 i svg{width:20px;height:20px}.play{right:8px;bottom:12px;height:26px;width:26px}.closing{margin-left:150px}.game-grid{gap:14px}.game-card{border-radius:18px;aspect-ratio:1.55}}
@media(max-width:900px){.topbar{justify-content:center;flex-wrap:wrap;gap:10px;padding:10px 15px}.topbar nav{order:2;width:100%;justify-content:center}.topbar nav a,.topbar nav button{font-size:11px;flex:1;justify-content:center;padding:10px}.topbar nav i svg{width:20px;height:20px}.mobile-brand{display:block;font:700 26px Charm;flex:1;text-shadow:0 2px 4px #4f3828}.toolbar #my-corner{font-size:11px}.toolbar .round{width:36px;height:36px}.welcome{margin-top:20px}.hanging-sign{padding:7px 40px;gap:12px}.hanging-sign h1{font-size:48px}.collection-layout{display:flex;flex-direction:column;padding:0 25px;gap:18px}.categories{position:static;padding:0;width:100%}.category-caption{display:none}.categories #filters{flex-direction:row;gap:9px;overflow:auto;padding:5px 5px 10px}.categories button{width:auto;flex:0 0 auto;min-height:40px;padding:8px 14px}.categories button[aria-pressed=true]{transform:none}.categories button:before,.categories button:after{display:none}#spaces{width:100%;scroll-margin-top:20px}.game-grid{gap:15px}.game-card{aspect-ratio:1.4}.card-caption h3{font-size:12px}.card-caption p{padding:0;font-size:8px}.card-caption h3 i{display:none}.closing{margin-left:0}.favorite{opacity:1}.collection-heading h2{font-size:11px}}
@media(max-width:650px){html{scroll-padding-top:15px}.scenery{background-position:42% center}.scenery:after{background:#2e4e5025}.topbar nav{overflow:auto;justify-content:flex-start;padding:3px;border-radius:20px}.topbar nav a,.topbar nav button{font-size:10px;gap:5px;padding:9px;flex:0 0 auto}.topbar nav i svg{width:17px;height:17px}.mobile-brand{font-size:24px}.toolbar{gap:7px}.toolbar .round{width:32px;height:32px}.toolbar i svg{width:19px;height:19px}.toolbar #my-corner{padding:8px}.toolbar #my-corner>span{display:none}.toolbar b{min-width:17px;height:17px;line-height:17px}.hanging-sign{padding:8px 30px;gap:10px}.hanging-sign h1{font-size:39px}.hanging-sign>i svg{width:35px;height:35px}.sprig{font-size:22px}.welcome{margin:21px 16px 18px}.ribbon{font-size:10px;max-width:100%;padding:9px 20px;line-height:1.6}.collection-layout{padding:0 15px;gap:8px}.categories #filters{gap:7px;padding:5px 2px 12px}.categories button{font-size:10px;padding:7px 12px;min-height:36px}.categories i svg{width:17px;height:17px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 11px}.game-card{aspect-ratio:.98;border-radius:17px}.game-card:last-child:nth-child(odd){grid-column:1/-1;aspect-ratio:2}.game-card img{object-position:center}.card-caption{padding:30px 9px 11px;background:linear-gradient(transparent,#6e3f24e8 40%,#8f6033fa)}.card-caption h3{font-size:12px;line-height:1.45;margin-bottom:3px;padding-right:0;min-height:34px;align-items:flex-end}.card-caption p{font-size:8px;padding:0 20px 0 0;line-height:1.8}.play{height:22px;width:22px;bottom:10px;right:7px}.play svg{width:12px;height:12px}.favorite{height:27px;width:27px;top:8px;right:8px;padding:5px}.favorite svg{width:15px;height:15px}.game-card:last-child:nth-child(odd) .card-caption h3{min-height:auto;font-size:15px}.game-card:last-child:nth-child(odd) .card-caption p{font-size:10px}.collection-heading{margin:0 3px 12px}.collection-heading h2{font-size:10px}.collection-heading>span{font-size:9px}.closing{padding:30px 15px 10px}.paper-note{font-size:17px;padding:12px 35px;margin-bottom:14px}.values{gap:0;justify-content:space-between}.values>div{width:25%;font-size:9px;height:95px;gap:5px}.values i svg{width:23px;height:23px}footer{flex-wrap:wrap;gap:8px 20px;padding:10px 20px 22px}footer>a{flex-basis:100%;text-align:center;font-size:23px}footer span{font-size:9px}.empty{padding:30px 18px}.empty h3{font-size:26px}dialog{padding:30px 22px}dialog h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}body.reduced *{animation:none!important;transition:none!important}body.reduced{scroll-behavior:auto}
.topbar{max-width:1200px;margin:0 24px 0 auto}.topbar nav{flex:1;justify-content:space-around}@media(max-width:900px){.topbar{margin:0 auto}.topbar nav{flex:auto;justify-content:center}}@media(max-width:650px){.topbar nav{justify-content:flex-start}}
#random-mobile{display:none;padding:5px;width:27px;height:27px;border-radius:50%;margin-left:auto;margin-right:8px}#random-mobile svg{height:16px;width:16px}@media(max-width:1200px){#random-mobile{display:inline-flex}}
