/* Mobile-first browsing refinements. Original desktop layout remains available. */
body{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;-webkit-text-size-adjust:100%}
button,input,select,textarea{font-family:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #bcb1ff;outline-offset:3px}
.mobile-nav,.category-tabs,.notice-ticker{display:none}.list-title{display:flex;align-items:center;gap:12px}.count-badge{font-size:12px;color:var(--brand);font-weight:700;background:#efedff;padding:5px 9px;border-radius:20px;white-space:nowrap}.search-wrap label{display:block}.search-wrap input{font:inherit}.search-wrap select{font:inherit}.game-body .game-name{font-size:inherit;color:var(--ink);font-weight:800;text-decoration:none}.game-entry{display:inline-block;margin:0 17px 18px;color:var(--brand);font-size:13px;font-weight:800;text-decoration:none}.game-subtitle{overflow-wrap:anywhere}.empty-games{grid-column:1/-1;padding:40px 20px;text-align:center;color:var(--muted);background:white;border-radius:14px}.empty-games b{display:block;color:var(--ink);margin-bottom:8px}.empty-games button{border:0;border-radius:8px;background:#efedff;color:var(--brand);padding:12px 20px;font-weight:800;margin-top:12px}.primary-actions,.extra-actions{display:flex;gap:10px;flex-wrap:wrap}.library-toolbar{margin-bottom:22px}.section-head:has(+.library-toolbar){margin-bottom:14px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:800px){
  :root{--mobile-header:64px;--mobile-bottom:64px}html{scroll-padding-top:calc(var(--mobile-header) + 16px)}body{background:#f6f7fb;padding-bottom:calc(var(--mobile-bottom) + env(safe-area-inset-bottom,0px));font-size:15px;line-height:1.6}body.page-game{padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}body.modal-open{overflow:hidden}main{min-width:0}.site-header{height:var(--mobile-header);padding:0 16px;gap:12px;background:#fff;border-bottom:1px solid #ececf4;backdrop-filter:none}.brand{min-width:0;gap:9px}.brand-logo{width:36px;height:36px;flex:0 0 36px;border-radius:11px;box-shadow:none}.brand-logo img{border-radius:11px}.brand>span:last-child{min-width:0}.brand b{font-size:17px;line-height:1.4;max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand small{font-size:10px;margin-top:1px;line-height:1.4;max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-header .outline-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border-color:#e4dfff;background:#f5f2ff;font-size:12px;white-space:nowrap;border-radius:20px}.site-header nav{display:none}
  .hero{min-height:0;margin:14px 12px 10px;padding:16px 18px;border:1px solid #e5e0fa;border-radius:18px;background:radial-gradient(circle at 100% 0,#e7dfff,transparent 60%),#fff;display:block}.hero .eyebrow{display:none}.hero h1{font-size:25px;line-height:1.35;letter-spacing:-.02em;margin:0 0 5px;overflow-wrap:anywhere}.hero p{font-size:13px;line-height:1.75;margin:0;color:#6e7186;max-width:none}.hero .primary-btn,.hero-orb,.stats{display:none}.notice-ticker:not([hidden]){display:flex;align-items:center;gap:9px;margin:0 12px 8px;padding:10px 13px;min-height:44px;background:#fff;border-radius:12px;text-decoration:none;font-size:12px}.notice-ticker>b{flex:0 0 auto;font-size:11px;color:#f38b35;background:#fff3e5;border-radius:5px;padding:1px 5px}.notice-ticker>span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#555d72}.notice-ticker>i{font-style:normal;color:#9a9daf}
  .section{padding:16px 12px 12px}.section-head{margin-bottom:6px!important;display:block}.section-head .eyebrow{display:none}.section-head h2{font-size:21px;line-height:1.5;margin:0;letter-spacing:0}.list-title{justify-content:space-between}.count-badge{font-size:11px;background:#ece9fb;padding:3px 9px}.library-toolbar{position:sticky;top:var(--mobile-header);z-index:15;padding:4px 0 0;margin:0 0 12px;background:#f6f7fb}.search-wrap{display:block;width:100%}.search-wrap label{width:100%}.search-wrap input{display:block;width:100%;min-width:0;min-height:46px;padding:11px 14px;border-radius:12px;border:1px solid #e4e5ee;background:#fff;font-size:16px;outline-offset:2px}.search-wrap select{display:none}.category-tabs{display:flex;gap:8px;overflow:auto;scrollbar-width:none;padding:8px 0;overscroll-behavior-x:contain}.category-tabs::-webkit-scrollbar{display:none}.category-tabs button{flex:0 0 auto;min-height:38px;padding:8px 14px;border:1px solid #e6e5ef;border-radius:9px;background:#fff;color:#6e7384;font-size:13px;line-height:1.5;font-weight:700;cursor:pointer}.category-tabs button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 4px 10px #6d5ce71a}
  .game-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.game-card{display:grid;grid-template-columns:76px minmax(0,1fr) 58px;gap:12px;align-items:center;padding:14px 12px;border-radius:15px;border:1px solid #ebeaf3;background:white;box-shadow:0 3px 12px #20254104;min-height:106px;min-width:0}.game-card:hover{transform:none;box-shadow:0 3px 12px #20254104}.game-cover{width:76px;height:76px;aspect-ratio:1;border-radius:15px;font-size:30px;align-self:start;box-shadow:0 3px 9px #29234b12}.game-cover img{display:block;object-fit:contain}.game-cover .badge{top:0;left:0;border-radius:0 0 6px 0;padding:1px 5px;background:#ffaf42;color:#fff;font-size:8px;line-height:1.6;font-style:normal}.game-body{padding:0;min-width:0}.game-body h3{font-size:16px;line-height:1.4;margin:0 0 5px;font-weight:800;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.game-body .game-name{display:inline;color:#24293c;font-size:inherit;font-weight:800}.game-body .game-subtitle{min-height:0;margin:0 0 6px;font-size:12px;line-height:1.6;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;color:#8b8fa0}.tags{gap:4px;max-height:22px;overflow:hidden}.tags span{font-size:10px;padding:2px 6px;border-radius:4px;background:#f0edff;line-height:1.5}.tags span:first-child{background:#f0f3f9;color:#7a8194}.game-entry{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:44px;border:1px solid #e5dfff;border-radius:20px;background:#f4f0ff;color:var(--brand);font-size:12px;font-weight:800;line-height:1.4;margin:0;padding:8px 0;white-space:nowrap}.game-entry .entry-tail{display:none}.empty-games{font-size:14px;padding:32px 16px}
  #announcements{scroll-margin-top:calc(var(--mobile-header) + 12px);padding-top:25px}.notice-list{gap:0;background:#fff;border:1px solid #ebeaf3;border-radius:14px;overflow:hidden}.notice-item{display:grid;grid-template-columns:1fr auto;gap:4px 10px;border:0;border-bottom:1px solid #f0f0f6;border-radius:0;padding:14px;text-decoration:none}.notice-item:last-child{border-bottom:0}.notice-item>div{grid-column:1;grid-row:1;min-width:0}.notice-item b{font-size:14px;font-weight:700;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notice-item time{grid-column:1;grid-row:2;font-size:11px;font-weight:400;color:#a0a4b1;margin-top:3px}.notice-item p{display:none}.notice-item>span{grid-column:2;grid-row:1/3;align-self:center;font-size:0;color:#a4a8b9}.notice-item>span:after{content:'›';font-size:23px}
  .mobile-nav{position:fixed;inset:auto 0 0;z-index:40;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:6px max(8px,env(safe-area-inset-right,0px)) calc(5px + env(safe-area-inset-bottom,0px));min-height:var(--mobile-bottom);background:rgba(255,255,255,.97);border-top:1px solid #e9e9f2;box-shadow:0 -4px 24px #20254105}.mobile-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-height:48px;color:#979baa;text-decoration:none;font-size:10px;font-weight:700;line-height:1.4}.mobile-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.mobile-nav a[aria-current=page]{color:var(--brand)}.float-contact{display:none}.page-game .mobile-nav{display:none}
  .detail-hero{padding:10px 16px 20px;background:#fff;border-bottom:1px solid #edecf5}.back{font-size:13px;min-height:40px;display:inline-flex;align-items:center;margin-bottom:12px;font-weight:600}.detail-layout{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;align-items:start}.detail-cover{width:88px;height:88px;aspect-ratio:1;border-radius:18px;font-size:44px;box-shadow:0 4px 14px #5c4cd117}.detail-cover img{width:100%;height:100%;object-fit:contain}.detail-layout>div:last-child{min-width:0}.detail-layout .tag{font-size:10px;display:inline-block;line-height:1.4;padding:3px 7px}.detail-layout h1{font-size:22px;line-height:1.4;letter-spacing:-.02em;margin:6px 0;overflow-wrap:anywhere}.detail-layout .subtitle{font-size:13px;line-height:1.7;color:#8b8fa1;margin:4px 0 0;overflow-wrap:anywhere}.actions{display:block;margin-top:10px}.primary-actions{position:fixed;inset:auto 0 0;z-index:45;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:12px max(12px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.98);border-top:1px solid #e8e6f0;box-shadow:0 -4px 24px #20254107}.primary-actions>a,.primary-actions>.action-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px 5px;border:1px solid #e0d9fd;border-radius:12px;color:var(--brand);font-size:14px;line-height:1.6;font-weight:800;background:#f5f2ff;text-decoration:none}.primary-actions>.primary{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 5px 12px #6d5ce72a}.extra-actions{display:flex;gap:7px;flex-wrap:wrap}.extra-actions a{padding:7px 10px;font-size:12px;min-height:36px;line-height:1.6;border-radius:7px;overflow-wrap:anywhere}.detail-content{padding:14px 12px 20px;gap:12px;max-width:none}.configurable-detail .detail-panel{grid-column:1/-1;padding:19px 18px;border-radius:15px;min-width:0}.detail-block h2,.detail-block h3{font-size:18px;line-height:1.5;margin-bottom:10px}.detail-block p{font-size:15px;line-height:1.9;overflow-wrap:anywhere;margin:8px 0}.detail-block+.detail-block{margin-top:22px;padding-top:20px;border-top:1px solid #f0eef6}.support-card,.gift-open{font-size:14px;text-align:center;min-height:46px;border-radius:10px;line-height:1.6;padding:12px}.gift-open{box-shadow:none}
  .confirm-modal{padding:0;align-items:flex-end}.confirm-backdrop{backdrop-filter:blur(3px)}.confirm-box{width:100%;max-height:88vh;max-height:88dvh;overflow-y:auto;overscroll-behavior:contain;border-radius:22px 22px 0 0;padding:24px 20px calc(20px + env(safe-area-inset-bottom,0px));box-shadow:0 -12px 60px #17132d20}.confirm-icon{width:42px;height:42px;font-size:23px;margin-bottom:12px}.confirm-box h2{font-size:21px;line-height:1.5}.confirm-box p{font-size:15px;line-height:1.85}.confirm-box button,.confirm-box a{min-height:46px;font-size:15px}.confirm-box>div:last-child{gap:8px}.gift-box{max-height:88vh;max-height:88dvh}.gift-section{padding:13px;border-radius:12px}.gift-section-head h3{font-size:16px}.gift-section-head span{font-size:10px;white-space:nowrap}.gift-code-list{max-height:none;gap:8px}.gift-copy{padding:13px 12px;min-height:50px;gap:10px}.gift-copy span{font-size:15px}.gift-copy small{font-size:12px}.gift-close{position:sticky;bottom:0;box-shadow:0 -8px 18px #fff;background:#eeedf6}.action-message-box #actionMessageContent{max-height:none}.copy-status{font-size:12px!important;overflow-wrap:anywhere}
  .guestbook{padding:24px 12px}.guestbook-intro{margin-bottom:18px}.guestbook-intro .eyebrow{display:none}.guestbook-intro h1{font-size:26px;margin:0 0 8px}.guestbook-intro p{font-size:14px;margin:0}.guestbook-layout{gap:20px}.message-form-card,.message-card,.empty-state{border-radius:15px;padding:18px}.message-form-card h2,.guestbook-layout section>h2{font-size:18px}.message-form-card input,.message-form-card textarea{font-size:16px;min-height:44px;background:#fafbfe}.message-form-card button{width:100%;min-height:46px}.message-form-card{position:static}.message-meta{gap:10px;font-size:14px}.message-card p{font-size:14px;overflow-wrap:anywhere}.legal{margin:16px 12px;padding:22px 18px;min-height:0;border-radius:15px}.legal h1{font-size:25px;line-height:1.5;overflow-wrap:anywhere}.legal h2{font-size:18px}.legal p{font-size:15px;overflow-wrap:anywhere}.legal .back{margin-bottom:14px}.not-found{padding:65px 18px}.not-found b{font-size:80px}
  footer{background:transparent;color:#a1a6b6;padding:26px 16px 22px;display:flex;align-items:center;flex-direction:column;text-align:center;gap:12px;font-size:11px;line-height:1.7}footer b{font-size:13px;color:#858b9b}footer p{margin:5px 0}footer>div:last-child{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}footer a{color:#969cac;margin:0;font-size:11px;min-height:30px;display:inline-flex;align-items:center}
}
@media(max-width:350px){.site-header{padding:0 12px}.hero{padding:17px 15px}.hero h1{font-size:24px}.game-card{grid-template-columns:64px minmax(0,1fr) 50px;gap:9px;padding:12px 10px}.game-cover{width:64px;height:64px;border-radius:13px}.game-body h3{font-size:14px}.game-body .game-subtitle{font-size:11px}.game-entry{font-size:11px}.detail-layout{grid-template-columns:72px minmax(0,1fr);gap:11px}.detail-cover{width:72px;height:72px}.detail-layout h1{font-size:20px}.primary-actions{gap:6px;padding-left:10px;padding-right:10px}.primary-actions>a,.primary-actions>.action-button{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-orb:before{animation:none}.game-card{transition:none}}
