Files
ObsiGate/frontend/style.css
T
bruno 66039028a5
CI / lint (push) Failing after 2s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / e2e (push) Has been skipped
CI / security (push) Failing after -8s
feat: panneau A propos elegant + retrait Editor POC
- Remplace Editor POC par A propos (sparkles) dans le menu header
- Modale About avec animation fade+scale, logo SVG, hero gradient
- Stats live: fichiers, vaults (API /health), tests (285)
- Stack techno: 12 badges (FastAPI, vanilla JS, Docker, etc.)
- Footer: date livraison, blague aleatoire (10 variantes humour)
- Touche d'humour: git push --force accidentels, CSS > backend
- Fermeture: bouton X, clic overlay, Escape
- initAboutModal dans sync.js + config.js export
2026-06-16 07:37:39 -04:00

97 lines
3.3 KiB
CSS

/* ── About Modal ── */
.about-overlay {
position: fixed; inset: 0; z-index: 1000;
background: rgba(0,0,0,0.7); backdrop-filter: blur(6px);
display: none; align-items: center; justify-content: center;
}
.about-overlay.active { display: flex; }
.about-modal {
background: var(--bg-secondary);
border: 1px solid var(--border-md);
border-radius: 16px;
width: 480px; max-width: 92vw; max-height: 90vh;
overflow-y: auto;
position: relative;
box-shadow: 0 20px 60px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.05);
animation: about-in 0.35s ease;
}
@keyframes about-in {
from { opacity: 0; transform: translateY(20px) scale(0.97); }
to { opacity: 1; transform: translateY(0) scale(1); }
}
.about-close {
position: absolute; top: 12px; right: 14px;
background: var(--bg-hover); border: none; color: var(--text-secondary);
width: 30px; height: 30px; border-radius: 8px; font-size: 18px;
cursor: pointer; display: flex; align-items: center; justify-content: center;
transition: background 0.15s, color 0.15s; z-index: 1;
}
.about-close:hover { background: var(--danger-bg); color: var(--danger); }
.about-hero {
text-align: center; padding: 36px 24px 28px;
background: linear-gradient(160deg, var(--accent-bg) 0%, transparent 60%);
border-bottom: 1px solid var(--border);
}
.about-logo { margin-bottom: 14px; display: inline-block; }
.about-title {
font-size: 1.6rem; font-weight: 700; color: var(--text-primary);
letter-spacing: -0.5px; margin-bottom: 6px;
}
.about-tagline {
font-size: 0.85rem; color: var(--text-secondary); line-height: 1.5;
margin-bottom: 10px;
}
.about-version {
display: inline-block; padding: 3px 12px;
background: var(--accent); color: #fff;
font-size: 0.7rem; font-weight: 600; font-family: var(--mono);
border-radius: 20px; letter-spacing: 0.5px;
}
.about-body { padding: 20px 24px 24px; }
.about-stats {
display: flex; gap: 0; justify-content: center;
margin-bottom: 20px;
}
.about-stat {
flex: 1; text-align: center; padding: 12px 8px;
border-right: 1px solid var(--border);
}
.about-stat:last-child { border-right: none; }
.about-stat-value {
display: block; font-size: 1.5rem; font-weight: 700;
color: var(--accent); font-family: var(--mono);
}
.about-stat-label {
font-size: 0.65rem; color: var(--text-muted);
text-transform: uppercase; letter-spacing: 0.6px; margin-top: 2px;
}
.about-stack { margin-bottom: 18px; }
.about-stack h3 {
font-size: 0.7rem; color: var(--text-muted); text-transform: uppercase;
letter-spacing: 0.8px; margin-bottom: 10px;
}
.about-stack-grid {
display: flex; flex-wrap: wrap; gap: 6px;
}
.about-stack-badge {
padding: 3px 10px; font-size: 0.68rem;
background: var(--bg-hover); color: var(--text-secondary);
border: 1px solid var(--border); border-radius: 6px;
font-family: var(--mono);
}
.about-footer { border-top: 1px solid var(--border); padding-top: 14px; }
.about-meta {
display: flex; gap: 16px; font-size: 0.7rem; color: var(--text-muted);
margin-bottom: 10px; flex-wrap: wrap;
}
.about-meta strong { color: var(--text-secondary); font-family: var(--mono); font-size: 0.68rem; }
.about-joke {
font-size: 0.7rem; color: var(--text-muted); font-style: italic;
margin-bottom: 8px; opacity: 0.7;
}
.about-copy {
font-size: 0.65rem; color: var(--text-muted); opacity: 0.5;
}
.about-copy code { font-family: var(--mono); font-size: 0.6rem; }