/* Guide intégré au panneau Profil / Stats. */
.playerGuidePane { display:flex; flex-direction:column; min-height:0; }
.playerGuideHeader { display:flex; align-items:center; justify-content:space-between; padding:2px 2px 8px; }
.playerGuideHeader small { display:block; color:#78dbff; font-size:9px; font-weight:900; letter-spacing:1.2px; }
.playerGuideHeader strong { display:block; color:#eefaff; font-size:18px; line-height:1.05; }
.infoPanelTabs { display:grid; grid-template-columns:repeat(3,1fr); gap:3px; margin:0 0 7px; padding:4px; border:1px solid rgba(255,255,255,.08); border-radius:9px; background:rgba(3,19,34,.76); }
.infoPanelTab { min-height:32px; margin:0; padding:4px 3px; border:1px solid rgba(151,205,232,.18); border-radius:7px; background:rgba(20,53,78,.62); color:#abc7d7; font-size:10px; font-weight:900; }
.infoPanelTab.is-active { border-color:rgba(112,218,255,.7); background:linear-gradient(180deg,#1e789d,#145474); color:#fff; box-shadow:0 0 10px rgba(52,190,255,.16); }
.infoPanelBody { min-height:160px; padding:0; }
.playerGuideBody { overflow:visible; }
.infoPanelContent { display:grid; gap:8px; }
.infoPanelStatus { min-height:18px; margin:4px 4px 0; color:#9bdcf8; font-size:11px; text-align:center; }
.infoPanelStatus.is-error { color:#ff9c9c; }
.infoCard { overflow:hidden; border:1px solid rgba(150,203,229,.18); border-radius:10px; background:rgba(7,31,51,.78); box-shadow:inset 0 1px rgba(255,255,255,.035); }
.infoCardHeader { display:flex; align-items:baseline; justify-content:space-between; gap:8px; padding:7px 9px; border-bottom:1px solid rgba(255,255,255,.08); background:rgba(21,64,91,.56); }
.infoCardHeader strong { color:#e8f8ff; font-size:12px; }
.infoCardHeader small { color:#82aec5; font-size:9px; text-align:right; }
.infoRuleList { margin:7px 12px 5px 27px; padding:0; color:#c8dce7; font-size:10px; line-height:1.45; }
.infoInlineNote,.infoFormula { margin:7px 9px; color:#bcd5e3; font-size:10px; line-height:1.45; }
.infoFormula { color:#dcf2fc; }
.infoLootList { display:grid; }
.infoLootRow { display:grid; grid-template-columns:35px minmax(0,1fr) auto; align-items:center; gap:7px; min-height:43px; padding:4px 8px; border-bottom:1px solid rgba(255,255,255,.06); }
.infoLootRow:last-child { border-bottom:0; }
.infoLootIcon { display:flex; align-items:center; justify-content:center; width:31px; height:31px; border-radius:7px; background:rgba(0,0,0,.24); color:#7edcff; }
.infoLootIcon img { max-width:28px; max-height:28px; object-fit:contain; }
.infoLootText { min-width:0; }
.infoLootText strong,.infoLootText small { display:block; }
.infoLootText strong { overflow:hidden; color:#effaff; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.infoLootText small { margin-top:2px; color:#82a9bd; font-size:8px; }
.infoLootChance { padding-left:5px; color:#ffd968; font-size:11px; white-space:nowrap; }
.infoStatGrid { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 12px; padding:8px 9px; font-size:10px; }
.infoStatGrid span { color:#9dbccd; }
.infoStatGrid strong { color:#f4fbff; text-align:right; }
.infoProgressTable { display:grid; }
.infoProgressTable > div { display:grid; grid-template-columns:minmax(90px,.7fr) minmax(0,1.6fr); gap:8px; padding:7px 9px; border-bottom:1px solid rgba(255,255,255,.055); font-size:10px; }
.infoProgressTable > div:last-child { border-bottom:0; }
.infoProgressTable strong { color:#eaf9ff; }
.infoProgressTable span { color:#a9c5d4; text-align:right; }

.enemyMonsterHeaderRow { display:flex; align-items:center; justify-content:center; gap:6px; }
.enemyLootControls { position:absolute; z-index:35; top:6px; right:7px; }
.enemyLootInfoButton { display:inline-flex; align-items:center; justify-content:center; width:23px; height:23px; margin:0; padding:0; border:1px solid rgba(119,211,255,.72); border-radius:999px; background:rgba(5,34,53,.9); color:#92e1ff; font-size:12px; box-shadow:0 2px 6px rgba(0,0,0,.38); }
.enemyLootInfoButton:hover,.enemyLootInfoButton:focus-visible { outline:0; color:#fff; border-color:#b9efff; }
.enemyLootBackdrop { position:fixed; inset:0; z-index:6999; display:grid; place-items:center; box-sizing:border-box; padding:14px; background:rgba(1,9,17,.28); pointer-events:auto; }
.enemyLootBackdrop[hidden] { display:none !important; }
.enemyLootPopover { position:relative; z-index:7000; width:min(330px,calc(100vw - 28px)); max-height:calc(100vh - 28px); overflow:hidden; border:1px solid rgba(149,222,255,.7); border-radius:10px; background:rgba(4,25,42,.98); box-shadow:0 14px 30px rgba(0,0,0,.72); color:#fff; text-align:left; pointer-events:auto; }
.enemyLootPopover[hidden] { display:none !important; }
.enemyLootPopoverHeader { position:sticky; top:0; z-index:2; display:flex; justify-content:space-between; align-items:center; gap:8px; padding:7px 8px; border-bottom:1px solid rgba(255,255,255,.1); background:#0e3b58; }
.enemyLootPopoverHeading { display:flex; min-width:0; flex-direction:column; gap:1px; }
.enemyLootPopoverHeader strong { font-size:11px; }
.enemyLootTtkCurrent { color:#9fe5ff; font-size:8px; font-weight:800; line-height:1.2; }
.enemyLootPopoverClose { width:27px; height:27px; margin:0; padding:0; border:0; border-radius:7px; background:rgba(0,0,0,.22); color:#fff; }
.enemyLootPopoverBody { max-height:min(220px,38vh); padding:6px; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:rgba(126,220,255,.65) rgba(0,0,0,.16); }
.enemyLootPopoverBody::-webkit-scrollbar { width:5px; }
.enemyLootPopoverBody::-webkit-scrollbar-track { background:rgba(0,0,0,.16); border-radius:999px; }
.enemyLootPopoverBody::-webkit-scrollbar-thumb { border-radius:999px; background:rgba(126,220,255,.65); }
.enemyLootPopoverBody::-webkit-scrollbar-thumb:hover { background:rgba(166,235,255,.85); }
.enemyBossReference { display:flex; align-items:center; gap:8px; margin:0 0 6px; padding:6px 7px; border:1px solid rgba(149,222,255,.2); border-radius:8px; background:rgba(10,53,76,.42); }
.enemyBossReferencePortrait { flex:0 0 38px; width:38px; height:38px; border:1px solid rgba(185,239,255,.55); border-radius:7px; background:rgba(0,0,0,.22); object-fit:contain; }
.enemyBossReferencePortrait.is-missing { visibility:hidden; }
.enemyBossReferenceText { display:flex; min-width:0; flex-direction:column; gap:1px; line-height:1.15; }
.enemyBossReferenceText > small:first-child { color:#82d8f7; font-size:7px; font-weight:900; letter-spacing:.04em; }
.enemyBossReferenceText > strong { overflow:hidden; color:#fff; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.enemyBossReferenceText > small:last-child { color:#8fb6c8; font-size:8px; }
.enemyLootGuaranteed { margin:0 0 5px; padding:6px; border:1px solid rgba(255,214,91,.25); border-radius:7px; background:rgba(126,89,11,.13); }
.enemyLootGuaranteed > strong { display:block; margin-bottom:4px; color:#ffe58c; font-size:9px; }
.enemyLootGuaranteedItem { display:flex; align-items:center; gap:6px; min-height:27px; color:#f9f1d0; font-size:9px; }
.enemyLootGuaranteedItem img { width:24px; height:24px; object-fit:contain; }
.enemyLootGuaranteedChance { margin-left:auto; }
.enemyLootRows .infoLootRow { grid-template-columns:31px minmax(0,1fr) auto; min-height:38px; padding:3px 5px; }
.enemyLootRolls { margin:6px 3px 2px; color:#7faabe; font-size:8px; line-height:1.35; }
.enemyLootTtkNote { color:#8fc9df; }

@media (max-width:575px) {
    .infoPanelTabs { gap:2px; padding:3px; }
    .infoPanelTab { min-height:30px; font-size:9px; }
    .enemyLootControls { top:5px; right:6px; }
    .enemyLootBackdrop { padding:10px; }
    .enemyLootPopoverBody { max-height:min(205px,35vh); }
}



/* Guide progression V1 — exemple important sans ajouter une nouvelle carte imbriquée. */
.infoInlineNote--accent {
    padding:7px 9px;
    border-left:3px solid rgba(255,196,79,.82);
    border-radius:0 7px 7px 0;
    background:rgba(255,171,43,.07);
    color:#e8d6ad;
}

/* Guide progression V3 — plafond de collection visuel. */
.infoCohortExample { margin:0 9px 8px; overflow:hidden; border:1px solid rgba(143,216,243,.18); border-radius:9px; background:rgba(3,20,35,.46); }
.infoCohortExampleTitle { margin:0; padding:7px 8px 5px; color:#8fd8f3; font-size:9px; font-weight:900; text-align:center; }
.infoCohortPortraits { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:4px; padding:4px 7px 7px; }
.infoCohortPortrait { position:relative; display:flex; min-width:0; flex-direction:column; align-items:center; gap:2px; padding:3px 2px 5px; border:1px solid rgba(159,205,229,.13); border-radius:8px; background:rgba(11,37,58,.66); }
.infoCohortPortrait.is-anchor { border-color:rgba(255,213,91,.9); background:rgba(84,62,13,.3); box-shadow:0 0 8px rgba(255,190,55,.14); }
.infoCohortPortraitImage { display:block; width:min(45px,100%); aspect-ratio:1; object-fit:contain; }
.infoCohortRank { display:inline-flex; align-items:center; justify-content:center; min-width:28px; height:16px; padding:0 4px; border-radius:999px; background:rgba(2,13,24,.9); color:#f7fbff; font-size:9px; line-height:1; }
.infoCohortAnchor { position:absolute; top:-5px; right:-3px; padding:2px 4px; border:1px solid rgba(255,230,149,.7); border-radius:999px; background:#e8b83d; color:#382500; font-size:6px; font-weight:1000; letter-spacing:.04em; }
.infoCohortAnchorNote { margin:0; padding:6px 8px; border-top:1px solid rgba(255,255,255,.055); border-bottom:1px solid rgba(255,255,255,.055); color:#f3dda0; font-size:9px; font-weight:800; text-align:center; }
.infoCohortLimits span { color:#dff4ff; font-weight:800; }

@media (max-width:575px) {
    .infoCohortPortraits { gap:3px; padding-inline:5px; }
    .infoCohortPortrait { padding-inline:1px; }
    .infoCohortPortraitImage { width:min(40px,100%); }
    .infoCohortRank { min-width:25px; padding-inline:3px; font-size:8px; }
}
