feat: update backup recommendations UI; enhance styles and structure for better user experience

This commit is contained in:
shuaiplus
2026-05-10 01:54:12 +08:00
parent 4e62c90700
commit 2f1b61e883
10 changed files with 504 additions and 79 deletions
+383 -8
View File
@@ -360,7 +360,7 @@
}
.list-item {
@apply rounded-[14px] p-3;
@apply rounded-[14px] py-2 px-3;
}
.row-check {
@@ -432,6 +432,163 @@
@apply p-3.5;
}
.mobile-detail-sheet {
padding-bottom: 10px;
}
.mobile-panel-head {
margin: 6px 8px 8px;
}
.mobile-panel-back {
min-height: 36px;
}
.mobile-detail-sheet > .detail-switch-stage,
.mobile-detail-sheet > .card,
.mobile-detail-sheet > .empty {
margin-left: 8px;
margin-right: 8px;
}
.mobile-detail-sheet .card {
margin-bottom: 8px;
padding: 10px 12px;
border-radius: 14px;
}
.mobile-detail-sheet .card h4 {
margin: 0 0 8px;
font-size: 15px;
line-height: 1.25;
}
.mobile-detail-sheet .detail-title {
font-size: 15px;
line-height: 1.25;
}
.mobile-detail-sheet .section-head {
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 8px;
margin-bottom: 8px;
min-width: 0;
}
.mobile-detail-sheet .section-head h3,
.mobile-detail-sheet .section-head h4 {
margin: 0;
min-width: 0;
}
.mobile-detail-sheet .section-head > .btn.small {
flex: 0 0 auto;
height: 32px;
padding: 0 10px;
font-size: 13px;
}
.mobile-detail-sheet .field {
margin-bottom: 8px;
}
.mobile-detail-sheet .field > span {
margin: 0 0 4px;
font-size: 13px;
line-height: 1.2;
}
.mobile-detail-sheet .field-grid {
gap: 0px;
}
.mobile-detail-sheet .input {
height: 42px;
border-radius: 12px;
padding: 8px 11px;
font-size: 15px;
}
.mobile-detail-sheet select.input {
padding-right: 30px;
background-position:
calc(100% - 15px) calc(50% - 3px),
calc(100% - 9px) calc(50% - 3px);
}
.mobile-detail-sheet .textarea {
min-height: 82px;
}
.mobile-detail-sheet .input-action-wrap .input {
padding-right: 42px;
}
.mobile-detail-sheet .input-icon-btn {
right: 6px;
width: 30px;
height: 30px;
}
.mobile-detail-sheet .website-row {
grid-template-columns: auto minmax(88px, 1fr) minmax(72px, 84px) auto;
gap: 5px;
align-items: center;
margin-bottom: 6px;
padding: 4px;
border-radius: 12px;
}
.mobile-detail-sheet .website-row > * {
grid-column: auto !important;
grid-row: auto !important;
}
.mobile-detail-sheet .website-order-actions {
gap: 2px;
}
.mobile-detail-sheet .website-order-btn {
width: 24px;
min-width: 24px;
height: 19px;
border-radius: 7px;
}
.mobile-detail-sheet .website-match-select {
height: 40px;
min-width: 0;
padding-left: 8px;
padding-right: 24px;
font-size: 12px;
background-position:
calc(100% - 12px) calc(50% - 3px),
calc(100% - 7px) calc(50% - 3px);
background-size: 5px 5px, 5px 5px;
}
.mobile-detail-sheet .website-remove-btn {
width: 30px;
min-width: 30px;
height: 30px;
padding: 0;
gap: 0;
border-radius: 999px;
font-size: 0;
}
.mobile-detail-sheet .website-remove-btn .btn-icon {
margin: 0;
}
.mobile-detail-sheet .attachment-row,
.mobile-detail-sheet .custom-field-card {
padding-top: 7px;
padding-bottom: 7px;
}
.section-head {
@apply flex-col items-start gap-2.5;
}
@@ -666,34 +823,71 @@
@media (max-width: 1180px) {
.backup-grid {
grid-template-columns: 1fr;
gap: 8px;
}
.backup-operations-sidebar,
.backup-destination-sidebar {
.backup-destination-sidebar,
.backup-detail-panel {
position: static;
padding: 12px;
border-radius: 14px;
}
}
@media (max-width: 640px) {
.settings-modules-grid {
gap: 8px;
}
.settings-module {
padding: 10px 12px;
border-radius: 14px;
}
.settings-module h3 {
margin-bottom: 12px;
margin-bottom: 8px;
font-size: 15px;
line-height: 1.25;
}
.settings-module .field,
.auth-card .field {
margin-bottom: 12px;
margin-bottom: 8px;
}
.settings-module .field > span,
.auth-card .field > span {
margin-top: 0;
margin-bottom: 6px;
margin-bottom: 4px;
font-size: 13px;
line-height: 1.2;
}
.settings-module .field-grid,
.auth-card .field-grid,
.session-timeout-fields {
gap: 12px;
gap: 8px;
}
.settings-module .input {
height: 42px;
border-radius: 12px;
padding: 8px 11px;
font-size: 15px;
}
.settings-module select.input {
padding-right: 30px;
background-position:
calc(100% - 15px) calc(50% - 3px),
calc(100% - 9px) calc(50% - 3px);
}
.settings-module .field-help {
margin-top: 5px;
font-size: 12px;
line-height: 1.35;
}
.settings-module .btn,
@@ -701,6 +895,46 @@
margin-top: 2px;
}
.settings-module .actions {
gap: 7px;
}
.settings-module .totp-grid {
gap: 8px;
margin-bottom: 8px;
}
.settings-module .totp-qr {
min-height: 132px;
padding: 8px;
}
.settings-module .totp-qr svg,
.settings-module .totp-qr img {
width: 118px;
height: 118px;
}
.settings-module .sensitive-actions-grid {
gap: 8px;
}
.settings-module .sensitive-action {
padding: 10px;
border-radius: 12px;
}
.settings-module .sensitive-action h4 {
margin-bottom: 4px;
font-size: 14px;
}
.settings-field-note {
margin-bottom: 7px;
font-size: 12px;
line-height: 1.35;
}
.dialog-mask.totp-scan-mask {
display: block;
padding: 0;
@@ -720,6 +954,7 @@
.backup-interval-row {
grid-template-columns: 1fr;
gap: 7px;
}
.backup-browser-row,
@@ -727,9 +962,149 @@
grid-template-columns: 1fr;
}
.backup-destination-top {
align-items: flex-start;
.backup-grid {
gap: 8px;
padding: 0;
}
.backup-operations-sidebar,
.backup-destination-sidebar,
.backup-detail-panel {
padding: 10px 12px;
border-radius: 14px;
}
.backup-operations-sidebar .section-head,
.backup-destination-sidebar .section-head,
.backup-detail-panel .section-head {
flex-direction: row;
align-items: center;
gap: 8px;
margin-bottom: 8px;
}
.backup-detail-panel > .section-head {
flex-direction: column;
align-items: stretch;
}
.backup-detail-panel > .section-head .actions {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 6px;
width: 100%;
}
.backup-detail-panel > .section-head .actions .btn {
height: 36px;
min-width: 0;
padding: 0 8px;
font-size: 12px;
}
.backup-operations-sidebar .section-head h3,
.backup-destination-sidebar .section-head h3,
.backup-detail-panel .section-head h3 {
margin: 0;
font-size: 15px;
line-height: 1.25;
}
.backup-actions-stack,
.backup-destination-list,
.backup-recommendation-list {
gap: 7px;
}
.backup-actions-stack .btn,
.backup-destination-addbar .btn {
height: 38px;
}
.backup-recommendations-disclosure {
margin-top: 8px;
}
.backup-recommendations-summary {
padding: 8px 10px;
border-radius: 12px;
}
.backup-recommendations-body {
padding-top: 8px;
}
.backup-recommendation-group + .backup-recommendation-group {
margin-top: 8px;
}
.backup-recommendation-group-title {
margin-bottom: 6px;
font-size: 13px;
}
.backup-destination-item {
padding: 9px 10px;
border-radius: 12px;
gap: 4px;
}
.backup-destination-meta {
font-size: 12px;
}
.backup-name-row,
.backup-detail-schedule-grid {
gap: 8px;
margin-bottom: 8px;
}
.backup-detail-panel .field {
margin-bottom: 8px;
}
.backup-detail-panel .field > span {
margin: 0 0 4px;
font-size: 13px;
line-height: 1.2;
}
.backup-detail-panel .input {
height: 42px;
border-radius: 12px;
padding: 8px 11px;
font-size: 15px;
}
.backup-detail-panel select.input {
padding-right: 30px;
background-position:
calc(100% - 15px) calc(50% - 3px),
calc(100% - 9px) calc(50% - 3px);
}
.backup-schedule-attachments-row {
margin-bottom: 8px;
}
.backup-option-label {
font-size: 14px;
}
.backup-option-label input[type='checkbox'] {
width: 19px;
height: 19px;
}
.backup-browser-path,
.backup-browser-empty {
padding: 9px 10px;
border-radius: 12px;
}
.backup-destination-top {
align-items: center;
flex-direction: row;
}
.backup-add-chooser {