mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-06-25 16:19:19 +02:00
Split CSS into named layers: reset → colors → typography → base →
components → utilities. Each component has one unique root class in
its own file. No cross-component overrides.
New files:
- reset.css (modern-normalize base — matches project's prior reset)
- colors.css (all colour variables)
- typography.css (font faces, size/space scale, font-family vars)
- base.css (≤ 5 site-wide rules: layout, headings)
- utilities.css (sr-only, skip-link, reduced-motion)
- style.css (root @import file loading all layers)
- components/{links,focus,forms,tables,dialog,details,media,
buttons,badges,toasts,pagination,header,search}.css
Existing files:
- variables.css → backward-compat wrapper (imports colors + typography)
- common.css → backward-compat wrapper (imports style.css)
- Page files (admin, public, form, tfe, apropos, repertoire, system,
file-access) → removed redundant @import url(./variables.css)
- head.php → loads style.css instead of modern-normalize + common.css
- partage pages → load style.css
Fixes vs initial refactoring:
- reset.css: use modern-normalize base (not Tailwind Preflight) to
avoid border/list/heading regressions from aggressive defaults
- components/search.css: restore !important flags on input styles
(needed to override forms.css base input selectors)
- acces.php: add toast feedback on password copy button
Cleaned up duplicate status-badge/toast definitions from admin.css
(now live in components/badges.css and components/toast.css).
92 lines
3.7 KiB
CSS
92 lines
3.7 KiB
CSS
/* ============================================================
|
|
TYPOGRAPHY — Font faces, font-size + line-height scale,
|
|
font-family variables. All font-size values use named
|
|
variables; never write raw rem/px inline.
|
|
============================================================ */
|
|
|
|
/* ── Font faces ─────────────────────────────────────────────────────── */
|
|
|
|
@font-face {
|
|
font-family: "Ductus";
|
|
src: url("../fonts/DuctusRegular.otf") format("opentype");
|
|
font-style: normal;
|
|
font-weight: 398;
|
|
font-display: swap;
|
|
}
|
|
|
|
@font-face {
|
|
font-family: "BBBDMSans";
|
|
src: url("../fonts/BBBDMSans-Light.otf") format("opentype");
|
|
font-style: normal;
|
|
font-weight: 298;
|
|
font-display: swap;
|
|
}
|
|
|
|
@font-face {
|
|
font-family: "BBBDMSans";
|
|
src: url("/assets/fonts/BBBDMSans-Regular.otf") format("opentype");
|
|
font-style: normal;
|
|
font-weight: 398;
|
|
font-display: swap;
|
|
}
|
|
|
|
@font-face {
|
|
font-family: "BBBDMSans";
|
|
src: url("../fonts/BBBDMSans-Medium.otf") format("opentype");
|
|
font-style: normal;
|
|
font-weight: 498;
|
|
font-display: swap;
|
|
}
|
|
|
|
@font-face {
|
|
font-family: "BBBDMSans";
|
|
src: url("../fonts/BBBDMSans-Bold.otf") format("opentype");
|
|
font-style: normal;
|
|
font-weight: 698;
|
|
font-display: swap;
|
|
}
|
|
|
|
/* ── Named font-size scale ──────────────────────────────────────────── */
|
|
/* @link https://utopia.fyi/type/calculator?c=360,18,1.2,1240,20,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */
|
|
|
|
:root {
|
|
--step--2: clamp(0.7813rem, 0.7736rem + 0.0341vw, 0.8rem);
|
|
--step--1: clamp(0.9375rem, 0.9119rem + 0.1136vw, 1rem);
|
|
--step-0: clamp(1.125rem, 1.0739rem + 0.2273vw, 1.25rem);
|
|
--step-1: clamp(1.35rem, 1.2631rem + 0.3864vw, 1.5625rem);
|
|
--step-2: clamp(1.62rem, 1.4837rem + 0.6057vw, 1.9531rem);
|
|
--step-3: clamp(1.944rem, 1.7405rem + 0.9044vw, 2.4414rem);
|
|
--step-4: clamp(2.3328rem, 2.0387rem + 1.3072vw, 3.0518rem);
|
|
--step-5: clamp(2.7994rem, 2.384rem + 1.8461vw, 3.8147rem);
|
|
|
|
/* ── Named spacing scale ─────────────────────────────────────────── */
|
|
/* @link https://utopia.fyi/space/calculator?c=360,18,1.2,1240,20,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */
|
|
|
|
--space-3xs: clamp(0.3125rem, 0.3125rem + 0vw, 0.3125rem);
|
|
--space-2xs: clamp(0.5625rem, 0.5369rem + 0.1136vw, 0.625rem);
|
|
--space-xs: clamp(0.875rem, 0.8494rem + 0.1136vw, 0.9375rem);
|
|
--space-s: clamp(1.125rem, 1.0739rem + 0.2273vw, 1.25rem);
|
|
--space-m: clamp(1.6875rem, 1.6108rem + 0.3409vw, 1.875rem);
|
|
--space-l: clamp(2.25rem, 2.1477rem + 0.4545vw, 2.5rem);
|
|
--space-xl: clamp(3.375rem, 3.2216rem + 0.6818vw, 3.75rem);
|
|
--space-2xl: clamp(4.5rem, 4.2955rem + 0.9091vw, 5rem);
|
|
--space-3xl: clamp(6.75rem, 6.4432rem + 1.3636vw, 7.5rem);
|
|
|
|
/* One-up pairs */
|
|
--space-3xs-2xs: clamp(0.3125rem, 0.1847rem + 0.5682vw, 0.625rem);
|
|
--space-2xs-xs: clamp(0.5625rem, 0.4091rem + 0.6818vw, 0.9375rem);
|
|
--space-xs-s: clamp(0.875rem, 0.7216rem + 0.6818vw, 1.25rem);
|
|
--space-s-m: clamp(1.125rem, 0.8182rem + 1.3636vw, 1.875rem);
|
|
--space-m-l: clamp(1.6875rem, 1.3551rem + 1.4773vw, 2.5rem);
|
|
--space-l-xl: clamp(2.25rem, 1.6364rem + 2.7273vw, 3.75rem);
|
|
--space-xl-2xl: clamp(3.375rem, 2.7102rem + 2.9545vw, 5rem);
|
|
--space-2xl-3xl: clamp(4.5rem, 3.2727rem + 5.4545vw, 7.5rem);
|
|
|
|
/* Custom pairs */
|
|
--space-s-l: clamp(1.125rem, 0.5625rem + 2.5vw, 2.5rem);
|
|
|
|
/* Font families */
|
|
--font-body: "BBBDMSans", sans-serif;
|
|
--font-display: "Ductus", sans-serif;
|
|
}
|