Index: frontend/src/pages/ReviewForm.tsx
===================================================================
--- frontend/src/pages/ReviewForm.tsx	(revision b4561830bbf552948a86d7900a3f6f901ee8451a)
+++ frontend/src/pages/ReviewForm.tsx	(revision 334cd36e0fdf04818dd51655e1ac56a9cc6a857e)
@@ -213,5 +213,5 @@
 
 	return (
-		<div className="max-w-4xl mx-auto my-6 p-6 rounded-lg shadow-sm">
+		<div className="max-w-4xl mx-auto my-4 md:my-6 p-4 md:p-6 rounded-lg shadow-sm">
 			<button
 				onClick={() => navigate(from)}
@@ -219,5 +219,7 @@
 			>
 				<ArrowLeft className="w-5 h-5 mr-2" />
-				Назад кон преглед на предметот
+				<span className="text-sm md:text-base">
+					Назад кон преглед на предметот
+				</span>
 				{/* {from.startsWith("/subjects")
 					? ` преглед на предметот`
@@ -225,21 +227,25 @@
 			</button>
 
-			<h2 className="text-2xl font-bold mb-6">Сподели информација</h2>
+			<h2 className="text-xl md:text-2xl font-bold mb-4 md:mb-6">
+				Сподели информација
+			</h2>
 
 			{(subjectName || code) && (
-				<div className="mb-6 p-4 bg-blue-50 rounded-lg">
-					<p className="text-blue-800">
+				<div className="mb-4 md:mb-6 p-3 md:p-4 bg-blue-50 rounded-lg">
+					<p className="text-blue-800 text-sm md:text-base">
 						Додавате информација за предмет:{" "}
-						<span className="font-semibold">{subjectName || code}</span>
+						<span className="font-semibold break-words">
+							{subjectName || code}
+						</span>
 					</p>
 				</div>
 			)}
 
-			<form onSubmit={handleSubmit} className="space-y-6">
+			<form onSubmit={handleSubmit} className="space-y-4 md:space-y-6">
 				<div>
-					<label className="block text-sm font-medium text-gray-700 mb-3">
+					<label className="block text-sm font-medium text-gray-700 mb-2 md:mb-3">
 						Тип
 					</label>
-					<div className="flex space-x-4">
+					<div className="flex flex-col sm:flex-row space-y-2 sm:space-y-0 sm:space-x-4">
 						<label className="flex items-center">
 							<input
@@ -269,5 +275,5 @@
 				{/* evaluation */}
 				{reviewType === "evaluation" && (
-					<div className="space-y-6">
+					<div className="space-y-4 md:space-y-6">
 						<div>
 							<label className="block text-sm font-medium text-gray-700 mb-2">
@@ -300,5 +306,5 @@
 
 							{signatureType === "points" && (
-								<div className="flex items-center space-x-2">
+								<div className="flex flex-col sm:flex-row items-center space-y-2 sm:space-y-0 sm:space-x-2">
 									<input
 										type="number"
@@ -313,8 +319,8 @@
 										}}
 										placeholder="Потребни поени"
-										className="flex-1 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
+										className="flex-1 w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
 										required
 									/>
-									<span className="text-gray-500">/</span>
+									<span className="text-gray-500 self-center">/</span>
 									<input
 										type="number"
@@ -330,5 +336,5 @@
 										placeholder="Максимални поени"
 										max="500"
-										className="flex-1 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
+										className="flex-1 w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
 										required
 									/>
@@ -338,5 +344,5 @@
 
 							{signatureType === "attendance" && (
-								<div className="flex items-center space-x-2">
+								<div className="flex flex-col sm:flex-row items-center space-y-2 sm:space-y-0 sm:space-x-2">
 									<input
 										type="number"
@@ -351,8 +357,8 @@
 										}}
 										placeholder="Потребно присуство"
-										className="flex-1 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
+										className="flex-1 w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
 										required
 									/>
-									<span className="text-gray-500">/</span>
+									<span className="text-gray-500 self-center">/</span>
 									<input
 										type="number"
@@ -368,5 +374,5 @@
 										placeholder="Вкупно лабораториски вежби"
 										max="12"
-										className="flex-1 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
+										className="flex-1 w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500"
 										required
 									/>
@@ -376,5 +382,5 @@
 
 						<div>
-							<div className="flex items-center justify-between mb-4">
+							<div className="flex flex-col sm:flex-row sm:items-center justify-between mb-4 space-y-2 sm:space-y-0">
 								<h3 className="text-lg font-medium text-gray-900">
 									Начини на оценување ({methods.length}/3)
@@ -384,5 +390,5 @@
 										type="button"
 										onClick={addMethod}
-										className="flex items-center px-3 py-2 text-sm bg-blue-600 text-white rounded-md hover:bg-blue-700"
+										className="flex items-center justify-center px-3 py-2 text-sm bg-blue-600 text-white rounded-md hover:bg-blue-700 w-full sm:w-auto"
 									>
 										<Plus className="w-4 h-4 mr-1" />
@@ -395,7 +401,7 @@
 								<div
 									key={methodIndex}
-									className="border border-gray-200 rounded-lg p-4 mb-4 bg-gray-50"
+									className="border border-gray-200 rounded-lg p-3 md:p-4 mb-4 bg-gray-50"
 								>
-									<div className="flex items-center justify-between mb-4">
+									<div className="flex flex-col sm:flex-row sm:items-center justify-between mb-4 space-y-2 sm:space-y-0">
 										<h4 className="font-medium text-gray-900">
 											Метод {methodIndex + 1}
@@ -405,5 +411,5 @@
 												type="button"
 												onClick={() => removeMethod(methodIndex)}
-												className="text-red-600 hover:text-red-800"
+												className="text-red-600 hover:text-red-800 self-start sm:self-center"
 											>
 												<Trash2 className="w-4 h-4" />
@@ -428,5 +434,5 @@
 
 									<div>
-										<div className="flex items-center justify-between mb-3">
+										<div className="flex flex-col sm:flex-row sm:items-center justify-between mb-3 space-y-2 sm:space-y-0">
 											<label className="block text-sm font-medium text-gray-700">
 												Компоненти на оценување
@@ -435,5 +441,5 @@
 												type="button"
 												onClick={() => addComponent(methodIndex)}
-												className="flex items-center px-2 py-1 text-xs bg-green-600 text-white rounded hover:bg-green-700 disabled:bg-gray-400 disabled:cursor-not-allowed"
+												className="flex items-center justify-center px-2 py-1 text-xs bg-green-600 text-white rounded hover:bg-green-700 disabled:bg-gray-400 disabled:cursor-not-allowed w-full sm:w-auto"
 												disabled={method.components.length >= 7}
 											>
@@ -446,5 +452,5 @@
 											<div
 												key={componentIndex}
-												className="flex items-center space-x-3 mb-3"
+												className="flex flex-col sm:flex-row items-start sm:items-center space-y-2 sm:space-y-0 sm:space-x-3 mb-3"
 											>
 												<select
@@ -458,5 +464,5 @@
 														)
 													}
-													className="flex-1 px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-blue-500 focus:border-blue-500 custom-select"
+													className="flex-1 w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm focus:outline-none focus:ring-blue-500 focus:border-blue-500 custom-select"
 												>
 													{COMPONENT_CATEGORIES.map((cat) => (
@@ -467,5 +473,5 @@
 												</select>
 
-												<div className="flex items-center space-x-2">
+												<div className="flex items-center space-x-2 w-full sm:w-auto">
 													<input
 														type="number"
@@ -484,28 +490,27 @@
 													/>
 													<span className="text-sm text-gray-500">%</span>
+													{method.components.length > 1 && (
+														<button
+															type="button"
+															onClick={() =>
+																removeComponent(methodIndex, componentIndex)
+															}
+															className="text-red-600 hover:text-red-800 ml-2"
+														>
+															<Trash2 className="w-4 h-4" />
+														</button>
+													)}
 												</div>
-
-												{method.components.length > 1 && (
-													<button
-														type="button"
-														onClick={() =>
-															removeComponent(methodIndex, componentIndex)
-														}
-														className="text-red-600 hover:text-red-800"
-													>
-														<Trash2 className="w-4 h-4" />
-													</button>
-												)}
 											</div>
 										))}
 
-										<div className="flex items-center justify-between mt-3 pt-3 border-t border-gray-200">
-											<div className="flex items-center space-x-2">
+										<div className="flex flex-col sm:flex-row sm:items-center justify-between mt-3 pt-3 border-t border-gray-200 space-y-2 sm:space-y-0">
+											<div className="flex flex-col sm:flex-row sm:items-center space-y-1 sm:space-y-0 sm:space-x-2">
 												<span className="text-sm text-gray-600">
 													Вкупно: {getMethodPercentageTotal(method)}%
 												</span>
 												{!isMethodValid(method) && (
-													<div className="flex items-center text-red-600">
-														<AlertCircle className="w-4 h-4 mr-1" />
+													<div className="flex items-start sm:items-center text-red-600">
+														<AlertCircle className="w-4 h-4 mr-1 mt-0.5 sm:mt-0 shrink-0" />
 														<span className="text-sm">
 															Мора да биде 100% и сите компоненти да се
@@ -524,5 +529,5 @@
 
 				{reviewType === "other" && (
-					<div className="space-y-6">
+					<div className="space-y-4 md:space-y-6">
 						<div>
 							<label className="block text-sm font-medium text-gray-700 mb-2">
@@ -558,5 +563,5 @@
 								required
 							/>
-							<div className="flex justify-between items-center mt-1">
+							<div className="flex flex-col sm:flex-row justify-between items-start sm:items-center mt-1 space-y-1 sm:space-y-0">
 								<p className="text-sm text-gray-500">
 									Споделете корисни информации за други студенти
@@ -576,8 +581,10 @@
 				{/* error */}
 				{error && (
-					<div className="p-4 bg-red-50 border border-red-200 rounded-lg">
-						<div className="flex items-center">
-							<AlertCircle className="w-5 h-5 text-red-600 mr-2" />
-							<p className="text-red-800">{error}</p>
+					<div className="p-3 md:p-4 bg-red-50 border border-red-200 rounded-lg">
+						<div className="flex items-start">
+							<AlertCircle className="w-5 h-5 text-red-600 mr-2 mt-0.5 shrink-0" />
+							<p className="text-red-800 text-sm md:text-base break-words">
+								{error}
+							</p>
 						</div>
 					</div>
@@ -585,5 +592,5 @@
 
 				{reviewType && (
-					<div className="flex items-center justify-end space-x-4 pt-6 border-t border-gray-200">
+					<div className="flex flex-col sm:flex-row sm:items-center justify-end space-y-3 sm:space-y-0 sm:space-x-4 pt-4 md:pt-6 border-t border-gray-200">
 						<button
 							type="submit"
@@ -594,5 +601,5 @@
 									(!signatureRequiredAmount || !signatureMaxAmount))
 							}
-							className="px-6 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 disabled:bg-gray-400 disabled:cursor-not-allowed"
+							className="w-full sm:w-auto px-6 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 disabled:bg-gray-400 disabled:cursor-not-allowed"
 						>
 							Објави
Index: frontend/src/pages/Reviews.tsx
===================================================================
--- frontend/src/pages/Reviews.tsx	(revision b4561830bbf552948a86d7900a3f6f901ee8451a)
+++ frontend/src/pages/Reviews.tsx	(revision 334cd36e0fdf04818dd51655e1ac56a9cc6a857e)
@@ -160,15 +160,15 @@
 
 	return (
-		<div className="max-w-7xl mx-auto p-6 bg-white min-h-screen">
-			<h1 className="text-3xl font-bold mb-8">
+		<div className="max-w-7xl mx-auto p-4 md:p-6 bg-white min-h-screen">
+			<h1 className="text-2xl md:text-3xl font-bold mb-6 md:mb-8">
 				{isAdmin ? "Администраторски панел" : "Информации од студенти"}
 			</h1>
 
 			{/* filters */}
-			<div className="bg-gray-50 rounded-lg p-4 mb-6">
+			<div className="bg-gray-50 rounded-lg p-3 md:p-4 mb-4 md:mb-6">
 				<div className="flex items-center space-x-4">
-					<div className="flex flex-col items-start space-x-0 space-y-2">
-						<div className="flex flex-col md:flex-row md:space-x-8">
-							<div className="relative" ref={dropdownRef}>
+					<div className="flex flex-col items-start space-x-0 space-y-2 w-full">
+						<div className="flex flex-col space-y-4 md:space-y-0 md:flex-row md:space-x-8 w-full">
+							<div className="relative w-full md:w-auto" ref={dropdownRef}>
 								<label className="block text-sm font-medium text-gray-700 mb-1">
 									Предмет
@@ -188,5 +188,5 @@
 											}`}
 											disabled={selectedSubject !== null}
-											className={`w-64 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 ${
+											className={`w-full md:w-64 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 ${
 												selectedSubject ? "bg-gray-100 cursor-not-allowed" : ""
 											}`}
@@ -251,5 +251,5 @@
 								)}
 							</div>
-							<div>
+							<div className="w-full md:w-auto">
 								<label className="block text-sm font-medium text-gray-700 mb-1">
 									Тип
@@ -260,5 +260,5 @@
 										setFilters((prev) => ({ ...prev, type: e.target.value }))
 									}
-									className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
+									className="w-full md:w-auto px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
 								>
 									<option value="all">Сите типови</option>
@@ -267,5 +267,5 @@
 								</select>
 							</div>
-							<div>
+							<div className="w-full md:w-auto">
 								<label className="block text-sm font-medium text-gray-700 mb-1">
 									Статус на одобрување
@@ -279,5 +279,5 @@
 										}))
 									}
-									className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
+									className="w-full md:w-auto px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
 								>
 									<option value="all">Сите</option>
@@ -286,5 +286,5 @@
 								</select>
 							</div>
-							<div>
+							<div className="w-full md:w-auto">
 								<label className="block text-sm font-medium text-gray-700 mb-1">
 									Сортирај по
@@ -299,5 +299,5 @@
 											}))
 										}
-										className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
+										className="flex-1 md:flex-none px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
 									>
 										<option value="date">Датум</option>
@@ -321,9 +321,9 @@
 							</div>
 						</div>
-						<div className="flex pt-4 space-x-2">
+						<div className="flex flex-col sm:flex-row pt-4 space-y-2 sm:space-y-0 sm:space-x-2 w-full">
 							<button
 								onClick={handleSearch}
 								disabled={loading}
-								className={`px-4 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 transition-colors ${
+								className={`w-full sm:w-auto px-4 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 transition-colors ${
 									loading ? "bg-gray-400 cursor-not-allowed" : ""
 								}`}
@@ -332,5 +332,5 @@
 							</button>
 							{user?.user_type === "student" && (
-								<label className="flex items-center space-x-2 cursor-pointer select-none px-2 py-1 rounded-md transition-colors">
+								<label className="flex items-center space-x-2 cursor-pointer select-none px-2 py-1 rounded-md transition-colors w-full sm:w-auto justify-center sm:justify-start">
 									<input
 										type="checkbox"
@@ -371,9 +371,9 @@
 							<div
 								key={review.review.id}
-								className="border border-gray-200 rounded-lg p-6"
+								className="border border-gray-200 rounded-lg p-4 md:p-6"
 							>
-								<div className="flex items-start justify-between mb-4">
+								<div className="flex flex-col sm:flex-row sm:items-start justify-between mb-4 space-y-3 sm:space-y-0">
 									<div className="flex-1">
-										<div className="flex items-center space-x-3 mb-2">
+										<div className="flex flex-wrap items-center gap-2 mb-2">
 											{isUsersPost && (
 												<span className="px-2 py-1 rounded text-xs font-medium bg-gray-100">
@@ -381,5 +381,5 @@
 												</span>
 											)}
-											<span className="font-semibold text-lg">
+											<span className="font-semibold text-base md:text-lg break-words">
 												{review.review.subject.name} (
 												{review.review.subject.code})
@@ -398,20 +398,24 @@
 											)}
 										</div>
-										<div className="flex items-center space-x-4 text-sm text-gray-600">
+										<div className="flex flex-wrap items-center gap-x-4 gap-y-1 text-sm text-gray-600">
 											<span>{review.review.date_posted}</span>
-											<span>Студент: {review.review.student} </span>
-											<span>
-												Гласови:{" "}
-												{`${
-													review.review.votes_score ?? 0 > 0
-														? "+"
-														: review.review.votes_score ?? 0 < 0
-														? "-"
-														: ""
-												}${review.review.votes_score}`}
+											<span className="break-all">
+												Студент: {review.review.student}{" "}
 											</span>
+											{isAdmin && (
+												<span>
+													Гласови:{" "}
+													{`${
+														review.review.votes_score ?? 0 > 0
+															? "+"
+															: review.review.votes_score ?? 0 < 0
+															? "-"
+															: ""
+													}${review.review.votes_score}`}
+												</span>
+											)}
 										</div>
 									</div>
-									<div className="flex items-center space-x-2">
+									<div className="flex items-center space-x-2 shrink-0 md:justify-end ">
 										{!isAdmin && <Votes review={review.review} />}
 										<button
@@ -505,11 +509,11 @@
 														)}
 														<div className="overflow-x-auto">
-															<table className="min-w-full border border-gray-300">
+															<table className="min-w-full border border-gray-300 text-sm">
 																<thead className="bg-gray-100">
 																	<tr>
-																		<th className="px-3 py-2 text-left text-sm font-medium">
+																		<th className="px-2 md:px-3 py-2 text-left text-xs md:text-sm font-medium">
 																			Активност
 																		</th>
-																		<th className="px-3 py-2 text-left text-sm font-medium">
+																		<th className="px-2 md:px-3 py-2 text-left text-xs md:text-sm font-medium">
 																			Процент
 																		</th>
@@ -519,5 +523,5 @@
 																	{method.components.map((component, idx) => (
 																		<tr key={idx}>
-																			<td className="px-3 py-2 text-sm border-b">
+																			<td className="px-2 md:px-3 py-2 text-xs md:text-sm border-b break-words">
 																				{
 																					EVALUATION_MAP_TO_MK[
@@ -531,5 +535,5 @@
 																				}
 																			</td>
-																			<td className="px-3 py-2 text-sm border-b">
+																			<td className="px-2 md:px-3 py-2 text-xs md:text-sm border-b">
 																				{component.percentage}%
 																			</td>
@@ -549,5 +553,5 @@
 											<div>
 												<h4 className="font-medium mb-2">Содржина:</h4>
-												<p className="text-gray-700">
+												<p className="text-gray-700 break-words">
 													{"content" in review
 														? review.content
