diff --git a/~dev_rating/application/classes/Controller/Student/Subject.php b/~dev_rating/application/classes/Controller/Student/Subject.php
index 522285655094ab5e3e8f49a6bbf2a6bdf9636cff..7695fcafc1fc2869cd7030d797130fcd5fdfab51 100644
--- a/~dev_rating/application/classes/Controller/Student/Subject.php
+++ b/~dev_rating/application/classes/Controller/Student/Subject.php
@@ -33,8 +33,13 @@ class Controller_Student_Subject extends Controller_UserEnvi {
         $subject['Year'] = $semester['Year'];
         // Учебная карта дисциплины
         $disciplineHandled = array();
-        $rate = 0; $maxRate = 0; $i = 0; $id = 0;
+        $sRate = 0; $sMaxRate = 0;
+        $extraRate = 0;
+        $bonusRate = 0; $bonusMaxRate = 0;
+        $examRate = 0; $examMaxRate = 0;
+        $i = 0; $id = 0;
 		$disciplineHandled['Extra']['Rate'] = 0;
+
         foreach($discipline as $row)
         {
             if($row['ModuleType'] == 'exam')
@@ -42,6 +47,8 @@ class Controller_Student_Subject extends Controller_UserEnvi {
                 $disciplineHandled['Exam']['Rate'] = (int) $row['Rate'];
                 $disciplineHandled['Exam']['MaxRate'] = (int) $row['MaxRate'];
                 $disciplineHandled['Exam']['Date'] = $row['Date'];
+                $examRate += $row['Rate'];
+                $examMaxRate += (int) $row['MaxRate'];
             }
             else if($row['ModuleType'] == 'bonus')
             {
@@ -49,12 +56,13 @@ class Controller_Student_Subject extends Controller_UserEnvi {
                 $disciplineHandled['Bonus']['Rate'] = (int) $row['Rate'];
                 $disciplineHandled['Bonus']['MaxRate'] = (int) $row['MaxRate'];
                 $disciplineHandled['Bonus']['Date'] = $row['Date'];
+                $bonusRate += $row['Rate'];
+                $bonusMaxRate += (int) $row['MaxRate'];
             }
 			else if($row['ModuleType'] == 'extra') {
 				$disciplineHandled['Extra']['Description'] = $row['Description'];
                 $disciplineHandled['Extra']['Rate'] += (int) $row['Rate'];
-                // $disciplineHandled['Extra']['Date'] = $row['Date'];
-				
+                $extraRate += (int) $row['Rate'];
 			}
 			
             else
@@ -82,16 +90,21 @@ class Controller_Student_Subject extends Controller_UserEnvi {
                 $disciplineHandled['Modules'][$i]['Submodules'][$j]['Rate'] = (int) $row['Rate'];
                 $disciplineHandled['Modules'][$i]['Submodules'][$j]['Date'] = $row['Date'];
                 $disciplineHandled['Modules'][$i]['Submodules'][$j]['MaxRate'] = (int) $row['MaxRate'];
+                $sRate += (int) $row['Rate'];
+                $sMaxRate += (int) $row['MaxRate'];
             }
-            $rate += $row['Rate'];
-			if ($row['ModuleType'] != 'extra') {
-				$maxRate += $row['MaxRate'];
-			}
+
         }
         $disciplineHandled['ModulesCount'] = $i;
-        $disciplineHandled['Rate'] = (int) $rate;
-        $disciplineHandled['MaxRate'] = (int) $maxRate;
-        
+
+        $disciplineHandled['SemesterRate'] = (int) $sRate;
+        $disciplineHandled['SemesterMaxRate'] = (int) $sMaxRate;
+        $disciplineHandled['ExamRate'] = (int) $examRate;
+        $disciplineHandled['ExamMaxRate'] = (int) $examMaxRate;
+        $disciplineHandled['BonusRate'] = (int) $bonusRate;
+        $disciplineHandled['BonusMaxRate'] = (int) $bonusMaxRate;
+        $disciplineHandled['ExtraRate'] = (int) $extraRate;
+
         // ПРЕДСТАВЛЕНИЕ 
         $twig = Twig::factory('student/subject');
         $twig->User = $this->UserInfo;
diff --git a/~dev_rating/application/views/base.twig b/~dev_rating/application/views/base.twig
index 9978e8ad27bcc9908bf24541aef1ca7e80541c83..9f71e70034d5e9787485d4b708f5161aa2edaa43 100644
--- a/~dev_rating/application/views/base.twig
+++ b/~dev_rating/application/views/base.twig
@@ -19,36 +19,35 @@
 	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 	<title>{% block title %}{% endblock %} | {{ System.Title }}</title>
 	<meta http-equiv="Cache-Control" content="no-cache">
-	<link href='http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300|PT+Sans&subset=cyrillic-ext,latin' rel='stylesheet' type='text/css'>
+	<link href='http://fonts.googleapis.com/css?family=PT+Sans&subset=cyrillic-ext,latin' rel='stylesheet' type='text/css'>
 
 	{{ HTML.style('media/less/reset.css')|raw }}
 	{{ HTML.style('media/less/common.css')|raw }}
 	{{ HTML.style('media/less/modal.css')|raw }}
 	{{ HTML.style('media/css/messages.css')|raw }}
 
+
 	{{ HTML.script('media/js/jquery-1.11.1.min.js')|raw }}
 	{{ HTML.script('media/js/config.js')|raw }}
 	{{ HTML.script('media/js/messages.js')|raw }}
 	{{ HTML.script('media/js/profile.js')|raw }}
 	{{ HTML.script('media/js/jquery-plugins/jquery.placeholder.js')|raw }}
 	{{ HTML.script('media/js/jquery.sha1.js')|raw }}
+
+	{{ HTML.script('media/js/ui/jquery-ui.js')|raw }}
+	{{ HTML.style('media/css/theme/jquery-ui.css')|raw }}
+	{{ HTML.style('media/css/error.css')|raw }}
+	{{ HTML.script('media/js/errDialog.js')|raw }}
 	{#
 		{{ HTML.style('media/css/global.css')|raw }}
-
-
         <script>
         $(function() {
             $('input, textarea').placeholder();
         });
         </script>
-        {{ HTML.script('media/js/ui/jquery-ui.js')|raw }}
-        {{ HTML.style('media/css/theme/jquery-ui.css')|raw }}
 
         {{ HTML.style('media/js/event_inspector/event_inspector.css')|raw }}
         {{ HTML.script('media/js/event_inspector/event_inspector.js')|raw }}
-
-        {{ HTML.style('media/css/error.css')|raw }}
-        {{ HTML.script('media/js/errDialog.js')|raw }}
     #}
 	{% block media %}
 	{% endblock %}
@@ -66,9 +65,7 @@
 			<div class="faculty alignLeft">{{ User.FacultyName }}</div>
 			<div class="navigation">
 				<div id = "top_user_messages">
-					{{ HTML.image('media/img/messageIcon.png', {'height': '11px'})|raw }}
-					<!-- <div class="top_user_messages_icon"><img src="~dev_rating/~dev_rating/media/img/addList.png"></div> -->
-					(1)
+					{{ HTML.image('media/img/messageIcon.png', {'height': '11px'})|raw }} (1)
 				</div>
 				{# include 'messages/messages' #}
 				<div id="username">
@@ -103,9 +100,7 @@
 					</h3>
 				</div>
 				<div class="main_content {% block main_content_classes %}{% endblock %}">
-					{% block main_content %}
-
-					{% endblock %}
+					{% block main_content %}{% endblock %}
 				</div>
 			</div>
 			<div class="footer">
@@ -118,8 +113,9 @@
 				</div>
 			</div>
 		</div>
-		{% include 'popup/support' %}
+
 	</div>
+	{% include 'popup/support' %}
 	{% include 'popup/sign' %}
 </body>
 </html>
\ No newline at end of file
diff --git a/~dev_rating/application/views/profile/student.twig b/~dev_rating/application/views/profile/student.twig
index 08945895afa9d4b301bb83ce4bdc61d56387ac9e..09d0903412a00a3091aba418892a4538c18df0b1 100644
--- a/~dev_rating/application/views/profile/student.twig
+++ b/~dev_rating/application/views/profile/student.twig
@@ -1,29 +1,29 @@
 <div class="profile_wrapper" id="profileInfo" style="display: none;">
-    <div class="profile_clearFix">
+    <div class="clearFix">
         <div class="username">{{ User.First }} {{ User.Second }} {{ User.Last }}</div>
     </div>
-    <div class="profile_clearFix">
+    <div class="clearFix">
         <div class="label">Подразделение:</div>
-        <div class="labeled_info">{{ User.FacultyName }}</div>
+        <div class="content">{{ User.FacultyName }}</div>
     </div>
-    <div class="profile_clearFix">
+    <div class="clearFix">
         <div class="label">Направление:</div>
-        <div class="labeled_info">{{ User.SpecName }}</div>
+        <div class="content">{{ User.SpecName }}</div>
     </div>
-    <div class="profile_clearFix profile_delimeter">
+    <div class="clearFix profile_delimeter">
         <div class="label">РљСѓСЂСЃ, РіСЂСѓРїРїР°:</div>
-        <div class="labeled_info">{{ User.Degree }}, {{ User.GradeNum }} РєСѓСЂСЃ, {{ User.GroupNum }} РіСЂСѓРїРїР°</div>
+        <div class="content">{{ User.Degree }}, {{ User.GradeNum }} РєСѓСЂСЃ, {{ User.GroupNum }} РіСЂСѓРїРїР°</div>
     </div>
-    <div class="profile_clearFix">
+    <div class="clearFix">
         <div class="label">Тип аккаунта:</div>
-        <div class="labeled_info">{{ User.Role }}</div>
+        <div class="content">{{ User.Role }}</div>
     </div>
-    <div class="profile_clearFix">
+    <div class="clearFix">
         <div class="label">Логин:</div>
-        <div class="labeled_info">{{ User.Login }}</div>
+        <div class="content">{{ User.Login }}</div>
     </div>
-    <div class="profile_clearFix">
+    <div class="clearFix">
         <div class="label">E-Mail:</div>
-        <div class="labeled_info">{{ User.EMail }}</div>
+        <div class="content">{{ User.EMail }}</div>
     </div>
 </div>
\ No newline at end of file
diff --git a/~dev_rating/application/views/student/index.twig b/~dev_rating/application/views/student/index.twig
index 6358a4e1ad171bb40c3a67574ac7c4c1820c0950..fe80a2da9b84e26d499e2cd6b3dfb3282a0503ae 100644
--- a/~dev_rating/application/views/student/index.twig
+++ b/~dev_rating/application/views/student/index.twig
@@ -53,10 +53,10 @@
 {% block main_content_classes %}sidePadding{% endblock %}
 {% block main_top_title %}Дисциплины{% endblock %}
 {% block main_content %}
-    <div class="semesterSelect">
+    <div class="pageTitle">
 		<h2>Осенний семестр 2014/2015 учебного года</h2>
 	</div>
-	<div class="tableLegend">
+	<div class="help">
 		<a href="#">Помощь</a>
 	</div>
 	{% if disciplines|length > 0 %}
diff --git a/~dev_rating/application/views/student/subject.twig b/~dev_rating/application/views/student/subject.twig
index 3db9f8782d8c3a523270ef6381d2d704e08b3432..996410695c51c51c5b1169bbc426c4174ffee0f0 100644
--- a/~dev_rating/application/views/student/subject.twig
+++ b/~dev_rating/application/views/student/subject.twig
@@ -1,7 +1,7 @@
 {% extends 'base' %} 
  
 {% block media %} {# head -> css, js #}
-    {{ HTML.style('media/css/student/subject.css')|raw }}
+    {{ HTML.style('media/less/student/subject.css')|raw }}
 {% endblock %}
 
     {% macro event(event_name, event_date, event_ball, event_max_ball) %}
@@ -13,108 +13,176 @@
     {% endmacro %}
 
 {% import _self as map %}
-    
+
 {% block title %}{{ Discipline.Title|default('РЈРљР”') }}{% endblock %}
 {% block main_top_title %}Учебная карта дисциплины{% endblock %}
+{% block main_content_classes %}sidePadding{% endblock %}
 
 {% block main_content %}
-    <div class="mapHeader">
+
+    <div class="pageTitle">
+        <h2>{{ Discipline.Title|default('---') }}</h2>
+    </div>
+    <div class="help">
+        <a href="#">Помощь</a>
+    </div>
+
+
+    <div class="disciplineInfo first">
         <div class="clearFix">
-            <div class="label">Название дисциплины:</div>
-            <div class="labeled_info discTitle">{{ Discipline.Title|default('---') }}</div>
+            <div class="label">Форма аттестации:</div>
+            <div class="content">{{ Discipline.Control|default('---') }}</div>
         </div>
         <div class="clearFix">
-            <div class="label">Преподаватели:</div>
-            <div class="labeled_info">
-            {% for teacher in Discipline.Teachers %}
-                <div>{{ teacher }}</div>
-            {% endfor %}
+            <div class="label">Семестр:</div>
+            <div class="content">
+                {{ Discipline.Num }} семестр {{ Discipline.Year }}/{{ Discipline.Year + 1 }} учебного года
             </div>
         </div>
+    </div>
+
+    <div class="disciplineInfo last">
         <div class="clearFix">
             <div class="label">Кафедра:</div>
-            <div class="labeled_info">{{ Discipline.DepName }}</div>
-        </div>
-        <div class="clearFix">
-            <div class="label">Форма аттестации:</div>
-            <div class="labeled_info">{{ Discipline.Control|default('---') }}</div>
+            <div class="content">{{ Discipline.DepName }}</div>
         </div>
         <div class="clearFix">
-            <div class="label">Семестр:</div>
-            <div class="labeled_info">{{ Discipline.Num }} семестр {{ Discipline.Year }}/{{ Discipline.Year + 1 }} учебного года</div>
+            <div class="label">Преподаватели:</div>
+            <div class="content">
+                {% for teacher in Discipline.Teachers %}
+                    {{ teacher }}{% if not loop.last %},{% endif %}
+                {% endfor %}
+            </div>
         </div>
         <div class="clearFix">
-            <div class="label">Учебных часов:</div>
-            <div class="labeled_info">{{ Discipline.LectionCount }} ч. теории, {{ Discipline.PracticeCount }} ч. практики и {{ Discipline.LabCount }} ч. лаб. занятий</div>
+            <div class="label">Учебная нагрузка:</div>
+            <div class="content">
+
+                {% if (Discipline.PracticeCount) and (Discipline.LabCount) %}
+                    {% set FirstConjuction = ',' %}
+                    {% set SecondConjuction = ' Рё' %}
+                {% elseif (Discipline.PracticeCount) or (Discipline.LabCount) %}
+                    {% if Discipline.LectionCount %}
+                        {% set FirstConjuction = ' Рё' %}
+                    {% else %}
+                        {% set SecondConjuction = ' Рё' %}
+                    {% endif %}
+                {% endif %}
+
+                {% if Discipline.LectionCount %}
+                    {{ Discipline.LectionCount }}
+                    {{ Rus.NumEnding(Discipline.LectionCount, ['час', 'часа', 'часов']) }}
+                    теории{{ FirstConjuction }}
+                {% endif %}
+                {% if Discipline.PracticeCount %}
+
+                    {{ Discipline.PracticeCount }}
+                    {{ Rus.NumEnding(Discipline.PracticeCount, ['час', 'часа', 'часов']) }}
+                    практики{{ SecondConjuction }}
+                {% endif %}
+                {% if Discipline.LabCount %}
+                    {{ Discipline.LabCount }}
+                    {{ Rus.NumEnding(Discipline.LabCount, ['час', 'часа', 'часов']) }}
+                    лабораторных занятий
+                {% endif %}
+
+            </div>
         </div>
     </div>
-    <div class="mapContent">
-        {% for Module in DisciplineMap.Modules %}
-                <div class="moduleBlock">
-                    {{ Module.Title }}
+
+    <h3 class="blockTitle">Баллы за семестр</h3>
+
+    <div class="blockMargin">
+    {% for Module in DisciplineMap.Modules %}
+        <div class="tableTitle Module">
+            {{ Module.Title }}
+        </div>
+        {% for Submodule in Module.Submodules %}
+            <div class="submoduleBlock">
+                <div class="submoduleTitle">{{ Submodule.Title }}</div>
+                <div class="submoduleRate">
+                    {{ Submodule.Rate }} / {{ Submodule.MaxRate }}
                 </div>
-                {% for Submodule in Module.Submodules %}
-                    <div class="submoduleBlock">
-                        <div class="submoduleTitle">{{ Submodule.Title }}</div>
-                        <div class="submoduleRate">
-                                {{ Submodule.Rate }} / {{ Submodule.MaxRate }}
-                        </div>
-                        <div class="submodulePercent">
-                            {% if Submodule.MaxRate <= 0 %}
-                                0
-                            {% else %}
-                                {{ (Submodule.Rate  * 100) // Submodule.MaxRate }} %
-                            {% endif %}
-                        </div>
-                        <div class="submoduleDate">
-                            {% if Submodule.Date != 0 %}
-                                {{ Submodule.Date|date('d.m.Y') }}
-                            {% else %}
-                                ---
-                            {% endif %}
-                        </div>
-                    </div>
-                    {% if loop.last %}
-                        <div class="moduleResult">
-                            Итого за модуль: {{ Module.Rate }} / {{ Module.MaxRate }}
-                        </div>
-                    {% endif %}
-                {% endfor %}
-        {% endfor %}
-        
-        {% if DisciplineMap.Bonus is not empty %}
-            <div class="bonusBlock">
-                <div class="bonusTitle">Бонусные баллы</div>
-                <div class="bonusRate">{{ DisciplineMap.Bonus.Rate }} / {{ DisciplineMap.Bonus.MaxRate }}</div>
-                <div class="bonusPercent">
-                    {% if DisciplineMap.Bonus.MaxRate == 0 %} 0 {% else %} {{ (DisciplineMap.Bonus.Rate  * 100) // DisciplineMap.Bonus.MaxRate }} %
+                <div class="submodulePercent">
+                    {% if Submodule.MaxRate <= 0 %}
+                        0
+                    {% else %}
+                        {{ (Submodule.Rate  * 100) // Submodule.MaxRate }} %
                     {% endif %}
                 </div>
-                <div class="bonusDate">
-                    {% if DisciplineMap.Bonus.Date != 0 %}
-                        {{ DisciplineMap.Bonus.Date|date('d.m.Y') }}
+                <div class="submoduleDate">
+                    {% if Submodule.Date != 0 %}
+                        {{ Submodule.Date|date('d.m.Y') }}
                     {% else %}
                         ---
                     {% endif %}
                 </div>
             </div>
+            {% if loop.last %}
+                <div class="moduleResult">
+                    Итого за модуль: {{ Module.Rate }} / {{ Module.MaxRate }}
+                </div>
+            {% endif %}
+        {% endfor %}
+    {% endfor %}
+    </div>
+
+    <h3 class="blockTitle">Допуск к экзамену</h3>
+    <div class="blockMargin">
+        {% set Admission = 38 - DisciplineMap.SemesterRate %}
+        {% if Admission > 0 %}
+            Для допуска к экзамену Вам необходимо получить еще {{ Admission }} {{ Rus.NumEnding(Discipline.LectionCount, ['балл', 'балла', 'баллов']) }}.
+        {% else %}
+            Поздравляем, заработанных Вами баллов достаточно для получения допуска к экзамену!
+        {% endif %}
+        {% if ExtraRate %}
+            <div class="blockMargin">
+                <div class="submoduleBlock topBorder">
+                    <div class="submoduleTitle">Добор баллов</div>
+                    <div class="submoduleRate">{{ DisciplineMap.Extra.Rate }}</div>
+                    <div class="submodulePercent">&nbsp;</div>
+                    <div class="submoduleDate">---</div>
+                </div>
+            </div>
         {% endif %}
-		
-		{% if DisciplineMap.Extra is not empty %}
-            <div class="bonusBlock">
-                <div class="bonusTitle">Добор баллов</div>
-                <div class="bonusRate">{{ DisciplineMap.Extra.Rate }}</div>
+    </div>
+
+    <div class="totalRate">
+        Промежуточный итог: {{ DisciplineMap.SemesterRate + DisciplineMap.ExtraRate }} / {{ DisciplineMap.SemesterMaxRate }}
+    </div>
+
+    <h3 class="blockTitle">Экзамен</h3>
+    <div class="blockMargin">
+        <div class="tableTitle Extra">
+            Экзамен по курсу &laquo;{{ Discipline.Title|default('---') }}&raquo;
+        </div>
+        {% if DisciplineMap.Bonus is not empty %}
+        <div class="submoduleBlock">
+            <div class="submoduleTitle">Бонусные баллы</div>
+            <div class="submoduleRate">
+                {{ DisciplineMap.Bonus.Rate }} / {{ DisciplineMap.Bonus.MaxRate }}
             </div>
+            <div class="submodulePercent">
+                {% if DisciplineMap.Bonus.MaxRate == 0 %} 0 {% else %} {{ (DisciplineMap.Bonus.Rate  * 100) // DisciplineMap.Bonus.MaxRate }} %
+                {% endif %}
+            </div>
+            <div class="submoduleDate">
+                {% if DisciplineMap.Bonus.Date != 0 %}
+                    {{ DisciplineMap.Bonus.Date|date('d.m.Y') }}
+                {% else %}
+                    ---
+                {% endif %}
+            </div>
+        </div>
         {% endif %}
-            
         {% if DisciplineMap.Exam is not empty %}
-            <div class="examBlock">
-                <div class="examTitle">Экзамен по курсу &laquo;{{ Discipline.Title|default('---') }}&raquo;</div>
-                <div class="examRate">{{ DisciplineMap.Exam.Rate }} / {{ DisciplineMap.Exam.MaxRate }}</div>
-                <div class="examPercent">
+            <div class="submoduleBlock">
+                <div class="submoduleTitle">Экзамен по курсу &laquo;{{ Discipline.Title|default('---') }}&raquo;</div>
+                <div class="submoduleRate">{{ DisciplineMap.Exam.Rate }} / {{ DisciplineMap.Exam.MaxRate }}</div>
+                <div class="submodulePercent">
                     {% if DisciplineMap.Exam.MaxRate == 0 %} 0 {% else %} {{ (DisciplineMap.Exam.Rate  * 100) // DisciplineMap.Exam.MaxRate }} % {% endif %}
                 </div>
-                <div class="examDate">
+                <div class="submoduleDate">
                     {% if DisciplineMap.Exam.Date != 0 %}
                         {{ DisciplineMap.Exam.Date|date('d.m.Y') }}
                     {% else %}
@@ -123,9 +191,9 @@
                 </div>
             </div>
         {% endif %}
-        
-        <div class="disciplineResult">
-            Итого: {{ DisciplineMap.Rate }} / {{ DisciplineMap.MaxRate }}
-        </div>
+    </div>
+
+    <div class="totalRate">
+        Итоговый рейтинг: {{ DisciplineMap.SemesterRate + DisciplineMap.ExtraRate + DisciplineMap.BonusRate + DisciplineMap.ExamRate }} / 100
     </div>
 {% endblock %}
\ No newline at end of file
diff --git a/~dev_rating/media/css/error.css b/~dev_rating/media/css/error.css
index e28deb65be9ec1634bd031d8f21b23e3e153b1e5..72463cc60801b831b4ade5e2f326d742276c166c 100644
--- a/~dev_rating/media/css/error.css
+++ b/~dev_rating/media/css/error.css
@@ -1,10 +1,3 @@
-body
-{
-    font-family: Lucida Grande,Verdana,Tahoma,Arial,Sans-Serif,Lucida Sans;
-    font-size: 15px;
-    background-color: #f9f9f9;
-}
-
 .page_layout
 {
     margin: 3% auto;
@@ -33,19 +26,6 @@ body
         color: #aaaaaa;
 }
 
-.footer
-{
-    margin-top: 20px;
-    border-top: 1px solid #c1c1c1;
-    text-align: center;
-    padding: 4px;
-    color: #c1c1c1;
-}
-
-
-/* Buttons */
-* {font-family: Arial, Tahoma, Lucida Grande, Sans-Serif, Lucida Sans;}
-
 #errButton {
     position: fixed;
     z-index: 300;
@@ -53,7 +33,6 @@ body
     left: 0;
     width: 35px;
     height: 73px;
-    /*padding: 12px 0;*/
     text-align: center;
     background-color: #3a84a6; /*#6DAD53;*/
     -webkit-border-radius: 0 5px 5px 0;
@@ -85,14 +64,12 @@ body
 
 .ui-dialog .ui-dialog-titlebar 
 {
-    height: 15px; /* or whatever you want */
-    font-size: 12px;
+    height: 15px;
 }
 
 
 .dialogTopText {
     text-align: center;
-    font: 11pt sans-serif;  
     color: #787977; 
 }
 
@@ -101,13 +78,10 @@ body
 .dialogMyMessagesBtn {
     margin: 10px auto 5px auto;
     text-align: center;
-
     -webkit-border-radius: 5px;
     -moz-border-radius: 5px;
     border-radius: 5px;
-
     background-color: #3a84a6;
-    font: 10pt sans-serif;  
     color: #FFFFFF;     
 }
 
@@ -124,11 +98,8 @@ body
     margin-left: 15px;
     margin-right: 15px;
     margin-top: 5px;
-
     height: 0;
     background-color: #fff5d7;
-
-    font: 9pt sans-serif;  
     color: #000000;         
 }
 
@@ -150,8 +121,6 @@ body
     padding: 9px;
     border: solid 1px #E5E5E5;
     outline: 0;
-    font: normal 13px/100% Verdana,  Tahoma, sans-serif;
-
     box-shadow: rgba(0,0,0, 0.1) 0px 0px  8px;
     -moz-box-shadow: rgba(0,0,0, 0.1)  0px 0px 8px;
     -webkit-box-shadow: rgba(0,0,0, 0.1)  0px 0px 8px;  
@@ -159,7 +128,6 @@ body
 }
 
 .dialogTextMessage {
-/*  border: 1px solid black;*/
     margin-left: 13px;
     margin-right: 13px;
     margin-top: 5px;
@@ -176,9 +144,6 @@ body
     overflow: auto;
     width: 100%;
     height: 100%;
-    /*border: 1px solid black*/
-
-
     padding: 9px;
     border: solid 1px #E5E5E5;
     outline: 0;
@@ -199,13 +164,9 @@ body
     text-align: center;
 
     padding: 5px;
-/*  width: 70px;
-    height: 20px;*/
     -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
     border-radius: 3px;
-
-    /*background-color: #3a84a6;*/
     font: 9pt sans-serif;  
     color: #FFFFFF;     
 }
diff --git a/~dev_rating/media/css/student/subject.css b/~dev_rating/media/css/student/subject.css
index 4509a19e90dafea489c8449d29088edcd2789f8b..5d33b3312ccee828544cbf9cf01e6c37efd0933f 100644
--- a/~dev_rating/media/css/student/subject.css
+++ b/~dev_rating/media/css/student/subject.css
@@ -34,56 +34,56 @@
     color: #333;
 }
 
-.moduleBlock
+
+.examBlock
 {
-    background-color: #3399cc;
-    padding: 5px;
-    text-align: center;
-    color: #FFF;
-    margin-top: 10px;
+margin-top: 10px;
+padding: 5px;
+background: #fff;
+border: 3px solid #ffb100;
 }
 
-.submoduleBlock
+.bonusBlock
 {
-    padding: 5px;
-    border-bottom: 1px solid #ccc;
+margin-top: 10px;
+padding: 5px;
+background: #fff;
+border: 3px solid #3399cc;
 }
 
-.examBlock
+.disciplineResult
 {
-    margin-top: 10px;
-    padding: 5px;
-    background: #fff;
-    border: 3px solid #ffb100;
+padding: 5px;
+margin-top: 10px;
+text-align: center;
+color: #fff;
+background: forestgreen;
+font-weight: 600;
 }
 
-.bonusBlock
+.moduleResult
 {
-    margin-top: 10px;
-    padding: 5px;
-    background: #fff;
-    border: 3px solid #3399cc;
+padding: 5px;
+border-bottom: 1px solid #ccc;
+text-align: center;
+background: #f1f1f1;
+font-weight: 600;
 }
 
-.disciplineResult
+.moduleBlock
 {
+    background-color: #3399cc;
     padding: 5px;
-    margin-top: 10px;
     text-align: center;
-    color: #fff;
-    background: forestgreen;
-    font-weight: 600;
+    color: #FFF;
+    margin-top: 10px;
 }
 
-.moduleResult
+.submoduleBlock
 {
     padding: 5px;
     border-bottom: 1px solid #ccc;
-    text-align: center;
-    background: #f1f1f1;
-    font-weight: 600;
 }
-
 .submoduleBlock:hover
 {
     background: #f1f1f1;
diff --git a/~dev_rating/media/less/circles.css b/~dev_rating/media/less/circles.css
index 16769c2bbc88236d53ea809e5c67f4736a9a95de..74d8e7358bf73c2a1e8b8f1d88373ad60cfb8fbf 100644
--- a/~dev_rating/media/less/circles.css
+++ b/~dev_rating/media/less/circles.css
@@ -5,31 +5,31 @@
   min-height: 45px;
   border-radius: 50%;
   vertical-align: middle;
-  color: #FBFEFF;
+  color: #eef1f2;
   text-align: center;
 }
 .Circle.Undefined {
-  background: #777;
+  background: #a0a3a3;
 }
 .Circle.ECTS-F {
-  background: #8A2E15;
+  background: #8a2e15;
 }
 .Circle.ECTS-FX {
-  background: #D46141;
+  background: #d46141;
 }
 .Circle.ECTS-E {
-  background: #EDEC51;
+  background: #edec51;
   color: #212121;
 }
 .Circle.ECTS-D {
-  background: #7EBA3C;
+  background: #7eba3c;
 }
 .Circle.ECTS-C {
-  background: #28AE57;
+  background: #28ae57;
 }
 .Circle.ECTS-B {
   background: #349920;
 }
 .Circle.ECTS-A {
-  background: #367F27;
+  background: #367f27;
 }
diff --git a/~dev_rating/media/less/circles.less b/~dev_rating/media/less/circles.less
index 462660af0bd8a5a5b1c141f5cfb3f7bcfd2fc3c2..a9d1d88da06efc54fcc7fdb540f5b6316ba85a73 100644
--- a/~dev_rating/media/less/circles.less
+++ b/~dev_rating/media/less/circles.less
@@ -1,3 +1,5 @@
+@import (reference) "common.less";
+
 .Circle{
   display: inline-block;
   padding: 15px 9px;
@@ -5,15 +7,15 @@
   min-height: 45px;
   border-radius: 50%;
   vertical-align: middle;
-  color: #FBFEFF;
+  color: @ColorWhite;
   text-align: center;
 }
 
-.Circle.Undefined {  background: #777;  }
-.Circle.ECTS-F {  background: #8A2E15;  }
-.Circle.ECTS-FX {  background: #D46141;  }
-.Circle.ECTS-E {  background: #EDEC51; color: #212121;  }
-.Circle.ECTS-D {  background: #7EBA3C;  }
-.Circle.ECTS-C {  background: #28AE57;  }
-.Circle.ECTS-B {  background: #349920;  }
-.Circle.ECTS-A {  background: #367F27;  }
\ No newline at end of file
+.Circle.Undefined {  background: @ColorGrey;  }
+.Circle.ECTS-F {  background: @Color_ECTSF;  }
+.Circle.ECTS-FX {  background: @Color_ECTSFX  }
+.Circle.ECTS-E {  background: @Color_ECTSE; color: @ColorText;  }
+.Circle.ECTS-D {  background: @Color_ECTSD;  }
+.Circle.ECTS-C {  background: @Color_ECTSC;  }
+.Circle.ECTS-B {  background: @Color_ECTSB;  }
+.Circle.ECTS-A {  background: @Color_ECTSA;  }
\ No newline at end of file
diff --git a/~dev_rating/media/less/common.css b/~dev_rating/media/less/common.css
index deff9a7b5d4d7036d21120510fac776c3a43fc24..1e153e4a37651be41c1d197f1f590326392272c7 100644
--- a/~dev_rating/media/less/common.css
+++ b/~dev_rating/media/less/common.css
@@ -22,7 +22,18 @@ h2 {
   font-size: 1.5em;
 }
 h3 {
-  font-size: 1.17em;
+  font-size: 1.2em;
+}
+.clearFix {
+  clear: both;
+}
+.clearFix .label {
+  float: left;
+  width: 200px;
+  color: #6d7070;
+}
+.clearFix .content {
+  overflow: hidden;
 }
 .header_wrapper {
   -webkit-box-shadow: 0 5px 5px #e1e2e2;
@@ -69,16 +80,13 @@ h3 {
   -webkit-box-shadow: 0 0 5px #a0a3a3;
   box-shadow: 0 0 5px #a0a3a3;
 }
-.profile_clearFix {
+.profile_wrapper .clearFix {
   padding: 5px;
-  margin: 0 auto;
 }
-.profile_clearFix .label {
-  float: left;
+.profile_wrapper .clearFix .label {
   width: 130px;
-  color: #757575;
 }
-.profile_clearFix .username {
+.profile_wrapper .username {
   font-weight: 600;
 }
 .profile_wrapper .profile_delimeter {
diff --git a/~dev_rating/media/less/common.less b/~dev_rating/media/less/common.less
index a7ced3d75c0540add6cc04c5c4c1a58dc1faf848..92b78576c40dfe80878478eacc97856bdbb8e244 100644
--- a/~dev_rating/media/less/common.less
+++ b/~dev_rating/media/less/common.less
@@ -2,21 +2,30 @@
 // Цвета, шрифты
 // ---------------------------------------------------------------------------------------------------------------------
 
-@CWhiten: #FBFEFF;
-@CWhite: #EEF1f2;
-@CGrey: #A0A3A3;
+@ColorWhiten: #FBFEFF;
+@ColorWhite: #EEF1f2;
+@ColorLightGrey: lighten(@ColorGrey, 20%);
+@ColorGrey: #A0A3A3;
+@ColorDarkGrey: darken(@ColorGrey, 20%);
 @ColorText: #212121;
 @ColorLightBlue: #0183CE;
 @ColorBlue: #004573;
 @ColorGreen: #009933;
-@CActive: #F0622E;
+@ColorActive: #F0622E;
+
+@Color_Undefined: #777;
+@Color_ECTSF: #8A2E15;
+@Color_ECTSFX: #D46141;
+@Color_ECTSE: #EDEC51;
+@Color_ECTSD: #7EBA3C;
+@Color_ECTSC: #28AE57;
+@Color_ECTSB: #349920;
+@Color_ECTSA: #367F27;
 
 @FontFamily: 'PT Sans', sans-serif;
-@FontFamilyTitle: 'Open Sans Condensed', sans-serif;
-@FontSize_Small: 0.9em;
-@FontSize_Normal: 0.95em;
-@FontSize_Medium: 10pt;
-@FontSize_Large: 10pt;
+@FontFamilyTitle: 'PT Sans Narrow', sans-serif;
+@FontSizeSmall: 0.9em;
+@FontSizeNormal: 0.95em;
 
 // ---------------------------------------------------------------------------------------------------------------------
 // Макросы
@@ -42,7 +51,7 @@
 // ---------------------------------------------------------------------------------------------------------------------
 body
 {
-  background-color: @CWhite;
+  background-color: @ColorWhite;
   font-family: @FontFamily;
   color: @ColorText;
   line-height: 1.1;
@@ -51,15 +60,15 @@ body
 
 a, a:link
 {
-  font-size: @FontSize_Small;
+  font-size: @FontSizeSmall;
   color: @ColorLightBlue;
   text-decoration: none;
 }
 
 a:hover
 {
-  font-size: @FontSize_Small;
-  color: @CActive;
+  font-size: @FontSizeSmall;
+  color: @ColorActive;
 }
 
 
@@ -79,24 +88,39 @@ h2
 }
 h3
 {
-  font-size: 1.17em;
+  font-size: 1.2em;
+}
+
+.clearFix
+{
+  clear: both;
+  .label
+  {
+    float: left;
+    width: 200px;
+    color: @ColorDarkGrey;
+  }
+  .content
+  {
+    overflow: hidden;
+  }
 }
 // ---------------------------------------------------------------------------------------------------------------------
 // Header
 // ---------------------------------------------------------------------------------------------------------------------
 .header_wrapper
 {
-  .box-shadow(0 5px 5px, lighten(@CGrey, 25%));
-  font-size: @FontSize_Small;
+  .box-shadow(0 5px 5px, lighten(@ColorGrey, 25%));
+  font-size: @FontSizeSmall;
   padding: 12px 20px;
-  background-color: @CWhiten;
+  background-color: @ColorWhiten;
   > .alignLeft
   {
     display: inline-block;
   }
   a
   {
-    font-size: @FontSize_Small;
+    font-size: @FontSizeSmall;
   }
   .logotype
   {
@@ -104,11 +128,11 @@ h3
   }
   .faculty
   {
-    color: @CGrey;
+    color: @ColorGrey;
   }
   .navigation
   {
-    color: @CGrey;
+    color: @ColorGrey;
     display: inline;
     text-align: right;
     float: right;
@@ -126,29 +150,24 @@ h3
 
 .profile_wrapper {
   .modalWindow(450px);
-  background-color: @CWhiten;
-  font-size: @FontSize_Small;
+  background-color: @ColorWhiten;
+  font-size: @FontSizeSmall;
   padding: 5px;
   right: 15px;
   top: 45px;
   border-radius: 5px;
-  .box-shadow(0 0 5px, @CGrey);
-}
-
-.profile_clearFix
-{
-  padding: 5px;
-  margin: 0 auto;
-}
-
-.profile_clearFix .label
-{
-  float: left;
-  width: 130px;
-  color: #757575;
+  .box-shadow(0 0 5px, @ColorGrey);
+  .clearFix
+  {
+    padding: 5px;
+    .label
+    {
+      width: 130px;
+    }
+  }
 }
 
-.profile_clearFix .username
+.profile_wrapper .username
 {
   font-weight: 600;
 }
@@ -174,21 +193,21 @@ h3
 {
   margin-bottom: 10px;
   border-radius: 5px;
-  background-color: @CWhiten;
-  .box-shadow(0 0 5px, @CGrey);
+  background-color: @ColorWhiten;
+  .box-shadow(0 0 5px, @ColorGrey);
   .main_top
   {
     display: inline-block;
     position: absolute;
     background-color: @ColorLightBlue;
-    color: @CWhite;
+    color: @ColorWhite;
     margin: -15px 0px 0px -10px;
     padding: 10px 50px 10px 20px;
     min-width: 15%;
   }
   .main_content {
     width: 100%;
-    font-size: @FontSize_Normal;
+    font-size: @FontSizeNormal;
     position: relative;
     overflow: hidden;
     padding-top: 35px;
diff --git a/~dev_rating/media/less/student/index.css b/~dev_rating/media/less/student/index.css
index 2ccf35d42554db43f081b5254e83fc2789640505..a93ad78ee36f69b383516f7599522bdc0001bf8e 100644
--- a/~dev_rating/media/less/student/index.css
+++ b/~dev_rating/media/less/student/index.css
@@ -1,7 +1,7 @@
-.semesterSelect {
+.pageTitle {
   display: inline-block;
 }
-.tableLegend {
+.help {
   float: right;
   display: inline-block;
 }
diff --git a/~dev_rating/media/less/student/index.less b/~dev_rating/media/less/student/index.less
index 9d8fce247ff0eb5f2d6832eb20c3faeb827f2344..6dc4120525baee72d67c04604426afc52c7287cf 100644
--- a/~dev_rating/media/less/student/index.less
+++ b/~dev_rating/media/less/student/index.less
@@ -1,14 +1,15 @@
 @import (reference) "../common.less";
 
-.semesterSelect
+.pageTitle
 {
   display: inline-block;
 }
-.tableLegend
+.help
 {
   float: right;
   display: inline-block;
 }
+
 .disciplinesList
 {
   width: 100%;
@@ -18,12 +19,12 @@
     padding: 5px 0;
     text-align: center;
     vertical-align: middle;
-    border-top: 1px solid darken(@CWhite, 5%);
-    border-bottom: 1px solid darken(@CWhite, 5%);
+    border-top: 1px solid darken(@ColorWhite, 5%);
+    border-bottom: 1px solid darken(@ColorWhite, 5%);
   }
   .tableHeader
   {
-    background-color: @CWhite;
+    background-color: @ColorWhite;
   }
   .discProgress
   {
diff --git a/~dev_rating/media/less/student/subject.css b/~dev_rating/media/less/student/subject.css
new file mode 100644
index 0000000000000000000000000000000000000000..f95bd847b646f709c681c8f2cf5e12eae6502ba4
--- /dev/null
+++ b/~dev_rating/media/less/student/subject.css
@@ -0,0 +1,83 @@
+.pageTitle {
+  display: inline-block;
+}
+.help {
+  float: right;
+  display: inline-block;
+}
+h3.blockTitle {
+  font-size: 1.4em;
+  border-bottom: 1px solid #d4d5d5;
+}
+.blockMargin {
+  margin: 15px 0;
+}
+.disciplineInfo {
+  line-height: 1.2;
+}
+.disciplineInfo.first {
+  margin-top: 15px;
+  margin-bottom: 7.5px;
+}
+.disciplineInfo.last {
+  margin-top: 7.5px;
+  margin-bottom: 15px;
+}
+.tableTitle {
+  padding: 5px;
+  text-align: center;
+  color: #eef1f2;
+  margin-top: 10px;
+}
+.tableTitle.Module {
+  background-color: #0183ce;
+}
+.tableTitle.Extra {
+  background-color: #009933;
+}
+.submoduleBlock {
+  padding: 5px;
+  border-bottom: 1px solid #d4d5d5;
+}
+.submoduleBlock > div {
+  display: inline-block;
+  vertical-align: middle;
+}
+.submoduleBlock .submoduleTitle {
+  width: 64%;
+  color: #212121;
+}
+.submoduleBlock .submoduleRate {
+  width: 10%;
+  text-align: center;
+}
+.submoduleBlock .submodulePercent {
+  width: 6%;
+  text-align: center;
+}
+.submoduleBlock .submoduleDate {
+  width: 18%;
+  text-align: center;
+  color: #6d7070;
+}
+.submoduleBlock.topBorder {
+  border-top: 1px solid #d4d5d5;
+}
+.submoduleBlock:hover {
+  background: #eef1f2;
+}
+.moduleResult {
+  padding: 5px;
+  border-bottom: 1px solid #d4d5d5;
+  text-align: center;
+  background: #eef1f2;
+  font-weight: 600;
+}
+.totalRate {
+  margin: 10px 0;
+  padding: 10px;
+  font-weight: 600;
+  background: #004573;
+  color: #eef1f2;
+  text-align: center;
+}
diff --git a/~dev_rating/media/less/student/subject.less b/~dev_rating/media/less/student/subject.less
new file mode 100644
index 0000000000000000000000000000000000000000..b2d8c3a080501d2a32bd442a8b15e7887df65f2d
--- /dev/null
+++ b/~dev_rating/media/less/student/subject.less
@@ -0,0 +1,117 @@
+@import (reference) "../common.less";
+
+.pageTitle
+{
+  display: inline-block;
+}
+.help
+{
+  float: right;
+  display: inline-block;
+}
+
+h3.blockTitle
+{
+  font-size: 1.4em;
+  border-bottom: 1px solid @ColorLightGrey;
+}
+
+.blockMargin
+{
+  margin: 15px 0;
+}
+
+.disciplineInfo
+{
+  line-height: 1.2;
+}
+
+.disciplineInfo.first
+{
+  margin-top: 15px;
+  margin-bottom: 7.5px;
+}
+
+.disciplineInfo.last
+{
+  margin-top: 7.5px;
+  margin-bottom: 15px;
+}
+
+.tableTitle
+{
+  padding: 5px;
+  text-align: center;
+  color: @ColorWhite;
+  margin-top: 10px;
+}
+
+.tableTitle.Module { background-color: @ColorLightBlue; }
+.tableTitle.Extra { background-color: @ColorGreen; }
+
+
+.submoduleBlock
+{
+  padding: 5px;
+  border-bottom: 1px solid @ColorLightGrey;
+  > div
+  {
+    display: inline-block;
+    vertical-align: middle;
+  }
+
+  .submoduleTitle
+  {
+    width: 64%;
+    color: @ColorText;
+  }
+
+  .submoduleRate
+  {
+    width: 10%;
+    text-align: center;
+  }
+
+  .submodulePercent
+  {
+    width: 6%;
+    text-align: center;
+  }
+
+  .submoduleDate
+  {
+    width: 18%;
+    text-align: center;
+    color: @ColorDarkGrey;
+  }
+
+}
+
+.submoduleBlock.topBorder
+{
+  border-top: 1px solid @ColorLightGrey;
+}
+
+.submoduleBlock:hover
+{
+  background: @ColorWhite;
+}
+
+.moduleResult
+{
+  padding: 5px;
+  border-bottom: 1px solid @ColorLightGrey;
+  text-align: center;
+  background: @ColorWhite;
+  font-weight: 600;
+}
+
+.totalRate
+{
+  margin: 10px 0;
+  padding: 10px;
+  font-weight: 600;
+  background: @ColorBlue;
+  color: @ColorWhite;
+  text-align: center;
+}
\ No newline at end of file