+
+
+
+
If you reset your authenticator key your authenticator app will not work until you reconfigure it.
@@ -23,7 +24,7 @@
diff --git a/src/AliasVault.Admin2/Main/Pages/Account/Manage/SetPassword.razor b/src/AliasVault.Admin2/Main/Pages/Account/Manage/SetPassword.razor
index 0d4d035c9..61d3ec132 100644
--- a/src/AliasVault.Admin2/Main/Pages/Account/Manage/SetPassword.razor
+++ b/src/AliasVault.Admin2/Main/Pages/Account/Manage/SetPassword.razor
@@ -6,7 +6,7 @@
@inject UserManager
UserManager
@inject SignInManager SignInManager
-Set password
+Set password
Set your password
diff --git a/src/AliasVault.Admin2/Main/Pages/Account/Manage/TwoFactorAuthentication.razor b/src/AliasVault.Admin2/Main/Pages/Account/Manage/TwoFactorAuthentication.razor
index 62f062e40..bc919ca65 100644
--- a/src/AliasVault.Admin2/Main/Pages/Account/Manage/TwoFactorAuthentication.razor
+++ b/src/AliasVault.Admin2/Main/Pages/Account/Manage/TwoFactorAuthentication.razor
@@ -5,48 +5,62 @@
@inject UserManager UserManager
@inject SignInManager SignInManager
-Two-factor authentication (2FA)
-
-Two-factor authentication (2FA)
+Two-factor authentication (2FA)
@if (is2faEnabled)
{
- if (recoveryCodesLeft == 0)
- {
-
- }
- else if (recoveryCodesLeft == 1)
- {
-
- }
- else if (recoveryCodesLeft <= 3)
- {
-
- }
+
}
-Authenticator app
-@if (!hasAuthenticator)
-{
- Add authenticator app
-}
-else
-{
- Set up authenticator app
- Reset authenticator app
-}
+
@code {
private bool hasAuthenticator;
diff --git a/src/AliasVault.Admin2/Main/Pages/Account/ManageNavMenu.razor b/src/AliasVault.Admin2/Main/Pages/Account/ManageNavMenu.razor
index 065721ca8..f3acb6ed5 100644
--- a/src/AliasVault.Admin2/Main/Pages/Account/ManageNavMenu.razor
+++ b/src/AliasVault.Admin2/Main/Pages/Account/ManageNavMenu.razor
@@ -6,24 +6,12 @@
Profile
-
- Email
-
Password
- @if (hasExternalLogins)
- {
-
- External logins
-
- }
Two-factor authentication
-
- Personal data
-
@code {
diff --git a/src/AliasVault.Admin2/Program.cs b/src/AliasVault.Admin2/Program.cs
index 7fa03482d..920bc8878 100644
--- a/src/AliasVault.Admin2/Program.cs
+++ b/src/AliasVault.Admin2/Program.cs
@@ -3,10 +3,9 @@ using AliasServerDb;
using Microsoft.AspNetCore.Components.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.EntityFrameworkCore;
-using AliasVault.Admin2.Auth;
+using AliasVault.Admin2.Auth.Providers;
using AliasVault.Admin2.Main;
using AliasVault.Admin2.Services;
-using Microsoft.AspNetCore.Components;
using Microsoft.Data.Sqlite;
var builder = WebApplication.CreateBuilder(args);
@@ -20,7 +19,7 @@ builder.Services.AddScoped();
builder.Services.AddScoped();
builder.Services.AddScoped();
builder.Services.AddScoped();
-builder.Services.AddScoped();
+builder.Services.AddScoped();
builder.Services.AddAuthentication(options =>
{
diff --git a/src/AliasVault.Admin2/wwwroot/css/tailwind.css b/src/AliasVault.Admin2/wwwroot/css/tailwind.css
index 2e6f663ba..d12f1654e 100644
--- a/src/AliasVault.Admin2/wwwroot/css/tailwind.css
+++ b/src/AliasVault.Admin2/wwwroot/css/tailwind.css
@@ -644,6 +644,11 @@ video {
grid-column: 1 / -1;
}
+.-mx-3 {
+ margin-left: -0.75rem;
+ margin-right: -0.75rem;
+}
+
.mx-3 {
margin-left: 0.75rem;
margin-right: 0.75rem;
@@ -659,9 +664,12 @@ video {
margin-bottom: 1rem;
}
-.-mx-3 {
- margin-left: -0.75rem;
- margin-right: -0.75rem;
+.mb-1 {
+ margin-bottom: 0.25rem;
+}
+
+.mb-2 {
+ margin-bottom: 0.5rem;
}
.mb-3 {
@@ -676,10 +684,30 @@ video {
margin-bottom: 1.25rem;
}
+.mb-6 {
+ margin-bottom: 1.5rem;
+}
+
+.mb-8 {
+ margin-bottom: 2rem;
+}
+
.ml-1 {
margin-left: 0.25rem;
}
+.ml-2 {
+ margin-left: 0.5rem;
+}
+
+.ml-3 {
+ margin-left: 0.75rem;
+}
+
+.ml-auto {
+ margin-left: auto;
+}
+
.mr-14 {
margin-right: 3.5rem;
}
@@ -704,55 +732,24 @@ video {
margin-top: 0px;
}
-.mt-4 {
- margin-top: 1rem;
-}
-
-.mb-2 {
- margin-bottom: 0.5rem;
-}
-
-.mb-6 {
- margin-bottom: 1.5rem;
-}
-
-.mb-1 {
- margin-bottom: 0.25rem;
-}
-
.mt-1 {
margin-top: 0.25rem;
}
-.ml-2 {
- margin-left: 0.5rem;
-}
-
-.mb-8 {
- margin-bottom: 2rem;
-}
-
-.ml-3 {
- margin-left: 0.75rem;
-}
-
-.ml-auto {
- margin-left: auto;
-}
-
-.mt-8 {
- margin-top: 2rem;
+.mt-4 {
+ margin-top: 1rem;
}
.mt-6 {
margin-top: 1.5rem;
}
-.line-clamp-2 {
- overflow: hidden;
- display: -webkit-box;
- -webkit-box-orient: vertical;
- -webkit-line-clamp: 2;
+.mt-8 {
+ margin-top: 2rem;
+}
+
+.mt-2 {
+ margin-top: 0.5rem;
}
.line-clamp-1 {
@@ -770,6 +767,10 @@ video {
display: inline-block;
}
+.inline {
+ display: inline;
+}
+
.flex {
display: flex;
}
@@ -790,6 +791,10 @@ video {
display: none;
}
+.h-4 {
+ height: 1rem;
+}
+
.h-5 {
height: 1.25rem;
}
@@ -810,14 +815,14 @@ video {
height: 100%;
}
-.h-4 {
- height: 1rem;
-}
-
.w-1\/2 {
width: 50%;
}
+.w-4 {
+ width: 1rem;
+}
+
.w-5 {
width: 1.25rem;
}
@@ -842,8 +847,12 @@ video {
width: 100%;
}
-.w-4 {
- width: 1rem;
+.max-w-2xl {
+ max-width: 42rem;
+}
+
+.max-w-md {
+ max-width: 28rem;
}
.max-w-screen-2xl {
@@ -854,10 +863,6 @@ video {
max-width: 36rem;
}
-.max-w-md {
- max-width: 28rem;
-}
-
.flex-shrink-0 {
flex-shrink: 0;
}
@@ -870,10 +875,18 @@ video {
cursor: not-allowed;
}
+.list-inside {
+ list-style-position: inside;
+}
+
.list-none {
list-style-type: none;
}
+.list-decimal {
+ list-style-type: decimal;
+}
+
.grid-cols-1 {
grid-template-columns: repeat(1, minmax(0, 1fr));
}
@@ -918,16 +931,18 @@ video {
justify-content: space-between;
}
-.gap-4 {
- gap: 1rem;
-}
-
.space-x-1 > :not([hidden]) ~ :not([hidden]) {
--tw-space-x-reverse: 0;
margin-right: calc(0.25rem * var(--tw-space-x-reverse));
margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
}
+.space-x-4 > :not([hidden]) ~ :not([hidden]) {
+ --tw-space-x-reverse: 0;
+ margin-right: calc(1rem * var(--tw-space-x-reverse));
+ margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
+}
+
.space-x-6 > :not([hidden]) ~ :not([hidden]) {
--tw-space-x-reverse: 0;
margin-right: calc(1.5rem * var(--tw-space-x-reverse));
@@ -940,6 +955,12 @@ video {
margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
+.space-y-2 > :not([hidden]) ~ :not([hidden]) {
+ --tw-space-y-reverse: 0;
+ margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
+ margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
+}
+
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
--tw-space-y-reverse: 0;
margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
@@ -1009,18 +1030,22 @@ video {
border-bottom-right-radius: 0.5rem;
}
-.border-2 {
- border-width: 2px;
-}
-
.border {
border-width: 1px;
}
+.border-2 {
+ border-width: 2px;
+}
+
.border-b {
border-bottom-width: 1px;
}
+.border-l-4 {
+ border-left-width: 4px;
+}
+
.border-t {
border-top-width: 1px;
}
@@ -1035,9 +1060,29 @@ video {
border-color: rgb(209 213 219 / var(--tw-border-opacity));
}
-.bg-amber-200 {
+.border-red-500 {
+ --tw-border-opacity: 1;
+ border-color: rgb(239 68 68 / var(--tw-border-opacity));
+}
+
+.border-yellow-500 {
+ --tw-border-opacity: 1;
+ border-color: rgb(234 179 8 / var(--tw-border-opacity));
+}
+
+.border-primary-500 {
+ --tw-border-opacity: 1;
+ border-color: rgb(244 149 65 / var(--tw-border-opacity));
+}
+
+.bg-blue-500 {
--tw-bg-opacity: 1;
- background-color: rgb(253 230 138 / var(--tw-bg-opacity));
+ background-color: rgb(59 130 246 / var(--tw-bg-opacity));
+}
+
+.bg-gray-100 {
+ --tw-bg-opacity: 1;
+ background-color: rgb(243 244 246 / var(--tw-bg-opacity));
}
.bg-gray-200 {
@@ -1065,19 +1110,9 @@ video {
background-color: rgb(240 253 244 / var(--tw-bg-opacity));
}
-.bg-red-50 {
+.bg-indigo-600 {
--tw-bg-opacity: 1;
- background-color: rgb(254 242 242 / var(--tw-bg-opacity));
-}
-
-.bg-white {
- --tw-bg-opacity: 1;
- background-color: rgb(255 255 255 / var(--tw-bg-opacity));
-}
-
-.bg-primary-200 {
- --tw-bg-opacity: 1;
- background-color: rgb(251 203 116 / var(--tw-bg-opacity));
+ background-color: rgb(79 70 229 / var(--tw-bg-opacity));
}
.bg-primary-100 {
@@ -1085,19 +1120,9 @@ video {
background-color: rgb(253 222 133 / var(--tw-bg-opacity));
}
-.bg-blue-500 {
+.bg-primary-600 {
--tw-bg-opacity: 1;
- background-color: rgb(59 130 246 / var(--tw-bg-opacity));
-}
-
-.bg-gray-100 {
- --tw-bg-opacity: 1;
- background-color: rgb(243 244 246 / var(--tw-bg-opacity));
-}
-
-.bg-red-600 {
- --tw-bg-opacity: 1;
- background-color: rgb(220 38 38 / var(--tw-bg-opacity));
+ background-color: rgb(214 131 56 / var(--tw-bg-opacity));
}
.bg-primary-700 {
@@ -1105,9 +1130,34 @@ video {
background-color: rgb(184 112 47 / var(--tw-bg-opacity));
}
-.bg-primary-600 {
+.bg-red-100 {
--tw-bg-opacity: 1;
- background-color: rgb(214 131 56 / var(--tw-bg-opacity));
+ background-color: rgb(254 226 226 / var(--tw-bg-opacity));
+}
+
+.bg-red-50 {
+ --tw-bg-opacity: 1;
+ background-color: rgb(254 242 242 / var(--tw-bg-opacity));
+}
+
+.bg-red-600 {
+ --tw-bg-opacity: 1;
+ background-color: rgb(220 38 38 / var(--tw-bg-opacity));
+}
+
+.bg-white {
+ --tw-bg-opacity: 1;
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity));
+}
+
+.bg-yellow-100 {
+ --tw-bg-opacity: 1;
+ background-color: rgb(254 249 195 / var(--tw-bg-opacity));
+}
+
+.bg-blue-100 {
+ --tw-bg-opacity: 1;
+ background-color: rgb(219 234 254 / var(--tw-bg-opacity));
}
.bg-opacity-50 {
@@ -1130,6 +1180,11 @@ video {
padding: 1.5rem;
}
+.px-2 {
+ padding-left: 0.5rem;
+ padding-right: 0.5rem;
+}
+
.px-3 {
padding-left: 0.75rem;
padding-right: 0.75rem;
@@ -1140,6 +1195,16 @@ video {
padding-right: 1rem;
}
+.px-5 {
+ padding-left: 1.25rem;
+ padding-right: 1.25rem;
+}
+
+.px-6 {
+ padding-left: 1.5rem;
+ padding-right: 1.5rem;
+}
+
.py-1 {
padding-top: 0.25rem;
padding-bottom: 0.25rem;
@@ -1150,6 +1215,11 @@ video {
padding-bottom: 0.5rem;
}
+.py-2\.5 {
+ padding-top: 0.625rem;
+ padding-bottom: 0.625rem;
+}
+
.py-3 {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
@@ -1160,34 +1230,14 @@ video {
padding-bottom: 1.5rem;
}
-.px-6 {
- padding-left: 1.5rem;
- padding-right: 1.5rem;
-}
-
-.py-4 {
- padding-top: 1rem;
- padding-bottom: 1rem;
-}
-
.py-8 {
padding-top: 2rem;
padding-bottom: 2rem;
}
-.px-2 {
- padding-left: 0.5rem;
- padding-right: 0.5rem;
-}
-
-.px-5 {
- padding-left: 1.25rem;
- padding-right: 1.25rem;
-}
-
-.py-2\.5 {
- padding-top: 0.625rem;
- padding-bottom: 0.625rem;
+.py-1\.5 {
+ padding-top: 0.375rem;
+ padding-bottom: 0.375rem;
}
.ps-2 {
@@ -1224,6 +1274,11 @@ video {
line-height: 1.5rem;
}
+.text-lg {
+ font-size: 1.125rem;
+ line-height: 1.75rem;
+}
+
.text-sm {
font-size: 0.875rem;
line-height: 1.25rem;
@@ -1234,20 +1289,11 @@ video {
line-height: 1.75rem;
}
-.text-lg {
- font-size: 1.125rem;
- line-height: 1.75rem;
-}
-
.text-xs {
font-size: 0.75rem;
line-height: 1rem;
}
-.font-black {
- font-weight: 900;
-}
-
.font-bold {
font-weight: 700;
}
@@ -1305,11 +1351,31 @@ video {
color: rgb(22 101 52 / var(--tw-text-opacity));
}
+.text-primary-600 {
+ --tw-text-opacity: 1;
+ color: rgb(214 131 56 / var(--tw-text-opacity));
+}
+
.text-primary-700 {
--tw-text-opacity: 1;
color: rgb(184 112 47 / var(--tw-text-opacity));
}
+.text-red-500 {
+ --tw-text-opacity: 1;
+ color: rgb(239 68 68 / var(--tw-text-opacity));
+}
+
+.text-red-600 {
+ --tw-text-opacity: 1;
+ color: rgb(220 38 38 / var(--tw-text-opacity));
+}
+
+.text-red-700 {
+ --tw-text-opacity: 1;
+ color: rgb(185 28 28 / var(--tw-text-opacity));
+}
+
.text-red-800 {
--tw-text-opacity: 1;
color: rgb(153 27 27 / var(--tw-text-opacity));
@@ -1320,9 +1386,29 @@ video {
color: rgb(255 255 255 / var(--tw-text-opacity));
}
-.text-gray-600 {
+.text-yellow-700 {
--tw-text-opacity: 1;
- color: rgb(75 85 99 / var(--tw-text-opacity));
+ color: rgb(161 98 7 / var(--tw-text-opacity));
+}
+
+.text-yellow-800 {
+ --tw-text-opacity: 1;
+ color: rgb(133 77 14 / var(--tw-text-opacity));
+}
+
+.text-blue-600 {
+ --tw-text-opacity: 1;
+ color: rgb(37 99 235 / var(--tw-text-opacity));
+}
+
+.text-blue-700 {
+ --tw-text-opacity: 1;
+ color: rgb(29 78 216 / var(--tw-text-opacity));
+}
+
+.text-blue-800 {
+ --tw-text-opacity: 1;
+ color: rgb(30 64 175 / var(--tw-text-opacity));
}
.text-gray-800 {
@@ -1330,19 +1416,8 @@ video {
color: rgb(31 41 55 / var(--tw-text-opacity));
}
-.text-red-500 {
- --tw-text-opacity: 1;
- color: rgb(239 68 68 / var(--tw-text-opacity));
-}
-
-.text-primary-600 {
- --tw-text-opacity: 1;
- color: rgb(214 131 56 / var(--tw-text-opacity));
-}
-
-.text-red-600 {
- --tw-text-opacity: 1;
- color: rgb(220 38 38 / var(--tw-text-opacity));
+.underline {
+ text-decoration-line: underline;
}
.opacity-0 {
@@ -1361,22 +1436,16 @@ video {
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
-.shadow-sm {
- --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
- --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
-}
-
.shadow-md {
--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
-.transition-opacity {
- transition-property: opacity;
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
- transition-duration: 150ms;
+.shadow-sm {
+ --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
+ --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.transition {
@@ -1393,22 +1462,27 @@ video {
transition-duration: 150ms;
}
-.duration-300 {
- transition-duration: 300ms;
+.transition-opacity {
+ transition-property: opacity;
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
+ transition-duration: 150ms;
}
.duration-150 {
transition-duration: 150ms;
}
+.duration-300 {
+ transition-duration: 300ms;
+}
+
.ease-in-out {
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
-.hover\:scale-105:hover {
- --tw-scale-x: 1.05;
- --tw-scale-y: 1.05;
- transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
+.hover\:bg-blue-600:hover {
+ --tw-bg-opacity: 1;
+ background-color: rgb(37 99 235 / var(--tw-bg-opacity));
}
.hover\:bg-gray-100:hover {
@@ -1421,14 +1495,9 @@ video {
background-color: rgb(249 250 251 / var(--tw-bg-opacity));
}
-.hover\:bg-blue-600:hover {
+.hover\:bg-indigo-700:hover {
--tw-bg-opacity: 1;
- background-color: rgb(37 99 235 / var(--tw-bg-opacity));
-}
-
-.hover\:bg-primary-800:hover {
- --tw-bg-opacity: 1;
- background-color: rgb(154 93 38 / var(--tw-bg-opacity));
+ background-color: rgb(67 56 202 / var(--tw-bg-opacity));
}
.hover\:bg-primary-700:hover {
@@ -1436,6 +1505,11 @@ video {
background-color: rgb(184 112 47 / var(--tw-bg-opacity));
}
+.hover\:bg-primary-800:hover {
+ --tw-bg-opacity: 1;
+ background-color: rgb(154 93 38 / var(--tw-bg-opacity));
+}
+
.hover\:text-gray-900:hover {
--tw-text-opacity: 1;
color: rgb(17 24 39 / var(--tw-text-opacity));
@@ -1451,14 +1525,13 @@ video {
color: rgb(184 112 47 / var(--tw-text-opacity));
}
-.hover\:underline:hover {
- text-decoration-line: underline;
+.hover\:text-primary-800:hover {
+ --tw-text-opacity: 1;
+ color: rgb(154 93 38 / var(--tw-text-opacity));
}
-.hover\:shadow-lg:hover {
- --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
- --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
- box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
+.hover\:underline:hover {
+ text-decoration-line: underline;
}
.focus\:border-blue-500:focus {
@@ -1466,6 +1539,11 @@ video {
border-color: rgb(59 130 246 / var(--tw-border-opacity));
}
+.focus\:border-indigo-500:focus {
+ --tw-border-opacity: 1;
+ border-color: rgb(99 102 241 / var(--tw-border-opacity));
+}
+
.focus\:border-primary-500:focus {
--tw-border-opacity: 1;
border-color: rgb(244 149 65 / var(--tw-border-opacity));
@@ -1481,16 +1559,27 @@ video {
outline-offset: 2px;
}
+.focus\:ring-1:focus {
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
+}
+
+.focus\:ring-2:focus {
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
+}
+
.focus\:ring-4:focus {
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
-.focus\:ring-1:focus {
- --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
- --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
- box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
+.focus\:ring-blue-500:focus {
+ --tw-ring-opacity: 1;
+ --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
}
.focus\:ring-gray-200:focus {
@@ -1503,14 +1592,9 @@ video {
--tw-ring-color: rgb(209 213 219 / var(--tw-ring-opacity));
}
-.focus\:ring-blue-500:focus {
+.focus\:ring-indigo-500:focus {
--tw-ring-opacity: 1;
- --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
-}
-
-.focus\:ring-primary-500:focus {
- --tw-ring-opacity: 1;
- --tw-ring-color: rgb(244 149 65 / var(--tw-ring-opacity));
+ --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity));
}
.focus\:ring-primary-300:focus {
@@ -1518,24 +1602,38 @@ video {
--tw-ring-color: rgb(248 185 99 / var(--tw-ring-opacity));
}
+.focus\:ring-primary-500:focus {
+ --tw-ring-opacity: 1;
+ --tw-ring-color: rgb(244 149 65 / var(--tw-ring-opacity));
+}
+
.focus\:ring-primary-600:focus {
--tw-ring-opacity: 1;
--tw-ring-color: rgb(214 131 56 / var(--tw-ring-opacity));
}
+.focus\:ring-offset-2:focus {
+ --tw-ring-offset-width: 2px;
+}
+
.dark\:divide-gray-600:is(.dark *) > :not([hidden]) ~ :not([hidden]) {
--tw-divide-opacity: 1;
border-color: rgb(75 85 99 / var(--tw-divide-opacity));
}
+.dark\:border-gray-600:is(.dark *) {
+ --tw-border-opacity: 1;
+ border-color: rgb(75 85 99 / var(--tw-border-opacity));
+}
+
.dark\:border-gray-700:is(.dark *) {
--tw-border-opacity: 1;
border-color: rgb(55 65 81 / var(--tw-border-opacity));
}
-.dark\:border-gray-600:is(.dark *) {
+.dark\:border-gray-500:is(.dark *) {
--tw-border-opacity: 1;
- border-color: rgb(75 85 99 / var(--tw-border-opacity));
+ border-color: rgb(107 114 128 / var(--tw-border-opacity));
}
.dark\:bg-gray-700:is(.dark *) {
@@ -1558,10 +1656,45 @@ video {
background-color: rgb(214 131 56 / var(--tw-bg-opacity));
}
+.dark\:bg-red-900:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(127 29 29 / var(--tw-bg-opacity));
+}
+
+.dark\:bg-yellow-900:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(113 63 18 / var(--tw-bg-opacity));
+}
+
+.dark\:bg-indigo-500:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(99 102 241 / var(--tw-bg-opacity));
+}
+
+.dark\:bg-blue-900:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(30 58 138 / var(--tw-bg-opacity));
+}
+
+.dark\:bg-gray-600:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(75 85 99 / var(--tw-bg-opacity));
+}
+
+.dark\:bg-primary-500:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(244 149 65 / var(--tw-bg-opacity));
+}
+
.dark\:bg-opacity-80:is(.dark *) {
--tw-bg-opacity: 0.8;
}
+.dark\:text-gray-200:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(229 231 235 / var(--tw-text-opacity));
+}
+
.dark\:text-gray-300:is(.dark *) {
--tw-text-opacity: 1;
color: rgb(209 213 219 / var(--tw-text-opacity));
@@ -1587,6 +1720,16 @@ video {
color: rgb(244 149 65 / var(--tw-text-opacity));
}
+.dark\:text-red-100:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(254 226 226 / var(--tw-text-opacity));
+}
+
+.dark\:text-red-200:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(254 202 202 / var(--tw-text-opacity));
+}
+
.dark\:text-red-400:is(.dark *) {
--tw-text-opacity: 1;
color: rgb(248 113 113 / var(--tw-text-opacity));
@@ -1597,6 +1740,36 @@ video {
color: rgb(255 255 255 / var(--tw-text-opacity));
}
+.dark\:text-yellow-100:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(254 249 195 / var(--tw-text-opacity));
+}
+
+.dark\:text-yellow-200:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(254 240 138 / var(--tw-text-opacity));
+}
+
+.dark\:text-blue-200:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(191 219 254 / var(--tw-text-opacity));
+}
+
+.dark\:text-blue-300:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(147 197 253 / var(--tw-text-opacity));
+}
+
+.dark\:text-blue-400:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(96 165 250 / var(--tw-text-opacity));
+}
+
+.dark\:text-gray-100:is(.dark *) {
+ --tw-text-opacity: 1;
+ color: rgb(243 244 246 / var(--tw-text-opacity));
+}
+
.dark\:placeholder-gray-400:is(.dark *)::-moz-placeholder {
--tw-placeholder-opacity: 1;
color: rgb(156 163 175 / var(--tw-placeholder-opacity));
@@ -1626,6 +1799,16 @@ video {
background-color: rgb(184 112 47 / var(--tw-bg-opacity));
}
+.dark\:hover\:bg-indigo-600:hover:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(79 70 229 / var(--tw-bg-opacity));
+}
+
+.dark\:hover\:bg-primary-600:hover:is(.dark *) {
+ --tw-bg-opacity: 1;
+ background-color: rgb(214 131 56 / var(--tw-bg-opacity));
+}
+
.dark\:hover\:text-primary-500:hover:is(.dark *) {
--tw-text-opacity: 1;
color: rgb(244 149 65 / var(--tw-text-opacity));
@@ -1636,14 +1819,19 @@ video {
color: rgb(255 255 255 / var(--tw-text-opacity));
}
+.dark\:focus\:border-blue-500:focus:is(.dark *) {
+ --tw-border-opacity: 1;
+ border-color: rgb(59 130 246 / var(--tw-border-opacity));
+}
+
.dark\:focus\:border-primary-500:focus:is(.dark *) {
--tw-border-opacity: 1;
border-color: rgb(244 149 65 / var(--tw-border-opacity));
}
-.dark\:focus\:border-blue-500:focus:is(.dark *) {
- --tw-border-opacity: 1;
- border-color: rgb(59 130 246 / var(--tw-border-opacity));
+.dark\:focus\:ring-blue-500:focus:is(.dark *) {
+ --tw-ring-opacity: 1;
+ --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
}
.dark\:focus\:ring-gray-600:focus:is(.dark *) {
@@ -1671,11 +1859,6 @@ video {
--tw-ring-color: rgb(154 93 38 / var(--tw-ring-opacity));
}
-.dark\:focus\:ring-blue-500:focus:is(.dark *) {
- --tw-ring-opacity: 1;
- --tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity));
-}
-
@media (min-width: 640px) {
.sm\:flex {
display: flex;
@@ -1685,6 +1868,22 @@ video {
width: auto;
}
+ .sm\:flex-row {
+ flex-direction: row;
+ }
+
+ .sm\:space-x-2 > :not([hidden]) ~ :not([hidden]) {
+ --tw-space-x-reverse: 0;
+ margin-right: calc(0.5rem * var(--tw-space-x-reverse));
+ margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
+ }
+
+ .sm\:space-y-0 > :not([hidden]) ~ :not([hidden]) {
+ --tw-space-y-reverse: 0;
+ margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
+ margin-bottom: calc(0px * var(--tw-space-y-reverse));
+ }
+
.sm\:rounded-lg {
border-radius: 0.5rem;
}
@@ -1729,6 +1928,10 @@ video {
height: 100vh;
}
+ .md\:w-1\/2 {
+ width: 50%;
+ }
+
.md\:w-1\/4 {
width: 25%;
}
@@ -1737,14 +1940,6 @@ video {
width: 75%;
}
- .md\:w-1\/2 {
- width: 50%;
- }
-
- .md\:grid-cols-2 {
- grid-template-columns: repeat(2, minmax(0, 1fr));
- }
-
.md\:flex-row {
flex-direction: row;
}
@@ -1782,14 +1977,14 @@ video {
order: 2;
}
- .lg\:mt-0 {
- margin-top: 0px;
- }
-
.lg\:mb-10 {
margin-bottom: 2.5rem;
}
+ .lg\:mt-0 {
+ margin-top: 0px;
+ }
+
.lg\:flex {
display: flex;
}
@@ -1802,10 +1997,6 @@ video {
width: auto;
}
- .lg\:grid-cols-3 {
- grid-template-columns: repeat(3, minmax(0, 1fr));
- }
-
.lg\:flex-row {
flex-direction: row;
}
@@ -1834,10 +2025,6 @@ video {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
- .xl\:grid-cols-4 {
- grid-template-columns: repeat(4, minmax(0, 1fr));
- }
-
.xl\:gap-4 {
gap: 1rem;
}