/* =============================================================
 * Alijm Comment Pro - Mobile-safe, Isolated, Theme-agnostic
 * ============================================================= */

/* CSS variables scoped to plugin only */
.alijm-cp-wrapper,
.alijm-cp-admin{
    --alijm-cp-primary:#0a7cff;
    --alijm-cp-star:#ffb400;
    --alijm-cp-border:#e5e7eb;
    --alijm-cp-bg:#fafafa;
    --alijm-cp-radius:10px;
    --alijm-cp-text:#111827;
    --alijm-cp-muted:#6b7280;
}

/* =============== Frontend =============== */
.alijm-cp-wrapper{
    display:block;
    clear:both;
    position:relative;
    width:100%;
    max-width:100%;
    margin:30px 0;
    padding:20px;
    background:var(--alijm-cp-bg);
    border:1px solid var(--alijm-cp-border);
    border-radius:var(--alijm-cp-radius);
    font-family:inherit;
    font-size:14px;
    direction:rtl;
    text-align:right;
    box-sizing:border-box;
    overflow:hidden;
    word-wrap:break-word;
    overflow-wrap:break-word;
    /* شکستن از layout والد (Grid/Flex قالب) */
    grid-column:1/-1;
    flex-basis:100%;
    contain:layout;
}

/* box-sizing فقط برای المان‌های خود پلاگین (نه با * universal) */
.alijm-cp-wrapper .alijm-cp-form,
.alijm-cp-wrapper .alijm-cp-form *,
.alijm-cp-wrapper .alijm-cp-item,
.alijm-cp-wrapper .alijm-cp-item *,
.alijm-cp-wrapper .alijm-cp-summary,
.alijm-cp-wrapper .alijm-cp-summary *,
.alijm-cp-wrapper .alijm-cp-notice,
.alijm-cp-wrapper .alijm-cp-toast,
.alijm-cp-wrapper input,
.alijm-cp-wrapper textarea,
.alijm-cp-wrapper button,
.alijm-cp-wrapper select{
    box-sizing:border-box;
    max-width:100%;
}

.alijm-cp-title{
    font-size:18px;
    margin:0 0 16px;
    padding:0;
    font-weight:700;
    color:var(--alijm-cp-text);
    line-height:1.5;
}

.alijm-cp-summary{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:16px;
    padding:10px 12px;
    background:#fff;
    border-radius:8px;
    border:1px solid var(--alijm-cp-border);
}
.alijm-cp-avg{
    font-size:20px;
    font-weight:800;
    color:var(--alijm-cp-text);
    line-height:1;
}
.alijm-cp-stars-static{white-space:nowrap}
.alijm-cp-stars-static .alijm-cp-star,
.alijm-cp-star{
    color:#d1d5db;
    font-size:20px;
    line-height:1;
    display:inline-block;
    vertical-align:middle;
}
.alijm-cp-star.on{color:var(--alijm-cp-star)}
.alijm-cp-total{color:var(--alijm-cp-muted);font-size:13px}

.alijm-cp-notice{
    background:#fef3c7;
    border:1px solid #fde68a;
    color:#92400e;
    padding:10px 12px;
    border-radius:8px;
    margin-bottom:12px;
    font-size:13px;
    line-height:1.8;
}

.alijm-cp-form{
    background:#fff;
    padding:14px;
    border:1px solid var(--alijm-cp-border);
    border-radius:8px;
    margin-bottom:16px;
    width:100%;
}

.alijm-cp-guest-name,
.alijm-cp-textarea{
    display:block;
    width:100%;
    max-width:100%;
    padding:10px 12px;
    border:1px solid var(--alijm-cp-border);
    border-radius:8px;
    margin:0 0 10px;
    font:inherit;
    font-size:14px;
    line-height:1.6;
    color:var(--alijm-cp-text);
    background:#fff;
    box-sizing:border-box;
    -webkit-appearance:none;
    appearance:none;
}
.alijm-cp-textarea{
    min-height:100px;
    resize:vertical;
}
.alijm-cp-textarea:focus,
.alijm-cp-guest-name:focus{
    outline:none;
    border-color:var(--alijm-cp-primary);
    box-shadow:0 0 0 3px rgba(10,124,255,.15);
}

.alijm-cp-rating-wrap{
    display:flex;
    align-items:center;
    gap:8px;
    margin:10px 0;
    flex-wrap:wrap;
}
.alijm-cp-rating-label{
    color:#374151;
    font-size:13px;
}
.alijm-cp-stars{
    display:inline-flex;
    flex-direction:row-reverse;
    gap:2px;
    cursor:pointer;
    line-height:1;
}
.alijm-cp-star-input{
    font-size:24px;
    transition:transform .1s;
    user-select:none;
    line-height:1;
}
.alijm-cp-star-input:hover{transform:scale(1.15)}

.alijm-cp-submit{
    display:inline-block;
    background:var(--alijm-cp-primary);
    color:#fff;
    border:0;
    padding:10px 22px;
    border-radius:8px;
    font:inherit;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    transition:.2s;
    text-decoration:none;
    line-height:1.4;
    -webkit-appearance:none;
    appearance:none;
}
.alijm-cp-submit:hover,
.alijm-cp-submit:focus{background:#0563d1;color:#fff}
.alijm-cp-submit:disabled{opacity:.6;cursor:not-allowed}

.alijm-cp-form-msg{
    margin-top:10px;
    font-size:13px;
    min-height:18px;
    line-height:1.6;
}
.alijm-cp-form-msg.ok{color:#059669}
.alijm-cp-form-msg.err{color:#dc2626}

.alijm-cp-hp{
    position:absolute!important;
    left:-9999px!important;
    top:-9999px!important;
    opacity:0!important;
    pointer-events:none!important;
    height:0!important;
    width:0!important;
    overflow:hidden;
}

.alijm-cp-list{margin-top:10px}
.alijm-cp-item{
    background:#fff;
    padding:12px 14px;
    border:1px solid var(--alijm-cp-border);
    border-radius:8px;
    margin-bottom:10px;
    word-wrap:break-word;
    overflow-wrap:break-word;
}
.alijm-cp-item.alijm-cp-depth-2{margin-right:16px;background:#fbfbfb}
.alijm-cp-item.alijm-cp-depth-3{margin-right:32px}
.alijm-cp-item.alijm-cp-depth-4{margin-right:48px}
.alijm-cp-item.alijm-cp-depth-5{margin-right:64px}

.alijm-cp-item-head{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin-bottom:6px;
}
.alijm-cp-item-author{
    color:var(--alijm-cp-text);
    font-size:13px;
    font-weight:700;
}
.alijm-cp-date{
    color:var(--alijm-cp-muted);
    font-size:11px;
}
.alijm-cp-item-body{
    color:#374151;
    line-height:1.9;
    font-size:14px;
    word-wrap:break-word;
    overflow-wrap:break-word;
}
.alijm-cp-reply-link{
    display:inline-block;
    margin-top:6px;
    color:var(--alijm-cp-primary);
    text-decoration:none;
    font-size:12px;
}
.alijm-cp-reply-link:hover{text-decoration:underline;color:#0563d1}

.alijm-cp-toast{
    background:#10b981;
    color:#fff;
    padding:10px 14px;
    border-radius:8px;
    margin-bottom:12px;
    font-size:14px;
}

/* ============ Mobile Optimizations ============ */
@media (max-width:768px){
    .alijm-cp-wrapper{
        margin:20px 0;
        padding:14px;
        border-radius:8px;
    }
    .alijm-cp-title{font-size:16px}
    .alijm-cp-summary{padding:8px 10px}
    .alijm-cp-avg{font-size:18px}
    .alijm-cp-stars-static .alijm-cp-star,
    .alijm-cp-star{font-size:18px}
    .alijm-cp-form{padding:10px}
    .alijm-cp-textarea{min-height:80px;padding:8px 10px}
    .alijm-cp-guest-name{padding:8px 10px}
    .alijm-cp-star-input{font-size:22px}
    .alijm-cp-submit{width:100%;padding:12px 16px;text-align:center}
    .alijm-cp-item{padding:10px 12px}
    .alijm-cp-item.alijm-cp-depth-2,
    .alijm-cp-item.alijm-cp-depth-3,
    .alijm-cp-item.alijm-cp-depth-4,
    .alijm-cp-item.alijm-cp-depth-5{margin-right:8px}
}
@media (max-width:400px){
    .alijm-cp-wrapper{padding:10px;margin:15px 0}
    .alijm-cp-rating-wrap{gap:4px}
}

/* ============ Admin ============ */
.alijm-cp-admin .alijm-cp-badge{padding:2px 8px;border-radius:12px;font-size:12px}
.alijm-cp-admin .alijm-cp-approved{background:#d1fae5;color:#065f46}
.alijm-cp-admin .alijm-cp-pending{background:#fef3c7;color:#92400e}
.alijm-cp-admin .alijm-cp-filters{margin:10px 0 15px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.alijm-cp-admin .alijm-cp-filter-tag{background:#e0f2fe;color:#075985;padding:4px 10px;border-radius:12px;font-size:13px;font-weight:normal;margin-right:10px}
.alijm-cp-admin .alijm-cp-clear-filter{color:#dc2626;text-decoration:none;font-weight:bold;margin-right:6px}
.alijm-cp-admin .alijm-cp-sort-link{text-decoration:none;color:inherit;display:inline-flex;align-items:center;gap:4px}
.alijm-cp-admin .alijm-cp-sort-link:hover{color:var(--alijm-cp-primary)}
.alijm-cp-admin .alijm-cp-sort-arrow{font-size:12px;opacity:.6}
.alijm-cp-admin .alijm-cp-pagination{display:inline-flex;gap:4px}
.alijm-cp-admin .alijm-cp-table td{vertical-align:middle}
.alijm-cp-admin .alijm-cp-section-title{margin-top:35px;padding:10px 14px;background:#f0f6fc;border-right:4px solid var(--alijm-cp-primary);border-radius:6px;font-size:17px}
.alijm-cp-admin .alijm-cp-section-desc{color:#4b5563;background:#fafafa;padding:8px 12px;border-radius:6px;margin:6px 0 16px;font-size:13px;line-height:1.8}
.alijm-cp-admin .alijm-cp-cb{display:inline-block;margin:4px 12px 4px 0;padding:6px 10px;background:#fff;border:1px solid var(--alijm-cp-border);border-radius:6px;font-size:13px;transition:.2s}
.alijm-cp-admin .alijm-cp-cb:hover{background:#f3f4f6;border-color:var(--alijm-cp-primary)}
.alijm-cp-admin .alijm-cp-cb input{margin-left:4px}