/* ---- Employee Task Manager: shared styles ---- */

.etm-login-wrap {
	max-width: 380px;
	margin: 0 auto;
	padding: 24px;
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	background: #fff;
}
.etm-login-wrap h3 {
	margin-top: 0;
}
.etm-login-wrap form p {
	margin: 12px 0;
}
.etm-login-wrap input[type="text"],
.etm-login-wrap input[type="password"],
.etm-login-wrap input[type="email"] {
	width: 100%;
	padding: 8px 10px;
	box-sizing: border-box;
}
.etm-login-wrap .button {
	background: #2271b1;
	color: #fff;
	border: none;
	padding: 10px 18px;
	border-radius: 4px;
	cursor: pointer;
}

.etm-dashboard-wrap {
	max-width: 640px;
	margin: 0 auto;
	background: #fff;
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	padding: 24px;
}
.etm-dashboard-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 6px;
}
.etm-dashboard-header h3 {
	margin: 0 0 4px;
}
.etm-subtitle {
	margin: 0;
	color: #666;
	font-size: 13px;
}
.etm-logout-link {
	white-space: nowrap;
	color: #b32d2e;
	text-decoration: none;
	font-size: 13px;
}
.etm-date-filter {
	margin: 14px 0 18px;
}
.etm-date-filter label {
	font-size: 13px;
	color: #444;
}
.etm-date-filter input[type="date"] {
	margin-left: 6px;
	padding: 4px 6px;
}

.etm-progress-count {
	font-size: 13px;
	color: #555;
	margin: 0 0 12px;
	font-weight: 600;
}
.etm-task-table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
}
.etm-task-table th {
	text-align: left;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #888;
	border-bottom: 2px solid #eee;
	padding: 8px 10px;
}
.etm-task-table td {
	padding: 10px;
	border-bottom: 1px solid #f0f0f0;
	vertical-align: middle;
	font-size: 14px;
}
.etm-task-row.etm-status-completed .etm-task-title {
	text-decoration: line-through;
	color: #6a6a6a;
}
.etm-task-row.etm-status-completed { background: #f3fbf3; }
.etm-task-row.etm-status-in_progress { background: #fff9ec; }
.etm-task-row .etm-task-title { font-weight: 600; }
.etm-task-row .etm-task-desc { color: #666; }
.etm-task-status-select {
	padding: 5px 8px;
	border-radius: 4px;
	border: 1px solid #ccc;
}
.etm-task-status-text {
	display: inline-block;
	margin-left: 8px;
	font-size: 12px;
	color: #2a8f3c;
	min-width: 60px;
}
.etm-empty {
	color: #777;
	padding: 10px 0;
}
.etm-admin-link {
	margin-top: 16px;
	text-align: right;
}
.etm-admin-link a {
	font-size: 13px;
	text-decoration: none;
}

/* ---- Admin ---- */
.etm-wrap .etm-form { max-width: 640px; }
.etm-filter-form { margin: 14px 0; display: flex; gap: 14px; align-items: flex-end; }
.etm-filter-form label { display: flex; flex-direction: column; font-size: 12px; }
.etm-badge {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 12px;
	font-size: 12px;
	font-weight: 600;
}
.etm-badge-completed { background: #e5f7e6; color: #1e7d2b; }
.etm-badge-in_progress { background: #fff3d6; color: #a3630b; }
.etm-badge-pending { background: #fbe4e4; color: #a12727; }
.etm-badge-none { background: #eee; color: #777; }
.etm-progress-bar {
	display: inline-block;
	width: 90px;
	height: 8px;
	background: #eee;
	border-radius: 4px;
	overflow: hidden;
	vertical-align: middle;
}
.etm-progress-bar-fill {
	height: 100%;
	background: #2a8f3c;
}
.etm-progress-pct {
	font-size: 12px;
	color: #555;
	margin-left: 6px;
	vertical-align: middle;
}
.etm-group-heading {
	margin: 26px 0 8px;
	font-size: 16px;
}
.etm-group-heading .etm-progress-count {
	font-weight: 400;
	color: #666;
	font-size: 13px;
}
.etm-group-table { margin-bottom: 6px; }
#etm-task-rows-table input[type="text"] { width: 100%; }
