Merge branch 'master' into vv_und_studvw_2026_02_rc4

This commit is contained in:
Harald Bamberger
2026-02-13 10:49:09 +01:00
60 changed files with 10217 additions and 1645 deletions
+6 -1
View File
@@ -407,7 +407,6 @@ html {
background-color: var(--fhc-background);
border-color: var(--fhc-border);
padding: var(--fhc-cis-main-py) var(--fhc-cis-main-px);
min-width: 0; /* fix flex-grow with tabulator exceeding width */
}
#cis-main .fa-arrow-up-right-from-square {
@@ -856,3 +855,9 @@ html {
background-color: var(--fhc-secondary);
}
.bordered-modal {
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.5rem;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
+308
View File
@@ -0,0 +1,308 @@
/* Base Header */
.verpasst-header {
background-color: var(--fhc-red-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.verpasst-header:hover {
background-color: var(--fhc-red-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .verpasst-header {
background-color: var(--fhc-red-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .verpasst-header:hover {
background-color: var(--fhc-red-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.abzugeben-header {
background-color: var(--fhc-yellow-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.abzugeben-header:hover {
background-color: var(--fhc-yellow-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .abzugeben-header {
background-color: var(--fhc-yellow-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .abzugeben-header:hover {
background-color: var(--fhc-yellow-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.beurteilungerforderlich-header {
background-color: var(--fhc-orange-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.beurteilungerforderlich-header:hover {
background-color: var(--fhc-orange-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .beurteilungerforderlich-header {
background-color: var(--fhc-orange-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .beurteilungerforderlich-header:hover {
background-color: var(--fhc-orange-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.verspaetet-header {
background-color: var(--fhc-pink-40);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.verspaetet-header:hover {
background-color: var(--fhc-pink-20);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .verspaetet-header {
background-color: var(--fhc-pink-30);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .verspaetet-header:hover {
background-color: var(--fhc-pink-20);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.abgegeben-header {
background-color: var(--fhc-green-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.abgegeben-header:hover {
background-color: var(--fhc-green-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .abgegeben-header {
background-color: var(--fhc-green-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .abgegeben-header:hover {
background-color: var(--fhc-green-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.bestanden-header {
background-color: var(--fhc-green-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.bestanden-header:hover {
background-color: var(--fhc-green-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .bestanden-header {
background-color: var(--fhc-green-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .bestanden-header:hover {
background-color: var(--fhc-green-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.nichtbestanden-header {
background-color: var(--fhc-red-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.nichtbestanden-header:hover {
background-color: var(--fhc-red-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .nichtbestanden-header {
background-color: var(--fhc-red-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .nichtbestanden-header:hover {
background-color: var(--fhc-red-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.erledigt-header {
background-color: var(--fhc-red-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.erledigt-header:hover {
background-color: var(--fhc-red-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .erledigt-header {
background-color: var(--fhc-red-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .erledigt-header:hover {
background-color: var(--fhc-red-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Base Header */
.standard-header {
background-color: var(--fhc-white-70);
font-weight: 600;
border-radius: 6px;
padding: 0px 0px 0px 34px;
transition: background-color 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}
/* Hover State */
.standard-header:hover {
background-color: var(--fhc-white-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
/* Active / Expanded State */
.p-accordion-tab-active > .standard-header {
background-color: var(--fhc-white-50);
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* Hover State Active*/
.p-accordion-tab-active > .standard-header:hover {
background-color: var(--fhc-white-60);
box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
#abgabetoolroot .modal-header{
background-color: var(--fhc-blue-primary);
color: var(--fhc-white-50);
}
#abgabetoolroot .modal-header .btn-close{
filter: invert(1);
}
#abgabetoolroot .modal-footer {
background-color: var(--fhc-white-20);
}
.bordered-modal {
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.5rem;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}
.bordered-modal .modal-body {
overflow-y: visible;
}
.p-accordion .p-accordion-header .p-accordion-header-link {
padding: 12px!important;
}
/* 1. Stick the Header */
#abgabetable .tabulator-header .tabulator-col.sticky-col {
position: sticky;
left: 0;
z-index: 10; /* Must be higher than other headers */
background-color: #fff; /* Opaque background is required */
border-right: 2px solid #ddd; /* Optional: Separator line */
}
/* 2. Stick the Data Cells */
#abgabetable .tabulator-tableholder .tabulator-row .tabulator-cell.sticky-col {
position: sticky;
left: 0;
z-index: 10; /* Ensure it floats above other cells */
background-color: #fff; /* Match your row background color */
border-right: 2px solid #ddd; /* Optional: Separator line */
}
/* 3. Fix for Hover Effects (Optional) */
/* If you use hover rows, you need to ensure the sticky cell matches the hover color */
#abgabetable .tabulator-row:hover .tabulator-cell.sticky-col {
background-color: #ccc; /* Match your existing hover color */
}
+92 -3
View File
@@ -38,15 +38,104 @@
--fhc-blue-primary: #006095;
--fhc-blue-primary-highlight: #0086CB;
--fhc-red-10: #842029;
--fhc-red-20: #800000;
/* --- Green --- */
--fhc-green-5: rgb(240, 250, 240);
--fhc-green-10: rgb(220, 245, 220);
--fhc-green-20: rgb(190, 235, 190);
--fhc-green-30: rgb(150, 220, 150);
--fhc-green-40: rgb(110, 200, 110);
--fhc-green-50: rgb(70, 170, 70);
--fhc-green-60: rgb(50, 145, 50);
--fhc-green-70: rgb(35, 120, 35);
--fhc-green-80: rgb(25, 95, 25);
--fhc-green-90: rgb(15, 70, 15);
--fhc-green-10: #008000;
/* --- Red --- */
--fhc-red-5: rgb(255, 245, 246);
--fhc-red-10: rgb(255, 225, 228);
--fhc-red-20: rgb(250, 190, 195);
--fhc-red-30: rgb(240, 150, 160);
--fhc-red-40: rgb(225, 110, 120);
--fhc-red-50: rgb(200, 70, 85);
--fhc-red-60: rgb(170, 50, 65);
--fhc-red-70: rgb(140, 35, 50);
--fhc-red-80: rgb(110, 20, 35);
--fhc-red-90: rgb(85, 10, 25);
/* --- Yellow --- */
--fhc-yellow-5: rgb(255, 255, 240);
--fhc-yellow-10: rgb(255, 250, 210);
--fhc-yellow-20: rgb(255, 240, 160);
--fhc-yellow-30: rgb(255, 225, 100);
--fhc-yellow-40: rgb(250, 210, 50);
--fhc-yellow-50: rgb(240, 190, 0);
--fhc-yellow-60: rgb(220, 165, 0);
--fhc-yellow-70: rgb(190, 135, 0);
--fhc-yellow-80: rgb(160, 105, 0);
--fhc-yellow-90: rgb(120, 75, 0);
/* --- Pink --- */
--fhc-pink-5: rgb(255, 245, 250);
--fhc-pink-10: rgb(255, 225, 235);
--fhc-pink-20: rgb(250, 195, 215);
--fhc-pink-30: rgb(245, 160, 190);
--fhc-pink-40: rgb(235, 120, 160);
--fhc-pink-50: rgb(220, 80, 130);
--fhc-pink-60: rgb(190, 60, 110);
--fhc-pink-70: rgb(160, 40, 90);
--fhc-pink-80: rgb(130, 25, 70);
--fhc-pink-90: rgb(100, 15, 50);
/* --- Orange --- */
--fhc-orange-5: rgb(255, 250, 240);
--fhc-orange-10: rgb(255, 235, 200);
--fhc-orange-20: rgb(255, 210, 140);
--fhc-orange-30: rgb(255, 185, 80);
--fhc-orange-40: rgb(255, 155, 40);
--fhc-orange-50: rgb(255, 128, 0);
--fhc-orange-60: rgb(230, 110, 0);
--fhc-orange-70: rgb(200, 90, 0);
--fhc-orange-80: rgb(170, 70, 0);
--fhc-orange-90: rgb(130, 50, 0);
--fhc-beige-10: rgba(245, 233, 215, 0.5);
--fhc-beige-20: rgba(172, 153, 125, 0.5);
/* --- Purple --- */
--fhc-purple-5: rgb(250, 245, 255);
--fhc-purple-10: rgb(240, 230, 255);
--fhc-purple-20: rgb(220, 200, 250);
--fhc-purple-30: rgb(190, 160, 245);
--fhc-purple-40: rgb(160, 120, 235);
--fhc-purple-50: rgb(130, 80, 220);
--fhc-purple-60: rgb(110, 60, 190);
--fhc-purple-70: rgb(90, 40, 160);
--fhc-purple-80: rgb(70, 25, 130);
--fhc-purple-90: rgb(50, 15, 100);
/* --- Teal --- */
--fhc-teal-5: rgb(240, 252, 252);
--fhc-teal-10: rgb(220, 245, 245);
--fhc-teal-20: rgb(180, 235, 235);
--fhc-teal-30: rgb(130, 220, 220);
--fhc-teal-40: rgb(80, 200, 200);
--fhc-teal-50: rgb(30, 170, 170);
--fhc-teal-60: rgb(20, 140, 140);
--fhc-teal-70: rgb(15, 115, 115);
--fhc-teal-80: rgb(10, 90, 90);
--fhc-teal-90: rgb(5, 65, 65);
/* --- Indigo --- */
--fhc-indigo-5: rgb(245, 247, 255);
--fhc-indigo-10: rgb(230, 235, 255);
--fhc-indigo-20: rgb(200, 210, 250);
--fhc-indigo-30: rgb(160, 175, 245);
--fhc-indigo-40: rgb(120, 140, 235);
--fhc-indigo-50: rgb(80, 100, 220);
--fhc-indigo-60: rgb(60, 80, 190);
--fhc-indigo-70: rgb(45, 60, 160);
--fhc-indigo-80: rgb(30, 40, 130);
--fhc-indigo-90: rgb(20, 25, 100);
}