/* =========================================
   TOQUATA - ACTUALITÉ CULINAIRE
========================================= */

/* ===== BASE ===== */
body{
    margin:0;
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    background:#f5f6f8;
    color:#222;
    line-height:1.7;
}

*{
    box-sizing:border-box;
}

img{
    max-width:100%;
    height:auto;
}

/* ===== LARGEUR ===== */
.header-wrapper,
.forum-container{
    max-width:920px;
    margin:0 auto;
    padding:0 1rem;
}

/* =========================================
   LINKS
========================================= */
a{
    color:#0ea5e9;
    text-decoration:none;
    transition:.2s ease;
}

a:hover{
    text-decoration:underline;
}

/* =========================================
   HEADER
========================================= */
.header{
    display:flex;
    align-items:center;
    gap:1rem;
    margin-top:1rem;
    padding:1.2rem 1.4rem;
    background:#fff;
    border-radius:18px;
    border:1px solid #ececec;
}

.header img{
    max-height:60px;
}

.header-text h4{
    margin:0 0 .7rem;
    font-size:1rem;
    color:#ec9558;
}

.header-text a{
    display:inline-block;
    margin:.15rem .25rem .15rem 0;
    padding:.38rem .9rem;
    background:#0ea5e9;
    color:#fff;
    border-radius:999px;
    font-size:.95rem;
}

.header-text a:hover{
    background:#0284c7;
    color:#fff;
    text-decoration:none;
}

/* =========================================
   MAIN
========================================= */
.forum-container{
    margin-top:1.2rem;
}

.forum-title{
    margin:.2rem 0 .8rem;
    font-size:1.7rem;
    line-height:1.3;
    font-weight:800;
    color:#111827;
}

.intro-seo{
    margin:0 0 1.2rem;
    padding:18px 22px;
    background:#fff;
    border-radius:14px;
    border:1px solid #ececec;
    color:#444;
}

/* =========================================
   CATEGORIES
========================================= */
.forum-categories{
    margin-bottom:1.4rem;
    font-size:.95rem;
}

.forum-categories a{
    display:inline-block;
    margin:0 .35rem .35rem 0;
    padding:.45rem .9rem;
    background:#ffffff;
    border:1px solid #e5e7eb;
    border-radius:999px;
    color:#444;
}

.forum-categories a:hover{
    border-color:#ec9558;
    color:#ec9558;
    text-decoration:none;
}

/* =========================================
   NEWS CARD
========================================= */
.news-card{
    background:#fff;
    border-radius:20px;
    border:1px solid #ececec;
    padding:1.4rem;
    margin-bottom:1.2rem;
    transition:.2s ease;
}

.news-card:hover{
    border-color:#d6d6d6;
}

.news-category{
    margin-bottom:.7rem;
}

.news-category a{
    display:inline-block;
    padding:.3rem .8rem;
    background:#fff8f2;
    border-radius:999px;
    font-size:.82rem;
    font-weight:700;
    color:#c26d2b;
}

.news-category a:hover{
    text-decoration:none;
    background:#fcebdc;
}

.news-title{
    margin:0 0 .6rem;
    font-size:1.45rem;
    line-height:1.35;
    font-weight:800;
}

.news-title a{
    color:#111827;
}

.news-title a:hover{
    color:#ec9558;
    text-decoration:none;
}

.news-meta{
    margin-bottom:1rem;
    font-size:.88rem;
    color:#6b7280;
}

.news-intro{
    margin-bottom:1rem;
    color:#333;
    font-size:1.03rem;
}

.news-source{
    margin-bottom:1rem;
    font-size:.92rem;
    color:#6b7280;
}

.news-source a{
    font-weight:700;
}

/* =========================================
   CHEF COMMENT
========================================= */
.chef-comment{
    margin-top:1rem;
    padding:14px 16px;
    background:#fff8f2;
    border-left:4px solid #ec9558;
    border-radius:12px;
    color:#4b5563;
}

.chef-comment strong{
    display:inline-block;
    margin-bottom:6px;
    color:#7a3e06;
}

/* =========================================
   ARTICLE LINK
========================================= */
.news-link{
    margin-top:1rem;
}

.news-link a{
    display:inline-block;
    padding:.55rem 1rem;
    background:#f0f9ff;
    border-radius:999px;
    font-weight:700;
}

.news-link a:hover{
    background:#dff2ff;
    text-decoration:none;
}

/* =========================================
   PAGINATION
========================================= */
.pagination{
    display:flex;
    justify-content:center;
    gap:.45rem;
    margin:2rem 0;
    flex-wrap:wrap;
}

.pagination a,
.pagination span{
    display:inline-block;
    padding:.5rem .95rem;
    border-radius:999px;
    border:1px solid #e5e7eb;
    background:#fff;
}

.pagination .current{
    background:#0284c7;
    color:#fff;
    border-color:#0284c7;
}

/* =========================================
   ADMIN FORM
========================================= */

.container{
    max-width:1000px;
    margin:40px auto;
    padding:32px;
    background:#fff;
    border-radius:20px;
    border:1px solid #ececec;
}

.container h1{
    margin-top:0;
    margin-bottom:10px;
    font-size:2rem;
    color:#111827;
}

.container p{
    color:#666;
    margin-bottom:25px;
}

/* =========================================
   LABELS
========================================= */

label{
    display:block;
    margin-top:22px;
    margin-bottom:8px;
    font-weight:700;
    color:#374151;
}

/* =========================================
   INPUTS
========================================= */

input,
select,
textarea{
    width:100%;
    padding:14px 16px;
    border:1px solid #d1d5db;
    border-radius:12px;
    font-size:16px;
    font-family:inherit;
    background:#fff;
    transition:.2s ease;
}

input:focus,
select:focus,
textarea:focus{
    outline:none;
    border-color:#0ea5e9;
    box-shadow:0 0 0 3px rgba(14,165,233,.1);
}

/* =========================================
   TEXTAREA
========================================= */

textarea{
    resize:vertical;
    min-height:180px;
    line-height:1.7;
}

/* intro */
textarea[name="intro"]{
    min-height:140px;
}

/* commentaire chef */
textarea[name="chef_comment"]{
    min-height:420px;
    font-size:1.05rem;
}

/* meta */
textarea[name="meta_description"]{
    min-height:120px;
}

/* =========================================
   BBCode TOOLBAR
========================================= */

.bbcode-toolbar{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:15px;
    margin-bottom:15px;
}

.bbcode-toolbar button{
    margin:0;
    padding:10px 16px;
    border:none;
    border-radius:999px;
    background:#f3f4f6;
    color:#374151;
    font-size:.95rem;
    font-weight:700;
    cursor:pointer;
    transition:.2s ease;
}

.bbcode-toolbar button:hover{
    background:#0ea5e9;
    color:#fff;
}

/* =========================================
   SUBMIT BUTTON
========================================= */

button[type="submit"]{
    margin-top:30px;
    padding:16px 28px;
    border:none;
    border-radius:14px;
    background:#ec9558;
    color:#fff;
    font-size:1rem;
    font-weight:700;
    cursor:pointer;
    transition:.2s ease;
}

button[type="submit"]:hover{
    background:#d97932;
}

/* =========================================
   ALERTS
========================================= */

.error{
    margin-top:20px;
    padding:14px 18px;
    background:#fef2f2;
    border:1px solid #fecaca;
    border-radius:12px;
    color:#991b1b;
}

.success{
    margin-top:20px;
    padding:14px 18px;
    background:#ecfdf5;
    border:1px solid #bbf7d0;
    border-radius:12px;
    color:#166534;
}

/* =========================================
   MOBILE
========================================= */

@media (max-width:768px){

    .container{
        padding:20px;
        margin:20px auto;
    }

    textarea[name="chef_comment"]{
        min-height:320px;
    }

}

/* =========================================
   FOOTER
========================================= */
.site-footer{
    margin-top:2rem;
    padding:20px;
    text-align:center;
    color:#666;
    font-size:.92rem;
}

/* =========================================
   MOBILE
========================================= */
@media (max-width:768px){

    .header{
        flex-direction:column;
        text-align:center;
    }

    .header-text a{
        margin:.2rem;
    }

    .forum-title{
        font-size:1.35rem;
    }

    .news-title{
        font-size:1.2rem;
    }

    .news-card{
        padding:1.1rem;
    }

    .intro-seo{
        padding:16px;
    }

}
