/* MMP Parcel Tracking - front-end styles */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');

.mpt-track-wrap {
	font-family: 'Poppins', sans-serif;
	max-width: 640px;
	margin: 0 auto;
	padding: 32px 24px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 24px rgba(56,66,82,0.08);
}

.mpt-track-header h2 {
	color: #384252;
	font-weight: 700;
	font-size: 24px;
	margin: 0 0 4px;
}

.mpt-track-header p {
	color: #6b7280;
	margin: 0 0 20px;
	font-size: 14px;
}

.mpt-track-form {
	display: flex;
	gap: 10px;
	margin-bottom: 24px;
}

.mpt-track-form input {
	flex: 1;
	padding: 12px 16px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-size: 15px;
	outline: none;
	transition: border-color 0.2s;
}

.mpt-track-form input:focus {
	border-color: #B92025;
}

.mpt-track-form button {
	background: #B92025;
	color: #fff;
	border: none;
	padding: 12px 28px;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 15px;
	cursor: pointer;
	transition: background 0.2s;
}

.mpt-track-form button:hover {
	background: #9a1a1e;
}

.mpt-track-error {
	background: #fef2f2;
	color: #B92025;
	padding: 12px 16px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 500;
}

.mpt-track-result .mpt-result-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #384252;
	color: #fff;
	padding: 16px 20px;
	border-radius: 8px;
	margin-bottom: 24px;
}

.mpt-track-result .mpt-result-header .mpt-tn {
	font-weight: 700;
	font-size: 16px;
}

.mpt-track-result .mpt-result-header .mpt-current-status {
	background: #B92025;
	padding: 4px 14px;
	border-radius: 20px;
	font-size: 13px;
	font-weight: 600;
}

.mpt-timeline {
	position: relative;
	padding-left: 28px;
}

.mpt-timeline::before {
	content: '';
	position: absolute;
	left: 8px;
	top: 6px;
	bottom: 6px;
	width: 2px;
	background: #e5e7eb;
}

.mpt-timeline-item {
	position: relative;
	padding-bottom: 22px;
}

.mpt-timeline-item::before {
	content: '';
	position: absolute;
	left: -28px;
	top: 2px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #B92025;
	border: 3px solid #fff;
	box-shadow: 0 0 0 2px #B92025;
}

.mpt-timeline-item:last-child {
	padding-bottom: 0;
}

.mpt-timeline-item .mpt-tl-status {
	font-weight: 600;
	color: #384252;
	font-size: 14.5px;
}

.mpt-timeline-item .mpt-tl-meta {
	color: #9ca3af;
	font-size: 12.5px;
	margin-top: 2px;
}

.mpt-timeline-item .mpt-tl-note {
	color: #6b7280;
	font-size: 13px;
	margin-top: 2px;
}

/* Rider self-service dashboard */
.mpt-rider-wrap {
	font-family: 'Poppins', sans-serif;
	max-width: 480px;
	margin: 0 auto;
	padding: 24px 18px;
}

.mpt-rider-login h2 {
	color: #384252;
	font-weight: 700;
	font-size: 22px;
	margin: 0 0 4px;
}

.mpt-rider-login p {
	color: #6b7280;
	font-size: 14px;
	margin: 0 0 18px;
}

.mpt-rider-login form {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.mpt-rider-login input {
	padding: 14px 16px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-size: 16px;
	outline: none;
}

.mpt-rider-login input:focus {
	border-color: #B92025;
}

.mpt-rider-login button {
	background: #B92025;
	color: #fff;
	border: none;
	padding: 14px;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 16px;
	cursor: pointer;
}

.mpt-rider-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 18px;
}

.mpt-rider-header #mpt-rider-name {
	font-weight: 700;
	color: #384252;
	font-size: 17px;
}

.mpt-logout-btn {
	background: none;
	border: 1px solid #e5e7eb;
	color: #6b7280;
	padding: 6px 14px;
	border-radius: 20px;
	font-size: 13px;
	cursor: pointer;
}

.mpt-rider-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 16px;
	margin-bottom: 14px;
	box-shadow: 0 2px 8px rgba(56,66,82,0.06);
}

.mpt-rider-tn {
	font-weight: 700;
	color: #384252;
	font-size: 15px;
}

.mpt-rider-customer, .mpt-rider-address {
	color: #6b7280;
	font-size: 13px;
	margin-top: 2px;
}

.mpt-rider-current {
	font-size: 13px;
	color: #384252;
	margin: 8px 0 12px;
}

.mpt-rider-btn-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.mpt-rider-status-btn {
	flex: 1 1 auto;
	min-width: 100px;
	padding: 10px 8px;
	border: none;
	border-radius: 6px;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 12.5px;
	color: #fff;
	cursor: pointer;
	background: #384252;
}

.mpt-btn-picked_up { background: #384252; }
.mpt-btn-in_transit { background: #2563eb; }
.mpt-btn-out_for_delivery { background: #d97706; }
.mpt-btn-delivered { background: #16a34a; }
.mpt-btn-failed { background: #B92025; }

.mpt-rider-empty {
	text-align: center;
	color: #9ca3af;
	padding: 40px 0;
	font-size: 14px;
}

/* Client request form */
.mpt-request-wrap {
	font-family: 'Poppins', sans-serif;
	max-width: 520px;
	margin: 0 auto;
	padding: 28px 22px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 24px rgba(56,66,82,0.08);
}

.mpt-request-wrap h2 {
	color: #384252;
	font-weight: 700;
	font-size: 22px;
	margin: 0 0 4px;
}

.mpt-request-wrap p {
	color: #6b7280;
	font-size: 14px;
	margin: 0 0 20px;
}

.mpt-request-wrap form {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.mpt-request-wrap label {
	font-size: 13px;
	font-weight: 600;
	color: #384252;
	margin-top: 10px;
}

.mpt-request-wrap input,
.mpt-request-wrap select,
.mpt-request-wrap textarea {
	padding: 11px 14px;
	border: 2px solid #e5e7eb;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-size: 14.5px;
	outline: none;
}

.mpt-request-wrap input:focus,
.mpt-request-wrap select:focus,
.mpt-request-wrap textarea:focus {
	border-color: #B92025;
}

.mpt-request-wrap button {
	margin-top: 16px;
	background: #B92025;
	color: #fff;
	border: none;
	padding: 13px;
	border-radius: 8px;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 15px;
	cursor: pointer;
}

.mpt-req-success {
	margin-top: 16px;
	background: #f0fdf4;
	color: #16a34a;
	padding: 12px 16px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 500;
}

.mpt-req-type {
	background: #384252;
}

/* Admin dashboard */
.mpt-dash-cards {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 20px 0 30px;
}

.mpt-dash-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 18px 22px;
	min-width: 160px;
	flex: 1;
	box-shadow: 0 2px 6px rgba(56,66,82,0.05);
}

.mpt-dash-num {
	font-size: 28px;
	font-weight: 700;
	color: #384252;
}

.mpt-dash-card-blue .mpt-dash-num { color: #2563eb; }
.mpt-dash-card-green .mpt-dash-num { color: #16a34a; }
.mpt-dash-card-dark .mpt-dash-num { color: #384252; }
.mpt-dash-card-red .mpt-dash-num { color: #B92025; }

.mpt-dash-label {
	font-size: 13px;
	color: #6b7280;
	margin-top: 4px;
}

.mpt-dash-link {
	display: inline-block;
	margin-top: 6px;
	font-size: 12.5px;
	color: #B92025;
	font-weight: 600;
	text-decoration: none;
}

.mpt-dash-row {
	display: flex;
	gap: 24px;
	flex-wrap: wrap;
}

.mpt-dash-col {
	flex: 1;
	min-width: 320px;
}

.mpt-dash-activity {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mpt-dash-activity li {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	padding: 10px 14px;
	margin-bottom: 8px;
	font-size: 13.5px;
}

.mpt-dash-activity-meta {
	color: #9ca3af;
	font-size: 12px;
	margin-top: 3px;
}

.mpt-dash-quicklinks {
	margin-top: 30px;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

/* Owner Dashboard (standalone, outside wp-admin) */
.mpt-owner-wrap {
	font-family: 'Poppins', sans-serif;
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px;
}

.mpt-owner-login {
	max-width: 380px;
	margin: 60px auto;
	background: #fff;
	padding: 32px 26px;
	border-radius: 12px;
	box-shadow: 0 4px 24px rgba(56,66,82,0.1);
	text-align: center;
}

.mpt-owner-login h2 { color: #384252; font-weight: 700; margin: 0 0 4px; }
.mpt-owner-login p { color: #6b7280; font-size: 14px; margin: 0 0 18px; }
.mpt-owner-login form { display: flex; flex-direction: column; gap: 10px; }
.mpt-owner-login input {
	padding: 12px 14px; border: 2px solid #e5e7eb; border-radius: 8px;
	font-family: 'Poppins', sans-serif; font-size: 15px; outline: none;
}
.mpt-owner-login input:focus { border-color: #B92025; }
.mpt-owner-login button {
	background: #B92025; color: #fff; border: none; padding: 12px;
	border-radius: 8px; font-weight: 600; font-size: 15px; cursor: pointer;
}

.mpt-owner-topbar {
	display: flex; align-items: center; justify-content: space-between;
	background: #384252; color: #fff; padding: 14px 20px; border-radius: 10px; margin-bottom: 18px;
}
.mpt-owner-brand { font-weight: 700; font-size: 16px; }
#mpt-owner-welcome { font-size: 13px; opacity: 0.85; }

.mpt-owner-tabs { display: flex; gap: 8px; margin-bottom: 20px; flex-wrap: wrap; }
.mpt-owner-tab {
	background: #fff; border: 2px solid #e5e7eb; color: #384252;
	padding: 9px 18px; border-radius: 20px; font-family: 'Poppins', sans-serif;
	font-weight: 600; font-size: 13.5px; cursor: pointer;
}
.mpt-owner-tab.active { background: #B92025; border-color: #B92025; color: #fff; }

.mpt-owner-tabpanel h3 { color: #384252; font-size: 16px; margin: 20px 0 10px; }

.mpt-owner-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 8px; overflow: hidden; }
.mpt-owner-table td, .mpt-owner-table th { padding: 10px 12px; border-bottom: 1px solid #f0f0f0; font-size: 13.5px; text-align: left; }
.mpt-owner-table-wide th { background: #f9fafb; color: #384252; font-weight: 600; }

.mpt-owner-primary-btn {
	background: #B92025; color: #fff; border: none; padding: 10px 18px;
	border-radius: 8px; font-family: 'Poppins', sans-serif; font-weight: 600;
	font-size: 13.5px; cursor: pointer; margin-bottom: 12px;
}

.mpt-owner-small-btn {
	background: #384252; color: #fff; border: none; padding: 6px 12px;
	border-radius: 6px; font-size: 12px; cursor: pointer; margin-right: 4px;
}

.mpt-owner-inline-form-box {
	background: #fff; border: 1px solid #e5e7eb; border-radius: 8px;
	padding: 16px; margin-bottom: 16px; display: flex; flex-direction: column; gap: 8px; max-width: 420px;
}
.mpt-owner-inline-form-box input, .mpt-owner-inline-form-box textarea {
	padding: 9px 12px; border: 2px solid #e5e7eb; border-radius: 6px;
	font-family: 'Poppins', sans-serif; font-size: 13.5px; outline: none;
}
.mpt-owner-status-select, .mpt-owner-assign-select { padding: 5px; border-radius: 6px; border: 1px solid #e5e7eb; font-size: 12.5px; }

/* Admin styles */
.mpt-admin .mpt-table td { vertical-align: middle; }
.mpt-inline-form { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.mpt-note-input { width: 140px; }
.mpt-badge {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 20px;
	font-size: 12px;
	font-weight: 600;
	color: #fff;
	background: #384252;
}
.mpt-status-order_placed { background: #6b7280; }
.mpt-status-picked_up { background: #384252; }
.mpt-status-in_transit { background: #2563eb; }
.mpt-status-out_for_delivery { background: #d97706; }
.mpt-status-delivered { background: #16a34a; }
.mpt-status-failed { background: #B92025; }
.mpt-status-returned { background: #6b21a8; }
