/*
Theme Name:   Twenty Twenty-Five Fastr
Theme URI:    https://main.arthion.fr/
Description:  Thème enfant de Twenty Twenty-Five reproduisant le style minimaliste, text-only et performant du thème Fastr.
Author:       Adapted from Fastr by Kanishk Kunal
Author URI:   http://kanishkkunal.in
Template:     twentytwentyfive
Version:      1.2.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  twentytwentyfive-fastr
*/

/* ============================================================
 * VARIABLES (couleurs extraites du code Fastr d'origine)
 * ============================================================ */

:root {
    --ttfastr-text:        #303538;
    --ttfastr-bg:          #fff;
    --ttfastr-header-bg:   #303538;
    --ttfastr-header-text: #fff;
    --ttfastr-tagline:     #ccc;
    --ttfastr-meta:        #9EABB3;
    --ttfastr-link:        #4a4a4a;
    --ttfastr-link-hover:  #57A3E8;
    --ttfastr-border:      #EBF2F6;
    --ttfastr-dot-border:  #E7EEF2;
    --ttfastr-footer-bg:   #F7FAFB;
    --ttfastr-footer-text: #BBC7CC;

    --wp--style--global--content-size: 700px;
    --wp--style--global--wide-size:    700px;
}

/* ============================================================
 * GLOBAL : Georgia serif, fond blanc
 * ============================================================ */

body {
    font-family: Georgia, serif !important;
    font-size: 20px !important;
    line-height: 1.6em !important;
    color: var(--ttfastr-text) !important;
    background: var(--ttfastr-bg) !important;
}

/* ============================================================
 * TITRES : Arial sans-serif bold
 * ============================================================ */

h1, h2, h3, h4, h5, h6,
.wp-block-post-title,
.wp-block-heading {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: var(--ttfastr-text) !important;
    margin-top: 0 !important;
}

h1, .wp-block-post-title { font-size: 50px !important; }
h2                        { font-size: 40px !important; }
h3                        { font-size: 35px !important; }
h4                        { font-size: 30px !important; }
h5                        { font-size: 25px !important; }
h6                        { font-size: 20px !important; }

/* ============================================================
 * LIENS
 * ============================================================ */

a,
a:visited                  { color: var(--ttfastr-link) !important; }
a:hover, a:focus, a:active { color: var(--ttfastr-link-hover) !important; }

/* ============================================================
 * HEADER : tout centré, fond sombre, gravatar circulaire
 * ============================================================ */

header.wp-block-group,
header.wp-block-template-part,
header.wp-block-group > *,
header.wp-block-template-part > * {
    text-align: center !important;
}

/* Gravatar / site-logo : circulaire */
header .wp-block-site-logo,
.wp-block-site-logo {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

header .wp-block-site-logo img,
.wp-block-site-logo img {
    border-radius: 50% !important;
    display: block !important;
    margin: 0 auto 20px auto !important;
    max-width: 150px !important;
    height: auto !important;
    border: none !important;
}

/* Site title */
header .wp-block-site-title,
header .wp-block-site-title a {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 60px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: var(--ttfastr-header-text) !important;
    text-decoration: none !important;
    text-align: center !important;
    display: block !important;
    margin: 10px auto 0 auto !important;
}

/* Tagline */
header .wp-block-site-tagline {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 24px !important;
    font-weight: 300 !important;
    line-height: 1.5 !important;
    color: var(--ttfastr-tagline) !important;
    text-align: center !important;
    margin: 10px auto 0 auto !important;
}

/* Pas de menu de navigation dans le header (Fastr le met en footer) */
header .wp-block-navigation,
header nav.wp-block-navigation {
    display: none !important;
}

/* ============================================================
 * EMOJIS : taille normale inline (on a désactivé la CSS WP)
 * ============================================================ */

img.emoji,
img.wp-smiley {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 .07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

/* ============================================================
 * CONTENU : aligné à gauche, masquage des images featured
 * ============================================================ */

.wp-block-post-featured-image,
.wp-block-cover {
    display: none !important;
}

.wp-block-post-content,
.wp-block-post-content > *,
.wp-block-post-excerpt,
.wp-block-post-excerpt p {
    text-align: left !important;
}

p {
    margin-bottom: 1.5em !important;
}

/* Défense : masquer un éventuel titre "Blog" si l'utilisateur réactive l'ancien template */
.wp-block-query-title {
    display: none !important;
}

/* ============================================================
 * MÉTA DES ARTICLES (date, auteur, catégories)
 * ============================================================ */

.wp-block-post-date,
.wp-block-post-date a,
.wp-block-post-author,
.wp-block-post-author-name,
.wp-block-post-terms,
.wp-block-post-terms a {
    color: var(--ttfastr-meta) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    text-decoration: none !important;
    text-align: left !important;
}

.wp-block-post-date a:hover,
.wp-block-post-terms a:hover {
    color: var(--ttfastr-meta) !important;
    text-decoration: underline !important;
}

/* ============================================================
 * LISTE D'ARTICLES : séparateur + point décoratif Fastr
 * ============================================================ */

.wp-block-post-template {
    list-style: none !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.wp-block-post-template > li.wp-block-post,
.wp-block-post-template .wp-block-post {
    position: relative !important;
    margin-bottom: 6rem !important;
    padding-bottom: 2rem !important;
    border-bottom: 1px solid var(--ttfastr-border) !important;
    list-style: none !important;
}

/* Point décoratif sous chaque article (signature Fastr) */
.wp-block-post-template > li.wp-block-post::after,
.wp-block-post-template .wp-block-post::after {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border: 1px solid var(--ttfastr-dot-border);
    position: absolute;
    bottom: -5px;
    left: 50%;
    margin-left: -5px;
    background: var(--ttfastr-bg);
    border-radius: 100%;
    box-shadow: var(--ttfastr-bg) 0 0 0 5px;
}

/* ============================================================
 * BLOCKQUOTES, CODE, SEPARATEURS
 * ============================================================ */

blockquote {
    margin: 0 1.5em 1.5em !important;
    font-style: italic;
}

hr,
.wp-block-separator {
    background-color: #ccc !important;
    border: 0 !important;
    height: 1px !important;
    margin-bottom: 1.5em !important;
}

pre, code, kbd, tt, var {
    font-family: "Courier 10 Pitch", Courier, monospace !important;
}

pre {
    background: #eee !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    padding: 1.6em !important;
    overflow: auto;
    max-width: 100%;
    margin-bottom: 1.6em !important;
}

/* ============================================================
 * NAVIGATION ARTICLES (boutons pilule Fastr)
 * ============================================================ */

.wp-block-post-navigation-link {
    padding: 5px 15px !important;
    border: 2px solid var(--ttfastr-border) !important;
    text-decoration: none !important;
    border-radius: 30px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 18px !important;
    color: var(--ttfastr-meta) !important;
}

/* ============================================================
 * FOOTER : fond pâle + bouton retour en haut
 * ============================================================ */

footer.wp-block-template-part {
    margin-top: 6rem !important;
    padding: 4rem 0 !important;
    border-top: 1px solid var(--ttfastr-border) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.7em !important;
    color: var(--ttfastr-footer-text) !important;
    text-align: center !important;
    background: var(--ttfastr-footer-bg) !important;
    position: relative !important;
}

footer.wp-block-template-part a,
footer.wp-block-template-part a:visited {
    color: var(--ttfastr-footer-text) !important;
    text-decoration: none !important;
}

footer.wp-block-template-part a:hover {
    text-decoration: underline !important;
}

/* Petit cercle décoratif "back-to-top" posé sur la bordure du footer */
footer.wp-block-template-part::before {
    content: "↑";
    width: 28px;
    height: 28px;
    position: absolute;
    top: -14px;
    left: 50%;
    margin-left: -15px;
    border: 1px solid var(--ttfastr-border);
    text-align: center;
    line-height: 26px;
    border-radius: 50%;
    background: var(--ttfastr-bg);
    color: var(--ttfastr-footer-text);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
}

/* ============================================================
 * COMMENTAIRES
 * ============================================================ */

.wp-block-comment-template li {
    border-top: 1px solid var(--ttfastr-border) !important;
    padding-top: 24px !important;
    margin-bottom: 2em !important;
    list-style: none !important;
}

.wp-block-comment-author-name {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
}

.wp-block-comment-date {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    color: #a2a2a2 !important;
}

.wp-block-comment-content {
    font-family: Georgia, serif !important;
}

/* ============================================================
 * RESPONSIVE (breakpoints Fastr : 900px et 500px)
 * ============================================================ */

@media only screen and (max-width: 900px) {
    body                            { font-size: 18px !important; }
    header .wp-block-site-title,
    header .wp-block-site-title a   { font-size: 40px !important; letter-spacing: -1px !important; }
    header .wp-block-site-tagline   { font-size: 18px !important; }
    h1, .wp-block-post-title        { font-size: 38px !important; }
    h2                              { font-size: 32px !important; }
    h3                              { font-size: 28px !important; }
    header .wp-block-site-logo img,
    .wp-block-site-logo img         { max-width: 120px !important; }
}

@media only screen and (max-width: 500px) {
    body                            { font-size: 16px !important; }
    header .wp-block-site-title,
    header .wp-block-site-title a   { font-size: 30px !important; }
    header .wp-block-site-tagline   { font-size: 16px !important; }
    h1, h2, .wp-block-post-title    { font-size: 28px !important; letter-spacing: -1px !important; }
    h3                              { font-size: 24px !important; }
    header .wp-block-site-logo img,
    .wp-block-site-logo img         { max-width: 100px !important; }
}
