Add scanner utility, modal, and stock scan page implementation
This commit is contained in:
@@ -1099,6 +1099,109 @@ button.legend-card:focus-visible {
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.scan-hero {
|
||||
background:
|
||||
radial-gradient(circle at 15% 20%, rgba(80, 180, 140, 0.18), transparent 28rem),
|
||||
linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(245, 250, 255, 0.92));
|
||||
}
|
||||
|
||||
.scan-mode-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
gap: 0.8rem;
|
||||
}
|
||||
|
||||
.scan-mode-card {
|
||||
display: grid;
|
||||
gap: 0.25rem;
|
||||
min-height: 6rem;
|
||||
padding: 1rem;
|
||||
text-align: left;
|
||||
color: inherit;
|
||||
background: rgba(255, 255, 255, 0.74);
|
||||
border: 1px solid var(--lonc-border);
|
||||
border-radius: 1rem;
|
||||
transition:
|
||||
transform 160ms ease,
|
||||
box-shadow 160ms ease,
|
||||
border-color 160ms ease,
|
||||
background-color 160ms ease;
|
||||
}
|
||||
|
||||
.scan-mode-card:hover {
|
||||
transform: translateY(-1px);
|
||||
box-shadow: 0 12px 24px rgba(24, 42, 79, 0.08);
|
||||
}
|
||||
|
||||
.scan-mode-card-active {
|
||||
border-color: rgba(31, 75, 153, 0.42);
|
||||
background: rgba(31, 75, 153, 0.1);
|
||||
box-shadow: inset 0 0 0 1px rgba(31, 75, 153, 0.18);
|
||||
}
|
||||
|
||||
.scan-candidate-list {
|
||||
max-height: 24rem;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.scan-modal-mode-list {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.45rem;
|
||||
}
|
||||
|
||||
.scan-modal-mode-btn {
|
||||
border-radius: 999px;
|
||||
}
|
||||
|
||||
.scan-modal-mode-btn-active {
|
||||
color: #fff;
|
||||
background: var(--lonc-primary);
|
||||
border-color: var(--lonc-primary);
|
||||
}
|
||||
|
||||
.scan-label-mode-list {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.45rem;
|
||||
}
|
||||
|
||||
.scan-label-mode-btn {
|
||||
border-radius: 999px;
|
||||
}
|
||||
|
||||
.scan-label-mode-btn-active {
|
||||
color: #fff;
|
||||
background: var(--lonc-primary-dark);
|
||||
border-color: var(--lonc-primary-dark);
|
||||
}
|
||||
|
||||
.scan-result-card {
|
||||
padding: 1.25rem;
|
||||
border-radius: 1.25rem;
|
||||
border: 1px solid var(--lonc-border);
|
||||
background:
|
||||
linear-gradient(135deg, rgba(235, 243, 255, 0.78), rgba(255, 255, 255, 0.92));
|
||||
}
|
||||
|
||||
.empty-state-inline {
|
||||
display: grid;
|
||||
min-height: 12rem;
|
||||
place-items: center;
|
||||
padding: 2rem;
|
||||
color: var(--lonc-muted);
|
||||
text-align: center;
|
||||
border: 1px dashed rgba(31, 75, 153, 0.22);
|
||||
border-radius: 1.25rem;
|
||||
background: rgba(255, 255, 255, 0.58);
|
||||
}
|
||||
|
||||
@media (max-width: 575.98px) {
|
||||
.scan-mode-grid {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 991.98px) {
|
||||
.navbar {
|
||||
backdrop-filter: blur(10px);
|
||||
|
||||
Reference in New Issue
Block a user