| @tailwind base; |
| @tailwind components; |
| @tailwind utilities; |
|
|
| |
| * { margin: 0; padding: 0; box-sizing: border-box; } |
|
|
| body { |
| font-family: 'Inter', -apple-system, system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; |
| background: #ffffff; |
| color: #0a0b0d; |
| overflow: hidden; |
| height: 100vh; |
| -webkit-app-region: drag; |
| -webkit-font-smoothing: antialiased; |
| -moz-osx-font-smoothing: grayscale; |
| } |
| button, input, select, textarea, a, label { -webkit-app-region: no-drag; } |
|
|
| |
| ::-webkit-scrollbar { width: 6px; } |
| ::-webkit-scrollbar-track { background: transparent; } |
| ::-webkit-scrollbar-thumb { background: #dee1e6; border-radius: 100px; } |
| ::-webkit-scrollbar-thumb:hover { background: #7c828a; } |
|
|
| |
| .display-text { |
| font-family: 'Inter', sans-serif; |
| font-weight: 400; |
| letter-spacing: -0.02em; |
| } |
|
|
| |
| .number-mono { |
| font-family: 'JetBrains Mono', 'Geist Mono', monospace; |
| font-weight: 500; |
| font-variant-numeric: tabular-nums; |
| } |
|
|
| |
|
|
| .btn-primary { |
| @apply inline-flex items-center justify-center px-5 py-3 text-button font-semibold text-on-primary rounded-pill transition-colors; |
| background-color: #0052ff; |
| } |
| .btn-primary:hover { background-color: #003ecc; } |
| .btn-primary:active { background-color: #003ecc; } |
| .btn-primary:disabled { background-color: #a8b8cc; cursor: not-allowed; } |
|
|
| .btn-primary-lg { |
| @apply inline-flex items-center justify-center px-8 py-4 text-button font-semibold text-on-primary rounded-pill transition-colors; |
| background-color: #0052ff; |
| height: 56px; |
| } |
| .btn-primary-lg:hover { background-color: #003ecc; } |
|
|
| .btn-secondary { |
| @apply inline-flex items-center justify-center px-5 py-3 text-button font-semibold text-ink bg-surface-strong rounded-pill transition-colors; |
| } |
| .btn-secondary:hover { background-color: #dee1e6; } |
|
|
| .btn-secondary-dark { |
| @apply inline-flex items-center justify-center px-5 py-3 text-button font-semibold text-on-dark rounded-pill transition-colors; |
| background-color: #16181c; |
| } |
| .btn-secondary-dark:hover { background-color: #1e2025; } |
|
|
| .btn-outline-dark { |
| @apply inline-flex items-center justify-center px-5 py-3 text-button font-semibold text-on-dark rounded-pill transition-colors border border-white/30 bg-transparent; |
| } |
| .btn-outline-dark:hover { border-color: #ffffff; } |
|
|
| .btn-text { |
| @apply inline-flex items-center justify-center px-2 py-1 font-semibold rounded-pill transition-colors bg-transparent; |
| color: #0052ff; |
| font-size: 16px; |
| } |
| .btn-text:hover { background-color: rgba(0, 82, 255, 0.06); } |
|
|
| |
|
|
| .card { |
| @apply bg-canvas rounded-xl p-xl; |
| border: 1px solid #dee1e6; |
| } |
| .card-flat { |
| @apply bg-canvas rounded-xl p-xl; |
| } |
| .card-dark { |
| @apply rounded-xl p-xl; |
| background: #16181c; |
| color: #ffffff; |
| } |
|
|
| |
|
|
| .input-field { |
| @apply w-full px-4 py-3.5 text-body-md bg-canvas text-ink rounded-md transition-all; |
| border: 1px solid #dee1e6; |
| height: 48px; |
| } |
| .input-field:focus { |
| outline: none; |
| border-color: #0052ff; |
| border-width: 2px; |
| padding-left: 15px; |
| } |
| .input-field::placeholder { color: #7c828a; } |
|
|
| .search-pill { |
| @apply w-full px-5 py-3 text-body-sm bg-surface-strong text-ink rounded-pill transition-all; |
| height: 44px; |
| border: none; |
| } |
| .search-pill:focus { outline: none; box-shadow: 0 0 0 2px #0052ff; } |
|
|
| |
|
|
| .badge-pill { |
| @apply inline-flex items-center px-2.5 py-0.5 rounded-pill text-caption-strong uppercase tracking-wider; |
| background: #eef0f3; |
| color: #0a0b0d; |
| } |
| .badge-pill-blue { |
| background: rgba(0, 82, 255, 0.08); |
| color: #0052ff; |
| } |
| .badge-pill-green { |
| background: rgba(5, 177, 105, 0.08); |
| color: #05b169; |
| } |
| .badge-pill-red { |
| background: rgba(207, 32, 47, 0.08); |
| color: #cf202f; |
| } |
|
|
| |
|
|
| .hero-band-dark { |
| background: #0a0b0d; |
| color: #ffffff; |
| padding: 96px 0; |
| } |
|
|
| |
|
|
| .asset-row { |
| @apply flex items-center py-4 transition-colors; |
| border-bottom: 1px solid #eef0f3; |
| } |
| .asset-row:hover { background: #f7f7f7; } |
| .asset-row:last-child { border-bottom: none; } |
|
|
| .asset-icon { |
| @apply flex items-center justify-center rounded-full; |
| width: 32px; height: 32px; |
| background: #eef0f3; |
| } |
|
|
| |
|
|
| .hairline { @apply w-full; height: 1px; background: #dee1e6; } |
| .hairline-soft { @apply w-full; height: 1px; background: #eef0f3; } |
|
|
| |
|
|
| .page-enter { animation: page-fade 0.25s ease-out; } |
| @keyframes page-fade { |
| from { opacity: 0; transform: translateY(8px); } |
| to { opacity: 1; transform: translateY(0); } |
| } |
|
|
| |
|
|
| .toggle { |
| @apply relative inline-flex items-center cursor-pointer; |
| width: 44px; height: 24px; |
| } |
| .toggle-track { |
| @apply w-full h-full rounded-full transition-colors; |
| background: #dee1e6; |
| } |
| .toggle-track.active { background: #0052ff; } |
| .toggle-thumb { |
| @apply absolute w-5 h-5 rounded-full bg-white shadow-soft transition-all; |
| top: 2px; left: 2px; |
| } |
| .toggle-thumb.active { left: 22px; } |
|
|
| |
|
|
| .section-light { @apply bg-canvas; padding: 96px 0; } |
| .section-soft { @apply bg-surface-soft; padding: 96px 0; } |
| .section-dark { background: #0a0b0d; color: #ffffff; padding: 96px 0; } |
|
|