html,body,#root{overscroll-behavior:none;height:100%;margin:0;font-family:system-ui,Noto Sans TC,sans-serif}body{background:#cfe8d5}.stage{touch-action:none;position:fixed;inset:0}.hud{pointer-events:none;flex-wrap:wrap;align-items:center;gap:8px;padding:8px;display:flex;position:fixed;top:0;left:0;right:0}.hud>*{pointer-events:auto}.btn{color:#234;cursor:pointer;background:#fff;border:2px solid #3b6b4a;border-radius:12px;min-height:44px;padding:10px 14px;font-size:16px}.btn[aria-pressed=true],.btn.on{color:#fff;background:#3b6b4a}.panel{background:#ffffffe0;border-radius:12px;padding:6px 12px;font-size:15px}.status{font-weight:600}.status.bad{color:#b3261e}.status.good{color:#1b7a3a}.tray{flex-wrap:wrap;justify-content:center;gap:8px;padding:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.catalog{box-sizing:border-box;touch-action:pan-y;background:#fffffff0;border-radius:12px;width:244px;padding:8px 10px;position:fixed;top:64px;bottom:70px;right:8px;overflow-y:auto}.catalog h3{color:#234;margin:10px 0 4px;font-size:15px}.catalog-note{color:#556;margin:0;font-size:12px}.catalog-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.catalog .item{cursor:pointer;background:#fff;border:2px solid #c9d8cd;border-radius:10px;flex-direction:column;align-items:center;gap:2px;min-height:44px;padding:4px;font-size:13px;display:flex}.catalog .item img{object-fit:contain}.catalog .item.on,.catalog .item[aria-pressed=true]{background:#e6f3ea;border-color:#3b6b4a}@media (width<=700px){.catalog{width:62vw;max-width:244px;top:128px}}.catalog .tabs{z-index:1;background:#fffffff7;gap:6px;padding:4px 0 6px;display:flex;position:sticky;top:-8px}.catalog .tabs .btn{flex:1;padding:6px 8px}.catalog .series-note{color:#556;margin:0 0 4px;font-size:12px}.catalog .card{background:#fff;border:2px solid #c9d8cd;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:4px;font-size:13px;display:flex}.catalog .card img{object-fit:contain}.catalog .card .tags{flex-wrap:wrap;justify-content:center;gap:3px;display:flex}.catalog .card .tag{color:#3b6b4a;background:#eef3ef;border-radius:999px;padding:0 6px;font-size:11px}.catalog .badge{color:#fff;background:#1b7a3a;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;font-weight:600}.catalog .reward-stub{font-style:italic}.catalog .card .meta{color:#556;font-size:12px}.catalog .card .btn{width:100%;min-height:44px;padding:6px 8px;font-size:14px}.catalog .card .btn:disabled{opacity:.5;cursor:not-allowed}.catalog .market-status{background:#f1f6f2;border-radius:8px;margin:6px 0 0;padding:6px 8px;font-size:13px;font-weight:600;position:sticky;bottom:-8px}.catalog .market-status.bad{color:#b3261e;background:#fbeceb}.catalog .market-status.good{color:#1b7a3a}.content-error{background:#fff;border-radius:14px;max-width:28em;margin:20vh auto 0;padding:20px;line-height:1.6}.content-error pre{white-space:pre-wrap;color:#556;max-height:30vh;font-size:12px;overflow:auto}@media (width<=700px){.catalog{width:66vw;max-width:280px}}
