diff --git a/app.py b/app.py index 7704c7d..9fdf10b 100644 --- a/app.py +++ b/app.py @@ -1812,11 +1812,11 @@ def public_frontend(): .story-date { color:#999; font-size:0.7rem; margin-left:auto; } .story-time { font-size:0.7rem; color:#666; font-weight:500; } .story-time-rel { color:#dc3545; font-weight:700; } - .story-time-overlay { position:absolute; bottom:8px; left:8px; z-index:5; background:rgba(255,255,255,0.28); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); color:#dc3545; padding:0.3rem 0.65rem; border-radius:10px; font-size:0.8rem; font-weight:700; letter-spacing:0.02em; line-height:1.3; box-shadow:0 2px 8px rgba(0,0,0,0.08); } + .story-time-overlay { position:absolute; top:8px; left:8px; z-index:5; background:rgba(255,255,255,0.28); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); color:#dc3545; padding:0.3rem 0.65rem; border-radius:10px; font-size:0.8rem; font-weight:700; letter-spacing:0.02em; line-height:1.3; box-shadow:0 2px 8px rgba(0,0,0,0.08); } .story-time-overlay .story-time-rel { color:#dc3545; } .story-preview { display:none; } - .text-only .story-preview { display:block; font-size:0.8rem; line-height:1.4; color:#444; } - .text-only .card-content { padding-top:0.4rem; } + .text-only .story-preview { display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipsis; font-size:0.8rem; line-height:1.4; color:#444; margin-bottom:0.35rem; } + .text-only .card-content { padding:0.55rem 0.85rem 0.65rem; } /* Frontend filter bar */ .frontend-filter { max-width:1100px; margin:1rem auto 0; padding:0 1.5rem; display:flex; gap:0.4rem; flex-wrap:wrap; align-items:center; } @@ -1950,10 +1950,12 @@ def public_frontend(): .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; } - .capture-row { display:flex; gap:0.8rem; margin-top:0.3rem; justify-content:center; } - .capture-btn { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0.2rem; background:#fff; border:2px solid #ddd; border-radius:50%; width:68px; height:68px; cursor:pointer; transition:all 0.15s; -webkit-tap-highlight-color:transparent; touch-action:manipulation; padding:0; } + .capture-row { display:flex; gap:1.4rem; margin-top:0.3rem; justify-content:center; align-items:flex-start; } + .capture-item { display:flex; flex-direction:column; align-items:center; gap:0.4rem; } + .capture-btn, label.capture-btn { display:flex; align-items:center; justify-content:center; background:#fff; border:2px solid #ddd; border-radius:50%; width:68px; height:68px; cursor:pointer; transition:all 0.15s; -webkit-tap-highlight-color:transparent; touch-action:manipulation; padding:0; } + .capture-btn svg { display:block; } .capture-btn:active { transform:scale(0.92); background:#f0f0f0; border-color:#20228a; } - .capture-label { font-size:0.6rem; font-weight:600; color:#888; text-transform:uppercase; letter-spacing:0.04em; } + .capture-label { font-size:0.62rem; font-weight:600; color:#888; text-transform:uppercase; letter-spacing:0.04em; text-align:center; }
@@ -2024,21 +2026,27 @@ def public_frontend():