.training-store { box-sizing:border-box; padding:0; width:min(590px,96vw); max-height:92vh; overflow:auto; color:#263246; background:#f1f1ed; border:1px solid #637893; outline:3px solid #fff9; border-radius:7px; box-shadow:0 9px 38px #101c2c77; font:14px/1.5 "Microsoft YaHei",sans-serif; text-align:left; cursor:default; }
.training-store::backdrop { background:#18213348; }
/* Native modal dialogs sit above the game cursor's sprite. Hand these surfaces to the OS cursor. */
body.custom-cursor:has(dialog:modal) > .cursor { visibility:hidden; }
body.custom-cursor dialog:modal, body.custom-cursor dialog:modal *,
body.custom-cursor dialog:modal::backdrop { cursor:default !important; }
body.custom-cursor dialog:modal button:enabled,
body.custom-cursor dialog:modal button:enabled * { cursor:pointer !important; }
body.custom-cursor dialog:modal input:not(:disabled),
body.custom-cursor dialog:modal textarea:not(:disabled) { cursor:text !important; }
.training-store button { font:inherit; cursor:pointer; color:inherit; letter-spacing:normal; text-transform:none; }
.training-store .store-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:4px 9px; margin:0; border-bottom:1px solid #8198b9; background:linear-gradient(#f8fbff,#c9d9ed 48%,#b3c7e4 52%,#e8f0fa); color:#263d60; }
.store-bar strong:before { content:""; display:inline-block; width:10px; height:10px; border-radius:50%; margin-right:8px; background:radial-gradient(at 35% 25%,#f7fdff,#648ac3 65%,#415373); }
.training-store .store-close { border:1px solid #91a2b9; border-radius:3px; background:linear-gradient(white,#c2d1e6); width:27px; min-height:24px; padding:0; font-size:18px; line-height:1; }
.store-meta { display:flex; justify-content:space-between; align-items:center; padding:11px 14px; color:#39547c; }
.store-wallet { color:#7c531d; font-weight:700; }
.store-body { display:grid; grid-template-columns:minmax(165px,45%) 1fr; gap:12px; padding:0 12px 10px; }
.store-list,.store-detail { background:#fffefa; border:1px solid #a8adb2; border-radius:4px; }
.store-list { align-self:start; overflow:hidden; }
.training-store .store-list button { display:grid; grid-template-columns:30px 1fr; column-gap:7px; align-items:center; width:100%; background:#fffefa; border:0; border-bottom:1px solid #e4e5df; border-radius:0; padding:6px 9px; text-align:left; box-shadow:none; }
.training-store .store-list button:last-child { border-bottom:0; }
.training-store .store-list button[aria-pressed="true"] { background:#dce9fa; box-shadow:inset 3px 0 #547db3; }
.store-icon { grid-row:span 2; display:grid; place-items:center; width:26px; height:26px; border:1px solid #bfad89; border-radius:4px; background:linear-gradient(#fffbef,#e7ddc7); color:#895d2a; font-family:serif; }
.store-icon img { max-width:24px; max-height:24px; image-rendering:pixelated; }
.store-list small { font-size:11px; color:#53647d; }
.store-detail { padding:11px 14px; display:flex; flex-direction:column; gap:7px; }
.training-store h3,.training-store p,.training-store dl,.training-store dd { margin:0; padding:0; }
.training-store .store-detail h3 { font:700 18px/1.45 "Microsoft YaHei",sans-serif; color:#344761; }
.store-description { font-size:14px; }
.store-note { font-size:12px; color:#646b76; }
.training-store dl { border-top:1px solid #ddd9ce; padding-top:6px; }
.training-store dt { font-size:11px; color:#626d7c; }
.training-store dd { font-weight:700; margin:2px 0 6px; }
.training-store .store-buy { border:1px solid #607eaa; border-radius:4px; background:linear-gradient(#fff,#ccdef3); padding:7px 8px; margin-top:auto; color:#243e63; font-weight:700; }
.training-store button:focus-visible { outline:2px solid #486b9a; outline-offset:-2px; }
.training-store button:disabled { opacity:.63; cursor:default; }
.training-store footer { border-top:1px solid #c3c6c8; padding:6px 14px; color:#526274; font-size:12px; }
@media(max-width:460px) { .store-body { grid-template-columns:1fr; gap:7px; }.store-list { display:grid; grid-template-columns:1fr 1fr; }.store-detail { padding:8px 10px; } }
