
    
/* ==========================================================
ARTICLE ACCESS
========================================================== */

.coach-article-card{
    opacity:1;
    transition:opacity .3s ease;
}

.coach-article-card.coach-article-card--locked{
    opacity:.04;
    pointer-events:none;
    user-select:none;
} 



/*==================================================
COACHING VIEW POST
Premium Design System
==================================================*/

:root{

--coach-primary:#2563eb;
--coach-primary-dark:#1d4ed8;

--coach-success:#16a34a;
--coach-warning:#f59e0b;
--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 30px rgba(15,23,42,.06);

--coach-transition:.25s ease;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

body{

background:

var(--coach-bg) !important;

font-family:

"Inter",
system-ui,
sans-serif;

color:

var(--coach-text);

}

body a{
    text-decoration: none;
}

.coach-view-page{

padding:

1.25rem
0
2rem;

}

.coach-view-page
.container{

max-width:900px;

}

/*==================================================
Hero
==================================================*/

.coach-view-hero{

background:#fff;

border-radius:20px;

padding:

1.4rem;

box-shadow:

var(--coach-shadow);

margin-bottom:

1rem;

animation:

fadeUp .45s ease;

}

.coach-view-top{

display:flex;

align-items:center;

justify-content:space-between;

gap:1rem;

margin-bottom:

1rem;

flex-wrap:wrap;

}

.coach-back-btn{

display:inline-flex;

align-items:center;

gap:.55rem;

padding:

9px
15px;

border-radius:999px;

background:

rgba(37,99,235,.08);

color:

var(--coach-primary);

font-size:.84rem;

font-weight:700;

text-decoration:none;

transition:

var(--coach-transition);

}

.coach-back-btn:hover{

background:

var(--coach-primary);

color:#fff;

}

.coach-category-badge{

padding:

7px
14px;

border-radius:999px;

background:

rgba(37,99,235,.08);

color:

var(--coach-primary);

font-size:.75rem;

font-weight:700;

}

.coach-post-title{

font-size:2rem;

font-weight:800;

line-height:1.3;

margin-bottom:.8rem;

}

.coach-post-excerpt{

font-size:1rem;

line-height:1.8;

color:

var(--coach-muted);

margin-bottom:

1.4rem;

}

/*==================================================
Author
==================================================*/

.coach-author-box{

display:flex;

justify-content:space-between;

align-items:center;

gap:1rem;

flex-wrap:wrap;

padding-top:

1rem;

border-top:

1px solid
var(--coach-border);

}

.coach-author-left{

display:flex;

align-items:center;

gap:.9rem;

text-decoration:none;

color:inherit;

transition:all .25s ease;

cursor:pointer;

}

.coach-author-left:hover{

color:inherit;

transform:translateY(-2px);

}

.coach-author-left .coach-author-name{

color: #768dbd;

}


.coach-author-left:hover .coach-author-name{

color: red ;

}

.coach-author-left:hover .coach-author-avatar{

transform:scale(1.05);

border-color:#bfdbfe;

}

.coach-author-avatar{

transition:all .25s ease;

}

.coach-author-avatar{

width:58px;
height:58px;

border-radius:50%;

object-fit:cover;

border:

2px solid #eef2ff;

}

.coach-author-info{

display:flex;

flex-direction:column;

gap:.25rem;

}

.coach-author-name{

display:flex;

align-items:center;

gap:.45rem;

font-weight:700;

font-size:.95rem;

}

.country-flag{

width:18px;

height:13px;

border-radius:2px;

object-fit:cover;

}

.coach-author-meta{

font-size:.8rem;

color:

var(--coach-muted);

}

/*==================================================
Stats
==================================================*/

/*==================================================
POST STATS
==================================================*/

.coach-post-stats{

display:flex;

align-items:center;

gap:8px;

flex-wrap:wrap;

}

.coach-post-stats span,
.coach-post-stats a,
.coach-post-stats button{

display:inline-flex;

align-items:center;

justify-content:center;

gap:6px;

padding:5px 10px;

margin:0;

background:#fff;

border:1px solid var(--coach-border);

border-radius:999px;

font-size:.76rem;

font-weight:600;

line-height:1;

color:var(--coach-muted);

text-decoration:none;

transition:all .2s ease;

cursor:pointer;

font-family:inherit;

outline:none;

box-shadow:none;

}

.coach-post-stats span i,
.coach-post-stats a i,
.coach-post-stats button i{

font-size:.82rem;

color:var(--coach-primary);

transition:.2s;

}

.coach-post-stats span:hover,
.coach-post-stats a:hover,
.coach-post-stats button:hover{

background:#f8fafc;

border-color:#dbeafe;

color:var(--coach-primary);

transform:translateY(-1px);

}

.coach-post-stats span:hover i,
.coach-post-stats a:hover i,
.coach-post-stats button:hover i{

color:var(--coach-primary);

}

.coach-like-btn.liked{

background:#fff1f2;

border-color:#fecdd3;

color:#e11d48;

}

.coach-like-btn.liked i{

color:#e11d48;

}

.coach-post-stats span{

display:flex;

align-items:center;

gap:.35rem;

font-size:.82rem;

font-weight:600;

color:

var(--coach-muted);

}

/*==================================================
Actions
==================================================*/

.coach-post-actions{

display:flex;

gap:.8rem;

flex-wrap:wrap;

margin-top:

1.3rem;

}

.coach-action-btn{

display:inline-flex;

align-items:center;

gap:.45rem;

padding:

10px
18px;

border-radius:12px;

background:#f8fafc;

color:

var(--coach-text);

text-decoration:none;

font-size:.84rem;

font-weight:700;

transition:

var(--coach-transition);

}

.coach-action-btn:hover{

background:

var(--coach-primary);

color:#fff;

}

/*==================================================
Cover
==================================================*/

.coach-cover-wrapper{
    width:100%;
    margin-top:1.4rem;

    overflow:hidden;

    border-radius:18px;
}

.coach-cover-image{
    width:100%;
    height:auto;
    max-width:100%;
    object-fit:contain;
    display:block;
    transition:
        transform .45s ease;
}

.coach-cover-image:hover{

transform:

scale(1.03);

}

/*==================================================
Article
==================================================*/

.coach-post-content{

display:flex;

flex-direction:column;

gap:1rem;

}

.coach-article-card{

background:#fff;

border-radius:20px;

padding:

1.7rem;

box-shadow:

var(--coach-shadow);

animation:

fadeUp .5s ease;

overflow:hidden;

}

.coach-article-card img{

max-width:100%;

height:auto;

border-radius:14px;

margin:

1rem
0;

}

.coach-article-card p{

margin-bottom:1rem;

font-size:.97rem;

line-height:1.9;

color:

var(--coach-text);

}

.coach-article-card h1,
.coach-article-card h2,
.coach-article-card h3,
.coach-article-card h4{

margin:

1.5rem
0
.8rem;

font-weight:800;

line-height:1.35;

color:

var(--coach-text);

}

.coach-article-card ul,
.coach-article-card ol{

padding-left:

1.35rem;

margin-bottom:

1rem;

}

.coach-article-card li{

margin-bottom:

.45rem;

line-height:1.75;

}

.coach-article-card blockquote{

margin:

1.3rem
0;

padding:

1rem
1.2rem;

border-left:

4px solid
var(--coach-primary);

background:

#f8fafc;

border-radius:12px;

font-style:italic;

}

.coach-article-card table{

width:100%;

border-collapse:collapse;

margin:

1.4rem
0;

}

.coach-article-card table th,
.coach-article-card table td{

padding:

12px;

border:

1px solid
var(--coach-border);

}

.coach-article-card table th{

background:

#f8fafc;

font-weight:700;

}

/*==================================================
Section Titles
==================================================*/

.coach-section-title{

display:flex;

align-items:center;

justify-content:space-between;

margin:

.4rem
0
1rem;

}

.coach-section-title h2{

margin:0;

font-size:1.2rem;

font-weight:800;

}

/*==================================================
Related Articles
==================================================*/

.coach-related{

display:flex;

flex-direction:column;

gap:1rem;

}

.coach-related-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:16px;

}

.coach-related-card{

display:flex;

flex-direction:column;

background:#fff;

border-radius:16px;

overflow:hidden;

text-decoration:none;

color:inherit;

box-shadow:var(--coach-shadow);

transition:.25s;

}

.coach-related-card:hover{

transform:translateY(-4px);

box-shadow:0 18px 40px rgba(15,23,42,.10);

color:inherit;

}

.coach-related-cover{

width:100%;

height:140px;

object-fit:cover;

display:block;

}

.coach-related-body{

padding:14px;

}

.coach-related-body h3{

font-size:.88rem;

font-weight:700;

line-height:1.45;

margin-bottom:10px;

display:-webkit-box;

-webkit-line-clamp:1;

-webkit-box-orient:vertical;

overflow:hidden;

min-height:42px;

}

.coach-related-description{

margin:0 0 12px;

font-size:.78rem;

line-height:1.55;

color:var(--coach-muted);

display:-webkit-box;

-webkit-line-clamp:2;

-webkit-box-orient:vertical;

overflow:hidden;

min-height:38px;

}

.coach-related-meta{

display:flex;

justify-content:space-between;

font-size:.74rem;

color:var(--coach-muted);

font-weight:600;

}


/*==================================================
RELATED SLIDER
==================================================*/

.coach-related-slider{

overflow:hidden;

width:100%;

}

.coach-related-track{

display:flex;

gap:18px;

transition:transform .45s ease;

will-change:transform;

}

.coach-related-card{

flex:0 0 calc(50% - 9px);

}

.coach-related-navigation{

display:flex;

justify-content:space-between;

align-items:center;

margin-top:20px;

}

.coach-related-nav{

display:flex;

align-items:center;

gap:10px;

padding:12px 22px;

border:none;

border-radius:999px;

background:#fff;

font-weight:700;

cursor:pointer;

box-shadow:var(--coach-shadow);

transition:.25s;

}

.coach-related-nav:hover{

background:var(--coach-primary);

color:#fff;

}

.coach-related-nav:disabled{

opacity:.35;

cursor:default;

pointer-events:none;

}

@media(max-width:768px){

.coach-related-card{

flex:0 0 100%;

}

}

/*==================================================
Comments
==================================================*/

.coach-comments{

display:flex;

flex-direction:column;

gap:1rem;

}

.coach-comment{

display:flex;

align-items:flex-start;

gap:12px;

padding:14px 0;

border-bottom:1px solid #a5aeb7;

background:#ffffff;

border-radius:0;

box-shadow:none;

border-radius: 10px;
color: #6a6ad9;

}

.coach-comment-avatar{

width:40px;
height:40px;

border-radius:50%;

object-fit:cover;

border:none;

flex-shrink:0;

}

.coach-comment-content{

flex:1;

min-width:0;

}

.coach-comment-header{

display:flex;

align-items:center;

gap:8px;

margin-bottom:4px;

flex-wrap:wrap;

}

.coach-comment-header strong{

font-size:.9rem;

}

.coach-comment-header span{

font-size:.74rem;

color:

var(--coach-muted);

}

.coach-comment-text{

font-size:.88rem;

line-height:1.7;

color:

var(--coach-text);

}

.coach-empty-small{

background:#fff;

padding:

1.5rem;

text-align:center;

border-radius:18px;

box-shadow:

var(--coach-shadow);

font-size:.88rem;

color:

var(--coach-muted);

}

/*==================================================
Comment Form
==================================================*/

.coach-comment-form{

background:#fff;

border-radius:20px;

padding:

1.4rem;

box-shadow:

var(--coach-shadow);

animation:

fadeUp .55s ease;

}

.coach-comment-form textarea{

width:100%;

border:

1px solid
var(--coach-border);

border-radius:14px;

padding:

1rem;

font-size:.92rem;

line-height:1.75;

resize:vertical;

min-height:150px;

transition:

var(--coach-transition);

background:#fff;

}

.coach-comment-form textarea:focus{

outline:none;

border-color:

var(--coach-primary);

box-shadow:

0 0 0 4px

rgba(37,99,235,.12);

}

.coach-comment-actions{

display:flex;

justify-content:flex-end;

margin-top:1rem;

}

.coach-comment-btn{

display:inline-flex;

align-items:center;

justify-content:center;

gap:.55rem;

padding:

12px
22px;

border:none;

border-radius:14px;

background:

linear-gradient(

135deg,

var(--coach-primary),

var(--coach-primary-dark)

);

color:#fff;

font-size:.88rem;

font-weight:700;

cursor:pointer;

transition:

var(--coach-transition);

box-shadow:

0 10px 24px rgba(37,99,235,.22);

}

.coach-comment-btn:hover{

transform:

translateY(-3px);

box-shadow:

0 16px 32px rgba(37,99,235,.28);

}

.coach-comment-btn:active{

transform:

translateY(0);

}

/*==================================================
Hover Effects
==================================================*/

.coach-article-card,
.coach-author-card,
.coach-related-card,
.coach-comment,
.coach-comment-form{

transition:

var(--coach-transition);

}

.coach-article-card:hover,
.coach-author-card:hover,
.coach-comment:hover{

transform:

translateY(-3px);

box-shadow:

0 20px 40px rgba(15,23,42,.08);

}

.coach-related-card{

position:relative;

}

.coach-related-card::after{

content:"";

position:absolute;

left:0;

top:0;

width:100%;

height:4px;

background:

linear-gradient(

90deg,

var(--coach-primary),

#60a5fa

);

opacity:0;

transition:

var(--coach-transition);

}

.coach-related-card:hover::after{

opacity:1;

}

.coach-author-photo{

transition:

var(--coach-transition);

}

.coach-author-card:hover
.coach-author-photo{

transform:

scale(1.05);

border-color:

#bfdbfe;

}

.coach-action-btn,
.coach-author-btn,
.coach-comment-btn{

position:relative;

overflow:hidden;

}

.coach-action-btn::before,
.coach-author-btn::before,
.coach-comment-btn::before{

content:"";

position:absolute;

left:-120%;

top:0;

width:100%;

height:100%;

background:

linear-gradient(

90deg,

transparent,

rgba(255,255,255,.35),

transparent

);

transition:.7s;

}

.coach-action-btn:hover::before,
.coach-author-btn:hover::before,
.coach-comment-btn:hover::before{

left:120%;

}

/*==================================================
Animations
==================================================*/

@keyframes fadeUp{

from{

opacity:0;

transform:

translateY(20px);

}

to{

opacity:1;

transform:

translateY(0);

}

}

@keyframes pulse{

0%{

transform:scale(1);

}

50%{

transform:scale(1.04);

}

100%{

transform:scale(1);

}

}

.coach-view-hero{

animation:

fadeUp .4s ease;

}

.coach-article-card{

animation:

fadeUp .5s ease;

}

.coach-author-card{

animation:

fadeUp .6s ease;

}

.coach-related{

animation:

fadeUp .7s ease;

}

.coach-comments{

animation:

fadeUp .8s ease;

}

.coach-comment-form{

animation:

fadeUp .9s ease;

}

.coach-action-btn:hover{

animation:

pulse .4s ease;

}

/*==================================================
Scrollbar
==================================================*/

::-webkit-scrollbar{

width:10px;

height:10px;

}

::-webkit-scrollbar-track{

background:#edf2f7;

border-radius:999px;

}

::-webkit-scrollbar-thumb{

background:

linear-gradient(

180deg,

var(--coach-primary),

var(--coach-primary-dark)

);

border-radius:999px;

}

::-webkit-scrollbar-thumb:hover{

background:

var(--coach-primary-dark);

}

/*==================================================
Tablet
==================================================*/

@media (max-width:991px){

.coach-view-page{

padding:

1rem
0
1.5rem;

}

.coach-view-page
.container{

max-width:100%;

padding:

0
16px;

}

.coach-post-title{

font-size:1.6rem;

}

.coach-author-box{

flex-direction:column;

align-items:flex-start;

}

.coach-post-stats{

width:100%;

justify-content:flex-start;

}

.coach-post-actions{

width:100%;

}

.coach-action-btn{

flex:1;

justify-content:center;

}

.coach-author-card{

flex-direction:column;

text-align:center;

}

.coach-author-card-content h3{

justify-content:center;

}

.coach-related-grid{

grid-template-columns:1fr;

}

}

/*==================================================
Mobile
==================================================*/

@media (max-width:576px){

.coach-view-page{

padding:

.8rem
0
1.2rem;

}

.coach-view-hero{

padding:1rem;

border-radius:16px;

}

.coach-view-top{

gap:.7rem;

}

.coach-back-btn{

font-size:.78rem;

padding:

8px
13px;

}

.coach-category-badge{

font-size:.68rem;

padding:

6px
11px;

}

.coach-post-title{

font-size:1.28rem;

}

.coach-post-excerpt{

font-size:.88rem;

line-height:1.65;

}

.coach-author-avatar{

width:50px;

height:50px;

}

.coach-post-stats{

gap:.7rem;

}

.coach-post-stats span{

font-size:.74rem;

}

.coach-action-btn{

width:100%;

justify-content:center;

}

.coach-cover-image{
    width:100%;
    height:auto;
    max-width:100%;
    object-fit:contain;
}

.coach-article-card{

padding:1.1rem;

border-radius:16px;

}

.coach-article-card p{

font-size:.9rem;

}

.coach-author-card{

padding:1rem;

border-radius:16px;

}

.coach-author-photo{

width:70px;

height:70px;

}

.coach-section-title h2{

font-size:1.05rem;

}

.coach-related-cover{

height:150px;

}

.coach-related-body{

padding:.9rem;

}

.coach-related-body h3{

font-size:.9rem;

}

.coach-related-body p{

font-size:.8rem;

-webkit-line-clamp:2;

}

.coach-comment{

padding:.9rem;

border-radius:16px;

}

.coach-comment-avatar{

width:42px;

height:42px;

}

.coach-comment-text{

font-size:.84rem;

}

.coach-comment-form{

padding:1rem;

border-radius:16px;

}

.coach-comment-form textarea{

min-height:120px;

font-size:.88rem;

}

.coach-comment-btn{

width:100%;

}

}

/*==================================================
Large Screens
==================================================*/

@media (min-width:1400px){

.coach-view-page
.container{

max-width:960px;

}

/*.coach-cover-image{*/

/*height:460px;*/

/*}*/

}


.coach-stat-btn{

display:flex;

align-items:center;

gap:.35rem;

padding:6px 12px;

border-radius:999px;

background:#f8fafc;

text-decoration:none;

color:var(--coach-text);

font-weight:600;

transition:var(--coach-transition);

}

.coach-stat-btn:hover{

background:var(--coach-primary);

color:#fff;

}

/*==================================================
LIKE BUTTON
==================================================*/

.coach-like-btn{

cursor:pointer;

transition:.25s;

}

.coach-like-btn.liked{

color:#ef4444;

}

.coach-like-btn.liked i{

color:#ef4444;

}

.coach-like-btn.loading{

pointer-events:none;

opacity:.65;

}

/*==================================================
NEW COMMENT
==================================================*/

.coach-comment-new{

animation:commentAppear .35s ease;

}

@keyframes commentAppear{

from{

opacity:0;

transform:translateY(16px);

}

to{

opacity:1;

transform:translateY(0);

}

}

#coachCommentBtn.loading{

pointer-events:none;

opacity:.65;

}


/*==================================================
Smooth rendering
==================================================*/

.coach-article-content img{

    max-width:100%;

    height:auto;

    display:block;

}

.coach-article-content iframe,

.coach-article-content video,

.coach-article-content table{

    max-width:100%;

}


/*==================================================
READ ALL COMMENTS
==================================================*/

.coach-comments-actions{

display:flex;

justify-content:center;

margin-top:20px;

}

.coach-read-comments{

display:inline-flex;

align-items:center;

gap:10px;

padding:12px 22px;

border:none;

border-radius:999px;

background:linear-gradient(
135deg,
var(--coach-primary),
var(--coach-primary-dark)
);

color:#fff;

font-size:.88rem;

font-weight:700;

cursor:pointer;

text-decoration:none;

box-shadow:0 12px 28px rgba(37,99,235,.22);

transition:all .25s ease;

}

.coach-read-comments:hover{

transform:translateY(-2px);

box-shadow:0 18px 36px rgba(37,99,235,.30);

}

.coach-read-comments i{

font-size:1rem;

}

.coach-comments-count{

display:inline-flex;

align-items:center;

justify-content:center;

min-width:26px;

height:26px;

padding:0 8px;

margin-left:2px;

background:rgba(255,255,255,.18);

border:1px solid rgba(255,255,255,.25);

border-radius:999px;

font-size:.78rem;

font-weight:700;

color:#fff;

}

.coach-read-comments:active{

transform:scale(.98);

}

/*==================================================
SHARE MENU
==================================================*/

.coach-share-menu{

position:fixed;

top:50%;

left:50%;

transform:translate(-50%,-50%) scale(.95);

width:320px;

background:#fff;

border:1px solid var(--coach-border);

border-radius:20px;

box-shadow:0 30px 60px rgba(15,23,42,.18);

padding:14px;

display:none;

flex-direction:column;

gap:8px;

z-index:5000;

opacity:0;

transition:
opacity .25s ease,
transform .25s ease;

}

.coach-share-menu.active{

display:flex;

opacity:1;

transform:translate(-50%,-50%) scale(1);

}

.coach-share-item{

display:flex;

align-items:center;

gap:14px;

width:100%;

padding:13px 16px;

background:#fff;

border:none;

border-radius:14px;

font-size:.9rem;

font-weight:600;

color:var(--coach-text);

cursor:pointer;

transition:all .2s ease;

text-align:left;

}

.coach-share-item:hover{

background:#eff6ff;

color:var(--coach-primary);

transform:translateX(4px);

}

.coach-share-item i{

width:24px;

font-size:1.05rem;

color:var(--coach-primary);

text-align:center;

}

.coach-share-overlay{

position:fixed;

inset:0;

background:rgba(15,23,42,.35);

backdrop-filter:blur(3px);

z-index:4990;

display:none;

}

.coach-share-overlay.active{

display:block;

}

@media(max-width:576px){

.coach-share-menu{

width:92%;

border-radius:18px;

}

}


/*==================================================
POST ACTIONS
==================================================*/

.coach-post-actions{

display:flex;

align-items:center;

gap:10px;

margin-top:18px;

flex-wrap:wrap;

}

.coach-action-btn{

display:inline-flex;

align-items:center;

gap:7px;

padding:8px 14px;

background:#fff;

border:1px solid var(--coach-border);

border-radius:999px;

font-size:.80rem;

font-weight:600;

line-height:1;

color:var(--coach-text);

text-decoration:none;

cursor:pointer;

transition:all .25s ease;

box-shadow:0 6px 18px rgba(15,23,42,.05);

}

.coach-action-btn i{

font-size:.90rem;

color:var(--coach-primary);

transition:.25s;

}

.coach-action-btn span{

white-space:nowrap;

}

.coach-action-btn:hover{

background:#f8fbff;

border-color:#bfdbfe;

color:var(--coach-primary);

transform:translateY(-2px);

box-shadow:0 10px 24px rgba(37,99,235,.10);

}

.coach-action-btn:hover i{

color:var(--coach-primary);

}

.coach-action-btn:active{

transform:scale(.97);

}

/*==================================================
BOOKMARK ACTIVE
==================================================*/

.coach-bookmark-btn.bookmarked{

background:#eff6ff;

border-color:#93c5fd;

color:var(--coach-primary);

}

.coach-bookmark-btn.bookmarked i{

color:var(--coach-primary);

}

/*==================================================
MOBILE
==================================================*/

@media(max-width:576px){

.coach-post-actions{

gap:8px;

}

.coach-action-btn{

padding:7px 12px;

font-size:.76rem;

}

.coach-action-btn i{

font-size:.85rem;

}

}


.coach-language-switcher{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
    margin-top:8px;
}

.coach-language-label{
    display:flex;
    align-items:center;
    gap:4px;
    margin:0;
    font-size:14px;
    font-weight:600;
    color:#2172e3;
    line-height:1;
}

.coach-language-select{
    width:170px;
    height:32px;
    min-height:32px;
    padding:.2rem .55rem;
    font-size:.74rem;
    border-radius:8px;
}


.coach-language-badge{

    display:inline-flex;
    align-items:center;

    margin-bottom:12px;

    padding:6px 12px;

    border-radius:999px;

    background:#eff6ff;

    color:#2563eb;

    font-size: 13px;

    font-weight:700;

    border:1px solid #bfdbfe;

}


/* ==========================================================
LOGIN MESSAGE
========================================================== */

.coach-login-message{
    display:flex;
    align-items:flex-start;
    gap:16px;

    margin-bottom:20px;
    padding:20px;

    border-radius:18px;
}

.coach-login-message__icon{
    flex:0 0 auto;

    width:46px;
    height:46px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:14px;

    font-size:20px;
}

.coach-login-message__content{
    flex:1;
}

.coach-login-message__content h4{
    margin:0 0 6px;
}

.coach-login-message__content p{
    margin:0 0 14px;
}

.coach-login-btn{
    display:inline-flex;
    align-items:center;
}

.coach-author-avatar-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    font-weight:800;
    text-transform:uppercase;
}


/*==================================================
ARTICLE PAGE NAVIGATION
==================================================*/

.coach-page-navigation{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:18px;

    margin-top:28px;

    padding-top:20px;

    border-top:1px solid var(--coach-border);

}


/*==================================================
PAGE BUTTONS
==================================================*/

.coach-page-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    min-width:110px;

    padding:10px 18px;

    border:1px solid var(--coach-border);

    border-radius:999px;

    background:#fff;

    color:var(--coach-text);

    font-family:inherit;

    font-size:.84rem;

    font-weight:700;

    line-height:1;

    cursor:pointer;

    box-shadow:0 6px 18px rgba(15,23,42,.05);

    transition:

        background .25s ease,

        color .25s ease,

        border-color .25s ease,

        transform .25s ease,

        box-shadow .25s ease;

}

.coach-page-btn:hover:not(:disabled){

    background:var(--coach-primary);

    border-color:var(--coach-primary);

    color:#fff;

    transform:translateY(-2px);

    box-shadow:0 10px 24px rgba(37,99,235,.16);

}

.coach-page-btn:active:not(:disabled){

    transform:translateY(0);

}


/*==================================================
DISABLED BUTTON
==================================================*/

.coach-page-btn:disabled{

    opacity:.4;

    cursor:default;

    box-shadow:none;

}


/*==================================================
PAGE COUNTER
==================================================*/

.coach-page-counter{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:7px;

    min-width:70px;

    font-size:.9rem;

    font-weight:700;

    color:var(--coach-text);

}

.coach-page-separator{

    color:var(--coach-muted);

    font-weight:500;

}

#coachCurrentPage{

    color:var(--coach-primary);

}

#coachTotalPages{

    color:var(--coach-muted);

}


/*==================================================
MOBILE
==================================================*/

@media(max-width:576px){

    .coach-page-navigation{

        gap:10px;

        margin-top:22px;

        padding-top:16px;

    }

    .coach-page-btn{

        min-width:0;

        padding:9px 13px;

        font-size:.78rem;

    }

    .coach-page-btn span{

        display:none;

    }

    .coach-page-counter{

        min-width:55px;

        font-size:.84rem;

    }

}


/* ==========================================================
   READER TABLE OF CONTENTS
   ========================================================== */

.reader-toc-list{
    width:100%;
    margin:0 0 30px 0;
    padding:0;

    background:#ffffff;

    border:1px solid rgba(15,23,42,.08);
    border-radius:18px;

    box-shadow:
        0 8px 30px rgba(15,23,42,.06);

    overflow:hidden;
}


/* ==========================================================
   HEADER
   ========================================================== */

.reader-toc-header{
    display:flex;
    align-items:center;
    gap:12px;

    padding:18px 20px;

    background:
        linear-gradient(
            135deg,
            #f8fafc,
            #eef2ff
        );

    border-bottom:1px solid
        rgba(15,23,42,.07);
}


.reader-toc-icon{
    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    border-radius:10px;

    background:#ffffff;

    color:#4f46e5;

    font-size:18px;

    box-shadow:
        0 4px 12px rgba(15,23,42,.08);
}


.reader-toc-title{
    font-size:18px;
    font-weight:700;

    color:#172033;

    line-height:1.3;
}


/* ==========================================================
   PAGE LABEL
   ========================================================== */

.reader-toc-page-label{
    margin:0;

    padding:13px 20px;

    font-size:12px;
    font-weight:800;

    letter-spacing:.08em;
    text-transform:uppercase;

    color:#64748b;

    background:#f8fafc;

    border-bottom:1px solid
        rgba(15,23,42,.06);
}


/* ==========================================================
   ITEMS CONTAINER
   ========================================================== */

.reader-toc-items{
    padding:8px 0;
}


/* ==========================================================
   ITEM
   ========================================================== */

.reader-toc-item{
    width:100%;

    display:grid;

    grid-template-columns:
        34px
        minmax(0,1fr)
        20px;

    align-items:center;

    gap:10px;

    padding:11px 18px;

    margin:0;

    border:0;

    border-bottom:1px solid
        rgba(15,23,42,.045);

    background:transparent;

    color:#334155;

    text-align:left;

    cursor:pointer;

    transition:
        background .2s ease,
        color .2s ease,
        padding-left .2s ease;
}


.reader-toc-item:last-child{
    border-bottom:0;
}


.reader-toc-item:hover{
    background:#f8fafc;

    color:#4f46e5;

    padding-left:22px;
}


/* ==========================================================
   NUMBER
   ========================================================== */

.reader-toc-number{
    display:flex;

    align-items:center;
    justify-content:center;

    width:28px;
    height:28px;

    border-radius:8px;

    background:#f1f5f9;

    color:#64748b;

    font-size:11px;
    font-weight:800;

    flex-shrink:0;
}


.reader-toc-item:hover
.reader-toc-number{
    background:#eef2ff;

    color:#4f46e5;
}


/* ==========================================================
   TITLE
   ========================================================== */

.reader-toc-text{
    min-width:0;

    font-size:14px;

    line-height:1.55;

    overflow:hidden;

    display:-webkit-box;

    -webkit-box-orient:vertical;

    -webkit-line-clamp:2;
}


/* ==========================================================
   ARROW
   ========================================================== */

.reader-toc-arrow{
    display:flex;

    align-items:center;
    justify-content:center;

    color:#94a3b8;

    font-size:12px;

    transition:
        transform .2s ease,
        color .2s ease;
}


.reader-toc-item:hover
.reader-toc-arrow{
    color:#4f46e5;

    transform:translateX(3px);
}


/* ==========================================================
   HIERARCHY
   ========================================================== */

.reader-toc-h1{
    font-weight:700;
}


.reader-toc-h2{
    padding-left:28px;
}


.reader-toc-h3{
    padding-left:42px;
}


.reader-toc-h4{
    padding-left:56px;
}


.reader-toc-h2 .reader-toc-text,
.reader-toc-h3 .reader-toc-text,
.reader-toc-h4 .reader-toc-text{
    font-size:13px;
}


/* ==========================================================
   EMPTY
   ========================================================== */

.reader-toc-empty{
    padding:20px;

    color:#94a3b8;

    font-size:13px;

    text-align:center;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:768px){

    .reader-toc-list{
        border-radius:14px;

        margin-bottom:22px;
    }


    .reader-toc-header{
        padding:15px 16px;
    }


    .reader-toc-title{
        font-size:16px;
    }


    .reader-toc-page-label{
        padding:11px 16px;
    }


    .reader-toc-item{
        grid-template-columns:
            30px
            minmax(0,1fr)
            18px;

        gap:8px;

        padding:10px 14px;
    }


    .reader-toc-item:hover{
        padding-left:17px;
    }


    .reader-toc-number{
        width:25px;
        height:25px;

        font-size:10px;
    }


    .reader-toc-text{
        font-size:13px;

        line-height:1.45;
    }


    .reader-toc-h2{
        padding-left:20px;
    }


    .reader-toc-h3{
        padding-left:30px;
    }


    .reader-toc-h4{
        padding-left:40px;
    }

}


  
/* ==========================================================
   MULTILINGUAL ARTICLE CONTENT
   Hindi / Arabic / CJK / Long Text Protection
   ========================================================== */

.coach-article-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
    white-space: normal;
}

.coach-article-content p,
.coach-article-content li,
.coach-article-content blockquote,
.coach-article-content h1,
.coach-article-content h2,
.coach-article-content h3,
.coach-article-content h4,
.coach-article-content h5,
.coach-article-content h6,
.coach-article-content strong,
.coach-article-content span {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
}

.coach-article-content img,
.coach-article-content video,
.coach-article-content iframe,
.coach-article-content table {
    max-width: 100%;
}

.coach-article-content table {
    overflow-wrap: anywhere;
    word-break: break-word;
}