/* The dossier owns only PROFILE. Shared battle styling stays untouched. */
.app[data-route="PROFILE"] { background:#02080e; }
.app[data-route="PROFILE"] > main { background:#030d17 url('/app/client/assets/ui/profile/profile-bg.png') center / cover no-repeat; padding:0; }
.app[data-route="PROFILE"] .pd-screen { min-height:0; overflow:visible; max-width:none; margin:0; }
.pd-screen::before { display:none; }
.app[data-route="PROFILE"] .pd-layout { width:auto; max-width:none; margin:0; padding:0 24px 12px; display:flex; flex-direction:column; gap:14px; font-size:clamp(11px,.82vw,14px); }
.pd-layout h1,.pd-layout h2,.pd-layout p { margin:0; }
.pd-layout tc-dossier-frame { min-width:0; min-height:0; }
.pd-content { position:relative; height:100%; padding:24px; }
.pd-heading { width:min(540px,70%); height:58px; margin-left:-24px; }
.pd-heading .pd-content { display:flex; align-items:center; gap:14px; padding:8px 24px; }
.pd-heading h1 { font-size:clamp(15px,1vw,18px); font-weight:850; letter-spacing:.025em; line-height:1.15; }
.pd-heading p { margin-top:4px; font-size:10px; color:#63cce8; letter-spacing:.1em; }
.pd-brand { display:flex; align-items:center; justify-content:center; flex:none; }
.pd-brand img { width:52px; height:auto; }
.pd-brand img+img { margin-left:-12px; }
.pd-heading .pd-brand img { width:27px; }
.pd-heading .pd-brand img+img { margin-left:-6px; }
.pd-hero { display:grid; grid-template-columns:minmax(0,26fr) minmax(0,36fr) minmax(0,38fr); gap:22px; min-height:clamp(300px,39vh,400px); position:relative; isolation:isolate; }
.pd-hero>tc-dossier-frame,.pd-world,.pd-panels>tc-dossier-frame { position:relative; z-index:1; }
.pd-portrait { --pd-shade:linear-gradient(0deg,#020c17ed,transparent 34%,#020d1712); --pd-art-position:55% 0%; }
.pd-portrait .pd-content { display:flex; align-items:flex-end; padding:28px; }
.pd-portrait-caption { text-align:center; width:100%; text-shadow:0 2px 5px #000; }
.pd-portrait-caption span { color:#dcefff; font-weight:800; font-size:12px; letter-spacing:.1em; }
.pd-portrait-caption p { color:#7ee1ef; font-size:10px; margin-top:7px; letter-spacing:.035em; }
.pd-identity .pd-content { padding:24px 26px; }
.pd-name { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:15px; padding-right:26px; }
.pd-name>div { min-width:0; }
.pd-name p { color:#63e8fb; font-size:11px; font-weight:800; letter-spacing:.1em; }
.pd-name h2 { font-size:clamp(25px,2vw,36px); line-height:1.12; margin-top:6px; overflow-wrap:anywhere; }
.pd-name h2.pd-unconfirmed { font-size:20px; }
.pd-button { border:1px solid #4596a9; background:linear-gradient(135deg,#113142,#031420 55%); color:#ecfaff; font-size:clamp(10px,.72vw,12px); font-weight:750; text-transform:uppercase; letter-spacing:.03em; min-height:36px; padding:8px 12px; display:flex; align-items:center; justify-content:center; gap:10px; box-shadow:inset 0 0 0 3px #020b14aa; clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px); }
.pd-button>span { color:#64efff; font-size:22px; font-weight:400; line-height:14px; }
.pd-button:hover:not(:disabled) { background:linear-gradient(135deg,#19485a,#072337 65%); border-color:#84ecf6; }
.pd-button:focus-visible,.pd-help:focus-visible { outline:2px solid #a4f8ff; outline-offset:3px; }
.pd-button:disabled { opacity:.62; cursor:default; }
.pd-edit { flex:none; font-size:10px; min-height:32px; padding:7px 10px; }
.pd-edit .pd-icon { width:16px; height:16px; }
.pd-identity-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(110px,30%); gap:14px; }
.pd-record { min-width:0; }
.pd-record dl { margin:0; }
.pd-record dl>div { display:grid; grid-template-columns:minmax(82px,.9fr) minmax(0,1.1fr); align-items:center; gap:8px; border-bottom:1px solid #214254; padding:6px 0; min-height:28px; }
.pd-record dt { color:#80b0c3; font-size:10px; text-transform:uppercase; }
.pd-record dd { margin:0; color:#effaff; font-size:12px; font-weight:700; overflow-wrap:anywhere; }
.pd-record .pd-online { color:#2ff1b0; display:flex; align-items:center; gap:7px; text-transform:uppercase; }
.pd-online i { width:7px; height:7px; border-radius:50%; background:#15e5a4; }
.pd-account-xp { margin-top:10px; color:#8faebe; font-size:10px; }
.pd-account-xp .progress { margin-top:5px; height:4px; }
.pd-record blockquote { margin:12px 0 0; padding:12px 14px; border:1px solid #296071; background:linear-gradient(120deg,#0625349e,#04101a5c); color:#a6d6e6; font-size:clamp(10px,.73vw,12px); line-height:1.55; text-transform:uppercase; letter-spacing:.04em; }
.pd-emblem { display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; min-width:0; padding:16px 10px; border:1px solid #2b697e; background:linear-gradient(160deg,#0a223075,#020a139e); clip-path:polygon(15px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 15px); }
.pd-emblem small { color:#7daabd; text-transform:uppercase; font-size:10px; }
.pd-emblem strong { font-size:11px; margin-top:8px; }
.pd-emblem .pd-brand { margin:28px 0; width:100%; }
.pd-emblem .pd-brand img { width:clamp(38px,3.5vw,62px); }
.pd-emblem p { color:#7bc5dd; font-size:10px; line-height:1.6; text-transform:uppercase; }
.pd-world { display:flex; align-items:flex-end; justify-content:flex-end; padding:0 0 4px 12%; }
.pd-location { width:100%; max-width:360px; height:140px; --pd-shade:linear-gradient(90deg,#061a28ed,#020d18d9); }
.pd-location .pd-content { padding:17px 20px; }
.pd-location p { color:#91c5d6; font-size:10px; text-transform:uppercase; margin-bottom:10px; }
.pd-location .pd-content>div { display:flex; gap:12px; align-items:center; }
.pd-location .pd-content>div>img { width:85px; height:72px; object-fit:cover; object-position:70% 50%; border:1px solid #274f63; }
.pd-location .pd-content>div>div { flex:1; min-width:0; display:grid; gap:5px; }
.pd-location strong { text-transform:uppercase; font-size:11px; }
.pd-location span { color:#85bace; font-size:10px; }
.pd-location .pd-button { margin-top:4px; padding:4px 8px; min-height:30px; font-size:10px; }
.pd-panels { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; position:relative; isolation:isolate; }
.pd-panel { height:clamp(250px,27vh,275px); min-height:250px!important; }
.pd-arena { --pd-art-position:65% 72%; }
.pd-panel .pd-content { padding:22px; display:flex; flex-direction:column; }
.pd-panel header { display:flex; align-items:center; gap:12px; margin-bottom:10px; }
.pd-icon { width:29px; height:29px; object-fit:contain; flex:none; }
.pd-panel header h2 { color:#60e4f5; font-size:13px; text-transform:uppercase; letter-spacing:.06em; }
.pd-panel-detail { min-width:0; flex:1; }
.pd-panel-lead { color:#bcd9e4; font-size:11px; line-height:1.5; max-width:73%; text-transform:uppercase; margin-bottom:9px!important; }
.pd-layout .progress { height:9px; border:1px solid #3c8b9d; background:#020c13ae; box-shadow:inset 0 0 7px #00131d; }
.pd-layout .progress span { background:linear-gradient(90deg,#147aa1,#79e9f3); box-shadow:0 0 8px #2eb9e1; }
.pd-season-level { display:flex; align-items:baseline; gap:9px; margin-bottom:7px; }
.pd-season-level strong,.pd-collection-count strong { font-size:22px; line-height:1; }
.pd-season-level span { color:#97b9c9; font-size:10px; }
.pd-rewards { margin:8px 0 0; }
.pd-rewards>small { display:block; color:#78c5d9; font-size:9px; text-transform:uppercase; }
.pd-rewards>div { display:flex; gap:8px; margin-top:6px; }
.pd-rewards>div>span { display:flex; align-items:center; gap:5px; padding:3px 7px; border:1px solid #2f5d71; background:#020c179e; font-size:11px; }
.pd-rewards .pd-icon { width:28px; height:25px; }
.pd-ready { position:absolute; top:26px; right:26px; color:#7ff3c4; font-size:11px; padding:2px 5px; border:1px solid #287463; background:#06251e; }
.pd-task { display:grid; gap:5px; margin:0 0 12px; }
.pd-task>span { font-size:10px; text-transform:uppercase; color:#c8e5ef; }
.pd-task strong { font-size:16px; line-height:1; }
.pd-task small { font-size:12px; }
.pd-panel-button { margin:10px 0 0 auto; width:100%; max-width:230px; }
.pd-arena-rating { display:flex; gap:15px; align-items:center; }
.pd-arena-rating>img { width:72px; height:85px; object-fit:contain; }
.pd-arena-rating>div { display:grid; gap:4px; }
.pd-arena-rating span { font-size:10px; text-transform:uppercase; color:#aed3e2; }
.pd-arena-rating strong { font-size:24px; line-height:1.1; }
.pd-arena-rating b { font-size:18px; }
.pd-collection-count { display:flex; justify-content:space-between; align-items:baseline; margin:0 0 16px; }
.pd-collection-count>span { color:#b0d0df; }
.pd-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; width:75%; }
.pd-service { height:66px; }
.pd-service .pd-content { padding:0; }
.pd-service-button { width:100%; height:100%; min-height:0; padding:14px 38px 28px 68px; border:0; background:none; box-shadow:none; justify-content:space-between; clip-path:none; text-align:left; font-size:12px; }
.pd-service-button:hover:not(:disabled),.pd-service-button:focus-visible,.pd-service-button:active:not(:disabled) { background:none; box-shadow:none; outline:none; }
.pd-service:has(.pd-service-button:hover:not(:disabled)),.pd-service:has(.pd-service-button:focus-visible) { --pd-shade:linear-gradient(90deg,#073045e8,#061c2cbf); }
.pd-service:has(.pd-service-button:active:not(:disabled)) { --pd-shade:linear-gradient(90deg,#041d2ce8,#03121bbf); }
.pd-service-button:is(:hover,:focus-visible):not(:disabled) { color:#fff; text-shadow:0 0 8px #67dff766; }
.pd-service-button>span { position:absolute; right:24px; top:24px; }
.pd-service .pd-icon { position:absolute; left:23px; top:20px; width:25px; height:25px; pointer-events:none; }
.pd-service small { position:absolute; left:68px; right:34px; bottom:15px; font-size:9px; text-transform:uppercase; color:#87b8cb; pointer-events:none; }
.pd-footer { display:flex; justify-content:flex-end; position:absolute; right:24px; bottom:22px; }
.pd-help { border:0; background:#05142277; padding:2px 8px; color:#abd5e1; min-height:24px; font-size:11px; }
@media (max-height:850px) and (min-width:1101px) {
  .app[data-route="PROFILE"] .pd-layout { gap:10px; padding-top:0; padding-bottom:8px; }
  .pd-heading { height:46px; }
  .pd-hero { min-height:296px; }
  .pd-identity .pd-content { padding:20px 22px; }
  .pd-name { margin-bottom:8px; }
  .pd-record dl>div { min-height:22px; padding:3px 0; }
  .pd-account-xp { margin-top:7px; }
  .pd-record blockquote { margin-top:8px; padding:8px 10px; }
  .pd-emblem .pd-brand { margin:22px 0; }
  .pd-panel { height:230px; min-height:230px!important; }
  .pd-panel .pd-content { padding:18px 22px; }
  .pd-panel header { margin-bottom:8px; }
  .pd-panel-lead { margin-bottom:6px!important; font-size:10px; }
  .pd-rewards .pd-icon { width:25px; height:22px; }
  .pd-task { margin-bottom:9px; }
  .pd-arena-rating>img { height:70px; }
  .pd-panel-button { min-height:32px; margin-top:8px; }
  .pd-services { width:82%; }
  .pd-service { height:60px; }
  .pd-service-button { font-size:11px; padding-left:57px; }
  .pd-service .pd-icon { left:20px; width:23px; }
  .pd-service small { left:57px; }
}
@media (max-width:1100px) {
  .app[data-route="PROFILE"] .pd-layout { padding:0 14px 14px; }
  .pd-heading { margin-left:-14px; }
  .pd-hero { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
  .pd-portrait,.pd-identity { min-height:330px!important; }
  .pd-world { grid-column:1/-1; padding:0; }
  .pd-location { max-width:400px; }
  .pd-panels { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pd-services { width:100%; }
  .pd-footer { position:static; }
  .pd-service-button { padding-left:48px; font-size:10px; }
  .pd-service .pd-icon { left:15px; width:23px; }
  .pd-service small { left:48px; font-size:8px; }
}
@media (max-width:650px) {
  .app[data-route="PROFILE"] .pd-layout { padding:0 12px 90px; gap:12px; }
  .pd-heading { margin-left:-12px; }
  .pd-heading { width:100%; height:64px; }
  .pd-heading .pd-content { padding:14px 19px; gap:10px; }
  .pd-heading h1 { font-size:14px; }
  .pd-hero { grid-template-columns:1fr; }
  .pd-portrait { height:340px; }
  .pd-portrait .pd-content { padding-bottom:24px; }
  .pd-identity { min-height:385px!important; }
  .pd-identity .pd-content { padding:25px 22px; }
  .pd-name { flex-wrap:wrap; }
  .pd-name h2 { font-size:28px; }
  .pd-identity-grid { grid-template-columns:minmax(0,1fr) 105px; gap:10px; }
  .pd-record dl>div { grid-template-columns:1fr; gap:3px; padding:5px 0; }
  .pd-record dd { font-size:11px; }
  .pd-record dt { font-size:9px; }
  .pd-record blockquote { font-size:9px; padding:9px; }
  .pd-emblem { padding:14px 8px; }
  .pd-emblem strong { font-size:9px; }
  .pd-emblem .pd-brand img { width:40px; }
  .pd-emblem p { font-size:9px; }
  .pd-location { max-width:none; height:140px; }
  .pd-panels { grid-template-columns:1fr; }
  .pd-panel { height:254px; min-height:254px!important; }
  .pd-panel .pd-content { padding:24px; }
  .pd-panel-button { max-width:none; }
  .pd-services { grid-template-columns:1fr; }
  .pd-service-button { padding-left:62px; font-size:12px; }
  .pd-service .pd-icon { left:22px; }
  .pd-service small { left:62px; font-size:9px; }
}

/* Редактор профиля, статистика и эмблема организации (Claude, 11.10.2026). */
.pd-emblem-live { border-color:#3fd6f0; box-shadow:inset 0 0 22px #1fc3e633; }
.pd-org-emblem { display:block; width:clamp(64px,5.6vw,96px); aspect-ratio:1; margin:16px 0; filter:drop-shadow(0 0 6px #4fe3ffaa) drop-shadow(0 0 16px #1fb6e066); animation:pd-emblem-glow 3.2s ease-in-out infinite; }
.pd-org-emblem img { width:100%; height:100%; object-fit:contain; display:block; }
@keyframes pd-emblem-glow { 50% { filter:drop-shadow(0 0 9px #7cf0ffcc) drop-shadow(0 0 24px #1fb6e088); } }
@media (prefers-reduced-motion:reduce) { .pd-org-emblem { animation:none; } }
.pd-overlay { position:fixed; inset:0; z-index:60; display:flex; align-items:center; justify-content:center; padding:24px 16px; background:#01070dcc; backdrop-filter:blur(3px); }
.pd-status { margin:0 0 12px; padding:8px 12px; font-size:12px; border-left:3px solid #4fd7ef; background:#06202d; }
.pd-status-error { border-color:#ff6b6b; color:#ffd2d2; background:#2a0d12; }
.pd-status-ok { border-color:#5fe08a; color:#d4ffe0; }
.pd-rename { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:8px 12px; padding-bottom:16px; margin-bottom:16px; border-bottom:1px solid #1d4a5b; }
.pd-rename label { display:flex; flex-direction:column; gap:6px; min-width:0; }
.pd-rename label span { font-size:10px; text-transform:uppercase; letter-spacing:.06em; color:#7daabd; }
.pd-rename input { height:38px; padding:0 12px; font:inherit; font-size:15px; color:#fff; background:#020a12; border:1px solid #2b697e; }
.pd-rename input:focus { outline:none; border-color:#5fe0f6; }
.pd-rename input:disabled { opacity:.55; }
.pd-rename-save { min-height:38px; white-space:nowrap; }
.pd-rename small { grid-column:1/-1; font-size:11px; color:#87b8cb; }
.pd-avatars p { margin:0 0 10px; font-size:11px; color:#87b8cb; }
.pd-avatars>small { display:block; margin-top:10px; font-size:10px; color:#6f9aab; }
.pd-avatar-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:10px; }
.pd-avatar img { width:100%; aspect-ratio:3/2; object-fit:cover; display:block; }
.pd-avatar span { padding:5px 6px; font-size:10px; line-height:1.25; min-height:2.5em; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.pd-avatar.is-selected::after { content:'✓'; position:absolute; top:5px; right:5px; width:20px; height:20px; display:grid; place-items:center; font-size:12px; color:#02121c; background:#7cf0ff; }
.pd-avatar:disabled { opacity:.6; cursor:default; }
@media (max-width:650px) {
  .pd-overlay { padding:16px; }
  .pd-rename { grid-template-columns:1fr; }
  .pd-avatar-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
/* Длинный позывной (до 16 символов) не рвём посреди слова — уменьшаем кегль. */
.pd-name h2.pd-name-long { font-size:clamp(20px,1.5vw,30px); }
.pd-name h2.pd-name-xlong { font-size:clamp(17px,1.25vw,26px); }
@media (max-width:650px) { .pd-name h2.pd-name-long { font-size:24px; } .pd-name h2.pd-name-xlong { font-size:20px; } }

/* Окна редактора и статистики в металле досье (этап 101, просьба владельца «пожирнее, в нашем стиле»). */
.pd-sheet { display:block; width:min(900px,100%); filter:drop-shadow(0 18px 40px #000c) drop-shadow(0 0 22px #1fb6e033); --pd-shade:linear-gradient(180deg,#0b2635f2,#04101af7 30%,#020a12fa); }
.pd-sheet-body { max-height:calc(100vh - 92px); overflow:auto; margin:14px; padding:16px 22px 18px; scrollbar-width:thin; scrollbar-color:#2a7f9c transparent; color:#dcefff; }
.pd-sheet-head { display:flex; align-items:center; gap:12px; margin:0 0 18px; padding:0 0 14px; border-bottom:1px solid #1f5a6e; position:relative; }
.pd-sheet-head::after { content:''; position:absolute; left:0; bottom:-2px; width:180px; height:3px; background:linear-gradient(90deg,#6fe7ff,#2a8fb0 60%,transparent); box-shadow:0 0 10px #4fe3ff99; }
.pd-sheet-head .pd-icon { width:26px; height:26px; }
.pd-sheet h2 { flex:1; font-size:17px; letter-spacing:.12em; text-transform:uppercase; margin:0; color:#eafaff; text-shadow:0 0 12px #4fe3ff55; }
.pd-sheet h3 { font-size:12px; letter-spacing:.1em; text-transform:uppercase; margin:0 0 4px; color:#63e8fb; }
.pd-close { width:38px; height:38px; min-height:0; padding:0; border:1px solid #3a8fa8; background:linear-gradient(180deg,#0c2b3a,#041520); color:#bfeaf5; font-size:22px; line-height:1; cursor:pointer; box-shadow:inset 0 1px 0 #9fe9f855; }
.pd-close:hover,.pd-close:focus-visible { color:#fff; background:linear-gradient(180deg,#12405a,#062233); outline:none; }
.pd-avatar { position:relative; display:flex; flex-direction:column; padding:0; min-height:0; border:1px solid #2b6a80; background:#020a12; color:#cfe8f2; cursor:pointer; overflow:hidden; text-align:left; }
.pd-avatar::before { content:''; position:absolute; left:0; top:0; z-index:1; width:14px; height:14px; background:linear-gradient(135deg,#6fe7ff 0 2px,transparent 2px), linear-gradient(135deg,#6fe7ff 0 50%,transparent 50%) 0 0/8px 8px no-repeat; pointer-events:none; opacity:.85; }
.pd-avatar:hover:not(:disabled),.pd-avatar:focus-visible { border-color:#5fe0f6; outline:none; background:#06202d; }
.pd-avatar.is-selected { border:2px solid #7cf0ff; background:#07283a; box-shadow:inset 0 0 18px #2fd0f055; }
.pd-stats-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.pd-stats-tile { height:96px; }
.pd-stats-tile .pd-content,.pd-stats-card .pd-content { padding:18px 22px; }
.pd-stats-tile span,.pd-stats-card .pd-content>span,.pd-stats-best span { display:block; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; color:#63e8fb; }
.pd-stats-tile strong { display:block; margin-top:4px; font-size:30px; color:#fff; text-shadow:0 0 14px #4fe3ff66; }
.pd-stats-modes { width:100%; border-collapse:separate; border-spacing:0; margin-bottom:16px; font-size:12px; border:1px solid #23586b; background:#020c15cc; }
.pd-stats-modes th,.pd-stats-modes td { padding:8px 10px; text-align:center; }
.pd-stats-modes thead th { font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#9fdcec; background:linear-gradient(180deg,#123647,#0a2230); border-bottom:2px solid #3fc7e3; }
.pd-stats-modes tbody tr:nth-child(even) { background:#06182380; }
.pd-stats-modes tbody tr:hover { background:#0b2a3a; }
.pd-stats-modes tbody th { text-align:left; font-weight:700; color:#e3f5fb; border-left:3px solid #2a8fb0; }
.pd-stats-modes td { color:#cfe8f2; font-variant-numeric:tabular-nums; border-top:1px solid #12384680; }
.pd-stats-modes tbody th { border-top:1px solid #12384680; }
.pd-stats-modes td.pd-col-1 { color:#6fe7ff; font-weight:800; }
.pd-stats-modes td.pd-col-2 { color:#e79a9a; }
.pd-stats-modes td.pd-col-4 { color:#ffc861; font-weight:800; }
.pd-col-short { display:none; }
.pd-stats-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.pd-stats-card .pd-content>strong { display:block; margin-top:8px; font-size:18px; }
.pd-stats-best .pd-content { display:flex; gap:14px; align-items:center; }
.pd-stats-best img { width:96px; aspect-ratio:3/2; object-fit:cover; border:1px solid #3a8fa8; flex:none; }
.pd-stats-best strong { display:block; margin-top:4px; font-size:16px; }
.pd-stats-best small { display:block; margin-top:3px; font-size:11px; color:#87b8cb; }
.pd-stats-card dl { margin:10px 0 0; }
.pd-stats-card dl>div { display:flex; justify-content:space-between; gap:10px; padding:4px 0; font-size:12px; border-bottom:1px dashed #1a4a5b; }
.pd-stats-card dt { color:#a9cddb; }
.pd-stats-card dd { margin:0; font-weight:800; color:#fff; font-variant-numeric:tabular-nums; }
.pd-stats-card .pd-rarity-rare dt { color:#6fb6ff; } .pd-stats-card .pd-rarity-epic dt { color:#c58bff; } .pd-stats-card .pd-rarity-legendary dt { color:#ffc861; }
.pd-stats-card dd small { color:#7daabd; font-weight:400; }
@media (max-width:650px) {
  .pd-sheet-body { margin:11px; padding:14px 10px 14px; max-height:calc(100vh - 62px); }
  .pd-stats-tile { height:84px; }
  .pd-stats-tile .pd-content { padding:14px 12px; }
  .pd-stats-tile strong { font-size:20px; }
  .pd-stats-grid { grid-template-columns:1fr; }
  .pd-stats-modes { font-size:11px; table-layout:fixed; }
  .pd-stats-modes th,.pd-stats-modes td { padding:6px 2px; }
  .pd-stats-modes thead th { font-size:9px; letter-spacing:0; }
  .pd-col-full { display:none; } .pd-col-short { display:inline; }
  .pd-stats-modes tbody th { width:30%; padding-left:5px; font-size:10px; }
  .pd-stats-modes thead th:first-child { width:30%; }
  .pd-sheet h2 { font-size:14px; letter-spacing:.08em; }
}

/* Оформление из боевого пропуска (этап 2, 13.10.2026): рамка вокруг портрета у ника, титул, выбор в редакторе. */
.pd-name { align-items:center; }
.pd-avatar-badge { position:relative; flex:none; width:72px; height:72px; margin-right:12px; }
.pd-avatar-face { position:absolute; inset:13%; width:74%; height:74%; object-fit:cover; object-position:50% 25%; }
.pd-avatar-frame { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; pointer-events:none; filter:drop-shadow(0 0 6px #0009); }
.pd-title { display:inline-block; margin-top:4px; padding:2px 10px; border:1px solid #c9a24f; background:linear-gradient(180deg,#2b2110cc,#0e0b06cc); color:#ffe39a; font-style:normal; font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 50%,calc(100% - 6px) 100%,6px 100%,0 50%); }
/* 13.10 владелец: рамка у ника была мелкой (72 px) — крупнее; надетая рамка — на большом портрете (фон портрета приглушён). */
.pd-avatar-badge { width:112px; height:112px; margin-right:16px; }
.pd-portrait.has-look img[slot="art"] { filter:blur(5px) brightness(.42) saturate(1.1); transform:scale(1.06); }
.pd-portrait .pd-content { position:relative; }
.pd-portrait-framed { position:absolute; left:50%; top:44%; width:min(84%,420px); aspect-ratio:1; transform:translate(-50%,-50%); pointer-events:none; }
.pd-portrait-framed .pd-avatar-face { position:absolute; inset:14%; width:72%; height:72%; object-fit:cover; object-position:50% 25%; }
.pd-portrait-framed .pd-avatar-frame { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 0 14px #000c) drop-shadow(0 0 22px #ffb34733); }

/* 13.10 владелец: «Оформление» смотрелось дёшево — в стиле игры: металл, срезанные углы, крупные превью «как будет». */
.pd-look { display:flex; flex-direction:column; gap:18px; margin-top:6px; padding-top:16px; border-top:1px solid #1f4d5e; }
.pd-look-head h3 { margin:0; color:#f1fbff; font-size:18px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.pd-look-head p { margin:6px 0 0; color:#8fb3c3; font-size:13px; line-height:1.45; }
.pd-look-group h4 { display:flex; align-items:center; gap:10px; margin:0 0 10px; color:#7fe6ff; font-size:12px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.pd-look-group h4 i { flex:none; width:10px; height:10px; transform:rotate(45deg); border:1px solid #4fd6ff; background:#0b3a4c; box-shadow:0 0 8px #33d6ff66; }
.pd-look-group h4::after { content:""; flex:1; height:1px; background:linear-gradient(90deg,#2f7d94,transparent); }
.pd-look-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(122px,1fr)); gap:12px; }
.pd-look-choice { position:relative; isolation:isolate; display:flex; flex-direction:column; align-items:center; gap:6px; min-height:150px; padding:10px 8px 12px; border:0; background:transparent; color:#d8ecf6; font-size:12px; cursor:pointer;
  --cut:10px; clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut)); }
.pd-look-choice::before { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(115deg,#284b59,#9bc7d1 9%,#e5f8ff 13%,#285c70 27%,#16404f 50%,#7fb0bd 76%,#244450); }
.pd-look-choice::after { content:""; position:absolute; inset:2px; z-index:-1; clip-path:polygon(calc(var(--cut) - 1px) 0,100% 0,100% calc(100% - var(--cut) + 1px),calc(100% - var(--cut) + 1px) 100%,0 100%,0 calc(var(--cut) - 1px)); background:radial-gradient(120% 90% at 50% 0%,#0f2c3a,#050c12 72%); }
.pd-look-choice:hover:not(:disabled)::after { background:radial-gradient(120% 90% at 50% 0%,#164157,#06111a 72%); }
.pd-look-choice.is-selected::before { background:linear-gradient(115deg,#6b4a12,#ffd46a 9%,#fff7d6 14%,#a8771f 28%,#5a3f10 50%,#ffd46a 76%,#7a5617); }
.pd-look-choice.is-selected::after { background:radial-gradient(120% 90% at 50% 0%,#33250c,#0a0805 72%); }
.pd-look-choice.is-selected { color:#ffe39a; filter:drop-shadow(0 0 10px #ffc24a44); }
.pd-look-choice:disabled { cursor:default; }
.pd-look-preview { display:grid; place-items:center; width:100%; height:92px; }
.pd-look-framed { position:relative; width:88px; height:88px; }
.pd-look-face { position:absolute; inset:14%; width:72%; height:72%; object-fit:cover; object-position:50% 25%; }
.pd-look-frame { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
/* Облик рамок карт (14.10.2026): рамка целиком, без обрезки. */
.pd-look-skin { width:auto; height:96px; object-fit:contain; filter:drop-shadow(0 2px 6px rgba(0,0,0,.6)); }
.pd-look-table { width:100%; height:80px; object-fit:cover; clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px); filter:brightness(1.1); }
.pd-look-swatch { width:46px; height:46px; border-radius:50%; background:radial-gradient(circle,#fff 0 10%,var(--sw) 38%,transparent 72%); box-shadow:0 0 22px var(--sw), 0 0 44px color-mix(in srgb,var(--sw) 40%,transparent); }
.pd-look-title { display:grid; place-items:center; padding:8px 12px; border:1px solid #c9a24f; background:linear-gradient(180deg,#2b2110,#0e0b06); color:#ffe39a; font-size:11px; line-height:1.2; letter-spacing:.08em; text-transform:uppercase; text-shadow:0 0 10px #ffc24a77; clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,8px 100%,0 50%); }
.pd-look-cardstyle { width:52px; height:74px; border:2px solid #7dff4a; background:radial-gradient(circle at 25% 80%,#b6ff8a 0 2px,transparent 3px),radial-gradient(circle at 75% 20%,#b6ff8a 0 2px,transparent 3px),linear-gradient(160deg,#0e2a10,#050c06); box-shadow:0 0 14px #7dff4a88; clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px); }
.pd-look-none { width:56px; height:56px; border:1px dashed #4b7586; transform:rotate(45deg) scale(.75); }
.pd-look-name { text-align:center; font-weight:800; line-height:1.25; }
.pd-look-on { position:absolute; top:6px; right:8px; padding:1px 6px; background:#ffd46a; color:#1d1404; font-size:9px; font-style:normal; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.pd-look-empty { color:#6f8f9e; font-style:italic; }
