/* Shared improvements for both guest and signed-in templates. */
:root {color-scheme:dark;--pm-accent-soft:rgba(33,150,243,.12);--pm-header:#10131a;--pm-hero:linear-gradient(125deg,#101b30,#17253c);}
:root[data-pm-theme="light"] {
  color-scheme:light;--bg0:#edf1f8;--bg1:#fff;--bg2:#f3f6fc;--bg3:#e7edf8;--bg4:#dce5f4;
  --ln:rgba(28,48,82,.10);--ln2:rgba(28,48,82,.18);--wh:#1a2941;--mid:#485c78;--dim:#586b85;
  --bl:#1774cc;--bl2:#1465b4;--bl3:#125eaf;--bl4:#194c8c;--cy:#087a91;--glow:rgba(33,114,210,.12);
  --gr:#147b4e;--rd:#c53535;--gd:#906000;--shadow:0 12px 36px rgba(32,53,88,.12);
  --pm-accent-soft:rgba(30,100,200,.08);--pm-header:#fff;--pm-hero:linear-gradient(125deg,#f4f7ff,#e9f0fd);
}
:root[data-pm-theme="purple"] {
  color-scheme:dark;--bg0:#0d0a15;--bg1:#171121;--bg2:#21192f;--bg3:#2c2140;--bg4:#39294f;
  --ln:rgba(192,162,241,.10);--ln2:rgba(192,162,241,.20);--wh:#f5efff;--mid:#b5a6cb;--dim:#9b88b7;
  --bl:#aa78ed;--bl2:#c59cff;--bl3:#7542c0;--bl4:#482379;--cy:#de9bdf;--glow:rgba(174,109,247,.20);
  --gr:#49d6a0;--rd:#ff738b;--gd:#e8c087;--shadow:0 14px 44px rgba(0,0,0,.4);
  --pm-accent-soft:rgba(174,109,247,.12);--pm-header:#110d1b;--pm-hero:linear-gradient(125deg,#1c1230,#2c1d40);
}
html {max-width:100%;overflow-x:hidden;}
@supports(overflow:clip){html {overflow-x:clip;}}
body {min-width:0;max-width:100%;}
/* Contain the progress glow that otherwise protrudes when its width reaches 100%. */
.pm-header-progress {overflow:hidden!important;}
.page,.page>*,.hdr-i,.hdr-r,.post-body,.fs-main-col,.fs-last-col,.build-info,.dl-row-name {min-width:0;}
.page {max-width:min(1520px,100%);}
.post {background:var(--bg1)!important;border:1px solid var(--ln2);border-radius:16px;isolation:isolate;}
.post .post-user {background:var(--bg2);border-radius:15px 0 0 15px;}
.post .post-body {background:var(--bg1);border-radius:0 15px 15px 0;}
.post-content,.with_code {overflow-wrap:anywhere;min-width:0;}
.post-content img,.with_code img {max-width:100%;height:auto;}
.post-content iframe,.with_code iframe {max-width:100%;}
.post-content pre,.with_code pre {max-width:100%;overflow-x:auto;white-space:pre;}
.post-content table,.with_code table {max-width:100%;display:block;overflow-x:auto;}
.post-head,.post-footer {flex-wrap:wrap;gap:10px;}
.topic-header>div:first-child,.topic-actions {flex-wrap:wrap;min-width:0;}
.topic-title {overflow-wrap:anywhere;}
.pm-forum-panel {padding:20px;background:var(--bg1);border:1px solid var(--ln2);border-radius:18px;box-shadow:var(--shadow);}
.pm-forum-group {padding:0 0 16px;}
.pm-forum-group:last-child {padding-bottom:0;}
.pm-forum-group .fg-header {padding:12px 0;}
.pm-forum-group .forum-section {background:var(--bg2);}
.pm-forum-group .fs-desc {color:var(--mid);}
.hdr {background:var(--pm-header);}
:root[data-pm-theme="light"] body {background-image:radial-gradient(ellipse at top,#dde9fa,transparent 70%);}
:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) body {background-image:radial-gradient(ellipse at 20% 0%,rgba(112,53,176,.23),transparent 55%),radial-gradient(ellipse at 100% 40%,rgba(94,40,142,.15),transparent 60%);background-attachment:fixed;}
:root[data-pm-theme="light"] :is(.forum-hero,.news-hero,.shop-hero,.footer),:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.forum-hero,.news-hero,.shop-hero,.footer) {background:var(--pm-hero);color:var(--wh);}
:root[data-pm-theme="light"] :is(.modal-content,.drop,.mnav>li>ul),:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.modal-content,.drop,.mnav>li>ul) {background:var(--bg1);color:var(--wh);}
:root[data-pm-theme="light"] :is(.form-control,input,textarea,select) {color:var(--wh);}
:root[data-pm-theme="light"] :is(.sb-promo,.promo-card) {color:#fff;}
.hdr-r {gap:10px;}
.pm-theme-picker {position:relative;flex-shrink:0;}
.pm-theme-picker summary {list-style:none;cursor:pointer;}
.pm-theme-picker summary::-webkit-details-marker {display:none;}
.pm-theme-menu {position:absolute;right:0;top:calc(100% + 12px);width:270px;max-width:calc(100vw - 24px);padding:12px;background:var(--bg1);border:1px solid var(--ln2);border-radius:14px;box-shadow:var(--shadow);z-index:950;}
.pm-theme-menu>span {display:block;color:var(--mid);font-size:11px;text-transform:uppercase;letter-spacing:1px;padding:6px 10px 10px;}
.pm-theme-menu button {width:100%;display:flex;align-items:center;gap:10px;text-align:left;background:transparent;border:1px solid transparent;border-radius:9px;padding:11px 10px;color:var(--wh);font:inherit;font-size:12px;cursor:pointer;}
.pm-theme-menu button[aria-pressed="true"] {background:var(--pm-accent-soft);border-color:var(--bl3);}
.pm-swatch {width:20px;height:20px;border-radius:50%;border:1px solid #8895ab;flex-shrink:0;}
.pm-swatch-dark {background:linear-gradient(135deg,#192033 50%,#2196f3 50%);}
.pm-swatch-light {background:linear-gradient(135deg,#fff 50%,#d0e1f9 50%);}
.pm-swatch-purple {background:linear-gradient(135deg,#21152e 50%,#bd91fa 50%);}
.pm-favorites-open {position:relative;flex-shrink:0;cursor:pointer;}
.pm-favorites-count {position:absolute;right:-4px;top:-5px;min-width:17px;padding:1px 4px;border-radius:9px;background:var(--bl3);color:#fff;font-size:10px;line-height:15px;border:2px solid var(--pm-header);}
.pm-save,.pm-btn {display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 14px;border:1px solid var(--ln2);border-radius:10px;background:var(--bg2);color:var(--wh);font:inherit;font-size:12px;font-weight:800;line-height:1.4;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s;}
.pm-save svg {width:18px;height:18px;flex-shrink:0;}
.pm-save-compact {width:34px;min-height:34px;padding:7px;flex-shrink:0;}
.pm-save[aria-pressed="true"] {color:var(--bl2);background:var(--pm-accent-soft);border-color:var(--bl3);}
.pm-save[aria-pressed="true"] svg {fill:currentColor;}
.pm-primary {background:linear-gradient(120deg,var(--bl3),var(--bl));color:#fff;border-color:transparent;box-shadow:0 5px 18px var(--glow);}
.pm-btn:hover,.pm-save:hover {border-color:var(--bl2);}
.pm-btn:disabled {opacity:.45;cursor:not-allowed;}
:is(.pm-btn,.pm-save,.pm-theme-menu button,.pm-theme-picker summary,.pm-favorites-open):focus-visible {outline:2px solid var(--bl2);outline-offset:3px;}
.pm-dialog {position:fixed;inset:0;margin:auto;width:660px;max-width:calc(100vw - 28px);max-height:85vh;padding:24px;background:var(--bg1);color:var(--wh);border:1px solid var(--ln2);border-radius:20px;box-shadow:var(--shadow);overflow-y:auto;overscroll-behavior:contain;}
.pm-dialog::backdrop {background:rgba(5,8,16,.72);backdrop-filter:blur(6px);}
.pm-dialog-head {display:flex;align-items:center;justify-content:space-between;gap:12px;}
.pm-dialog-head h2 {font-size:22px;margin:0;}
.pm-dialog-head button {font-size:22px;width:40px;padding:0;}
.pm-dialog-note {color:var(--mid);font-size:12px;margin:10px 0 18px;}
.pm-favorites-search {width:100%;margin-bottom:14px;}
.pm-favorites-list {display:grid;gap:10px;}
.pm-empty {padding:36px 18px;text-align:center;color:var(--mid);line-height:1.8;}
.pm-build-card {display:flex;align-items:center;gap:12px;padding:10px;background:var(--bg2);border:1px solid var(--ln);border-radius:12px;min-width:0;}
.pm-build-link {display:flex;align-items:center;gap:14px;min-width:0;flex:1;color:var(--wh);}
.pm-build-link>div:last-child {min-width:0;}
.pm-build-link h3 {font:inherit;font-size:13px;line-height:1.5;overflow-wrap:anywhere;}
.pm-build-link small {color:var(--bl2);font-size:10px;}
.pm-poster {position:relative;overflow:hidden;background:linear-gradient(140deg,var(--bg3),var(--bg0));border-radius:9px;aspect-ratio:16/9;flex-shrink:0;}
.pm-poster img {display:block;width:100%;height:100%;object-fit:cover;}
.pm-poster-fallback {position:absolute;inset:0;display:grid;place-content:center;color:var(--mid);font-size:18px;font-weight:800;}
.pm-build-link .pm-poster {width:104px;}
.pm-toast {position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:3000;max-width:calc(100vw - 32px);width:max-content;padding:12px 20px;border:1px solid var(--bl3);border-radius:12px;background:var(--bg2);color:var(--wh);box-shadow:var(--shadow);font-size:13px;}
.pm-page-save {margin-bottom:16px;}
.pm-roulette-wrap {width:100%;max-width:1520px;margin:0 auto;padding:28px 28px 0;}
.pm-roulette {margin:0!important;overflow:hidden;border:1px solid var(--ln2);box-shadow:none!important;}
.pm-roulette-head {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px;background:var(--pm-hero);border-bottom:1px solid var(--ln2);}
.pm-eyebrow {font-size:10px;font-weight:800;letter-spacing:1.6px;color:var(--bl2);}
.pm-roulette-head h2 {font-family:'Rajdhani','Nunito',sans-serif;font-size:32px;line-height:1.2;margin:8px 0;color:var(--wh);}
.pm-roulette-head p {font-size:13px;color:var(--mid);}
.pm-catalog-count {flex-shrink:0;border:1px solid var(--ln2);border-radius:30px;padding:8px 14px;font-size:12px;color:var(--bl2);background:var(--pm-accent-soft);font-weight:800;}
.pm-roulette-filters {display:flex;gap:16px;padding:20px 28px;align-items:end;}
.pm-roulette-filters label {display:flex;flex-direction:column;gap:7px;color:var(--mid);font-size:11px;font-weight:800;min-width:0;}
.pm-search-label {flex:1;}
.pm-roulette :is(input[type="search"],select),.pm-favorites-search {font:inherit;font-size:13px;border:1px solid var(--ln2);border-radius:9px;background:var(--bg2);color:var(--wh);padding:10px 12px;min-height:42px;min-width:0;}
.pm-roulette input::placeholder {color:var(--dim);}
.pm-roulette input:focus,.pm-roulette select:focus,.pm-favorites-search:focus {outline:2px solid var(--bl3);outline-offset:1px;}
.pm-reel {position:relative;width:calc(100% - 56px);margin:0 28px;overflow:hidden;border:1px solid var(--ln2);border-radius:14px;background:var(--bg0);}
.pm-reel::before,.pm-reel::after {content:'';position:absolute;top:0;bottom:0;width:50px;z-index:2;pointer-events:none;}
.pm-reel::before {left:0;background:linear-gradient(90deg,var(--bg0),transparent);}
.pm-reel::after {right:0;background:linear-gradient(-90deg,var(--bg0),transparent);}
.pm-reel-pointer {position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--gd);z-index:3;pointer-events:none;box-shadow:0 0 14px var(--gd);}
.pm-reel-pointer::before {content:'';position:absolute;left:-6px;top:0;border:7px solid transparent;border-top:10px solid var(--gd);}
#rl-track {position:relative;display:flex;gap:12px;padding:16px 12px;width:max-content;will-change:transform;}
.pm-reel-tile {width:204px;flex:0 0 204px;background:var(--bg1);border:1px solid var(--ln2);border-radius:11px;padding:8px;}
.pm-reel-tile .pm-poster {width:100%;}
.pm-reel-tile small {display:block;font-size:10px;color:var(--bl2);margin:8px 4px 4px;}
.pm-reel-tile strong {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:38px;margin:0 4px 4px;font-size:12px;line-height:19px;color:var(--wh);}
.pm-reel-selected {border-color:var(--gd);box-shadow:0 0 16px var(--glow);}
.pm-roulette-actions {display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:20px 28px;}
.pm-auto-label,.pm-sound-label {display:flex;align-items:center;gap:7px;font-size:12px;color:var(--mid);}
.pm-auto-label {margin-left:auto;}
.pm-auto-label select {padding:8px;}
.pm-sound-label input {accent-color:var(--bl);}
#rl-status {width:100%;font-size:12px;color:var(--mid);padding-top:4px;}
.pm-winner {display:flex;gap:22px;align-items:center;background:var(--pm-accent-soft);border:1px solid var(--bl3);margin:0 28px 20px;padding:18px;border-radius:14px;}
.pm-winner-poster {width:240px;}
.pm-winner-info {min-width:0;flex:1;}
.pm-winner h3 {font-size:19px;line-height:1.4;margin:8px 0 16px;color:var(--wh);overflow-wrap:anywhere;}
.pm-winner-actions {display:flex;gap:10px;flex-wrap:wrap;}
.pm-roulette-history {padding:16px 28px;border-top:1px solid var(--ln2);}
.pm-roulette-history summary {cursor:pointer;font-size:12px;color:var(--mid);}
.pm-roulette-history summary span {margin-left:6px;color:var(--bl2);}
#rouHistory {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;}
.pm-roulette-note {margin:0;padding:0 28px 20px;font-size:11px;line-height:1.7;color:var(--dim);}
.pm-roulette [hidden],.pm-dialog [hidden],.pm-toast[hidden],.pm-favorites-count[hidden],.pm-poster [hidden] {display:none!important;}
@media(max-width:1100px){.hdr-i {gap:12px;}.hdr-r .bal {max-width:145px;overflow:hidden;}.pm-winner-poster{width:180px;}}
@media(max-width:700px){
  .hdr-i {flex-wrap:wrap;height:auto;min-height:64px;padding-top:8px;padding-bottom:8px;row-gap:8px;}.hdr-r {margin-left:auto;gap:7px;}.pm-theme-menu {position:fixed;top:calc(var(--pm-header-height,100px) + 8px);right:12px;}
  .pm-roulette-wrap {padding:16px 12px 0;}.pm-roulette-head {padding:20px;align-items:flex-start;flex-direction:column;gap:12px;}.pm-roulette-head h2{font-size:28px;}
  .pm-roulette-filters {padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px;}.pm-search-label {grid-column:1/-1;grid-row:2;}
  .pm-reel {width:calc(100% - 32px);margin:0 16px;}.pm-reel-tile{width:170px;flex-basis:170px;}
  .pm-roulette-actions {padding:16px;gap:8px;}.pm-auto-label{margin-left:0;}.pm-roulette-actions>.pm-primary{flex:1 0 100%;}
  .pm-winner {margin:0 16px 16px;padding:14px;flex-direction:column;align-items:stretch;gap:12px;}.pm-winner-poster {width:100%;}.pm-winner h3{font-size:17px;}
  .pm-roulette-history {padding:14px 16px;}#rouHistory {grid-template-columns:1fr;}.pm-roulette-note {padding:0 16px 16px;}
  .pm-forum-panel{padding:12px;}.post{flex-direction:column;}.post .post-user{width:100%;border-right:0;border-bottom:1px solid var(--ln);border-radius:15px 15px 0 0;}.post .post-body{width:100%;border-radius:0 0 15px 15px;}
  .post-user .pu-stats{max-width:220px;}.post-user .pu-divider{max-width:220px;}.topic-header{padding:16px;}.topic-actions{width:100%;}.post-head>div{flex-wrap:wrap;}
  .pm-dialog{padding:18px;}.pm-dialog-head h2{font-size:19px;}.pm-build-link .pm-poster{width:76px;}.pm-build-link{gap:10px;}
  .build-row {flex-wrap:wrap;}.dl-row{gap:6px;}.dl-row-size{display:none;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.pm-btn,.pm-save{transition:none;}}
/* Theme surfaces that previously used fixed blue backgrounds. */
:root:is([data-pm-theme="light"],[data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.srv,.hero,.prof-hero,.wallet-hero,.prof-banner) {background:var(--pm-hero);border-color:var(--ln2);color:var(--wh);}
:root:is([data-pm-theme="light"],[data-pm-theme="purple"],[data-pm-theme="orange"]) .hero::before {background:radial-gradient(circle at 70% 50%,var(--pm-accent-soft),transparent 65%);pointer-events:none;}
:root:is([data-pm-theme="light"],[data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.hero-t,.srv-nm) {color:var(--wh);}
:root:is([data-pm-theme="light"],[data-pm-theme="purple"],[data-pm-theme="orange"]) .hero .bts {background:var(--bg2);color:var(--wh);}
:root:is([data-pm-theme="light"],[data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.tu,.vex,.dl-group-hd.open,.dl-ext.exe,.bdet) {background:var(--pm-accent-soft);border-color:var(--ln2);}
:root:is([data-pm-theme="light"],[data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.bdet:hover,.pm-version-actions .bdet:hover) {background:var(--bl3);color:#fff;border-color:var(--bl3);}
:root:is([data-pm-theme="light"],[data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.cbtn,.btp,.dl-dl-btn) {box-shadow:0 4px 16px var(--glow);}
:root[data-pm-theme="light"] .srv .pbr-t {background:var(--bg4);}
.srv-st {color:#fff;}
:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) .srv-map::after {background-image:linear-gradient(rgba(174,109,247,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(174,109,247,.06) 1px,transparent 1px);}
/* A single aligned action group preserves table layout and predictable spacing. */
.pm-version-actions {display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap;}
.pm-version-actions :is(.bdet,.pm-save) {box-sizing:border-box;height:34px;min-height:34px;margin:0;vertical-align:middle;border-radius:8px;line-height:1;}
.pm-version-actions .bdet {justify-content:center;padding:0 12px;}
.pm-version-actions .pm-save {width:34px;padding:7px;}
.vt td {vertical-align:middle;}
.pm-reel-tile {display:block;color:var(--wh);text-decoration:none;transition:border-color .15s,box-shadow .15s;}
.pm-reel-tile:hover {border-color:var(--bl2);box-shadow:0 4px 18px var(--glow);}
.pm-reel-tile:focus-visible {outline:2px solid var(--bl2);outline-offset:-3px;}
.pm-build-stats {display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:var(--mid);font-size:11px;font-weight:700;}
.pm-build-stats>span {display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
.pm-build-stats svg {width:15px;height:15px;flex-shrink:0;color:var(--bl2);}
.pm-reel-tile .pm-build-stats {margin:10px 4px;gap:8px;font-size:10px;}
.pm-tile-details {display:flex;justify-content:center;align-items:center;min-height:32px;padding:7px 10px;border:1px solid var(--ln2);border-radius:7px;background:var(--pm-accent-soft);color:var(--bl2);font-size:11px;font-weight:800;}
.pm-reel-tile:hover .pm-tile-details {background:var(--bl3);color:#fff;border-color:var(--bl3);}
.pm-winner-info>.pm-build-stats {margin:-5px 0 16px;}
@media(max-width:700px){.vt td,.vt th{padding:12px;}.pm-version-actions{gap:6px;}.pm-version-actions .bdet{padding:0 9px;}.pm-reel-tile .pm-build-stats{font-size:9px;gap:6px;}.pm-reel-tile .pm-build-stats svg{width:13px;height:13px;}}

/* Contain private message content within the account shell. */
.pm-messages :is(#place_for_messages,#chat,#drop_zone,#messages,form){min-width:0;max-width:100%;}
.pm-messages #messages{overflow-wrap:anywhere;}
.pm-messages #messages img{max-width:100%;height:auto;}
.pm-messages #messages pre{max-width:100%;overflow-x:auto;}
:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.pna.on,.fhstat,.topic-badge,.icard-ico.blue,.fs-icon.blue,.tip-row__icon) {background:var(--pm-accent-soft);border-color:var(--ln2);}
:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) .card:hover {box-shadow:var(--shadow),0 0 0 1px var(--pm-accent-soft);}
:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) :is(.chat-header__new-btn,.dlg-new-btn) {box-shadow:0 4px 14px var(--glow);}
/* A shared, centered surface contains every profile column. */
.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications) {box-sizing:border-box;width:calc(100% - 56px);max-width:1464px;margin:30px auto 40px;padding:20px;display:grid;grid-template-columns:260px minmax(0,1fr) 260px;gap:20px;background:var(--bg1);border:1px solid var(--ln2);border-radius:22px;}
.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications)>div {min-width:0;max-width:100%;}
.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications)>div:first-child {grid-column:auto;}
.pm-profile :is(.info-val,.prof-name,.wpost-body) {min-width:0;overflow-wrap:anywhere;}
.pm-profile :is(.info-table,.info-row) {min-width:0;max-width:100%;}
.pm-profile .info-val img {max-width:100%;height:auto;}
@media(max-width:1200px){.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications){grid-template-columns:240px minmax(0,1fr);}.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications)>.rcol{grid-column:1/-1;}}
@media(max-width:700px){.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications){width:calc(100% - 24px);margin:16px auto 24px;padding:12px;gap:16px;grid-template-columns:minmax(0,1fr);border-radius:16px;}.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications)>div:first-child,.page:is(.pm-profile,.pm-friends,.pm-privileges,.pm-wallet,.pm-messages,.pm-notifications)>.rcol{grid-column:1;}.pm-profile .info-row{flex-wrap:wrap;gap:6px;}.pm-profile .info-val{max-width:100%;}}

/* Friends use the same centered shell as the profile. */
.pm-friends .fc-grid{min-width:0;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));}
.pm-friends .fc{min-width:0;}
.pm-friends .fc-nm{display:block;max-width:100%;}
.pm-friends .ftabs{flex-wrap:wrap;}
.pm-friends .ftab{min-width:0;}
.pm-friends #search_login{min-width:0;}
@media(max-width:700px){.pm-friends .fc-grid{padding:12px;gap:12px;}.pm-friends .ftab{padding:12px;}.pm-friends .fc-btns{flex-wrap:wrap;}}

/* Privileges share the account shell, with a sidebar and services column. */
.page:is(.pm-privileges,.pm-wallet,.pm-notifications){grid-template-columns:260px minmax(0,1fr);}
.pm-privileges .priv-page-hdr{background:var(--pm-hero);border-color:var(--ln2);}
.pm-privileges .svc-table-wrap{min-width:0;max-width:100%;overflow-x:auto;}
.pm-privileges .svc-table{min-width:640px;}
@media(max-width:1200px){.page:is(.pm-privileges,.pm-wallet,.pm-notifications){grid-template-columns:240px minmax(0,1fr);}}
@media(max-width:700px){.page:is(.pm-privileges,.pm-wallet,.pm-notifications){grid-template-columns:minmax(0,1fr);}.pm-privileges .priv-page-hdr{padding:20px;}}

/* Wallet layout stays inside the shared account container. */
.pm-wallet .pay-methods{grid-template-columns:repeat(2,minmax(0,1fr));}
.pm-wallet :is(.pay-method,.wallet-bal-card,.wallet-balance-row>div){min-width:0;max-width:100%;}
.pm-wallet .voucher-inp{min-width:0;}
.pm-wallet :is(.hist-desc,.pay-method-name,.wallet-bal-val){overflow-wrap:anywhere;}
.pm-wallet .wallet-bal-val{flex-wrap:wrap;}
@media(max-width:1100px){.pm-wallet .pay-methods{grid-template-columns:minmax(0,1fr);}}
@media(max-width:700px){.pm-wallet .wallet-hero{padding:20px;}.pm-wallet .wallet-bal-card{padding:16px;}.pm-wallet .wallet-bal-val{font-size:clamp(22px,6vw,36px);}.pm-wallet .pay-methods{padding:12px;}.pm-wallet .pay-method{flex-wrap:wrap;gap:10px;}.pm-wallet .pay-method-btn{justify-content:center;flex:1 0 100%;}.pm-wallet .voucher-section{padding:0 12px 12px;}.pm-wallet .voucher-wrap{padding:14px;flex-wrap:wrap;}.pm-wallet .voucher-wrap>div:last-child{flex-basis:100%!important;}.pm-wallet .voucher-inp-row{flex-direction:column;align-items:stretch;}.pm-wallet .hist-item{padding:14px;gap:10px;}}

/* Notification text and actions stay inside the account shell. */
.pm-notifications :is(.notif-card,.notif-list,#pagination2){min-width:0;max-width:100%;}
.pm-notifications .notif-list{overflow-wrap:anywhere;}
.pm-notifications .notif-hdr{flex-wrap:wrap;gap:10px;}

/* Site-wide hover policy, including cards rendered by CMS modules.
   Keep focus-visible indicators for keyboard users and form fields. */
:root body :hover:not(:focus-visible),
:root body :hover:not(:focus-visible)::before,
:root body :hover:not(:focus-visible)::after {box-shadow:none!important;}

/* Forum sections align with the site container, with opaque topic rows. */
.page.pm-forum-topics{box-sizing:border-box;width:calc(100% - 56px);max-width:1464px;margin:30px auto 40px;padding:20px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;background:var(--bg1);border:1px solid var(--ln2);border-radius:22px;}
.pm-forum-topics .el-topic-item{background:var(--bg2);border:1px solid var(--ln2);border-radius:14px;min-width:0;}
.pm-forum-topics .el-topic-fixed{border-left:3px solid var(--bl);}
.pm-forum-topics .el-topic-item:hover{background:var(--bg3);}
.pm-forum-topics .el-topic-heading{padding:10px 2px;color:var(--wh);}
.pm-forum-topics .el-topic-main>div{min-width:0;overflow-wrap:anywhere;}
.pm-forum-topics .el-topic-stats{flex-wrap:wrap;gap:6px 12px;}
.pm-forum-topics .el-topic-last{max-width:32%;overflow-wrap:anywhere;}
.pm-forum-section-hero .pm-forum-section-actions{flex-wrap:wrap;gap:16px;}
@media(max-width:700px){.page.pm-forum-topics{width:calc(100% - 24px);margin:16px auto 24px;padding:12px;gap:10px;border-radius:16px;}.pm-forum-topics .el-topic-item{padding:14px 12px;}.pm-forum-topics .el-topic-main{gap:10px;}.pm-forum-section-hero .forum-hero-inner{padding:24px 12px;}}

/* Wallet history pagination. */
.pm-history-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:16px;border-top:1px solid var(--ln);}
.pm-history-actions [hidden]{display:none!important;}
.pm-history-actions p{margin:0;font-size:12px;color:var(--mid);}

/* History action follows the active theme; no decorative hover shadow. */
.pm-history-actions{padding:20px;flex-direction:column;background:var(--bg1);}
.pm-history-more{min-width:220px;min-height:44px;max-width:100%;padding:12px 22px;gap:10px;border-radius:11px;border:1px solid var(--bl3);background:linear-gradient(120deg,var(--bl3),var(--bl));color:#fff;font-size:13px;font-weight:800;box-shadow:none!important;transition:background .18s,border-color .18s,opacity .18s;}
.pm-history-more::before{content:'';width:18px;height:18px;flex:0 0 18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 7v5h-5M4 17v-5h5M6.1 6.1A8 8 0 0 1 19.5 10M4.5 14A8 8 0 0 0 17.9 17.9'/%3E%3C/svg%3E") center/contain no-repeat;}
.pm-history-more:hover:not(:disabled){background:var(--bl3);border-color:var(--bl2);color:#fff;}
.pm-history-more:disabled{opacity:.65;cursor:wait;}
.pm-history-more:disabled::before{animation:pm-history-spin 1s linear infinite;}
.pm-history-more:focus-visible{outline:2px solid var(--bl2);outline-offset:4px;}
:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) .pm-history-more{background:linear-gradient(120deg,var(--bl4),var(--bl3));}
:root:is([data-pm-theme="purple"],[data-pm-theme="orange"]) .pm-history-more:hover:not(:disabled){background:var(--bl3);}
.pm-history-actions p:empty{display:none;}
@keyframes pm-history-spin{to{transform:rotate(360deg);}}
@media(max-width:700px){.pm-history-actions{padding:16px;}.pm-history-more{width:100%;min-width:0;}}
@media(prefers-reduced-motion:reduce){.pm-history-more:disabled::before{animation:none;}}

/* Player statistics header follows the selected site palette. */
#modalHdrStats{background:var(--pm-hero);border-bottom-color:var(--ln2);color:var(--wh);}
#modalHdrStats::before{background:radial-gradient(circle at 80% 50%,var(--pm-accent-soft),transparent 55%);}
#modalHdrStats .modal__hdr-title{color:var(--wh);font-weight:700;overflow-wrap:anywhere;}
#modalHdrStats .modal__hdr-info{min-width:0;}
#modalHdrStats .modal__hdr-badge{max-width:100%;overflow-wrap:anywhere;}
#modalHdrStats .modal__hdr-badge:not([style]){color:var(--bl2);background:var(--pm-accent-soft);border:1px solid var(--ln2);}
#modalHdrStats .modal__close{background:var(--bg2);border-color:var(--ln2);color:var(--mid);}
#modalHdrStats .modal__close:hover{background:var(--bg3);border-color:var(--bl2);color:var(--wh);}
#modalHdrStats .modal__close:focus-visible{outline:2px solid var(--bl2);outline-offset:3px;}

/* Ban details use theme surfaces with a red moderation accent. */
.modal__hdr.pm-ban-header{background:var(--pm-hero);border-bottom-color:var(--ln2);color:var(--wh);}
.pm-ban-header::before{background:radial-gradient(circle at 80% 50%,var(--pm-accent-soft),transparent 55%);}
.pm-ban-header::after{background:linear-gradient(90deg,transparent,var(--rd),transparent);}
.pm-ban-header .modal__hdr-info{min-width:0;}
.pm-ban-header .modal__hdr-name{color:var(--wh);overflow-wrap:anywhere;}
.pm-ban-header .modal__hdr-badge{max-width:100%;background:var(--bg2);border:1px solid var(--ln2);color:var(--mid);overflow-wrap:anywhere;}
.pm-ban-header .modal__close{background:var(--bg2);border-color:var(--ln2);color:var(--mid);}
.pm-ban-header .modal__close:hover{background:var(--bg3);border-color:var(--bl2);color:var(--wh);}
.pm-ban-header .modal__close:focus-visible{outline:2px solid var(--bl2);outline-offset:3px;}

/* Let profile identity and management totals fit narrow sidebars. */
.pm-profile .prof-ava-wrap{flex-wrap:wrap;align-items:flex-start;gap:12px;}
.pm-profile .prof-ava-wrap>div:last-child{flex:1 1 150px;min-width:0;max-width:100%;}
.pm-profile .prof-name{width:100%;min-width:0;line-height:1.25;}
.pm-profile .prof-name-login{display:block;flex-basis:100%;max-width:100%;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;}
.pm-profile .prof-role-badge{max-width:100%;white-space:normal;overflow-wrap:anywhere;}
.pm-profile .prof-role-badge svg{flex-shrink:0;}
.pm-profile .prof-meta-row{flex-wrap:wrap;gap:6px 10px;}
.pm-profile .prof-online.grey{width:auto;min-width:0;max-width:100%;}
.pm-profile .prof-online.grey p{white-space:normal;overflow:visible;overflow-wrap:anywhere;margin:0;}
.pm-profile .admin-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));}
.pm-profile .admin-stat{min-width:0;padding:12px;}
.pm-profile .admin-stat-val{max-width:100%;line-height:1.2;overflow-wrap:anywhere;}
.pm-profile .admin-stat-lbl{flex-wrap:wrap;}

/* Warm dark orange palette, shared by account pages and CMS content. */
:root[data-pm-theme="orange"]{
 color-scheme:dark;--bg0:#110e0c;--bg1:#1d1713;--bg2:#29201a;--bg3:#382a20;--bg4:#493424;
 --ln:rgba(245,181,126,.10);--ln2:rgba(245,181,126,.22);--wh:#fff3e8;--mid:#ccb5a3;--dim:#b29a86;
 --bl:#b94b12;--bl2:#ffa666;--bl3:#963709;--bl4:#652807;--cy:#ffc078;--glow:rgba(235,119,40,.18);
 --gr:#62d69f;--rd:#ff857c;--gd:#efc074;--shadow:0 14px 44px rgba(0,0,0,.4);
 --pm-accent-soft:rgba(244,139,61,.12);--pm-header:#16100c;--pm-hero:linear-gradient(125deg,#22170f,#392719);
}
:root[data-pm-theme="orange"] body{background-image:radial-gradient(ellipse at 20% 0%,rgba(161,77,22,.20),transparent 55%),radial-gradient(ellipse at 100% 40%,rgba(139,68,23,.12),transparent 60%);background-attachment:fixed;}
.pm-swatch-orange{background:linear-gradient(135deg,#291b12 50%,#ffa666 50%);border-color:#c08b60;}
:root[data-pm-theme="orange"] :is(.srv-map,.prof-banner,.forum-hero,.news-hero)::after{background-image:linear-gradient(rgba(244,139,61,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(244,139,61,.05) 1px,transparent 1px);}
:root[data-pm-theme="orange"] .prof-hero::before{background:radial-gradient(circle at 80% 20%,var(--pm-accent-soft),transparent 55%);}
:root[data-pm-theme="orange"] :is(.priv-uava,.pay-method-icon.card){background:linear-gradient(135deg,var(--bl3),var(--bl));}
:root[data-pm-theme="orange"] :is(.pm-primary,.btp,.cbtn,.btn-primary,.reply-submit-btn,.pay-method-btn,.dlg-new-btn,.chat-header__new-btn){box-shadow:none;}
:root[data-pm-theme="orange"] :is(.build-dl,.cmsg.own .cbbl,.pmx16__hbdg-v,.pmx16__feat-ico-5){background:var(--pm-accent-soft);border-color:var(--ln2);}
:root[data-pm-theme="orange"] .build-dl:hover{background:var(--bl3);border-color:var(--bl3);color:#fff;}
:root[data-pm-theme="orange"] .dh{background:var(--pm-hero);}
:root[data-pm-theme="orange"] :is(.pfava,.dava,.ab-av){background:linear-gradient(135deg,var(--bl3),var(--bl));}

/* Private-message avatars keep their square frame regardless of message height. */
.pm-messages #messages .el-im-msg>img{width:36px;height:36px;min-width:36px;max-width:36px;flex:0 0 36px;align-self:flex-start;aspect-ratio:1;border-radius:50%;object-fit:cover;display:block;}
