html{background:#0d0e10}
body{margin:0;background:#0d0e10}
a{color:#4fb39c;text-decoration:none}a:hover{color:#7fd4bf}
:root{
  --ease:cubic-bezier(0.23,1,0.32,1);
  --spring:linear(0,0.0628,0.2072,0.3822,0.555,0.7064,0.8281,0.9185,0.9803,1.0185,1.0385,1.0456,1.0445,1.0388,1.031,1.0229,1.0155,1.0095,1.0049,1.0017,1 55.6%,1);
}
.tnum{font-variant-numeric:tabular-nums}
.btn{transition:transform 400ms var(--ease),background-color 300ms var(--ease),box-shadow 400ms var(--ease),border-color 300ms var(--ease)}
.btn:hover{transform:translateY(-1px) scale(1.02)}
.btn:active{transform:scale(0.98)}
.navlink{transition:color 300ms var(--ease)}
.navlink:hover{color:#e7e8ea !important}
.card{transition:transform 700ms var(--ease),border-color 500ms var(--ease)}
.card:hover{transform:translateY(-4px);border-color:#30333a}
.side{transition:background-color 250ms var(--ease),color 250ms var(--ease)}
.side:hover{background:rgba(255,255,255,0.045) !important;color:#e7e8ea !important}
.seg{transition:background-color 300ms var(--ease),color 300ms var(--ease)}
.kcard{cursor:grab;transition:transform 450ms var(--ease),box-shadow 450ms var(--ease),border-color 300ms var(--ease),opacity 300ms var(--ease)}
.kcard:hover{transform:translateY(-2px);box-shadow:0 10px 24px -10px rgba(0,0,0,0.7)}
.kcard:active{cursor:grabbing}
.kcol{transition:background-color 300ms var(--ease),box-shadow 300ms var(--ease)}
.mini{opacity:0;transition:opacity 250ms var(--ease),background-color 250ms var(--ease)}
.kcard:hover .mini,.mini:focus-visible{opacity:1}
.mini:hover{background:#2a2c31 !important}
.row{transition:background-color 250ms var(--ease)}
.row:hover{background:rgba(255,255,255,0.03)}
.pg{animation:pg 650ms var(--ease) both}
@keyframes pg{from{opacity:0;transform:translateY(10px);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}
.hbar{transition:width 900ms var(--spring)}
.pill{transition:width 620ms var(--spring),height 620ms var(--spring),border-radius 620ms var(--spring)}
.swap{transition:opacity 260ms var(--ease),filter 320ms var(--ease),transform 420ms var(--ease)}
.swap[data-on="false"]{opacity:0;filter:blur(6px);transform:scale(0.94);pointer-events:none}
.swap[data-on="true"]{opacity:1;filter:blur(0);transform:scale(1)}
@keyframes up{from{opacity:0;transform:translateY(28px);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}
@keyframes bar{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.62)}}
@keyframes glow{0%,100%{opacity:.55}50%{opacity:.9}}
.in1{animation:up 1200ms var(--ease) 100ms both}
.in2{animation:up 1200ms var(--ease) 250ms both}
.in3{animation:up 1200ms var(--ease) 400ms both}
.in4{animation:up 1400ms var(--ease) 600ms both}
.dot{animation:pulse 1.6s ease-in-out infinite}
.b1{transform-origin:bottom;animation:bar 2.4s var(--ease) infinite}
.b2{transform-origin:bottom;animation:bar 2.4s var(--ease) .3s infinite}
.b3{transform-origin:bottom;animation:bar 2.4s var(--ease) .6s infinite}
.halo{animation:glow 6s ease-in-out infinite}
@supports (animation-timeline: view()){
  .rv{animation:rv linear both;animation-timeline:view();animation-range:entry 0% cover 30%}
  @keyframes rv{from{opacity:0;transform:translateY(56px) scale(.97);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
  .tilt{animation:tilt linear both;animation-timeline:view();animation-range:entry 0% cover 40%}
  @keyframes tilt{from{transform:perspective(1600px) rotateX(20deg) scale(.9) translateY(40px);opacity:.35}to{transform:none;opacity:1}}
  .grow{animation:grow linear both;animation-timeline:view();animation-range:entry 10% cover 40%}
  @keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
}
@media (max-width: 760px){
  .navlinks{display:none !important}
  .sidebar{width:56px !important}
  .sidelabel{display:none !important}
  .sidecount{align-items:center;padding:10px 0 !important}
  .sidecount [data-time]{display:none}
}
