main
css 83 lines 7.59 KB
Raw
1 /* MAPS Connect - Directorio de Semestre Empresarial */
2
3 .empresarial-container { width: 100%; max-width: 1050px; margin: 0 auto; }
4 .module-heading { margin-bottom: 1.5rem; }
5 .module-heading h1 { color: var(--sidebar-bg); font-size: 1.75rem; }
6 .module-heading p { margin-top: 0.25rem; color: var(--gray-600); }
7 .empresarial-container .card, .empresarial-container .btn, .empresarial-container .badge, .empresarial-container input, .empresarial-container select { border-radius: 0; }
8 .filter-bar { display: grid; grid-template-columns: 2fr 1fr 1fr auto; gap: 0.625rem; margin-bottom: 1.5rem; }
9 .filter-note { display: inline-block; margin-top: 0.5rem; padding: 0.35rem 0.625rem; background: var(--accent-soft, #e8f5e9); border: 1px solid var(--accent-soft-border, #c8e6c9); color: var(--sidebar-bg); font-size: 0.83rem; }
10 .input-search, .select-filter { min-width: 0; padding: 0.625rem 0.75rem; border: 1px solid var(--gray-300); background: white; font: inherit; font-size: 0.9rem; }
11 .input-search:focus, .select-filter:focus { outline: none; border-color: var(--sidebar-bg); }
12 .company-card { margin-bottom: 1.75rem; padding: 1.25rem; }
13 .company-header, .company-footer { display: flex; justify-content: space-between; gap: 1rem; }
14 .company-header { align-items: flex-start; margin-bottom: 0.75rem; }
15 .company-name { font-size: 1.2rem; }
16 .company-location, .rating-count { color: var(--gray-600); font-size: 0.85rem; }
17 .rating-box { flex-shrink: 0; text-align: right; }
18 .stars { color: var(--warning-color); font-weight: 700; letter-spacing: 1px; }
19 .rating-number { margin-left: 0.25rem; }
20 .rating-count { display: block; font-size: 0.8rem; }
21 .company-desc { margin-bottom: 0.75rem; color: var(--gray-600); font-size: 0.9rem; line-height: 1.5; }
22 .tags-group { display: flex; flex-wrap: wrap; gap: 0.375rem; margin-bottom: 0.875rem; }
23 .badge-green { border: 1px solid var(--accent-soft-border, #c8e6c9); background: var(--accent-soft, #e8f5e9); color: var(--sidebar-bg); }
24 .badge-blue { border: 1px solid #bae6fd; background: #e0f2fe; color: #0284c7; }
25 .experience-box { margin-top: 0.875rem; border-left: 3px solid var(--sidebar-bg); background: var(--gray-50); padding: 0.75rem 0.875rem; }
26 .experience-author { display: block; margin-bottom: 0.25rem; font-size: 0.85rem; }
27 .experience-text { color: var(--gray-600); font-size: 0.88rem; line-height: 1.4; }
28 .company-footer { justify-content: flex-end; margin-top: 1rem; border-top: 1px solid var(--gray-200); padding-top: 0.875rem; }
29 .empresarial-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; }
30 .empresarial-container .btn-solid:hover { background: #043b10; color: white; text-decoration: none; }
31 .empresarial-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; }
32 .empresarial-container .btn-clean:hover { background: var(--accent-soft, #f0fdf4); text-decoration: none; }
33 .empty-companies { border-left: 4px solid var(--gray-300); text-align: center; }
34 .empty-companies h1 { font-size: 1.1rem; }
35 .empty-companies p { margin: 0.5rem 0 0; color: var(--gray-600); }
36 .loading-message { color: var(--gray-600); }
37
38 /* Modal de experiencias y rese├▒as */
39 .empresa-modal-open { overflow: hidden; }
40 .empresa-modal-backdrop { position: fixed; inset: 0; z-index: 1200; background: rgba(0, 0, 0, 0.45); display: flex; align-items: flex-start; justify-content: center; padding: 2rem 1rem; overflow-y: auto; }
41 .empresa-modal { background: white; width: 100%; max-width: 640px; max-height: calc(100vh - 4rem); display: flex; flex-direction: column; border-radius: 0; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25); }
42 .empresa-modal-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; padding: 1.25rem 1.5rem; border-bottom: 1px solid var(--gray-200); }
43 .empresa-modal-title { margin: 0; font-size: 1.25rem; color: var(--sidebar-bg); }
44 .empresa-modal-sub { display: block; margin-top: 0.25rem; color: var(--gray-600); font-size: 0.85rem; }
45 .empresa-modal-close { border: none; background: transparent; font-size: 1.75rem; line-height: 1; color: var(--gray-500); cursor: pointer; padding: 0 0.25rem; }
46 .empresa-modal-close:hover { color: var(--sidebar-bg); }
47 .empresa-modal-body { padding: 1.25rem 1.5rem; overflow-y: auto; }
48 .empresa-modal-footer { display: flex; justify-content: flex-end; padding: 1rem 1.5rem; border-top: 1px solid var(--gray-200); }
49
50 .experiencias-section { margin-bottom: 1.5rem; }
51 .experiencias-section h3 { margin: 0 0 0.75rem; font-size: 1rem; color: var(--sidebar-bg); }
52 .review-item { border: 1px solid var(--gray-200); padding: 0.875rem 1rem; margin-bottom: 0.75rem; background: var(--gray-50); }
53 .review-item.review-mine { border-color: #a5d6a7; background: #f1f8f1; }
54 .review-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 0.5rem; }
55 .review-stars { color: var(--warning-color); font-weight: 700; letter-spacing: 1px; white-space: nowrap; }
56 .review-author { font-size: 0.9rem; }
57 .review-date { margin-left: 0.5rem; color: var(--gray-600); font-size: 0.8rem; }
58 .review-field { margin: 0.375rem 0 0; color: var(--gray-600); font-size: 0.88rem; line-height: 1.45; }
59 .review-field strong { color: var(--gray-800); }
60 .empty-experiences { color: var(--gray-600); font-size: 0.9rem; }
61 .my-experience-note { color: var(--sidebar-bg); font-size: 0.9rem; }
62 .my-experience-note .link-action { border: none; background: transparent; padding: 0; color: var(--sidebar-bg); font: inherit; font-size: 0.9rem; font-weight: 700; text-decoration: underline; cursor: pointer; }
63 .review-actions { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 0.75rem; border-top: 1px solid var(--gray-200); padding-top: 0.625rem; }
64 .review-actions .btn-clean { padding: 0.3rem 0.625rem; font-size: 0.78rem; }
65 .review-actions .btn-danger { border-color: #dc2626; color: #dc2626; }
66 .review-actions .btn-danger:hover { background: #fef2f2; }
67
68 .resena-form-wrap { border-top: 1px solid var(--gray-200); padding-top: 1.25rem; }
69 .resena-title { margin: 0 0 1rem; font-size: 1rem; color: var(--sidebar-bg); }
70 .resena-form .field-row { margin-bottom: 0.875rem; }
71 .resena-label { display: block; margin-bottom: 0.375rem; font-size: 0.85rem; font-weight: 700; color: var(--gray-700); }
72 .star-picker { display: inline-flex; gap: 0.25rem; }
73 .star-btn { border: none; background: transparent; font-size: 1.75rem; line-height: 1; color: var(--gray-300); cursor: pointer; padding: 0; }
74 .star-btn.is-selected { color: var(--warning-color); }
75 .star-picker-label { margin-left: 0.75rem; color: var(--gray-500); font-size: 0.82rem; }
76 .resena-input { width: 100%; border: 1px solid var(--gray-300); background: white; padding: 0.625rem 0.75rem; font: inherit; font-size: 0.9rem; resize: vertical; border-radius: 0; }
77 .resena-input:focus { outline: none; border-color: var(--sidebar-bg); }
78 .resena-actions { display: flex; justify-content: flex-end; margin-bottom: 0; }
79 .resena-form .btn-solid:disabled { opacity: 0.6; cursor: not-allowed; }
80
81 @media (max-width: 768px) { .filter-bar { grid-template-columns: 1fr; } }
82 @media (max-width: 560px) { .company-header, .company-footer { align-items: flex-start; flex-direction: column; } .rating-box { text-align: left; } .company-footer .btn-solid, .company-footer .btn-clean { width: 100%; } .empresa-modal-header, .empresa-modal-body, .empresa-modal-footer { padding-left: 1rem; padding-right: 1rem; } }
83