/* Account windows inherit the shared TaskbarHero stone and title-bar chrome. */
.pp { --pp-text:#e2d8bc; --pp-muted:#b8b09b; --pp-gold:#f0c96b; color:var(--pp-text); min-width:0; font:14px/1.45 system-ui,sans-serif; }
.pp > * + * { margin-top:16px; }
.pp-panel { min-width:0; }
.pp h2,.pp h3,.pp-modal h3 { color:#eddfba; }
.pp a,.pp-modal a { color:inherit; }
.pp h3,.pp-modal h3 { font-family:'Pixelify Sans',monospace; font-weight:500; }
.pp-eyebrow { font-size:12px; color:#c4b38a; }
.pp-btn { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:36px; padding:3px 10px; border:5px solid transparent; border-image:url('/taskbaragents/assets/taskbarhero/ui/7579-TabButton_Large_DeActive_Active.png') 6 fill stretch; background:none; border-radius:0; color:#ebd9b4; text-decoration:none; text-align:center; font:17px/1.15 'Pixelify Sans',monospace; text-shadow:1px 1px #211309; cursor:pointer; image-rendering:pixelated; }
.pp-btn--gold { border-image-source:url('/taskbaragents/assets/taskbarhero/ui/8650-Button_Orange_Large_Active.png'); color:#ffe0a2!important; }
.pp-btn--danger { color:#f7b0a4; }
.pp-btn:hover:not(:disabled) { filter:brightness(1.22); }
.pp-btn:active:not(:disabled) { transform:translateY(1px); }
.pp-btn:disabled { opacity:.45; filter:grayscale(.8); cursor:not-allowed; }
.pp-btn:focus-visible,.pp button:focus-visible,.pp a:focus-visible,.pp-modal button:focus-visible,.pp-modal a:focus-visible { outline:2px solid #f4d374; outline-offset:2px; }
.pp-button-row { display:flex; flex-wrap:wrap; align-items:center; gap:7px; }
.pp-text-link { display:inline-flex; align-items:center; gap:5px; color:#e4c780!important; font-size:12px; text-decoration:none; }
.pp-text-link:hover,.pp-text-button:hover { color:#fff1bb!important; text-decoration:underline; }
.pp-text-button { padding:5px 0; background:none; border:0; color:#e6c47d; font:inherit; font-size:13px; cursor:pointer; }
.pp-icon-button { display:grid; place-items:center; width:30px; height:30px; padding:4px; background:#252620; border:1px solid #696954; border-radius:0; cursor:pointer; }
.pp-record-count,.pp-storage-note { display:inline-flex; align-items:center; gap:5px; font-size:12px; color:#c4baa1; }
.pp-demo-note,.pp-inline-note { display:flex; align-items:flex-start; gap:8px; padding:8px 10px; color:#bdb59d; background:#14171380; border:1px solid #575b4b; font-size:12px; line-height:1.55; }
.pp-demo-note > .ui-icon,.pp-inline-note > .ui-icon { flex:0 0 auto; margin-top:2px; }
.pp-overview-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr); gap:16px; align-items:start; }
.pp-character-select { display:flex; flex-wrap:wrap; gap:5px; padding:9px 10px; border-bottom:2px solid #11140f; background:#161a1580; }
.pp-character-select > button { display:flex; align-items:center; gap:8px; flex:1; min-width:135px; max-width:230px; min-height:48px; padding:4px 8px; border:1px solid #68644c; border-radius:0; background:#25291f; color:#d9cda8; text-align:left; font:14px system-ui,sans-serif; }
.pp-character-select > button.is-active { border-color:#e1c25e; background:#51442b; box-shadow:inset 0 0 0 1px #17180f; }
.pp-character-select > button > img { flex-shrink:0; width:25px; height:36px; object-fit:contain; }
.pp-character-select small { display:block; margin-top:3px; font-size:11px; color:#bdb594; }
.pp-character-sheet { display:grid; grid-template-columns:minmax(290px,1fr) minmax(110px,140px); gap:14px; padding:12px; align-items:center; }
.pp-paperdoll { display:flex; align-items:center; justify-content:center; gap:8px; padding:12px 7px; background:#887044; border:2px solid #272b21; box-shadow:inset 0 0 0 2px #a08755,0 1px #777b60; min-height:242px; }
.pp-gear-column { display:flex; flex:0 0 48px; flex-direction:column; gap:5px; }
.pp-gear-column > a { display:block; width:48px; height:48px; }
.pp-character-portrait { display:flex; align-items:center; flex:0 1 172px; min-width:0; flex-direction:column; }
.pp-character-portrait > img { width:172px; height:160px; object-fit:contain; image-rendering:pixelated; }
.pp-character-name { width:100%; padding:5px 4px 7px; text-align:center; color:#f2d697; background:url('/taskbaragents/assets/taskbarhero/ui/9602-TabButton_Large_Active.png') center/100% 100% no-repeat; image-rendering:pixelated; text-shadow:1px 1px #39200c; }
.pp-character-name h3 { margin:0; font-size:20px; line-height:1.1; }
.pp-character-name > span { display:block; font:11px system-ui,sans-serif; margin-top:4px; }
.pp-character-attributes { margin:0; align-self:stretch; display:flex; flex-direction:column; justify-content:center; }
.pp-character-attributes > div { display:flex; justify-content:space-between; gap:8px; padding:11px 1px; border-bottom:1px solid #5c63507a; }
.pp-character-attributes > div:last-child { border:0; }
.pp-character-attributes dt { color:#c1b79b; font-size:13px; }
.pp-character-attributes dd { margin:0; color:#e7daae; font-size:14px; font-variant-numeric:tabular-nums; }
.pp-window-actions { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:9px; padding:0 12px 13px; }
.pp-player-record { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 11px; padding:12px; background:#15191266; border-bottom:1px solid #64684f; }
.pp-player-record strong { font-family:'Pixelify Sans',monospace; font-size:20px; font-weight:500; color:#f0dab0; }
.pp-player-record > span { font-size:12px; color:#c1b59a; }
.pp-player-record > small { flex-basis:100%; font-size:11px; color:#999d86; }
.pp-wallet-register { padding:0 11px; }
.pp-wallet-register > a { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 0; border-bottom:1px solid #565d4777; text-decoration:none; }
.pp-wallet-register > a > span:first-child { font-size:12px; color:#c9c0a4; }
.pp-wallet-register .ui-credits { font-size:15px; }
.pp-wallet-register .ui-credits > small { font-size:10px; }
.pp-account-rows { padding:5px 10px 9px; }
.pp-account-rows > a { display:flex; align-items:center; gap:8px; padding:4px 0; color:#d8ceb0; text-decoration:none; }
.pp-account-rows > a:hover { background:#99814c20; }
.pp-account-rows > a > img { width:29px; height:29px; object-fit:contain; }
.pp-account-rows strong { font-size:13px; font-weight:500; }
.pp-account-rows > a > span { margin-left:auto; color:#c2b083; font-size:12px; }
.pp-native-slot { display:block; position:relative; flex-shrink:0; width:48px; height:48px; background:#1b2118; image-rendering:pixelated; }
.pp-native-slot--rare { background:#253b44; }
.pp-native-slot--epic { background:#3b2a45; }
.pp-native-slot--legendary { background:#55401d; }
.pp-native-slot > .pp-native-slot-frame { position:absolute; z-index:1; inset:0; width:100%; height:100%; object-fit:fill; }
.pp-native-slot > .pp-native-slot-item { position:absolute; z-index:2; inset:7px; width:calc(100% - 14px); height:calc(100% - 14px); object-fit:contain; }
.pp-account-inventory { display:grid; grid-template-columns:repeat(auto-fill,48px); gap:4px; padding:13px; }
.pp-inventory-preview { display:block; width:48px; height:48px; }
.pp-inventory-preview:hover { filter:brightness(1.3); }
.pp-balances { display:grid; grid-template-columns:1fr 1fr; }
.pp-balance { display:grid; grid-template-columns:1fr auto; align-items:center; gap:5px 14px; padding:12px 14px; border-bottom:1px solid #62684d80; }
.pp-balance:nth-child(odd) { border-right:1px solid #62684d80; }
.pp-balance:nth-last-child(-n+2) { border-bottom:0; }
.pp-balance-label { font-size:13px; color:#c9c0a4; }
.pp-balance-value { font-size:18px; font-variant-numeric:tabular-nums; }
.pp-balance-value .ui-credits > small { font-size:10px; }
.pp-balance > small { grid-column:1/-1; font-size:12px; color:#a7a98f; }
.pp-currency-selector { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; padding:9px; }
.pp-currency-tab { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:4px; min-width:0; padding:9px 7px; border:5px solid transparent; border-image:url('/taskbaragents/assets/taskbarhero/ui/7579-TabButton_Large_DeActive_Active.png') 6 fill stretch; background:none; color:#d8cba9; text-align:center; image-rendering:pixelated; }
.pp-currency-tab.is-active { border-image-source:url('/taskbaragents/assets/taskbarhero/ui/9602-TabButton_Large_Active.png'); color:#ffe5a0; }
.pp-currency-tab .pp-balance-label { font:16px 'Pixelify Sans',monospace; color:inherit; }
.pp-currency-tab .pp-balance-value { font-size:14px; }
.pp-wallet-tools { padding:8px 0; }
.pp-tabs { display:flex; gap:4px; padding:8px 9px 0; border-bottom:2px solid #14170f; overflow-x:auto; scrollbar-width:thin; background:#11150f55; }
.pp-tabs > button { display:inline-flex; align-items:center; justify-content:center; gap:6px; flex-shrink:0; min-width:98px; padding:8px 14px; border:0; border-radius:0; background:url('/taskbaragents/assets/taskbarhero/ui/7579-TabButton_Large_DeActive_Active.png') center/100% 100% no-repeat; color:#d4cba8; font:17px 'Pixelify Sans',monospace; image-rendering:pixelated; }
.pp-tabs > button.is-active { color:#ffe0a1; background-image:url('/taskbaragents/assets/taskbarhero/ui/9602-TabButton_Large_Active.png'); }
.pp-tabs > button > span { font:12px system-ui,sans-serif; color:#e5c479; }
/* Contain absolute screen-reader labels inside the ledger scrollport. */
.pp-table-scroll { position:relative; width:100%; overflow-x:auto; scrollbar-color:#69715a #1a1e16; }
.pp-ledger { width:100%; border-collapse:collapse; text-align:left; font-size:13px; }
.pp-ledger th { padding:9px 13px; background:#11170f80; border-bottom:1px solid #72765b; color:#bdc0a4; font-size:12px; font-weight:500; white-space:nowrap; }
.pp-ledger td { padding:10px 13px; border-bottom:1px solid #5c624b66; color:#c3bea5; line-height:1.4; }
.pp-ledger tbody tr:last-child td { border-bottom:0; }
.pp-ledger tbody tr:hover { background:#c2b4700a; }
.pp-ledger-title { display:block; color:#e1d5b6; font-size:14px; }
.pp-ledger td small { display:block; margin-top:3px; color:#9d9f88; font-size:11px; }
.pp-ledger td code { color:#b9ac8b; font-size:12px; }
.pp-ledger-amount { font-variant-numeric:tabular-nums; white-space:nowrap; }
.pp .is-incoming,.pp-modal .is-incoming { color:#b7ce8d!important; }
.pp .is-outgoing { color:#e5c18d!important; }
.pp-nowrap { white-space:nowrap; }
.pp-ledger-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:9px 16px; padding:9px 13px; border-top:1px solid #62684d99; background:#10160f55; color:#b4b59b; font-size:12px; }
.pp-ledger-footer > span { display:inline-flex; align-items:center; gap:6px; }
.pp-ledger-footer strong { color:#ddd0a3; font-weight:500; }
.pp-modal { min-width:0; color:#ded2b2; font:14px/1.5 system-ui,sans-serif; }
.pp-modal > * + * { margin-top:16px; }
.pp-modal input:not([type=checkbox]),.pp-modal select,.pp-modal textarea,.pp input:not([type=checkbox]),.pp select,.pp textarea { min-width:0; width:100%; min-height:39px; padding:8px 10px; border:1px solid #747454; border-radius:0; background:#141a12; color:#e5dcbf; font:14px/1.5 system-ui,sans-serif; outline:none; box-shadow:inset 1px 1px #080c07; color-scheme:dark; }
.pp input::placeholder,.pp textarea::placeholder,.pp-modal input::placeholder { color:#8e947d; }
.pp input:focus,.pp select:focus,.pp textarea:focus,.pp-modal input:focus,.pp-modal select:focus,.pp-modal textarea:focus { border-color:#d9c26e; outline:1px solid #d9c26e; }
.pp textarea,.pp-modal textarea { resize:vertical; }
.pp-input-unit { display:flex; align-items:center; border:1px solid #747454; background:#141a12; }
.pp-input-unit > input { border:0!important; box-shadow:none!important; outline:none!important; }
.pp-input-unit:focus-within { outline:1px solid #d9c26e; }
.pp-input-unit > span { padding:0 11px; color:#bfb28b; font-size:13px; }
.pp-modal-balance { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border:1px solid #687153; background:#1b2417; font-size:13px; }
.pp-modal-balance strong { font-weight:500; color:#ebd6a0; }
.pp-amount-presets { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
.pp-amount-presets > button { min-height:34px; padding:6px; background:#252e1e; border:1px solid #6c7454; border-radius:0; color:#d4c79e; font:16px 'Pixelify Sans',monospace; }
.pp-amount-presets > button.is-active { background:#62502e; border-color:#d4bb67; color:#ffdfa0; }
.pp-operation-summary { padding:10px 12px; border:1px solid #646c51; background:#11180f; }
.pp-operation-summary > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:6px 0; color:#b9b79c; font-size:13px; }
.pp-operation-summary > div > :last-child { text-align:right; color:#e0cf9d; }
.pp-operation-summary > .pp-summary-total { border-top:1px solid #61684b; margin-top:6px; padding-top:11px; }
.pp-summary-total.is-insufficient > :last-child { color:#e6a698; }
.pp-form-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; padding-top:14px; border-top:1px solid #676b5166; }
.pp-form-actions .pp-save-feedback { margin-right:auto; }
.pp-form-error { padding:9px 11px; border:1px solid #8c5746; background:#462920; color:#edb3a2; font-size:13px; line-height:1.5; }
.pp-form-error a { text-decoration:underline; }
.pp-filterbar { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; padding:10px; background:#12180f44; border-bottom:1px solid #5e674b; }
.pp-filter-categories { display:flex; flex-wrap:wrap; gap:4px; }
.pp-filter-categories > button { padding:5px 9px; border:1px solid #6d7052; background:#252b1d; color:#c6bea0; border-radius:0; font-size:13px; text-transform:capitalize; }
.pp-filter-categories > button.is-active { background:#60482b; border-color:#c9ad5f; color:#ffdfa2; }
.pp-search { display:flex; align-items:center; gap:7px; min-width:170px; padding-left:9px; background:#11180e; border:1px solid #6d7354; }
.pp-search input { border:0!important; outline:0!important; box-shadow:none!important; background:none!important; min-height:32px!important; font-size:13px!important; padding:6px 9px 6px 0!important; }
.pp-search:focus-within { outline:1px solid #d9c26e; }
.pp-product-grid { display:grid; grid-template-columns:1fr 1fr; }
.pp-product { display:grid; grid-template-columns:56px minmax(0,1fr); gap:8px 12px; padding:13px; border-bottom:1px solid #5e674b88; }
.pp-product:nth-child(odd) { border-right:1px solid #5e674b88; }
.pp-product:hover { background:#9c9a5e0b; }
.pp-product-top { grid-column:1; grid-row:1/3; padding-top:5px; }
.pp-product-top .pp-native-slot { width:56px; height:56px; }
.pp-product-description { min-width:0; }
.pp-product-category { color:#a8ad91; text-transform:capitalize; font-size:11px; }
.pp-product h3 { margin:2px 0 4px; font-size:20px; line-height:1.15; }
.pp-product p { color:#b9b39b; font-size:12px; line-height:1.4; margin:0; }
.pp-product-purchase { grid-column:2; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:6px; }
.pp-product-purchase strong { color:#e4c780; font-size:15px; font-weight:500; }
.pp-product-purchase .pp-btn { min-height:31px; padding:2px 8px; font-size:16px; }
.pp-product-icon { display:grid; place-items:center; position:relative; flex-shrink:0; width:60px; height:60px; padding:9px; background:url('/taskbaragents/assets/taskbarhero/ui/8100-SlotFrame_Big_White.png') center/100% 100% no-repeat; image-rendering:pixelated; }
.pp-product-icon > img { width:100%; height:100%; object-fit:contain; }
.pp-purchase-item { display:flex; align-items:center; gap:14px; padding:11px; border:1px solid #646a50; background:#252b1b; }
.pp-purchase-item h3 { margin:3px 0 6px; font-size:23px; line-height:1.2; }
.pp-purchase-item p { margin:0; font-size:13px; color:#b4b195; line-height:1.55; }
.pp-warehouse-heading { display:flex; align-items:center; gap:11px; padding:9px 10px; border:1px solid #6c7055; background:#20271b; box-shadow:inset 1px 1px #12150e; }
.pp-warehouse-heading > img { width:42px; height:42px; }
.pp-warehouse-heading > div { flex:1; }
.pp-warehouse-heading strong { font-family:'Pixelify Sans',monospace; font-size:20px; font-weight:500; }
.pp-warehouse-heading p { margin:2px 0 0; color:#b9b599; font-size:12px; }
.pp-inventory-toolbar { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; color:#b3b79b; font-size:13px; }
.pp-inventory-grid { display:grid; grid-template-columns:repeat(auto-fill,56px); justify-content:start; gap:4px; padding:3px 12px 15px; }
.pp-item-slot { position:relative; display:block; width:56px; height:56px; padding:0; border:0; background:none; cursor:pointer; }
.pp-item-slot > .pp-native-slot,.pp-empty-slot > .pp-native-slot { width:56px; height:56px; }
.pp-item-slot:hover > .pp-native-slot,.pp-item-slot:focus-visible > .pp-native-slot { filter:brightness(1.25); }
.pp-empty-slot { display:block; width:56px; height:56px; }
.pp-slot-extra { position:absolute; z-index:4; right:5px; bottom:4px; color:#fff1b8; font-size:12px; text-shadow:1px 1px #050a02; }
.pp-slot-tooltip { position:absolute; z-index:20; left:0; bottom:calc(100% + 5px); display:none; width:max-content; max-width:220px; padding:8px 10px; background:#0f150d; border:1px solid #999d69; box-shadow:2px 2px #090c06; text-align:left; pointer-events:none; }
.pp-slot-tooltip strong { display:block; color:#e9d18e; font-size:13px; font-weight:500; }
.pp-slot-tooltip small { display:block; margin-top:4px; color:#b7b594; font-size:11px; }
.pp-item-slot:hover .pp-slot-tooltip,.pp-item-slot:focus-visible .pp-slot-tooltip { display:block; }
.pp-gift-row { display:flex; align-items:center; gap:12px; padding:13px; border-bottom:1px solid #5d664b88; }
.pp-gift-row:last-child { border-bottom:0; }
.pp-gift-row > div { flex:1; }
.pp-gift-row h3 { margin:0 0 5px; font-size:20px; }
.pp-gift-row p { margin:0; color:#b0b297; font-size:12px; }
.pp-gift-row p strong { font-weight:500; color:#d1c49d; }
.pp-code-input { font-family:ui-monospace,monospace!important; letter-spacing:.14em; text-align:center; text-transform:uppercase; }
.pp-item-detail-art { display:grid; place-items:center; min-height:116px; background:#141a12; border:1px solid #626b4e; }
.pp-item-detail-art > img { width:64px; height:64px; object-fit:contain; image-rendering:pixelated; }
.pp-item-detail-meta { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:14px; color:#c0b38e; font-size:13px; }
.pp-item-stats { margin:0; }
.pp-item-stats > div { display:flex; justify-content:space-between; gap:18px; padding:8px 0; border-bottom:1px solid #626b4e88; }
.pp-item-stats dt { color:#b3b195; }
.pp-item-stats dd { margin:0; color:#b9d18e; }
.pp-referral-rule { display:flex; align-items:center; gap:13px; padding:12px; }
.pp-referral-rule > img { width:42px; height:42px; }
.pp-referral-rule p { color:#c1b79b; font-size:14px; line-height:1.6; }
.pp-referral-rule strong { color:#edce82; font-weight:500; }
.pp-referral-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(220px,1fr); gap:16px; }
.pp-invite-content { padding:13px; }
.pp-invite-content > p { margin:0 0 12px; color:#b9b69c; font-size:13px; line-height:1.55; }
.pp-invite-field { display:flex; gap:6px; margin-bottom:12px; }
.pp-invite-field > input { font-size:12px!important; }
.pp-invite-field > button { flex-shrink:0; }
.pp-referral-stats .ui-panel-body { display:flex; flex-direction:column; justify-content:center; }
.pp-referral-stats .ui-panel-body > div { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px; padding:17px 13px; border-bottom:1px solid #636a4d; }
.pp-referral-stats .ui-panel-body > div:last-child { border:0; }
.pp-referral-stats span { color:#b7b293; font-size:12px; }
.pp-referral-stats strong { font-size:17px; font-weight:500; color:#e5d09b; }
.pp-referral-player { display:inline-flex; align-items:center; gap:8px; }
.pp-referral-player > span { display:grid; place-items:center; width:28px; height:28px; border:1px solid #747650; background:#333c25; color:#dec88d; font-family:'Pixelify Sans',monospace; font-size:18px; }
.pp-referral-player > strong { color:#d3c59f; font-size:13px; font-weight:500; }
.pp-notification { display:flex; align-items:flex-start; gap:12px; padding:14px; border-bottom:1px solid #646c5080; background:#63542d15; }
.pp-notification:last-child { border-bottom:0; }
.pp-notification.is-read { background:none; }
.pp-notification-symbol { display:grid; place-items:center; width:30px; height:32px; flex-shrink:0; border:1px solid #777957; background:#303923; }
.pp-notification.is-read .pp-notification-symbol { opacity:.6; }
.pp-notification > div { flex:1; }
.pp-notification-heading { display:flex; align-items:center; gap:8px; }
.pp-notification h3 { margin:0; font-size:19px; line-height:1.25; }
.pp-notification p { margin:6px 0; color:#bab59c; font-size:13px; line-height:1.6; }
.pp-notification time { display:block; color:#9fa58c; font-size:12px; }
.pp-notification .pp-text-link { margin-top:7px; }
.pp-unread-dot { width:5px; height:5px; flex-shrink:0; background:#e1bd60; }
.pp-log-filters { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:11px; border-bottom:1px solid #646c50; }
.pp-log-filters > .pp-search { flex:1; min-width:180px; }
.pp-log-filters select { min-height:34px; padding:6px 25px 6px 9px; font-size:13px; }
.pp-log-type { color:#b7b28d; font-size:12px; white-space:nowrap; }
.pp-settings-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(285px,1fr); gap:16px; align-items:start; }
.pp-profile-form { padding:14px; }
.pp-profile-form > * + * { margin-top:15px; }
.pp-profile-preview { display:flex; align-items:center; gap:12px; padding-bottom:13px; border-bottom:1px solid #626a4d; }
.pp-profile-crest { display:grid; place-items:center; flex-shrink:0; width:66px; height:64px; padding:3px; border:2px solid #7a7c56; background:#171d12; overflow:hidden; }
.pp-profile-crest > img { width:100%; height:100%; object-fit:contain; image-rendering:pixelated; }
.pp-profile-preview h3 { margin:0 0 3px; font-size:23px; }
.pp-profile-preview span { color:#c0b18b; font-size:13px; }
.pp-profile-preview small { display:block; margin-top:4px; color:#9fa78a; font-size:11px; }
.pp-profile-preview > :last-child { margin-left:auto; }
.pp-preferences-form { padding:0 14px 14px; }
.pp-toggle-row { display:flex; align-items:center; position:relative; gap:15px; padding:15px 0; border-bottom:1px solid #646c5080; cursor:pointer; }
.pp-toggle-row > span:first-child { flex:1; }
.pp-toggle-row strong { color:#ded3b0; font-size:14px; font-weight:500; }
.pp-toggle-row small { display:block; margin-top:4px; color:#adae92; font-size:12px; line-height:1.55; }
.pp-toggle-row > input { position:absolute; right:0; width:26px; height:26px; opacity:0; cursor:pointer; z-index:1; }
.pp-toggle { display:block; position:relative; width:25px; height:25px; flex-shrink:0; border:2px solid #767854; background:#141b10; box-shadow:inset 1px 1px #070c06; }
.pp-toggle-row input:checked + .pp-toggle::after { content:'✓'; display:grid; place-items:center; height:100%; color:#e7c86c; font-size:21px; line-height:1; }
.pp-toggle-row input:focus-visible + .pp-toggle { outline:2px solid #f1cf70; outline-offset:3px; }
.pp-toggle-row.is-disabled { opacity:.5; }
.pp-preferences-form .pp-form-actions { border:0; }
.pp-save-feedback { display:inline-flex; align-items:center; gap:5px; color:#b5cd8a; font-size:12px; }
.pp-account-options { margin-top:16px; }
.pp-account-options .ui-panel-body > a { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 14px; border-bottom:1px solid #626b4e; font-size:14px; text-decoration:none; color:#cabb93; }
.pp-account-options .ui-panel-body > a:last-child { border:0; }
.pp-security-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.pp-security-content,.pp-recovery-content { padding:15px; }
.pp-security-mark { display:grid; place-items:center; float:left; width:45px; height:45px; margin:0 12px 9px 0; border:1px solid #7b7e56; background:#313a25; }
.pp-security-mark > .ui-icon { width:26px; height:26px; }
.pp-security-mark.is-enabled { border-color:#a2b473; }
.pp-security-content h3,.pp-recovery-content h3 { clear:both; margin:12px 0 7px; font-size:21px; }
.pp-security-content p,.pp-recovery-content p { margin:0 0 14px; color:#b5b296; font-size:13px; line-height:1.6; }
.pp-recovery-content > .ui-icon { float:left; margin-right:12px; }
.pp-recovery-content > small { display:block; margin-top:9px; color:#a6a78a; font-size:12px; }
.pp-recovery-codes { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-bottom:12px; padding:10px; background:#151c10; border:1px solid #747953; }
.pp-recovery-codes code { text-align:center; color:#d1bd86; font-size:13px; }
.pp-session { display:flex; align-items:center; gap:12px; padding:13px; border-bottom:1px solid #626b4e; }
.pp-session:last-child { border:0; }
.pp-account-icon { display:grid; place-items:center; flex-shrink:0; width:36px; height:36px; background:#242e1b; border:1px solid #727853; }
.pp-session > div { flex:1; }
.pp-session strong { display:flex; align-items:center; gap:8px; color:#d6c79e; font-size:14px; font-weight:500; }
.pp-session p { margin:4px 0; color:#b2b295; font-size:13px; }
.pp-session small { color:#a0a68a; font-size:12px; }
.pp-demo-verification { display:flex; align-items:center; flex-direction:column; gap:10px; padding:14px; border:1px solid #747953; background:#222c1a; }
.pp-demo-verification > strong { color:#ead297; font:26px ui-monospace,monospace; letter-spacing:.12em; }
.pp-demo-verification > p { color:#b3b396; font-size:13px; text-align:center; }
.pp-provider-symbol { display:grid; place-items:center; flex-shrink:0; width:36px; height:36px; color:var(--provider-color,#c5bb99); border:1px solid #6e7450; background:#1e2717; font:23px 'Pixelify Sans',monospace; }
.pp-connection-row { display:flex; align-items:center; gap:13px; padding:14px; border-bottom:1px solid #5f694b; }
.pp-connection-row:last-child { border:0; }
.pp-connection-row > div { flex:1; }
.pp-connection-row h3 { margin:0 0 3px; font-size:21px; }
.pp-connection-row p { margin:0; color:#b4b497; font-size:13px; line-height:1.5; }
.pp-connected-profile { display:block; margin-top:5px; color:#a9c087; font-size:12px; }
.pp-connection-row .pp-btn { min-width:156px; }
.pp-connection-preview { display:flex; align-items:center; justify-content:center; gap:22px; padding:16px; border:1px solid #6e7450; background:#182010; }
.pp-connection-tba { color:#dcc892; font:24px 'Pixelify Sans',monospace; }
.pp-connection-permissions { padding:12px; border:1px solid #6e7450; }
.pp-connection-permissions > strong { color:#d4c18e; font-size:14px; font-weight:500; }
.pp-connection-permissions p { display:flex; align-items:flex-start; gap:8px; margin:10px 0 0; color:#b3b195; font-size:13px; line-height:1.6; }
.pp-connection-permissions p > .ui-icon { flex-shrink:0; margin-top:3px; }
.pp-checkbox-row { display:flex; align-items:flex-start; gap:9px; color:#c3b895; font-size:13px; line-height:1.55; cursor:pointer; }
.pp-checkbox-row > input { width:17px; height:17px; margin-top:2px; accent-color:#d2b05c; }
.pp-muted { color:#a1a68a!important; font-size:12px!important; }
.pp-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
@media(max-width:1180px) { .pp-overview-grid { grid-template-columns:1fr; } .pp-character-sheet { grid-template-columns:minmax(290px,1fr) minmax(160px,1fr); } .pp-paperdoll { max-width:400px; width:100%; justify-self:center; } .pp-account-window .ui-panel-body { display:grid; grid-template-columns:1fr 1fr; } .pp-player-record { grid-column:1/-1; } .pp-wallet-register { padding-bottom:8px; } .pp-account-rows { align-self:center; border-left:1px solid #626b4e; } .pp-settings-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:850px) { .pp-product-grid { grid-template-columns:1fr; } .pp-product:nth-child(odd) { border-right:0; } .pp-product-purchase { flex-wrap:nowrap; } .pp-referral-grid,.pp-settings-grid { grid-template-columns:1fr; } .pp-referral-stats .ui-panel-body { flex-direction:row; } .pp-referral-stats .ui-panel-body > div { flex:1; border-bottom:0; border-right:1px solid #626b4e; } .pp-currency-selector { grid-template-columns:1fr 1fr; } .pp-security-grid { gap:12px; } .pp-connection-row { flex-wrap:wrap; } .pp-connection-row > div { flex-basis:calc(100% - 60px); } .pp-connection-row .pp-btn { margin-left:auto; } }
@media(max-width:620px) { .pp > * + * { margin-top:13px; } .pp-overview-grid { gap:13px; } .pp-character-select { padding:8px; gap:5px; } .pp-character-select > button { min-width:125px; padding:4px 6px; gap:6px; font-size:13px; } .pp-character-select small { font-size:10px; } .pp-character-sheet { grid-template-columns:1fr; padding:9px; gap:10px; } .pp-paperdoll { min-height:232px; padding:9px 6px; gap:6px; } .pp-character-portrait { flex-basis:160px; } .pp-character-portrait > img { width:160px; height:150px; } .pp-gear-column { flex-basis:44px; gap:5px; } .pp-gear-column > a,.pp-gear-column .pp-native-slot { width:44px; height:44px; } .pp-character-attributes { display:grid; grid-template-columns:1fr 1fr; gap:0 17px; } .pp-character-attributes > div { padding:7px 0; } .pp-character-attributes dt { font-size:12px; } .pp-character-attributes dd { font-size:13px; } .pp-window-actions { gap:6px; padding:0 9px 11px; } .pp-window-actions > .pp-btn { flex:1; font-size:15px; padding-left:6px; padding-right:6px; } .pp-account-window .ui-panel-body { display:block; } .pp-account-rows { border-left:0; border-top:1px solid #626b4e; } .pp-wallet-register { padding-bottom:8px; } .pp-wallet-register > a { padding:8px 0; } .pp-account-inventory { padding:10px; gap:4px; } .pp-balances { grid-template-columns:1fr; } .pp-balance { padding:10px 11px; border-right:0!important; border-bottom:1px solid #62684d80!important; } .pp-balance:last-child { border-bottom:0!important; } .pp-balance-value { font-size:17px; } .pp-balance > small { font-size:11px; } .pp-currency-selector { padding:7px; gap:5px; } .pp-currency-tab { padding:7px 3px; gap:5px; } .pp-currency-tab .pp-balance-label { font-size:15px; } .pp-currency-tab .pp-balance-value { font-size:13px; } .pp-wallet-tools .pp-button-row { display:grid; grid-template-columns:minmax(0,1fr); } .pp-wallet-tools .pp-btn { width:100%; min-width:0; min-height:42px; padding:5px 10px; font-size:16px; line-height:1.25; } .pp-tabs { padding-left:6px; padding-right:6px; } .pp-tabs > button { min-width:88px; padding:8px 11px; font-size:16px; } .pp-ledger { min-width:570px; } .pp-ledger th,.pp-ledger td { padding:9px 10px; } .pp-ledger-footer { font-size:11px; padding:8px 10px; } .pp-ledger-title { font-size:13px; } .pp-filterbar { padding:8px; } .pp-filterbar > .pp-search { width:100%; } .pp-filter-categories { gap:4px; } .pp-filter-categories > button { font-size:12px; padding:5px 7px; } .pp-product { padding:11px 9px; gap:7px 9px; } .pp-product h3 { font-size:19px; } .pp-product p { font-size:12px; } .pp-product-purchase { flex-wrap:wrap; } .pp-product-purchase .ui-credits { font-size:14px; } .pp-product-purchase .pp-btn { min-height:30px; } .pp-warehouse-heading { flex-wrap:wrap; padding:9px; } .pp-warehouse-heading > div { min-width:200px; } .pp-warehouse-heading > .pp-btn { width:100%; } .pp-warehouse-heading p { font-size:11px; } .pp-inventory-toolbar { flex-wrap:wrap; padding:10px; } .pp-inventory-toolbar > .pp-search { width:100%; } .pp-inventory-grid { grid-template-columns:repeat(auto-fill,48px); padding:0 10px 12px; gap:4px; } .pp-item-slot,.pp-item-slot > .pp-native-slot,.pp-empty-slot,.pp-empty-slot > .pp-native-slot { width:48px; height:48px; } .pp-slot-tooltip { max-width:160px; } .pp-gift-row { flex-wrap:wrap; gap:10px; padding:11px; } .pp-gift-row > div { flex-basis:calc(100% - 80px); } .pp-gift-row .pp-btn { width:100%; } .pp-referral-rule { padding:10px; align-items:flex-start; } .pp-referral-rule p { font-size:13px; } .pp-invite-content { padding:11px; } .pp-invite-field { flex-wrap:wrap; } .pp-invite-field > button { width:100%; } .pp-referral-stats .ui-panel-body > div { display:block; padding:11px; } .pp-referral-stats strong { display:block; font-size:17px; margin-top:5px; } .pp-notification { gap:9px; padding:11px; } .pp-notification h3 { font-size:18px; } .pp-notification p { font-size:12px; } .pp-notification time { font-size:11px; } .pp-notification-symbol { width:27px; height:29px; } .pp-notification .pp-icon-button { width:26px; height:26px; } .pp-log-filters { padding:9px; } .pp-log-filters > .pp-search { flex-basis:100%; } .pp-log-filters > label:not(.pp-search) { flex:1; min-width:110px; } .pp-log-filters select { font-size:12px; } .pp-profile-form { padding:11px; } .pp-profile-preview > :last-child { display:none; } .pp-profile-preview h3 { font-size:21px; } .pp-preferences-form { padding:0 11px 11px; } .pp-security-grid { grid-template-columns:1fr; gap:13px; } .pp-security-content,.pp-recovery-content { padding:12px; } .pp-session { flex-wrap:wrap; gap:10px; padding:11px; } .pp-session .pp-btn { flex-basis:100%; } .pp-session p { font-size:12px; } .pp-session small { font-size:11px; } .pp-connection-row { padding:12px 10px; gap:9px; } .pp-connection-row h3 { font-size:20px; } .pp-connection-row p { font-size:12px; } .pp-connection-row > .ui-badge { margin-left:45px; } .pp-connection-row .pp-btn { min-width:0; font-size:16px; } .pp-connected-profile { font-size:11px; } .pp-form-actions > .pp-btn { flex:1; font-size:16px; padding-left:7px; padding-right:7px; } .pp-purchase-item { padding:10px; gap:11px; } .pp-purchase-item h3 { font-size:21px; } .pp-purchase-item p { font-size:12px; } .pp-operation-summary > div { font-size:12px; } }
@media(prefers-reduced-motion:reduce) { .pp *,.pp-modal * { transition:none!important; scroll-behavior:auto!important; } .pp-btn:active { transform:none; } }
