.avatar-shell{display:inline-grid;place-items:center;position:relative;width:40px;height:40px;flex:none;vertical-align:middle;isolation:isolate;overflow:visible}
.avatar-shell>.player-avatar{width:100%!important;height:100%!important;display:block;margin:0!important;float:none!important;box-sizing:border-box}
.avatar-shell.avatar-large{width:80px;height:80px}.avatar-shell.avatar-small{width:36px;height:36px}.avatar-frame{position:absolute!important;inset:-12%;width:124%!important;height:124%!important;max-width:none!important;object-fit:contain;border:0!important;background:none!important;box-shadow:none!important;pointer-events:none;z-index:2}
.home-avatar-wrap[data-avatar-frame]:not([data-avatar-frame=none]){background:#e7f2ff;padding:3px}
.avatar-option .avatar-shell{width:48px;height:48px}.social-avatar .avatar-shell{width:46px;height:46px}.battle-player-name .avatar-shell{float:left;margin-right:9px}.ranked-player-avatar .avatar-shell{margin:0 3px}
.frame-profile,.frame-store{color:#173b57;background:#f5faff;border:1px solid #cde0ef;border-radius:20px;padding:20px;margin:20px 0;font-family:var(--font-body);overflow:visible}
.frame-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.frame-heading h2,.frame-heading h4{font-family:var(--font-heading);margin:0 0 6px;font-size:clamp(22px,3vw,30px);line-height:1.2;overflow-wrap:anywhere}.frame-heading h4{font-size:21px}.frame-heading p{margin:0;font-size:14px;line-height:1.55;color:#526e86;max-width:58ch}.frame-heading .btn{white-space:normal;min-height:44px}
.frame-owned-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:12px;margin:20px 0}.frame-owned{display:grid;justify-items:center;align-content:start;gap:10px;padding:18px 10px 12px;background:white;color:#173b57;border:2px solid #dde9f2;border-radius:16px;cursor:pointer;min-width:0;font:600 13px var(--font-body);line-height:1.4}.frame-owned.selected{border-color:#1269a9;background:#e6f3ff}.frame-owned small{font-size:12px;font-weight:500;color:#526e86}.frame-owned span{overflow-wrap:anywhere;text-align:center}.frame-owned:focus-visible,.frame-preview-button:focus-visible{outline:3px solid #c58a09;outline-offset:3px}
.frame-store{background:linear-gradient(155deg,#f3faff,#fff9e8)}.frame-wallet{background:#0c3155;color:white;padding:13px 18px;border-radius:16px;min-width:160px}.frame-wallet span{display:block;font-size:12px;letter-spacing:.04em;margin-bottom:5px}.frame-wallet strong{font-family:var(--font-heading);font-size:28px;line-height:1.15}.frame-wallet small{font-size:13px;font-weight:500}
.frame-store-intro{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:24px 0;padding:18px;background:white;border:1px solid #dde9f2;border-radius:18px}.frame-preview-large{width:112px!important;height:112px!important;margin:10px 16px}.frame-store-intro h3{font-family:var(--font-heading);font-size:21px;margin:0 0 6px;overflow-wrap:anywhere}.frame-store-intro p{font-size:14px;line-height:1.55;color:#526e86;margin:0;max-width:50ch}.frame-store-intro>div{min-width:0}.frame-store-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.frame-card{min-width:0;border:1px solid #cde0ef;border-radius:18px;background:#fff;display:flex;align-items:center;flex-direction:column;text-align:center;padding:16px 12px;gap:10px}.frame-card-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;width:100%;font-size:12px;line-height:1.4}.frame-card-top span{color:#526e86}.frame-card-top b{color:#0c3155}.frame-preview-button{display:grid;place-items:center;width:100%;min-height:110px;border:0;background:transparent;cursor:pointer;border-radius:12px}.frame-card h3{font-family:var(--font-heading);font-size:17px;line-height:1.3;margin:0;overflow-wrap:anywhere}.frame-card p{font-size:13px;line-height:1.5;color:#526e86;margin:0;flex:1}.frame-card .btn{width:100%;min-height:44px;white-space:normal;font-size:13px;line-height:1.4}.frame-card .btn:disabled{opacity:1;background:#edf2f6;color:#536c80;cursor:default}.frame-status{font-size:14px;line-height:1.55;color:#526e86;overflow-wrap:anywhere;min-height:22px;margin:10px 0}.frame-actions{display:flex;flex-wrap:wrap;gap:10px}.frame-conflict[hidden]{display:none}.frame-conflict{display:flex;gap:10px;flex-wrap:wrap;background:#fff0c6;padding:14px;border-radius:14px;margin:12px 0}
.frame-purchase-dialog{border:1px solid #cde0ef;border-radius:22px;padding:24px;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;color:#173b57;background:white;font-family:var(--font-body);box-shadow:0 16px 60px #071e3a55}.frame-purchase-dialog::backdrop{background:#041b3b9c}.frame-purchase-dialog h3{font:700 24px/1.25 var(--font-heading);margin:0 0 12px;overflow-wrap:anywhere}.frame-purchase-dialog p{font-size:15px;line-height:1.6;margin:0 0 20px}.frame-purchase-dialog .btn{min-height:44px;white-space:normal}
.tile-store{background:linear-gradient(135deg,#7853b3,#164b82)}
.frame-status:empty{display:none}
@media(min-width:1101px){.pro-nav{grid-template-columns:repeat(12,minmax(0,1fr))!important}.pro-nav button{padding-inline:8px;white-space:normal;line-height:1.35}}
@media(max-width:1000px){.frame-store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.frame-profile,.frame-store{padding:14px;border-radius:18px}.frame-store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.frame-heading{gap:12px}.frame-wallet{width:100%}.frame-card{padding:14px 9px}.frame-card-top{justify-content:center}.frame-card h3{font-size:16px}.frame-preview-button{min-height:100px}.frame-store-intro{gap:12px;padding:14px}.frame-store-intro>div:last-child{flex:1;min-width:130px}.avatar-shell.avatar-large{width:66px;height:66px}.ranked-player-avatar .avatar-shell{width:30px;height:30px}.frame-owned-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.frame-owned{padding:16px 6px 10px;font-size:12px}.frame-owned .avatar-shell{width:56px;height:56px}.frame-purchase-dialog{padding:20px}}
@media(prefers-reduced-motion:reduce){.frame-store *{scroll-behavior:auto}}
