/* ============================================================
   CADET DOSSIER — per-NFT record pages
   ============================================================ */
:root{
  --cyan:#34e7ff; --purple:#9b5cff; --pink:#ff5cc8; --gold:#ffd34d;
  --bg:#05010f; --ink:#eef0ff; --muted:#9aa0c8;
  --glass:rgba(12,8,32,.55); --line:rgba(155,92,255,.28);
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:'Segoe UI',system-ui,sans-serif}
body{
  background:
    radial-gradient(1000px 480px at 85% -5%, rgba(155,92,255,.16), transparent 60%),
    radial-gradient(900px 460px at 8% 2%, rgba(52,231,255,.12), transparent 55%),
    var(--bg);
  min-height:100vh;display:flex;flex-direction:column;
}
#dos-top{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:14px 22px;
}
.dos-back{color:var(--ink);text-decoration:none;font-size:12px;letter-spacing:.14em;font-weight:700;opacity:.85}
.dos-back:hover{opacity:1}
.dos-brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.2em;font-size:13px}
.dos-brand img{width:28px;height:28px;object-fit:contain;filter:drop-shadow(0 0 8px var(--cyan))}

.dos{flex:1;max-width:1080px;margin:0 auto;padding:34px 22px 60px;width:100%}
.dos-eyebrow{font-size:11px;letter-spacing:.3em;color:var(--cyan);font-weight:700;margin:0 0 8px}

/* ---- lookup ---- */
.dos-lookup{text-align:center;max-width:640px;margin:6vh auto 0}
.dos-lookup h1{
  font-size:clamp(36px,7vw,64px);margin:0 0 12px;font-weight:900;letter-spacing:.03em;
  background:linear-gradient(135deg,#fff,var(--cyan) 45%,var(--purple) 80%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.dos-lead{color:var(--muted);line-height:1.55;margin:0 0 26px}
.dos-search{display:flex;gap:8px;max-width:560px;margin:0 auto 14px}
.dos-search input{
  flex:1;padding:14px 18px;border-radius:12px;font-size:13px;
  background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--ink);
  font-family:ui-monospace,monospace;
}
.dos-search input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 18px rgba(52,231,255,.25)}
.dos-search button{
  padding:14px 22px;border:none;border-radius:12px;cursor:pointer;
  background:linear-gradient(90deg,var(--cyan),var(--purple));color:#04101a;
  font-weight:800;letter-spacing:.1em;font-size:12px;
}
.dos-alt{display:flex;gap:14px;justify-content:center;align-items:center}
#dos-random{
  padding:11px 18px;border-radius:99px;cursor:pointer;
  background:var(--glass);border:1px solid var(--line);color:var(--ink);
  font-size:12px;font-weight:700;letter-spacing:.08em;
}
#dos-random:hover{border-color:var(--gold)}
.dos-vault-link{color:#bfeeff;font-size:12px;font-weight:700;letter-spacing:.08em;text-decoration:none}
.dos-err{color:#ff9bb0;font-size:13px;margin-top:16px}

/* ---- dossier file ---- */
.dos-file{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:30px;align-items:start;
  background:var(--glass);border:1px solid var(--line);border-radius:20px;
  padding:26px;box-shadow:0 24px 80px rgba(0,0,0,.5);
  animation:dosin .4s cubic-bezier(.2,.8,.2,1);
}
@keyframes dosin{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.dos-art-wrap{position:relative;width:100%;aspect-ratio:1}
#dos-art,.dos-ph{
  position:absolute;inset:0;width:100%;height:100%;
  border-radius:14px;display:block;object-fit:cover;object-position:center 42%;
}
.dos-ph[hidden],#dos-art[hidden]{display:none}
.dos-ph{
  display:grid;place-items:center;
  background:
    radial-gradient(circle at 30% 25%, rgba(52,231,255,.18), transparent 60%),
    radial-gradient(circle at 75% 80%, rgba(155,92,255,.2), transparent 55%), #0d0a24;
}
.dos-ph span{
  font-size:56px;font-weight:900;letter-spacing:.08em;
  background:linear-gradient(135deg,var(--cyan),var(--purple));
  -webkit-background-clip:text;background-clip:text;color:transparent;opacity:.7;
}
.dos-stamp{
  position:absolute;top:14px;left:14px;
  padding:7px 12px;border-radius:9px;font-size:9.5px;font-weight:800;letter-spacing:.16em;
  background:rgba(6,20,12,.75);border:1px solid rgba(125,255,154,.5);color:#a9ffc4;
  backdrop-filter:blur(6px);
}
.dos-col{font-size:11px;letter-spacing:.24em;color:var(--cyan);font-weight:800}
.dos-info h2{font-size:clamp(24px,4vw,38px);margin:8px 0 10px;line-height:1.05}
.dos-idrow{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.dos-idrow code{
  font-size:10.5px;color:var(--muted);background:rgba(255,255,255,.04);
  padding:6px 10px;border-radius:8px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.dos-idrow button{
  width:28px;height:28px;border-radius:8px;border:1px solid var(--line);
  background:none;color:var(--ink);cursor:pointer;font-size:12px;
}
.dos-owner{font-size:11px;letter-spacing:.12em;color:var(--muted);margin:0 0 18px}
.dos-owner b{color:#ffe9b0;font-family:ui-monospace,monospace;font-size:11.5px}
.dos-h{font-size:11px;letter-spacing:.22em;color:var(--purple);margin:18px 0 10px;font-weight:800}
.dos-traits{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:7px}
.dos-traits li{
  font-size:11px;letter-spacing:.05em;padding:6px 12px;border-radius:99px;
  background:rgba(52,231,255,.08);border:1px solid rgba(52,231,255,.25);color:#bfeeff;
}
.dos-traits li.dim{opacity:.55}
.dos-brief{
  font-size:14px;line-height:1.65;color:#d5d9f5;margin:0;
  border-left:3px solid var(--gold);padding-left:14px;
}
.dos-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.dos-btn{
  padding:12px 18px;border-radius:99px;font-size:11.5px;font-weight:800;letter-spacing:.1em;
  border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--ink);
  cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .2s;display:inline-block;
}
.dos-btn:hover{transform:translateY(-2px)}
.dos-btn.primary{
  background:linear-gradient(90deg,var(--cyan),var(--purple));color:#04101a;border:none;
  box-shadow:0 0 22px rgba(52,231,255,.4);
}
.dos-btn.ghost{opacity:.75}
.dos-foot{text-align:center;color:var(--muted);font-size:11px;letter-spacing:.14em;padding:22px}

@media(max-width:760px){
  .dos-file{grid-template-columns:1fr}
  .dos-search{flex-direction:column}
}
