.pk-wallet { margin: 18px 0; padding: 14px 0; border-block: 1px solid #c8ded1; }
.pk-wallet-line { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.pk-wallet-line strong { color:#755126; font-size:22px; font-variant-numeric:tabular-nums; }
.pk-wallet-line svg { width:28px; height:28px; color:#b47b2f; flex:none; }
.pk-wallet p, .pk-rules { margin:7px 0; font-size:12px; line-height:1.6; color:#496c5d; }
.pk-wallet button, .pk-shop button { min-height:44px; }
.pk-wallet details { margin-top:12px; }
.pk-wallet summary { cursor:pointer; font-weight:800; padding:7px 0; color:#396458; }
.pk-shop { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 12px; margin:16px 0; }
.pk-shop button { padding:8px 12px; border:2px solid; border-radius:10px; background:#fffdf8; color:#34554b; font-weight:700; }
.pk-shop button:disabled { opacity:.55; cursor:default; }
.pk-ledger { padding-left:20px; font-size:12px; line-height:1.8; max-height:170px; overflow:auto; }
.pk-trophies { display:flex; flex-direction:column; align-items:flex-start; gap:10px; margin:10px 0; }
.stake-picker { border:0; padding:0; margin:16px 0 0; }
.stake-picker legend { font-weight:800; margin-bottom:9px; color:#385f54; }
.stake-options { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
.stake-options label { margin:0; min-height:48px; display:flex; align-items:center; justify-content:center; padding:8px 4px; border:2px solid #bbd9cf; border-radius:10px; background:#fff; font-size:13px; cursor:pointer; }
.stake-options input { width:auto; margin:0 4px 0 0; accent-color:#267d68; }
.stake-options label:has(input:checked) { border-color:#287e69; background:#e2f5e9; }
.stake-options label:focus-within { outline:3px solid #edb673; outline-offset:2px; }
.result-points { font-size:18px; font-weight:850; color:#946021 !important; margin:15px 0; }
.proof-panel { margin:30px auto; max-width:640px; padding:22px; border-radius:16px; background:#f1ecff; color:#4c4268; scroll-margin:20px; }
.proof-panel h2 { font-size:24px; margin:0 0 12px; color:#584780; }
.proof-panel p { line-height:1.65; }
.proof-panel code { display:block; overflow-wrap:anywhere; font-size:12px; padding:12px 0; }
.proof-panel .proof-actions { display:flex; flex-wrap:wrap; gap:10px; }
.proof-panel .button { font-size:13px; }
.proof-close { float:right; min-height:44px; }
#accountStatus { min-height:1.5em; }
#recoveryCode { font-size:13px; margin:8px 0; }
@media(max-width:620px) { .proof-panel { padding:18px; } .proof-actions .button { width:100%; } .pk-wallet-line strong { font-size:20px; } }

.pk-style { min-width:0; display:flex; flex-direction:column; gap:7px; }
.pk-style > strong { font-size:16px; color:#355749; }
.pk-style-preview { height:116px; border:6px solid; border-radius:12px; background:#fffdf8; display:flex; align-items:center; justify-content:center; gap:5px; overflow:hidden; }
.pk-style-preview img { width:62px; height:100px; object-fit:contain; }
.pk-style-preview span { font-weight:850; font-size:14px; writing-mode:vertical-rl; color:#755126; letter-spacing:.08em; }
.pk-style-price { font-size:12px; color:#496c5d; }
.pk-style button { border-color:#bbd9cf !important; }
.pk-style button:not(:disabled):hover { background:#e2f5e9; }
.pk-style button:focus-visible, .redeem-actions button:focus-visible { outline:3px solid #287e69; outline-offset:3px; }
.redeem-confirm { padding:12px; background:#f5f0df; border-radius:12px; }
.redeem-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
#shopStatus { min-height:1.6em; }
