diff --git a/app.py b/app.py index 91181e2..fe55ffd 100644 --- a/app.py +++ b/app.py @@ -1857,6 +1857,48 @@ def public_frontend(): .chat-overlay { bottom:5rem; right:0.5rem; width:calc(100vw - 1rem); max-height:60vh; } .chat-bubble { bottom:1rem; right:1rem; } } + + /* ── Submit Overlay ────────────────────────────────────────── */ + .submit-bubble { position:fixed; bottom:1.5rem; right:5.5rem; z-index:9999; + width:56px; height:56px; border-radius:50%; background:#28a745; + color:#fff; border:none; cursor:pointer; font-size:1.8rem; font-weight:300; line-height:1; + box-shadow:0 6px 24px rgba(0,0,0,0.25); transition:transform 0.2s,box-shadow 0.2s; + display:flex; align-items:center; justify-content:center; } + .submit-bubble:hover { transform:scale(1.08); box-shadow:0 8px 32px rgba(0,0,0,0.35); } + .submit-bubble:active { transform:scale(0.95); } + + .submit-overlay { position:fixed; bottom:5.5rem; right:1.5rem; z-index:9998; + width:400px; max-width:calc(100vw - 2rem); max-height:70vh; + background:#fff; border-radius:18px; box-shadow:0 12px 48px rgba(0,0,0,0.22); + display:none; flex-direction:column; overflow:hidden; } + .submit-overlay.open { display:flex; } + .submit-header { background:#28a745; color:#fff; padding:0.9rem 1.2rem; + font-weight:700; font-size:0.9rem; display:flex; align-items:center; justify-content:space-between; } + .submit-header button { background:none; border:none; color:#fff; font-size:1.3rem; + cursor:pointer; opacity:0.8; padding:0; line-height:1; } + .submit-header button:hover { opacity:1; } + .submit-body { flex:1; overflow-y:auto; padding:1.2rem; max-height:55vh; background:#fafafa; } + .submit-body .hint { font-size:0.75rem; color:#888; margin-bottom:1rem; line-height:1.5; } + .submit-body label { display:block; font-size:0.7rem; font-weight:600; color:#555; + text-transform:uppercase; letter-spacing:0.03em; margin-bottom:0.2rem; margin-top:0.8rem; } + .submit-body label:first-of-type { margin-top:0; } + .submit-body input, .submit-body textarea { width:100%; border:1.5px solid #ddd; + border-radius:10px; padding:0.55rem 0.8rem; font-size:0.82rem; font-family:inherit; + outline:none; transition:border-color 0.15s; } + .submit-body input:focus, .submit-body textarea:focus { border-color:#28a745; } + .submit-body textarea { resize:vertical; min-height:70px; } + .submit-body input[type="file"] { padding:0.4rem 0; border:none; font-size:0.78rem; } + .submit-body .submit-btn { width:100%; background:#28a745; color:#fff; border:none; + border-radius:10px; padding:0.7rem; font-weight:700; font-size:0.88rem; + cursor:pointer; margin-top:1rem; transition:background 0.15s; font-family:inherit; } + .submit-body .submit-btn:hover { background:#1e7e34; } + .submit-body .submit-btn:disabled { opacity:0.5; cursor:default; } + .submit-body .status-msg { text-align:center; font-size:0.8rem; margin-top:0.6rem; + min-height:1.2rem; } + @media(max-width:600px) { + .submit-overlay { bottom:5rem; right:0.5rem; width:calc(100vw - 1rem); max-height:65vh; } + .submit-bubble { bottom:1rem; right:5rem; } + }
@@ -1887,6 +1929,9 @@ def public_frontend(): 💬 + + + + + + +