*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:#f3f5f9;font-family:'Public Sans',system-ui,sans-serif;color:#1f2430;-webkit-font-smoothing:antialiased;}
::-webkit-scrollbar{width:9px;height:9px;}
::-webkit-scrollbar-thumb{background:#cfd4e0;border-radius:6px;}
::-webkit-scrollbar-track{background:transparent;}
.lptk-num{font-variant-numeric:tabular-nums;}
table{font-variant-numeric:tabular-nums;}

@keyframes floaty{0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}}
@keyframes ringdraw{from{stroke-dashoffset:440;}to{stroke-dashoffset:var(--ro,0);}}
@keyframes loadbar{0%{left:-42%;width:42%;}48%{left:28%;width:58%;}100%{left:100%;width:42%;}}
@keyframes spin{to{transform:rotate(360deg);}}
@keyframes toastin{from{opacity:0;transform:translate(-50%,14px);}to{opacity:1;transform:translate(-50%,0);}}
@keyframes drawerIn{from{transform:translateX(100%);}to{transform:translateX(0);}}
@keyframes drawerOut{from{transform:translateX(0);}to{transform:translateX(100%);}}
@keyframes backdropIn{from{opacity:0;}to{opacity:1;}}
@keyframes backdropOut{from{opacity:1;}to{opacity:0;}}
@keyframes navPointPulse{0%{box-shadow:inset 3px 0 0 var(--nav-accent,#6366f1),0 0 0 0 var(--nav-glow,transparent);}70%{box-shadow:inset 3px 0 0 var(--nav-accent,#6366f1),0 0 0 9px transparent;}100%{box-shadow:inset 3px 0 0 var(--nav-accent,#6366f1),0 0 0 0 transparent;}}

.nav-child:hover{background:var(--sb-hover,rgba(255,255,255,.06)) !important;color:var(--sb-text,#dfe3ee) !important;}
.mod-card:hover{border-color:var(--mc,#6366f1) !important;box-shadow:0 12px 28px rgba(15,20,40,.10) !important;transform:translateY(-3px) !important;}
.sec-anchor:hover{background:var(--accent-tint,color-mix(in srgb,#6366f1 13%,#ffffff)) !important;color:var(--accent,#6366f1) !important;}
.stafrow:hover,.ptkrow:hover{background:#f7f8fb;}
@media print{aside,header{display:none!important;}}

