@tailwind base; @tailwind components; @tailwind utilities; @font-face { font-family: 'Roboto Mono'; src: url('/fonts/roboto.woff'); } /* Reset */ html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; } h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; } ul { list-style: none; } button, input, select { margin: 0; } html { box-sizing: border-box; } *, *::before, *::after { box-sizing: inherit; } img, video { height: auto; max-width: 100%; } iframe { border: 0; } table { border-collapse: collapse; border-spacing: 0; } td, th { padding: 0; } /* Theme */ :root { --primary: theme('colors.light-theme.orange.DEFAULT'); --primary-dark: theme('colors.light-theme.orange.dark'); --red: theme('colors.light-theme.red.DEFAULT'); --red-dark: theme('colors.light-theme.red.dark'); --red-muted: theme('colors.light-theme.red.muted'); --green: theme('colors.light-theme.green.DEFAULT'); --green-dark: theme('colors.light-theme.green.dark'); --green-muted: theme('colors.light-theme.green.muted'); --orange: theme('colors.light-theme.orange.DEFAULT'); --bkg-1: theme('colors.light-theme.bkg-1'); --bkg-2: theme('colors.light-theme.bkg-2'); --bkg-3: theme('colors.light-theme.bkg-3'); --bkg-4: theme('colors.light-theme.bkg-4'); --fgd-1: theme('colors.light-theme.fgd-1'); --fgd-2: theme('colors.light-theme.fgd-2'); --fgd-3: theme('colors.light-theme.fgd-3'); --fgd-4: theme('colors.light-theme.fgd-4'); --button: theme('colors.light-theme.button'); --button-hover: theme('colors.light-theme.button-hover'); } [data-theme='Dark'] { --primary: theme('colors.dark-theme.yellow.DEFAULT'); --primary-dark: theme('colors.dark-theme.yellow.dark'); --red: theme('colors.dark-theme.red.DEFAULT'); --red-dark: theme('colors.dark-theme.red.dark'); --red-muted: theme('colors.dark-theme.red.muted'); --green: theme('colors.dark-theme.green.DEFAULT'); --green-dark: theme('colors.dark-theme.green.dark'); --green-muted: theme('colors.dark-theme.green.muted'); --orange: theme('colors.dark-theme.orange.DEFAULT'); --bkg-1: theme('colors.dark-theme.bkg-1'); --bkg-2: theme('colors.dark-theme.bkg-2'); --bkg-3: theme('colors.dark-theme.bkg-3'); --bkg-4: theme('colors.dark-theme.bkg-4'); --fgd-1: theme('colors.dark-theme.fgd-1'); --fgd-2: theme('colors.dark-theme.fgd-2'); --fgd-3: theme('colors.dark-theme.fgd-3'); --fgd-4: theme('colors.dark-theme.fgd-4'); --button: theme('colors.dark-theme.button'); --button-hover: theme('colors.dark-theme.button-hover'); } [data-theme='Mango'] { --primary: theme('colors.mango-theme.yellow.DEFAULT'); --primary-dark: theme('colors.mango-theme.yellow.dark'); --red: theme('colors.mango-theme.red.DEFAULT'); --red-dark: theme('colors.mango-theme.red.dark'); --red-muted: theme('colors.mango-theme.red.muted'); --green: theme('colors.mango-theme.green.DEFAULT'); --green-dark: theme('colors.mango-theme.green.dark'); --green-muted: theme('colors.mango-theme.green.muted'); --orange: theme('colors.mango-theme.orange.DEFAULT'); --bkg-1: theme('colors.mango-theme.bkg-1'); --bkg-2: theme('colors.mango-theme.bkg-2'); --bkg-3: theme('colors.mango-theme.bkg-3'); --bkg-4: theme('colors.mango-theme.bkg-4'); --fgd-1: theme('colors.mango-theme.fgd-1'); --fgd-2: theme('colors.mango-theme.fgd-2'); --fgd-3: theme('colors.mango-theme.fgd-3'); --fgd-4: theme('colors.mango-theme.fgd-4'); --button: theme('colors.mango-theme.button'); --button-hover: theme('colors.mango-theme.button-hover'); } /* Base */ body { @apply font-body text-sm tracking-wide; } button { @apply tracking-wide focus:outline-none; } svg { @apply transition duration-500 ease-out; } .default-transition { @apply transition duration-300 ease-out; } /* Type */ h1, h2, h3 { @apply font-bold text-th-fgd-1; } h1 { @apply text-3xl; } h2 { @apply text-2xl; } h3 { @apply text-lg; } p { @apply text-th-fgd-3; } li { @apply text-sm text-th-fgd-3; } /* Slider */ input[type='range']::-webkit-slider-thumb { -webkit-appearance: none; height: 16px; width: 16px; border-radius: 100%; background: var(--primary); cursor: pointer; margin-top: -1px; /* You need to specify a margin in Chrome, but in Firefox and IE it is automatic */ } /* All the same stuff for Firefox */ input[type='range']::-moz-range-thumb { height: 16px; width: 16px; border-radius: 100%; background: var(--primary); cursor: pointer; } /* All the same stuff for IE */ input[type='range']::-ms-thumb { height: 16px; width: 16px; border-radius: 100%; background: var(--primary); cursor: pointer; } /* Animations */ @keyframes sideways-bounce { 0%, 100% { transform: translateX(-25%); animation-timing-function: cubic-bezier(0.8, 0, 1, 1); } 50% { transform: translateX(0); animation-timing-function: cubic-bezier(0, 0, 0.2, 1); } } .sideways-bounce { animation: sideways-bounce 1s infinite; } /* Table */ table { @apply m-0 w-full p-0; } table caption { @apply my-2; } tbody tr { @apply border-y border-th-bkg-3 p-2; } thead tr { @apply border-b border-th-bkg-3; } table td { @apply px-6 py-3; } table th { @apply px-6 py-3 text-xs font-normal text-th-fgd-3; } table p { @apply font-mono text-sm text-th-fgd-2; } /* Scrollbars */ .font-mono { -webkit-font-feature-settings: 'zero' 1; font-feature-settings: 'zero' 1; } .hide-scroll::-webkit-scrollbar { width: 0px; height: 0px; } .hide-scroll::-webkit-scrollbar-thumb { border: 0px solid transparent; background-clip: padding-box; } .hide-scroll::-webkit-scrollbar-thumb:hover { border: 0; } .hide-scroll::-webkit-scrollbar-track { background: transparent; } .thin-scroll::-webkit-scrollbar { width: 8px; height: 8px; } .thin-scroll::-webkit-scrollbar-thumb { @apply rounded bg-th-bkg-4; border: 2px solid transparent; background-clip: padding-box; } .thin-scroll::-webkit-scrollbar-thumb:hover { border: 0; } .thin-scroll::-webkit-scrollbar-track { background: transparent; } .thin-scroll::-webkit-scrollbar-thumb:window-inactive { @apply bg-th-bkg-4; } /* Chart */ .TVChartContainer { height: 100%; width: 100%; } .tradingview-chart { display: contents; } /* slider */ input[type='range'] { @apply h-2 appearance-none rounded bg-th-bkg-4 bg-gradient-to-r from-gradient-start via-gradient-mid to-gradient-end bg-[length:50%_100%] bg-no-repeat; } input[type='range']::-webkit-slider-thumb { @apply h-5 w-5 cursor-ew-resize appearance-none rounded-full bg-th-primary; } input[type='range']::-webkit-slider-runnable-track { @apply appearance-none border-0 bg-transparent shadow-none; } .intro-bg { background-color: var(--bkg-1); background-image: radial-gradient(at -40% -10%, #5b48ad 0, transparent 40%), radial-gradient(at 150% 150%, #e54033 0, transparent 50%); } /* orderbook flash */ @keyframes green-flash { from { background-color: var(--green-muted); } to { background-color: transparent; } } @-webkit-keyframes green-flash { from { background-color: var(--green-muted); } to { background-color: transparent; } } @-moz-keyframes green-flash { from { background-color: var(--green-muted); } to { background-color: transparent; } } @keyframes red-flash { from { background-color: var(--red-muted); } to { background-color: transparent; } } @-webkit-keyframes red-flash { from { background-color: var(--red-muted); } to { background-color: transparent; } } @-moz-keyframes red-flash { from { background-color: var(--red-muted); } to { background-color: transparent; } } .green-flash { -moz-animation: green-flash 0.5s ease 0s 1 alternate; -webkit-animation: green-flash 0.5s ease 0s 1 alternate; animation: green-flash 0.5s ease 0s 1 alternate; } .red-flash { -moz-animation: red-flash 0.5s ease 0s 1 alternate; -webkit-animation: red-flash 0.5s ease 0s 1 alternate; animation: red-flash 0.5s ease 0s 1 alternate; } .tooltip-underline { @apply default-transition w-max border-b border-dashed border-th-fgd-4 leading-tight hover:cursor-help hover:border-transparent; }