:root,[data-theme=light]{--bg:#f8f9fb;--card:#ffffff;--card-2:#fafbfc;--ink:#15181f;--muted:#5b6475;--faint:#8a93a3;--line:#e6e8ee;--line-soft:#f0f1f5;--indigo:#5b46f9;--indigo-soft:#eceaff;--green:#0a7d54;--green-bright:#0f9d6b;--green-soft:#e6f6ef;--amber:#a86400;--amber-soft:#fdf3e2;--ink-invert:#ffffff;--shadow-lift:0 10px 30px rgba(20,24,40,0.1);--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}[data-theme=dark]{--bg:#0f1117;--card:#161922;--card-2:#1b1f29;--ink:#e7e9ef;--muted:#aab2c0;--faint:#7c8698;--line:#262b37;--line-soft:#1e222c;--indigo:#7c6cff;--indigo-soft:#26234a;--green:#4bc58c;--green-bright:#3fb984;--green-soft:#12261d;--amber:#e0a13c;--amber-soft:#2a2213;--ink-invert:#0f1117;--shadow-lift:0 10px 30px rgba(0,0,0,0.38)}*{box-sizing:border-box}body,html{margin:0;padding:0}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--ink);font-family:Figtree,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#d9d3ff;color:#15181f}a{color:inherit;text-decoration:none;transition:color .15s ease,opacity .15s ease}a:hover{opacity:.86}.mono{font-family:var(--mono)}body,body *{transition:background-color .18s ease,border-color .18s ease,color .18s ease}[role=button],button{cursor:pointer;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s cubic-bezier(.34,1.56,.64,1),filter .2s ease,background-color .16s ease,border-color .16s ease,color .16s ease,opacity .16s ease}[role=button]:hover,button:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px)}[role=button]:active,button:active:not(:disabled){transform:translateY(1px) scale(.95)}button:disabled{cursor:default;opacity:.55}input,select,textarea{transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--indigo)!important;box-shadow:0 0 0 3px var(--indigo-soft)}:focus-visible{outline:2px solid var(--indigo);outline-offset:2px}.lift{transition:transform .28s cubic-bezier(.34,1.56,.64,1),box-shadow .28s cubic-bezier(.34,1.56,.64,1),border-color .2s ease}.lift:hover{transform:translateY(-4px) scale(1.015);box-shadow:0 20px 40px -15px rgba(91,70,249,.18);border-color:rgba(91,70,249,.3)!important}.row-hover{transition:background-color .14s ease}.row-hover:hover{background:var(--card-2)}.nav-link{transition:background-color .14s ease,color .14s ease}.nav-link:hover{background:var(--indigo-soft);color:var(--ink)}.rise{animation:rise .5s cubic-bezier(.2,.7,.2,1) both}.rise-1{animation-delay:.04s}.rise-2{animation-delay:.09s}.rise-3{animation-delay:.15s}.rise-4{animation-delay:.21s}.rise-5{animation-delay:.27s}.fade-in{animation:fadeIn .4s ease both}.pulse-dot{animation:pulseDot 2s infinite}.skeleton{background:linear-gradient(90deg,var(--line-soft) 25%,var(--line) 37%,var(--line-soft) 63%);background-size:400px 100%;animation:shimmer 1.4s ease infinite;border-radius:8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.spinner{display:inline-block;width:15px;height:15px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:spin .6s linear infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulseDot{0%,to{box-shadow:0 0 0 0 rgba(91,70,249,.45)}50%{box-shadow:0 0 0 9px rgba(91,70,249,0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}