Changeset ba52069 for src/app/students


Ignore:
Timestamp:
02/13/26 19:32:02 (7 months ago)
Author:
Stefan-Saveski <stefansaveski19@…>
Branches:
master
Children:
d7deae5
Parents:
50f2fb4
Message:

Added dark theme.

Location:
src/app/students
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • src/app/students/applications/page.tsx

    r50f2fb4 rba52069  
    2323
    2424const TableCell = ({ children, className = "" }: TableCellProps) => (
    25   <td className={`px-4 py-3 text-sm border-b border-gray-200 ${className}`}>
     25  <td className={`px-4 py-3 text-sm border-b border-border ${className}`}>
    2626    {children}
    2727  </td>
     
    7878      <div className="bg-primary text-white rounded-xl p-8 mb-8">
    7979        <div className="flex items-center gap-4">
    80           <div className="bg-white bg-opacity-20 rounded-full p-4">
    81             <FontAwesomeIcon icon={faPenToSquare} className="text-3xl text-primary" />
     80          <div className="bg-white rounded-full p-4">
     81            <FontAwesomeIcon icon={faPenToSquare} className="text-3xl text-[#0272D1]" />
    8282          </div>
    8383          <div>
     
    9191
    9292      {/* Session Selection */}
    93       <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100 mb-8">
     93      <div className="bg-card rounded-xl p-6 shadow-sm border border-border mb-8">
    9494        <div className="flex items-center justify-between">
    95           <h2 className="text-lg font-semibold text-gray-900 flex items-center gap-2">
     95          <h2 className="text-lg font-semibold text-card-foreground flex items-center gap-2">
    9696            <FontAwesomeIcon icon={faCalendarAlt} className="text-primary" />
    9797            {t('select_exam_session', 'Избери испитна сесија:')}
     
    101101            <button
    102102              onClick={() => setIsDropdownOpen(!isDropdownOpen)}
    103               className="bg-white border border-gray-300 rounded-lg px-4 py-2 text-left focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary min-w-80"
     103              className="bg-card border border-border rounded-lg px-4 py-2 text-left focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary min-w-80"
    104104            >
    105105              <div className="flex items-center justify-between">
     
    109109                <FontAwesomeIcon
    110110                  icon={faChevronDown}
    111                   className={`w-4 h-4 text-gray-400 transition-transform ml-4 ${isDropdownOpen ? 'rotate-180' : ''}`}
     111                  className={`w-4 h-4 text-muted-foreground transition-transform ml-4 ${isDropdownOpen ? 'rotate-180' : ''}`}
    112112                />
    113113              </div>
     
    115115
    116116            {isDropdownOpen && (
    117               <div className="absolute z-10 right-0 mt-1 w-80 bg-white border border-gray-200 rounded-lg shadow-lg">
     117              <div className="absolute z-10 right-0 mt-1 w-80 bg-card border border-border rounded-lg shadow-lg">
    118118                {applicationsData.examSessions.map((session) => (
    119119                  <button
     
    123123                      setIsDropdownOpen(false);
    124124                    }}
    125                     className="w-full px-4 py-3 text-left text-sm hover:bg-gray-50 focus:outline-none focus:bg-gray-50 first:rounded-t-lg last:rounded-b-lg"
     125                    className="w-full px-4 py-3 text-left text-sm hover:bg-accent focus:outline-none focus:bg-accent first:rounded-t-lg last:rounded-b-lg"
    126126                  >
    127                     <div className="font-medium text-gray-900">{t(session.id, session.name)}</div>
    128                     <div className="text-xs text-gray-500">{session.year} - {t(session.semester, session.semester)} - {t(session.session, session.session)}</div>
     127                    <div className="font-medium text-card-foreground">{t(session.id, session.name)}</div>
     128                    <div className="text-xs text-muted-foreground">{session.year} - {t(session.semester, session.semester)} - {t(session.session, session.session)}</div>
    129129                  </button>
    130130                ))}
     
    136136
    137137      {/* Applications Section */}
    138       <div className="bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden">
     138      <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden">
    139139        <div className="bg-primary text-white px-6 py-4">
    140140          <h2 className="text-xl font-bold">{t('registered_exams', 'Пријавени испити')}</h2>
     
    143143        <div className="overflow-x-auto">
    144144          <table className="w-full">
    145             <thead className="bg-gray-50">
     145            <thead className="bg-accent">
    146146              <tr>
    147                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">#</th>
    148                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('serial_number', 'Сериски број')}</th>
    149                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('code', 'Код')}</th>
    150                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('subject', 'Предмет')}</th>
    151                 <th className="px-4 py-4 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">{t('completed', 'Завршена')}</th>
    152                 <th className="px-4 py-4 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">{t('fee', 'Таксени')}</th>
    153                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('date', 'Датум')}</th>
    154                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('instructor', 'Наставник')}</th>
    155                 <th className="px-4 py-4 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">{t('decade', 'Декада')}</th>
     147                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">#</th>
     148                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('serial_number', 'Сериски број')}</th>
     149                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('code', 'Код')}</th>
     150                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('subject', 'Предмет')}</th>
     151                <th className="px-4 py-4 text-center text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('completed', 'Завршена')}</th>
     152                <th className="px-4 py-4 text-center text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('fee', 'Таксени')}</th>
     153                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('date', 'Датум')}</th>
     154                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('instructor', 'Наставник')}</th>
     155                <th className="px-4 py-4 text-center text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('decade', 'Декада')}</th>
    156156              </tr>
    157157            </thead>
    158             <tbody className="divide-y divide-gray-100">
     158            <tbody className="divide-y divide-border">
    159159              {applications.map((application) => (
    160                 <tr key={application.id} className="hover:bg-gray-50 transition-colors">
    161                   <TableCell className="font-medium text-gray-900">{application.id}</TableCell>
     160                <tr key={application.id} className="hover:bg-accent transition-colors">
     161                  <TableCell className="font-medium text-card-foreground">{application.id}</TableCell>
    162162                  <TableCell>
    163163                    <span className="font-mono text-sm text-primary font-medium hover:underline cursor-pointer">
     
    166166                  </TableCell>
    167167                  <TableCell className="font-mono text-sm font-medium">{application.code}</TableCell>
    168                   <TableCell className="font-medium text-gray-900 max-w-xs">
     168                  <TableCell className="font-medium text-card-foreground max-w-xs">
    169169                    <div className="flex items-center gap-2">
    170170                      <FontAwesomeIcon icon={faFileText} className="w-4 h-4 text-primary" />
     
    178178                    <FeeBadge fee={application.fee} />
    179179                  </TableCell>
    180                   <TableCell className="text-gray-600 font-medium">{application.date}</TableCell>
     180                  <TableCell className="text-muted-foreground font-medium">{application.date}</TableCell>
    181181                  <TableCell>
    182182                    <div className="flex items-center gap-2">
    183                       <FontAwesomeIcon icon={faUser} className="w-4 h-4 text-gray-400" />
    184                       <span className="font-medium text-gray-900">{t(application.instructor, application.instructor)}</span>
     183                      <FontAwesomeIcon icon={faUser} className="w-4 h-4 text-muted-foreground" />
     184                      <span className="font-medium text-card-foreground">{t(application.instructor, application.instructor)}</span>
    185185                    </div>
    186186                  </TableCell>
     
    208208      {/* Statistics Cards */}
    209209      <div className="grid grid-cols-1 md:grid-cols-3 gap-6 mt-8">
    210         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     210        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    211211          <div className="flex items-center gap-4">
    212212            <div className="bg-blue-100 text-blue-600 rounded-full p-3">
     
    214214            </div>
    215215            <div>
    216               <h3 className="text-lg font-bold text-gray-900">{t('registered_exams', 'Пријавени испити')}</h3>
     216              <h3 className="text-lg font-bold text-card-foreground">{t('registered_exams', 'Пријавени испити')}</h3>
    217217              <p className="text-2xl font-bold text-blue-600">
    218218                {applications.length}
     
    222222        </div>
    223223
    224         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     224        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    225225          <div className="flex items-center gap-4">
    226226            <div className="bg-green-100 text-green-600 rounded-full p-3">
     
    228228            </div>
    229229            <div>
    230               <h3 className="text-lg font-bold text-gray-900">{t('completed', 'Завршени')}</h3>
     230              <h3 className="text-lg font-bold text-card-foreground">{t('completed', 'Завршени')}</h3>
    231231              <p className="text-2xl font-bold text-green-600">
    232232                {applications.filter(app => app.completed === t('yes', 'Да')).length}
     
    236236        </div>
    237237
    238         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     238        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    239239          <div className="flex items-center gap-4">
    240240            <div className="bg-yellow-100 text-yellow-600 rounded-full p-3">
     
    242242            </div>
    243243            <div>
    244               <h3 className="text-lg font-bold text-gray-900">{t('total_fee', 'Вкупна такса')}</h3>
     244              <h3 className="text-lg font-bold text-card-foreground">{t('total_fee', 'Вкупна такса')}</h3>
    245245              <p className="text-2xl font-bold text-yellow-600">
    246246                {applications.reduce((sum, app) => sum + parseFloat(app.fee.replace(',', '.')), 0).toFixed(2)}
  • src/app/students/documents/page.tsx

    r50f2fb4 rba52069  
    2323
    2424const TableCell = ({ children, className = "" }: TableCellProps) => (
    25   <td className={`px-4 py-3 text-sm border-b border-gray-200 ${className}`}>
     25  <td className={`px-4 py-3 text-sm border-b border-border ${className}`}>
    2626    {children}
    2727  </td>
     
    3838  }
    3939  return (
    40     <span className="inline-flex items-center justify-center w-8 h-8 bg-gray-100 text-gray-600 rounded-full">
     40    <span className="inline-flex items-center justify-center w-8 h-8 bg-accent text-muted-foreground rounded-full">
    4141      <FontAwesomeIcon icon={faFileText} className="w-4 h-4" />
    4242    </span>
     
    7373      <div className="bg-primary text-white rounded-xl p-8 mb-8">
    7474        <div className="flex items-center gap-4">
    75           <div className="bg-white bg-opacity-20 rounded-full p-4">
    76             <FontAwesomeIcon icon={faFilePdf} className="text-3xl text-primary" />
     75          <div className="bg-white rounded-full p-4">
     76            <FontAwesomeIcon icon={faFilePdf} className="text-3xl text-[#0272D1]" />
    7777          </div>
    7878          <div>
     
    8686
    8787      {/* Document Request Form */}
    88       <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100 mb-8">
    89         <h2 className="text-lg font-semibold text-gray-900 mb-6 flex items-center gap-2">
     88      <div className="bg-card rounded-xl p-6 shadow-sm border border-border mb-8">
     89        <h2 className="text-lg font-semibold text-card-foreground mb-6 flex items-center gap-2">
    9090          <FontAwesomeIcon icon={faFileText} className="text-primary" />
    9191          {t('new_document_request', 'Ново барање за документ')}
     
    9595          {/* Document Type Selection */}
    9696          <div>
    97             <label className="block text-sm font-medium text-gray-700 mb-2">
     97            <label className="block text-sm font-medium text-muted-foreground mb-2">
    9898              {t('select_document', 'Избери документ')}:
    9999            </label>
     
    101101              <button
    102102                onClick={() => setIsDropdownOpen(!isDropdownOpen)}
    103                 className="w-full bg-white border border-gray-300 rounded-lg px-4 py-3 text-left focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary"
     103                className="w-full bg-card border border-border rounded-lg px-4 py-3 text-left focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary"
    104104              >
    105105                <div className="flex items-center justify-between">
    106                   <span className="text-sm text-gray-900 truncate">
     106                  <span className="text-sm text-card-foreground truncate">
    107107                    {selectedDocument ? t(selectedDocument.id) : t('select_document', 'Избери документ')}
    108108                  </span>
    109109                  <FontAwesomeIcon
    110110                    icon={faChevronDown}
    111                     className={`w-4 h-4 text-gray-400 transition-transform ml-2 flex-shrink-0 ${isDropdownOpen ? 'rotate-180' : ''}`}
     111                    className={`w-4 h-4 text-muted-foreground transition-transform ml-2 flex-shrink-0 ${isDropdownOpen ? 'rotate-180' : ''}`}
    112112                  />
    113113                </div>
     
    115115             
    116116              {isDropdownOpen && (
    117                 <div className="absolute z-10 w-full mt-1 bg-white border border-gray-200 rounded-lg shadow-lg max-h-80 overflow-y-auto">
     117                <div className="absolute z-10 w-full mt-1 bg-card border border-border rounded-lg shadow-lg max-h-80 overflow-y-auto">
    118118                  {documentsData.documentTypes.map((docType) => (
    119119                    <button
     
    123123                        setIsDropdownOpen(false);
    124124                      }}
    125                       className="w-full px-4 py-3 text-left text-sm hover:bg-gray-50 focus:outline-none focus:bg-gray-50 border-b border-gray-100 last:border-b-0"
     125                      className="w-full px-4 py-3 text-left text-sm hover:bg-accent focus:outline-none focus:bg-accent border-b border-border last:border-b-0"
    126126                    >
    127                       <div className="font-medium text-gray-900">{t(docType.id)}</div>
     127                      <div className="font-medium text-card-foreground">{t(docType.id)}</div>
    128128                      {docType.price > 0 && (
    129129                        <div className="text-xs text-blue-600 mt-1">{t('price', 'Цена')}: {docType.price} мкд</div>
     
    138138          {/* Comment Section */}
    139139          <div>
    140             <label className="block text-sm font-medium text-gray-700 mb-2">
     140            <label className="block text-sm font-medium text-muted-foreground mb-2">
    141141              {t('comment', 'Коментар')}:
    142142            </label>
     
    145145              onChange={(e) => setComment(e.target.value)}
    146146              rows={4}
    147               className="w-full border border-gray-300 rounded-lg px-4 py-3 focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary resize-none"
     147              className="w-full border border-border rounded-lg px-4 py-3 focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary resize-none"
    148148              placeholder={t('add_comment', 'Додај коментар')}
    149149            />
     
    163163
    164164      {/* Documents Table */}
    165       <div className="bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden">
     165      <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden">
    166166        <div className="bg-primary text-white px-6 py-4">
    167167          <h2 className="text-xl font-bold">{t('my_documents', 'Мои документи')}</h2>
     
    170170        <div className="overflow-x-auto">
    171171          <table className="w-full">
    172             <thead className="bg-gray-50">
     172            <thead className="bg-accent">
    173173              <tr>
    174                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">#</th>
    175                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('archive', 'Архива')}</th>
    176                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('date', 'Датум')}</th>
    177                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('request', 'Барање')}</th>
    178                 <th className="px-4 py-4 text-right text-xs font-medium text-gray-500 uppercase tracking-wider">{t('price', 'Цена')}</th>
    179                 <th className="px-4 py-4 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">{t('paid', 'Платено')}</th>
    180                 <th className="px-4 py-4 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">{t('document', 'Документ')}</th>
    181                 <th className="px-4 py-4 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">{t('pay_online', 'Плати онлајн')}</th>
    182                 <th className="px-4 py-4 text-center text-xs font-medium text-gray-500 uppercase tracking-wider">{t('status', 'Статус')}</th>
    183                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('comment', 'Коментар')}</th>
     174                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">#</th>
     175                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('archive', 'Архива')}</th>
     176                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('date', 'Датум')}</th>
     177                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('request', 'Барање')}</th>
     178                <th className="px-4 py-4 text-right text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('price', 'Цена')}</th>
     179                <th className="px-4 py-4 text-center text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('paid', 'Платено')}</th>
     180                <th className="px-4 py-4 text-center text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('document', 'Документ')}</th>
     181                <th className="px-4 py-4 text-center text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('pay_online', 'Плати онлајн')}</th>
     182                <th className="px-4 py-4 text-center text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('status', 'Статус')}</th>
     183                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('comment', 'Коментар')}</th>
    184184              </tr>
    185185            </thead>
    186             <tbody className="divide-y divide-gray-100">
     186            <tbody className="divide-y divide-border">
    187187              {currentDocuments.map((document) => (
    188                 <tr key={document.id} className="hover:bg-gray-50 transition-colors">
    189                   <TableCell className="font-medium text-gray-900">{document.id}</TableCell>
     188                <tr key={document.id} className="hover:bg-accent transition-colors">
     189                  <TableCell className="font-medium text-card-foreground">{document.id}</TableCell>
    190190                  <TableCell className="font-mono text-sm text-primary font-medium">{document.archive}</TableCell>
    191                   <TableCell className="text-gray-600">{document.date}</TableCell>
    192                   <TableCell className="font-medium text-gray-900 max-w-xs">
     191                  <TableCell className="text-muted-foreground">{document.date}</TableCell>
     192                  <TableCell className="font-medium text-card-foreground max-w-xs">
    193193                    {t(document.request)}
    194194                  </TableCell>
     
    210210                      <FontAwesomeIcon icon={faCheckCircle} className="w-5 h-5 text-green-600" />
    211211                    ) : (
    212                       <span className="text-gray-400">{t('none', '—')}</span>
     212                      <span className="text-muted-foreground">{t('none', '—')}</span>
    213213                    )}
    214214                  </TableCell>
     
    218218                  <TableCell>
    219219                    {document.comment || (
    220                       <span className="text-gray-400">{t('none', '—')}</span>
     220                      <span className="text-muted-foreground">{t('none', '—')}</span>
    221221                    )}
    222222                  </TableCell>
     
    228228
    229229        {/* Pagination */}
    230         <div className="bg-gray-50 px-6 py-4 flex items-center justify-between border-t border-gray-200">
    231           <div className="flex items-center gap-4 text-sm text-gray-700">
     230        <div className="bg-accent px-6 py-4 flex items-center justify-between border-t border-border">
     231          <div className="flex items-center gap-4 text-sm text-muted-foreground">
    232232            <div className="flex items-center gap-2">
    233233              <span>{t('show_rows', 'Прикажи редови')}:</span>
     
    235235                value={recordsPerPage}
    236236                onChange={(e) => setRecordsPerPage(Number(e.target.value))}
    237                 className="border border-gray-300 rounded px-2 py-1 text-sm focus:outline-none focus:ring-1 focus:ring-primary"
     237                className="border border-border rounded px-2 py-1 text-sm focus:outline-none focus:ring-1 focus:ring-primary"
    238238              >
    239239                <option value={15}>15</option>
     
    249249                value={currentPage}
    250250                onChange={(e) => setCurrentPage(Number(e.target.value))}
    251                 className="w-12 border border-gray-300 rounded px-2 py-1 text-sm text-center focus:outline-none focus:ring-1 focus:ring-primary"
     251                className="w-12 border border-border rounded px-2 py-1 text-sm text-center focus:outline-none focus:ring-1 focus:ring-primary"
    252252              /> {t('of', 'од')} {totalPages}
    253253            </div>
     
    258258              onClick={() => setCurrentPage(1)}
    259259              disabled={currentPage === 1}
    260               className="p-2 text-gray-500 hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
     260              className="p-2 text-muted-foreground hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
    261261            >
    262262              <FontAwesomeIcon icon={faAngleDoubleLeft} className="w-4 h-4" />
     
    265265              onClick={() => setCurrentPage(Math.max(1, currentPage - 1))}
    266266              disabled={currentPage === 1}
    267               className="p-2 text-gray-500 hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
     267              className="p-2 text-muted-foreground hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
    268268            >
    269269              <FontAwesomeIcon icon={faChevronLeft} className="w-4 h-4" />
     
    275275              onClick={() => setCurrentPage(Math.min(totalPages, currentPage + 1))}
    276276              disabled={currentPage === totalPages}
    277               className="p-2 text-gray-500 hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
     277              className="p-2 text-muted-foreground hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
    278278            >
    279279              <FontAwesomeIcon icon={faChevronRight} className="w-4 h-4" />
     
    282282              onClick={() => setCurrentPage(totalPages)}
    283283              disabled={currentPage === totalPages}
    284               className="p-2 text-gray-500 hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
     284              className="p-2 text-muted-foreground hover:text-primary disabled:opacity-50 disabled:cursor-not-allowed"
    285285            >
    286286              <FontAwesomeIcon icon={faAngleDoubleRight} className="w-4 h-4" />
    287287            </button>
    288             <span className="ml-4 text-sm text-gray-700">
     288            <span className="ml-4 text-sm text-muted-foreground">
    289289              {t('last', 'Последна')}
    290290            </span>
    291291          </div>
    292292
    293           <div className="text-sm text-gray-700">
     293          <div className="text-sm text-muted-foreground">
    294294            {t('total', 'Вкупно')}: {documents.length}
    295295          </div>
     
    309309      {/* Statistics Cards */}
    310310      <div className="grid grid-cols-1 md:grid-cols-3 gap-6 mt-8">
    311         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     311        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    312312          <div className="flex items-center gap-4">
    313313            <div className="bg-blue-100 text-blue-600 rounded-full p-3">
     
    315315            </div>
    316316            <div>
    317               <h3 className="text-lg font-bold text-gray-900">{t('total_documents', 'Вкупно документи')}</h3>
     317              <h3 className="text-lg font-bold text-card-foreground">{t('total_documents', 'Вкупно документи')}</h3>
    318318              <p className="text-2xl font-bold text-blue-600">
    319319                {documents.length}
     
    323323        </div>
    324324
    325         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     325        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    326326          <div className="flex items-center gap-4">
    327327            <div className="bg-green-100 text-green-600 rounded-full p-3">
     
    329329            </div>
    330330            <div>
    331               <h3 className="text-lg font-bold text-gray-900">{t('approved', 'Одобрени')}</h3>
     331              <h3 className="text-lg font-bold text-card-foreground">{t('approved', 'Одобрени')}</h3>
    332332              <p className="text-2xl font-bold text-green-600">
    333333                {documents.filter(doc => doc.status === "approved").length}
     
    337337        </div>
    338338
    339         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     339        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    340340          <div className="flex items-center gap-4">
    341341            <div className="bg-yellow-100 text-yellow-600 rounded-full p-3">
     
    343343            </div>
    344344            <div>
    345               <h3 className="text-lg font-bold text-gray-900">{t('total_price', 'Вкупна цена')}</h3>
     345              <h3 className="text-lg font-bold text-card-foreground">{t('total_price', 'Вкупна цена')}</h3>
    346346              <p className="text-2xl font-bold text-yellow-600">
    347347                {documents.reduce((sum, doc) => sum + doc.price, 0).toFixed(2)} {t('mkd', 'мкд')}
  • src/app/students/layout.tsx

    r50f2fb4 rba52069  
    3232}>) {
    3333  return (
    34     <html lang="en">
    35       <body className={`${geistSans.variable} ${geistMono.variable} antialiased`}>
    36         <div className="mx-auto max-w-6xl px-4">
    37           <Header />
    38           <Navbar />
    39           {children}
    40         </div>
    41       </body>
    42     </html>
     34    <div className={`${geistSans.variable} ${geistMono.variable} antialiased`}>
     35      <Header />
     36      <Navbar />
     37      {children}
     38    </div>
    4339  );
    4440}
  • src/app/students/profile/page.tsx

    r50f2fb4 rba52069  
    9898  const { t } = useTranslation();
    9999  return (
    100     <div className="flex justify-between items-center py-3 border-b border-gray-100 last:border-b-0">
    101       <div className="flex items-center gap-2 text-gray-600 font-medium">
     100    <div className="flex justify-between items-center py-3 border-b border-border last:border-b-0">
     101      <div className="flex items-center gap-2 text-muted-foreground font-medium">
    102102        {icon && <FontAwesomeIcon icon={icon} className="w-4 h-4" />}
    103103        <span>{t(label)}:</span>
    104104      </div>
    105       <div className="text-gray-900 font-semibold text-right max-w-xs break-words">
     105      <div className="text-card-foreground font-semibold text-right max-w-xs break-words">
    106106        {value || t('n_a')}
    107107      </div>
     
    119119  const { t } = useTranslation();
    120120  return (
    121     <div className="bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden">
     121    <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden">
    122122      <div className="bg-primary text-white px-6 py-4">
    123123        <div className="flex items-center gap-3">
     
    187187    return (
    188188      <div className="min-h-screen pb-8">
    189         <div className="bg-white rounded-xl shadow-sm border border-gray-100 p-6">
     189        <div className="bg-card rounded-xl shadow-sm border border-border p-6">
    190190          {t('loading')}
    191191        </div>
     
    212212        <div className="flex items-center gap-6">
    213213          <div className="relative">
    214             <div className="w-20 h-20 bg-white bg-opacity-20 rounded-full flex items-center justify-center border-2 border-white border-opacity-30">
    215               <FontAwesomeIcon icon={faUser} className="text-3xl text-primary" />
     214            <div className="w-20 h-20 bg-white rounded-full flex items-center justify-center border-2 border-white shadow-lg">
     215              <FontAwesomeIcon icon={faUser} className="text-3xl text-[#0272D1]" />
    216216            </div>
    217217            <div className="absolute -bottom-1 -right-1 w-6 h-6 bg-green-500 rounded-full border-2 border-white"></div>
  • src/app/students/semesters/page.tsx

    r50f2fb4 rba52069  
    4949
    5050const TableCell = ({ children, className = "" }: TableCellProps) => (
    51   <td className={`px-4 py-3 text-sm border-b border-gray-100 ${className}`}>
     51  <td className={`px-4 py-3 text-sm border-b border-border ${className}`}>
    5252    {children}
    5353  </td>
     
    6666  }
    6767  return (
    68     <span className={`${baseClasses} bg-gray-100 text-gray-800`}>
     68    <span className={`${baseClasses} bg-accent text-gray-800`}>
    6969      {t(status) || status}
    7070    </span>
     
    8787    );
    8888  }
    89   return <span className="text-gray-400">—</span>;
     89  return <span className="text-muted-foreground">—</span>;
    9090};
    9191
     
    163163    return (
    164164      <div className="min-h-screen pb-8">
    165         <div className="bg-white rounded-xl shadow-sm border border-gray-100 p-6">
     165        <div className="bg-card rounded-xl shadow-sm border border-border p-6">
    166166          {t('loading')}
    167167        </div>
     
    185185      <div className="bg-primary text-white rounded-xl p-8 mb-8">
    186186        <div className="flex items-center gap-4">
    187           <div className="bg-white bg-opacity-20 rounded-full p-4">
    188             <FontAwesomeIcon icon={faCalendarAlt} className="text-3xl text-primary" />
     187          <div className="bg-white rounded-full p-4">
     188            <FontAwesomeIcon icon={faCalendarAlt} className="text-3xl text-[#0272D1]" />
    189189          </div>
    190190          <div>
     
    198198
    199199      {/* Table Container */}
    200       <div className="bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden">
     200      <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden">
    201201        <div className="bg-primary text-white px-6 py-4">
    202202          <h2 className="text-xl font-bold">{t('semesters_list')}</h2>
     
    205205        <div className="overflow-x-auto">
    206206          <table className="w-full">
    207             <thead className="bg-gray-50">
     207            <thead className="bg-accent">
    208208              <tr>
    209                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">#</th>
    210                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('semester')}</th>
    211                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('direction')}</th>
    212                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('quota')}</th>
    213                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('note')}</th>
    214                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('student_com')}</th>
    215                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('sum')}</th>
    216                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('paid')}</th>
    217                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('ukim')}</th>
    218                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('created_on')}</th>
    219                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('date_changed')}</th>
    220                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('credits')}</th>
    221                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('type')}</th>
    222                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('doc')}</th>
    223                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('doc1')}</th>
    224                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('verified')}</th>
    225                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('taxes')}</th>
    226                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('signatures')}</th>
    227                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('status')}</th>
    228                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('completed')}</th>
     209                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">#</th>
     210                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('semester')}</th>
     211                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('direction')}</th>
     212                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('quota')}</th>
     213                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('note')}</th>
     214                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('student_com')}</th>
     215                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('sum')}</th>
     216                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('paid')}</th>
     217                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('ukim')}</th>
     218                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('created_on')}</th>
     219                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('date_changed')}</th>
     220                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('credits')}</th>
     221                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('type')}</th>
     222                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('doc')}</th>
     223                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('doc1')}</th>
     224                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('verified')}</th>
     225                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('taxes')}</th>
     226                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('signatures')}</th>
     227                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('status')}</th>
     228                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('completed')}</th>
    229229              </tr>
    230230            </thead>
    231             <tbody className="divide-y divide-gray-100">
     231            <tbody className="divide-y divide-border">
    232232              {semesters.map((semester) => (
    233                 <tr key={semester.id} className="hover:bg-gray-50 transition-colors">
    234                   <TableCell className="font-medium text-gray-900">{semester.id}</TableCell>
     233                <tr key={semester.id} className="hover:bg-accent transition-colors">
     234                  <TableCell className="font-medium text-card-foreground">{semester.id}</TableCell>
    235235                  <TableCell className="font-medium text-primary">{semester.semester}</TableCell>
    236236                  <TableCell>{semester.direction}</TableCell>
     
    246246                      </span>
    247247                    ) : (
    248                       <span className="text-gray-400">—</span>
     248                      <span className="text-muted-foreground">—</span>
    249249                    )}
    250250                  </TableCell>
     
    255255                      </span>
    256256                    ) : (
    257                       <span className="text-gray-400">—</span>
     257                      <span className="text-muted-foreground">—</span>
    258258                    )}
    259259                  </TableCell>
     
    265265                      </span>
    266266                    ) : (
    267                       <span className="text-gray-400">—</span>
     267                      <span className="text-muted-foreground">—</span>
    268268                    )}
    269269                  </TableCell>
     
    275275                      </span>
    276276                    ) : (
    277                       <span className="text-gray-400">—</span>
     277                      <span className="text-muted-foreground">—</span>
    278278                    )}
    279279                  </TableCell>
     
    282282                      <span className="text-blue-600">{semester.ukim}</span>
    283283                    ) : (
    284                       <span className="text-gray-400">—</span>
    285                     )}
    286                   </TableCell>
    287                   <TableCell className="text-gray-600">{semester.createdOn}</TableCell>
    288                   <TableCell className="text-gray-600">{semester.dateChanged}</TableCell>
     284                      <span className="text-muted-foreground">—</span>
     285                    )}
     286                  </TableCell>
     287                  <TableCell className="text-muted-foreground">{semester.createdOn}</TableCell>
     288                  <TableCell className="text-muted-foreground">{semester.dateChanged}</TableCell>
    289289                  <TableCell className="font-medium text-primary">{semester.credits}</TableCell>
    290290                  <TableCell>
     
    331331      {/* Summary Cards */}
    332332      <div className="grid grid-cols-1 md:grid-cols-3 gap-6 mt-8">
    333         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     333        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    334334          <div className="flex items-center gap-4">
    335335            <div className="bg-green-100 text-green-600 rounded-full p-3">
     
    337337            </div>
    338338            <div>
    339               <h3 className="text-lg font-bold text-gray-900">{t('completed_semesters')}</h3>
     339              <h3 className="text-lg font-bold text-card-foreground">{t('completed_semesters')}</h3>
    340340              <p className="text-2xl font-bold text-green-600">
    341341                {semesters.filter(s => s.completed !== "Не").length}
     
    345345        </div>
    346346
    347         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     347        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    348348          <div className="flex items-center gap-4">
    349349            <div className="bg-blue-100 text-blue-600 rounded-full p-3">
     
    351351            </div>
    352352            <div>
    353               <h3 className="text-lg font-bold text-gray-900">{t('verified_semesters')}</h3>
     353              <h3 className="text-lg font-bold text-card-foreground">{t('verified_semesters')}</h3>
    354354              <p className="text-2xl font-bold text-blue-600">
    355355                {semesters.filter(s => s.verified === "Да").length}
     
    359359        </div>
    360360
    361         <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
     361        <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
    362362          <div className="flex items-center gap-4">
    363363            <div className="bg-primary text-white rounded-full p-3">
     
    365365            </div>
    366366            <div>
    367               <h3 className="text-lg font-bold text-gray-900">{t('total_semesters')}</h3>
     367              <h3 className="text-lg font-bold text-card-foreground">{t('total_semesters')}</h3>
    368368              <p className="text-2xl font-bold text-primary">
    369369                {semesters.length}
  • src/app/students/subjects/page.tsx

    r50f2fb4 rba52069  
    142142
    143143const TableCell = ({ children, className = "" }: TableCellProps) => (
    144   <td className={`px-4 py-3 text-sm border-b border-gray-200 ${className}`}>
     144  <td className={`px-4 py-3 text-sm border-b border-border ${className}`}>
    145145    {children}
    146146  </td>
     
    164164  }
    165165  return (
    166     <span className={`${baseClasses} bg-gray-100 text-gray-800`}>
     166    <span className={`${baseClasses} bg-accent text-gray-800`}>
    167167      {t(status) || status}
    168168    </span>
     
    275275    return (
    276276      <div className="min-h-screen pb-8">
    277         <div className="bg-white rounded-xl shadow-sm border border-gray-100 p-6">
     277        <div className="bg-card rounded-xl shadow-sm border border-border p-6">
    278278          {t('loading')}
    279279        </div>
     
    305305      <div className="bg-primary text-white rounded-xl p-8 mb-8">
    306306        <div className="flex items-center gap-4">
    307           <div className="bg-white bg-opacity-20 rounded-full p-4">
    308             <FontAwesomeIcon icon={faBook} className="text-3xl text-primary" />
     307          <div className="bg-white rounded-full p-4">
     308            <FontAwesomeIcon icon={faBook} className="text-3xl text-[#0272D1]" />
    309309          </div>
    310310          <div>
     
    324324         
    325325          {/* Status Card */}
    326           <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
    327             <div className="text-sm text-gray-600 mb-2">
     326          <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
     327            <div className="text-sm text-muted-foreground mb-2">
    328328              {t('status')}: <span className="text-primary font-semibold">{t('enrolled_by_student')}</span>
    329329            </div>
    330             <div className="text-sm text-gray-600">
     330            <div className="text-sm text-muted-foreground">
    331331              {t('ticket_number')}: <span className="font-semibold">{currentSemester.ticketNumber}</span>
    332332            </div>
     
    334334
    335335          {/* Semester Selection */}
    336           <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
    337             <div className="text-sm text-gray-600 mb-2">
     336          <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
     337            <div className="text-sm text-muted-foreground mb-2">
    338338              {t('debt_from_documents')}: <span className="font-semibold">{currentSemester.debt}</span>
    339339            </div>
    340340           
    341341            <div className="relative mt-4">
    342               <label className="block text-sm font-medium text-gray-700 mb-2">
     342              <label className="block text-sm font-medium text-muted-foreground mb-2">
    343343                {t('select_semester')}:
    344344              </label>
     
    346346                <button
    347347                  onClick={() => setIsDropdownOpen(!isDropdownOpen)}
    348                   className="w-full bg-white border border-gray-300 rounded-lg px-4 py-3 text-left focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary"
     348                  className="w-full bg-card border border-border rounded-lg px-4 py-3 text-left focus:outline-none focus:ring-2 focus:ring-primary focus:border-primary"
    349349                >
    350350                  <div className="flex items-center justify-between">
     
    354354                    <FontAwesomeIcon
    355355                      icon={faChevronDown}
    356                       className={`w-4 h-4 text-gray-400 transition-transform ${isDropdownOpen ? 'rotate-180' : ''}`}
     356                      className={`w-4 h-4 text-muted-foreground transition-transform ${isDropdownOpen ? 'rotate-180' : ''}`}
    357357                    />
    358358                  </div>
     
    360360               
    361361                {isDropdownOpen && (
    362                   <div className="absolute z-10 w-full mt-1 bg-white border border-gray-200 rounded-lg shadow-lg">
     362                  <div className="absolute z-10 w-full mt-1 bg-card border border-border rounded-lg shadow-lg">
    363363                    {subjectsData.semesters.map((semester) => (
    364364                      <button
     
    368368                          setIsDropdownOpen(false);
    369369                        }}
    370                         className="w-full px-4 py-3 text-left text-sm hover:bg-gray-50 focus:outline-none focus:bg-gray-50 first:rounded-t-lg last:rounded-b-lg"
     370                        className="w-full px-4 py-3 text-left text-sm hover:bg-accent focus:outline-none focus:bg-accent first:rounded-t-lg last:rounded-b-lg"
    371371                      >
    372                         <div className="font-medium text-gray-900">{semester.name}</div>
    373                         <div className="text-xs text-gray-500">{t('status')}: {semester.status}</div>
     372                        <div className="font-medium text-card-foreground">{semester.name}</div>
     373                        <div className="text-xs text-muted-foreground">{t('status')}: {semester.status}</div>
    374374                      </button>
    375375                    ))}
     
    387387
    388388          {/* Enrolled Subjects */}
    389           <div className="bg-white rounded-xl p-6 shadow-sm border border-gray-100">
    390             <h3 className="font-semibold text-gray-900 mb-3 flex items-center gap-2">
     389          <div className="bg-card rounded-xl p-6 shadow-sm border border-border">
     390            <h3 className="font-semibold text-card-foreground mb-3 flex items-center gap-2">
    391391              <FontAwesomeIcon icon={faBook} className="w-4 h-4 text-primary" />
    392392              {t('enrolled_subjects')}
     
    400400        {/* Right Column - Financial Information */}
    401401        <div className="lg:col-span-2">
    402           <div className="bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden">
     402          <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden">
    403403            <div className="bg-primary text-white px-6 py-4">
    404404              <h2 className="text-xl font-bold flex items-center gap-2">
     
    413413                {/* Left Financial Column */}
    414414                <div className="space-y-4">
    415                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    416                     <span className="text-gray-600">{t('sum')}:</span>
     415                  <div className="flex justify-between items-center py-2 border-b border-border">
     416                    <span className="text-muted-foreground">{t('sum')}:</span>
    417417                    <span className="font-semibold text-primary">{currentSemester.financialInfo.sum}</span>
    418418                  </div>
    419                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    420                     <span className="text-gray-600">{t('paid')}:</span>
     419                  <div className="flex justify-between items-center py-2 border-b border-border">
     420                    <span className="text-muted-foreground">{t('paid')}:</span>
    421421                    <span className="font-semibold text-green-600">{currentSemester.financialInfo.paid}</span>
    422422                  </div>
    423                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    424                     <span className="text-gray-600">{t('due')}:</span>
     423                  <div className="flex justify-between items-center py-2 border-b border-border">
     424                    <span className="text-muted-foreground">{t('due')}:</span>
    425425                    <span className="font-semibold text-red-600">{currentSemester.financialInfo.due}</span>
    426426                  </div>
     
    433433                {/* Right Financial Column */}
    434434                <div className="space-y-4">
    435                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    436                     <span className="text-gray-600">{t('credits')}:</span>
     435                  <div className="flex justify-between items-center py-2 border-b border-border">
     436                    <span className="text-muted-foreground">{t('credits')}:</span>
    437437                    <span className="font-semibold text-primary">{currentSemester.financialInfo.credits}</span>
    438438                  </div>
    439                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    440                     <span className="text-gray-600">{t('mksa')}:</span>
     439                  <div className="flex justify-between items-center py-2 border-b border-border">
     440                    <span className="text-muted-foreground">{t('mksa')}:</span>
    441441                    <span className="font-semibold">{currentSemester.financialInfo.MKSA}</span>
    442442                  </div>
    443                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    444                     <span className="text-gray-600">{t('electronic_registration')}:</span>
     443                  <div className="flex justify-between items-center py-2 border-b border-border">
     444                    <span className="text-muted-foreground">{t('electronic_registration')}:</span>
    445445                    <span className="font-semibold">{currentSemester.financialInfo.electronicRegistration}</span>
    446446                  </div>
    447                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    448                     <span className="text-gray-600">{t('eukim')}:</span>
     447                  <div className="flex justify-between items-center py-2 border-b border-border">
     448                    <span className="text-muted-foreground">{t('eukim')}:</span>
    449449                    <span className="font-semibold">{currentSemester.financialInfo.eUKIM}</span>
    450450                  </div>
    451                   <div className="flex justify-between items-center py-2 border-b border-gray-100">
    452                     <span className="text-gray-600">{t('bank_provision')}:</span>
     451                  <div className="flex justify-between items-center py-2 border-b border-border">
     452                    <span className="text-muted-foreground">{t('bank_provision')}:</span>
    453453                    <span className="font-semibold">{currentSemester.financialInfo.bankProvision}</span>
    454454                  </div>
     
    465465
    466466      {/* Subjects Table */}
    467       <div className="bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden">
     467      <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden">
    468468        <div className="bg-primary text-white px-6 py-4">
    469469          <h2 className="text-xl font-bold">{t('subjects_list')}</h2>
     
    472472        <div className="overflow-x-auto">
    473473          <table className="w-full">
    474             <thead className="bg-gray-50">
     474            <thead className="bg-accent">
    475475              <tr>
    476                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">#</th>
    477                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('code')}</th>
    478                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('hours')}</th>
    479                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('which_time')}</th>
    480                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('subject')}</th>
    481                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('semester')}</th>
    482                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('status')}</th>
    483                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('signature')}</th>
    484                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('group')}</th>
    485                 <th className="px-4 py-4 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">{t('professor')}</th>
     476                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">#</th>
     477                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('code')}</th>
     478                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('hours')}</th>
     479                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('which_time')}</th>
     480                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('subject')}</th>
     481                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('semester')}</th>
     482                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('status')}</th>
     483                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('signature')}</th>
     484                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('group')}</th>
     485                <th className="px-4 py-4 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider">{t('professor')}</th>
    486486              </tr>
    487487            </thead>
    488             <tbody className="divide-y divide-gray-100">
     488            <tbody className="divide-y divide-border">
    489489              {currentSubjects.map((subject: Subject) => (
    490                 <tr key={subject.id} className="hover:bg-gray-50 transition-colors">
    491                   <TableCell className="font-medium text-gray-900">{subject.id}</TableCell>
     490                <tr key={subject.id} className="hover:bg-accent transition-colors">
     491                  <TableCell className="font-medium text-card-foreground">{subject.id}</TableCell>
    492492                  <TableCell className="font-mono text-sm text-primary font-medium">{subject.code}</TableCell>
    493493                  <TableCell className="font-medium">{subject.hours}</TableCell>
    494494                  <TableCell className="text-center font-medium">{subject.kojPat}</TableCell>
    495                   <TableCell className="font-medium text-gray-900 max-w-xs">
     495                  <TableCell className="font-medium text-card-foreground max-w-xs">
    496496                    <div className="flex items-center gap-2">
    497497                      <FontAwesomeIcon icon={faBook} className="w-4 h-4 text-primary" />
     
    505505                  <TableCell className="text-center">
    506506                    {subject.signature ? t(subject.signature, subject.signature) : (
    507                       <span className="text-gray-400">—</span>
     507                      <span className="text-muted-foreground">—</span>
    508508                    )}
    509509                  </TableCell>
    510510                  <TableCell className="text-center">
    511511                    {subject.group ? t(subject.group, subject.group) : (
    512                       <span className="text-gray-400">—</span>
     512                      <span className="text-muted-foreground">—</span>
    513513                    )}
    514514                  </TableCell>
    515515                  <TableCell>
    516516                    {subject.professor ? t(subject.professor, subject.professor) : (
    517                       <span className="text-gray-400">—</span>
     517                      <span className="text-muted-foreground">—</span>
    518518                    )}
    519519                  </TableCell>
Note: See TracChangeset for help on using the changeset viewer.