@font-face{
    font-family:"IRANSansXV";
    src:url("fonts/iransans/IRANSansXV.woff") format("woff");
    font-weight:100 900;
    font-style:normal;
    font-display:swap;
}

:root{
    --mcp-font:"IRANSansXV", Tahoma, Arial, sans-serif;
    --mcp-bg:#f3f7fb;
    --mcp-panel:#ffffff;
    --mcp-text:#172033;
    --mcp-muted:#6b7280;
    --mcp-primary:#2563eb;
    --mcp-primary-dark:#1d4ed8;
    --mcp-border:#e5e7eb;
    --mcp-success:#16a34a;
    --mcp-danger:#dc2626;
    --mcp-radius:18px;
    --mcp-shadow:0 10px 30px rgba(15, 23, 42, 0.08);
    --mcp-sidebar:#0f172a;
    --mcp-sidebar-text:rgba(255,255,255,.88);
    --mcp-card-shadow:0 20px 50px rgba(15,23,42,.08);
    --mcp-overlay:rgba(15,23,42,.45);
}

html,
body{
    margin:0;
    padding:0;
    min-height:100%;
}

body.mcp-app-page{
    background:linear-gradient(135deg,#eef4ff 0%,#f8fbff 45%,#f2f8f7 100%);
    color:var(--mcp-text);
    font-family:var(--mcp-font);
    direction:rtl;
}

body.mcp-app-page,
body.mcp-app-page *,
body.mcp-app-page input,
body.mcp-app-page select,
body.mcp-app-page textarea,
body.mcp-app-page button,
body.mcp-app-page a,
body.mcp-app-page h1,
body.mcp-app-page h2,
body.mcp-app-page h3,
body.mcp-app-page h4,
body.mcp-app-page h5,
body.mcp-app-page h6,
body.mcp-app-page p,
body.mcp-app-page span,
body.mcp-app-page div,
body.mcp-app-page label,
body.mcp-app-page td,
body.mcp-app-page th{
    font-family:var(--mcp-font) !important;
}

.mcp-app-page *{
    box-sizing:border-box;
}

.mcp-app-page a{
    text-decoration:none;
}

.mcp-app-page .entry-header,
.mcp-app-page .site-header,
.mcp-app-page .site-footer,
.mcp-app-page .footer,
.mcp-app-page .header,
.mcp-app-page #masthead,
.mcp-app-page #colophon,
.mcp-app-page .ast-header-break-point,
.mcp-app-page .theme-page-title,
.mcp-app-page .page-header,
.mcp-app-page .elementor-location-header,
.mcp-app-page .elementor-location-footer{
    display:none !important;
}

.mcp-app-page #page,
.mcp-app-page .site,
.mcp-app-page .site-content,
.mcp-app-page .content-area,
.mcp-app-page .site-main,
.mcp-app-page .entry-content,
.mcp-app-page article,
.mcp-app-page .post,
.mcp-app-page .page{
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    max-width:100% !important;
    background:transparent !important;
    box-shadow:none !important;
    border:none !important;
}

.mcp-app-page .wp-site-blocks{
    padding:0 !important;
}

.mcp-shell{
    min-height:100vh;
    display:grid;
    grid-template-columns:280px minmax(0,1fr);
    position:relative;
}

.mcp-mobile-overlay{
    display:none;
}

.mcp-sidebar{
    background:var(--mcp-sidebar);
    color:#fff;
    padding:24px 18px;
    display:flex;
    flex-direction:column;
    gap:24px;
    position:relative;
    z-index:30;
}

.mcp-sidebar-brand{
    display:flex;
    align-items:center;
    gap:12px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.mcp-sidebar-logo{
    width:52px;
    height:52px;
    border-radius:16px;
    background:linear-gradient(135deg,#2563eb,#38bdf8);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:800;
    color:#fff;
    font-size:18px;
    flex-shrink:0;
}

.mcp-sidebar-brand h2{
    margin:0;
    color:#fff;
    font-size:18px;
    line-height:1.4;
}

.mcp-sidebar-brand p{
    margin:4px 0 0;
    color:rgba(255,255,255,.65);
    font-size:13px;
}

.mcp-sidebar-menu{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.mcp-sidebar-menu a{
    color:var(--mcp-sidebar-text);
    padding:14px 16px;
    border-radius:14px;
    transition:.2s ease;
    font-size:15px;
    font-weight:600;
}

.mcp-sidebar-menu a:hover,
.mcp-sidebar-menu a.is-active{
    background:rgba(255,255,255,.08);
    color:#fff;
}

.mcp-main{
    padding:24px;
    min-width:0;
}

.mcp-mobile-topbar{
    display:none;
}

.mcp-mobile-menu-toggle{
    appearance:none;
    border:none;
    background:#fff;
    color:var(--mcp-text);
    width:46px;
    height:46px;
    border-radius:14px;
    box-shadow:0 10px 30px rgba(15,23,42,.08);
    cursor:pointer;
    align-items:center;
    justify-content:center;
    font-size:22px;
    line-height:1;
}

.mcp-page-topbar{
    background:rgba(255,255,255,.72);
    border:1px solid rgba(255,255,255,.65);
    backdrop-filter:blur(10px);
    border-radius:22px;
    padding:18px 22px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:22px;
    box-shadow:var(--mcp-card-shadow);
}

.mcp-page-topbar h1{
    margin:0 0 6px;
    font-size:28px;
    font-weight:800;
    line-height:1.4;
}

.mcp-page-topbar p{
    margin:0;
    color:var(--mcp-muted);
    font-size:14px;
    line-height:1.8;
}

.mcp-page-user{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.mcp-page-user-badge{
    padding:10px 14px;
    background:#fff;
    border:1px solid var(--mcp-border);
    border-radius:999px;
    box-shadow:0 8px 25px rgba(15,23,42,.06);
    font-size:14px;
    font-weight:700;
    max-width:100%;
    word-break:break-word;
}

.mcp-panel{
    background:#fff;
    border:1px solid #edf2f7;
    border-radius:24px;
    padding:24px;
    box-shadow:var(--mcp-card-shadow);
    overflow:hidden;
}

.mcp-btn,
.mcp-app-page button,
.mcp-app-page input[type="submit"]{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:none;
    border-radius:14px;
    background:linear-gradient(135deg,#2563eb,#1d4ed8);
    color:#fff;
    padding:12px 18px;
    cursor:pointer;
    font-weight:700;
    transition:.2s ease;
    text-align:center;
}

.mcp-btn:hover,
.mcp-app-page button:hover,
.mcp-app-page input[type="submit"]:hover{
    transform:translateY(-1px);
    box-shadow:0 12px 30px rgba(37,99,235,.22);
}

.mcp-btn-outline{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 16px;
    border-radius:14px;
    border:1px solid var(--mcp-border);
    background:#fff;
    color:var(--mcp-text);
    font-weight:700;
}

.mcp-app-page input[type="text"],
.mcp-app-page input[type="email"],
.mcp-app-page input[type="password"],
.mcp-app-page input[type="number"],
.mcp-app-page input[type="tel"],
.mcp-app-page input[type="date"],
.mcp-app-page select,
.mcp-app-page textarea{
    width:100%;
    border:1px solid #dbe3ee;
    border-radius:14px;
    padding:13px 14px;
    background:#fff;
    color:var(--mcp-text);
    outline:none;
    transition:.2s ease;
    font-size:15px;
}

.mcp-app-page textarea{
    resize:vertical;
}

.mcp-app-page input:focus,
.mcp-app-page select:focus,
.mcp-app-page textarea:focus{
    border-color:#93c5fd;
    box-shadow:0 0 0 4px rgba(59,130,246,.12);
}

.mcp-alert{
    padding:14px 16px;
    border-radius:14px;
    margin-bottom:16px;
    font-size:14px;
    font-weight:600;
}

.mcp-alert-success,
.mcp-alert.success{
    background:#ecfdf3;
    color:#166534;
    border:1px solid #bbf7d0;
}

.mcp-alert-error,
.mcp-alert.error{
    background:#fef2f2;
    color:#991b1b;
    border:1px solid #fecaca;
}

body.mcp-sidebar-open{
    overflow:hidden;
}

@media (max-width: 991px){
    .mcp-shell{
        display:block;
    }

    .mcp-mobile-topbar{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        margin-bottom:16px;
    }

    .mcp-mobile-topbar-title{
        font-size:16px;
        font-weight:800;
        color:var(--mcp-text);
    }

    .mcp-mobile-menu-toggle{
        display:inline-flex;
    }

    .mcp-mobile-overlay{
        position:fixed;
        inset:0;
        background:var(--mcp-overlay);
        z-index:39;
    }

    body.mcp-sidebar-open .mcp-mobile-overlay{
        display:block;
    }

    .mcp-sidebar{
        position:fixed;
        top:0;
        right:0;
        bottom:0;
        width:min(84vw, 320px);
        max-width:320px;
        transform:translateX(100%);
        transition:transform .25s ease;
        overflow-y:auto;
        box-shadow:-10px 0 30px rgba(15,23,42,.22);
    }

    body.mcp-sidebar-open .mcp-sidebar{
        transform:translateX(0);
    }

    .mcp-main{
        padding:16px;
    }

    .mcp-page-topbar{
        flex-direction:column;
        align-items:flex-start;
        padding:16px;
        border-radius:18px;
    }

    .mcp-page-topbar h1{
        font-size:22px;
    }

    .mcp-panel{
        padding:16px;
        border-radius:18px;
    }
}

@media (max-width: 767px){
    .mcp-main{
        padding:12px;
    }

    .mcp-page-topbar{
        gap:14px;
        margin-bottom:16px;
    }

    .mcp-page-user{
        width:100%;
    }

    .mcp-page-user-badge{
        width:100%;
        border-radius:14px;
    }

    .mcp-panel{
        padding:14px;
    }

    .mcp-app-page input[type="text"],
    .mcp-app-page input[type="email"],
    .mcp-app-page input[type="password"],
    .mcp-app-page input[type="number"],
    .mcp-app-page input[type="tel"],
    .mcp-app-page input[type="date"],
    .mcp-app-page select,
    .mcp-app-page textarea{
        font-size:16px;
    }
}
