From 70ce625487b5e0b7540b70de2ae59f0086134a9e Mon Sep 17 00:00:00 2001 From: dax Date: Wed, 5 Aug 2026 17:15:39 +0100 Subject: admin import panel with upload progress + recent photos; app empty-state links to /admin --- public/admin.css | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'public/admin.css') diff --git a/public/admin.css b/public/admin.css index d698076..98dbd09 100644 --- a/public/admin.css +++ b/public/admin.css @@ -115,6 +115,48 @@ button.danger:hover { border-color: var(--danger); background: rgba(252, 165, 16 #tab-graph { display: grid; gap: 14px; } #gq { padding: 12px 14px; } +#tab-import { display: grid; gap: 14px; } +.dropzone { + border: 2px dashed rgba(255, 255, 255, .22); + border-radius: 12px; + padding: 34px 20px; + text-align: center; + cursor: pointer; + outline: none; + transition: border-color .15s, background .15s; +} +.dropzone:hover, .dropzone:focus-visible, .dropzone.drag { + border-color: var(--ring); + background: rgba(125, 211, 252, .06); +} +.dropzone.busy { pointer-events: none; opacity: .6; } +.dropzone .dz-icon { font-size: 30px; line-height: 1; color: var(--ring); } +.dropzone p { margin: 8px 0 0; font-size: 14px; } +.dropzone .dz-note { font-size: 12px; color: var(--muted); } + +.progress { + background: var(--panel); + border: 1px solid rgba(255, 255, 255, .08); + border-radius: 10px; + padding: 12px; + display: grid; + gap: 8px; +} +.bar { height: 6px; background: var(--panel-2); border-radius: 999px; overflow: hidden; } +.bar .fill { height: 100%; width: 0; background: var(--ring); transition: width .2s; } +.bar .fill.indeterminate { width: 30%; animation: slide 1s infinite ease-in-out; } +@keyframes slide { 0% { margin-left: -30%; } 100% { margin-left: 100%; } } +.im-status { margin: 0; font-size: 13px; color: var(--muted); } + +.recent h2 { + font-size: 14px; + font-weight: 500; + letter-spacing: .08em; + text-transform: uppercase; + color: var(--muted); + margin: 0 0 8px; +} + .results { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); -- cgit v1.3.1