/* Thème lanaworks_v2 : DA du CV (gris froid, orange #fe5b2a, Archivo, filets 1px, angles droits).
   Hérite de forgejo-light ; on ne redéfinit que la palette, l'accent et le style. */
@import "./theme-forgejo-light.css";

@font-face{font-family:"Archivo";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/archivo-v2-latin.woff2") format("woff2")}
@font-face{font-family:"Archivo Narrow";font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/archivo-narrow-latin.woff2") format("woff2")}

:root {
	--fonts-proportional: "Archivo", "Helvetica Neue", Arial, sans-serif;
	--lw-narrow: "Archivo Narrow", "Archivo", Arial, sans-serif;
	--lw-accent: #fe5b2a;
	--lw-ink: #0c0c0c;
	--lw-line: #c3c4c8;
	--lw-dark: #18191b;

	/* échelle neutre du CV */
	--zinc-50: #f6f6f7;
	--zinc-100: #eff0f1;
	--zinc-150: #e3e4e6;
	--zinc-200: #c3c4c8;
	--zinc-300: #a3a4a8;
	--zinc-400: #85868b;
	--zinc-500: #65666a;
	--zinc-600: #47484b;
	--zinc-700: #2f3032;
	--zinc-800: #222326;
	--zinc-900: #0c0c0c;

	--color-body: #eff0f1;
	--color-text: #2f3032;
	--color-text-dark: #0c0c0c;
	--color-text-light: #47484b;
	--color-text-light-1: #65666a;
	--color-text-light-2: #65666a;
	--color-secondary: #c3c4c8;
	--color-nav-bg: #eff0f1;
	--color-header-wrapper: #eff0f1;
	--color-footer: #18191b;
	--color-box-header: #e3e4e6;
	--color-box-body: #f6f6f7;
	--color-menu: #eff0f1;
	--color-card: #f6f6f7;
	--color-input-background: #ffffff;
	--color-hover: #e6e7e9;
	--color-button: #e3e4e6;

	/* orange assombri : 4.5:1 sur le fond pour les liens ; l'orange vif sert aux survols */
	--color-primary: #c2410c;
	--color-primary-contrast: #ffffff;

	--border-radius: 0;
	--border-radius-medium: 0;
	--border-radius-full: 0;
}

html, body { background: var(--color-body); -webkit-font-smoothing: antialiased; }
body { font-weight: 500; }

/* titres : majuscules serrées comme le CV */
h1, h2, .ui.header { letter-spacing: -.02em; }
.page-content h1, .repository.file.list .repo-title, .home h1 {
	text-transform: uppercase; letter-spacing: -.035em; font-weight: 500; line-height: .95; color: var(--lw-ink);
}

/* libellés : Archivo Narrow, capitales, interlettrage */
.ui.label, .ui.menu .item, .ui.tabular.menu .item, .ui.secondary.pointing.menu .item,
.ui.buttons .button, .ui.button, .secondary.nav .item, #navbar .item, .page-footer,
.ui.table > thead > tr > th, .repo-header .label {
	font-family: var(--lw-narrow); font-size: .75rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
}
.ui.button { font-size: .75rem; }

/* barre de navigation : cellules séparées par des filets */
#navbar { background: var(--color-nav-bg); border-bottom: 1px solid var(--lw-line); min-height: 3.25rem; }
#navbar .item { border-right: 1px solid var(--lw-line); color: var(--lw-ink); transition: color .2s, background .2s; }
#navbar .item:hover, #navbar .item.active { background: transparent; color: var(--lw-accent); }

/* boutons : encre pleine, orange au survol (cv-btn) */
.ui.primary.button, .ui.primary.buttons .button {
	background: var(--lw-ink); color: #eff0f1; border-radius: 0; transition: background .2s;
}
.ui.primary.button:hover, .ui.primary.button:focus, .ui.primary.buttons .button:hover {
	background: var(--lw-accent); color: #fff;
}
.ui.button { border-radius: 0; box-shadow: none; }
.ui.basic.button:hover, .ui.button:hover { color: var(--lw-accent); }

/* panneaux et tableaux : filets nets, pas d'ombres */
.ui.segment, .ui.attached.segment, .ui.attached.header, .ui.menu, .ui.card, .ui.cards > .card,
.ui.table, .ui.dropdown .menu, .ui.popup { box-shadow: none; border-color: var(--lw-line); border-radius: 0; }
.ui.attached.header { background: var(--color-box-header); text-transform: uppercase; font-family: var(--lw-narrow); font-size: .8125rem; letter-spacing: .04em; }
.flex-list > .flex-item, .ui.table tbody tr { transition: background .25s; }
.flex-list > .flex-item:hover, .ui.table tbody tr:hover { background: var(--color-hover); }

/* champs : soulignés, comme le formulaire de contact */
input:not([type=checkbox]):not([type=radio]), textarea, .ui.input > input, .ui.form input, .ui.form textarea, .ui.selection.dropdown {
	border-radius: 0; box-shadow: none;
}
input:focus, textarea:focus, .ui.form input:focus, .ui.form textarea:focus, .ui.selection.dropdown:focus {
	border-color: var(--lw-ink) !important; outline: 0;
}
input:user-invalid, textarea:user-invalid { border-color: var(--lw-accent) !important; }

/* pied de page sombre */
.page-footer { background: var(--lw-dark); border-top: 1px solid #2f3032; color: #85868b; }
.page-footer a { color: #c3c4c8; text-decoration: underline; text-decoration-color: #2f3032; text-underline-offset: 4px; transition: color .2s; }
.page-footer a:hover { color: var(--lw-accent); text-decoration-color: var(--lw-accent); }

/* motif en croix du CV sur le fond de page vide */
.page-content.repository .empty-placeholder, .ui.placeholder.segment {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath d='M12 7.5v9M7.5 12h9' stroke='%23c3c4c8' stroke-width='1' fill='none'/%3E%3C/svg%3E");
	background-size: 24px 24px; background-position: center;
}

::selection { background: var(--lw-accent); color: #fff; }
:focus-visible { outline: 2px solid var(--lw-accent); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }

/* corrections après essai sur Forgejo 15 */
/* tous les boutons, y compris .small, .basic et le <button class="primary"> des formulaires */
.ui.ui.button, .ui.ui.buttons .button, button.primary, .primary.button {
	font-family: var(--lw-narrow); font-size: .8125rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase;
	border-radius: 0;
}
button.primary:not(.ui), .primary.button:not(.ui) {
	background: var(--lw-ink); color: #eff0f1; border: 0; padding: .75em 1.25em; cursor: pointer; transition: background .2s;
}
button.primary:not(.ui):hover, .primary.button:not(.ui):hover { background: var(--lw-accent); color: #fff; }
/* Archivo Narrow resserre trop les espaces en capitales */
.ui.label, .ui.menu .item, .ui.tabular.menu .item, .ui.secondary.pointing.menu .item, .ui.button, #navbar .item, .page-footer,
.ui.table > thead > tr > th, .ui.attached.header, .repo-header .label { word-spacing: .15em; }
.page-footer span.lw-legal { color: #85868b; padding: 0 0 0 .75rem; }
