chartManD commited on
Commit
fbe3d46
·
1 Parent(s): 7b865a1

Se continua aplicando paleta de colores y se refactorizan clases css

Browse files
tecnicas/forms/codes_form.py CHANGED
@@ -6,5 +6,5 @@ class CodesForm(forms.Form):
6
 
7
  for index, code in enumerate(codes):
8
  self.fields[f'producto_{index+1}'] = forms.CharField(max_length=3, required=True, min_length=3, initial=code, label=f"codigo {index+1}", widget=forms.TextInput(attrs={
9
- "class": "ct-code bg-gray-300 p-1 border-b-1 text-center w-full disabled:bg-gray-500 uppercase"
10
  }))
 
6
 
7
  for index, code in enumerate(codes):
8
  self.fields[f'producto_{index+1}'] = forms.CharField(max_length=3, required=True, min_length=3, initial=code, label=f"codigo {index+1}", widget=forms.TextInput(attrs={
9
+ "class": "ct-code bg-surface-ligt p-1 border-b-1 text-center w-full disabled:bg-surface-general uppercase"
10
  }))
tecnicas/forms/etiqueta_form.py CHANGED
@@ -2,6 +2,6 @@ from django import forms
2
 
3
  class EtiquetaForm(forms.Form):
4
  nueva_etiqueta = forms.CharField(max_length=255, required=True, widget=forms.TextInput(attrs={
5
- "class": "bg-gray-300 border-b text-center text-black",
6
  "placeholder": "No repetir etiqueta"
7
  }))
 
2
 
3
  class EtiquetaForm(forms.Form):
4
  nueva_etiqueta = forms.CharField(max_length=255, required=True, widget=forms.TextInput(attrs={
5
+ "class": "bg-surface-alter border-b text-center text-black fond-bold p-3",
6
  "placeholder": "No repetir etiqueta"
7
  }))
tecnicas/forms/sesion_basic_form.py CHANGED
@@ -8,32 +8,32 @@ class SesionBasicForm(forms.Form):
8
  id_tecnica = forms.IntegerField(widget=forms.HiddenInput())
9
 
10
  nombre_sesion = forms.CharField(max_length=255, widget=forms.TextInput(attrs={
11
- "class": "bg-gray-200 border-b-1 text-center w-full p-1",
12
  "name": "nombre_sesion",
13
  "placeholder": "Ej. Mermelada de mango picante"
14
  }), required=False)
15
 
16
  numero_productos = forms.IntegerField(widget=forms.NumberInput(attrs={
17
- "class": "bg-gray-200 p-1 border-b-1 text-center w-full",
18
  "placeholder": "Solo números"
19
  }), required=True)
20
 
21
  numero_catadores = forms.IntegerField(widget=forms.NumberInput(attrs={
22
- "class": "bg-gray-200 p-1 border-b-1 text-center w-full",
23
  "placeholder": "Solo números"
24
  }), required=True)
25
 
26
  numero_repeticiones = forms.IntegerField(widget=forms.NumberInput(attrs={
27
- "class": "bg-gray-200 p-1 border-b-1 text-center w-full",
28
  "placeholder": "Solo números"
29
  }), required=True)
30
 
31
  tamano_escala = forms.IntegerField(widget=forms.NumberInput(attrs={
32
- "class": "bg-gray-200 p-1 border-b-1 text-center w-full",
33
  }), required=True, min_value=5)
34
 
35
  instrucciones = forms.CharField(max_length=255, widget=forms.TextInput(attrs={
36
- "class": "bg-gray-200 border-b-1 text-center w-full p-1",
37
  "placeholder": "Este campo es opcional"
38
  }), required=False)
39
 
 
8
  id_tecnica = forms.IntegerField(widget=forms.HiddenInput())
9
 
10
  nombre_sesion = forms.CharField(max_length=255, widget=forms.TextInput(attrs={
11
+ "class": "bg-surface-ligt border-b-1 text-center w-full p-1",
12
  "name": "nombre_sesion",
13
  "placeholder": "Ej. Mermelada de mango picante"
14
  }), required=False)
15
 
16
  numero_productos = forms.IntegerField(widget=forms.NumberInput(attrs={
17
+ "class": "bg-surface-ligt p-1 border-b-1 text-center w-full",
18
  "placeholder": "Solo números"
19
  }), required=True)
20
 
21
  numero_catadores = forms.IntegerField(widget=forms.NumberInput(attrs={
22
+ "class": "bg-surface-ligt p-1 border-b-1 text-center w-full",
23
  "placeholder": "Solo números"
24
  }), required=True)
25
 
26
  numero_repeticiones = forms.IntegerField(widget=forms.NumberInput(attrs={
27
+ "class": "bg-surface-ligt p-1 border-b-1 text-center w-full",
28
  "placeholder": "Solo números"
29
  }), required=True)
30
 
31
  tamano_escala = forms.IntegerField(widget=forms.NumberInput(attrs={
32
+ "class": "bg-surface-ligt p-1 border-b-1 text-center w-full",
33
  }), required=True, min_value=5)
34
 
35
  instrucciones = forms.CharField(max_length=255, widget=forms.TextInput(attrs={
36
+ "class": "bg-surface-ligt border-b-1 text-center w-full p-1",
37
  "placeholder": "Este campo es opcional"
38
  }), required=False)
39
 
tecnicas/forms/sesion_tags_form.py CHANGED
@@ -9,17 +9,17 @@ class SesionTagsForm(forms.Form):
9
  if tipo_escala == "estructurada":
10
  for i in range(longitud):
11
  self.fields[f'segmento_{i+1}'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label=f"segmento {i+1}", empty_label="Selecione opcion", widget=forms.Select(attrs={
12
- "class":"ct-select-op p-1 rounded bg-gray-200 [*]:capitalize"
13
  }))
14
  else:
15
  self.fields['punto_inicial'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label="Punto inicial", empty_label="Selecione opcion", widget=forms.Select(attrs={
16
- "class":"ct-select-op p-1 rounded bg-gray-200 [*]:capitalize"
17
  }))
18
 
19
  self.fields['punto_medio'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label="Punto medio", empty_label="Selecione opcion", widget=forms.Select(attrs={
20
- "class":"ct-select-op p-1 rounded bg-gray-200 [*]:capitalize"
21
  }))
22
 
23
  self.fields['punto_final'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label="Punto final", empty_label="Selecione opcion", widget=forms.Select(attrs={
24
- "class":"ct-select-op p-1 rounded bg-gray-200 [*]:capitalize"
25
  }))
 
9
  if tipo_escala == "estructurada":
10
  for i in range(longitud):
11
  self.fields[f'segmento_{i+1}'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label=f"segmento {i+1}", empty_label="Selecione opcion", widget=forms.Select(attrs={
12
+ "class":"ct-select-op p-1 max-sm:w-full bg-surface-ligt [*]:capitalize"
13
  }))
14
  else:
15
  self.fields['punto_inicial'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label="Punto inicial", empty_label="Selecione opcion", widget=forms.Select(attrs={
16
+ "class":"ct-select-op p-1 max-sm:w-full bg-surface-ligt [*]:capitalize"
17
  }))
18
 
19
  self.fields['punto_medio'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label="Punto medio", empty_label="Selecione opcion", widget=forms.Select(attrs={
20
+ "class":"ct-select-op p-1 max-sm:w-full bg-surface-ligt [*]:capitalize"
21
  }))
22
 
23
  self.fields['punto_final'] = forms.ModelChoiceField(queryset=Etiqueta.objects.all(), required=True, label="Punto final", empty_label="Selecione opcion", widget=forms.Select(attrs={
24
+ "class":"ct-select-op p-1 max-sm:w-full bg-surface-ligt [*]:capitalize"
25
  }))
tecnicas/forms/word_form.py CHANGED
@@ -9,7 +9,7 @@ class WordForm(forms.ModelForm):
9
  max_length=255,
10
  error_messages={
11
  "required": "parametros requeridos",
12
- "unique": "palabra repetida", # Ojo: 'unique' lo maneja ModelForm, no aquí
13
  "min_length": "la palabra es muy corta",
14
  "max_length": "la palabra es muy larga",
15
  },
 
9
  max_length=255,
10
  error_messages={
11
  "required": "parametros requeridos",
12
+ "unique": "palabra repetida",
13
  "min_length": "la palabra es muy corta",
14
  "max_length": "la palabra es muy larga",
15
  },
tecnicas/static/js/panel-basic.js CHANGED
@@ -4,7 +4,7 @@ const descriptons = {
4
  atributos:
5
  "Con el estilo atributos elijes las palabras para evaluar los productos",
6
  vocabulario:
7
- "Los vocabularios son un conjunto de palabras especificas para evaluar aspectos de un producto.",
8
  };
9
 
10
  let inputsScale;
 
4
  atributos:
5
  "Con el estilo atributos elijes las palabras para evaluar los productos",
6
  vocabulario:
7
+ "Los vocabularios son un conjunto de palabras específicas para evaluar aspectos de un producto",
8
  };
9
 
10
  let inputsScale;
tecnicas/static/js/panel-codes.js CHANGED
@@ -18,7 +18,7 @@ function submitData(e) {
18
  });
19
  submitData.push(simplePosition);
20
  });
21
-
22
  const codesInput = document.createElement("input");
23
  codesInput.type = "hidden";
24
  codesInput.name = "sort_codes";
@@ -139,6 +139,8 @@ function addIUPermutations() {
139
  unlist.classList.add(
140
  "flex",
141
  "flex-wrap",
 
 
142
  "gap-3",
143
  "px-3",
144
  "py-1",
@@ -158,7 +160,16 @@ function addIUPermutations() {
158
  });
159
 
160
  const section = document.createElement("section");
161
- section.classList.add("bg-gray-400", "py-2");
 
 
 
 
 
 
 
 
 
162
 
163
  section.appendChild(paragraph);
164
  section.appendChild(unlist);
 
18
  });
19
  submitData.push(simplePosition);
20
  });
21
+
22
  const codesInput = document.createElement("input");
23
  codesInput.type = "hidden";
24
  codesInput.name = "sort_codes";
 
139
  unlist.classList.add(
140
  "flex",
141
  "flex-wrap",
142
+ "justify-center",
143
+ "items-center",
144
  "gap-3",
145
  "px-3",
146
  "py-1",
 
160
  });
161
 
162
  const section = document.createElement("section");
163
+ section.classList.add(
164
+ "bg-surface-card",
165
+ "py-2",
166
+ "sm:max-w-80",
167
+ "w-full",
168
+ "flex",
169
+ "flex-col",
170
+ "justify-center",
171
+ "items-center"
172
+ );
173
 
174
  section.appendChild(paragraph);
175
  section.appendChild(unlist);
tecnicas/templates/tecnicas/create_sesion/configuracion-panel-basic.html CHANGED
@@ -3,19 +3,9 @@
3
 
4
  {% block title %}Panel Configuracion{% endblock %}
5
 
6
- <!--
7
- ||||Debe tener los siguietens campos para:
8
- -- Convenvionales tipo escalas
9
- - Preguntar si desea darle un nombre a la sesion
10
- - Numero produtos
11
- - Numero jueces
12
- - Numero repeticiones, debe ser mayor a 1, no validar si es menos [-------------REALIZAR-------------]
13
- - Tipo de escala, seran dos, de rango o estructurada
14
- -->
15
-
16
  {% block content %}
17
- <article class="w-full flex flex-col justify-center items-center bg-gray-600 my-10">
18
- <article class="flex flex-col gap-4 bg-gray-400 md:p-10 p-5 rounded-2xl lg:w-4xl w-full">
19
  <h1 class="text-center font-bold text-4xl">Panel de configuración</h1>
20
  {% if error %}
21
  <p class="text-sm bg-red-200 text-center">{{ error }}</p>
@@ -23,7 +13,6 @@
23
  <hr>
24
  <form method="post" action="" class="[&>article]:not-last:mb-4 [&>article]:not-first:pt-4 [&>article]:px-6">
25
  {% csrf_token %}
26
-
27
  <label for="form_sesion.id_tecnica.id_for_label" class="hidden">
28
  {{ form_sesion.id_tecnica }}
29
  </label>
@@ -66,15 +55,18 @@
66
  <section class="flex flex-row gap-4 justify-around flex-wrap">
67
  {% for escala in form_sesion.estilo_palabras %}
68
  <label for="{{escala.id_for_label}}"
69
- class="ct-radio-estilo uppercase text-lg tracking-wider font-medium p-2 px-4 border-b-2 active:border-b-0 active:border-t-2 border-blue-800 transition-all rounded-xl bg-blue-500 text-white w-fit">
70
  {{ escala.tag }}
71
  {{ escala.choice_label }}
72
  </label>
73
  {% endfor %}
74
  </section>
75
- <p
76
- class="ct-ayuda-estilo text-lg font-bold tracking-wide bg-gray-600 text-white text-center py-1 px-4 rounded-xl">
77
- </p>
 
 
 
78
  </article>
79
  <hr>
80
  <article class="cs-escalas-radio flex flex-col gap-4">
@@ -82,7 +74,7 @@
82
  <section class="flex flex-row gap-4 justify-around flex-wrap">
83
  {% for escala in form_sesion.tipo_escala %}
84
  <label for="{{escala.id_for_label}}"
85
- class="ct-radio-escala uppercase text-lg tracking-wider font-medium p-2 px-4 border-b-2 active:border-b-0 active:border-t-2 border-blue-800 transition-all rounded-xl bg-blue-500 text-white w-fit">
86
  {{ escala.tag }}
87
  {{ escala.choice_label }}
88
  </label>
@@ -97,7 +89,7 @@
97
 
98
  <section class="py-2 px-5 flex flex-col justify-center items-center gap-2 relative">
99
  <label for="{{ form_sesion.tamano_escala.id_for_label }}"
100
- class="ct-size-scale text-lg flex flex-col items-center px-2 font-medium">
101
  <p>Establece número de segmentos:</p>
102
  {{ form_sesion.tamano_escala }}
103
  </label>
@@ -110,9 +102,15 @@
110
  </section>
111
  </article>
112
  <hr>
113
- <article class="cs-escalas-radio flex flex-col items-center gap-4">
114
- <button type="submit"
115
- class="uppercase text-lg tracking-wider font-medium p-2 px-4 border-b-2 active:border-b-0 active:border-t-2 active:border-yellow-500 border-yellow-800 transition-all rounded-xl bg-yellow-500 text-white w-fit">Continuar</button>
 
 
 
 
 
 
116
  </article>
117
  </form>
118
  </article>
 
3
 
4
  {% block title %}Panel Configuracion{% endblock %}
5
 
 
 
 
 
 
 
 
 
 
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
+ <article class="cts-wrap-content text-black">
9
  <h1 class="text-center font-bold text-4xl">Panel de configuración</h1>
10
  {% if error %}
11
  <p class="text-sm bg-red-200 text-center">{{ error }}</p>
 
13
  <hr>
14
  <form method="post" action="" class="[&>article]:not-last:mb-4 [&>article]:not-first:pt-4 [&>article]:px-6">
15
  {% csrf_token %}
 
16
  <label for="form_sesion.id_tecnica.id_for_label" class="hidden">
17
  {{ form_sesion.id_tecnica }}
18
  </label>
 
55
  <section class="flex flex-row gap-4 justify-around flex-wrap">
56
  {% for escala in form_sesion.estilo_palabras %}
57
  <label for="{{escala.id_for_label}}"
58
+ class="ct-radio-estilo uppercase text-lg tracking-wider font-bold p-2 px-4 rounded-xl cts-btn-secondary btn-push">
59
  {{ escala.tag }}
60
  {{ escala.choice_label }}
61
  </label>
62
  {% endfor %}
63
  </section>
64
+ <section class="w-full flex justify-center items-center">
65
+ <p
66
+ class="ct-ayuda-estilo max-w-2xl text-lg font-medium tracking-wide bg-surface-card text-center py-1 px-4 rounded-xl">
67
+ </p>
68
+ </section>
69
+
70
  </article>
71
  <hr>
72
  <article class="cs-escalas-radio flex flex-col gap-4">
 
74
  <section class="flex flex-row gap-4 justify-around flex-wrap">
75
  {% for escala in form_sesion.tipo_escala %}
76
  <label for="{{escala.id_for_label}}"
77
+ class="ct-radio-escala uppercase text-lg tracking-wider font-bold p-2 px-4 rounded-xl cts-btn-primary btn-push">
78
  {{ escala.tag }}
79
  {{ escala.choice_label }}
80
  </label>
 
89
 
90
  <section class="py-2 px-5 flex flex-col justify-center items-center gap-2 relative">
91
  <label for="{{ form_sesion.tamano_escala.id_for_label }}"
92
+ class="ct-size-scale text-xl flex flex-col items-center px-2 font-bold">
93
  <p>Establece número de segmentos:</p>
94
  {{ form_sesion.tamano_escala }}
95
  </label>
 
102
  </section>
103
  </article>
104
  <hr>
105
+ <article class="cs-escalas-radio w-full flex max-sm:flex-col flex-wrap items-center justify-center gap-4">
106
+ <button type="submit" class="cts-btn-general cts-btn-primary btn-push flex-1/4 w-full">
107
+ Continuar
108
+ </button>
109
+ <a href="{% url 'cata_system:seleccion_tecnica' %}" class="flex-1/4 w-full">
110
+ <button type="button" class="cts-btn-general cts-btn-error btn-push w-full">
111
+ Cancelar la creación
112
+ </button>
113
+ </a>
114
  </article>
115
  </form>
116
  </article>
tecnicas/templates/tecnicas/create_sesion/configuracion-panel-codes.html CHANGED
@@ -4,8 +4,8 @@
4
  {% block title %}Panel Configuracion{% endblock %}
5
 
6
  {% block content %}
7
- <article class="w-full flex flex-col justify-center items-center bg-gray-600 my-10">
8
- <article class="flex flex-col gap-4 bg-gray-400 md:p-10 p-5 rounded-2xl lg:w-4xl w-full">
9
  <h1 class="text-center font-bold text-4xl">Panel de configuración</h1>
10
  {% if error %}
11
  <p class="text-2xl">{{ error }}</p>
@@ -13,36 +13,53 @@
13
  <form method="post" action="" class="ct-codes-form flex flex-col gap-5">
14
  {% csrf_token %}
15
  <h2 class="text-2xl mb-2 font-bold">Codificar productos</h2>
16
- <article class="flex flex-row flex-wrap gap-4 items-center justify-center">
17
- <p class="text-center font-bold tracking-wide text-xl bg-gray-500 text-white px-3 py-3 pb-4 rounded">
 
18
  Puede dejar los campos como están para usar los códigos predefinidos.
19
  </p>
20
- {% for field in form_codes %}
21
- <label for="{{ field.id_for_label }}"
22
- class="text-lg flex flex-col items-center px-2 font-medium tracking-wide">
23
- <p class="tracking-normal capitalize text-base font-bold">{{ field.label }}</p>
24
- {{ field }}
25
- </label>
26
- {% endfor %}
27
- </article>
28
- <article class="flex justify-center gap-5">
29
- <button type="button"
30
- class="ct-gen-or text-lg tracking-wider font-medium p-2 px-4 border-b-2 active:border-b-0 active:border-t-2 active:border-yellow-500 border-yellow-800 transition-all rounded-xl bg-yellow-500 text-white w-fit capitalize"
31
  onclick="setPermutations()">
32
  regenerar ordenes
33
  </button>
34
  </article>
35
- <article>
36
- <h2 class="text-2xl mb-2 font-bold">Ordenes</h2>
 
 
37
  <section class="flex justify-center">
38
  <article
39
- class="ct-orden-list flex flex-wrap px-3 py-4 justify-center items-center capitalize text-lg bg-gray-500 gap-5 w-fit">
40
  </article>
41
  </section>
42
  </article>
43
- <article class="flex justify-center items-center py-3 rounded">
44
- <button type="submit"
45
- class="ct-btn-submit uppercase text-lg tracking-wider font-medium p-2 px-4 border-b-2 active:border-b-0 active:border-t-2 active:border-yellow-500 border-yellow-800 transition-all rounded-xl bg-yellow-500 text-white w-fit disabled:bg-amber-600">Continuar</button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
  </article>
47
  </form>
48
  <input type="number" value="{{ num_tester }}" class="ct-num-cata hidden" disabled>
 
4
  {% block title %}Panel Configuracion{% endblock %}
5
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
+ <article class="cts-wrap-content text-black">
9
  <h1 class="text-center font-bold text-4xl">Panel de configuración</h1>
10
  {% if error %}
11
  <p class="text-2xl">{{ error }}</p>
 
13
  <form method="post" action="" class="ct-codes-form flex flex-col gap-5">
14
  {% csrf_token %}
15
  <h2 class="text-2xl mb-2 font-bold">Codificar productos</h2>
16
+ <hr>
17
+ <article class="w-full flex flex-col justify-center items-center gap-5">
18
+ <p class="text-center font-bold tracking-wide text-xl bg-surface-card px-3 py-3 pb-4 rounded max-w-4xl">
19
  Puede dejar los campos como están para usar los códigos predefinidos.
20
  </p>
21
+ <article class="flex flex-row flex-wrap gap-4 items-center justify-center max-w-4xl">
22
+ {% for field in form_codes %}
23
+ <label for="{{ field.id_for_label }}"
24
+ class="text-lg flex flex-col items-center px-2 font-medium tracking-wide">
25
+ <p class="tracking-normal capitalize text-base font-bold">{{ field.label }}</p>
26
+ {{ field }}
27
+ </label>
28
+ {% endfor %}
29
+ </article>
30
+ <button type="button" class="cts-btn-general cts-btn-secondary btn-push uppercase"
 
31
  onclick="setPermutations()">
32
  regenerar ordenes
33
  </button>
34
  </article>
35
+
36
+ <h2 class="text-2xl mb-2 font-bold">Ordenes</h2>
37
+ <hr>
38
+ <article class="w-full">
39
  <section class="flex justify-center">
40
  <article
41
+ class="ct-orden-list grid grid-cols-3 max-lg:grid-cols-2 max-sm:grid-cols-1 gap-4 px-3 py-4 justify-center items-center capitalize text-lg bg-surface-sweet">
42
  </article>
43
  </section>
44
  </article>
45
+
46
+ <hr>
47
+ <article class="flex flex-col items-center gap-4">
48
+ <section class="flex w-full max-sm:flex-col flex-wrap gap-4 max-w-2xl">
49
+ <button type="submit" class="cts-btn-general cts-btn-primary btn-push flex-1 w-full">
50
+ Continuar
51
+ </button>
52
+ <a href="{% url 'cata_system:panel_configuracion_tags' %}" class="flex-1 w-full">
53
+ <button type="button" class="cts-btn-general cts-btn-secondary btn-push w-full">
54
+ Paso anterior
55
+ </button>
56
+ </a>
57
+ </section>
58
+ <a href="{% url 'cata_system:seleccion_tecnica' %}" class="w-full max-w-2xl">
59
+ <button type="button" class="cts-btn-general cts-btn-error btn-push w-full">
60
+ Cancelar la creación
61
+ </button>
62
+ </a>
63
  </article>
64
  </form>
65
  <input type="number" value="{{ num_tester }}" class="ct-num-cata hidden" disabled>
tecnicas/templates/tecnicas/create_sesion/configuracion-panel-tags.html CHANGED
@@ -3,19 +3,10 @@
3
 
4
  {% block title %}Panel Configuracion{% endblock %}
5
 
6
- <!--
7
- ||||Debe tener los siguietens campos para:
8
- -- Convenvionales tipo escalas
9
- - Agregar palabras o Elejir vocabulario
10
- - Instrucciones
11
- - Orden de presentacion
12
- - Presentar un orden basico segun el numero de catadores y los productos, esta se le muestra el presentador
13
- -->
14
-
15
  {% block content %}
16
- <article class="w-full flex flex-col justify-center items-center bg-gray-600 my-10">
17
  <section class="w-fit h-fit relative">
18
- <article class="flex flex-col gap-4 bg-gray-400 md:p-10 p-5 rounded-2xl lg:w-4xl w-full">
19
  <h1 class="text-center font-bold text-4xl">Panel de configuración</h1>
20
  <hr>
21
  {% if error %}
@@ -25,11 +16,12 @@
25
  {% endif %}
26
  <form method="post" action="" class="flex flex-col gap-5">
27
  {% csrf_token %}
28
- <article class="p-4 flex flex-col gap-2 rounded">
29
  <h2 class="text-2xl mb-2 font-bold">Seleccion de etiquetas</h2>
30
  {% for field in form_tags %}
31
- <div class="flex flex-row justify-center items-center gap-5 text-lg">
32
- <label for="{{ field.id_for_label }}" class="font-medium p-1 px-3 bg-gray-200 capitalize rounded">
 
33
  {{ field.label }}
34
  </label>
35
  {{ field }}
@@ -37,40 +29,56 @@
37
  {% endfor %}
38
  </article>
39
  <hr>
40
- <article class="flex gap-3 flex-wrap p-2 justify-center rounded">
41
- <p class="bg-gray-300 p-2 text-center rounded font-bold text-md">
42
  Agregar otra etiqueta
43
  </p>
44
  <button type="button" onclick="showHiddeExtraTags()"
45
- class="p-1 px-10 uppercase text-lg tracking-wider font-medium border-b-2 active:border-b-0 active:border-t-2 active:border-yellow-500 border-yellow-800 transition-all rounded-xl bg-yellow-500 w-fit">
46
 
47
  </button>
48
  </article>
49
  <hr>
50
- <article class="flex justify-center items-center py-3 rounded">
51
- <button type="submit"
52
- class="uppercase text-lg tracking-wider font-medium p-2 px-4 border-b-2 active:border-b-0 active:border-t-2 active:border-yellow-500 border-yellow-800 transition-all rounded-xl bg-yellow-500 text-white w-fit">Continuar</button>
 
 
 
 
 
 
 
 
 
 
 
 
 
53
  </article>
54
  </form>
55
  </article>
56
  <article
57
- class="ct-new-tags absolute top-0 w-full h-full bg-gray-600/70 p-5 flex justify-center items-center rounded-2xl hidden">
58
- <section class="p-5 bg-gray-400 w-fit rounded">
59
  <form method="post" action="" class="ct-form-new-tag p-3">
60
  {% csrf_token %}
61
  <label for="{{ form_new_tag.nueva_etiqueta.id_for_label }}"
62
- class="font-medium text-md text-white flex gap-3">
63
- <p class="bg-gray-600 px-4">Nueva etiqueta:</p>
64
  {{ form_new_tag.nueva_etiqueta }}
65
  </label>
66
  <p
67
  class="ct-error-tag mt-4 font-bold bg-red-500 text-white text-md capitalize text-center rounded hidden">
68
  error</p>
69
- <article class="flex justify-center gap-8 mt-4 text-white font-medium tracking-wide">
70
- <button class="rounded px-3 py-1 bg-green-700 active:bg-green-600"
71
- type="submit">Agregar</button>
72
- <button class="rounded px-3 py-1 bg-red-500 active:bg-red-400" type="button"
73
- onclick="showHiddeExtraTags()">Cancelar</button>
 
 
 
74
  </article>
75
  </form>
76
  </section>
@@ -84,7 +92,6 @@
84
 
85
  {%if escala == "estructurada"%}
86
  <script>
87
- // Asignacion rapida de valores a los select
88
  for (let i = 0; i < options.length; i++) {
89
  if (options.item(i).value) {
90
  values.push(options.item(i).value)
 
3
 
4
  {% block title %}Panel Configuracion{% endblock %}
5
 
 
 
 
 
 
 
 
 
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
  <section class="w-fit h-fit relative">
9
+ <article class="cts-wrap-content text-black w-full">
10
  <h1 class="text-center font-bold text-4xl">Panel de configuración</h1>
11
  <hr>
12
  {% if error %}
 
16
  {% endif %}
17
  <form method="post" action="" class="flex flex-col gap-5">
18
  {% csrf_token %}
19
+ <article class="p-4 flex flex-col gap-2 rounded max-sm:text-center">
20
  <h2 class="text-2xl mb-2 font-bold">Seleccion de etiquetas</h2>
21
  {% for field in form_tags %}
22
+ <div class="flex max-sm:flex-col justify-center items-center gap-5 max-sm:gap-2 text-lg border-b-4 border-l-4 border-btn-secondary bg-surface-card p-1">
23
+ <label for="{{ field.id_for_label }}"
24
+ class="font-medium p-1 px-3 max-sm:w-full capitalize rounded">
25
  {{ field.label }}
26
  </label>
27
  {{ field }}
 
29
  {% endfor %}
30
  </article>
31
  <hr>
32
+ <article class="flex flex-col gap-3 p-2 justify-center items-center bg-surface-card rounded">
33
+ <p class="p-2 text-center rounded font-bold text-md">
34
  Agregar otra etiqueta
35
  </p>
36
  <button type="button" onclick="showHiddeExtraTags()"
37
+ class="cts-btn-general cts-btn-secondary btn-push w-40">
38
 
39
  </button>
40
  </article>
41
  <hr>
42
+ <article class="cs-escalas-radio w-full flex flex-col gap-4">
43
+ <section class="flex max-sm:flex-col flex-wrap items-center justify-center gap-4">
44
+ <button type="submit" class="cts-btn-general cts-btn-primary btn-push flex-1 w-full">
45
+ Continuar
46
+ </button>
47
+ <a href="{% url 'cata_system:seleccion_tecnica' %}" class="flex-1 w-full">
48
+ <button type="button" class="cts-btn-general cts-btn-secondary btn-push w-full">
49
+ Paso anterior
50
+ </button>
51
+ </a>
52
+ </section>
53
+ <a href="{% url 'cata_system:seleccion_tecnica' %}" class="flex-1 w-full">
54
+ <button type="button" class="cts-btn-general cts-btn-error btn-push w-full">
55
+ Cancelar la creación
56
+ </button>
57
+ </a>
58
  </article>
59
  </form>
60
  </article>
61
  <article
62
+ class="ct-new-tags absolute top-0 w-full h-full bg-surface-sweet/70 p-5 flex justify-center items-center rounded-2xl hidden">
63
+ <section class="p-5 bg-surface-ligt border border-surface-general w-fit rounded">
64
  <form method="post" action="" class="ct-form-new-tag p-3">
65
  {% csrf_token %}
66
  <label for="{{ form_new_tag.nueva_etiqueta.id_for_label }}"
67
+ class="font-medium text-md text-black flex max-sm:flex-col gap-3">
68
+ <p class="bg-btn-secondary sm:p-4 p-1 font-semibold">Nueva etiqueta:</p>
69
  {{ form_new_tag.nueva_etiqueta }}
70
  </label>
71
  <p
72
  class="ct-error-tag mt-4 font-bold bg-red-500 text-white text-md capitalize text-center rounded hidden">
73
  error</p>
74
+ <article class="flex max-sm:flex-col justify-center gap-8 max-sm:gap-4 mt-4 text-white font-medium tracking-wide">
75
+ <button type="submit" class="cts-btn-general cts-btn-primary btn-push">
76
+ Agregar
77
+ </button>
78
+ <button class="cts-btn-general cts-btn-error btn-push" type="button"
79
+ onclick="showHiddeExtraTags()">
80
+ Cancelar
81
+ </button>
82
  </article>
83
  </form>
84
  </section>
 
92
 
93
  {%if escala == "estructurada"%}
94
  <script>
 
95
  for (let i = 0; i < options.length; i++) {
96
  if (options.item(i).value) {
97
  values.push(options.item(i).value)
tecnicas/templates/tecnicas/create_sesion/seleccion-tecnica.html CHANGED
@@ -3,16 +3,18 @@
3
  {% block title %}Panel principal{% endblock %}
4
 
5
  {% block content %}
6
- <article class="w-full flex flex-col justify-center items-center bg-gray-600 mt-10 mb-10">
7
- <article class="flex flex-col gap-8 bg-gray-400 md:p-10 p-5 rounded-2xl lg:w-4xl w-full">
8
  <header class="text-center flex sm:flex-row flex-col md:gap-8 gap-3 items-center w-full">
9
- <div class="bg-gray-600 p-4 text-white rounded-xl sm:flex-1 w-full">
10
- <h1 class="font-bold text-2xl">Selección de<br>técnica sensorial</h1>
11
  </div>
12
  <div class="sm:flex-1 flex flex-row-reverse">
13
- <a href="{% url 'cata_system:index' %}"
14
- class="text-white bg-blue-600 hover:bg-blue-700 active:outline-none active:ring-4 active:ring-blue-300 font-medium rounded-xl text-xl p-4 text-center uppercase">Panel
15
- principal</a>
 
 
16
  </div>
17
  </header>
18
  <section class="text-white *:not-last:mb-4">
@@ -25,15 +27,17 @@
25
  {% for cate, tecnicas in tipos.items %}
26
  <article>
27
  <button
28
- class="p-4 bg-blue-700 hover:bg-blue-800 active:ring-4 active:outline-none active:ring-blue-300 flex flex-row gap-4 justify-center items-center rounded-lg text-2xl font-medium uppercase tracking-wider w-full z-20 relative"
29
  onclick="showList('{{cate}}'); hiddenError()" type="button">{{ cate }}</button>
30
  {% if tecnicas %}
31
  <section
32
- class="modal-list-{{ cate }} flex flex-col text-lg bg-blue-100 p-4 pr-6 pl-8 sm:pl-12 z-10 -translate-y-1 rounded-b-2xl *:not-last:mb-4 transition-all duration-1000 hidden w-full">
33
  {% for tecnica in tecnicas %}
34
- <a href="{% url 'cata_system:panel_configuracion_basic'%}?id_tecnica={{tecnica.id}}"
35
- class="bg-green-700 border-l-10 border-gray-700 rounded-md px-3 py-2 w-full font-bold tracking-wider text-left uppercase">
36
- {{ tecnica.nombre_tecnica }}
 
 
37
  </a>
38
  {% endfor %}
39
  </section>
 
3
  {% block title %}Panel principal{% endblock %}
4
 
5
  {% block content %}
6
+ <article class="cts-container-main">
7
+ <article class="cts-wrap-content">
8
  <header class="text-center flex sm:flex-row flex-col md:gap-8 gap-3 items-center w-full">
9
+ <div class="bg-surface-card p-4 text-black rounded-xl sm:flex-1 w-full">
10
+ <h1 class="font-bold text-2xl">Selección de técnica sensorial</h1>
11
  </div>
12
  <div class="sm:flex-1 flex flex-row-reverse">
13
+ <a href="{% url 'cata_system:index' %}">
14
+ <button class="cts-btn-general cts-btn-error btn-push">
15
+ Panel principal
16
+ </button>
17
+ </a>
18
  </div>
19
  </header>
20
  <section class="text-white *:not-last:mb-4">
 
27
  {% for cate, tecnicas in tipos.items %}
28
  <article>
29
  <button
30
+ class="cts-btn-general cts-btn-primary btn-push flex flex-row gap-4 justify-center items-center rounded-lg text-2xl font-medium uppercase tracking-wider w-full z-20 relative"
31
  onclick="showList('{{cate}}'); hiddenError()" type="button">{{ cate }}</button>
32
  {% if tecnicas %}
33
  <section
34
+ class="modal-list-{{ cate }} flex flex-col text-lg bg-surface-ligt p-4 pr-6 pl-8 sm:pl-12 z-10 -translate-y-1 rounded-b-2xl *:not-last:mb-4 transition-all duration-1000 hidden w-full">
35
  {% for tecnica in tecnicas %}
36
+ <a href="{% url 'cata_system:panel_configuracion_basic'%}?id_tecnica={{tecnica.id}}">
37
+ <button
38
+ class="cts-btn-secondary btn-push rounded-lg border-b-0 border-l-4 border-gray-700 px-3 py-2 w-full text-left font-bold uppercase">
39
+ {{ tecnica.nombre_tecnica }}
40
+ </button>
41
  </a>
42
  {% endfor %}
43
  </section>
tecnicas/templates/tecnicas/main-panel.html CHANGED
@@ -3,8 +3,8 @@
3
  {% block title %}Panel principal{% endblock %}
4
 
5
  {% block content %}
6
- <article class="ct-container">
7
- <article class="ct-wrap-content">
8
  <header class="flex flex-col flex-wrap justify-center items-center gap-8">
9
  <section class="bg-surface-card p-8 rounded-md w-full shadow-lg">
10
  <h1 class="text-black text-4xl font-bold text-center max-sm:text-2xl">Panel Principal</h1>
 
3
  {% block title %}Panel principal{% endblock %}
4
 
5
  {% block content %}
6
+ <article class="cts-container-main">
7
+ <article class="cts-wrap-content">
8
  <header class="flex flex-col flex-wrap justify-center items-center gap-8">
9
  <section class="bg-surface-card p-8 rounded-md w-full shadow-lg">
10
  <h1 class="text-black text-4xl font-bold text-center max-sm:text-2xl">Panel Principal</h1>
tecnicas/templates/tecnicas/manage_sesions/detalles-sesion.html CHANGED
@@ -4,15 +4,15 @@
4
  {% block title %}Detalles Sesion{% endblock %}
5
 
6
  {% block content %}
7
- <article class="ct-container">
8
- <article class="ct-wrap-content">
9
  <header class="text-center flex-row w-full flex justify-around items-center flex-wrap gap-10">
10
  <h1 class="text-black rounded-xl font-bold text-2xl bg-surface-card shadow-lg p-4 flex-1">
11
  Detalles de la sesión
12
  </h1>
13
  <a href="{% url 'cata_system:index' %}" class="w-fit">
14
  <button
15
- class="text-black bg-btn-secondary font-medium rounded-lg text-xl p-4 text-center border-pink-800 btn-push">
16
  Volver a las Sesiones
17
  </button>
18
  </a>
@@ -170,7 +170,7 @@
170
  {% endif %}
171
 
172
  <button
173
- class="flex-1 uppercase text-lg max-sm:text-base tracking-wider p-4 border-b-2 active:border-b-0 active:border-t-2 active:border-red-500 border-red-800 transition-all rounded-xl bg-red-600 text-white font-bold disabled:bg-amber-600 flex flex-col justify-center items-center gap-2">
174
  borrar
175
  <figure class="w-10">
176
  <img src="{% static 'img/basura.svg' %}" alt="bote de basura" class="invert">
 
4
  {% block title %}Detalles Sesion{% endblock %}
5
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
+ <article class="cts-wrap-content">
9
  <header class="text-center flex-row w-full flex justify-around items-center flex-wrap gap-10">
10
  <h1 class="text-black rounded-xl font-bold text-2xl bg-surface-card shadow-lg p-4 flex-1">
11
  Detalles de la sesión
12
  </h1>
13
  <a href="{% url 'cata_system:index' %}" class="w-fit">
14
  <button
15
+ class="cts-btn-general cts-btn-error btn-push">
16
  Volver a las Sesiones
17
  </button>
18
  </a>
 
170
  {% endif %}
171
 
172
  <button
173
+ class="flex-1 uppercase text-lg cts-btn-general cts-btn-error btn-push flex flex-col justify-center items-center gap-2">
174
  borrar
175
  <figure class="w-10">
176
  <img src="{% static 'img/basura.svg' %}" alt="bote de basura" class="invert">
tecnicas/templates/tecnicas/manage_sesions/monitor-sesion.html CHANGED
@@ -3,8 +3,8 @@
3
  {% block title %}Monitoreo{% endblock %}
4
 
5
  {% block content %}
6
- <article class="ct-container">
7
- <article class="ct-wrap-content">
8
  <header class="text-center">
9
  <h1 class="text-3xl font-bold text-black">Sesión sensorial en curso</h1>
10
  </header>
 
3
  {% block title %}Monitoreo{% endblock %}
4
 
5
  {% block content %}
6
+ <article class="cts-container-main">
7
+ <article class="cts-wrap-content">
8
  <header class="text-center">
9
  <h1 class="text-3xl font-bold text-black">Sesión sensorial en curso</h1>
10
  </header>
tecnicas/templates/tecnicas/manage_sesions/sesiones-panel.html CHANGED
@@ -4,16 +4,15 @@
4
  {% block title %}Panel Sesiones{% endblock %}
5
 
6
  {% block content %}
7
- <article class="ct-container">
8
- <article class="ct-wrap-content">
9
  <header class="text-center flex flex-row max-sm:flex-col gap-8 items-center w-full">
10
  <div class="bg-surface-card p-4 text-black shadow-lg rounded-xl flex-1">
11
  <h1 class="font-bold text-2xl">Administra las<br>sesiones sensoriales</h1>
12
  </div>
13
  <div class="flex-1 flex justify-end items-center">
14
  <a href="{% url 'cata_system:index' %}" class="w-fit">
15
- <button
16
- class="text-black bg-btn-secondary font-medium rounded-lg text-xl p-4 text-center border-pink-800 btn-push">
17
  Ir al Panel principal
18
  </button>
19
  </a>
@@ -51,8 +50,9 @@
51
  </ul>
52
  <div class="mt-6">
53
  <a href="{% url 'cata_system:detalles_sesion' session_code=sesion.codigo_sesion %}">
54
- <button class="btn bg-btn-primary border-0 block w-full btn-push">Inspeccionar
55
- sesión</button>
 
56
  </a>
57
  </div>
58
  </div>
 
4
  {% block title %}Panel Sesiones{% endblock %}
5
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
+ <article class="cts-wrap-content">
9
  <header class="text-center flex flex-row max-sm:flex-col gap-8 items-center w-full">
10
  <div class="bg-surface-card p-4 text-black shadow-lg rounded-xl flex-1">
11
  <h1 class="font-bold text-2xl">Administra las<br>sesiones sensoriales</h1>
12
  </div>
13
  <div class="flex-1 flex justify-end items-center">
14
  <a href="{% url 'cata_system:index' %}" class="w-fit">
15
+ <button class="cts-btn-general cts-btn-error btn-push">
 
16
  Ir al Panel principal
17
  </button>
18
  </a>
 
50
  </ul>
51
  <div class="mt-6">
52
  <a href="{% url 'cata_system:detalles_sesion' session_code=sesion.codigo_sesion %}">
53
+ <button class="btn bg-btn-primary border-0 block w-full btn-push">
54
+ Inspeccionar sesión
55
+ </button>
56
  </a>
57
  </div>
58
  </div>
tecnicas/templates/tecnicas/manage_tester/catador-buscar.html CHANGED
@@ -4,8 +4,8 @@
4
  {% block title %}Buscar Catador{% endblock %}
5
 
6
  {% block content %}
7
- <article class="ct-container">
8
- <article class="ct-wrap-content">
9
  <header class="flex-1 flex flex-col gap-7">
10
  <div class="bg-surface-card p-8 text-black text-2xl font-bold rounded-2xl text-center capitalize">
11
  <h1>buscando catatador</h1>
@@ -24,7 +24,7 @@
24
  Buscar
25
  </button>
26
  <a href="{% url 'cata_system:panel_catadores' %}">
27
- <button
28
  class="text-white w-fit bg-ct-error font-bold rounded-lg text-xl py-2 px-6 text-center border-pink-800 btn-push">
29
  Regresar
30
  </button>
 
4
  {% block title %}Buscar Catador{% endblock %}
5
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
+ <article class="cts-wrap-content">
9
  <header class="flex-1 flex flex-col gap-7">
10
  <div class="bg-surface-card p-8 text-black text-2xl font-bold rounded-2xl text-center capitalize">
11
  <h1>buscando catatador</h1>
 
24
  Buscar
25
  </button>
26
  <a href="{% url 'cata_system:panel_catadores' %}">
27
+ <button type="button"
28
  class="text-white w-fit bg-ct-error font-bold rounded-lg text-xl py-2 px-6 text-center border-pink-800 btn-push">
29
  Regresar
30
  </button>
tecnicas/templates/tecnicas/manage_tester/catador-crear.html CHANGED
@@ -4,8 +4,8 @@
4
  {% block title %}Crear Catador{% endblock %}
5
 
6
  {% block content %}
7
- <article class="ct-container">
8
- <article class="ct-wrap-content">
9
  <header class="flex flex-col gap-7">
10
  <div class="bg-surface-card p-8 text-black text-2xl font-bold rounded-2xl text-center">
11
  <h1>Creando Catador</h1>
 
4
  {% block title %}Crear Catador{% endblock %}
5
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
+ <article class="cts-wrap-content">
9
  <header class="flex flex-col gap-7">
10
  <div class="bg-surface-card p-8 text-black text-2xl font-bold rounded-2xl text-center">
11
  <h1>Creando Catador</h1>
tecnicas/templates/tecnicas/manage_tester/catadores-panel.html CHANGED
@@ -4,8 +4,8 @@
4
  {% block title %}Gestionar Catadores{% endblock %}
5
 
6
  {% block content %}
7
- <article class="ct-container">
8
- <article class="ct-wrap-content">
9
  <article class="grid min-sm:grid-cols-2 gap-4 p-5 rounded-2xl">
10
  <header class="flex-1 flex flex-col gap-4">
11
  <div class="bg-surface-card p-8 text-2xl text-black font-bold rounded-2xl text-center">
 
4
  {% block title %}Gestionar Catadores{% endblock %}
5
 
6
  {% block content %}
7
+ <article class="cts-container-main">
8
+ <article class="cts-wrap-content">
9
  <article class="grid min-sm:grid-cols-2 gap-4 p-5 rounded-2xl">
10
  <header class="flex-1 flex flex-col gap-4">
11
  <div class="bg-surface-card p-8 text-2xl text-black font-bold rounded-2xl text-center">
theme/static_src/src/styles.css CHANGED
@@ -1,57 +1,38 @@
1
  @import "tailwindcss";
2
  @plugin "daisyui";
3
 
4
- @theme {
5
- --color-surface-general: #B95E82;
6
- --color-surface-alter: #F39F9F;
7
- --color-surface-sweet: #FFC29B;
8
- --color-surface-ligt: #FFECC0;
9
- --color-surface-card: #FFF3E0;
10
- --color-surface-alter-card: #91C4C3;
11
- --color-btn-primary: #4CAF50;
12
- --color-btn-secondary: #E45A92;
13
- --color-btn-tertiary: #FFACAC;
14
- --color-ct-success: #2E7D32;
15
- --color-ct-error: #E62727;
16
  }
17
 
18
- .btn-push {
19
- @apply border-b-4 active:border-b-0 active:border-t-4 transition-all;
20
  }
21
 
22
- .ct-container {
23
- @apply w-full flex flex-col justify-center items-center bg-surface-general mt-10 mb-10;
24
  }
25
 
26
- .ct-wrap-content {
27
- @apply flex flex-col gap-8 bg-surface-alter p-10 max-lg:p-6 max-sm:px-2 max-sm:w-full rounded-xl max-lg:rounded-none;
28
  }
29
 
30
- /*
31
- #FFECC0
32
- #FFC29B
33
- #F39F9F
34
- #B95E82
35
 
36
- #80A1BA
37
- #91C4C3
38
- #B4DEBD
39
- #FFF7DD
40
 
41
- #3E1E68
42
- #5D2F77
43
- #E45A92
44
- #FFACAC
45
- */
46
 
 
 
 
47
 
48
- /**
49
- * A catch-all path to Django template files, JavaScript, and Python files
50
- * that contain Tailwind CSS classes and will be scanned by Tailwind to generate the final CSS file.
51
- *
52
- * If your final CSS file is not being updated after code changes, you may want to broaden or narrow
53
- * the scope of this path.
54
- */
55
  @source "../../../**/*.{html,py,js}";
56
- @source "../../../tecnicas/templates/tecnicas/*.{html,py,js}";
57
- @source "../../../tecnicas/templates/tecnicas/**/*.{html,py,js}";
 
1
  @import "tailwindcss";
2
  @plugin "daisyui";
3
 
4
+
5
+ .cts-container-main {
6
+ @apply w-full flex flex-col justify-center items-center bg-surface-general mt-10 mb-10;
 
 
 
 
 
 
 
 
 
7
  }
8
 
9
+ .cts-wrap-content {
10
+ @apply flex flex-col gap-8 bg-surface-alter p-10 max-lg:p-6 max-sm:px-2 max-sm:w-full rounded-xl max-lg:rounded-none;
11
  }
12
 
13
+ .cts-btn-general {
14
+ @apply font-bold rounded-lg text-xl p-4 text-center;
15
  }
16
 
17
+ .cts-btn-primary {
18
+ @apply text-white bg-btn-primary border-green-800;
19
  }
20
 
21
+ .cts-btn-secondary {
22
+ @apply text-white bg-btn-secondary border-pink-800;
23
+ }
 
 
24
 
25
+ .cts-btn-tertiary {
26
+ @apply text-white bg-btn-tertiary border-pink-800;
27
+ }
 
28
 
29
+ .cts-btn-error {
30
+ @apply text-white bg-ct-error border-red-800;
31
+ }
 
 
32
 
33
+ .btn-push {
34
+ @apply border-b-4 active:border-b-0 active:border-t-4 transition-all;
35
+ }
36
 
 
 
 
 
 
 
 
37
  @source "../../../**/*.{html,py,js}";
38
+ @config "../tailwind.config.js"
 
theme/static_src/tailwind.config.js ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // tailwind.config.js
2
+ module.exports = {
3
+ content: [
4
+ "../templates/base.html",
5
+ "../../tecnicas/templates/tecnicas/*.{html,py,js}",
6
+ "../../tecnicas/templates/tecnicas/**/*.{html,py,js}",
7
+ ],
8
+ theme: {
9
+ extend: {
10
+ colors: {
11
+ "surface-general": "#B95E82",
12
+ "surface-alter": "#F39F9F",
13
+ "surface-sweet": "#FFC29B",
14
+ "surface-ligt": "#FFECC0",
15
+ "surface-card": "#FFF3E0",
16
+ "surface-alter-card": "#91C4C3",
17
+ "btn-primary": "#4CAF50",
18
+ "btn-secondary": "#E45A92",
19
+ "btn-tertiary": "#FFACAC",
20
+ "ct-success": "#2E7D32",
21
+ "ct-error": "#E62727",
22
+ },
23
+ },
24
+ },
25
+ plugins: [],
26
+ };