/*
|--------------------------------------------------------------------------
| Dashboard Layout
|--------------------------------------------------------------------------
*/

.sl-page-main {
    max-width: 100%;
}

.sl-page-main .sl-page-content {
    padding: 0;
}

.sl-page-main .fes-vendor-dashboard-wrap {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 2rem;
    align-items: flex-start;
}


/*
|--------------------------------------------------------------------------
| Sidebar Navigation
|--------------------------------------------------------------------------
*/

.sl-page-main .fes-vendor-menu {
    position: sticky;
    top: 2rem;
}

.sl-page-main .fes-vendor-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
}

.sl-page-main .fes-vendor-menu li {
    margin: 0;
}

.sl-page-main .fes-vendor-menu a {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .9rem 1.1rem;
    color: #334155;
    font-weight: 500;
    text-decoration: none;
    border-left: 3px solid transparent;
    transition: .2s;
}

.sl-page-main .fes-vendor-menu a:hover {
    background: #f8fafc;
    color: #2563eb;
}

.sl-page-main .fes-vendor-menu li.active > a {
    background: #eff6ff;
    color: #2563eb;
    border-left-color: #2563eb;
    font-weight: 600;
}

.sl-page-main .fes-vendor-menu .dashicons {
    font-size: 18px;
    width: 18px;
    height: 18px;
}


/*
|--------------------------------------------------------------------------
| Dashboard Content
|--------------------------------------------------------------------------
*/

.sl-page-main .fes-vendor-dashboard,
.sl-page-main .fes-vendor-products,
.sl-page-main .fes-vendor-profile,
.sl-page-main .fes-vendor-feedback,
.sl-page-main .fes-vendor-earnings {
    min-width: 0;
}


/*
|--------------------------------------------------------------------------
| Headings
|--------------------------------------------------------------------------
*/

.sl-page-main .fes-vendor-dashboard h2,
.sl-page-main .fes-vendor-dashboard h3 {
    margin: 0 0 1rem;
    color: #0f172a;
    font-weight: 600;
}

.sl-page-main .edd_user_commissions_header {
    margin-top: 2rem;
}


/*
|--------------------------------------------------------------------------
| Notices
|--------------------------------------------------------------------------
*/

.sl-page-main #fes-vendor-announcements,
.sl-page-main #fes-vendor-store-link {
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
}

.sl-page-main #fes-vendor-store-link a {
    word-break: break-word;
}


/*
|--------------------------------------------------------------------------
| Tables
|--------------------------------------------------------------------------
*/

.sl-page-main table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0 2rem;
    background: #fff;
    border: 1px solid #e2e8f0;
}

.sl-page-main th {
    padding: .9rem 1rem;
    text-align: left;
    font-size: .875rem;
    font-weight: 600;
    color: #0f172a;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.sl-page-main td {
    padding: .85rem 1rem;
    vertical-align: top;
    border-top: 1px solid #eef2f7;
    color: #475569;
}

.sl-page-main tbody tr:hover {
    background: #fafcff;
}


/*
|--------------------------------------------------------------------------
| Pagination
|--------------------------------------------------------------------------
*/

.sl-page-main .navigation {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin: 1rem 0 2rem;
}

.sl-page-main .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 .85rem;
    border: 1px solid #dbe3ec;
    border-radius: 8px;
    background: #fff;
    color: #475569;
    text-decoration: none;
}

.sl-page-main .page-numbers:hover {
    background: #eff6ff;
    color: #2563eb;
}

.sl-page-main .page-numbers.current {
    background: #2563eb;
    border-color: #2563eb;
    color: #fff;
}


/*
|--------------------------------------------------------------------------
| Forms
|--------------------------------------------------------------------------
*/

.sl-page-main input[type="text"],
.sl-page-main input[type="email"],
.sl-page-main input[type="number"],
.sl-page-main input[type="url"],
.sl-page-main input[type="password"],
.sl-page-main textarea,
.sl-page-main select {
    width: 100%;
    max-width: 100%;
    padding: .75rem .9rem;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background: #fff;
}

.sl-page-main textarea {
    min-height: 160px;
    resize: vertical;
}


/*
|--------------------------------------------------------------------------
| Buttons
|--------------------------------------------------------------------------
*/

.sl-page-main .button,
.sl-page-main input[type="submit"],
.sl-page-main .edd-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .75rem 1.25rem;
    border: 0;
    border-radius: 8px;
    background: #2563eb;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: .2s;
}

.sl-page-main .button:hover,
.sl-page-main input[type="submit"]:hover,
.sl-page-main .edd-submit:hover {
    background: #1d4ed8;
}


/* StudyLast FES dashboard icons
 * Replaces frontend Dashicons with embedded SVG icons.
 */

.fes-vendor-menu-tab .dashicons {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 7px;
	background-color: currentColor;
	font-size: 0;
	line-height: 1;
	vertical-align: middle;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 20px 20px;
	mask-size: 20px 20px;
}

.fes-vendor-menu-tab .dashicons::before {
	content: none !important;
}

/* Dashboard: four-panel grid */
.fes-vendor-menu-tab .dashicons-dashboard {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h8v8H3V3zm10 0h8v8h-8V3zM3 13h8v8H3v-8zm10 0h8v8h-8v-8z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h8v8H3V3zm10 0h8v8h-8V3zM3 13h8v8H3v-8zm10 0h8v8h-8v-8z'/%3E%3C/svg%3E");
}

/* Downloads: document */
.fes-vendor-menu-tab .dashicons-products {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 2h8l5 5v15H6V2zm2 2v16h9V8h-4V4H8zm7 .8V6h1.2L15 4.8zM10 11h5v2h-5v-2zm0 4h5v2h-5v-2z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6 2h8l5 5v15H6V2zm2 2v16h9V8h-4V4H8zm7 .8V6h1.2L15 4.8zM10 11h5v2h-5v-2zm0 4h5v2h-5v-2z'/%3E%3C/svg%3E");
}

/* Add Download: plus circle */
.fes-vendor-menu-tab .dashicons-plus {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 5v4h4v2h-4v4h-2v-4H7v-2h4V7h2z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 5v4h4v2h-4v4h-2v-4H7v-2h4V7h2z'/%3E%3C/svg%3E");
}

/* Earnings: wallet */
.fes-vendor-menu-tab .dashicons-money {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 5h14a2 2 0 0 1 2 2v2h1v8h-1v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2zm0 2v12h14v-2h-5a4 4 0 0 1 0-8h5V7H4zm9 4a2 2 0 1 0 0 4h6v-4h-6zm1 1h2v2h-2v-2z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 5h14a2 2 0 0 1 2 2v2h1v8h-1v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2zm0 2v12h14v-2h-5a4 4 0 0 1 0-8h5V7H4zm9 4a2 2 0 1 0 0 4h6v-4h-6zm1 1h2v2h-2v-2z'/%3E%3C/svg%3E");
}

/* Profile: user */
.fes-vendor-menu-tab .dashicons-admin-users {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a5 5 0 1 1 0 10 5 5 0 0 1 0-10zm0 2a3 3 0 1 0 0 6 3 3 0 0 0 0-6zM4 22v-2c0-4 3.6-7 8-7s8 3 8 7v2h-2v-2c0-2.8-2.7-5-6-5s-6 2.2-6 5v2H4z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a5 5 0 1 1 0 10 5 5 0 0 1 0-10zm0 2a3 3 0 1 0 0 6 3 3 0 0 0 0-6zM4 22v-2c0-4 3.6-7 8-7s8 3 8 7v2h-2v-2c0-2.8-2.7-5-6-5s-6 2.2-6 5v2H4z'/%3E%3C/svg%3E");
}

/* Logout: arrow leaving door */
.fes-vendor-menu-tab .dashicons-lock {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 3h9v2H6v14h7v2H4V3zm13 4 5 5-5 5-1.4-1.4 2.6-2.6H10v-2h8.2l-2.6-2.6L17 7z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 3h9v2H6v14h7v2H4V3zm13 4 5 5-5 5-1.4-1.4 2.6-2.6H10v-2h8.2l-2.6-2.6L17 7z'/%3E%3C/svg%3E");
}

/* Author Feedback: speech bubble with star */
.fes-vendor-menu-tab .dashicons-admin-generic {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h18v15H8l-5 4V3zm2 2v13l2.3-2H19V5H5zm7 2 1.2 2.4 2.8.4-2 2 .5 2.8-2.5-1.3-2.5 1.3.5-2.8-2-2 2.8-.4L12 7z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h18v15H8l-5 4V3zm2 2v13l2.3-2H19V5H5zm7 2 1.2 2.4 2.8.4-2 2 .5 2.8-2.5-1.3-2.5 1.3.5-2.8-2-2 2.8-.4L12 7z'/%3E%3C/svg%3E");
}

/* =========================================================
 * Additional FES controls
 * Removes remaining visual dependency on Dashicons.
 * ========================================================= */

/* Remove / close */
.fes-actions .dashicons-no,
.edd-fes__clone-actions .dashicons-no {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M18.3 5.7 12 12l6.3 6.3-1.4 1.4L10.6 13.4 4.3 19.7l-1.4-1.4L9.2 12 2.9 5.7l1.4-1.4 6.3 6.3 6.3-6.3 1.4 1.4z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M18.3 5.7 12 12l6.3 6.3-1.4 1.4L10.6 13.4 4.3 19.7l-1.4-1.4L9.2 12 2.9 5.7l1.4-1.4 6.3 6.3 6.3-6.3 1.4 1.4z'/%3E%3C/svg%3E");
}

/* Expand / collapse */
.fes-actions .dashicons-arrow-down {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m7.4 8.6 4.6 4.6 4.6-4.6L18 10l-6 6-6-6 1.4-1.4z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m7.4 8.6 4.6 4.6 4.6-4.6L18 10l-6 6-6-6 1.4-1.4z'/%3E%3C/svg%3E");
}

/* Add repeatable row */
.edd-fes__clone-actions .dashicons-plus {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 5h2v6h6v2h-6v6h-2v-6H5v-2h6V5z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M11 5h2v6h6v2h-6v6h-2v-6H5v-2h6V5z'/%3E%3C/svg%3E");
}
/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width: 1024px) {

    .sl-page-main .fes-vendor-dashboard-wrap {
        grid-template-columns: 1fr;
    }

    .sl-page-main .fes-vendor-menu {
        position: static;
    }

}

@media (max-width: 768px) {

    .sl-page-main {
        overflow: hidden;
    }

    .sl-page-main table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }

    .sl-page-main th,
    .sl-page-main td {
        padding: .75rem;
    }

}