/* Compte joueur du site : pastille d'en-tête, connexion par code (/account), profil */
.nav .acct{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 6px;border:1px solid var(--line2);border-radius:999px;color:#b9c0cc;text-transform:none;letter-spacing:.03em}
.nav .acct:hover,.nav .acct.on{border-color:var(--gold);color:var(--bright)}
.nav .acct[aria-current]{box-shadow:none}
.acct-ico{width:22px;height:22px;border-radius:50%;background:var(--line2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239aa3b2' stroke-width='2'%3E%3Ccircle cx='12' cy='9' r='3.6'/%3E%3Cpath d='M5 20c.8-3.6 3.6-5.4 7-5.4s6.2 1.8 7 5.4'/%3E%3C/svg%3E") center/16px no-repeat}
.acct-face{width:24px;height:24px;border-radius:5px;image-rendering:pixelated}
.acct-face.noface,.pf-face.noface{display:inline-grid;place-items:center;background:#1a2230;color:var(--gold)}
.acct-face.noface svg{width:16px;height:16px}
.nav .acct.in .acct-name{max-width:11em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.acct-page{padding-top:64px;padding-bottom:96px}
.acct-signin h1{font-size:clamp(36px,5vw,54px);text-transform:uppercase;margin:8px 0 14px}
.acct-signin .lead{margin-bottom:28px}
.acct-warn{padding:12px 16px;border:1px solid #6a4a22;border-radius:6px;background:#1b150c;color:#e8c58f}
.acct-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.acct-steps li{display:flex;gap:18px;padding:22px 24px;background:var(--surface);border:1px solid var(--line);border-radius:6px}
.acct-steps .n{flex:none;width:34px;height:34px;display:grid;place-items:center;font:700 18px var(--head);color:#16120a;background:var(--gold);border-radius:3px}
.acct-steps li > div{flex:1;min-width:0}
.acct-steps h3{font-size:22px;text-transform:uppercase;letter-spacing:.05em}
.acct-steps p{margin:4px 0 0;color:var(--muted)}
.acct-code{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:14px}
.acct-big{font:700 clamp(30px,5vw,40px)/1 var(--head);letter-spacing:.14em;color:var(--bright);background:#0e1218;border:1px dashed var(--edge);border-radius:6px;padding:12px 18px;cursor:pointer}
.acct-big:hover{border-color:var(--gold)}
.acct-big.copied{border-color:var(--live);color:var(--live)}
.acct-left,.acct-loading{color:var(--muted);font-size:14px}
.acct-cmd kbd,.acct-alt kbd,.pf-danger kbd,.acct-warn kbd{display:inline-block;padding:2px 8px;border:1px solid var(--edge);border-bottom-width:2px;border-radius:4px;font:600 14px/1.5 Inter,system-ui,sans-serif;color:var(--bright);background:#171c26}
.acct-cmd kbd{font-size:17px;padding:4px 12px}
.acct-alt{margin-top:22px;color:var(--muted)}
.acct-signin.done .acct-steps li:last-child{border-color:var(--live)}
.acct-signin.done #acct-wait{color:var(--live)}

/* ── Profil ── */
.pf{--el:var(--gold)}
.pf-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"face id stats" "face id actions";align-items:center;gap:14px 28px;padding:32px 34px;border:1px solid var(--line);border-radius:8px;
  background:radial-gradient(ellipse 60% 120% at 0% 0%,color-mix(in srgb,var(--el) 22%,transparent),transparent 70%),linear-gradient(180deg,#121722,#0d1118)}
.pf-hero::before{content:"";position:absolute;left:62%;bottom:-180px;width:300px;height:300px;transform:rotate(45deg);border:1px solid color-mix(in srgb,var(--el) 22%,transparent);pointer-events:none;z-index:0}
.pf-hero > *{position:relative;z-index:1}
.pf-hero::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--el)}
.pf-face{grid-area:face;width:104px;height:104px;border-radius:10px;image-rendering:pixelated;border:2px solid color-mix(in srgb,var(--el) 60%,transparent);box-shadow:0 0 32px color-mix(in srgb,var(--el) 25%,transparent)}
.pf-face.noface svg{width:50px;height:50px}
.pf-id{grid-area:id;min-width:0}
.pf-id h1{font-size:clamp(40px,5.6vw,64px);text-transform:uppercase;margin:2px 0 6px;overflow-wrap:anywhere;line-height:.95}
.pf-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 10px}
.pf-class{font:700 20px var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--el)}
.pf-chip{display:inline-flex;align-items:center;gap:7px;padding:3px 10px 3px 8px;border-radius:999px;background:color-mix(in srgb,var(--el) 14%,transparent);color:var(--el);font:600 13px var(--head);letter-spacing:.08em;text-transform:uppercase}
.pf-chip i{width:8px;height:8px;transform:rotate(45deg);background:var(--el)}
.pf-status{display:flex;align-items:center;gap:9px;margin:0;color:var(--muted);font-size:14px}
.pf-status .dot{width:9px;height:9px;border-radius:50%;background:#5b6372}
.pf-status.on .dot{background:var(--live);box-shadow:0 0 8px rgba(74,217,38,.55)}
.pf-stats{grid-area:stats;display:flex;gap:10px;margin:0}
.pf-stats div{min-width:104px;padding:12px 16px;border-radius:6px;background:rgba(8,11,16,.55);border:1px solid var(--line2);text-align:right}
.pf-stats dd{margin:0;font:700 30px/1 var(--head);color:var(--bright)}
.pf-stats dd span{font-size:16px;color:var(--dim)}
.pf-stats dt{margin-top:4px;font:600 11px var(--head);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.pf-actions{grid-area:actions;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.pf-wait{padding:40px 0;color:var(--muted);text-align:center}

.pf-sec{margin-top:40px}
.pf-sh{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.pf-sh h2{font-size:26px;text-transform:uppercase;letter-spacing:.08em;display:flex;align-items:center;gap:12px}
.pf-sh h2::before{content:"";width:10px;height:10px;transform:rotate(45deg);background:var(--gold)}
.pf-sh span{font-size:13px;color:var(--dim)}
.pf-slot{display:flex;align-items:center;gap:7px;font:600 11px var(--head);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.empty{color:var(--muted)}

/* Armes et armure */
.pf-weapons,.pf-armor,.pf-abil,.pf-relics{list-style:none;margin:0;padding:0}
.pf-weapons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pf-armor{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}
.pf-tile{position:relative;display:flex;flex-direction:column;gap:6px;padding:18px 18px 16px;border:1px solid var(--line2);border-radius:6px;background:linear-gradient(180deg,color-mix(in srgb,var(--c,var(--line2)) 10%,#10141c),#0e1218 70%);overflow:hidden}
.pf-tile::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--c,var(--line2))}
.pf-tile strong{font:700 23px/1.1 var(--head);letter-spacing:.03em;color:var(--c,var(--bright));text-transform:uppercase;overflow-wrap:anywhere}
.pf-tile.small{padding:13px 14px 12px}
.pf-tile.small strong{font-size:17px}
.pf-tile.empty{background:#0c0f15;border-style:dashed}
.pf-tile.empty::before{display:none}
.pf-tile.empty strong{color:#5b6372}
.pf-tile.empty small{color:var(--dim);font-size:13px}
.pf-ammo{width:12px;height:8px;border-radius:2px;background:var(--am)}
.pf-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:2px;color:var(--muted);font-size:13.5px}

/* Capacités et reliques */
.pf-twin{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
.pf-twin > div{min-width:0}
.pf-super{position:relative;display:flex;flex-direction:column;gap:4px;padding:20px 22px;border-radius:6px;border:1px solid color-mix(in srgb,var(--el) 45%,var(--line2));
  background:radial-gradient(ellipse 80% 140% at 100% 0%,color-mix(in srgb,var(--el) 24%,transparent),transparent 65%),#0e1218;box-shadow:inset 3px 0 0 var(--el)}
.pf-super .pf-slot{color:var(--el)}
.pf-super strong{font:700 30px/1.05 var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--bright)}
.pf-super.none strong{color:#5b6372}
.pf-lvl{font-size:13px;color:var(--muted)}
.pf-abil{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.pf-abil li{display:flex;flex-direction:column;gap:3px;padding:13px 15px;border:1px solid var(--line2);border-radius:6px;background:#0e1218}
.pf-abil strong{font:700 18px/1.1 var(--head);letter-spacing:.03em;text-transform:uppercase;color:var(--bright)}
.pf-energy{display:block;height:6px;border-radius:3px;background:var(--line2);overflow:hidden;position:relative;margin-bottom:12px}
.pf-energy i{position:absolute;inset:0;transform-origin:left;transform:scaleX(var(--f,0));background:linear-gradient(90deg,#8598a3,#d9d6cf)}
.pf-relics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pf-relics li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border:1px solid var(--line2);border-radius:6px;background:#0e1218}
.pf-relics strong{font:700 16px/1.15 var(--head);letter-spacing:.03em;text-transform:uppercase;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pf-pips{display:flex;gap:3px;flex:none}
.pf-pips i{width:7px;height:7px;transform:rotate(45deg);background:#8598a3}

/* Destinations */
.pf-dcard{padding:22px 24px}
.pf-dcard + .pf-dcard{margin-top:12px}
.pf-dcard header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.pf-dcard h3{font-size:28px;text-transform:uppercase;letter-spacing:.06em}
.pf-stats4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}
.pf-stat{display:flex;align-items:center;gap:12px;padding:12px;border-radius:6px;background:#0e1218;border:1px solid var(--line2)}
.pf-ring{width:52px;height:52px;flex:none;transform:rotate(-90deg)}
.pf-ring circle{fill:none;stroke-width:6}
.pf-ring .trk{stroke:var(--line2)}
.pf-ring .arc{stroke-linecap:round;transition:stroke-dashoffset .6s}
.pf-stat dd{margin:0;font:700 24px/1 var(--head);color:var(--bright)}
.pf-stat dd span{font-size:15px;color:var(--dim)}
.pf-stat dt{margin-top:3px;font-size:12.5px;color:var(--muted)}
.pf-stat dt small{color:var(--dim)}

.pf-danger{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:44px;padding:20px 26px}
.pf-danger h2{font-size:18px;text-transform:uppercase;letter-spacing:.06em}
.pf-danger p{margin:4px 0 0;color:var(--muted);font-size:14px}
.pf-danger .btn.confirm{border-color:#ba2121;color:#ff8a8a}

@media (max-width:1000px){
  .pf-hero{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"face id" "stats stats" "actions actions"}
  .pf-stats div{flex:1;text-align:left}
  .pf-actions{justify-content:flex-start}
  .pf-twin{grid-template-columns:1fr}
  .pf-stats4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .pf-hero{padding:22px;gap:14px 18px}
  .pf-face{width:72px;height:72px}
  .pf-weapons{grid-template-columns:1fr}
  .pf-armor,.pf-abil{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pf-relics{grid-template-columns:1fr}
  .pf-stats4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pf-stats{gap:8px}
  .pf-stats div{min-width:0;padding:10px 12px}
  .pf-stats dd{font-size:24px}
  .pf-stats dt{font-size:10px;letter-spacing:.1em}
  .pf-stat{flex-direction:column;align-items:flex-start;gap:8px}
  .pf-dcard{padding:18px}
  .pf-dcard h3{font-size:22px}
  .acct-steps li{padding:18px}
}
