@tailwind base; @tailwind components; @tailwind utilities; @layer base { body { display: grid; grid-template-columns: 3rem 1fr; scrollbar-color: theme('colors.gray.500') rgba(0, 0, 0, 0); font-family: 'Noto Sans', sans-serif; } input, textarea { @apply w-full rounded bg-slate-900 p-[.4rem]; } input, textarea, select { @apply focus-thin focus-slate; } button { @apply focus-thick focus-slate; } a { @apply focus-thick focus-blue; } label { @apply mb-0.5 inline-block; } form { @apply flex flex-col gap-4 p-px text-sm; } .rounded-group > * { @apply rounded-none first:rounded-l-sm last:rounded-r-sm !important; } .rounded-group-start > * { @apply rounded-none first:rounded-l-sm !important; } .rounded-group-end > * { @apply rounded-none last:rounded-r-sm !important; } .grid-labels { @apply grid grid-cols-[1fr_5fr] gap-2; } header { grid-area: header; } aside { overflow: auto; grid-area: sidebar; @apply lg:w-[28rem] xl:w-[32rem] min-[1920px]:w-[36rem]; } main { grid-area: main; } } @layer components { .btn { @apply focus-thick focus-slate flex items-center justify-center rounded-sm p-2 text-white transition-colors disabled:opacity-40; } .btn-xs { @apply btn rounded-sm p-0.5 py-0; } .btn-blue { @apply btn bg-blue-700 hover:bg-blue-600 disabled:bg-blue-900; } .btn-rose { @apply btn bg-rose-700 hover:bg-rose-600 disabled:bg-rose-900; } .btn-slate { @apply btn bg-slate-700 hover:bg-slate-600 disabled:bg-slate-800; } .btn-indigo { @apply btn bg-indigo-700 hover:bg-indigo-600 disabled:bg-indigo-800; } .icon-xs { @apply text-[18px]; } .icon-base { @apply text-[24px]; } .icon-lg { @apply text-[28px]; } .icon-2xl { @apply text-[48px]; } .icon-gray.hoverable:hover { @apply text-gray-200/80; } .icon-gray.dim { @apply text-gray-100/40; } .icon-yellow { @apply text-yellow-300; } .icon-yellow.hoverable:hover { @apply text-yellow-300/80; } .icon-yellow.dim { @apply text-slate-100/40; } } @layer utilities { .toggled { @apply bg-indigo-700 hover:bg-indigo-600; } .floating { @apply rounded-full bg-black/50 p-1 text-white/80 backdrop-blur-sm hover:bg-black/50 hover:text-white; } .ellipsis-nowrap { @apply overflow-hidden text-ellipsis whitespace-nowrap; } .rounded-inherit { border-radius: inherit; } .grid-card-h { grid-template-columns: 210px 1fr; grid-template-rows: 300px; } .grid-card-cover-only { @apply !grid-card-h; } .grid-card-v { grid-template-columns: 1fr; grid-template-rows: 500px 1fr; } .focus-thin { @apply focus:isolate focus:outline focus:outline-1; } .focus-thick { @apply focus-visible:isolate focus-visible:outline; } .focus-background { @apply focus-visible:bg-indigo-600 focus-visible:outline-none; } .focus-slate { @apply focus:outline-slate-400 focus-visible:outline-slate-400; } .focus-blue { @apply focus:outline-blue-600 focus-visible:outline-blue-600; } } .svelecte { --sv-bg: theme(colors.slate.900); --sv-disabled-bg: theme(colors.slate.900); --sv-border: 1px solid rgba(0, 0, 0, 0); --sv-dropdown-active-bg: theme(colors.indigo.800); --sv-item-selected-bg: theme(colors.indigo.800); --sv-item-btn-bg-hover: theme(colors.rose.900); --sv-item-btn-color-hover: theme(colors.rose.100); --sv-separator-bg: theme(colors.gray.700); --sv-min-height: 38px; --sv-item-wrap-padding: 3px 3px 3px 5px; } .svelecte.is-focused { --sv-border: 1px solid theme(colors.slate.400); } .svelecte input::placeholder { color: theme(colors.gray.500); } .exclude .svelecte { --sv-border: 1px solid theme(colors.red.900); --sv-item-selected-bg: theme(colors.rose.800); --sv-dropdown-active-bg: theme(colors.rose.800); } .sv-item--btn { border-radius: 0 2px 2px 0 !important; } .sv-item--wrap { border-radius: 2px 0 0 2px !important; } .sv-item--wrap.in-dropdown { border-radius: 2px !important; }