snapshot: preserve session hardening and account surface

This commit is contained in:
Md Bayazid Bostame
2026-03-27 01:11:29 +01:00
parent bbc9b7b646
commit 8d228723f9
29 changed files with 825 additions and 42 deletions

View File

@@ -180,6 +180,143 @@
align-items: center;
}
.app-user-menu {
position: relative;
}
.app-user-trigger {
list-style: none;
display: inline-flex;
align-items: center;
gap: 10px;
min-height: 44px;
padding: 6px 10px 6px 6px;
border: 1px solid var(--app-line);
border-radius: 999px;
background: rgba(248, 251, 255, 0.92);
color: #1f3a5f;
cursor: pointer;
transition:
border-color var(--motion-fast) var(--motion-ease),
background-color var(--motion-fast) var(--motion-ease),
transform var(--motion-fast) var(--motion-ease),
box-shadow var(--motion-fast) var(--motion-ease);
}
.app-user-trigger::-webkit-details-marker {
display: none;
}
.app-user-trigger:hover {
transform: translateY(-1px);
}
.app-user-menu[open] .app-user-trigger {
border-color: rgba(0, 0, 120, 0.22);
box-shadow: 0 0 0 4px rgba(0, 0, 120, 0.08);
}
.app-user-avatar {
width: 32px;
height: 32px;
border-radius: 50%;
display: inline-flex;
align-items: center;
justify-content: center;
background: linear-gradient(180deg, var(--app-brand-blue), #1d3ca8);
color: #fff;
font-size: 11px;
font-weight: 800;
letter-spacing: 0.04em;
text-transform: uppercase;
}
.app-user-copy {
display: grid;
gap: 1px;
text-align: left;
}
.app-user-copy strong {
font-size: 13px;
line-height: 1.2;
}
.app-user-copy span {
color: #64748b;
font-size: 11px;
line-height: 1.2;
}
.app-user-caret {
color: #64748b;
font-size: 12px;
}
.app-user-panel {
position: absolute;
top: calc(100% + 10px);
right: 0;
min-width: 220px;
padding: 10px;
border: 1px solid rgba(217, 227, 238, 0.96);
border-radius: 18px;
background: rgba(255, 255, 255, 0.98);
box-shadow: 0 24px 44px rgba(18, 34, 56, 0.16);
display: grid;
gap: 4px;
z-index: 40;
}
.app-user-panel-head {
display: grid;
gap: 2px;
padding: 4px 6px 8px;
margin-bottom: 4px;
border-bottom: 1px solid rgba(217, 227, 238, 0.85);
}
.app-user-panel-head strong {
color: #132238;
font-size: 13px;
line-height: 1.2;
}
.app-user-panel-head span {
color: #64748b;
font-size: 12px;
line-height: 1.4;
}
.app-user-panel a,
.app-user-panel button {
width: 100%;
border: 0;
border-radius: 12px;
background: transparent;
color: #1f3a5f;
font: inherit;
font-size: 13px;
font-weight: 700;
text-align: left;
text-decoration: none;
padding: 10px 12px;
cursor: pointer;
transition:
background-color var(--motion-fast) var(--motion-ease),
color var(--motion-fast) var(--motion-ease);
}
.app-user-panel a:hover,
.app-user-panel button:hover {
background: #f4f8ff;
color: var(--app-brand-blue);
}
.app-user-panel form {
margin: 0;
}
.app-lang-switch {
display: flex;
gap: 6px;

View File

@@ -47,6 +47,58 @@ body {
line-height: 1.45;
}
.account-card {
width: min(560px, 100%);
}
.account-grid {
display: grid;
gap: 10px;
margin: 0 0 16px;
}
.account-row {
display: flex;
justify-content: space-between;
gap: 16px;
align-items: baseline;
padding: 10px 12px;
border: 1px solid #d9e3f0;
border-radius: 12px;
background: #f9fbff;
}
.account-row span {
color: #607086;
font-size: 13px;
}
.account-row strong {
color: #132238;
font-size: 14px;
text-align: right;
}
.account-actions {
display: flex;
gap: 10px;
}
.account-actions .btn {
width: auto;
}
.account-actions form {
margin: 0;
}
.hint {
margin-top: 6px;
color: #8a5a00;
font-size: 12px;
line-height: 1.4;
}
.field {
margin-bottom: 12px;
}
@@ -114,4 +166,21 @@ body {
padding: 18px;
border-radius: 16px;
}
.account-row {
flex-direction: column;
align-items: flex-start;
}
.account-row strong {
text-align: left;
}
.account-actions {
flex-direction: column;
}
.account-actions .btn {
width: 100%;
}
}