@keyframes copnetIn { from { opacity: 0; transform: translateY(12px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes pulseScan { 0%,100% { opacity: .25; transform: translateX(-20%); } 50% { opacity: .65; transform: translateX(35%); } }
.page-card { animation: copnetIn .45s ease both; }
.scan-line::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(125,211,252,.20), transparent); animation: pulseScan 4s ease-in-out infinite; pointer-events: none; }
.nav-link { display: flex; align-items: center; gap: .75rem; border-radius: 1rem; padding: .75rem .9rem; color: rgb(203 213 225); transition: .18s ease; }
.nav-link:hover { background: rgba(255,255,255,.07); color: white; }
.nav-link i { width: 1.1rem; color: rgb(147 197 253); }
.input { width: 100%; border-radius: 1rem; border: 1px solid rgba(255,255,255,.10); background: rgba(15,23,42,.72); padding: .75rem 1rem; color: white; outline: none; }
.input:focus { border-color: rgba(96,165,250,.65); box-shadow: 0 0 0 4px rgba(59,130,246,.15); }
.label { margin-bottom: .4rem; display: block; font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: rgb(148 163 184); }
.btn-primary { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; border-radius: 1rem; background: rgb(37 99 235); padding: .75rem 1rem; font-weight: 700; color: white; transition: .18s ease; }
.btn-primary:hover { background: rgb(29 78 216); }
.btn-secondary { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; border-radius: 1rem; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.05); padding: .7rem 1rem; font-weight: 650; color: rgb(226 232 240); transition: .18s ease; }
.btn-secondary:hover { background: rgba(255,255,255,.09); color: white; }
.table-wrap { overflow: hidden; border-radius: 1.5rem; border: 1px solid rgba(255,255,255,.10); background: rgba(15,23,42,.62); }
th { background: rgba(255,255,255,.05); color: rgb(148 163 184); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
td, th { padding: .9rem 1rem; border-bottom: 1px solid rgba(255,255,255,.08); text-align: left; }
tr:last-child td { border-bottom: 0; }
.badge { display:inline-flex; border-radius:999px; padding:.25rem .6rem; font-size:.72rem; font-weight:800; border:1px solid rgba(255,255,255,.12); }
