Files
HouseHub/global.css
T
2026-01-26 12:02:15 +01:00

288 lines
4.8 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* === RESET SIMPLE === */
*,
*::before,
*::after {
box-sizing: border-box;
}
/* === BASE HTML / BODY === */
html,
body {
height: 100%;
}
body {
margin: 0;
font-family:
system-ui,
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
sans-serif;
background: #f5f5f5;
color: #222;
}
/* === LAYOUT GLOBAL (structure page + footer collé en bas) === */
.pf-page {
min-height: 100vh; /* au minimum la hauteur de la fenêtre */
display: flex;
flex-direction: column;
}
.pf-main {
flex: 1 0 auto;
}
.pf-footer {
flex-shrink: 0;
}
/* === LAYOUT CONTAINER / HEADER / NAV / FOOTER === */
.pf-container {
max-width: 1440px;
margin-left: 6px;
}
.pf-header {
background: #243b53;
color: #fff;
padding: 8px 0;
}
.pf-header-content {
display: flex;
align-items: center;
justify-content: space-between;
}
.pf-logo {
font-weight: 600;
font-size: 18px;
}
.pf-nav {
display: flex;
gap: 16px;
}
.pf-nav-link {
color: #d9e2ec;
text-decoration: none;
font-size: 14px;
padding: 4px 8px;
border-radius: 4px;
}
.pf-nav-link:hover {
background: rgba(255, 255, 255, 0.1);
}
.pf-nav-link--active {
background: #102a43;
color: #f0f4f8;
}
.pf-main {
padding: 24px 10px 48px;
}
.pf-section {
margin-top: 32px;
}
.pf-section--panel {
background: #fff;
border-radius: 8px;
padding: 10px 10px 10px 10px;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
}
.pf-footer {
border-top: 1px solid #d9e2ec;
padding: 8px 0;
font-size: 12px;
color: #627d98;
background: #f0f4f8;
}
/* Sur certaines pages (comme la home), on pourra override le header via une classe de body */
/* === FLEX & CARDS GÉNÉRIQUES === */
.pf-flex {
display: flex;
}
.pf-flex--wrap {
flex-wrap: wrap;
}
.pf-gap-lg {
gap: 24px;
}
.pf-card {
background: #f8fafc;
border-radius: 8px;
border: 1px solid #d9e2ec;
padding: 12px 14px;
}
.pf-card--small {
min-width: 240px;
max-width: 260px;
}
/* Large card (utilisée pour le tableau des vacances) */
.pf-card.pf-card--wide {
min-width: 400px;
flex: 1 1 400px;
}
.pf-card-title {
margin: 0 0 8px;
font-size: 15px;
}
.pf-card-body {
font-size: 13px;
}
/* === TABLES GÉNÉRIQUES === */
.pf-table-wrapper {
max-height: 600px;
overflow: auto;
border-radius: 12px;
background: #ffffff;
border: 1px solid #d9e2ec;
box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}
.pf-table {
width: 100%;
border-collapse: collapse;
font-size: 12px;
}
.pf-table th,
.pf-table td {
border: 1px solid #d9e2ec;
padding: 4px 6px;
text-align: center;
position: relative;
}
.pf-table thead th {
position: sticky;
top: 0;
background: #f0f4f8;
z-index: 1;
}
.pf-table--compact th,
.pf-table--compact td {
padding: 3px 4px;
}
/* === FORMULAIRES / TEXTE GÉNÉRIQUE === */
label {
font-size: 12px;
}
input[type="number"] {
width: 150px;
font-size: 11px;
padding: 2px 3px;
}
/* Récapitulatif global (utilisé dans le calendrier mais style simple) */
#globalSummary p {
margin: 4px 0;
font-size: 12px;
}
#globalSummary strong {
font-weight: 600;
color: #243b53;
}
/* === Mobile Comfort: header et éléments plus lisibles/rapprochés === */
@media (pointer: coarse), (max-width: 780px) {
/* Container: remplace le léger décalage par un padding homogène */
.pf-container {
max-width: none; /* laisse respirer sur mobile */
margin-left: 0;
padding: 0 12px;
}
/* Header global */
.pf-header {
padding: 12px 0; /* plus de hauteur */
}
.pf-header-content {
padding: 0 12px;
gap: 10px; /* rapproche un peu les éléments */
}
.pf-logo {
font-size: 20px; /* plus lisible */
}
/* Navigation */
.pf-nav {
gap: 8px; /* éléments un peu plus rapprochés */
overflow-x: auto; /* scroll horizontal si trop ditems */
-webkit-overflow-scrolling: touch;
padding-bottom: 6px; /* espace pour le pouce quand ça scroll */
}
.pf-nav::-webkit-scrollbar {
display: none;
}
.pf-nav-link {
font-size: 16px; /* >=16px évite le zoom iOS */
padding: 10px 12px;
min-height: 44px; /* cible tactile recommandée */
border-radius: 8px;
}
/* Contenu principal et sections */
.pf-main {
padding: 16px 12px 28px; /* un peu plus dense */
}
.pf-section {
margin-top: 16px; /* sections rapprochées */
}
.pf-section--panel {
padding: 12px; /* contenu plus confortable au doigt */
border-radius: 10px;
}
/* Tables: taille + padding légèrement augmentés */
.pf-table {
font-size: 13.5px;
}
.pf-table th,
.pf-table td {
padding: 6px 6px;
}
.pf-table--compact th,
.pf-table--compact td {
padding: 6px 6px;
}
/* Formulaires: éviter le zoom iOS et lisibilité */
label {
font-size: 14px;
}
input[type="number"] {
width: 100%;
max-width: 220px;
font-size: 16px; /* >=16px évite le zoom iOS */
padding: 8px 10px;
}
}