/* Estilos para las áreas del calendario */ .has-test::after { content: ''; position: absolute; top: 0; left: 100%; width: 10px; height: 100%; background: transparent; } /* Área segura alrededor del popup */ .day-tests-popup::before { content: ''; position: absolute; top: -10px; left: -10px; right: -10px; bottom: -10px; background: transparent; z-index: -1; } .has-test:hover .day-tests-popup { display: block; } .day-tests-popup a { display: block; text-decoration: none; color: #495057; padding: 6px 12px; border-radius: 4px; white-space: nowrap; font-size: 0.85rem; transition: all 0.2s ease; font-weight: 500; } .day-tests-popup a:hover { background-color: #89CC9B; color: white; } .selected-day { outline: 2px solid #1D1F33; outline-offset: -2px; } .form-control { border: 1px solid #E9ECEF; border-radius: 6px; padding: 8px 12px; font-size: 0.9rem; color: #495057; transition: all 0.2s ease; max-width: 200px; margin: 0 auto; } .form-control:focus { border-color: #1D1F33; box-shadow: 0 0 0 0.2rem rgba(29, 31, 51, 0.1); } .mini-calendar select.form-control-sm { height: calc(1.5em + 0.5rem + 2px); padding: 0.25rem 0.5rem; font-size: 0.875rem; line-height: 1.5; border-radius: 0.2rem; background-color: #fff; border: 1px solid #ced4da; max-width: 130px; } .calendar-selectors { background: #f8f9fa; border-radius: 6px; padding: 6px 10px; } .has-tests { color: #89CC9B !important; font-weight: bold !important; } .has-tests:hover { background-color: #78B889 !important; } .metric-cell { background: white; border: 1px solid #E9ECEF; border-radius: 6px; padding: 12px; text-align: center; font-size: 0.9rem; color: #495057; height: 100%; display: flex; align-items: center; justify-content: center; max-width: 200px; margin: 0 auto; } .metric-name { font-weight: 600; color: #1D1F33; text-transform: uppercase; } /* New styles for reorganized layout */ .mini-calendar, .period-selector { height: 100%; margin-bottom: 0; } .metrics-results { background: #fff; border-radius: 8px; padding: 20px; box-shadow: 0 2px 8px rgba(0,0,0,0.08); } .trend-icon.up { background-color: #89CC9B; } .trend-icon.down { background-color: #F68563; } .view-selector { background: white; border-radius: 8px; padding: 1rem; box-shadow: 0 2px 8px rgba(0,0,0,0.08); } .view-selector .btn-group { display: flex; gap: 0.5rem; } .view-selector .btn { flex: 1; padding: 1rem; font-weight: 500; transition: all 0.2s ease; border-color: #1D1F33; color: #1D1F33; display: flex; align-items: center; justify-content: center; gap: 0.5rem; } .view-selector .btn i { font-size: 1.1rem; } .view-selector .btn.active { background-color: #1D1F33; color: white; box-shadow: 0 2px 4px rgba(29, 31, 51, 0.2); } .view-selector .btn:hover:not(.active) { background-color: rgba(29, 31, 51, 0.1); } /* Estilos para las tablas de resultados de ojos */ .results-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin-top: 20px; } .eye-results .table-container { background: #fff; border-radius: 12px; box-shadow: 0 3px 10px rgba(29, 31, 51, 0.08); overflow: hidden; transition: all 0.3s ease; } .eye-results .table-container:hover { box-shadow: 0 5px 15px rgba(29, 31, 51, 0.12); transform: translateY(-2px); } .modern-table { width: 100%; border-collapse: collapse; border: none; font-family: 'Roboto', sans-serif; } .modern-table thead th { background-color: #1D1F33; color: white; text-transform: uppercase; font-size: 0.9rem; font-weight: 600; text-align: center; padding: 12px; letter-spacing: 0.5px; } .modern-table td { padding: 10px; text-align: center; border-bottom: 1px solid #E9ECEF; font-size: 0.9rem; color: #495057; } .modern-table th.eye-header { font-size: 1.1rem; letter-spacing: 1px; padding: 15px; } .eye-results-header { font-size: 1.5rem; margin-bottom: 20px; color: #1D1F33; text-align: center; }