/* Prestige V1 — modal compact, responsive, sans état métier autoritaire côté client. */
.prestigeSideButton {
    position:relative; display:grid; place-items:center; padding:0; border:1px solid rgba(180,116,255,.62);
    border-right:0; border-radius:9px 0 0 9px; overflow:visible; cursor:pointer;
    background:linear-gradient(145deg,rgba(56,25,83,.96),rgba(18,17,34,.98));
    box-shadow:0 5px 16px rgba(14,5,24,.45), inset 0 0 14px rgba(148,71,255,.18);
    transition:transform .14s ease, filter .14s ease;
}
.prestigeSideButton:hover,.prestigeSideButton:focus-visible { transform:translateX(-2px); filter:brightness(1.12); outline:none; }
.prestigeSideButton:active { transform:translateX(-1px) scale(.96); }
.prestigeSideButton > img { width:40px; height:40px; object-fit:contain; filter:drop-shadow(0 0 8px rgba(183,103,255,.55)); pointer-events:none; transition:transform .14s ease,width .14s ease,height .14s ease; }
.prestigeSideButton.has-soul-rate > img { width:35px; height:35px; transform:translateY(-1px); }
.prestigeSoulRate { position:absolute; left:4px; right:4px; bottom:-8px; min-height:14px; display:grid; place-items:center; padding:2px 3px; border-radius:6px; border:1px solid rgba(214,177,255,.5); border-right:0; background:rgba(26,8,43,.9); color:#f1dbff; font:900 10px/1 Poppins,sans-serif; letter-spacing:-.02em; white-space:nowrap; text-shadow:0 1px 2px #000; box-shadow:0 1px 5px rgba(0,0,0,.45); pointer-events:none; }
.prestigeSoulRate[hidden] { display:none; }
.prestigeSideBadge { position:absolute; top:-5px; left:-7px; min-width:21px; height:21px; padding:0 5px; display:grid; place-items:center; border-radius:12px; border:1px solid rgba(255,255,255,.8); background:#6f2fb2; color:#fff; font:800 10px/1 Poppins,sans-serif; box-shadow:0 2px 7px rgba(0,0,0,.55); }

.prestigePanel { position:fixed; inset:0; z-index:1100; visibility:hidden; opacity:0; pointer-events:none; transition:opacity .15s ease,visibility .15s ease; }
.prestigePanel.is-open { visibility:visible; opacity:1; pointer-events:auto; }
.prestigePanelBackdrop { position:absolute; inset:0; width:100%; height:100%; border:0; background:rgba(3,7,13,.82); backdrop-filter:blur(4px); }
.prestigePanelDialog { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:min(780px,calc(100vw - 24px)); max-height:min(92vh,900px); display:flex; flex-direction:column; overflow:hidden; border:1px solid rgba(174,112,255,.48); border-radius:16px; background:linear-gradient(180deg,#111827 0%,#0a1020 52%,#090c17 100%); color:#f3f5ff; box-shadow:0 28px 75px rgba(0,0,0,.72),0 0 45px rgba(122,45,201,.14); }
.prestigePanelHeader { flex:0 0 auto; min-height:62px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; border-bottom:1px solid rgba(255,255,255,.09); background:linear-gradient(90deg,rgba(111,47,178,.26),rgba(15,20,36,.12)); }
.prestigePanelTitle { display:flex; align-items:center; gap:10px; }
.prestigePanelTitle img { width:42px; height:42px; object-fit:contain; filter:drop-shadow(0 0 10px rgba(183,103,255,.55)); }
.prestigePanelTitle div { display:flex; flex-direction:column; }
.prestigePanelTitle small { color:#bba7d6; font:700 10px/1 Poppins,sans-serif; letter-spacing:.13em; }
.prestigePanelTitle strong { margin-top:5px; font:900 20px/1 Poppins,sans-serif; letter-spacing:.04em; }
.prestigePanelClose { width:38px; height:38px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.13); border-radius:10px; background:rgba(255,255,255,.05); color:#fff; cursor:pointer; }
.prestigePanelBody { flex:1 1 auto; min-height:0; overflow:auto; padding:12px 14px 16px; }

.prestigeSummary { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:7px; margin-bottom:10px; }
.prestigeSummaryCard { grid-column:span 2; min-width:0; padding:9px 10px; border:1px solid rgba(255,255,255,.08); border-radius:10px; background:rgba(255,255,255,.035); }
.prestigeSummaryCard:nth-child(-n+2) { grid-column:span 3; }
.prestigeSummaryCard span { display:block; color:#9aa6bd; font:600 11px/1.25 Poppins,sans-serif; text-transform:uppercase; letter-spacing:.05em; }
.prestigeSummaryCard strong { display:block; margin-top:6px; font:800 17px/1 Poppins,sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.prestigeSummaryCard--record { position:relative; padding-right:58px; }
#prestigeRecordValue { display:block; width:auto; }
#prestigeRecordValue[data-difficulty="hard"] { color:#c889ff; }
#prestigeRecordValue[data-difficulty="nightmare"] { color:#ff6f7f; }
.prestigeRecordDifficultyIcon { position:absolute; top:6px; right:9px; height:calc(100% - 12px); width:auto; max-width:44px; object-fit:contain; pointer-events:none; filter:drop-shadow(0 1px 3px rgba(0,0,0,.45)); }
.prestigeSummaryCard--souls strong { color:#c889ff; }
.prestigeSummaryCard--total strong { color:#d8a5ff; }
.prestigeSummaryCard--pending strong { color:#efc76f; }

.prestigeSoulHelp { display:grid; grid-template-columns:auto 1fr; gap:10px; align-items:start; margin:0 0 12px; padding:10px 11px; border:1px solid rgba(163,103,223,.25); border-radius:10px; background:rgba(102,45,156,.09); }
.prestigeSoulHelp i { margin-top:2px; color:#b579ef; }
.prestigeSoulHelp strong { display:block; margin-bottom:3px; font:800 11px/1.2 Poppins,sans-serif; color:#d6b0ff; }
.prestigeSoulHelp p { margin:0; color:#b9c0d0; font:500 10.5px/1.5 Poppins,sans-serif; }

.prestigeSectionTitle { display:flex; align-items:end; justify-content:space-between; gap:12px; margin:11px 0 7px; }
.prestigeSectionTitle strong { font:800 12px/1 Poppins,sans-serif; letter-spacing:.05em; }
.prestigeSectionTitle small { color:#7f8ba1; font:500 9px/1.2 Poppins,sans-serif; }
.prestigeUpgradeGrid { display:grid; gap:7px; }
.prestigeUpgradeCard { display:grid; grid-template-columns:58px minmax(0,1fr) 112px; gap:10px; align-items:center; padding:8px 9px; border:1px solid rgba(255,255,255,.08); border-radius:11px; background:rgba(255,255,255,.035); }
.prestigeUpgradeVisual { position:relative; width:54px; height:54px; display:grid; place-items:center; }
.prestigeUpgradeVisual img { width:46px; height:46px; object-fit:contain; filter:drop-shadow(0 2px 5px rgba(0,0,0,.5)); }
.prestigeUpgradeLevel { position:absolute; right:-2px; bottom:-1px; padding:3px 5px; border-radius:7px; background:rgba(0,0,0,.88); border:1px solid rgba(255,255,255,.23); color:#fff; font:800 9px/1 Poppins,sans-serif; white-space:nowrap; }
.prestigeUpgradeCopy { min-width:0; }
.prestigeUpgradeCopy > strong { display:block; font:800 12px/1.2 Poppins,sans-serif; }
.prestigeUpgradeCopy > small { display:block; margin-top:3px; color:#8f9aaf; font:500 9px/1.35 Poppins,sans-serif; }
.prestigeUpgradeValues { display:flex; flex-wrap:wrap; gap:5px 12px; margin-top:5px; color:#aab4c7; font:600 9px/1.2 Poppins,sans-serif; }
.prestigeUpgradeValues b { color:#e5c7ff; font-weight:800; }
.prestigeUpgradeButton { min-height:43px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; border:1px solid rgba(186,117,255,.42); border-radius:9px; background:linear-gradient(180deg,#6f2fb2,#4a1f79); color:#fff; cursor:pointer; }
.prestigeUpgradeButton span { font:800 9px/1 Poppins,sans-serif; }
.prestigeUpgradeButton strong { display:flex; align-items:center; gap:4px; font:900 13px/1 Poppins,sans-serif; }
.prestigeUpgradeButton strong img { width:18px; height:18px; object-fit:contain; }
.prestigeUpgradeButton:disabled { opacity:.38; filter:grayscale(.4); cursor:not-allowed; }

.prestigeConsequences { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.prestigeConsequenceColumn { padding:9px 10px; border-radius:10px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.025); }
.prestigeConsequenceColumn h3 { margin:0 0 7px; font:800 10px/1.2 Poppins,sans-serif; text-transform:uppercase; letter-spacing:.04em; }
.prestigeConsequenceColumn ul { display:grid; gap:4px; margin:0; padding:0; list-style:none; }
.prestigeConsequenceColumn li { position:relative; padding-left:16px; color:#b8c0cf; font:500 9.5px/1.35 Poppins,sans-serif; }
.prestigeConsequenceColumn li::before { position:absolute; left:0; top:0; font-weight:900; }
.prestigeConsequenceColumn--keep { border-color:rgba(66,211,139,.18); }
.prestigeConsequenceColumn--keep h3 { color:#5ae0a0; }
.prestigeConsequenceColumn--keep li::before { content:'✓'; color:#50d996; }
.prestigeConsequenceColumn--reset { border-color:rgba(231,111,101,.18); }
.prestigeConsequenceColumn--reset h3 { color:#f2897e; }
.prestigeConsequenceColumn--reset li::before { content:'↻'; color:#ef7a70; }
.prestigeConsequenceColumn--reset li.is-positive { color:#94deb7; }
.prestigeConsequenceColumn--reset li.is-positive::before { content:'★'; color:#e2c568; }

.prestigePerformBox { margin-top:10px; padding:10px; border:1px solid rgba(173,105,237,.28); border-radius:12px; background:linear-gradient(100deg,rgba(79,31,116,.16),rgba(20,24,39,.22)); }
.prestigePerformPreview { display:flex; align-items:center; justify-content:center; gap:6px; margin-bottom:7px; color:#aeb7ca; font:600 10px/1 Poppins,sans-serif; }
.prestigePerformPreview strong { color:#d6adff; font-size:14px; }
.prestigePerformPreview img { width:22px; height:22px; object-fit:contain; }
.prestigePerformButton { width:100%; min-height:47px; border:1px solid rgba(213,164,255,.68); border-radius:10px; background:linear-gradient(180deg,#7834bd,#51227e); color:#fff; font:900 14px/1 Poppins,sans-serif; letter-spacing:.09em; cursor:pointer; box-shadow:0 7px 18px rgba(65,18,105,.25); }
.prestigePerformButton:disabled { opacity:.4; filter:grayscale(.45); cursor:not-allowed; }
.prestigePerformNote { margin:6px 0 0; text-align:center; color:#7e899d; font:500 9px/1.35 Poppins,sans-serif; }
.prestigeStatus { min-height:16px; margin:6px 0 0; text-align:center; color:#83dcae; font:600 10px/1.3 Poppins,sans-serif; }
.prestigeStatus.is-error { color:#ff8f86; }
.prestigePanel.is-busy .prestigePanelBody { cursor:progress; }
body.prestige-panel-open { overflow:hidden; }

@media (max-width:620px) {
    .prestigePanelDialog { width:calc(100vw - 12px); max-height:calc(100dvh - 12px); border-radius:13px; }
    .prestigePanelHeader { min-height:56px; padding:8px 10px; }
    .prestigePanelTitle img { width:36px; height:36px; }
    .prestigePanelTitle strong { font-size:17px; }
    .prestigePanelBody { padding:9px 10px 12px; }
    .prestigeSummary { gap:5px; }
    .prestigeSummaryCard { padding:8px 9px; }
    .prestigeSummaryCard strong { font-size:15px; }
    .prestigeUpgradeCard { grid-template-columns:49px minmax(0,1fr) 88px; gap:7px; padding:7px; }
    .prestigeUpgradeVisual { width:46px; height:46px; }
    .prestigeUpgradeVisual img { width:40px; height:40px; }
    .prestigeUpgradeButton { min-height:41px; }
    .prestigeUpgradeButton span { font-size:8px; }
    .prestigeUpgradeButton strong { font-size:12px; }
    .prestigeConsequences { grid-template-columns:1fr 1fr; gap:5px; }
    .prestigeConsequenceColumn { padding:7px; }
    .prestigeConsequenceColumn li { padding-left:14px; font-size:8.7px; }
}

@media (max-width:390px) {
    .prestigeSoulHelp { padding:8px; }
    .prestigeSoulHelp p { font-size:9.5px; }
    .prestigeUpgradeCard { grid-template-columns:44px minmax(0,1fr) 78px; }
    .prestigeUpgradeVisual { width:42px; height:42px; }
    .prestigeUpgradeVisual img { width:37px; height:37px; }
    .prestigeUpgradeCopy > small { display:none; }
    .prestigeUpgradeValues { gap:3px 7px; font-size:8px; }
    .prestigeUpgradeButton strong img { width:16px; height:16px; }
}

/* Scrollbar Prestige — discrète et cohérente avec le thème violet. */
.prestigePanelBody {
    scrollbar-width:thin;
    scrollbar-color:rgba(166,103,224,.72) rgba(255,255,255,.035);
    scrollbar-gutter:stable;
}
.prestigePanelBody::-webkit-scrollbar { width:8px; }
.prestigePanelBody::-webkit-scrollbar-track {
    background:rgba(255,255,255,.025);
    border-left:1px solid rgba(255,255,255,.035);
}
.prestigePanelBody::-webkit-scrollbar-thumb {
    border:2px solid transparent;
    border-radius:999px;
    background:linear-gradient(180deg,rgba(190,125,255,.88),rgba(108,49,166,.88));
    background-clip:padding-box;
}
.prestigePanelBody::-webkit-scrollbar-thumb:hover {
    background:linear-gradient(180deg,rgba(207,154,255,.98),rgba(130,61,196,.98));
    background-clip:padding-box;
}
.prestigePanelBody::-webkit-scrollbar-corner { background:transparent; }

/* Prestige V1.2 — lisibilité, avertissement et centrage de la zone scrollable. */
.prestigePanelBody {
    scrollbar-gutter: stable both-edges;
}

.prestigeSummaryCard span { font-size:11px; }
.prestigeSummaryCard strong { font-size:18px; }
.prestigeSoulHelp strong { font-size:12px; }
.prestigeSoulHelp p { font-size:11.5px; line-height:1.55; }
.prestigeSectionTitle strong { font-size:13px; }
.prestigeSectionTitle small { font-size:10px; }
.prestigeUpgradeCopy > strong { font-size:13px; }
.prestigeUpgradeCopy > small { font-size:10px; }
.prestigeUpgradeValues { font-size:10px; }
.prestigeUpgradeButton span { font-size:9.5px; }
.prestigeConsequenceColumn h3 { font-size:11px; }
.prestigeConsequenceColumn li { font-size:10.5px; line-height:1.42; }
.prestigePerformPreview { font-size:11px; }
.prestigePerformPreview strong { font-size:16px; }

.prestigePerformWarning {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:6px 8px;
    margin-top:9px;
    padding:8px 10px;
    border:1px solid rgba(244,177,70,.34);
    border-radius:9px;
    background:linear-gradient(180deg,rgba(120,72,18,.18),rgba(72,37,11,.11));
    color:#d8c9ad;
    font:600 10.5px/1.4 Poppins,sans-serif;
    text-align:center;
}
.prestigePerformWarningBadge {
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:4px 7px;
    border:1px solid rgba(255,198,93,.58);
    border-radius:999px;
    background:rgba(187,113,22,.25);
    color:#ffd682;
    font:900 9px/1 Poppins,sans-serif;
    letter-spacing:.05em;
}
.prestigePerformWarning strong { color:#ffe2aa; font-weight:900; }

@media (max-width:620px) {
    .prestigeSummaryCard span { font-size:10.5px; line-height:1.25; overflow-wrap:anywhere; }
    .prestigeSummaryCard strong { font-size:17px; }
    .prestigeSoulHelp strong { font-size:11.5px; }
    .prestigeSoulHelp p { font-size:10.8px; }
    .prestigeSectionTitle strong { font-size:12.5px; }
    .prestigeUpgradeCopy > strong { font-size:12.5px; }
    .prestigeUpgradeCopy > small { font-size:9.5px; }
    .prestigeUpgradeValues { font-size:9.5px; }
    .prestigeConsequenceColumn h3 { font-size:10.5px; }
    .prestigeConsequenceColumn li { font-size:9.6px; }
    .prestigePerformWarning { font-size:10px; }
}

@media (max-width:390px) {
    .prestigeSoulHelp p { font-size:10px; }
    .prestigeConsequenceColumn li { font-size:9.1px; }
}

/* Prestige V1.3 — hiérarchie UX + rendement de run. */
.prestigeConcept {
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:9px;
    align-items:center;
    margin:0 0 9px;
    padding:9px 10px;
    border:1px solid rgba(183,116,255,.24);
    border-radius:11px;
    background:linear-gradient(100deg,rgba(102,45,156,.13),rgba(255,255,255,.02));
}
.prestigeConcept > i {
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:rgba(151,74,222,.16);
    color:#c891ff;
    font-size:13px;
}
.prestigeConcept p { margin:0; color:#b9c2d1; font:500 10.3px/1.43 Poppins,sans-serif; }
.prestigeConcept strong { color:#f0e4ff; font-weight:800; }

.prestigeEfficiency {
    margin:0 0 9px;
    padding:9px;
    border:1px solid rgba(239,199,111,.17);
    border-radius:11px;
    background:linear-gradient(100deg,rgba(93,60,20,.09),rgba(93,42,135,.08));
}
.prestigeEfficiencyHeading {
    display:flex;
    align-items:baseline;
    justify-content:space-between;
    gap:10px;
    margin-bottom:7px;
}
.prestigeEfficiencyHeading strong { color:#efe5ff; font:800 10.5px/1 Poppins,sans-serif; letter-spacing:.05em; }
.prestigeEfficiencyHeading small { color:#7f8ba1; font:500 8.5px/1.25 Poppins,sans-serif; text-align:right; }
.prestigeEfficiencyGrid { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.prestigeEfficiencyCard {
    min-width:0;
    padding:8px 9px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:9px;
    background:rgba(255,255,255,.025);
}
.prestigeEfficiencyCard > span { display:block; color:#8d99ad; font:700 8.5px/1.15 Poppins,sans-serif; text-transform:uppercase; letter-spacing:.03em; }
.prestigeEfficiencyCard > strong { display:block; margin-top:4px; color:#f0c977; font:900 16px/1 Poppins,sans-serif; }
.prestigeEfficiencyCard > small { display:block; margin-top:4px; color:#9ba7b9; font:600 8.5px/1.2 Poppins,sans-serif; }
.prestigeEfficiencyCard--best > strong { color:#d2a1ff; }

.prestigeDetails {
    margin:0 0 9px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:10px;
    background:rgba(255,255,255,.018);
    overflow:hidden;
}
.prestigeDetails > summary {
    min-height:36px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:8px 10px;
    color:#c5ccda;
    font:700 9.5px/1.25 Poppins,sans-serif;
    cursor:pointer;
    list-style:none;
    user-select:none;
}
.prestigeDetails > summary::-webkit-details-marker { display:none; }
.prestigeDetails > summary > span { display:flex; align-items:center; gap:7px; min-width:0; }
.prestigeDetails > summary > span i { color:#b579ef; }
.prestigeDetails > summary > i { color:#7e899d; font-size:9px; transition:transform .15s ease; }
.prestigeDetails[open] > summary { border-bottom:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.02); }
.prestigeDetails[open] > summary > i { transform:rotate(180deg); }

.prestigeSoulDetails .prestigeSoulHelp {
    display:block;
    margin:0;
    padding:9px 10px 10px;
    border:0;
    border-radius:0;
    background:transparent;
}
.prestigeSoulDetails .prestigeSoulHelp strong { font-size:9px; }
.prestigeSoulDetails .prestigeSoulHelp p { font-size:9.5px; line-height:1.45; }

.prestigeConsequencesBlock {
    margin:10px 0 9px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:10px;
    background:rgba(255,255,255,.018);
    overflow:hidden;
}
.prestigeConsequencesHeading {
    min-height:36px;
    display:flex;
    align-items:center;
    gap:7px;
    padding:8px 10px;
    border-bottom:1px solid rgba(255,255,255,.06);
    background:rgba(255,255,255,.02);
    color:#c5ccda;
    font:700 9.5px/1.25 Poppins,sans-serif;
}
.prestigeConsequencesHeading i { color:#b579ef; }
.prestigeConsequencesBlock .prestigeConsequences { padding:8px; }

@media (max-width:620px) {
    .prestigeConcept { grid-template-columns:30px minmax(0,1fr); gap:7px; padding:8px; }
    .prestigeConcept > i { width:27px; height:27px; font-size:12px; }
    .prestigeConcept p { font-size:9.6px; }
    .prestigeEfficiency { padding:8px; }
    .prestigeEfficiencyHeading { display:block; }
    .prestigeEfficiencyHeading small { display:block; margin-top:4px; text-align:left; }
    .prestigeEfficiencyCard { padding:7px 8px; }
    .prestigeEfficiencyCard > strong { font-size:14px; }
    .prestigeDetails > summary { min-height:34px; padding:7px 8px; font-size:9px; }
    .prestigeConsequencesHeading { min-height:34px; padding:7px 8px; font-size:9px; }
}

@media (max-width:390px) {
    .prestigeConcept p { font-size:9.2px; }
    .prestigeEfficiencyGrid { gap:5px; }
    .prestigeEfficiencyCard > span { font-size:7.8px; }
    .prestigeEfficiencyCard > strong { font-size:13px; }
    .prestigeEfficiencyCard > small { font-size:7.8px; }
}

/* Prestige V1.4 — bilan de run post-Prestige, volontairement léger. */
.prestigeRunSummaryPanel {
    position:fixed; inset:0; z-index:1300; display:grid; place-items:center; padding:14px;
    pointer-events:none; visibility:hidden;
}
.prestigeRunSummaryPanel.is-open { pointer-events:auto; visibility:visible; }
.prestigeRunSummaryBackdrop {
    position:absolute; inset:0; border:0; background:rgba(3,7,15,.76); opacity:0;
    transition:opacity .15s ease;
}
.prestigeRunSummaryPanel.is-open .prestigeRunSummaryBackdrop { opacity:1; }
.prestigeRunSummaryDialog {
    position:relative; width:min(92vw,430px); overflow:hidden;
    border:1px solid rgba(188,120,255,.52); border-radius:15px;
    background:linear-gradient(180deg,#142335,#0b1624 72%);
    box-shadow:0 20px 60px rgba(0,0,0,.58), inset 0 0 28px rgba(137,66,214,.07);
    transform:translateY(8px) scale(.985); opacity:0;
    transition:transform .15s ease,opacity .15s ease;
}
.prestigeRunSummaryPanel.is-open .prestigeRunSummaryDialog { transform:none; opacity:1; }
.prestigeRunSummaryHeader {
    min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:12px;
    padding:10px 12px; border-bottom:1px solid rgba(255,255,255,.08);
    background:linear-gradient(90deg,rgba(108,45,163,.16),rgba(255,255,255,.015));
}
.prestigeRunSummaryHeader div { display:flex; flex-direction:column; gap:3px; }
.prestigeRunSummaryHeader small { color:#bc8ce8; font:800 8px/1 Poppins,sans-serif; letter-spacing:.08em; }
.prestigeRunSummaryHeader strong { color:#f3eaff; font:900 18px/1 Poppins,sans-serif; }
.prestigeRunSummaryClose {
    width:38px; height:38px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.18);
    border-radius:10px; background:rgba(255,255,255,.055); color:#fff; cursor:pointer;
}
.prestigeRunSummaryBody { padding:13px; }
.prestigeRunSummaryStats { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-bottom:14px; }
.prestigeRunSummaryStats > div {
    min-width:0; padding:9px 10px; border:1px solid rgba(255,255,255,.075); border-radius:10px;
    background:rgba(255,255,255,.028);
}
.prestigeRunSummaryStats span { display:block; color:#8795a9; font:700 8.5px/1.2 Poppins,sans-serif; text-transform:uppercase; }
.prestigeRunSummaryStats strong { display:flex; align-items:center; gap:5px; margin-top:5px; color:#f3e9ff; font:900 16px/1 Poppins,sans-serif; }
.prestigeRunSummaryStats strong > span { color:inherit; font:inherit; line-height:inherit; text-transform:none; }
.prestigeRunSummaryStats > div:nth-child(2) { position:relative; padding-right:64px; overflow:hidden; }
.prestigeRunSummaryStats > div:nth-child(2) strong { min-height:22px; padding-right:0; }
.prestigeRunSummaryStats > div:nth-child(2) strong img {
    position:absolute; top:7px; right:8px; bottom:7px; width:auto; height:calc(100% - 14px);
    max-width:52px; object-fit:contain; pointer-events:none;
    filter:drop-shadow(0 3px 6px rgba(101,29,177,.36));
}
.prestigeRunSummaryItems {
    display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap:11px 13px;
    min-height:0; margin:2px 0 15px;
}
.prestigeRunSummaryItem { width:58px; display:flex; flex-direction:column; align-items:center; gap:4px; min-width:0; }
.prestigeRunSummaryItemVisual { width:54px; height:54px; display:grid; place-items:center; }
.prestigeRunSummaryItemVisual img { max-width:54px; max-height:54px; object-fit:contain; filter:drop-shadow(0 4px 7px rgba(0,0,0,.3)); }
.prestigeRunSummaryItemVisual i { color:#8ea2ba; font-size:26px; }
.prestigeRunSummaryItem > strong { color:#edf5ff; font:900 11px/1 Poppins,sans-serif; white-space:nowrap; }
.prestigeRunSummaryEmpty { margin:4px 0 15px; color:#7f8ca0; text-align:center; font:600 9px/1.4 Poppins,sans-serif; }
.prestigeRunSummaryDone {
    width:100%; min-height:44px; border:1px solid rgba(213,164,255,.62); border-radius:10px;
    background:linear-gradient(180deg,#7834bd,#51227e); color:#fff; font:900 12px/1 Poppins,sans-serif;
    letter-spacing:.07em; cursor:pointer;
}
body.prestige-run-summary-open { overflow:hidden; }

@media (max-width:430px) {
    .prestigeRunSummaryPanel { padding:8px; }
    .prestigeRunSummaryDialog { width:calc(100vw - 16px); }
    .prestigeRunSummaryBody { padding:11px; }
    .prestigeRunSummaryItem { width:52px; }
    .prestigeRunSummaryItemVisual { width:49px; height:49px; }
    .prestigeRunSummaryItemVisual img { max-width:49px; max-height:49px; }
}

@media (prefers-reduced-motion:reduce) {
    .prestigeRunSummaryBackdrop,.prestigeRunSummaryDialog { transition:none; }
}
