From d9556c18cabce69eff4b65496aaeda5acf60e4dc Mon Sep 17 00:00:00 2001 From: TekH Date: Fri, 4 Sep 2026 01:07:16 +0200 Subject: [PATCH] =?UTF-8?q?SF-74:=20Server=20wwwroot=20=E2=80=94=20logo=20?= =?UTF-8?q?images=20(DD=5FsignFLOW=5FLOGO.png,=20digital=5Fdata.svg),=20ap?= =?UTF-8?q?p.css=20logo=20CSS=20classes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wwwroot/css/app.css | 54 ++++++++++++++++++ .../wwwroot/img/DD_signFLOW_LOGO.png | Bin 0 -> 7822 bytes .../wwwroot/img/digital_data.svg | 12 ++++ 3 files changed, 66 insertions(+) create mode 100644 EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/img/DD_signFLOW_LOGO.png create mode 100644 EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/img/digital_data.svg diff --git a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/css/app.css b/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/css/app.css index be07c3c8..74741102 100644 --- a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/css/app.css +++ b/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/css/app.css @@ -56,6 +56,42 @@ article { color: red; } +/* ── WASM Boot Loading Overlay ───────────────────────────────────────────── */ +/* Shown immediately on page load, removed once Blazor circuit connects. */ +/* Prevents white/unstyled flash while WASM boots (~1-2s on first load). */ + +#sf-boot-overlay { + position: fixed; + inset: 0; + z-index: 9999; + display: flex; + align-items: center; + justify-content: center; + background: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #7e22ce 100%); + transition: opacity 0.25s ease; + pointer-events: none; /* don't block clicks once fading out */ +} + +.sf-boot-spinner { + display: flex; + flex-direction: column; + align-items: center; + gap: 1.25rem; +} + +.sf-boot-ring { + width: 44px; + height: 44px; + border: 3px solid rgba(255, 255, 255, 0.2); + border-top-color: rgba(255, 255, 255, 0.85); + border-radius: 50%; + animation: sf-boot-spin 0.8s linear infinite; +} + +@keyframes sf-boot-spin { + to { transform: rotate(360deg); } +} + #blazor-error-ui { background: lightyellow; bottom: 0; @@ -333,6 +369,24 @@ article { font-weight: 500; } +/* ── Logos ───────────────────────────────────────────────────────────────── */ +/* Heights are controlled by inline style="height: Xpx" from appsettings.json */ + +.signflow-app-logo { + width: auto; + object-fit: contain; + display: block; + flex-shrink: 0; +} + +.signflow-company-logo { + width: auto; + object-fit: contain; + display: block; + opacity: 0.88; + flex-shrink: 0; +} + /* ── Footer ──────────────────────────────────────────────────────────────── */ .receiver-footer { position: fixed; diff --git a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/img/DD_signFLOW_LOGO.png b/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/img/DD_signFLOW_LOGO.png new file mode 100644 index 0000000000000000000000000000000000000000..3915f1379f4e0971035875b4e7f7aa6d862326fc GIT binary patch literal 7822 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 literal 0 HcmV?d00001 diff --git a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/img/digital_data.svg b/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/img/digital_data.svg new file mode 100644 index 00000000..671d90de --- /dev/null +++ b/EnvelopeGenerator.Server/EnvelopeGenerator.Server/wwwroot/img/digital_data.svg @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file