main
css 129 lines 5.36 KB
Raw
1 .ruta-container { width: 100%; max-width: 1050px; margin: 0 auto; }
2
3 .ruta-container .card, .ruta-container .btn, .ruta-container .badge { border-radius: 0; }
4
5 .ruta-container .btn-solid { display: inline-block; border: 1px solid var(--sidebar-bg); background: var(--sidebar-bg); padding: 0.5rem 1rem; color: white; font: inherit; font-size: 0.9rem; font-weight: 700; cursor: pointer; text-align: center; }
6 .ruta-container .btn-solid:hover { background: #043b10; color: white; text-decoration: none; }
7 .ruta-container .btn-solid:disabled { border-color: var(--gray-300); background: var(--gray-200); color: var(--gray-400); cursor: not-allowed; }
8
9 .ruta-container .btn-clean { display: inline-block; border: 1px solid var(--sidebar-bg); background: transparent; padding: 0.45rem 0.875rem; color: var(--sidebar-bg); font: inherit; font-size: 0.85rem; font-weight: 600; cursor: pointer; text-align: center; }
10 .ruta-container .btn-clean:hover { background: var(--accent-soft, #f0fdf4); text-decoration: none; }
11
12 .module-heading { margin-bottom: 1.25rem; }
13 .module-heading h1 { font-size: 1.5rem; }
14 .module-heading p { color: var(--gray-600); font-size: 0.9rem; }
15
16 .ruta-banner { margin-bottom: 1.5rem; border-left: 4px solid var(--sidebar-bg); padding: 1.25rem; }
17 .ruta-banner h2 { margin: 0 0 0.35rem; font-size: 1.2rem; }
18 .ruta-banner p { margin: 0; color: var(--gray-600); font-size: 0.9rem; line-height: 1.5; }
19
20 .ruta-section { margin-bottom: 2rem; }
21 .ruta-section-title { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 0 0 0.875rem; font-size: 1.05rem; }
22 .ruta-section-title small { color: var(--gray-600); font-weight: 400; font-size: 0.85rem; }
23
24 .ruta-block { margin-bottom: 1rem; padding: 1.1rem 1.25rem; }
25 .ruta-block-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; margin-bottom: 0.5rem; }
26 .ruta-block-title { margin: 0; font-size: 1.05rem; }
27 .ruta-block-range { display: block; margin-top: 0.15rem; color: var(--gray-600); font-size: 0.82rem; }
28 .ruta-block-desc { margin: 0.15rem 0 0.75rem; color: var(--gray-600); font-size: 0.88rem; line-height: 1.5; }
29
30 .ruta-materias { display: flex; flex-wrap: wrap; gap: 0.375rem; margin-bottom: 0.75rem; }
31 .materia-chip { display: inline-block; border: 1px solid #c7d2fe; background: #eef2ff; color: #3730a3; padding: 0.2rem 0.6rem; font-size: 0.78rem; }
32
33 .ruta-badges { display: flex; flex-wrap: wrap; gap: 0.375rem; }
34 .badge-encurso { display: inline-block; border: 1px solid var(--accent-soft-border, #c8e6c9); background: var(--accent-soft, #e8f5e9); color: var(--sidebar-bg); padding: 0.24rem 0.6rem; font-size: 0.78rem; font-weight: 600; }
35 .badge-cursado { display: inline-block; border: 1px solid #bae6fd; background: #e0f2fe; color: #0369a1; padding: 0.24rem 0.6rem; font-size: 0.78rem; font-weight: 600; }
36 .badge-proximo { display: inline-block; border: 1px solid #e5e7eb; background: #f9fafb; color: var(--gray-500); padding: 0.24rem 0.6rem; font-size: 0.78rem; font-weight: 600; }
37 .badge-ruta { display: inline-block; border: 1px solid #fde68a; background: #fffbeb; color: #92400e; padding: 0.24rem 0.6rem; font-size: 0.78rem; font-weight: 600; }
38
39 .ruta-actions { display: flex; justify-content: flex-end; border-top: 1px solid var(--gray-200); padding-top: 0.75rem; }
40
41 .empty-state-box { border-left: 4px solid var(--gray-300); text-align: center; padding: 1.75rem 1.25rem; margin-bottom: 1.25rem; }
42 .empty-state-box h2 { margin: 0 0 0.4rem; font-size: 1.1rem; }
43 .empty-state-box p { margin: 0 0 0.875rem; color: var(--gray-600); font-size: 0.9rem; }
44
45 .ruta-footer-note { margin-top: 1.25rem; color: var(--gray-500); font-size: 0.82rem; text-align: center; }
46
47 @media (max-width: 560px) {
48 .ruta-block-head { flex-direction: column; }
49 .ruta-section-title { flex-direction: column; align-items: flex-start; gap: 0.25rem; }
50 .ruta-actions { justify-content: stretch; }
51 .ruta-actions .btn-solid { width: 100%; }
52 }
53
54 /* ============================================================
55 MODO OSCURO — Certificados / Ruta de aprendizaje (inversión pareja)
56 ============================================================ */
57 html.dark-mode .ruta-container {
58 color: #e6edf3;
59 }
60
61 html.dark-mode .module-heading p {
62 color: #8b949e;
63 }
64
65 html.dark-mode .ruta-banner h2 {
66 color: #e6edf3;
67 }
68
69 html.dark-mode .ruta-banner p,
70 html.dark-mode .ruta-section-title small,
71 html.dark-mode .ruta-block-range,
72 html.dark-mode .ruta-block-desc {
73 color: #8b949e;
74 }
75
76 html.dark-mode .ruta-block {
77 background: #161b22;
78 border-color: #30363d;
79 }
80
81 html.dark-mode .materia-chip {
82 border-color: #4338ca;
83 background: #1e1b4b;
84 color: #a5b4fc;
85 }
86
87 html.dark-mode .badge-encurso {
88 border-color: #14532d;
89 background: #12291d;
90 color: var(--accent-bright, #3fb950);
91 }
92
93 html.dark-mode .badge-cursado {
94 border-color: #123f5c;
95 background: #0b1520;
96 color: #38bdf8;
97 }
98
99 html.dark-mode .badge-proximo {
100 border-color: #30363d;
101 background: #21262d;
102 color: #8b949e;
103 }
104
105 html.dark-mode .badge-ruta {
106 border-color: #4d3d17;
107 background: #332a12;
108 color: #fbbf24;
109 }
110
111 html.dark-mode .ruta-actions {
112 border-top-color: #21262d;
113 }
114
115 html.dark-mode .empty-state-box {
116 border-left-color: #30363d;
117 }
118
119 html.dark-mode .empty-state-box p {
120 color: #8b949e;
121 }
122
123 html.dark-mode .ruta-footer-note {
124 color: #8b949e;
125 }
126
127 html.dark-mode .ruta-container .btn-clean:hover {
128 background: rgba(46, 160, 67, 0.15);
129 }