:root{--motion-spring:cubic-bezier(.2,.8,.2,1)}
.main-content>.p-4,.main-content>.container-fluid{animation:fieldops-enter .5s var(--motion-spring) both}
.luxury-icon-card,.content-card,.advanced-table-shell,.stat-card{transition:transform .25s var(--motion-spring),box-shadow .25s ease,border-color .25s ease}
.luxury-icon-card:hover,.stat-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px rgba(15,23,42,.11);border-color:rgba(79,70,229,.22)}
.advanced-table-shell{overflow:hidden;border:1px solid rgba(148,163,184,.2);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.05)}
.advanced-table-shell thead th{position:sticky;top:0;z-index:2;background:#f8fafc;color:#475569;text-transform:uppercase;letter-spacing:.045em;font-size:.72rem}
.advanced-table-shell tbody tr{transition:background-color .18s ease}.advanced-table-shell tbody tr:hover{background:#f8faff}.modal.show .modal-dialog{animation:modal-spring .35s var(--motion-spring)}
.access-denied-page{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at 20% 20%,rgba(99,102,241,.16),transparent 36%),linear-gradient(145deg,#f8fafc,#eef2ff)}
.access-denied-card{width:min(620px,100%);padding:clamp(2rem,5vw,4rem);text-align:center;border:1px solid rgba(99,102,241,.16);border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 30px 80px rgba(30,41,59,.14);backdrop-filter:blur(18px);animation:fieldops-enter .55s var(--motion-spring)}
.access-denied-card h1{font-weight:800;letter-spacing:-.04em}.access-denied-card p{color:#64748b;max-width:500px;margin:1rem auto}.access-denied-icon{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 1.25rem;border-radius:22px;color:#fff;font-size:2rem;background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 16px 35px rgba(79,70,229,.28)}
.access-role{display:inline-flex;align-items:center;gap:.55rem;padding:.65rem 1rem;border-radius:999px;background:#eef2ff;color:#4338ca}.access-role span{color:#64748b}
@keyframes fieldops-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes modal-spring{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
