/*==================================================
MY COACHING POSTS
Premium Design System
==================================================*/

:root{

--coach-primary:#2563eb;
--coach-primary-dark:#1d4ed8;

--coach-success:#16a34a;
--coach-danger:#dc2626;

--coach-bg:#f5f7fb;
--coach-card:#ffffff;

--coach-text:#1f2937;
--coach-muted:#6b7280;

--coach-border:#e5e7eb;

--coach-radius:18px;

--coach-shadow:
0 10px 28px rgba(15,23,42,.06);

--coach-transition:.25s ease;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

body{

background:
var(--coach-bg);

font-family:
Inter,
system-ui,
sans-serif;

color:
var(--coach-text);

}

.coach-page{

padding:
1.2rem 0 2rem;

}

.coach-page .container{

max-width:1180px;

}

/*==================================================
Hero
==================================================*/

.coach-hero{

background:#fff;

border-radius:20px;

padding:1.5rem;

box-shadow:var(--coach-shadow);

margin-bottom:1rem;

display:flex;

justify-content:space-between;

align-items:center;

gap:1rem;

flex-wrap:wrap;

}

.coach-hero-content{

display:flex;

justify-content:space-between;

align-items:center;

width:100%;

gap:1rem;

flex-wrap:wrap;

}

.coach-badge{

display:inline-flex;

align-items:center;

gap:.4rem;

padding:6px 14px;

background:#eff6ff;

color:var(--coach-primary);

border-radius:999px;

font-size:.75rem;

font-weight:700;

margin-bottom:.8rem;

}

.coach-hero h1{

font-size:2rem;

font-weight:800;

margin-bottom:.45rem;

}

.coach-hero p{

color:var(--coach-muted);

margin:0;

}

.coach-hero-actions{

display:flex;

gap:.75rem;

}

.coach-create-btn{

background:linear-gradient(
135deg,
var(--coach-primary),
var(--coach-primary-dark)) !important;

border:none;

color:#fff !important;

font-weight:700;

border-radius:12px;

padding:11px 18px;

transition:var(--coach-transition);

}

.coach-create-btn:hover{

transform:translateY(-2px);

color:#fff !important;

}

/*==================================================
Statistics
==================================================*/

.coach-stats{

display:flex;

gap:1rem;

margin-top:1rem;

flex-wrap:wrap;

}

.coach-stat-card{

background:#f8fafc;

border:1px solid var(--coach-border);

border-radius:16px;

padding:1rem 1.3rem;

min-width:150px;

text-align:center;

}

.coach-stat-card h2{

font-size:1.5rem;

font-weight:800;

margin-bottom:.2rem;

color:var(--coach-primary);

}

.coach-stat-card p{

margin:0;

font-size:.82rem;

color:var(--coach-muted);

}

/*==================================================
Filters
==================================================*/

.coach-filter-card{

background:#fff;

border-radius:18px;

padding:1.2rem;

box-shadow:var(--coach-shadow);

margin-bottom:1rem;

}

.coach-filter-card .form-label{

font-size:.82rem;

font-weight:700;

margin-bottom:.45rem;

}

.coach-filter-card .form-control,
.coach-filter-card .form-select{

border-radius:12px;

padding:.7rem .9rem;

border:1px solid var(--coach-border);

font-size:.88rem;

}

.coach-filter-card .form-control:focus,
.coach-filter-card .form-select:focus{

border-color:var(--coach-primary);

box-shadow:0 0 0 .2rem rgba(37,99,235,.10);

}

.coach-search-btn{

background:var(--coach-primary);

color:#fff;

border:none;

border-radius:12px;

font-weight:700;

padding:.75rem;

}

.coach-search-btn:hover{

background:var(--coach-primary-dark);

color:#fff;

}

/*==================================================
Timeline
==================================================*/

.coach-feed{

display:grid;

grid-template-columns:repeat(3, minmax(0, 1fr));

gap:1rem;

}

@media (max-width: 767.98px){

    .coach-feed{

        grid-template-columns:1fr;

        gap:.85rem;

    }

}

/*==================================================
Premium Cards
==================================================*/

.coach-card{

background:#fff;

border-radius:18px;

overflow:hidden;

box-shadow:var(--coach-shadow);

transition:var(--coach-transition);

border:1px solid var(--coach-border);

}

.coach-card:hover{

transform:translateY(-4px);

box-shadow:
0 18px 40px rgba(15,23,42,.10);

}

.coach-card-header{

display:flex;

justify-content:space-between;

align-items:flex-start;

gap:1rem;

padding:1rem 1.2rem;

}

.coach-author{

display:flex;

align-items:center;

gap:.8rem;

}

.coach-avatar{

width:48px;

height:48px;

border-radius:50%;

object-fit:cover;

border:2px solid #fff;

box-shadow:0 3px 12px rgba(0,0,0,.08);

}

.country-flag{

width:18px;

height:18px;

margin-left:.35rem;

vertical-align:middle;

border-radius:50%;

}

.coach-author-name{

font-weight:700;

font-size:.95rem;

display:flex;

align-items:center;

}

.coach-meta{

margin-top:.2rem;

font-size:.78rem;

color:var(--coach-muted);

display:flex;

align-items:center;

gap:.45rem;

flex-wrap:wrap;

}

.coach-category{

display:inline-flex;

align-items:center;

gap:.3rem;

padding:3px 10px;

background:#eff6ff;

color:var(--coach-primary);

border-radius:999px;

font-size:.72rem;

font-weight:700;

}

.coach-actions-menu{

display:flex;

gap:.45rem;

flex-wrap:wrap;

}

.coach-edit-btn{

background:#eff6ff;

color:var(--coach-primary);

border:none;

border-radius:10px;

padding:.45rem .75rem;

font-size:.78rem;

font-weight:700;

}

.coach-edit-btn:hover{

background:var(--coach-primary);

color:#fff;

}

.coach-delete-btn{

background:#fef2f2;

color:#dc2626;

border:none;

border-radius:10px;

padding:.45rem .75rem;

font-size:.78rem;

font-weight:700;

}

.coach-delete-btn:hover{

background:#dc2626;

color:#fff;

}

/*==================================================
Cover
==================================================*/

.coach-cover{

overflow:hidden;

max-height:260px;

background:#f3f4f6;

}

.coach-cover-image{

width:100%;

height:260px;

object-fit:cover;

display:block;

transition:.35s ease;

}

.coach-card:hover .coach-cover-image{

transform:scale(1.03);

}

/*==================================================
Body
==================================================*/

.coach-card-body{

padding:1.2rem;

}

.coach-card-body h2{

font-size:1.18rem;

font-weight:800;

line-height:1.45;

margin-bottom:.75rem;

}

.coach-card-body h2 a{

color:var(--coach-text);

text-decoration:none;

}

.coach-card-body h2 a:hover{

color:var(--coach-primary);

}

.coach-card-body p{

margin:0;

font-size:.92rem;

line-height:1.75;

color:var(--coach-muted);

}

/*==================================================
Footer
==================================================*/

.coach-card-footer{

display:flex;

justify-content:space-between;

align-items:center;

gap:1rem;

padding:1rem 1.2rem;

border-top:1px solid var(--coach-border);

flex-wrap:wrap;

}

.coach-stats{

display:flex;

align-items:center;

gap:1rem;

flex-wrap:wrap;

font-size:.82rem;

font-weight:600;

color:var(--coach-muted);

}

.coach-stats span{

display:flex;

align-items:center;

gap:.3rem;

}

.coach-read-btn{

display:inline-flex;

align-items:center;

gap:.45rem;

padding:.65rem 1rem;

background:linear-gradient(
135deg,
var(--coach-primary),
var(--coach-primary-dark));

color:#fff;

font-weight:700;

font-size:.82rem;

text-decoration:none;

border-radius:12px;

transition:var(--coach-transition);

}

.coach-read-btn:hover{

color:#fff;

transform:translateY(-2px);

}

/*==================================================
Empty State
==================================================*/

.coach-empty{

background:#fff;

border-radius:18px;

padding:3rem 2rem;

text-align:center;

box-shadow:var(--coach-shadow);

}

.coach-empty i{

font-size:3rem;

color:var(--coach-primary);

margin-bottom:1rem;

}

.coach-empty h3{

font-size:1.35rem;

font-weight:800;

margin-bottom:.5rem;

}

.coach-empty p{

color:var(--coach-muted);

margin-bottom:1.5rem;

}

/*==================================================
Pagination
==================================================*/

.coach-pagination{

margin-top:1.5rem;

}

.coach-pagination .pagination{

gap:.45rem;

}

.coach-pagination .page-link{

border:none;

border-radius:10px;

padding:.65rem .95rem;

font-weight:700;

color:var(--coach-primary);

background:#fff;

box-shadow:0 4px 10px rgba(15,23,42,.05);

}

.coach-pagination .page-item.active .page-link{

background:var(--coach-primary);

color:#fff;

}

.coach-pagination .page-link:hover{

background:var(--coach-primary-dark);

color:#fff;

}


.coach-reset-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    background-color:#f1f3f5;

    color:var(--coach-text);

    border:1px solid #e2e5e9;

    transition:all .2s ease;

}

.coach-reset-btn:hover{

    background-color: #e9ecef !important;

    color:var(--coach-primary) !important;

    border-color:#d8dce1 !important;

}


.coach-dashboard-btn{

    background-color:#f1f5f9 !important;

    color:var(--coach-text) !important;

    border:1px solid var(--coach-border);

    font-weight:700;

    border-radius:12px;

    padding:11px 18px;

    transition:var(--coach-transition);

}

.coach-dashboard-btn:hover{

    background-color:#e2e8f0 !important;

    color:var(--coach-primary) !important;

    border-color:#cbd5e1;

    transform:translateY(-2px);

}

/* ==================================================
   HERO ACTIONS
   Premium Compact
   ================================================== */

.coach-hero-actions{

    display:flex;
    align-items:center;
    justify-content:flex-end;

    gap:.5rem;

    flex-wrap:wrap;

}


/* ==================================================
   HERO ACTION BUTTONS
   ================================================== */

.coach-hero-actions .btn{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    gap:.35rem;

    height:38px;

    padding:.45rem .8rem;

    border-radius:10px;

    font-size:.78rem;

    font-weight:700;

    line-height:1;

    white-space:nowrap;

    transition:
        transform .2s ease,
        background .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;

}


/* ==================================================
   BACK TO POSTS + DASHBOARD
   ================================================== */

.coach-dashboard-btn{

    background:#f8fafc !important;

    color:#334155 !important;

    border:1px solid #e2e8f0 !important;

    box-shadow:
        0 2px 6px rgba(15,23,42,.04);

}


/* Hover */

.coach-dashboard-btn:hover{

    background:#eff6ff !important;

    color:var(--coach-primary) !important;

    border-color:#bfdbfe !important;

    transform:translateY(-1px);

    box-shadow:
        0 5px 12px rgba(37,99,235,.08);

}


/* ==================================================
   CREATE ARTICLE
   ================================================== */

.coach-create-btn{

    background:linear-gradient(
        135deg,
        var(--coach-primary),
        var(--coach-primary-dark)
    ) !important;

    color:#fff !important;

    border:1px solid transparent !important;

    box-shadow:
        0 4px 12px rgba(37,99,235,.18);

}


/* Hover */

.coach-create-btn:hover{

    color:#fff !important;

    transform:translateY(-1px);

    box-shadow:
        0 7px 16px rgba(37,99,235,.24);

}


/* ==================================================
   ICONS
   ================================================== */

.coach-hero-actions .btn i{

    font-size:.85rem;

    margin-right:.1rem !important;

}


/* ==================================================
   MOBILE
   ================================================== */

@media(max-width:767.98px){

    .coach-hero-actions{

        width:100%;

        justify-content:flex-start;

        gap:.4rem;

    }

    .coach-hero-actions .btn{

        height:36px;

        padding:.4rem .7rem;

        font-size:.75rem;

    }

}



/*ADD CSS FROM NEW DESIGN LAYOUT*/


.coach-my-posts-groups {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.coach-my-group-card {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(15, 23, 42, .05);
}

.coach-my-group-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 16px;
    background: linear-gradient(180deg, rgba(248,250,252,.95), #fff);
    border-bottom: 1px solid rgba(15, 23, 42, .07);
}

.coach-my-group-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.coach-my-group-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(13,110,253,.09);
    color: #0d6efd;
}

.coach-my-group-label {
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    opacity: .62;
}

.coach-my-group-title {
    margin: 2px 0 0;
    font-size: 1rem;
    line-height: 1.35;
    font-weight: 700;
}

.coach-my-group-count {
    flex: 0 0 auto;
    padding: 5px 9px;
    border-radius: 999px;
    background: rgba(15,23,42,.06);
    font-size: .75rem;
    font-weight: 700;
    white-space: nowrap;
}

.coach-my-group-list {
    display: flex;
    flex-direction: column;
}

.coach-my-post-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(15,23,42,.06);
}

.coach-my-post-row:last-child {
    border-bottom: 0;
}

.coach-my-post-main {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
}

.coach-my-post-avatar-wrap {
    flex: 0 0 auto;
}

.coach-my-post-avatar {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    object-fit: cover;
}

.coach-my-post-info {
    min-width: 0;
}

.coach-my-post-title-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.coach-my-post-title {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: inherit;
    text-decoration: none;
    font-size: .92rem;
    font-weight: 700;
}

.coach-my-post-title:hover {
    text-decoration: underline;
}

.coach-my-language-badge {
    flex: 0 0 auto;
    padding: 2px 6px;
    border-radius: 5px;
    background: rgba(13,110,253,.1);
    color: #0d6efd;
    font-size: .66rem;
    font-weight: 800;
}

.coach-my-post-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 3px;
    font-size: .72rem;
    opacity: .62;
}

.coach-my-post-actions {
    display: flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
}

.coach-my-edit-btn,
.coach-my-delete-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 34px;
    padding: 6px 10px;
    border-radius: 8px;
    text-decoration: none;
    font-size: .76rem;
    font-weight: 700;
    transition: .2s ease;
}

.coach-my-edit-btn {
    background: rgba(13,110,253,.09);
    color: #0d6efd;
}

.coach-my-delete-btn {
    background: rgba(220,53,69,.08);
    color: #dc3545;
}

.coach-my-edit-btn:hover,
.coach-my-delete-btn:hover {
    transform: translateY(-1px);
}

@media (max-width: 700px) {
    .coach-my-group-header {
        align-items: flex-start;
    }

    .coach-my-post-row {
        align-items: flex-start;
    }

    .coach-my-post-actions {
        flex-direction: column;
    }

    .coach-my-edit-btn span,
    .coach-my-delete-btn span {
        display: none;
    }

    .coach-my-edit-btn,
    .coach-my-delete-btn {
        width: 34px;
        height: 34px;
        padding: 0;
    }
}



